geiger_localstorage 0.6.26 copy "geiger_localstorage: ^0.6.26" to clipboard
geiger_localstorage: ^0.6.26 copied to clipboard

outdated

A hierarchical NOSQL storage for the GEIGER project providing an internationalized and event driven data storage.

0.6.26 Bugfix release #

Fixes:

  • A possible race-condition when initializing the database.
  • Reinitiallizes automatically the ExtendedTimestamp with an up-to-date uuid of the new database.
  • A possible race-condition in the test cases causing one test intermittently to fail on certain platforms.
  • propper logging and a default option if assets are missing.

0.6.25 Simplify testing in isolates and remove incompatibilities for path_provider in testing #

Fixes:

  • Github issue #39 (NodeValue not correct timestamp when calling .getValue("key") on Node)

Changed:

  • The path provider is only being used if (and only if) the current working directory is not writeable as we still have troubles with the path_provider and try to minimize its usage. The old behavior may be restored by calling StorageMapper.preferCurrentDirectory=false; before calling await StorageMapper.initDatabaseExpander();

Added:

  • new loads a default set of data into the storage. The set of data is provided by the package and may be overridden with a file in assets/store/store.data

0.6.24 Bugfix Release #

Fixes:

  • An intermittent bug related to the upgrade of the SQLite database on Android has been fixed.
  • Github issue #38 (Concurrent modification during iteration: Instance of '_HashMap<SearchCriteria, StorageListener>')

Added:

  • sqlite3_flutter_libs to auto provide SQLite dependencies.

0.6.23 Bugfix release #

Fixes:

  • Github issue #35 (Null check operator on null value if search for a NodeValue without set Type)

0.6.22 Bugfix release and Minor breaking change #

This is a bugfix release with a minor breaking change.

New are the calls to (de-)register change listeners async. Furthermore, Flutter requires for the tests to successfully pass a concurrency of 1 (flutter test --concurrency=1).

