Caltech Library logo

Release 2.3.4

Release 2.3.3

Release 2.3.2

Frame, clone, sample, sync and join support removed. The dsimporter cli removed (use jsonl dump and load instead). Fixed a bug in using the JSON API with GET where command line parameters were not getting processed. Also added support for standard encoding of web forms in queries.

Release 2.3.1:

Documentation and tests have been removed for frames, clone, and sample. Frame support was removed from datasetd.

Release 2.3.0:

This release fixed problems related to how a collection might incorrectly return a unknown type. v2.3.x cycle will depreciated features in preparation for v2.4.

Release 2.0.0-b06:

This release is a rewrite of version 1 focusing on removing features, clearifying useful concepts and abstracting the storage engines cleanly. The latter was done to allow the web implementation of dataset to achieve an appropriate performance and be able to scale to a larger number of collections and size of collections.

The dataset collection’s structure has changed.

Golang package changes:

libdataset:

CLI changes:

Web Service changes:

Release 1.1.0:

Added attachment support for datasetd.

Updated the metadata fields to include richer PersonOrOrg data structures for author, contributor, funder as well as added an annotation map field for custom metadata.

Added “MetadataJSON()” function for Collection to quickly copy out the metadata values from a collection.

    c, err := dataset.Open("MyData.ds")
    ...
    defer c.Close()
    fmt.Printf("%s", c.MetadataJSON())

Added “MetadataUpdate()” function to update a collection’s metadata.

    c, err := dataset.Open("MyData.ds")
    ...
    defer c.Close()
    meta := new(Collection)
    meta.Description = "A test dataset"
    meta.Version = "1.0.0"
    meta.Author = []*PersonOrOrg{
        &Person{
            Type: "Person",
            GivenName: "Jane",
            FamilyName: "Doe",
        },
    }
    err = c.MetadataUpdate(meta)
    ...

Depreciated dependency on namaste package and Namaste support in command line tools. Removed “collections.go and collections_test.go” from repository (redundant code). Updated libdataset/libdataset.go to hold functions that were needed for the C-Shared library from collections.go. The Namaste fields in the collection’s metadata are now depreciated.

The dataset.Init() now places a lock file in the collection directory and leaves the collection in an “Open” state, it should be explicitly closed after Init is called.

E.g.

   c, err := dataset.Init("MyData.ds")
   ...
   defer c.Close()

Removed “set_*” for collection metadata fields from libdataset.go. These should be set using the dataset command line tool only.

The dataset.Analyzer() and dataset.Repair() commands expect the dataset collections to be closed before being called. E.g..

    c, err := dataset.Open("MyData.ds")
    ...
    c.Close()
    err := dataset.Analyzer("MyData.ds", true)
    if err == nil {
        c, err = dataset.Open("MyData.ds")
        ...
    }

Release 1.0.2:

Added support for datasetd, a localhost web service for dataset collections. The web service supports a subset of the command line tool.

Both datasetd and dataset command line program now include a “lock.pid” file in the collection root. This is to prevent multiple processes from clashing when maintaining the “collections.json” file in the collection root.

Migrated cli package into dataset repository sub-package “github.com/caltechlibrary/dataset/cli”. Eventually this package will be replaced by “datasetCli.go” in the root folder.

In the dataset command line program the verb “detach” has been renamed “retrieve” better describe the action. “detach” is depreciated and will be removed in upcoming releases.

Release 1.0.1:

Release 1.0.0:

Release 0.1.11:

Release 0.1.10:

Release 0.1.8:

This release focuses on minor bug fixes in libdataset.

Release 0.1.6:

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 retrieved with dataset.error_message().

Release 0.1.5:

This release focuses on refine function names, simplification and easy of testing for Windows 10 deployments.

Release 0.1.4:

This release has breaking changes with release v0.1.3 and early. Many functions in libdataset have been renamed to prevent collisions in the environments using libdataset C-shared library. Most function names now have two parts separated by a underscore (e.g. status has become collection_status, repair has become collection_repair).

Google Sheet integration has been dropped. It was just more trouble then it was worth to maintain.

Tests from py_dataset now have been ported to the test library for libdataset.

Redundant functions have been removed (we had accumulated multiple definitions for the same thing in libdataset). Where possible code has been simplified.

Most libdataset functions will cause an “open” on a dataset collection automatically. Some additional functions around collections have been added primarily to make testing easier (e.g. open_collection(), is_open(), close_collection(), close_all()).

Functions that were overloaded via optional parameters have been simplified. E.g. keys() now returns all keys in collection, use key_filter() and key_sort() accordingly.

Release 0.1.3:

Release 0.1.2:

Release 0.1.1:

Release 0.1.0: