Change Log¶
GSD releases follow semantic versioning.
v2.x¶
v2.0.0 (2020-02-03)¶
Note
This release introduces a new file storage format.
GSD >= 2.0 can read and write to files created by GSD 1.x.
Files created or upgraded by GSD >= 2.0 can not be opened by GSD < 1.x.
Added
The
upgrade
method converts a GSD 1.0 file to a GSD 2.0 file in place.Support arbitrarily long chunk names (only in GSD 2.0 files).
Changed
gsd.fl.open
acceptsNone
forapplication
,schema
, andschema_version
when opening files for reading.Improve read latency when accessing files with thousands of chunk names in a frame (only for GSD 2.0 files).
Buffer small writes to improve write performance.
Improve performance and reduce memory usage in read/write modes (‘rb+’, ‘wb+’ and (‘xb+’).
C API: functions return error codes from the
gsd_error
enum. v2.x integer error codes differ from v1.x, use the enum to check. For example:if (retval == GSD_ERROR_IO)
.Python, Cython, and C code must follow strict style guidelines.
Removed
gsd.fl.create
- usegsd.fl.open
.gsd.hoomd.create
- usegsd.hoomd.open
.GSDFile
v1.0 compatibility mode - usegsd.fl.open
.hoomdxml2gsd.py
.
Fixed
Allow more than 127 data chunk names in a single GSD file.
v1.x¶
v1.10.0 (2019-11-26)¶
Improve performance of first frame write.
Allow pickling of GSD file handles opened in read only mode.
Removed Cython-generated code from repository.
fl.pyx
will be cythonized during installation.
v1.9.3 (2019-10-04)¶
Fixed preprocessor directive affecting Windows builds using setup.py.
Documentation updates
v1.9.2 (2019-10-01)¶
Support chunk sizes larger than 2GiB
v1.9.1 (2019-09-23)¶
Support writing chunks wider than 255 from Python.
v1.9.0 (2019-09-18)¶
File API: Add
find_matching_chunk_names()
HOOMD
schema 1.4: Add user defined logged data.HOOMD
schema 1.4: Addtype_shapes
specification.pytest >= 3.9.0 is required to run unit tests.
gsd.fl.open
andgsd.hoomd.open
accept objects implementingos.PathLike
.Report an error when attempting to write a chunk that fails to allocate a name.
Reduce virtual memory usage in
rb
andwb
open modes.Additional checks for corrupt GSD files on open.
Synchronize after expanding file index.
v1.8.1 (2019-08-19)¶
Correctly raise
IndexError
when attempting to read frames before the first frame.Raise
RuntimeError
when importinggsd
in unsupported Python versions.
v1.8.0 (2019-08-05)¶
Slicing a HOOMDTrajectory object returns a view that can be used to directly select frames from a subset or sliced again.
raise
IndexError
when attempting to read frames before the first frame.Dropped support for Python 2.
v1.7.0 (2019-04-30)¶
Add
hpmc/sphere/orientable
to HOOMD schema.HOOMD schema 1.3
v1.6.2 (2019-04-16)¶
PyPI binary wheels now support numpy>=1.9.3,<2
v1.6.1 (2019-03-05)¶
Documentation updates
v1.6.0 (2018-12-20)¶
The length of sliced HOOMDTrajectory objects can be determined with the built-in
len()
function.
v1.5.5 (2018-11-28)¶
Silence numpy deprecation warnings
v1.5.4 (2018-10-04)¶
Add
pyproject.toml
file that definesnumpy
as a proper build dependency (requires pip >= 10)Reorganize documentation
v1.5.3 (2018-05-22)¶
Revert
setup.py
changes in v1.5.2 - these do not work in most circumstances.Include
sys/stat.h
on all architectures.
v1.5.2 (2018-04-04)¶
Close file handle on errors in
gsd_open
.Always close file handle in
gsd_close
.setup.py
now correctly pulls in the numpy dependency.
v1.5.1 (2018-02-26)¶
Documentation fixes.
v1.5.0 (2018-01-18)¶
Read and write HPMC shape state data.
v1.4.0 (2017-12-04)¶
Support reading and writing chunks with 0 length. No schema changes are necessary to support this.
v1.3.0 (2017-11-17)¶
Document
state
entries in the HOOMD schema.No changes to the gsd format or reader code in v1.3.
v1.2.0 (2017-02-21)¶
Add
gsd.hoomd.open()
method which can create and open hoomd gsd files.Add
gsd.fl.open()
method which can create and open gsd files.The previous create/class
GSDFile
instantiation is still supported for backward compatibility.
v1.1.0 (2016-10-04)¶
Add special pairs section pairs/ to HOOMD schema.
HOOMD schema version is now 1.1.
v1.0.1 (2016-06-15)¶
Fix compile error on more strict POSIX systems.
v1.0.0 (2016-05-24)¶
Initial release.