Fixes:

  • Fixes an issue where the timestamp reported by SQLiteMapper (get) was incorrect.
  • Null pointer exception of github issue #35
  • Raises a size constraint of values to 10MB (Github issue #34). WARNING: Existing databases are not upgraded.

0.6.21 Extension of EventType #

Added:

  • new call EventTypeExtension.fromString(...) to create an EventType form a String representation.

0.6.20 Bugfix release #

Fixes:

  • Related to GitHub issue #31 (Rollback Node rename) fixes an ignored named parameter in SearchCriteria.
  • Fixed an issue with direct children of root in SqliteMapper

0.6.19 Bugfix release (Android only) #

Possibly fixes an issue with the path_provider on android (testing required).

0.6.18 #

Fixes a bug when renaming a direct child of the root entry.

Fixes:

  • Related to GitHub issue #31 (Rollback Node rename)

Added:

  • a new StorageController.dump(...) call is available allowing to dump all data of a database in string representation (for debugging purposes).

0.6.17 Bugfix Release #

These fixes should only affect users working with tombstones.

Fixes:

  • GitHub issue #27 (Search Criteria throws Exception if nodeValuelastModified is set)
  • GitHub issue #31 (Rollback Node rename)

0.6.16 Bugfix, Quality, and Extension Release #

Added/new:

  • convenience function ExtendedTimestamp.convertFromExtendedTimestamp(..)
  • rigid testing of node names

Fixes:

  • persistence of node timestamp in SqliteMapper
  • GitHub issue #27 (Search Criteria throws Exception if nodeValuelastModified is set)
  • unified layout of changelog entries

0.6.15 Bugfix and Quality Release #

Added:

  • some serialization tests (suspected problem but everything was alright).
  • added some tests to the StorageController (there we have found and fixed a problem; see below).

Fixes:

  • Fixes a problem when adding a value using StorageController.addOrUpdateValue(...).

0.6.14 Bugfix and Extension Release #

Added:

  • call addOrUpdateValue as convenience call.

Fixes:

  • race condition issue #24 on Github (Unhandled Exception: Null check operator used on a null value Error).

0.6.13 Bugfix and Extension Release #

Added:

  • a better errormessage when sqlite-Directory is not writeable.

Fixes:

  • a bug when waiting for ByteStream data when waiting for data of a stream.

0.6.12 Extension Release #

Added:

  • convenience call ExtendedTimestamp.extendedNow().

0.6.11 Extension Release #

Added:

  • Node.touch()
  • NodeValue.touch()

0.6.10 Extension Release #

Added:

  • autodetection when getting a path without any trailing '/' or './'. This automatism requires await StorageMapper.initDatabaseExpander(); to be called prior to relying on this automatism.

0.6.9 Quality Release #

Added:

  • an additional check making sure that faulty persisted dates are fixed.

0.6.8 Bugfix Release #

Fixes:

  • race condition in timestamp initialization.

0.6.7 Bugfix Release #

Fixes:

  • an issue when the :configTimestamp is not valid.

0.6.6 Enhancment and Bugfixing release (Minor Breaking Changes) #

Modified:

  • constructor of SearchCriteria has no longer positional optional arguments but named arguments.

Added:

  • implements the replication enhancements #21 (global unique timestamp)
  • implements #22 (Hash for search result) fully.

0.6.5 Bugfixing Release #

Fixes:

  • a bug in the search engine in conjunction with the SqliteMapper returning zero results. (credits to Nosa for pushing me onto that one)

0.6.4 Bugfixing and Enhancement Release #

Drop-in replacement offering bugfixing and some tame extensions to the API related to replication (complete but only limited functionality).

Added:

  • introduces API extensions for #22 and #21 (Unique sortable timestamp )

Fixes:

  • Resolves #23

0.6.3 Enhancement Release #

Added:

  • a default Serializer.serialVersionUid

0.6.2 Extension #

Added:

  • Serializer.byteArrayToInt() and Serializer.intToByteArray(). This allows to minimize double implementation of functionality in GeigerAPI

0.6.1 Bugfix Release #

Fixes:

  • GitHub issue #19 (race condition on initialize)
  • dart analyze

0.6.0 Reorganization to Accommodate External Plugins (Breaking) #

This is a breaking change. While most of the calls (see below) remain the same, most of the calls now return a future instead of the value itself. Please be careful when migrating as the weak typing of dart does not immediately show all issues when changing. PLease be especially careful when comparing two objects as the "equals" method is now async.

Modifies:

  • Switches to async design to accommodate passthrough controller of GeigerAPI
  • A node must have an owner (enfoced now)
  • Dummy mapper requires new the owner to be specified when starting (just pick any String)
  • Some minor changes in the API of the node. There is no longer a dart setter for visibility and owner as dart does not allow returning a future in a getter but set the variable. Instead, a java style setter was introduced.

Fixes:

  • issue with breaking flushes of the database to the disk.

0.5.6 Bugfix Release #

Fixes:

  • serialization of search criteria

0.5.5 Bugfix Release #

Fixes:

  • issues with StorageException serialization (added support)

0.5.4 Bugfix Release #

Fixes:

  • exported serialization

0.5.3 Bugfix and Extension Release #

Added:

  • Serialization capabilities for primitives and nodes.

Fixes:

  • Some minor changes in the Fields class (casing)

0.5.2 Bugfix Release #

Breaking change:

  • We moved to the dart getter/setter style breaking some compatibility

Known issues:

  • Serializer is broken (prereq for GeigerAPI)

0.5.1 Bugfix and Quality Release #

Modified:

  • Moved to "lints: ^1.0.1" as a replacement for "pedantic: ^1.11.1" (No impact for implementations)

Fixes:

  • an issue related to the sqlite storage backend and "nulled" ordinals (namely owner)
  • issue with nodes comparison when owner not set (detected in conjunction with sqlite)
  • bad example in README
  • better feedback in case of exception

Known issues:

  • Serializer is broken (prereq for GeigerAPI)

0.5.0 Initial Release #

Initial dart version for consortium internal testing.

5
likes
0
points
97
downloads

Publisher

verified publishercyber-geiger.eu

Weekly Downloads

A hierarchical NOSQL storage for the GEIGER project providing an internationalized and event driven data storage.

Repository (GitHub)
View/report issues

Documentation

Documentation

License

unknown (license)

Dependencies

crypto, enum_to_string, flutter, hex, http, intl, logging, path_provider, platform, sorted_list, sqlite3, sqlite3_flutter_libs, uuid

More

Packages that depend on geiger_localstorage