-
Notifications
You must be signed in to change notification settings - Fork 659
/
CHANGELOG
3301 lines (2957 loc) · 164 KB
/
CHANGELOG
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
# -*- tab-width: 2; indent-tabs-mode: nil; coding: utf-8 -*-
======================
MDAnalysis CHANGELOG
======================
The rules for this file:
* entries are sorted newest-first.
* summarize sets of changes - don't reproduce every git log comment here.
* don't ever delete anything.
* keep the format consistent (79 char width, M/D/Y date format) and do not
use tabs but use spaces for formatting
* accompany each entry with github issue/PR number (Issue #xyz)
* release numbers follow "Semantic Versioning" https://semver.org
-------------------------------------------------------------------------------
??/??/?? IAlibay, ianmkenney, PicoCentauri, pgbarletta, p-j-smith,
richardjgowers, lilyminium, ALescoulie, hmacdope
* 2.7.0
Fixes
* Fix `NoJump` unwrapping for jumps on the second frame in a
trajectory (PR #4258, Issue #4257)
* Deprecated np.float_ and np.NaN aliases have been replaced with
their original type value (np.float64 and np.nan) (PR #4272)
* Fixes a case where qcprot.CalcRMSDRotationalMatrix would return a
RMSD of None
* Fixes hydrogenbonds tutorial path to point to hbonds (Issue #4285, PR #4286)
* Fix atom charge reading in PDBQT parser (Issue #4282, PR #4283)
Enhancements
* Refactor c_distances backend to have a cython .pxd header and expose in
libmdanalysis (Issue #4315, PR #4324)
* Add faster nucleic acid Major and Minor pair distance calculators using
AnalysisBase for updated nucleicacids module (Issue #3720, PR #3735)
* Adds external sidebar links (Issue #4296)
* Updated lib.qcprot.CalcRMSDRotationalMatrix to accept either float32 or float64
inputs (PR #4273, part of #3927)
* Added a warning about charge neutrality to the documentation of
`DielectricConstant` (Issue #4262, PR #4263)
* Add support for reading chainID info from prmtop amber topologies (PR #4007)
* Add support for reading chainID info from GROMACS TPR topologies
(Issue #3994, PR #4281)
* Add support for reading chainID info from Autodock PDBQT files (Issue #4207,
PR #4284)
Changes
* Biopython is now an optional dependency (Issue #3820, PR #4332)
* Networkx is now an optional dependency (Issue #3822).
* High memory tests (enabled through the environment variable
`ENABLE_HIGH_MEM_UNIT_TESTS` are now only enabled if the environment variable
is set to "true") (PR #4295)
* The `mda-xdrlib` module is now a core dependency of MDAnalysis
replacing the now deprecated `xdrlib` core Python library
(PR #4271)
* ConverterBase class moved from coordinates/base.py to converters/base.py (Issue #3404)
* Results for WatsonCrickDist nucleic acids analysis are now stored in
`analysis.nucleicacids.WatsonCrickDist.results.distances` (Issue #3720, PR #3735)
Deprecations
* The `asel` argument to timeseries will be renamed to `atomgroup` in 3.0.0.
(Issue #3911)
* MDAnalysis.lib.util is deprecated and will be removed in version 3.0
(Issue #3649)
* The TRZ reader & writer are deprecated and will be removed in version 3.0
(PR #4335)
* X3DNA has been deprecated and will be removed in 3.0.0 (Issue #3788)
* coordinates.base.ConverterBase has been deprecated and will be removed in 3.0.0;
use converters.base.ConvertBase instead (Issue #3404)
* In `nucleicacids.WatsonCrickDist`, accepting lists of `Residue` objects was deprecated
in favor of using `ResidueGroup`: using `List[Residue]` will be removed in release
3.0.0; instead use a `ResidueGroup` (Issue #3720, PR #3735)
* In `nucleicacids.WatsonCrickDist` the result `results.pair_distances` was
deprecated and will be removed in 3.0.0; use `results.distances` (Issue #3720,
PR #3735)
28/08/23 IAlibay, hmacdope, pillose, jaclark5, tylerjereddy
* 2.6.1
Fixes
* Fix Atom type guessing error (PR #4168, Issue #4167)
Enhancements
* Allow `set_dimensions` transformation to handle NPT trajectories (PR #4258)
Changes
* Reverts PR #4108, builds are now again made using the oldest
supported NumPy version.
* NumPy `in1d` replaced with `isin` in preparation for NumPy
`2.0` (PR #4255)
* Update documentation for SurvivalProbabilty to be more clear
(Issue #4247)
* Cython DEF statments have been replaced with compile time integer constants
as DEF is deprecated as of Cython>=3.0 (Issue #4237, PR #4246)
Deprecations
08/15/23 IAlibay, jaclark5, MohitKumar020291, orionarcher, xhgchen,
ztimol, orbeckst
* 2.6.0
Fixes
* Fix AtomGroup.center_of_charge(..., unwrap=True) giving
inconsistent (but scientifically correct) results on Intel macOS
(Issue #4211)
* Fix Boltzmann typo in `units.py` (PR #4214, Issue #4213)
* Fix deletion of bond/angle/dihedral types (PR #4003, Issue #4001)
* CRD, PQR, and PDBQT writers now write BZ2 and GZ files if requested
(PR #4163, Issue #4159)
Enhancements
* Added a `exclude_same` kwarg to InterRDF (PR #4161)
* LAMMPSDump Reader use of `continuous` option to stitch trajectories
(Issue #3546)
Changes
* Package builds are now made using NumPy 1.25 or higher. This provides
backwards runtime compatibility with older NumPy builds within the limit
of NEP29 (PR #4108).
* Removed `-ffast-math` compiler flag to avoid potentially incorrect
floating point results in MDAnalysis *and* other codes when
MDAnalysis shared libraries are loaded --- see
https://moyix.blogspot.com/2022/09/someones-been-messing-with-my-subnormals.html
(Issues #3821, #4211)
* Atom ID representation order updated to match that of associated
AtomGroup indices.
(PR #4191, Issue #4181)
* Package license has been updated to GPLv3+ to better reflect the
compatibility of GPLv2+ with Apache and GPLv3 licenced codes (PR #4219).
* All new contributions are now made under LGPLv2.1+ (PR #4219).
* Support for GSD is now limited to version 3.0.1 and above. Alongside this
change, support for schema 1.3 files has been dropped (PR #4153)
* Add definition of ts.data['time'] in LAMMPSDump Reader (Issue #3546)
* As per NEP29 the minimum supported version has been raised to 1.22. We
have opted to pin to a minimum of 1.22.3 to avoid known issues on some
platforms.
* GSD is no longer a core dependency of MDAnalysis. It must be installed
independently if you wish to read HOOMD trajectory files.
(PR #4174, Issue #3819)
Deprecations
* Incorrectly spelt Boltzmann unit entry will be removed in version 2.8.0
(PR #4230, Issue #4229)
* The hole2 module is deprecated in favour of the the MDAKit:
https://github.com/MDAnalysis/hole2-mdakit (Issue #4179, PR #4200)
* MDAnalysis no longer officially supports 32 bit installations (they are
no longer tested in our continuous integration pipelines). Note: whilst
no code changes have been made to disable 32 bit, although it is known that
new versions of most MDAnalysis core dependencies no longer release
32 bit compatible versions. (Issue #3858, PR #4176)
05/28/23 IAlibay, pgbarletta, mglagolev, hmacdope, manuel.nuno.melo, chrispfae,
ooprathamm, MeetB7, BFedder, v-parmar, MoSchaeffler, jbarnoud, jandom,
xhgchen, jaclark5, DrDomenicoMarson, AHMED-salah00, schlaicha,
SophiaRuan, g2707, p-j-smith, tylerjereddy, xiki-tempula, richardjgowers,
cbouy
* 2.5.0
Fixes
* Fixed using 'rb' mode inside GSDReader to avoid FutureWarning from GSDFile (Issue #4152)
* Fixed ChainReader performing transformations correctly across boundaries in the individual trajectories
(Issue #3657 #4008 PR #3906)
* Fix the `heavy` distance_type for water bridge analysis where distance
is not correctly assigned when more than one hydrogen is bonded to a
heavy atom (Issue #4040, PR #4066).
* PDB topology parser no longer fails when encountering unknown formal
charges and instead simply does not populate attribute (Issue #4027)
* Added support for Cython 3.0.0b2 (PR #4129)
* Ensure 'HydrogenBondAnalysis' returns the correct distances when using the
'between' keyword (PR #4092)
* Skip tests artificially checking for readonly or PermissionError cases
when running at root user on linux systems (Issue #4112, PR #4120)
* Fix chi1_selections() ignored atom names CG1 OG OG1 SG and incorrectly returned
None for amino acids CYS, ILE, SER, THR, VAL (Issue #4108)
* Fix parsing of box vector in H5MD reader (Issue #4076)
* Fix the misleading 'AtomGroup.guess_bonds()' docs and passed missing
arguments (PR #4059)
* Fix for NetCDF trajectories without `time` variable (Issue #4073)
* Allows shape_parameter and asphericity to yield per residue quantities
(Issue #3002, PR #3905)
* Add tests for "No path data" exception raise in test_psa.py (Issue #4036)
* Fix uninitialized `format` variable issue when calling
`selections.get_writer` directly (PR #4043)
* Fix tests should use results.rmsf to avoid DeprecationWarning (Issue #3695)
* Fix EDRReader failing when parsing single-frame EDR files (Issue #3999)
* Fix test clobbering in lib/test_util.py (PR #4000)
* Fix MSD docs to use the correct error metric in example (Issue #3991)
* Add 'PairIJ Coeffs' to the list of sections in LAMMPSParser.py
(Issue #3336)
Enhancements
* ARM64 (osx and linux) wheels now uploaded on release (Issue #4054)
* Add simple atomic distance analysis to `analysis.atomicdistances` with
new class `AtomicDistances` (Issue #3654)
* Add kwarg `n_frames` to class method `empty()` in
`MDAnalysis.core.universe`, enabling creation of a `Universe` with
multiple frames from scratch (PR #4140)
* PDBReader now populates ts.data['tempfactor'] with the tempfactor for
each atom *for each frame*. If an entry is missing for a given atom,
this will default to a `1.0` value. Note, this does not affect the
topology (i.e. `AtomGroup.tempfactors` is not dynamically updated.
(Issue #3825, PR #3988)
* Add writing u.trajectory.ts.data['molecule_tag'] as molecule tags to LAMMPS data file (Issue #3548)
* Improved speed of chi1_selection (PR #4109)
* Add `progressbar_kwargs` parameter to `AnalysisBase.run` method, allowing
to modify description, position etc of tqdm progressbars.
* Add a nojump transformation, which unwraps trajectories so that particle
paths are continuous. (Issue #3703, PR #4031)
* Added AtomGroup TopologyAttr to calculate gyration moments (Issue #3904,
PR #3905)
* Add support for TPR files produced by Gromacs 2023 (Issue #4047)
* Add distopia distance calculation library bindings as a selectable backend
for `calc_bonds` in `MDA.lib.distances`. (Issue #3783, PR #3914)
* AuxReaders are now pickle-able and copy-able (Issue #1785, PR #3887)
* Add pickling support for Atom, Residue, Segment, ResidueGroup
and SegmentGroup. (PR #3953)
Changes
* As per NEP29 the minimum supported Python version has been raised to 3.9
(PR #4115).
* einsum method for Einstein summation convention introduced to increase
performance (Issue #2063, PR #4089)
* Add progress bars to track the progress of _conclude() functions
(_conclude_simple() and _conclude_fft()) in msd.py (Issue #4070, PR #4072)
* As per NEP29 the minimum supported NumPy version has been raised to 1.21
(note: in practice later versions of NumPy may be used depending on your
architecture, operating system, or Python version) (PR #3983)
* The deprecated direct indexing and `times` from the `results` attribute of
analysis.nucleicacids' NucPairDist and WatsonCrickDist classes has been
removed. Please use the `results.pair_distances` and `times` attributes
instead (Issue #3744)
* RDKitConverter changes (part of Issue #3996):
* moved some variables (`MONATOMIC_CATION_CHARGES `and
`STANDARDIZATION_REACTIONS`) out of the related functions to allow users
fine tuning them if necessary.
* changed the sorting of heavy atoms when inferring bond orders and
charges: previously only based on the number of unpaired electrons, now
based on this and the number of heavy atom neighbors.
* use RDKit's `RunReactantInPlace` for the standardization reactions, which
should result in a significant speed improvement as we don't need to use
bespoke code to transfer atomic properties from the non-standardized mol
to the standardized one.
03/29/23 richardjgowers, IAlibay
* 2.4.3
Fixes
* Fixed DCD reading for large (>2Gb) files (Issue #4039). This was broken
for versions 2.4.0, 2.4.1 and 2.4.2
* Fix element parsing from PSF files tests read via Parmed (Issue #4015)
01/04/23 IAlibay
* 2.4.2
Fixes
* np.histogramdd calls in :class:`DensityAnalysis` now pass the `density`
argument rather than the NumPy 1.24 removed `normed` (PR #3976)
* visualization.streamlines_3D and visualization.streamlines no longer
rely on the scalar return of an numpy array elementwise comparison which
is no longer supported as of NumPy 1.25 (PR #3977)
12/17/22 IAlibay
* 2.4.1
Fixes
* Fixes pyproject.toml minimum pin for biopython
12/16/22 IAlibay, Luthaf, hmacdope, rafaelpap, jbarnoud, BFedder, aya9aladdin,
jaclark5, jfennick, lilyminium, orbeckst, Hakarishirenai
* 2.4.0
Fixes
* Update hbond analysis doc string to use exclusive bound language
(Issue #3847)
* XTC and TRR readers now fail with IOError when a status except EOK (=0) is
detected on reading a frame instead of silently continuing
* Consolidate license files across MDAnalysis library packages (PR #3939)
* Kwargs passed through to `MemoryReader` when using `transfer_to_memory()`
and `in_memory=True`.
* NoDataError raised on empty atomgroup provided to `DCDReader.timeseries`
was changed to ValueError (see #3901). A matching ValueError was added to
`MemoryReader.timeseries`(PR #3890).
* Removes ``pbc`` kwarg from ``AtomGroup.wrap`` (Issue #3909)
* LAMMPSDump Reader translates the box to the origin (#3741)
* hbond analysis: access hbonds results through new results member in count_by_ids() and count_by_type()
* Auxiliary; determination of representative frames: Removed undefined
behaviour for cutoff values < -1 (PR # 3749)
* Fixes distances.between not always returning AtomGroup (Issue #3794)
* Upgrade to chemfiles 0.10.3 (Issue #3798)
* fixes guessed_attributes and read_attributes methods of the Topology class, as
those methods were giving unexpected results for some topology attributes
(e.g. bonds, angles) (PR #3779).
Enhancements
* Added dipole and quadrupole moment topology methods to AtomGroup
(Issue #3841, PR #3842)
* MDAnalysis now follows PEP621 (PR #3528)
* Added a reader for GROMACS TNG files based on PyTNG (PR #3765,
Issue #3237, partially addressing Issue #865)
* Added ability for hbond analysis to use types when resnames are not
present (Issue #3847)
* Added explanatory warnings when hbond analysis doesn't find any hbonds
(Issue #3847)
* Improve C content of libxdr Cython, add `read_direct` methods to read
coordinates, velocities and forces directly into memoryviews of `Timestep`
attributes, make `TRR` timestep have positions, velocities and forces on
`__init__`. (Issue #3891 PR #3892).
* Improve C content of libdcd Cython (Issue #3882, PR #3888)
* The timeseries method for exporting coordinates from multiple frames to a
NumPy array was added to ProtoReader (PR #3890)
* MDAnalysis now officially supports py3.11 (Issue #3878)
* LAMMPSDump Reader optionally unwraps trajectories with image flags upon
loading (Issue #3843)
* LAMMPSDump Reader now imports velocities and forces (Issue #3843)
* Minimum NumPy version for py3.11 is now set to 1.23.2.
* Added decorator to check for an empty atom group, applied in topological
attributes(Issue #3837)
* AuxReaders now have a memory_limit parameter to control when memory usage
warnings are issued. (PR # 3749)
* MDAnalysis.units now has a lookup dictionary called MDANALYSIS_BASE_UNITS
where unit types like length or speed are mapped to their base units in
MDAnalysis (i.e. "A" or "A/ps") (PR # 3749)
* A new AuxReader for the GROMACS EDR file format was implemented.
(Issue # 3629, PR # 3749)
* Added benchmarks for bonds topology attribute (Issue #3785, PR #3806)
* Added isolayer selection method (Issue #3845)
Changes
* Minimum numpy version for python 3.10 and Windows has been raised to 1.22.3
(PR #3903)
* Replaced deprecated Bio.pairwise2 with Bio.align.PairwiseAligner in
MDAnalysis.analysis.align.sequence_alignment (Issue #3950)
* Increased minimal version of biopython to 1.80 (Issue #3950)
* Moved `libmdanalysis` cython header to `lib`(Issue #3912, PR #3913)
* Auxiliary; determination of representative frames: The default value for
cutoff is now None, not -1. Negative values are now turned
to None. (PR #3749)
* `MDAnalysis.coordinates.base.add_auxiliary()` now supports adding of
multiple auxiliary data points at the same time. To this end, the API was
rewritten and now expects dictionaries of `desired attribute name`:
`name in auxiliary data file` as input. Adding all data found in the
auxiliary data source is possible by omitting the dictionary and explicitly
passing the AuxReader instance as `auxdata`. (PR #3749)
* The "AMBER" entry in setup.py's extra_requires has now been removed. Please
use `pip install ./package[extra_formats]` instead (PR #3810)
* `Universe.empty` emmits less warnings (PR #3814)
* adding element attribute to TXYZParser if all atom names are valid element symbols (PR #3826)
Deprecations
* Direct indexing of results in analysis.nucleicacids' NucPairDist
and WatsonCrickDist classes is deprecated and will be removed in 2.5.0.
Please use `results.pair_distances` instead (Issue #3744)
* Deprecated analysis.align.sequence_alignment() for removal in 3.0 (#3950)
* Add deprecation warning for `timestep` copying in DCDReader
(Issue #3889, PR #3888)
* Add deprecation warning for inclusive stop indexing in
MemoryReader.timeseries (PR #3894)
08/29/22 IAlibay, PicoCentauri, orbeckst, hmacdope, rmeli, miss77jun, rzhao271,
yuxuanzhuang, hsadia538, lilyminium
* 2.3.0
Fixes
* Fixes awk call in deploy.yaml tests for macos runners (Issue #3693)
* add a 0.5 for correct midpoints in hole analysis (Issue #3715)
* Fix reading error when PDB CONECT records are corrupt. (Issue #988)
* Fix writing unusable PDB CONECT records with index>100000. (Issue #988)
Enhancements
* Add a new `formalcharge` attribute for storing formal charges (PR #3755)
* Add the ability to read & write formal charges from PDB files (PR #3755)
* Change functions in `lib.distances` to accept AtomGroups as well as NumPy
arrays (CZI Performance track PR #3730)
* Add `norm` parameter to InterRDF, InterRDF_s to normalize as rdf,
number density or do not normalize at all. (Issue #3687)
* Additional logger.info output when per-frame analysis starts (PR #3710)
* Timestep has been converted to a Cython Extension type
(CZI Performance track, PR #3683)
* Refactor make_downshift_arrays with vector operation in numpy(PR #3724)
* Optimize topology serialization/construction by lazy-building _RA and _SR.
Changes
* To add additional optional packages for different file formats when
using `pip` use the new "extra_formats" extras_require target as in
`pip install ./package[extra_formats]` (Issue #3701, PR #3711)
* Minimum supported NumPy version is now 1.20 (1.21 for macosx-arm64)
as per NEP29 (PR #3737)
* Narrowed variable scope to reduce use of OpenMP `private` clause (PR #3706, PR
#3728)
Deprecations
* The extras_requires target "AMBER" for `pip install ./package[AMBER]`
will be removed in 2.4. Use "extra_formats". (Issue #3701, PR #3711)
* Deprecate `density` parameter in favor of `norm` in InterRDF_s
(Issue #3687)
06/01/22 IAlibay, BFedder, inomag, Agorfa, aya9aladdin, shudipto-amin, cbouy,
HenokB, umak1106, tamandeeps, Mrqeoqqt, megosato, AnirG, rishu235,
mtiberti, manishsaini6421, Sukeerti1, robotjellyzone, markvrma, alescoulie,
mjtadema, PicoCentauri, Atharva7K, aditi2906, orbeckst, yuxuanzhuang,
rsexton2, rafaelpap, richardjgowers, orioncohen
* 2.2.0
Fixes
* Fixed issue where Reader.copy() did not preserve optional arguments
and kwargs passed to the original class (Issue #3664, PR #3685)
* Iterating a SingleFrameReaderBase trajectory now rewinds the
reader, resetting any modified trajectory attributes to those
read from file. Fixes behavior that was previously undefined (Issue #3423)
* Fixed Reader.copy() did not preserve convert_units=False (see PR #3642)
* Fix the competition when generating offsets from multiple processes by
using a interprocess file lock. (Issue #1988, PR #3375)
* Fix the error when trying to load a corrupted offset file (Issue #3230
PR #3375)
* Fixed `OpenMMTopologyParser` not working when some or none of the elements
are present in the openmm topology (Issue #3317, PR #3511).
* Remove None from filenames in analysis.hole.HoleAnalysis (PR #3650)
* Fixed Numpy deprecation warnings about elementwise comparisons.
(Issue #3535, PR #3619)
* Fixed encore.covariance.covariance_matrix not working when providing
an external reference (Issue #3539, PR #3621)
* Fixed LinearDensity not working with grouping='residues' or 'segments'
(Issue #3571, PR #3572)
* LinearDensity now uses the definition of Avogadro's number from
MDAnalysis.units, which has more significant digits.
(Issue #3571, PR #3572)
* MOL2 can read files without providing optional columns:
subst_id, subst_name and charge. (Issue #3385, PR #3598)
* When converting an AtomGroup to an RDKit molecule (PR #3044):
- the atoms are now in the same order
- the output of `atom.GetMonomerInfo().GetName()` now follows the
guidelines for PDB files while the original name is still available
through `atom.GetProp("_MDAnalysis_name")`
- using `NoImplicit=False` should no longer throw a `SanitizationError`
* Contacts can now accept static AtomGroups as well as selection texts.
(Issue #2666, PR #3565)
* Fixed DumpReader triclinic box dimensions reading. (Issue #3386, PR #3403)
* Updated the badge in README of MDAnalysisTest to point to Github CI Actions
* Fixed FrameIteratorIndices doesn't rewind. (Issue #3416)
* Fixed BAT method Cartesian modifies input data. (Issue #3501)
Enhancements
* Add smarts_kwargs to allow greater flexiblity with smarts atom selection
(Issue #3469, PR #3470).
* Added DL_POLY Classic support. Now HISTORY files from DL_POLY Classic can be
* used. (Issue #3678)
* Wheels and dist now get automatically built and deployed on release
triggers (Issue #1300, PR #3680)
* Added equations for `center_of_mass` and `center_of_geometry`to
documentation (PR #3671)
* Added `center_of_charge` attribute (PR #3671)
* Added `frames` argument to AnalysisBase.run to allow analysis to run on
arbitrary list of frames (Issue #1985)
* LinearDensity now works with updating AtomGroups (Issue #2508, PR #3617)
* Link PMDA in documentation (PR #3652)
* Added MSD example where multiple replicates are combined(Issue #3578
PR #3633)
* PCA class now has an inverse-PCA function. The inverse transform can
also be extrapolated to certain non-PCA atoms. (PR #3596, Issue #2703)
* `DistanceMatrix` class in MDAnalysis.analysis.diffusionmap now also
accepts `AtomGroup` as a valid argument (Issue #3486, PR #3541)
* Improves the RDKitConverter's accuracy (PR #3044): AtomGroups containing
monatomic ion charges or edge cases with nitrogen, sulfur, phosphorus and
conjugated systems should now have correctly assigned bond orders and
charges.
* New optimized AnalysisBase derived Watson-Crick distance analysis class in
analysis.nucleicacids
* CRD extended format can now be explicitly requested with the `extended`
keyword (Issue #3605)
* Added benchmarks in lib.distances for enhancement (Issue #3205, PR #3641)
Changes
* smarts selection's `maxMatches` now defaults to max(1000, n_atoms*10)
instead of the standard RDKit default of 1000 (Issue #3469, PR #3470).
* `fasteners` package is now a core dependency (Issues #3230, #1988, PR #3375)
* The minimm Python, NumPy, and SciPy versions (following NEP29) are now 3.8,
1.19, and 1.5.0; GSD now also has a minimum version of 1.9.3 and networkx
has minimum version 2.0 (Issue #3665)
* LinearDensity now saves the histogram bin edges for easier plotting as
"hist_bin_edges" for each dimension xyz in the results dictionary.
(Issue #2508, PR #3617)
* ITPParser no longer adds an angle for water molecules that have the SETTLE
constraint applied to them. This mirrors the way the constraint is handled
in AMBER. (Issue #2417, PR #3564)
Deprecations
* The old results attributes for LinearDensity are now deprecated and will be
removed in version 3.0.0. (Issue #2508, PR #3617)
- "pos" is now "mass_density",
- "char" is now "charge_density"
- "std" entries are now "stddev"
03/06/22 IAlibay, melomcr, mdd31, ianmkenney, richardjgowers, hmacdope,
orbeckst, scal444, p-j-smith, edisj, Atharva7K, ojeda-e, jbarnoud,
yangtcai
* 2.1.0
Fixes
* Use uint64_t loop counters in C level distance functions to avoid overflow
for large arrays (Issue #3512, PR #3513).
* Prevents attempts to close an already closed NamedStream (Issue #3386)
* Added missing exe_err import in hole.py. Fixed a bug in HoleAnalysis where
kwarg was passed instead of object to generate path (Issue #3493, PR #3496)
* Fixes creation of vmd surfaces in hole2 when using non-contiguous frames
with start/stop/step (Issue #3476)
* Allow empty strings to be passed to HydrogenBondAnalysis (Issue #3453).
* Avoid integer overflow in NSGrid with too many grids (Issue #3183)
* Fix ITPParser charge reading (Issue #3419).
* TRRWriter preserves timestep data (Issue #3350).
* Fixed Universe creation from a custom object which only provided a topology,
previously raised a TypeError. (Issue #3443)
* Documentation fixes (Issues #3224, #2667)
* Fixed string attributes (e.g. resname, segid) not working on Residues and Segments
created using add_Residue and add_Segment (Issue #3437)
Enhancements
* Added dielectric analysis module (PR #2118)
* Supports TPR files produced by Gromacs 2022 (PR #3514)
* Add support for millisecond and microsecond units (Issue #3473, PR #3491)
* Adds :meth:`parse_n_atoms` to H5MD reader (Issue #3465)
* Add option for custom compiler flags for C/C++ on build and remove march
option from setup.cfg (Issue #3428, PR #3429).
* Added R/S Chirality support to RDKit parsed molecules
* Added MDAnalysis.lib.distances.minimize_vectors
Changes
* `packaging` is now a core dependency for MDAnalysis
* Indexing a group (AtomGroup, ResidueGroup, or SegmentGroup) with None
raises a TypeError (Issue #3092, PR #3517)
* TRZReader now defaults to a `dt` of 1.0 (instead of 0.0 previously) when
it cannot be obtained from file (Issue #3257)
* Dropped python 3.6 support and raised minimum numpy version to 1.18.0
(NEP29)
Deprecations
* Deprecated the 'pbc' kwarg for various Group methods, the 'wrap' kwarg
should be used instead. (Issue #1760)
08/21/21 tylerjereddy, richardjgowers, IAlibay, hmacdope, orbeckst, cbouy,
lilyminium, daveminh, jbarnoud, yuxuanzhuang, VOD555, ianmkenney,
calcraven,xiki-tempula, mieczyslaw, manuel.nuno.melo, PicoCentauri,
hanatok, rmeli, aditya-kamath, tirkarthi, LeonardoBarneschi, hejamu,
biogen98, orioncohen, z3y50n, hp115, ojeda-e, thadanipaarth, HenryKobin,
1ut, sulays, ahy3nz, fiszczyp, fiona-naughton
* 2.0.0
Fixes
* Added an `rdkit_kwargs` parameter to pass arguments to the RDKitConverter
from the `select_atoms` method (Issue #3319, PR #3324)
* Fixes AtomGroup.unique, ResidueGroup.unique, SegmentGroup.unique not
sorting the output atoms. The returned group is now always a copy.
(Issue #3364, Issue #2977, PR #3368)
* Only GRO files with unit cells defined with 3 or 9 entries are now
supported (Issue #3305)
* Ensures that reading and writing of GRO files with missing unit cell
information is consistently treated (Issue #3305)
* Fixed sometimes wrong sorting of atoms into fragments when unwrapping
(Issue #3352, PR #3353)
* Fixed missing array flatten preventing PCA from running when mean positions
provided and bugs causing tests to incorrectly pass (Issue #2728, PR #3296)
* DL_POLY HISTORY file may contain unit cell dimensions even if there are
no periodic boundary conditions (imcom=0) (Issue #3314, PR #3312).
* New RDKitConverter cache system to fix issue #2958 (PR #2942)
* Fixed OpenMM converter documentation not showing up in the Converters
section (Issue #3262, PR #2882)
* WaterBridgeAnalysis double counts the water (Issue #3119, PR #3120)
* NCDFReader now defaults to a dt value of 1.0 ps when it cannot estimate
it from the first two frames of the file (Issue #3166)
* Get chi1_selection to match canonical gamma atoms (Issue #2044)
* ITPParser now accepts relative paths (Issue #3037, PR #3108)
* Fixed issue with unassigned 'GAP' variable in fasta2algin function when
resids are provided in input (Issue #3124)
* Improve diffusionmap coverage (Issue #3208)
* Removed deprecated parameters `n_jobs` and `precompute_distances` of
sklearn.cluster.KMeans (Issue #2986)
* Helix_analysis coverage raised to 100% and `from __future__ import`
removed (Issue #3209)
* Fixed 'sphzone', 'sphlayer', 'cyzone', and 'cylayer' to return empty if the
zone/layer is empty, consistent with 'around' (Issue #2915)
* A Universe created from an ROMol with no atoms returns now a Universe
with 0 atoms (Issue #3142)
* PDBParser will check for the presence of the chainID attribute of an
atom group and use these values instead of just using the end of segid.
If no chainID attribute is present, then a default value will be
provided. If the chainID for an atom is invalid (longer than one character,
not alpha-numeric, blank) it will be replaced with a default. (Issue #3144)
* ValueError raised when empty atomgroup is given to DensityAnalysis
without a user defined grid. UserWarning displayed when user defined
grid is provided. (Issue #3055)
* Fixed import of several `__all__` lists (PR #3013)
* atommethods (_get_prev/next_residues_by_resid) returns empty residue group
when given empty residue group (Issue #3089)
* MOL2 files without bonds can now be read and written (Issue #3057)
* Write `CONECT` record only once in multi-model PDB files (Issue #3018)
* Add '.nc' as a recognised extension for the NCDFWriter (Issue #3030)
* PDB parser now assigns empty records for partially missing/invalid elements
instead of not assigning the elements attribute at all (Issue #2422)
* PDB writer now uses elements attribute instead of guessing elements from
atom name (Issue #2423)
* Cleanup and parametrization of test_atomgroup.py (Issue #2995)
* The methods provided by topology attributes now appear in the
documentation (Issue #1845)
* AtomGroup.center now works correctly for compounds + unwrapping
(Issue #2984)
* Avoid using deprecated array indexing in topology attributes
(Issue #2990, PR #2991)
* ParmedParser no longer guesses elements if they are not recognised, instead
empty strings are assigned (Issue #2933)
* Instead of using ATOM for both ATOM and HETATM, HETATM record type
keyword is properly written out by PDB writer (Issue #1753, PR #2880).
* Change referenced PDB standard version to 3.3 (Issue #2906).
* Fixed reading in masses and charges from a hoomdxml file
(Issue #2888, PR #2889)
* Bond attribute is no longer set if PDB file contains no CONECT records
(Issue #2832)
* ResidueAttrs now have Atom as a target class by default; ICodes and
Molnums now have default target_classes (#2803, PR #2805)
* Selections on emtpy AtomGroups now return an empty AtomGroup instead of an
error (Issue #2765)
* TOPParser no longer guesses elements when missing atomic number records
(Issues #2449, #2651)
* Testsuite does not any more matplotlib.use('agg') (#2191)
* In ChainReader, read_frame does not trigger change of iterating position.
(Issue #2723, PR #2815)
* TRZReader now checks `n_atoms` on reading. (Issue #2817, PR #2820)
* TRZWriter now writes `n_atoms` to the file. (Issue #2817, PR #2820)
* rdf.InterRDF_s density keyword documented and now gives correct results for
density=True; the keyword was available since 0.19.0 but with incorrect
semantics and not documented and did not produce correct results (Issue
#2811, PR #2812)
* In hydrogenbonds.hbond_analysis.HydrogenbondAnalysis an AttributeError
was thrown when finding D-H pairs via the topology if `hydrogens` was an
empty AtomGroup (Issue #2848)
* Fixed performance regression on select_atoms for string selections (#2751)
* Fixed the DMSParser, allowing the creation of multiple segids sharing
residues with identical resids (Issue #1387, PR #2872)
* H5MD files are now picklable with H5PYPicklable (Issue #2890, PR #2894)
* Fixed Janin analysis residue filtering (include CYSH) (Issue #2898)
* libmdaxdr and libdcd classes in their last frame can now be pickled
(Issue #2878, PR #2911)
* AtomGroup now are pickled/unpickled without looking for its anchored
Universe (PR #2893)
* ensure that unistd.h is included on macOS when compiling ENCORE's spe.c
(Issue #2934)
* Fix tests for analysis.bat that could fail when run in parallel and that
would create a test artifact (Issue #2979, PR #2981)
* Fix syntax warning over comparison of literals using is (Issue #3066)
* new `Results` class now can be pickled/unpickled. (PR #3309)
Enhancements
* LAMMPSDumpReader can now read coordinates in all the different LAMMPS
coordinate conventions. Both LAMMPSDumpReader and LAMMPSDumpParser are no
longer hardcoded to a set column layout (Issue #3358, PR #3360).
* Add a ``sort`` keyword to AtomGroup.select_atoms for ordered selections
(Issue #3364, PR #3368)
* Adds AtomGroup.asunique, ResidueGroup.asunique, SegmentGroup.asunique
with optional sorting. The returned group may or may not be a copy
if it is already unique and/or sorted. (Issue #3364, PR #3368)
* Adds ``issorted`` property (PR #3368)
* MOL2 parser populates elements attribute from SYBYL atom types (Issue #3062)
* Added guessers for aromaticity and Gasteiger partial charges (Issue #2468,
PR #2926)
* Added `Results` class for storing analysis results (#3115, PR #3233)
* Added intra_bonds, intra_angles, intra_dihedrals etc. to return only
the connections involving atoms within the AtomGroup, instead of
including atoms outside the AtomGroup (Issue #1264, #2821, PR #3200)
* Added del_TopologyAttr function (PR #3069)
* Switch GNMAnalysis to AnalysisBase (Issue #3243)
* Adds python 3.9 support (Issue #2974, PR #3027, #3245)
* Added an MDAnalysis shields.io badge to the README (Issue #3227, PR #3229)
* Added sort method to the atomgroup (Issue #2976, PR #3188)
* ITPParser now reads [ atomtypes ] sections in ITP files, used for charges
and masses not defined in the [ atoms ] sections
* Add `set_dimensions` transformation class for setting constant
box dimensions for all timesteps in trajectory (Issue #2691)
* Added a ValueError raised when not given a gridcenter while
providing grid dimensions to DensityAnalysis, also added
check for NaN in the input (Issue #3148, PR #3154)
* Read TPR files from Gromacs 2021 (Issue #3180)
* Adds preliminary support for the ppc64le platform with minimal
dependencies (Issue #3127, PR #3149)
* Caches can now undergo central validation at the Universe level, opening
the door to more useful caching. Already applied to fragment caching
(Issue #2376, PR #3135)
* Code for operations on compounds refactored, centralized and optimized for
performance (Issue #3000, PR #3005)
* Added automatic selection class generation for TopologyAttrs,
FloatRangeSelection, and BoolSelection (Issues #2925, #2875; PR #2927)
* Added 'to' operator, negatives, scientific notation, and arbitrary
whitespace for ranges (Issue #3054, PR #2927)
* Added `atol` and `rtol` keywords for float comparison (PR #2927)
* Improved performance of the ParmEd converter (Issue #3028, PR #3029)
* Improved analysis class docstrings, and added missing classes to the
`__all__` list (PR #2998)
* The PDB writer gives more control over how to write the atom ids
(Issue #1072, PR #2886)
* Preliminary support for the Linux ARM64 platform with minimal
dependencies (PR #2956)
* Refactored analysis.helanal into analysis.helix_analysis
(Issue #2452, PR #2622)
* Improved MSD code to accept `AtomGroup` and reject `UpdatingAtomGroup`
and improved docs (Issue #2784)
* Added the RDKitParser which creates a `core.topology.Topology` object from
an `rdkit.Chem.rdchem.Mol` object, and the RDKitReader to read coordinates
from RDKit conformers (Issue #2468, PR #2707)
* Added the `Aromaticities` topology attribute, and the `aromatic` selection
token (Issue #2468, PR #2707)
* Added the `from_smiles` classmethod to the Universe (Issue #2468, PR #2707)
* Added computation of Mean Squared Displacements (#2438, PR #2619)
* Improved performances when parsing TPR files (PR #2804)
* Added converter between Cartesian and Bond-Angle-Torsion coordinates (PR #2668)
* Added Hydrogen Bond Lifetime via existing autocorrelation features (PR #2791)
* Added Hydrogen Bond Lifetime keyword "between" (PR #2791)
* Added lib.pickle_file_io module for pickling file handlers. (PR #2723)
* Added pickle function to `Universe` and all Readers (without transformation)
(PR #2723)
* Dead code removed from the TPR parser and increased test coverage (PR #2840)
* TPR parser exposes the elements topology attribute (PR #2858, see Issue #2553)
* Added `H5MDReader` to coordinate readers (Issue #762, PR #2787)
* Added new kwargs `select_remove` and `select_protein` to
analysis.dihedrals.Janin analysis to give user more fine grained control
over selections (PR #2899)
* Improved performance of select_atoms on strings (e.g. name, type, resname) and
'protein' selection (#2751 PR #2755)
* Added an RDKit converter that works for any input with all hydrogens
explicit in the topology (Issue #2468, PR #2775)
* Added `TransformationBase`. Implemented threadlimit and add an attribute for
checking if it can be used in parallel analysis. (Issue #2996, PR #2950)
* Improved performance of H5MDReader by using h5py.Dataset.read_direct()
to transfer data from HDF5 file into timestep. (PR #3293)
* Added `H5MDWriter` to coordinate writers (Issue #2866, PR #3189)
Changes
* NCDFWriter now allows for the writing of `scale_factor` attributes for
trajectory variables. Default writing is no `scale_factor` except for
velocities where it is 20.455 (Issue #2327)
* Update the API for coordinate writers to reflect practice:
start. stop, step are not required anymore (#3392)
* Aliased bfactors to tempfactors (Issue #1901, PR#3345)
* The RDKitParser now raises an error if only part of the atoms have metadata
on residues (Issue #3318, PR #3325)
* `analysis.pca.PCA` class now stores `p_components`, `variance`,
`cumulated_variance` and `mean_atoms` using the
`analysis.base.Results` class (Issues #3275 #3285)
* Timestep now stores information in 'C' memory layout instead of
the previous 'F' default (PR #1738)
* `analysis.rdf.InterRDF` and `analysis.rdf.InterRDF_s` now store
their result attributes using the `analysis.base.Results` class
(Issue #3276, #3261)
* Adds a `force` parameter to the RDKitConverter to allow conversion of
molecules with no hydrogen atom, and a `set_converter_cache_size` function
to change how many items are retained in the cache (PR #2942)
* `hydrogenbonds.WaterBridgeAnalysis.generate_table()` now returns the table; as previously,
it also generates the `table` attribute but the attribute will be removed in 3.0.0.
* `hydrogenbonds.WaterBridgeAnalysis` now stores data using the
`hydrogenbonds.WaterBridgeAnalysis.results` attribute
(Issue #3261, Issue #3270)
* Introduces a new converter API with all converters in MDAnalysis.converters
(Issue #2790, PR #2882)
* The ParmEd classes were moved to the `converters` module (PR #2882)
* The `convert_to` method of the AtomGroup is now case-insensitive and
passes keyword arguments to the underlying converter. It can also be used
as `convert_to.lowercase_pkg_name()` for tab-completion (PR #2882)
* `analysis.polymer.PersistenceLength` class now stores `lb`,
`lp` and `fit` using the `analysis.base.Results` class
(Issues #3289, #3291)
* `analysis.hole2.HoleAnalysis` now stores ``sphpdbs``, ``outfiles``
and ``profiles`` in the `analysis.base.Results` class (Issues #3261, #3269)
* `analysis.diffusionmap.DistanceMatrix` class now stores `dist_matrix`
using the `analysis.base.Results` class (Issues #3288, #3290)
* `helix_analysis.HELANAL` now uses the `analysis.base.Results` class to
store results attributes (Issue #3261, #3267)
* `analysis.align.AlignTraj` and `analysis.align.AverageStructure` now store
their result attributes using the `analysis.base.Results` class
(Issues #3278 and #3261)
* `analysis.hydrogenbonds.hbond_analysis.HydrogenBondAnalyis` now stores
`hbonds` data using the `analysis.base.Results class (Issues #3271, #3261)
* `analysis.rms.RMSD` and `analysis.rms.RMSF` classes now store `rmsd` and
`rmsf` data using the `analysis.base.Results` class (Issues #3274 #3261)
* `analysis.dihedrals` classes now store angle data using the
`results.angles` attribute (Issue #3261)
* `msd.EinsteinMSD` now uses the `analysis.base.Results` class to store
analysis results (Issue #3261)
* `bat.BAT` now uses the `analysis.base.Results` class to store the `bat`
results attribute (Issue #3261, #3272)
* `contacts.Contacts` now stores data using the `Contacts.results.timeseries`
attribute. `Contacts.timeseries` is now deprecated (Issue #3261)
* `DensityAnalysis` now uses the `results.density` attribute for storing
data. The `DensityAnalysis.density` attribute is now deprecated
(Issue #3261)
* Deprecated analysis.hbonds.hbond_analysis has been removed in favour of
analysis.hydrogenbonds.hbond_analysis (Issues #2739, #2746)
* `GNMAnalysis`, `LinearDensity`, `PersistenceLength` and
`AnalysisFromFunction` use the `results` attribute.
* Fixed inaccurate docstring inside the RMSD class (Issue #2796, PR #3134)
* TPRParser now loads TPR files with `tpr_resid_from_one=True` by default,
which starts TPR resid indexing from 1 (instead of 0 as in 1.x) (Issue #2364, PR #3152)
* Introduces encore specific C compiler arguments to allow for lowering of
optimisations on non-x86 platforms (Issue #1389, PR #3149)
* Continuous integration uses mamba rather than conda to install the
dependencies (PR #2983)
* removes deprecated `as_Universe` function from MDAnalysis.core.universe,
as a result :class:`MDAnalysis.analysis.leaflet.LeafletFinder` now only
accepts Universes for its `universe` argument (Issue #2920)
* deprecated Python escape sequence usage has been fixed in our test suite,
and the test suite will now raise an error for this usage of `\` (PR #2885)
* deprecated NumPy type aliases have been replaced with their actual types
(see upstream NumPy PR 14882), and our pytest configuration will raise an
error for any violation when testing with development NumPy builds
(`1.20.0`)
* Changes development status from Beta to Mature (Issue #2773)
* Removes deprecated MDAnalysis.analysis.hole, please use
MDAnalysis.analysis.hole2.hole instead (Issue #2739)
* Replaces use of mock in favour of unittest.mock (Issue #2777)
* Removes support for passing `atoms` to XYZWriter. (Issue #2739, PR #2754)
* Removes; deprecated support for using Writer.write(Timestep), deprecated
Writer.write_next_timestep, use write() instead. (Issue #2739)
* Removes deprecated density_from_Universe, density_from_PDB, Bfactor2RMSF,
and notwithin_coordinates_factory from MDAnalysis.analysis.density
(Issue #2739)
* Removes deprecated ProgressMeter (Issue #2739)
* Removes deprecated MDAnalysis.units.N_Avogadro (PR #2737)
* Dropped Python 2 support
* Set Python 3.6 as the minimum supported version (Issue #2541)
* Changes the minimal NumPy version to 1.16.0 (Issue #2827, PR #2831)
* Sets the minimal RDKit version for CI to 2020.03.1 (Issue #2827, PR #2831)
* Removes deprecated waterdynamics.HydrogenBondLifetimes (PR #2842)
* Make NeighborSearch return empty atomgroup, residue, segments instead of list (Issue #2892, PR #2907)
* Updated Universe creation function signatures to named arguments (Issue #2921)
* The transformation was changed from a function/closure to a class with
`__call__` (Issue #2860, PR #2859)
* deprecated ``analysis.helanal`` module has been removed in favour of
``analysis.helix_analysis`` (PR #2929)
* Move water bridge analysis from hbonds to hydrogenbonds (Issue #2739 PR #2913)
* `threadpoolctl` is required for installation (Issue #2860)
* Added OpenMM coordinate and topology converters (Issue #2863, PR #2917)
* Writing a TRZ file with no box information now raises a warning (Issue #3307)
Deprecations
* Deprecated the `bfactors` topology attribute in favour of `tempfactors`.
In 2.0 `bfactors` is simply an alias of `tempfactors`; in 3.0 `bfactors`
will be removed. (Issue #1901, PR #3345)
* The attributes `p_components`, `variance`, `cumulated_variance` and
`mean_atoms` in `analysis.pca.PCA` are now deprecated in favour of
`results.p_components`, `results.variance`, `results.cumulated_variance`
and `results.mean_atoms`. They will be removed in 3.0.0
(Issues #3275 #3285)
* The `bins`, `edges`, `count`, `rdf` attributes for `analysis.rdf.InterRDF`
and `analysis.rdf.InterRDF_s`, and `cdf` attributes for
`analysis.rdf.InterRDF_s` are now deprecated in favour of `results.bins`,
`results.edges`, `results.count`, `results.rdf` and `results.cdf`
(Issue #3276, #3261)
* The `hydrogenbonds.WaterBridgeAnalysis.table` attribute is now deprecated and will
be removed in 3.0.0.
* The `hydrogenbonds.WaterBridgeAnalysis.network` attribute is now deprecated
in favour of `hydrogenbonds.WaterBridgeAnalysis.results.network`. It will be
removed in 3.0.0 (Issue #3261, Issue #3270)
* The `analysis.Contacts.timeseries` attribute is now deprecated in favour of
`analysis.Contacts.results.timeseries`. It will be removed in 3.0.0
(Issue #3261)
* In 3.0.0 the ParmEd classes will only be accessible from the
`MDAnalysis.converters` module.
* The `analysis.polymer.PersistenceLength.lb`,
`analysis.polymer.PersistenceLength.lp` and
`analysis.polymer.PersistenceLength.fit` attributes are now deprecated in
favour of `analysis.polymer.PersistenceLength.results.lb`,
`analysis.polymer.PersistenceLength.results.lp` and
`analysis.polymer.PersistenceLength.results.fit` respectively. They will
be removed in 3.0.0 (Issues #3289, #3291)
* The ``sphpdbs``, ``outfiles`` and ``profiles`` attributes of
`analysis.hole2.HoleAnalysis` are now deprecated in favour of
``results.sphpdbs``, ``results.outfiles`` and
``results.profiles`` (Issues #3261, #3269)
* The `analysis.diffusionmap.DistanceMatrix.dist_matrix` is now deprecated in
favour of `analysis.diffusionmap.DistanceMatrix.results.dist_matrix`.
It will be removed in 3.0.0 (Issues #3288, #3290)
* The `analysis.align.AlignTraj.rmsd` attribute is now deprecated in
favour of `analysis.align.AlignTraj.results.rmsd` (Issue #3278, #3261)
* The `universe`, `positions`, and `rmsd` attributes of
`analysis.align.AverageStructure` are now deprecated in favour of
`results.universe`, `results.positions`, and `results.rmsd`
(Issue #3278, #3261)
* The `hbonds` attribute of
`hydrogenbonds.hbond_analysis.HydrogenBondAnalysis.hbonds` is now
deprecated in favour of `results.hbonds` (Issues #3271, #3261)
* The `analysis.rms.RMSD.rmsd` and `analysis.rms.RMSF.rmsf` attributes are
now deprecated in favour of `analysis.rms.RMSD.results.rmsd` and
`analysis.rms.RMSF.results.rmsf` respectively. They will be removed in
3.0.0 (Issues #3274, #3261)
* The `angles` attribute for the `dihedrals` classes (Dihedral,
Ramachandran, Janin) is now deprecated in favour of `results.angles`. It
will be removed in 3.0.0 (Issue #3261)
* The `analysis.Contacts.timeseries` attribute is now deprecated in favour of
`analysis.Contacts.results.timeseries`. It will be removed in 3.0.0
(Issue #3261)
* The `density` attribute of `analysis.density.DensityAnalysis` is now
deprecated in favour of `results.density`. It will be removed in 3.0.0
(Issue #3261)
* The analysis.hbonds.hbond_autocorrel code has been moved to
analysis.hydrogenbonds.hbond_autocorrel and will be removed
from analysis.hbonds in 3.0.0 (PR #3258)
* In 2.1.0 the TRZReader will default to a dt of 1.0 ps when failing to
read it from the input TRZ trajectory.
05/01/21 IAlibay
* 1.1.1
Fixes
* Remove absolute paths from package upload to pypi.
04/28/21 richardjgowers, IAlibay, tylerjereddy, xiki-tempula, lilyminium,
zemanj, PicoCentauri
* 1.1.0
Fixes
* Removes use of absolute paths in setup.py to avoid Windows installation
failures (Issue #3129)
* Adds test for crashes caused by small box NSGrid searches (Issue #2670)
* Replaces decreated NumPy type aliases and fixes NEP 34 explicit ragged
array warnings (PR #3139, backports PRs #2845 and #2834)
* Fixed several issues with NSGrid and triclinic boxes not finding some pairs.
(Issues #2229 #2345 #2919, PR #2937).
* Removed deprecation warning from numpy in hbond_autocorrel
(Issue #2987 PR #3242)
* Fixed bug in exclusion matrix of hbond_autocorrel (PR #3242)
Changes
* Maximum pinned versions in setup.py removed for python 3.6+ (PR #3139)
Deprecations
* ParmEdConverter no longer accepts Timestep objects at all
(Issue #3031, PR #3172)
* NCDFWriter `scale_factor` writing will change in version 2.0 to
better match AMBER outputs (Issue #2327)
* Deprecated using the last letter of the segid as the
chainID when writing PDB files (Issue #3144)
* Deprecated tempfactors and bfactors being separate
TopologyAttrs, with a warning (PR #3161)
* hbonds.WaterBridgeAnalysis will be removed in 2.0.0 and
replaced with hydrogenbonds.WaterBridgeAnalysis (#3111)
* TPRParser indexing resids from 0 by default is deprecated.
From 2.0 TPRParser will index resids from 1 by default.
Enhancements
* Added `get_connections` method to get bonds, angles, dihedrals, etc.
with or without atoms outside the group (Issues #1264, #2821, PR #3160)
* Added `tpr_resid_from_one` keyword to select whether TPRParser
indexes resids from 0 or 1 (Issue #2364, PR #3153)
01/17/21 richardjgowers, IAlibay, orbeckst, tylerjereddy, jbarnoud,
yuxuanzhuang, lilyminium, VOD555, p-j-smith, bieniekmateusz,
calcraven, ianmkenney, rcrehuet, manuel.nuno.melo, hanatok
* 1.0.1
Fixes
* Due to issues with the reliability/accuracy of `nsgrid`, this method is
currently not recommended for use. It has also been removed as an option
from lib.capped_distance and lib.self_capped_distance. Please use PKDTree
instead (Issue #2930)
* Development status changed from beta to mature (Issue #2773)
* pip installation only requests Python 2.7-compatible packages (#2736)
* Testsuite does not use any more matplotlib.use('agg') (#2191)
* The methods provided by topology attributes now appear in the
documentation (Issue #1845)
* AtomGroup.center now works correctly for compounds + unwrapping
(Issue #2984)
* In ChainReader, read_frame does not trigger change of iterating position.
(Issue #2723, PR #2815)
* empty_atomgroup.select_atoms('name *') now returns an empty