Releases: caltechlibrary/dataset
issue-104
This release is a bug fix to minimize memory usage for processing attachments.
Issue-103 updates
This is a minor maintenance release, fixed comments in source code to reflect the behaviors for "frame refresh" versus "frame reframe" in frames.go and libdataset.go. Also updated documentation adding back individual pages for frame "refresh" and "reframe".
Minor bug fixes and renamed function
Minor bug fixes, removed duplicate code from libdataset.go, renamed make_objects()
to create_objects()
to be consistent with general naming scheme in libdataset.
Bug Fix issue with libdataset's frame_delete().
This was detected in an experimental version of py_dataset. Inside libdataset.go's exported frame_delete() function the Go function FrameClear() was called instead of FrameDelete(). This made frame_delete() have the same behavior as frame_clear(). This was corrected, tests were added in libdataset at both Go level and Python level.
Minor bug fixes in libdataset.
This release focuses on minor bug fixes in libdataset.
All functions which returned an error string only now return
True for success and False otherwise. The error string
can be retreived with dataset.error_message()
.
Build Notes:
- golang v1.14
- Caltech library go packages
- storage v0.1.0
- namaste v0.0.5
- pairtree v0.0.4
- OS used to compiled and test
- macOS Catalina
- Windows 10
- Ubuntu 18.04 LTS
- Python 3.8 (from Miniconda 3)
- zip has replaced tar in the releases of libdataset
Some tests fail on Windows 10 for libdataset. These will be addressed in future releases.
Simplification, improving test coverage
This release focuses on refine function names, simplification
and easy of testing for Windows 10 reployments.
Build Notes:
- golang v1.14
- Caltech library go packages
- storage v0.1.0
- namaste v0.0.5
- pairtree v0.0.4
- OS used to compiled and test
- macOS Catalina
- Windows 10
- Ubuntu 18.04 LTS
- Python 3.8 (from Miniconda 3)
- zip has replaced tar in the releases of libdataset
Renamed functions:
- collection_status() is now collection_exists()
Depreciated functions and features:
- S3, Google Cloud Storage support dropped.
- grid(), if you need this create a frame first and use frame_grid().
Some tests fail on Windows 10 for libdataset. These will be addressed in future releases.
Major code revision, some breaking changes
This release saw a major clean of code with some breaking changes in libdataset. FrameRefresh now only refreshes object in frame pruning objects no longer found in the collection. FrameReframe requires a key list and replaces of the object map and key list in a frame. libdataset splits out the functionality of the command line "keys" verb. keys() returns all keys in a collectin, key_filter() is used to filter a key list, key_sort() is used to sort a key list.
Envoking most libdataset functions will automatically open a collection if needed. There are some additional functions including support for most getting and setting Namaste nouns about the collection (e.g. Who, What).
Collections versions can be set and retrieved. Getting the dataset version via libdataset now uses the function dataset_verison() while getting the version of a collection uses get_version().
libdataset now has tests via using a custom libdataset Python module. This proved easier then writing C code to test the C-Shared library.
Finally Google Sheets support has been removed. Directory S3 support will likely be removed in a future version. This will allow us to continue to trim the fat before making it to v1.x.
NOTE: this release lacks a libdataset.dll for Windows 10.
Bug fixes, repair enhancement
This is a pre-release to test changes in Frames handling as well as test the changes in repair to cover when a pairtree is found but a collection.json is missing.
Recompiled release with Go v1.14.
v0.1.x series release with bug fixes
From v0.1.0 release
- Updated libdataset API, simplified func names and normalized many of the calls (breaking change)
- libdataset now manages opening dataset collections, inspired by Oberon System file riders (breaking change)
- Added Python test code for libdataset to make sure libdataset works
- Added support for check and repair when working on S3 deployed collections
- Refactored and simplified frame behavior (breaking change)
From v0.1.0 to v0.1.1
- Fixed problem where keys_exist called before an open command.
From v0.1.1 to v0.1.2
- Persisting _Attachments metadata when updating with clean objects using the same technique as _Key
Frame and C-Shared library improvements
This release has breaking changes in the syntax used in the command line tool as well as the function calls available from the C-Shared library. It includes a demo python package for testing the C-Shared library.
- The frame metadata object is simplified dropping information for things like filtering and sorting, it is now assumed you are supplying a list of keys where required
- The frame verb now has been split into two, frame-create to create data frames and frame to recall them.
- The reframe verb is split and renamed to frame-reframe and frame-refresh. The first will replace, add and re-oder objects given a list of keys, the second will update objects and append new objects given a list of keys
- The delete-frame verb has been renamed frame-delete to be consistent with the rest of the frame commands
- Experimental support for running check and repair directly on S3 hosted dataset collections
- Experimental support in libdataset for operating on open collections with out requiring an explicit close, and managing writes to the collection.json file and pairtree. This allows us to open many collections and manage them in a service context like a Python application providing web interactions