CHANGELOG
Unreleased
v0.10.0 (2024-10-24)
- Use cursor based pagination while dumping traversing hierarchy
- Use stream based fetching while dumping properties
- Use stream based fetching of receive folders
- Disable MySQL query cache for source database session
- Ensure dump is complete on done and log error if it is not
- Fix and complete dsn parameter usage
- Enable additional performance compile time optimizations
- Fix traverse hierarchy folder sub task error handling
- Update sea-orm to 1.1.0 and update models
v0.9.2 (2024-07-17)
- Add even more properties to ZARAFA type fixer for Kopano Groupware dump
v0.9.1 (2024-05-08)
- Add more properties to ZARAFA type fixer for Kopano Groupware dump
- Add recipient ZARAFA type fixer for Kopano Groupware dump
- Add CHANGELOG.md to the repository
v0.9.0 (2024-05-03)
- Add UTC offset fixer for Kopano Groupware all day appointment timestamps
- Use named importable defines for kg local named properties
v0.8.4 (2024-04-29)
- Generate 3rd-party licenses on dist
v0.8.3 (2024-04-09)
- Code cleanups
- Fix named property offset
- add skip_indexer_reindex to migrate import config example
v0.8.1 (2024-04-09)
v0.8.2 (2024-03-21)
- add skip_indexer_reindex to migrate import config example
- Add kg migration story examples and unify env variables
- Improve d1 import status 400 and 500 logging
v0.8.0 (2024-03-04)
- Improve kgdump MYSQL dsn examples
- Add support to dump kg attachment storage as d1 inline stream
v0.7.0 (2024-02-29)
- Use updated d1 importer service URL default
- Add migrate import example configuration
v0.6.0 (2024-02-12)
- Bump Rust toolchain to 1.76.0
- Update d1 kgdump to include hierarchy sequence
v0.5.0 (2024-02-01)
- Build project at the root level to include multiple bins
- Implement migrate import commandline utility
- Include indexedproperties table in kgdump properties
- Bump d1 manifest version for addition of receivefolder table
- Implement receivefolder in kgdump
- Make the builds reproducable and strip binares on dist
v0.4.0 (2024-01-29)
- Increase default kgdump folder concurrency to 8
- Cleanup debug logging
- Refactor kgdump tar writer and tar to be at the same place
- Refactor kgdump target database types into traits
- Ignore Kopano SYSTEM store
- Process kgdump export folders in parallel
- Migrate to Diesel to write d1 store and hierarchy databases
- Improve the very first lines of log output for better usability
- Implement attachment meta data
- Add concurrency constraint
- Spelling
- Fix documentation
- Fix drawio.svg format export
- Rename drawio to drawio.svg
- Add high level import export overview
v0.3.0 (2023-12-20)
- Add finializer per store
- Fix typos in usage text
- Remove d1 crate, it is moved to its own repository
- Unify log field format
v0.2.0 (2023-12-14)
- Store d1 properties_values with type
- Handle incoming property string values as bytes to deal non UTF-8
- Validate named property mapping and log warning if something is missing
- Add hardcoded local named properties
- Validate named property guid
- Add more meta data to d1 meta tables
- Add organization-id to folder tree in d1 dump format
- Improve progress report
- Avoid counting folders twice
- Dump named properties definitions
- Select explicit hooked correct hierarchy root for store
v0.1.0 (2023-12-13)
- Implement traversal and dump of distlist type
- Implement meta data including the finialization database
- Use transactions for output databases everywhere
- Count and display speed in MiB/s
- Improve database select page sizes
- Add progress counters and reduce info level log output
- Add parameter to set tmpfile base
- Remove temporary files directly after they have been added to the tar file
- Use jornal_mode=WAL for per hierarchy database
- Add instrumentation tracing
- Simplify property value serialization
- Validate property types
- Move log of display name and subject properties to trace level
- Implement writing of hierarchy and properties
- Improve info log level output
- Traverse properties of recipient items
- Deal with hierarchy type 8 as Unknown for now
- Add tar output support
- Split traverse implementation into multiple files
- Define db1 serialization format
- Implement adaptor for signed interger user table
- Convert whole project into a Rust workspace