Skip to content

Commit f679dbd

Browse files
Merge pull request #1 from biojava/master
Implement all changes from biojava/biojava into DK-MV/biojava
2 parents 74e3dd6 + 01620a5 commit f679dbd

File tree

648 files changed

+773217
-755357
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

648 files changed

+773217
-755357
lines changed

.gitattributes

Lines changed: 51 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,51 @@
1+
# Set the default behavior, in case people don't have core.autocrlf set.
2+
* text=auto
3+
4+
# Explicitly declare text files you want to always be normalized and converted
5+
# to native line endings on checkout.
6+
7+
*.MF text
8+
*.blasttxt text
9+
*.blastxml text
10+
*.cif text
11+
*.dssp text
12+
*.faa text
13+
*.fasta text
14+
*.fastq text
15+
*.fatcat text
16+
*.fna text
17+
*.gb text
18+
*.gff3 text
19+
*.html text
20+
*.in text
21+
*.java text
22+
*.list text
23+
*.lst text
24+
*.mat text
25+
*.md text
26+
*.obo text
27+
*.onto text
28+
*.out text
29+
*.pairs text
30+
*.pdb text
31+
*.properties text
32+
*.py text
33+
*.rec text
34+
*.selex text
35+
*.sh text
36+
*.sto text
37+
*.sto text
38+
*.tsv text
39+
*.txt text
40+
*.xml text
41+
*.xsd text
42+
*.yml text
43+
44+
# Declare files that will always have CRLF line endings on checkout.
45+
#*.sln text eol=crlf
46+
47+
# Denote all files that are truly binary and should not be modified.
48+
*.png binary
49+
*.jpg binary
50+
*.gz
51+
*.mmtf

.travis.yml

Lines changed: 14 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,16 @@
11
language: java
22
jdk:
3-
- oraclejdk8
4-
sudo: false
5-
#after_success:
6-
# - mvn clean cobertura:cobertura coveralls:report
3+
- oraclejdk8
4+
sudo: required
5+
cache:
6+
directories:
7+
- "$HOME/.m2"
8+
before_install:
9+
- if [ ! -z "$GPG_SECRET_KEYS" ]; then echo $GPG_SECRET_KEYS | base64 --decode | $GPG_EXECUTABLE --import; fi
10+
- if [ ! -z "$GPG_OWNERTRUST" ]; then echo $GPG_OWNERTRUST | base64 --decode | $GPG_EXECUTABLE --import-ownertrust; fi
11+
after_success:
12+
- '[[ $TRAVIS_BRANCH == "master" ]] && { mvn deploy --settings travis-settings.xml -DskipTests=true -B ; };'
13+
env:
14+
global:
15+
- secure: MkIoyU3GmlgDRhO0n1lDKvZ/k0myVY3IsFTRNUFjaBBpohLyOBrs5L8gYmfnHYHB/LvJsP6EWA6i0wCchy8hU/2pn66T12K1+WZHyqCe7RRz2kgcvVgMXTsHgvVyZ3dERcBfEDeZENzEYCYADaysT+A73ofWdJemOqfa7IFEb80=
16+
- secure: it5av1icAvJn/6UI0aWS23m+En0ij1hCiPKw1QIbDLCE3oJOE4nHR8qINcnontH4XUQYTkmekStDkXj0WVVgp08zArj9o018XBtadYY+15h2QZBBAIpYb3UdlJoQfkcAx8yCv59BMd/u6DhMtcKSTHptVWvsLAS7YGW5hR6ZNYA=

CHANGELOG.md

