From sergey.nazarkin at oracle.com Tue May 5 10:58:11 2015 From: sergey.nazarkin at oracle.com (sergey.nazarkin at oracle.com) Date: Tue, 05 May 2015 10:58:11 +0000 Subject: hg: dio/dev: 8079333: NPE at GPIOPort.close() Message-ID: <201505051058.t45AwBrh025192@aojmv0008.oracle.com> Changeset: 5d161bfcaf7a Author: snazarki Date: 2015-05-05 13:56 +0300 URL: http://hg.openjdk.java.net/dio/dev/rev/5d161bfcaf7a 8079333: NPE at GPIOPort.close() Summary: Remove reference to GPIOPortConfig.getPins() field. Reviewed-by: alkonsta ! src/share/classes/com/oracle/dio/gpio/impl/GPIOPortImpl.java From sergey.nazarkin at oracle.com Thu May 7 12:11:16 2015 From: sergey.nazarkin at oracle.com (sergey.nazarkin at oracle.com) Date: Thu, 07 May 2015 12:11:16 +0000 Subject: hg: dio/dev: 8079602: Reduce code size by refactoring of DeviceConfig.equals() method Message-ID: <201505071211.t47CBGWq029276@aojmv0008.oracle.com> Changeset: aa7d1593f97f Author: snazarki Date: 2015-05-07 15:09 +0300 URL: http://hg.openjdk.java.net/dio/dev/rev/aa7d1593f97f 8079602: Reduce code size by refactoring of DeviceConfig.equals() method Summary: Introduced Platfroms.equals method that has to instances comparison Reviewed-by: alkonsta ! src/se/classes/com/oracle/dio/impl/Platform.java ! src/share/classes/jdk/dio/adc/ADCChannelConfig.java ! src/share/classes/jdk/dio/counter/PulseCounterConfig.java ! src/share/classes/jdk/dio/dac/DACChannelConfig.java ! src/share/classes/jdk/dio/generic/GenericDeviceConfig.java ! src/share/classes/jdk/dio/gpio/GPIOPinConfig.java ! src/share/classes/jdk/dio/gpio/GPIOPortConfig.java ! src/share/classes/jdk/dio/i2cbus/I2CDeviceConfig.java ! src/share/classes/jdk/dio/pwm/PWMChannelConfig.java ! src/share/classes/jdk/dio/spibus/SPIDeviceConfig.java ! src/share/classes/jdk/dio/uart/UARTConfig.java From sergey.nazarkin at oracle.com Tue May 12 10:30:58 2015 From: sergey.nazarkin at oracle.com (sergey.nazarkin at oracle.com) Date: Tue, 12 May 2015 10:30:58 +0000 Subject: hg: dio/dev: 8080126: Unable to register application-provided DeviceProvider service provider's AbstractDevice implementation Message-ID: <201505121030.t4CAUx0F026170@aojmv0008.oracle.com> Changeset: 1b2e8cfd44d1 Author: snazarki Date: 2015-05-12 13:29 +0300 URL: http://hg.openjdk.java.net/dio/dev/rev/1b2e8cfd44d1 8080126: Unable to register application-provided DeviceProvider service provider's AbstractDevice implementation Summary: Fixed copy-past issue Reviewed-by: alkonsta ! src/share/classes/jdk/dio/DeviceManager.java From sergey.nazarkin at oracle.com Wed May 13 12:50:29 2015 From: sergey.nazarkin at oracle.com (sergey.nazarkin at oracle.com) Date: Wed, 13 May 2015 12:50:29 +0000 Subject: hg: dio/dev: 8080276: Unused MMIODevice classes Message-ID: <201505131250.t4DCoTQf002452@aojmv0008.oracle.com> Changeset: 6569ed57740f Author: snazarki Date: 2015-05-13 14:55 +0300 URL: http://hg.openjdk.java.net/dio/dev/rev/6569ed57740f 8080276: Unused MMIODevice classes Summary: src/se/jdk folder Reviewed-by: alkonsta - src/se/classes/jdk/dio/mmio/AccessOutOfBoundsException.java - src/se/classes/jdk/dio/mmio/MMIODevice.java - src/se/classes/jdk/dio/mmio/MMIODeviceConfig.java - src/se/classes/jdk/dio/mmio/MMIOEvent.java - src/se/classes/jdk/dio/mmio/MMIOEventListener.java - src/se/classes/jdk/dio/mmio/MMIOPermission.java - src/se/classes/jdk/dio/mmio/RawBlock.java - src/se/classes/jdk/dio/mmio/RawMemory.java - src/se/classes/jdk/dio/mmio/RawRegister.java - src/se/classes/jdk/dio/mmio/package-info.java ! src/share/classes/jdk/dio/dac/DACChannelConfig.java ! src/share/classes/jdk/dio/gpio/GPIOPinConfig.java ! src/share/classes/jdk/dio/pwm/PWMChannelConfig.java From sergey.nazarkin at oracle.com Thu May 14 11:43:41 2015 From: sergey.nazarkin at oracle.com (sergey.nazarkin at oracle.com) Date: Thu, 14 May 2015 11:43:41 +0000 Subject: hg: dio/dev: 8080386: RegistrationEvent(null) does not result in NPE Message-ID: <201505141143.t4EBhfrG007240@aojmv0008.oracle.com> Changeset: f8fd28c56300 Author: snazarki Date: 2015-05-14 14:43 +0300 URL: http://hg.openjdk.java.net/dio/dev/rev/f8fd28c56300 8080386: RegistrationEvent(null) does not result in NPE Summary: null object is checked Reviewed-by: snazarki Contributed-by: olga.milovskaya at oracle.com ! src/share/classes/jdk/dio/RegistrationEvent.java From sergey.nazarkin at oracle.com Mon May 18 17:26:06 2015 From: sergey.nazarkin at oracle.com (sergey.nazarkin at oracle.com) Date: Mon, 18 May 2015 17:26:06 +0000 Subject: hg: dio/dev: 8080620: Config classes hashCode() refactoring Message-ID: <201505181726.t4IHQ6cK029160@aojmv0008.oracle.com> Changeset: 0dc7ae392a2e Author: snazarki Date: 2015-05-18 20:24 +0300 URL: http://hg.openjdk.java.net/dio/dev/rev/0dc7ae392a2e 8080620: Config classes hashCode() refactoring Summary: hashCode() calculation is moved to platfrom specific code Reviewed-by: alkonsta ! src/se/classes/com/oracle/dio/impl/Platform.java ! src/share/classes/jdk/dio/adc/ADCChannelConfig.java ! src/share/classes/jdk/dio/atcmd/ATDeviceConfig.java ! src/share/classes/jdk/dio/counter/PulseCounterConfig.java ! src/share/classes/jdk/dio/dac/DACChannelConfig.java ! src/share/classes/jdk/dio/generic/GenericDeviceConfig.java ! src/share/classes/jdk/dio/gpio/GPIOPinConfig.java ! src/share/classes/jdk/dio/gpio/GPIOPortConfig.java ! src/share/classes/jdk/dio/i2cbus/I2CDeviceConfig.java ! src/share/classes/jdk/dio/pwm/PWMChannelConfig.java ! src/share/classes/jdk/dio/spibus/SPIDeviceConfig.java ! src/share/classes/jdk/dio/uart/UARTConfig.java ! src/share/classes/jdk/dio/watchdog/WatchdogTimerConfig.java From stephen.chin at oracle.com Tue May 19 02:05:12 2015 From: stephen.chin at oracle.com (Stephen Chin) Date: Mon, 18 May 2015 19:05:12 -0700 Subject: Build Failure Message-ID: <50BEBC66-FDB1-4BB3-8287-A65823F37F20@oracle.com> FYI, the build is not compiling currently due to a bad check-in: http://hg.openjdk.java.net/dio/dev/rev/0dc7ae392a2e The problem is in Platform.java: @@ -60,9 +65,82 @@ if (null == obj1 || null == obj2) { return false; } - if (obj1.getClass() != obj2.getClass()) { - return false; + + try { + serialize(obj1).equals(serialize(obj2)); + } catch (IOException e) { + return Objects.equals(obj1, obj2); } - return Objects.equals(obj1, obj2); } I assume that it was intended the line inside the try block has a return preceding it... So this is an easy fix, but what is the recommended advice for early adopters who want to use the Device I/O API in the community? It doesn't look like there are any safe tags, branches, or any nightly builds. Cheers, Stephen Chin (@steveonjava ) | Java Community Manager and JavaOne Content Co-Chair | +1.510.323.6097 Oracle Technology Network http://steveonjava.com/ From sergey.nazarkin at oracle.com Tue May 19 09:02:17 2015 From: sergey.nazarkin at oracle.com (sergey.nazarkin at oracle.com) Date: Tue, 19 May 2015 09:02:17 +0000 Subject: hg: dio/dev: 8080654: Nightly build failure Message-ID: <201505190902.t4J92Hde027445@aojmv0008.oracle.com> Changeset: 404c859bac91 Author: snazarki Date: 2015-05-19 12:02 +0300 URL: http://hg.openjdk.java.net/dio/dev/rev/404c859bac91 8080654: Nightly build failure Summary: Added missed return statement Reviewed-by: alkonsta ! src/se/classes/com/oracle/dio/impl/Platform.java From sergey.nazarkin at oracle.com Tue May 19 09:41:13 2015 From: sergey.nazarkin at oracle.com (Sergey Nazarkin) Date: Tue, 19 May 2015 12:41:13 +0300 Subject: Build Failure In-Reply-To: <50BEBC66-FDB1-4BB3-8287-A65823F37F20@oracle.com> References: <50BEBC66-FDB1-4BB3-8287-A65823F37F20@oracle.com> Message-ID: <555B0539.7000607@oracle.com> Hi Stephen, "dev" repo is development branch already so failures like this may happen from time to time. We don't use any tags or branches since, in fact, there is only single maintainer now. I receive notification about issues with nightly build so everyone can be sure bugs are fixed ASAP. Sorry for inconvenience. /Sergey On 19.05.2015 5:05, Stephen Chin wrote: > FYI, the build is not compiling currently due to a bad check-in: > http://hg.openjdk.java.net/dio/dev/rev/0dc7ae392a2e > > The problem is in Platform.java: > @@ -60,9 +65,82 @@ > if (null == obj1 || null == obj2) { > return false; > } > - if (obj1.getClass() != obj2.getClass()) { > - return false; > + > + try { > + serialize(obj1).equals(serialize(obj2)); > + } catch (IOException e) { > + return Objects.equals(obj1, obj2); > } > - return Objects.equals(obj1, obj2); > } > > I assume that it was intended the line inside the try block has a return preceding it... > > So this is an easy fix, but what is the recommended advice for early adopters who want to use the Device I/O API in the community? It doesn't look like there are any safe tags, branches, or any nightly builds. > > Cheers, > Stephen Chin (@steveonjava ) | Java Community Manager and JavaOne Content Co-Chair | +1.510.323.6097 > Oracle Technology Network > http://steveonjava.com/ > > > > From sergey.nazarkin at oracle.com Thu May 21 10:27:42 2015 From: sergey.nazarkin at oracle.com (sergey.nazarkin at oracle.com) Date: Thu, 21 May 2015 10:27:42 +0000 Subject: hg: dio/dev: 2 new changesets Message-ID: <201505211027.t4LARg4K011589@aojmv0008.oracle.com> Changeset: 06ce348f358a Author: snazarki Date: 2015-05-21 13:12 +0300 URL: http://hg.openjdk.java.net/dio/dev/rev/06ce348f358a 8080841: Can't register custom configuration Summary: DeviceManager probes no more DeviceProvider at DeviceManager.open(String name... Reviewed-by: alkonsta ! src/share/classes/jdk/dio/DeviceManager.java Changeset: 30bb431d877e Author: snazarki Date: 2015-05-21 13:17 +0300 URL: http://hg.openjdk.java.net/dio/dev/rev/30bb431d877e 8080838: new DevicePermission("\\:-1:\:-1", "open").implies(new DevicePermission("\\:-1:\:-1", "open")) causes an infinite loop Summary: Fixed permission name parser Reviewed-by: snazarki Contributed-by: olga.milovskaya at oracle.com ! src/share/classes/jdk/dio/DeviceMgmtPermission.java ! src/share/classes/jdk/dio/DevicePermission.java From sergey.nazarkin at oracle.com Thu May 21 16:00:48 2015 From: sergey.nazarkin at oracle.com (sergey.nazarkin at oracle.com) Date: Thu, 21 May 2015 16:00:48 +0000 Subject: hg: dio/dev: 8080884: Can't serialize ADC, DAC and PWM config objects Message-ID: <201505211600.t4LG0mom006587@aojmv0008.oracle.com> Changeset: 808c0befc3bd Author: snazarki Date: 2015-05-21 19:00 +0300 URL: http://hg.openjdk.java.net/dio/dev/rev/808c0befc3bd 8080884: Can't serialize ADC, DAC and PWM config objects Summary: Double is substituted by longbits view Reviewed-by: alkonsta ! src/share/classes/jdk/dio/adc/ADCChannelConfig.java ! src/share/classes/jdk/dio/dac/DACChannelConfig.java ! src/share/classes/jdk/dio/pwm/PWMChannelConfig.java From sergey.nazarkin at oracle.com Thu May 28 09:09:43 2015 From: sergey.nazarkin at oracle.com (sergey.nazarkin at oracle.com) Date: Thu, 28 May 2015 09:09:43 +0000 Subject: hg: dio/dev: 3 new changesets Message-ID: <201505280909.t4S99hP4003359@aojmv0008.oracle.com> Changeset: 6f4fbf4511c5 Author: snazarki Date: 2015-05-22 17:46 +0300 URL: http://hg.openjdk.java.net/dio/dev/rev/6f4fbf4511c5 8080946: UART async read can be blocked unexpectedly Summary: Sync write0 is replaced with async wersion Reviewed-by: snazarki Contributed-by: jin-hwan.yu at oracle.com ! src/share/classes/com/oracle/dio/uart/impl/UARTImpl.java Changeset: 5cd6e5117297 Author: snazarki Date: 2015-05-25 13:50 +0300 URL: http://hg.openjdk.java.net/dio/dev/rev/5cd6e5117297 8080994: Async read must not be affected by receive trigger Summary: Operation type is checked at event processing loop Reviewed-by: alkonsta ! src/share/classes/com/oracle/dio/uart/impl/UARTImpl.java Changeset: 36fd4f8f325a Author: snazarki Date: 2015-05-25 18:45 +0300 URL: http://hg.openjdk.java.net/dio/dev/rev/36fd4f8f325a 8080995: DIO UART read(ByteBuffer) method may result in wrong trigger level checking Summary: Redesigned a way to check trigger condition Reviewed-by: alkonsta ! src/se/classes/com/oracle/dio/uart/impl/UARTEventHandler.java ! src/share/classes/com/oracle/dio/impl/AbstractPeripheral.java ! src/share/classes/com/oracle/dio/uart/impl/UARTImpl.java From sergey.nazarkin at oracle.com Thu May 28 09:53:12 2015 From: sergey.nazarkin at oracle.com (sergey.nazarkin at oracle.com) Date: Thu, 28 May 2015 09:53:12 +0000 Subject: hg: dio/dev: 8081383: NumberFormatException at DeviceMgmtPermission Message-ID: <201505280953.t4S9rCrF013366@aojmv0008.oracle.com> Changeset: 416d7f008dd6 Author: snazarki Date: 2015-05-28 12:52 +0300 URL: http://hg.openjdk.java.net/dio/dev/rev/416d7f008dd6 8081383: NumberFormatException at DeviceMgmtPermission Summary: The class is redesigned Reviewed-by: snazarki Contributed-by: olga.milovskaya at oracle.com ! src/share/classes/jdk/dio/DeviceMgmtPermission.java From sergey.nazarkin at oracle.com Fri May 29 15:01:35 2015 From: sergey.nazarkin at oracle.com (sergey.nazarkin at oracle.com) Date: Fri, 29 May 2015 15:01:35 +0000 Subject: hg: dio/dev: 8081509: [UART] Implement setters parameter verifcation Message-ID: <201505291501.t4TF1Zvc009929@aojmv0008.oracle.com> Changeset: dfb0a1f399c7 Author: snazarki Date: 2015-05-29 18:01 +0300 URL: http://hg.openjdk.java.net/dio/dev/rev/dfb0a1f399c7 8081509: [UART] Implement setters parameter verifcation Summary: UARTConfig.Builder is reused as data checker Reviewed-by: alkonsta ! src/share/classes/com/oracle/dio/uart/impl/UARTImpl.java ! src/share/classes/jdk/dio/uart/UARTConfig.java ! src/share/native/com/oracle/dio/javacall_uart.h From sergey.nazarkin at oracle.com Fri May 29 15:17:46 2015 From: sergey.nazarkin at oracle.com (sergey.nazarkin at oracle.com) Date: Fri, 29 May 2015 15:17:46 +0000 Subject: hg: dio/dev: 8081511: Unexpected IOExceptin at UARTConfig.Builder.build Message-ID: <201505291517.t4TFHkpo012676@aojmv0008.oracle.com> Changeset: feda4d56c9a5 Author: snazarki Date: 2015-05-29 18:17 +0300 URL: http://hg.openjdk.java.net/dio/dev/rev/feda4d56c9a5 8081511: Unexpected IOExceptin at UARTConfig.Builder.build Summary: Intermediate UARTConfig instance is returned if Platform.clone() throws an exception Reviewed-by: alkonsta ! src/se/classes/com/oracle/dio/utils/ExceptionMessage.java ! src/share/classes/jdk/dio/uart/UARTConfig.java