Changelog
### 3.3.0
```
^^^^^^^^^^^^^^^^^^
*Added:*
* Support numpy 2.0
(`367 <https://github.com/glotzerlab/gsd/pull/367>`__).
*Changed:*
* Navigate the documentation with arrow keys
(`365 <https://github.com/glotzerlab/gsd/pull/365>`__).
* Add button to copy code snippets from the documentation
(`365 <https://github.com/glotzerlab/gsd/pull/365>`__).
* Remove singularity reference from the documentation
(`365 <https://github.com/glotzerlab/gsd/pull/365>`__).
*Removed:*
* Support for Python 3.8
(`367 <https://github.com/glotzerlab/gsd/pull/367>`__).
```
### 3.2.1
```
^^^^^^^^^^^^^^^^^^
*Fixed:*
* Write all pending index entries to the file when ``gsd_flush()`` is called after
``gsd_write_chunk()`` and before ``gsd_end_frame()``
(`319 <https://github.com/glotzerlab/gsd/pull/319>`__).
* Readthedocs builds with pandas 2.2.0
(`322 <https://github.com/glotzerlab/gsd/pull/322>`__).
* Import without seg fault when built with CMake on macOS
(`323 <https://github.com/glotzerlab/gsd/pull/323>`__).
* Internal cached data remains valid when users modify frames obtained by indexing trajectories
(`324 <https://github.com/glotzerlab/gsd/pull/324>`__).
*Changed:*
* Provide support via GitHub discussions
(`308 <https://github.com/glotzerlab/gsd/issues/308>`__).
* Use ruff
(`317 <https://github.com/glotzerlab/gsd/pull/317>`__).
* Perform fewer implicit flushes when using the ``gsd.hoomd`` python API
(`325 <https://github.com/glotzerlab/gsd/pull/325>`__).
```
### 3.2.0
```
^^^^^^^^^^^^^^^^^^
*Added:*
* Support Python 3.12
(`283 <https://github.com/glotzerlab/gsd/issues/283>`__).
```
### 3.1.1
```
^^^^^^^^^^^^^^^^^^
*Fixed:*
* Raise a ``FileExistsError`` when opening a file that already exists with ``mode = 'x'``
(`270 <https://github.com/glotzerlab/gsd/issues/270>`__).
```
### 3.1.0
```
^^^^^^^^^^^^^^^^^^
*Fixed:*
* ``hoomd.read_log`` no longer triggers a numpy deprecation warning
(`267 <https://github.com/glotzerlab/gsd/pull/267>`__).
*Added:*
* ``HOOMDTrajectory.flush`` - flush buffered writes on an open ``HOOMDTrajectory``
(`266 <https://github.com/glotzerlab/gsd/pull/266>`__).
```
### 3.0.1
```
^^^^^^^^^^^^^^^^^^
*Fixed:*
* Prevent ``ValueError: signal only works in main thread of the main interpreter`` when importing
gsd in a non-main thread (`257 <https://github.com/glotzerlab/gsd/issues/257>`__).
```
### 3.0.0
```
^^^^^^^^^^^^^^^^^^
*Added:*
* ``gsd.version.version`` - version string identifier. PEP8 compliant name replaces ``__version__``.
* ``GSDFile.flush`` - flush write buffers (C API ``gsd_flush``)
(`237 <https://github.com/glotzerlab/gsd/pull/237>`__).
* ``GSDFile.maximum_write_buffer_size`` - get/set the write buffer size
(C API ``gsd_get_maximum_write_buffer_size`` / ``gsd_set_maximum_write_buffer_size``)
(`237 <https://github.com/glotzerlab/gsd/pull/237>`__).
* ``GSDFile.index_entries_to_buffer`` - get/set the write buffer size
(C API ``index_entries_to_buffer`` / ``index_entries_to_buffer``)
(`237 <https://github.com/glotzerlab/gsd/pull/237>`__).
* On importing `gsd`, install a ``SIGTERM`` handler that calls ``sys.exit(1)``
(`237 <https://github.com/glotzerlab/gsd/pull/237>`__).
*Changed:*
* ``write_chunk`` buffers writes across frames to increase performance
(`237 <https://github.com/glotzerlab/gsd/pull/237>`__).
* Use *Doxygen* and *breathe* to generate C API documentation in Sphinx
(`237 <https://github.com/glotzerlab/gsd/pull/237>`__).
*Removed:*
* ``gsd.__version__`` - use ``gsd.version.version``.
* ``gsd.hoomd.Snapshot`` - use ``gsd.hoomd.Frame``
(`249 <https://github.com/glotzerlab/gsd/pull/249>`__).
* ``gsd.hoomd.HOOMDTrajectory.read_frame`` - use ``gsd.hoomd.HOOMDTrajectory.__getitem__``
(`249 <https://github.com/glotzerlab/gsd/pull/249>`__).
* The file modes ``'wb'``, ``'wb+'``, ``'rb'``, ``'rb+'``, ``'ab'``, ``'xb'``, and ``'xb+'``. Use
``'r'``, ``'r+'``, ``'w'``, ``'x'``, or ``'a'``
(`249 <https://github.com/glotzerlab/gsd/pull/249>`__).
2.x
---
```
### 2.9.0
```
^^^^^^^^^^^^^^^^^^
*Added:*
* File modes ``'r'``, ``'r+'``, ``'w'``, ``'x'``, and ``'a'``
(`238 <https://github.com/glotzerlab/gsd/pull/238>`__).
*Changed:*
* Test on gcc9, clang10, and newer
(`235 <https://github.com/glotzerlab/gsd/pull/235>`__).
* Test and provide binary wheels on Python 3.8 and newer
(`235 <https://github.com/glotzerlab/gsd/pull/235>`__).
*Deprecated:*
* File modes ``'wb'``, ``'wb+'``, ``'rb'``, ``'rb+'``, ``'ab'``, ``'xb'``, and ``'xb+'``
(`238 <https://github.com/glotzerlab/gsd/pull/238>`__).
* [C API] ``GSD_APPEND`` file open mode
(`238 <https://github.com/glotzerlab/gsd/pull/238>`__).
```
### 2.8.1
```
^^^^^^^^^^^^^^^^^^^
*Fixed:*
* Reduce memory usage in most use cases.
* Reduce likelihood of data corruption when writing GSD files.
```
### 2.8.0
```
^^^^^^^^^^^^^^^^^^^
*Added:*
* ``gsd.hoomd.read_log`` - Read log quantities from a GSD file.
* ``gsd.hoomd.Frame`` class to replace ``gsd.hoomd.Snapshot``.
*Changed:*
* Improved documentation.
*Deprecated:*
* ``gsd.hoomd.Snapshot``.
```
### 2.7.0
```
^^^^^^^^^^^^^^^^^^^
*Added*
* Support Python 3.11.
```
### 2.6.1
```
^^^^^^^^^^^^^^^^^^^
*Fixed:*
* Default values are now written to frame N (N != 0) when non-default values
exist in frame 0.
* Data chunks can now be read from files opened in 'wb', 'xb', and 'ab' modes.
```
### 2.6.0
```
^^^^^^^^^^^^^^^^^^^
*Changed:*
* Raise an error when writing a frame with duplicate types.
```
### 2.5.3
```
^^^^^^^^^^^^^^^^^^^
*Fixed*
* Support Python >=3.6.
```
### 2.5.2
```
^^^^^^^^^^^^^^^^^^^
*Fixed*
* Correctly handle non-ASCII characters on Windows.
* Document that the ``fname`` argument to ``gsd_`` C API functions is UTF-8
encoded.
```
### 2.5.1
```
^^^^^^^^^^^^^^^^^^^
*Added*
* Support for Python 3.10.
* Support for clang 13.
```
### 2.5.0
```
^^^^^^^^^^^^^^^^^^^
*Changed*
* Improved documentation.
*Deprecated*
- ``HOOMDTrajectory.read_frame`` - use indexing (``trajectory[index]``) to access frames from a
trajectory.
```
### 2.4.2
```
^^^^^^^^^^^^^^^^^^^
*Added*
* MacOS and Windows wheels on PyPI.
*Fixed*
- Documented array shapes for angles, dihedrals, and impropers.
```
### 2.4.1
```
^^^^^^^^^^^^^^^^^^^
*Added*
* Support macos-arm64.
*Changed*
* Stop testing with clang 4-5, gcc 4.8-6.
```
### 2.4.0
```
^^^^^^^^^^^^^^^^^^^
*Changed*
* Set ``gsd.hoomd.ConfigurationData.dimensions`` default based on ``box``'s
:math:`L_z` value.
*Fixed*
* Failure in ``test_fl.py`` when run by a user and GSD was installed by root.
```
### 2.3.0
```
^^^^^^^^^^^^^^^^^^^
*Added*
* Support clang 11.
* Support Python 3.9.
*Changed*
* Install unit tests with the Python package.
*Fixed*
* Compile error on macOS 10.15.
```
### 2.2.0
```
^^^^^^^^^^^^^^^^^^^
*Added*
* Command line convenience interface for opening a GSD file.
```
### 2.1.2
```
^^^^^^^^^^^^^^^^^^^
*Fixed*
* Adding missing ``close`` method to ``HOOMDTrajectory``.
* Documentation improvements.
```
### 2.1.1
```
^^^^^^^^^^^^^^^^^^^
*Fixed*
* List defaults in ``gsd.fl.open`` documentation.
```
### 2.1.0
```
^^^^^^^^^^^^^^^^^^^
*Added*
* Shape specification for sphere unions.
```
### 2.0.0
```
^^^^^^^^^^^^^^^^^^^
*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`` accepts ``None`` for ``application``, ``schema``, and
``schema_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`` - use ``gsd.fl.open``.
* ``gsd.hoomd.create`` - use ``gsd.hoomd.open``.
* ``GSDFile`` v1.0 compatibility mode - use ``gsd.fl.open``.
* ``hoomdxml2gsd.py``.
*Fixed*
* Allow more than 127 data chunk names in a single GSD file.
v1.x
----
```
### 1.10.0
```
^^^^^^^^^^^^^^^^^^^^
* 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.
```
### 1.9.3
```
^^^^^^^^^^^^^^^^^^^
* Fixed preprocessor directive affecting Windows builds using setup.py.
* Documentation updates
```
### 1.9.2
```
^^^^^^^^^^^^^^^^^^^
* Support chunk sizes larger than 2GiB
```
### 1.9.1
```
^^^^^^^^^^^^^^^^^^^
* Support writing chunks wider than 255 from Python.
```
### 1.9.0
```
^^^^^^^^^^^^^^^^^^^
* File API: Add ``find_matching_chunk_names()``
* ``HOOMD`` schema 1.4: Add user defined logged data.
* ``HOOMD`` schema 1.4: Add ``type_shapes`` specification.
* pytest >= 3.9.0 is required to run unit tests.
* ``gsd.fl.open`` and ``gsd.hoomd.open`` accept objects implementing
``os.PathLike``.
* Report an error when attempting to write a chunk that fails to allocate a
name.
* Reduce virtual memory usage in ``rb`` and ``wb`` open modes.
* Additional checks for corrupt GSD files on open.
* Synchronize after expanding file index.
```
### 1.8.1
```
^^^^^^^^^^^^^^^^^^^
* Correctly raise ``IndexError`` when attempting to read frames before the first
frame.
* Raise ``RuntimeError`` when importing ``gsd`` in unsupported Python versions.
```
### 1.8.0
```
^^^^^^^^^^^^^^^^^^^
* 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.
```
### 1.7.0
```
^^^^^^^^^^^^^^^^^^^
* Add ``hpmc/sphere/orientable`` to HOOMD schema.
* HOOMD schema 1.3
```
### 1.6.2
```
^^^^^^^^^^^^^^^^^^^
* PyPI binary wheels now support numpy>=1.9.3,<2
```
### 1.6.1
```
^^^^^^^^^^^^^^^^^^^
* Documentation updates
```
### 1.6.0
```
^^^^^^^^^^^^^^^^^^^
* The length of sliced HOOMDTrajectory objects can be determined with the
built-in ``len()`` function.
```
### 1.5.5
```
^^^^^^^^^^^^^^^^^^^
* Silence numpy deprecation warnings
```
### 1.5.4
```
^^^^^^^^^^^^^^^^^^^
* Add ``pyproject.toml`` file that defines ``numpy`` as a proper build
dependency (requires pip >= 10)
* Reorganize documentation
```
### 1.5.3
```
^^^^^^^^^^^^^^^^^^^
* Revert ``setup.py`` changes in v1.5.2 - these do not work in most
circumstances.
* Include ``sys/stat.h`` on all architectures.
```
### 1.5.2
```
^^^^^^^^^^^^^^^^^^^
* Close file handle on errors in ``gsd_open``.
* Always close file handle in ``gsd_close``.
* ``setup.py`` now correctly pulls in the numpy dependency.
```
### 1.5.1
```
^^^^^^^^^^^^^^^^^^^
* Documentation fixes.
```
### 1.5.0
```
^^^^^^^^^^^^^^^^^^^
* Read and write HPMC shape state data.
```
### 1.4.0
```
^^^^^^^^^^^^^^^^^^^
* Support reading and writing chunks with 0 length. No schema changes are
necessary to support this.
```
### 1.3.0
```
^^^^^^^^^^^^^^^^^^^
* Document ``state`` entries in the HOOMD schema.
* No changes to the gsd format or reader code in v1.3.
```
### 1.2.0
```
^^^^^^^^^^^^^^^^^^^
* 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.
```
### 1.1.0
```
^^^^^^^^^^^^^^^^^^^
* Add special pairs section pairs/ to HOOMD schema.
* HOOMD schema version is now 1.1.
```
### 1.0.1
```
^^^^^^^^^^^^^^^^^^^
* Fix compile error on more strict POSIX systems.
```
### 1.0.0
```
^^^^^^^^^^^^^^^^^^^
Initial release.
```
### 0.1.1
```
.. Copyright (c) 2016-2024 The Regents of the University of Michigan
.. Part of GSD, released under the BSD 2-Clause License.
Change Log
==========
`GSD <https://github.com/glotzerlab/gsd>`_ releases follow `semantic versioning
<https://semver.org/>`_.
3.x
---
```
### 0.1.0
```
Added
- Implementation of the VMD molfile plugin for HOOMD-blue GSD files.
The plugin is able to read particle and bond data. Angles, dihedrals,
and writing are not currently supported.
[Unreleased]: https://github.com/mphowardlab/gsd-vmd/compare/v0.4.1...HEAD
```
Links
- PyPI: https://pypi.org/project/gsd
- Changelog: https://data.safetycli.com/changelogs/gsd/
This PR pins gsd to the latest release 3.3.0.
Changelog
### 3.3.0 ``` ^^^^^^^^^^^^^^^^^^ *Added:* * Support numpy 2.0 (`367 <https://github.com/glotzerlab/gsd/pull/367>`__). *Changed:* * Navigate the documentation with arrow keys (`365 <https://github.com/glotzerlab/gsd/pull/365>`__). * Add button to copy code snippets from the documentation (`365 <https://github.com/glotzerlab/gsd/pull/365>`__). * Remove singularity reference from the documentation (`365 <https://github.com/glotzerlab/gsd/pull/365>`__). *Removed:* * Support for Python 3.8 (`367 <https://github.com/glotzerlab/gsd/pull/367>`__). ``` ### 3.2.1 ``` ^^^^^^^^^^^^^^^^^^ *Fixed:* * Write all pending index entries to the file when ``gsd_flush()`` is called after ``gsd_write_chunk()`` and before ``gsd_end_frame()`` (`319 <https://github.com/glotzerlab/gsd/pull/319>`__). * Readthedocs builds with pandas 2.2.0 (`322 <https://github.com/glotzerlab/gsd/pull/322>`__). * Import without seg fault when built with CMake on macOS (`323 <https://github.com/glotzerlab/gsd/pull/323>`__). * Internal cached data remains valid when users modify frames obtained by indexing trajectories (`324 <https://github.com/glotzerlab/gsd/pull/324>`__). *Changed:* * Provide support via GitHub discussions (`308 <https://github.com/glotzerlab/gsd/issues/308>`__). * Use ruff (`317 <https://github.com/glotzerlab/gsd/pull/317>`__). * Perform fewer implicit flushes when using the ``gsd.hoomd`` python API (`325 <https://github.com/glotzerlab/gsd/pull/325>`__). ``` ### 3.2.0 ``` ^^^^^^^^^^^^^^^^^^ *Added:* * Support Python 3.12 (`283 <https://github.com/glotzerlab/gsd/issues/283>`__). ``` ### 3.1.1 ``` ^^^^^^^^^^^^^^^^^^ *Fixed:* * Raise a ``FileExistsError`` when opening a file that already exists with ``mode = 'x'`` (`270 <https://github.com/glotzerlab/gsd/issues/270>`__). ``` ### 3.1.0 ``` ^^^^^^^^^^^^^^^^^^ *Fixed:* * ``hoomd.read_log`` no longer triggers a numpy deprecation warning (`267 <https://github.com/glotzerlab/gsd/pull/267>`__). *Added:* * ``HOOMDTrajectory.flush`` - flush buffered writes on an open ``HOOMDTrajectory`` (`266 <https://github.com/glotzerlab/gsd/pull/266>`__). ``` ### 3.0.1 ``` ^^^^^^^^^^^^^^^^^^ *Fixed:* * Prevent ``ValueError: signal only works in main thread of the main interpreter`` when importing gsd in a non-main thread (`257 <https://github.com/glotzerlab/gsd/issues/257>`__). ``` ### 3.0.0 ``` ^^^^^^^^^^^^^^^^^^ *Added:* * ``gsd.version.version`` - version string identifier. PEP8 compliant name replaces ``__version__``. * ``GSDFile.flush`` - flush write buffers (C API ``gsd_flush``) (`237 <https://github.com/glotzerlab/gsd/pull/237>`__). * ``GSDFile.maximum_write_buffer_size`` - get/set the write buffer size (C API ``gsd_get_maximum_write_buffer_size`` / ``gsd_set_maximum_write_buffer_size``) (`237 <https://github.com/glotzerlab/gsd/pull/237>`__). * ``GSDFile.index_entries_to_buffer`` - get/set the write buffer size (C API ``index_entries_to_buffer`` / ``index_entries_to_buffer``) (`237 <https://github.com/glotzerlab/gsd/pull/237>`__). * On importing `gsd`, install a ``SIGTERM`` handler that calls ``sys.exit(1)`` (`237 <https://github.com/glotzerlab/gsd/pull/237>`__). *Changed:* * ``write_chunk`` buffers writes across frames to increase performance (`237 <https://github.com/glotzerlab/gsd/pull/237>`__). * Use *Doxygen* and *breathe* to generate C API documentation in Sphinx (`237 <https://github.com/glotzerlab/gsd/pull/237>`__). *Removed:* * ``gsd.__version__`` - use ``gsd.version.version``. * ``gsd.hoomd.Snapshot`` - use ``gsd.hoomd.Frame`` (`249 <https://github.com/glotzerlab/gsd/pull/249>`__). * ``gsd.hoomd.HOOMDTrajectory.read_frame`` - use ``gsd.hoomd.HOOMDTrajectory.__getitem__`` (`249 <https://github.com/glotzerlab/gsd/pull/249>`__). * The file modes ``'wb'``, ``'wb+'``, ``'rb'``, ``'rb+'``, ``'ab'``, ``'xb'``, and ``'xb+'``. Use ``'r'``, ``'r+'``, ``'w'``, ``'x'``, or ``'a'`` (`249 <https://github.com/glotzerlab/gsd/pull/249>`__). 2.x --- ``` ### 2.9.0 ``` ^^^^^^^^^^^^^^^^^^ *Added:* * File modes ``'r'``, ``'r+'``, ``'w'``, ``'x'``, and ``'a'`` (`238 <https://github.com/glotzerlab/gsd/pull/238>`__). *Changed:* * Test on gcc9, clang10, and newer (`235 <https://github.com/glotzerlab/gsd/pull/235>`__). * Test and provide binary wheels on Python 3.8 and newer (`235 <https://github.com/glotzerlab/gsd/pull/235>`__). *Deprecated:* * File modes ``'wb'``, ``'wb+'``, ``'rb'``, ``'rb+'``, ``'ab'``, ``'xb'``, and ``'xb+'`` (`238 <https://github.com/glotzerlab/gsd/pull/238>`__). * [C API] ``GSD_APPEND`` file open mode (`238 <https://github.com/glotzerlab/gsd/pull/238>`__). ``` ### 2.8.1 ``` ^^^^^^^^^^^^^^^^^^^ *Fixed:* * Reduce memory usage in most use cases. * Reduce likelihood of data corruption when writing GSD files. ``` ### 2.8.0 ``` ^^^^^^^^^^^^^^^^^^^ *Added:* * ``gsd.hoomd.read_log`` - Read log quantities from a GSD file. * ``gsd.hoomd.Frame`` class to replace ``gsd.hoomd.Snapshot``. *Changed:* * Improved documentation. *Deprecated:* * ``gsd.hoomd.Snapshot``. ``` ### 2.7.0 ``` ^^^^^^^^^^^^^^^^^^^ *Added* * Support Python 3.11. ``` ### 2.6.1 ``` ^^^^^^^^^^^^^^^^^^^ *Fixed:* * Default values are now written to frame N (N != 0) when non-default values exist in frame 0. * Data chunks can now be read from files opened in 'wb', 'xb', and 'ab' modes. ``` ### 2.6.0 ``` ^^^^^^^^^^^^^^^^^^^ *Changed:* * Raise an error when writing a frame with duplicate types. ``` ### 2.5.3 ``` ^^^^^^^^^^^^^^^^^^^ *Fixed* * Support Python >=3.6. ``` ### 2.5.2 ``` ^^^^^^^^^^^^^^^^^^^ *Fixed* * Correctly handle non-ASCII characters on Windows. * Document that the ``fname`` argument to ``gsd_`` C API functions is UTF-8 encoded. ``` ### 2.5.1 ``` ^^^^^^^^^^^^^^^^^^^ *Added* * Support for Python 3.10. * Support for clang 13. ``` ### 2.5.0 ``` ^^^^^^^^^^^^^^^^^^^ *Changed* * Improved documentation. *Deprecated* - ``HOOMDTrajectory.read_frame`` - use indexing (``trajectory[index]``) to access frames from a trajectory. ``` ### 2.4.2 ``` ^^^^^^^^^^^^^^^^^^^ *Added* * MacOS and Windows wheels on PyPI. *Fixed* - Documented array shapes for angles, dihedrals, and impropers. ``` ### 2.4.1 ``` ^^^^^^^^^^^^^^^^^^^ *Added* * Support macos-arm64. *Changed* * Stop testing with clang 4-5, gcc 4.8-6. ``` ### 2.4.0 ``` ^^^^^^^^^^^^^^^^^^^ *Changed* * Set ``gsd.hoomd.ConfigurationData.dimensions`` default based on ``box``'s :math:`L_z` value. *Fixed* * Failure in ``test_fl.py`` when run by a user and GSD was installed by root. ``` ### 2.3.0 ``` ^^^^^^^^^^^^^^^^^^^ *Added* * Support clang 11. * Support Python 3.9. *Changed* * Install unit tests with the Python package. *Fixed* * Compile error on macOS 10.15. ``` ### 2.2.0 ``` ^^^^^^^^^^^^^^^^^^^ *Added* * Command line convenience interface for opening a GSD file. ``` ### 2.1.2 ``` ^^^^^^^^^^^^^^^^^^^ *Fixed* * Adding missing ``close`` method to ``HOOMDTrajectory``. * Documentation improvements. ``` ### 2.1.1 ``` ^^^^^^^^^^^^^^^^^^^ *Fixed* * List defaults in ``gsd.fl.open`` documentation. ``` ### 2.1.0 ``` ^^^^^^^^^^^^^^^^^^^ *Added* * Shape specification for sphere unions. ``` ### 2.0.0 ``` ^^^^^^^^^^^^^^^^^^^ *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`` accepts ``None`` for ``application``, ``schema``, and ``schema_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`` - use ``gsd.fl.open``. * ``gsd.hoomd.create`` - use ``gsd.hoomd.open``. * ``GSDFile`` v1.0 compatibility mode - use ``gsd.fl.open``. * ``hoomdxml2gsd.py``. *Fixed* * Allow more than 127 data chunk names in a single GSD file. v1.x ---- ``` ### 1.10.0 ``` ^^^^^^^^^^^^^^^^^^^^ * 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. ``` ### 1.9.3 ``` ^^^^^^^^^^^^^^^^^^^ * Fixed preprocessor directive affecting Windows builds using setup.py. * Documentation updates ``` ### 1.9.2 ``` ^^^^^^^^^^^^^^^^^^^ * Support chunk sizes larger than 2GiB ``` ### 1.9.1 ``` ^^^^^^^^^^^^^^^^^^^ * Support writing chunks wider than 255 from Python. ``` ### 1.9.0 ``` ^^^^^^^^^^^^^^^^^^^ * File API: Add ``find_matching_chunk_names()`` * ``HOOMD`` schema 1.4: Add user defined logged data. * ``HOOMD`` schema 1.4: Add ``type_shapes`` specification. * pytest >= 3.9.0 is required to run unit tests. * ``gsd.fl.open`` and ``gsd.hoomd.open`` accept objects implementing ``os.PathLike``. * Report an error when attempting to write a chunk that fails to allocate a name. * Reduce virtual memory usage in ``rb`` and ``wb`` open modes. * Additional checks for corrupt GSD files on open. * Synchronize after expanding file index. ``` ### 1.8.1 ``` ^^^^^^^^^^^^^^^^^^^ * Correctly raise ``IndexError`` when attempting to read frames before the first frame. * Raise ``RuntimeError`` when importing ``gsd`` in unsupported Python versions. ``` ### 1.8.0 ``` ^^^^^^^^^^^^^^^^^^^ * 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. ``` ### 1.7.0 ``` ^^^^^^^^^^^^^^^^^^^ * Add ``hpmc/sphere/orientable`` to HOOMD schema. * HOOMD schema 1.3 ``` ### 1.6.2 ``` ^^^^^^^^^^^^^^^^^^^ * PyPI binary wheels now support numpy>=1.9.3,<2 ``` ### 1.6.1 ``` ^^^^^^^^^^^^^^^^^^^ * Documentation updates ``` ### 1.6.0 ``` ^^^^^^^^^^^^^^^^^^^ * The length of sliced HOOMDTrajectory objects can be determined with the built-in ``len()`` function. ``` ### 1.5.5 ``` ^^^^^^^^^^^^^^^^^^^ * Silence numpy deprecation warnings ``` ### 1.5.4 ``` ^^^^^^^^^^^^^^^^^^^ * Add ``pyproject.toml`` file that defines ``numpy`` as a proper build dependency (requires pip >= 10) * Reorganize documentation ``` ### 1.5.3 ``` ^^^^^^^^^^^^^^^^^^^ * Revert ``setup.py`` changes in v1.5.2 - these do not work in most circumstances. * Include ``sys/stat.h`` on all architectures. ``` ### 1.5.2 ``` ^^^^^^^^^^^^^^^^^^^ * Close file handle on errors in ``gsd_open``. * Always close file handle in ``gsd_close``. * ``setup.py`` now correctly pulls in the numpy dependency. ``` ### 1.5.1 ``` ^^^^^^^^^^^^^^^^^^^ * Documentation fixes. ``` ### 1.5.0 ``` ^^^^^^^^^^^^^^^^^^^ * Read and write HPMC shape state data. ``` ### 1.4.0 ``` ^^^^^^^^^^^^^^^^^^^ * Support reading and writing chunks with 0 length. No schema changes are necessary to support this. ``` ### 1.3.0 ``` ^^^^^^^^^^^^^^^^^^^ * Document ``state`` entries in the HOOMD schema. * No changes to the gsd format or reader code in v1.3. ``` ### 1.2.0 ``` ^^^^^^^^^^^^^^^^^^^ * 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. ``` ### 1.1.0 ``` ^^^^^^^^^^^^^^^^^^^ * Add special pairs section pairs/ to HOOMD schema. * HOOMD schema version is now 1.1. ``` ### 1.0.1 ``` ^^^^^^^^^^^^^^^^^^^ * Fix compile error on more strict POSIX systems. ``` ### 1.0.0 ``` ^^^^^^^^^^^^^^^^^^^ Initial release. ``` ### 0.1.1 ``` .. Copyright (c) 2016-2024 The Regents of the University of Michigan .. Part of GSD, released under the BSD 2-Clause License. Change Log ========== `GSD <https://github.com/glotzerlab/gsd>`_ releases follow `semantic versioning <https://semver.org/>`_. 3.x --- ``` ### 0.1.0 ``` Added - Implementation of the VMD molfile plugin for HOOMD-blue GSD files. The plugin is able to read particle and bond data. Angles, dihedrals, and writing are not currently supported. [Unreleased]: https://github.com/mphowardlab/gsd-vmd/compare/v0.4.1...HEAD ```Links
- PyPI: https://pypi.org/project/gsd - Changelog: https://data.safetycli.com/changelogs/gsd/