On Fri, Oct 15, 2010 at 10:05 PM, Gary Gregory <ggreg...@seagullsoftware.com> wrote: > Thank you for your analysis and archeology Niall. > > Can we save this information in the readme? Or in perhaps a better place > would be in comments in a findbugs-exclude-filter.xml?
I've now added a findbugs-exclude-filter.xml with details for each issue: http://svn.apache.org/viewvc?view=revision&revision=1032164 Niall > Gary Gregory > Senior Software Engineer > Rocket Software > 3340 Peachtree Road, Suite 820 . Atlanta, GA 30326 . USA > Tel: +1.404.760.1560 > Email: ggreg...@seagullsoftware.com > Web: seagull.rocketsoftware.com > > > >> -----Original Message----- >> From: Niall Pemberton [mailto:niall.pember...@gmail.com] >> Sent: Friday, October 15, 2010 13:11 >> To: Commons Developers List >> Subject: Re: [VOTE] Release Commons IO 2.0 based on RC5 >> >> Sebb has previously raised issues highlighted by FindBugs and I ran it >> before cutting RC5. We have resolved a number of FindBugs issues in >> this release (Commons IO 1.4 flagged 13 issues and 2.0-RC5 has 9), >> some of them are not issues and the rest we decided not to resolve. Of >> the 9 FindBugs issues 6 are pre-existing ones that were in the >> previous 1.4 release and 3 are new in this release. >> >> On the new issues raised: >> >> 1) FileEntry.setChildren(FileEntry[]) may expose internal >> representation by storing an externally mutable object >> This impl. is used internally by FileAlterationObserver to refresh and >> update the state of files it is monitoring and in that context this is >> not an issue. If people re-use that impl. elsewhere then they need to >> take care - but its not its primary purpose here and I think its OK. >> 2) The ByteArrayOutputStream "synchronization" issue is a false >> positive and was discussed here: >> https://issues.apache.org/jira/browse/IO-214 >> 3) The ByteArrayOutputStream "may fail to close stream" issue is a >> false positive since close() does nothing in that impl >> >> On the pre-existing issues from IO 1.4: >> >> 1) The two issues regarding FileUtils ignoring the exceptional return >> from setLastModified() were discussed here: >> https://issues.apache.org/jira/browse/IO-215 >> 2) The two issues regarding FileUtils ignoring the exceptional return >> from mkdirs() are false positives IMO since the following line in both >> those methods checks for the existence of the directory and throws an >> exception if it doesn't exist. >> 3) DeferredFileOutputStream is reporting one bug - but no details are >> given in the report!! >> 4) LockableFileWriter ignoring the exceptional return value delete() >> was discussed here: >> https://issues.apache.org/jira/browse/IO-216 >> >> So in summary we resolved 7 FindBugs issues that were present in the >> last release. 3 new ones introduced in this release, but which are not >> an issue IMO and the remaining 6 issue from the last release have been >> considered. So I don't believe anything here should delay the 2.0 >> release. >> >> Thanks >> >> Niall >> >> On Fri, Oct 15, 2010 at 6:56 PM, Gary Gregory >> <ggreg...@seagullsoftware.com> wrote: >> > Hi All: >> > >> > I downloaded and tested building on Oracle Java 1.6.0_21 64 bit on Windows >> Vista 64 bit with Ant 1.8.1 and Maven 2.2.1. All is well with the build and >> unit tests. >> > >> > Findbugs is not part of the build, so I added it and I have some questions: >> > >> > (1) doCopyDirectory and another methods that call setLastModified. >> > >> > In: >> > >> > private static void doCopyDirectory(File srcDir, File destDir, FileFilter >> filter, >> > boolean preserveFileDate, List<String> exclusionList) throws >> IOException { >> > ... >> > // Do this last, as the above has probably affected directory >> metadata >> > if (preserveFileDate) { >> > destDir.setLastModified(srcDir.lastModified()); >> > } >> > } >> > >> > >> > Yields: >> > >> > FileUtils.java:1101 org.apache.commons.io.FileUtils.doCopyDirectory(File, >> File, FileFilter, boolean, List) ignores exceptional return value of >> java.io.File.setLastModified(long) >> > >> > Since the caller specifically asks for /preserveFileDate/ I would assume >> that the cares whether it worked or not. Otherwise this should be >> "quietlyTryToPreserveFileDate" >> > >> > It seems like the method should either return a Boolean or throw an >> exception. >> > >> > Same issue with: >> > >> > FileUtils.java:827 org.apache.commons.io.FileUtils.doCopyFile(File, File, >> boolean) ignores exceptional return value of >> java.io.File.setLastModified(long) >> > >> > Same kind of issue with: >> > >> > FileUtils.java:2060 >> org.apache.commons.io.FileUtils.moveDirectoryToDirectory(File, File, boolean) >> ignores exceptional return value of java.io.File.mkdirs() >> > FileUtils.java:2135 >> org.apache.commons.io.FileUtils.moveFileToDirectory(File, File, boolean) >> ignores exceptional return value of java.io.File.mkdirs() >> > >> > There are a couple more that I am looking at... >> > >> > - >> > Gary Gregory >> > >> >> -----Original Message----- >> >> From: Simone Tripodi [mailto:simone.trip...@gmail.com] >> >> Sent: Friday, October 15, 2010 01:17 >> >> To: Commons Developers List >> >> Subject: Re: [VOTE] Release Commons IO 2.0 based on RC5 >> >> >> >> Hi Niall, >> >> should the clirr report link located on >> >> http://people.apache.org/~niallp/io-2.0-rc5/site/clirr-report.html >> >> instead of http://people.apache.org/~niallp/io-2.0-rc4/site/clirr- >> report.html? >> >> >> >> I can't speak about the implementation stuff because my knowledge on >> >> IO is not good enough, but release looks good, mvn stuff are ok, >> >> generated site (known broken links a part) seems ok. >> >> Tested with both java5 and java6: >> >> >> >> --------------------------------------------------------------------------- >> --- >> >> ------------------------------------------- >> >> >> >> Darwin Simones-Computer-2.local 10.4.0 Darwin Kernel Version 10.4.0: >> >> Fri Apr 23 18:28:53 PDT 2010; root:xnu-1504.7.4~1/RELEASE_I386 i386 >> >> >> >> java version "1.6.0_20" >> >> Java(TM) SE Runtime Environment (build 1.6.0_20-b02-279-10M3065) >> >> Java HotSpot(TM) 64-Bit Server VM (build 16.3-b01-279, mixed mode) >> >> >> >> Apache Maven 3.0 (r1004208; 2010-10-04 13:50:56+0200) >> >> Java version: 1.6.0_20 >> >> Java home: /System/Library/Frameworks/JavaVM.framework/Versions/1.6.0/Home >> >> Default locale: en_US, platform encoding: MacRoman >> >> OS name: "mac os x" version: "10.6.4" arch: "x86_64" Family: "mac" >> >> >> >> Tests run: 744, Failures: 0, Errors: 0, Skipped: 0 >> >> >> >> --------------------------------------------------------------------------- >> --- >> >> ------------------------------------------- >> >> >> >> Darwin Simones-Computer-2.local 10.4.0 Darwin Kernel Version 10.4.0: >> >> Fri Apr 23 18:28:53 PDT 2010; root:xnu-1504.7.4~1/RELEASE_I386 i386 >> >> >> >> java version "1.5.0_24" >> >> Java(TM) 2 Runtime Environment, Standard Edition (build >> >> 1.5.0_24-b02-357-10M3065) >> >> Java HotSpot(TM) Client VM (build 1.5.0_24-149, mixed mode, sharing) >> >> >> >> Apache Maven 3.0 (r1004208; 2010-10-04 13:50:56+0200) >> >> Java version: 1.5.0_24 >> >> Java home: /System/Library/Frameworks/JavaVM.framework/Versions/1.5.0/Home >> >> Default locale: en_US, platform encoding: MacRoman >> >> OS name: "mac os x" version: "10.6.4" arch: "i386" Family: "unix" >> >> >> >> Tests run: 744, Failures: 0, Errors: 0, Skipped: 0 >> >> >> >> I don't know if my vote is binding or not, BTW I express my +1 >> >> Have a nice day, >> >> Simo >> >> >> >> http://people.apache.org/~simonetripodi/ >> >> http://www.99soft.org/ >> >> >> >> >> >> >> >> On Fri, Oct 15, 2010 at 4:14 AM, Niall Pemberton >> >> <niall.pember...@gmail.com> wrote: >> >> > I have prepared Commons IO 2.0 RC5. The main changes since RC4 was to >> >> > rename the FilesystemObserver/Monitor to >> >> > FileAlterationObserver/Monitor and improvements to the test coverage. >> >> > >> >> > The RC3 changes were improvements to some tests which were causing >> >> > intermittent failures in Gump & Continuum and JavaDoc improvements. >> >> > For details about Continuum builds/failures, see: >> >> > http://people.apache.org/~niallp/io-2.0/IOFailures.html >> >> > >> >> > The distro is here: >> >> > http://people.apache.org/~niallp/io-2.0-rc5/ >> >> > >> >> > Release Notes: >> >> > http://people.apache.org/~niallp/io-2.0-rc5/RELEASE-NOTES.txt >> >> > >> >> > Site: >> >> > http://people.apache.org/~niallp/io-2.0-rc5/site/ >> >> > >> >> > Maven Stuff: >> >> > http://people.apache.org/~niallp/io-2.0-rc5/maven/ >> >> > >> >> > Some Notes: >> >> > >> >> > * There is one error on the clirr report - which is a false positive >> >> > (a generic method that is erased) >> >> > http://people.apache.org/~niallp/io-2.0-rc4/site/clirr-report.html >> >> > * Links to the JavaDoc versions on the site don't work (they will when >> >> > its deployed to the right location) >> >> > >> >> > Thanks >> >> > >> >> > Niall >> >> > >> >> > --------------------------------------------------------------------- >> >> > To unsubscribe, e-mail: dev-unsubscr...@commons.apache.org >> >> > For additional commands, e-mail: dev-h...@commons.apache.org >> >> > >> >> > >> >> >> >> --------------------------------------------------------------------- >> >> To unsubscribe, e-mail: dev-unsubscr...@commons.apache.org >> >> For additional commands, e-mail: dev-h...@commons.apache.org >> > >> > >> >> --------------------------------------------------------------------- >> To unsubscribe, e-mail: dev-unsubscr...@commons.apache.org >> For additional commands, e-mail: dev-h...@commons.apache.org > > > --------------------------------------------------------------------- > To unsubscribe, e-mail: dev-unsubscr...@commons.apache.org > For additional commands, e-mail: dev-h...@commons.apache.org > > --------------------------------------------------------------------- To unsubscribe, e-mail: dev-unsubscr...@commons.apache.org For additional commands, e-mail: dev-h...@commons.apache.org