------------------
* Add much faster method of session filtering
* Update default requirements
* Bump version
* Support for backwards bytes in py2/3
* basestring in py3 compat patch
* Hacky fix to ensure ROS builds contain the meta
* Enable uploads
* Add dist and wheel packaging and util script to release on PYPI
* Version increment for PyPi dist
* Ensure package data is respected in python lib
* Merge pull request `22 <https://github.com/RaymondKirk/topic_store/issues/22>`_ from RaymondKirk/workshop
Workshop improvements 2021
* Remove redundant info
* Bump version
* Fix nummpy types
* Remove import compression
* Updated README.md info
* Removed compression in favour of https://github.com/RaymondKirk/topic_compression
* Docker files update
* Docker files update
* Docker files update
* Removed GUI
* Fixed project meta data
* Updated README
* Merge branch 'master' of https://github.com/RaymondKirk/topic_store into workshop
* Updated README links
* Updated README and added error logging
* Update ready for launch files and for rosrun
* Added quantisation and compression utility for fast data storage
* No requirement for cv2 package
* Fix 16MB test
* Add compression.py file to handle on the fly compression
* Update LICENCE
* Added compression feature (experimentation flag in sanitation.py)
Idea is to compress all Images using either jpeg (colour) or png (depth) encoding to CompressedImage encoding.
* Removes Jenkins Build Status (`24 <https://github.com/RaymondKirk/topic_store/issues/24>`_)
* Full filesystem error message
* Defaults for run_scenario.py
* Add ability to run on single thread (threads=0) or offload jobs (threads>=1)
* Add ability to toggle GridFS
* Add message size to info topic
* Added topic monitoring script
* Update store with partial auto logger functions
* Customise log publisher topic
* Update year on licence
* Add parameters relating to thread management
* Improvements to load balancer (auto flag, worker closure, worker track)
* GridFS improvements (create index and default chunk size increase)
* Rename run_scenario node to anonymous (`21 <https://github.com/RaymondKirk/topic_store/issues/21>`_)
* Temp fix for `20 <https://github.com/RaymondKirk/topic_store/issues/20>`_ to allow filesystem conversion
* Merge pull request `19 <https://github.com/RaymondKirk/topic_store/issues/19>`_ from RaymondKirk/new_sanitation_method
New sanitation method
* Log IO Queue messages to info log to ensure user sees them
* Simple ROS types will not be converted anymore
TopicStore officially now works only with hierarchical mappable types such as dict. To convert simple ROS messages/types please put in a dict.
* Added tests for sanitation methods
* Overhaul of sanitation methods
Previous implementation was unreliable and had an issue with objects in different parts of the nested dict would be magically replaced randomly due to objects in python being created with the same id. Some unavoidable copy by reference errors in last implementation, now all are copied by value. Note it is still possible to mess this up by running convert dictionary functions on the same dict objects at different times.
* Data sanitation by default (instead of DefaultTypeParser)
Types will always be dict so just use optimised sanitation method. Type parsers now only used for Mongo/Other quick and dirty conversions i.e binary to str.
* Add convert binary (copy of python script)
* Smart resolve scenario files (search in package root if doesn't exist)
* Fixed type coercion and sanitation methods
* Better logging if system has the support
* Added verbose flag to launch file
* Improvements to load balancer class
* Implemented automatic load balancing to handle disk/db IO
* Re-add of conversion utility
* Fixed sanitation of other genpy types
* Initial commit of a better data sanitation technique (covers all instances)
* Merge pull request `18 <https://github.com/RaymondKirk/topic_store/issues/18>`_ from RaymondKirk/python3-library
Added python package setup and ROS independence support
* Add conversion functionality from cli even when installed with PyPi
* Fixed installation instructions
* Fixed link to PyPi
* Fixed link to PyPi
* Added PyPi button
* Add non-ROS installation scripts and instructions
* Don't break if no ros install on machine
* Added better readme tutorial for reading data
* Python2/3 compatible filesystem loading
* Added temp scenario parser fix and TODO
* Fix iteritems function for py2/py3 compatibility and allow dict insert
* Fix unicode and is_string functions for py2/py3 compatibility
* Merge branch 'master' of https://github.com/RaymondKirk/topic_store into python3-library
* Merge pull request `15 <https://github.com/RaymondKirk/topic_store/issues/15>`_ from pet1330/gh-ci
Adds GitHub Action CI
* Update topic_store.test
* Update CI.yml
Remove unneeded step
* Update CI Badge
* assert database connection before tests
* Update CI config values
* Adds GitHub CI
* Cleaned GUI files and added visualiser base
* Initial commit of basic GUI
* Merge pull request `13 <https://github.com/RaymondKirk/topic_store/issues/13>`_ from RaymondKirk/mongo_uid_fix
Add defaults for UID:GID and use the curent user for topic_store
* Squeeze in wiki updates
* checks for interative env to protect ci failing
* Added warning message for UID > 1000
* Removed comments
* Add defaults for UID:GID and use the curent user for topic_store
* Publish topic_store logs to a topic
* Auto catch errors in the MongoDB convert utility and skip
* Added ability to skip documents that error (catch exceptions)
* Added utility function to get flat {ros_topic: ros_topic_value, ...} dict
* More robust check for kwargs
* Fix for `12 <https://github.com/RaymondKirk/topic_store/issues/12>`_ to always return _ts_meta
* Merge pull request `11 <https://github.com/RaymondKirk/topic_store/issues/11>`_ from RaymondKirk/database_fixes
Fixes for database (description in commit info)
* Fixes for database (description in commit info)
If projection field is present and _ts_meta isn't specified then TopicStore will assume it is a new message and reconstruct now. So we force it to always retrieve this meta data to ensure messages are always reconstructed correctly.
On slow connections auto-fetching gridFS or blob data can be a dealbreaker so a "skip_fetch_binary" flag has been added.
* Contributors: Nikos Tsagkopoulos, Peter Lightbody, Raymond Tunstill (Kirk), RaymondKirk