Lines changed: 241 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,241 @@
1+
BioJava 5.0.0
2+
=============
3+
4+
This release contains [1,170 commits](https://github.com/biojava/biojava/compare/biojava-4.2.11...biojava-5.0.0) from 19 contributors.
5+
6+
Requires Java 8 or newer.
7+
8+
### New features
9+
10+
#### biojava-alignment
11+
* New utlity methods for sequence alignment objects (gap, similarity and coverage).
12+
13+
#### biojava-structure
14+
* The data structures to represent 3D macromolecules now follow the mmCIF data model.
15+
* [MMTF format](http://mmtf.rcsb.org/) support.
16+
* Symmetry detection algorithms overhaul: better symmetry detection for tertiary and quaternary structure levels.
17+
* New method and data structures for the clustering of protein subunits at the sequence and structure levels.
18+
* New method to align biological assemblies, see `org.biojava.nbio.structure.align.quaternary.QsAlign`.
19+
* New algorithms for base-pair geometry in nucleic acids.
20+
* New SuperPosition interface for different 3D-structure superposition algorithms, see `org.biojava.nbio.structure.geometry.SuperPosition`.
21+
* Geometry-related API now more consistently based on vecmath interfaces.
22+
23+
### Changed
24+
* For short structure selections (e.g. 1abc.A:1-100), ligands within 5A will be included
25+
* Symmetry expansion for bioassembly creation is now by default happening via adding new chains instead of new models.
26+
* Make objects serializable for compatibility with big data frameworks (e.g. Spark).
27+
28+
### Breaking API changes
29+
30+
* module biojava-phylo merged into biojava-alignment. The package namespace stays the same (`org.biojava.nbio.phylo`).
31+
* module biojava-sequencing merged into biojava-genome. Package `org.biojava.nbio.sequencing.io.fastq` is now `org.biojava.nbio.genome.io.fastq`
32+
* `org.biojava.nbio.structure.Compound` -> `org.biojava.nbio.structure.EntityInfo`
33+
* `org.biojava.nbio.structure.io.util.FileDownloadUtils` -> `org.biojava.nbio.core.util.FileDownloadUtils`
34+
* `org.biojava.nbio.structure.symmetry.core.AxisAligner` -> `org.biojava.nbio.structure.symmetry.axis.AxisAligner`
35+
* `org.biojava.nbio.structure.symmetry.core.Subunits` -> refactored into several classes in `org.biojava.nbio.structure.cluster`: Subunit, SubunitCluster, SubunitClusterer
36+
* `org.biojava.nbio.structure.align.helper.AlignTools` -> `org.biojava.nbio.structure.align.helper.AlignUtils`
37+
* All deprecations introduced in 4.0.0 or before were removed.
38+
39+
### General
40+
41+
* Javadocs improvements across the board.
42+
* All tests are now Junit4.
43+
* Updated dependency versions (guava, slf4j, and log4j).
44+
45+
### Bug fixes
46+
A very long list.
47+
48+
BioJava 4.2.11
49+
==============
50+
51+
release date: January 11th 2018
52+
This release contains [3](https://github.com/biojava/biojava/compare/biojava-4.2.10...biojava-4.2.11) commits from 1 contributor.
53+
54+
### Bug fixes
55+
- Updated hmmer scan web service URL to https.
56+
57+
BioJava 4.2.10
58+
==============
59+
60+
release date: December 11th 2017
61+
This release contains [7](https://github.com/biojava/biojava/compare/biojava-4.2.9...biojava-4.2.10) commits from 2 contributors.
62+
63+
### Bug fixes
64+
- Fixed issue #659
65+
- Fixed issue #715
66+
67+
BioJava 4.2.9
68+
=============
69+
70+
release date: October 19th 2017
71+
This release contains [15](https://github.com/biojava/biojava/compare/biojava-4.2.8...biojava-4.2.9) commits from 2 contributors.
72+
73+
### Bug fixes
74+
- Some fixes to PDB file parsing CONECT/LINK records
75+
- Updated URLs for external resources
76+
77+
78+
BioJava 4.2.8
79+
=============
80+
81+
release date: July 6th 2017
82+
This release contains [15](https://github.com/biojava/biojava/compare/biojava-4.2.7...biojava-4.2.8) commits from 3 contributors.
83+
84+
### Bug fixes
85+
- Small additions to AlignedSequence in core module to better support pipelines that use 4.2.x
86+
- URLs adapted to latest RCSB PDB convention #682
87+
88+
BioJava 4.2.7
89+
=============
90+
91+
release date: March 7th 2017
92+
This release contains [8](https://github.com/biojava/biojava/compare/biojava-4.2.6...biojava-4.2.7) commits from 4 contributors.
93+
94+
### Bug fixes
95+
- Fix for hmmer web service in biojava-ws #640
96+
- Fix in chromosome mapping tool #636
97+
98+
BioJava 4.2.6
99+
=============
100+
101+
release date: February 17th 2017
102+
This release contains [12](https://github.com/biojava/biojava/compare/biojava-4.2.5...biojava-4.2.6) commits from 4 contributors.
103+
104+
### Bug fixes
105+
* Fix for problem in chain cloning, #631
106+
* Several bug fixes and better error check in quaternary symmetry detection code
107+
108+
BioJava 4.2.5
109+
=============
110+
111+
release date: December 7th 2016
112+
This release contains [30](https://github.com/biojava/biojava/compare/biojava-4.2.4...biojava-4.2.5) commits from 7 contributors.
113+
114+
### Bug fixes
115+
116+
* Fix for new phosphositeplus.org format, #610
117+
* org.biojava.nbio.genome.parsers.gff.Location union() and intersect() now work correctly, #355
118+
* Minor addition of crystallographic metadata fields to handle legacy PDB entries
119+
* Jmol interchange format is now mmCIF, allowing for multiletter chain ids
120+
* Update to latest jmol 14.6.2_2016.08.28
121+
* A few minor bug fixes
122+
123+
BioJava 4.2.4
124+
=============
125+
126+
release date: July 29th 2016
127+
This release contains over [17](https://github.com/biojava/biojava/compare/biojava-4.2.3...biojava-4.2.4) commits from 4 contributors.
128+
129+
### Bug fixes
130+
131+
* NCBI links now using https (see [NCBI's announcement](http://www.ncbi.nlm.nih.gov/news/06-10-2016-ncbi-https/) )
132+
* CATH links redirected to new server http://release.cathdb.info/
133+
* SCOP default location now points to the Berkeley server after demise of Scop at MRC LMB
134+
* Fixed important bug in mmCIF writing where structures with multiple models were written with identical coordinates
135+
* Fixed bug in Group cloning where chemical components weren't cloned
136+
* Added utility class for Chromosome mapping
137+
138+
BioJava 4.2.3
139+
=============
140+
141+
release date: July 28th 2016
142+
This release contains over [13](https://github.com/biojava/biojava/compare/biojava-4.2.2...biojava-4.2.3) commits from 2 contributors.
143+
144+
### Bug fixes
145+
146+
* mmCIF file writing: special fields (e.g. containing hyphens) are now correctly written
147+
* General improvements in mmCIF file read and write
148+
149+
BioJava 4.2.2
150+
=============
151+
152+
release date: June 14th 2016
153+
This release contains over [31](https://github.com/biojava/biojava/compare/biojava-4.2.1...biojava-4.2.2) commits from 5 contributors.
154+
155+
### Bug fixes
156+
157+
This is a bug-fix release
158+
159+
* CE-Symm features and bug fixes
160+
- Better data structures for symmetry axes (particularly for hierarchical symmetry)
161+
- Fix bug with symmetry axis positioning
162+
- Optimization includes all symmetry repeats for hierarchical symmetry
163+
* Update of protein modifications to latest version,
164+
- including new glycans and chromophores
165+
- Updating naming definitions to latest conventions
166+
167+
168+
BioJava 4.2.1
169+
=============
170+
171+
release date: May 3rd 2016
172+
This release contains over [31](https://github.com/biojava/biojava/compare/biojava-4.2.0...biojava-4.2.1) commits from 7 contributors.
173+
174+
### Bug fixes
175+
176+
Biojava-structure
177+
178+
- Nucleotide bonds are now generated
179+
- BIO: identifiers are now correctly handled
180+
- Several fixes for CE-Symm
181+
- Substructures now contain seqres groups (isse #449)
182+
- Structures containing insertion codes are now written correctly to mmCIF
183+
- AtomCache now uses the correct default parsing parameters (issue #455)
184+
- Fixed problem with some atom charges that weren't being added
185+
- CATH updated to 4.0.0
186+
- Better ECOD javadocs (issue #452)
187+
188+
Biojava-structure-gui
189+
- Removed javaws dependency (issue #459)
190+
191+
BioJava 4.2.0
192+
=============
193+
194+
release date: March 10th 2016
195+
196+
This release contains over [750](https://github.com/biojava/biojava/compare/6f8d796fee92edbbcd001c33cdae4f15c5480741...biojava-4.2.0) commits from 16 contributors.
197+
198+
BioJava 4.2.0 offers many new features, as well several bug-fixes.
199+
200+
- Requires Java 7
201+
- Better logging with SLF4J
202+
203+
### New Features
204+
205+
#### biojava-core
206+
207+
- New SearchIO framework including blast xml parser
208+
209+
#### biojava-structure
210+
211+
- Secondary structure assignment (DSSP compatible)
212+
- Multiple Structure Alignments
213+
- New MultipleStructureAlignment datastructure supporting flexible and order-independent alignments
214+
- MultipleMC algorithm
215+
- Can use any pairwise StructureAlignment implementation
216+
- serialize and parse multiple structure alignments as XML files, output as Text, FatCat, FASTA, Rotation Matrices, etc.
217+
- More complete mmCIF and cif parsing
218+
- Parse bonds, sites, charges
219+
- Better support for non-deposited pdb and mmcif files
220+
- Include CE-Symm algorithm for finding internal symmetry (Myers-Turnbull, 2014)
221+
- Replaced internal graph datastructures with Jgraph
222+
- Unified StructureIdentifier framework
223+
- Improved chemical component framework, now by default providing full chemical description by using DownloadChemCompProvider
224+
- Optimised memory usage of Residue/Atoms
225+
226+
#### biojava-structure-gui
227+
228+
- MultipleAlignmentGUI for visualizing Multiple Structure Alignments with Jmol
229+
- SymmetryDisplay for visualizing internal symmetry
230+
231+
#### biojava-phylo
232+
233+
- Use `Forester 1.038`
234+
- Significant bug fixes
235+
- use `SubstitutionMatrices` in the core module (instead of imported Jalview matrices)
236+
- use `Sequence` and `Compound` classes from the alignment module
237+
- provide some Wrapper methods to communicate with forester
238+
- decouple distance matrix calculation from tree constructor
239+
- provide methods for common distance matrix calculations and framework for user-defined distances
240+
- update the forester version to have the correct NJ tree constructor
241+
- correct some of the tree evaluator statistics.

CONTRIBUTING.md

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
## Modules
2+
BioJava is composed of several submodules, one per broad bioinformatics topic.
3+
[biojava-core](https://github.com/biojava/biojava/tree/master/biojava-core) contains general core methods that are shared across different modules.
4+
5+
## Contributing
6+
- All contributions should happen through pull requests so that there is open reviewing. The master branch is protected,
7+
users can't push directly to it.
8+
- Please add javadocs following standard java conventions. Javadocs are a must for public facing API methods.
9+
- Add `@author` tags to class javadocs.
10+
- Be sure to add `@since` tags whenever adding a new public-facing API method/field/class.
11+
- Removed unused imports and variables or any other obvious compiler warning.
12+
- Please handle exceptions carefully. Follow the "Throw early, catch late" philosophy, see #111.
13+
- Add tutorial docs to the [biojava-tutorial repository](https://github.com/biojava/biojava-tutorial)
14+
15+
## Testing
16+
- We use junit 4 for testing. Some older tests are in junit 3, but all new ones should be 4.
17+
- Unit tests should cover reasonably the code. The tests should go into the `src/test/main/` directory
18+
of the corresponding biojava module.
19+
- We store heavier and longer running tests into the [biojava-integrationtest module](https://github.com/biojava/biojava/tree/master/biojava-integrationtest)
20+
- Try minimising use of external resources in tests. We haven't been very good at that in the past.

biojava-structure/src/main/java/org/biojava/nbio/structure/align/util/CacheFactory.java renamed to HEADER.txt

Lines changed: 1 addition & 28 deletions
Original file line numberDiff line numberDiff line change
@@ -17,31 +17,4 @@
1717
*
1818
* http://www.biojava.org/
1919
*
20-
*/
21-
package org.biojava.nbio.structure.align.util;
22-
23-
import org.biojava.nbio.core.util.SoftHashMap;
24-
25-
26-
/** provides a SoftHashMap singleton.
27-
*
28-
*
29-
* @Deprecated find better ways for caching or use a SoftHashMap directly
30-
*/
31-
32-
public class CacheFactory {
33-
34-
@SuppressWarnings("rawtypes")
35-
private static SoftHashMap cache = new SoftHashMap ();
36-
37-
// no public constructor;
38-
private CacheFactory(){
39-
40-
}
41-
42-
@SuppressWarnings("rawtypes")
43-
public static SoftHashMap getCache(){
44-
return cache;
45-
}
46-
47-
}
20+
*/

0 commit comments

Comments
 (0)