diff --git a/CHANGELOG.md b/CHANGELOG.md index 659ec4cdf1..77848fde9d 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,6 +1,55 @@ BioJava Changelog ----------------- +BioJava 7.3.0 +============================== +### Added +* Fetching, caching and display of electron density and cryo-EM maps #1134 +* Checksum verification (MD5, SHA-1, SHA-256) in `FileDownloadUtils`, replacing the previous + stub. Downloads from `files.wwpdb.org` and `files.rcsb.org` are checksummed from their `ETag` + without a second request #1133 +* `HttpStatusException`, so callers can tell "not there" from a transport failure #1133 +* `FileDownloadUtils.downloadFileWithValidation()`, which downloads and validates over a single + connection #1133 +* `LocalPDBDirectory.getMiddleHash(String)`, computing the two-character directory from the + right so that it is correct for both short and extended PDB IDs #1133 +* Support for the ECOD distribution format introduced at v294.1 #1141 #1139 + +### Performance +* Contact calculation is about 1.5x faster: squared distances compared against a squared cutoff, + primitive arrays in `GridCell` instead of boxed lists, and a pre-sized `AtomContactSet` #1147 +* ASA calculation is about 1.2-1.3x faster, by the same replacement of objects with flat + primitive arrays in the hot loops #1148 +* `EcodInstallation.getVersion()` reads the file header instead of parsing every domain. The + current release is 653 MB and holds nearly three million records #1141 + +### Fixed +* CATH downloads use https and check the response before caching it. The previous http URL began + redirecting, and the redirect body was cached as classification data #1133 #1138 +* CATH parsing no longer throws `ArrayIndexOutOfBoundsException` on blank or truncated lines, and + cached files are validated before being used #1145 +* Chemical component downloads reject redirects and error responses rather than caching them #1133 +* Redirects that `HttpURLConnection` does not follow by itself - 307, 308, and any that change + http to https - are now followed #1151 #1149 +* `FileDownloadUtils`: the `hash` argument was ignored by one overload; downloads could be + silently truncated; temporary files leaked on failure; `validateFile` threw on a file with no + parent directory and on an empty `.size` sidecar #1133 +* mmCIF writer emits the entry identifier as a data item, so `getPdbId()` survives a + write-then-read round trip #1144 #1143 +* The ECOD read lock is left balanced when a download fails, so the original error is no longer + replaced by `IllegalMonitorStateException` #1150 +* Resolution parsing warns only when the values actually differ + +### Changed +* `createValidationFiles()` now defaults to `ETagPolicy.USE_IF_HEX_DIGEST`, so existing callers + begin recording checksums where the server offers one #1133 +* Integration tests run nightly rather than on every pull request #1137 #1135 +* Tests migrated to JUnit 5 #1125 #1126 #1038 +* Library upgrades #1130 #1132 + +### Removed +* The `junit-addons` test dependency, no longer needed after the JUnit 5 migration #1126 + BioJava 7.2.6 ============================== ### Fixed diff --git a/biojava-aa-prop/pom.xml b/biojava-aa-prop/pom.xml index 22bc632906..04db67d2ac 100644 --- a/biojava-aa-prop/pom.xml +++ b/biojava-aa-prop/pom.xml @@ -2,7 +2,7 @@ biojava org.biojava - 7.2.7-SNAPSHOT + 7.3.0-SNAPSHOT 4.0.0 biojava-aa-prop @@ -70,12 +70,12 @@ org.biojava biojava-core - 7.2.7-SNAPSHOT + 7.3.0-SNAPSHOT org.biojava biojava-structure - 7.2.7-SNAPSHOT + 7.3.0-SNAPSHOT diff --git a/biojava-alignment/pom.xml b/biojava-alignment/pom.xml index 7ff8f29cf4..7f0594181f 100644 --- a/biojava-alignment/pom.xml +++ b/biojava-alignment/pom.xml @@ -4,7 +4,7 @@ biojava org.biojava - 7.2.7-SNAPSHOT + 7.3.0-SNAPSHOT biojava-alignment biojava-alignment @@ -47,7 +47,7 @@ org.biojava biojava-core - 7.2.7-SNAPSHOT + 7.3.0-SNAPSHOT compile diff --git a/biojava-core/pom.xml b/biojava-core/pom.xml index 4826cf9d17..2085e47b5b 100644 --- a/biojava-core/pom.xml +++ b/biojava-core/pom.xml @@ -3,7 +3,7 @@ biojava org.biojava - 7.2.7-SNAPSHOT + 7.3.0-SNAPSHOT 4.0.0 biojava-core diff --git a/biojava-genome/pom.xml b/biojava-genome/pom.xml index e469de412c..956cfaa2dd 100644 --- a/biojava-genome/pom.xml +++ b/biojava-genome/pom.xml @@ -3,7 +3,7 @@ biojava org.biojava - 7.2.7-SNAPSHOT + 7.3.0-SNAPSHOT 4.0.0 biojava-genome @@ -73,13 +73,13 @@ org.biojava biojava-core - 7.2.7-SNAPSHOT + 7.3.0-SNAPSHOT compile org.biojava biojava-alignment - 7.2.7-SNAPSHOT + 7.3.0-SNAPSHOT compile diff --git a/biojava-integrationtest/pom.xml b/biojava-integrationtest/pom.xml index 870612fc63..81ec390cc7 100644 --- a/biojava-integrationtest/pom.xml +++ b/biojava-integrationtest/pom.xml @@ -4,7 +4,7 @@ biojava org.biojava - 7.2.7-SNAPSHOT + 7.3.0-SNAPSHOT biojava-integrationtest jar @@ -40,7 +40,7 @@ org.biojava biojava-structure - 7.2.7-SNAPSHOT + 7.3.0-SNAPSHOT diff --git a/biojava-modfinder/pom.xml b/biojava-modfinder/pom.xml index e0db50f1db..343aa74f6c 100644 --- a/biojava-modfinder/pom.xml +++ b/biojava-modfinder/pom.xml @@ -4,7 +4,7 @@ biojava org.biojava - 7.2.7-SNAPSHOT + 7.3.0-SNAPSHOT biojava-modfinder biojava-modfinder @@ -31,7 +31,7 @@ org.biojava biojava-structure - 7.2.7-SNAPSHOT + 7.3.0-SNAPSHOT jar compile diff --git a/biojava-ontology/pom.xml b/biojava-ontology/pom.xml index eb9e3564c1..efc24f1290 100644 --- a/biojava-ontology/pom.xml +++ b/biojava-ontology/pom.xml @@ -4,7 +4,7 @@ org.biojava biojava - 7.2.7-SNAPSHOT + 7.3.0-SNAPSHOT biojava-ontology diff --git a/biojava-protein-comparison-tool/pom.xml b/biojava-protein-comparison-tool/pom.xml index 1527d691f4..8f6fb7f420 100644 --- a/biojava-protein-comparison-tool/pom.xml +++ b/biojava-protein-comparison-tool/pom.xml @@ -4,7 +4,7 @@ biojava org.biojava - 7.2.7-SNAPSHOT + 7.3.0-SNAPSHOT biojava-protein-comparison-tool @@ -36,23 +36,23 @@ org.biojava biojava-alignment - 7.2.7-SNAPSHOT + 7.3.0-SNAPSHOT org.biojava biojava-core - 7.2.7-SNAPSHOT + 7.3.0-SNAPSHOT org.biojava biojava-structure - 7.2.7-SNAPSHOT + 7.3.0-SNAPSHOT org.biojava biojava-structure-gui - 7.2.7-SNAPSHOT + 7.3.0-SNAPSHOT net.sourceforge.jmol diff --git a/biojava-protein-disorder/pom.xml b/biojava-protein-disorder/pom.xml index 827c708a2b..434f6d3f18 100644 --- a/biojava-protein-disorder/pom.xml +++ b/biojava-protein-disorder/pom.xml @@ -3,7 +3,7 @@ biojava org.biojava - 7.2.7-SNAPSHOT + 7.3.0-SNAPSHOT biojava-protein-disorder jar @@ -63,7 +63,7 @@ org.biojava biojava-core - 7.2.7-SNAPSHOT + 7.3.0-SNAPSHOT diff --git a/biojava-structure-gui/pom.xml b/biojava-structure-gui/pom.xml index 21e01ce42e..14a38eb37f 100644 --- a/biojava-structure-gui/pom.xml +++ b/biojava-structure-gui/pom.xml @@ -3,7 +3,7 @@ biojava org.biojava - 7.2.7-SNAPSHOT + 7.3.0-SNAPSHOT 4.0.0 biojava-structure-gui @@ -27,13 +27,13 @@ org.biojava biojava-structure - 7.2.7-SNAPSHOT + 7.3.0-SNAPSHOT compile org.biojava biojava-core - 7.2.7-SNAPSHOT + 7.3.0-SNAPSHOT compile diff --git a/biojava-structure/pom.xml b/biojava-structure/pom.xml index 647ab49c72..e3b5163341 100644 --- a/biojava-structure/pom.xml +++ b/biojava-structure/pom.xml @@ -4,7 +4,7 @@ biojava org.biojava - 7.2.7-SNAPSHOT + 7.3.0-SNAPSHOT biojava-structure biojava-structure @@ -51,13 +51,13 @@ org.biojava biojava-alignment - 7.2.7-SNAPSHOT + 7.3.0-SNAPSHOT compile org.biojava biojava-core - 7.2.7-SNAPSHOT + 7.3.0-SNAPSHOT compile diff --git a/biojava-survival/pom.xml b/biojava-survival/pom.xml index 570a2dd99b..8115693dfc 100644 --- a/biojava-survival/pom.xml +++ b/biojava-survival/pom.xml @@ -4,7 +4,7 @@ org.biojava biojava - 7.2.7-SNAPSHOT + 7.3.0-SNAPSHOT biojava-survival diff --git a/biojava-ws/pom.xml b/biojava-ws/pom.xml index c3fe2a9513..ebc18949ed 100644 --- a/biojava-ws/pom.xml +++ b/biojava-ws/pom.xml @@ -3,7 +3,7 @@ biojava org.biojava - 7.2.7-SNAPSHOT + 7.3.0-SNAPSHOT biojava-ws biojava-ws @@ -19,7 +19,7 @@ org.biojava biojava-core - 7.2.7-SNAPSHOT + 7.3.0-SNAPSHOT compile diff --git a/pom.xml b/pom.xml index 79db94ee26..dbed771382 100644 --- a/pom.xml +++ b/pom.xml @@ -12,7 +12,7 @@ org.biojava biojava pom - 7.2.7-SNAPSHOT + 7.3.0-SNAPSHOT biojava BioJava is an open-source project dedicated to providing a Java framework for processing biological data. It provides analytical and statistical routines, parsers for common file formats and allows the