thorp/CHANGELOG.org
Paul Campbell 0f8708e19f
Restructure sync to use a State with foldLeft around actions (#74)
* [changelog] updated

* [cli] Program rename parameter

* [core] Add AppState

* [core] Synchronise rought draft replacement for Sync

Uses the AppState

* [core] Synchronise as sequential for-comprehensions

* [core] Synchronise as nested for-comprehensions

* [sbt] thorp(root) depends on cli moduke

* [core] Synchronise extract methods

* [core] Synchronise rewritten

* [core] Synchronise generates actions

* [core] Remove AppState

* [core] ActionSubmitter remove unused implicit config parameter

* [cli] Program rewritten to use Synchronise

* [core] Synchronise useValidConfig accepts Logger implicitly

* [core] Synchronise reorder methods

* [core] Synchronise refactor errorMessages

* [core] SyncLogging logRunStart accepts explicit parameters

* [core] remove old Sync

* [core] Synchronise restore logRunStart

* [domain] Terminal add types to public methods and values

* [domain] UploadEventLogger force flush to terminal

Also make part of the progress message in green.

Not flushing, by using println, cause odd behaviour. Works on normal
terminal, but not great in an emacs terminal. Oh well.

* [core] SyncLogging.logRunFinished remove unused parameters

* [cli] Program restore final summary

* [storage-aws] remove logging from module

* [core] ThorpArchive replaces ActionSubmitter

ActionSubmitter implementation becomes UnversionedMirrorArchive

* [domain] cleaner upload progress messages

* [cli] Program remove unused Logger

* [cli] Program rename parameter

* [core] SyncSuite use Synchronise

* [sbt] Allow storage-aws to share core test classes

* [domain] LocalFile stop storing a lambda

The lambda breaks the equality test between LocalFile instances.

* [core] MD4HashData add missing base64 digest for leafFile

* [core] Synchronise drop DoNothing actions

* [core] SyncSuite update tests

* [sbt] aggregate modules from root module
2019-06-25 08:27:38 +01:00

96 lines
2.3 KiB
Org Mode

* Changelog
All notable changes to this project will be documented in this file.
The format is based on [[https://keepachangelog.com/en/1.0.0/][Keep a Changelog]], and this project adheres to
[[https://semver.org/spec/v2.0.0.html][Semantic Versioning]].
* [0.6.0] - 2019-??-??
** Added
- Abstraction layer encapsulating S3 as Storage (#76)
- Multiple copies of file are only uploaded once (#74)
* [0.5.0] - 2019-06-21
** Added
- Add ~thorp-lib~ module (#66)
- Enable running outside of sbt (#55)
- ~-d~, ~--debug~ flag for log messages (#60)
- Read config from ~.thorp.conf~ in source directory (#71)
- Read config from ~$HOME/.config/thorp.conf~ and ~/etc/thorp.conf~
(#73)
- Add ~--no-global~ and ~--no-user~ options (#50)
- Display any upload errors in summary report (#50)
** Changed
- Rename project as 'thorp' (#75)
- Suppress Transfer event messages (#64)
- Better error message when source not found (#51)
- Reduced logging (#59)
- Prevent AWS SDK from recalculating MD5 hash (#50)
** Fixed
- Error when calculating md5 hash for large files (#56)
** Removed
- ~-v~ verbosity flag (#63)
** Dependencies
- Upgrade ~aws-java-sdk-s3~ from ~1.11.569~ to ~1.11.570~ (#57)
* [0.4.0] - 2019-06-11
** Added
- Multi-part uploads
- ~--include~ to select files for synchronisation
- Upload progress bar
** Changed
- ~--filter~~ renamed to ~-exclude~~
** Fixed
- Fetch md5 hashes for all remote objects, not just the first 1000
- Handle when a file goes away between scanning and uploading
** Dependencies
- Removed ~reactive-aws-s3-{core,cats}~ and the AWS SDK v2 that it
depended upon in favour of the AWS SDK v1
- Upgrade ~aws-java-sdk-s3~ from ~1.11.560~ to ~1.11.569~
- Upgrade ~cats-effect~ from ~1.2.0~ to ~1.3.1~
- Upgade ~scalatest~ from ~3.0.7~ to ~3.0.8~
* [0.3.0] - 2019-05-23
** Added
- Filter to exclude files
* [0.2.0] - 2019-05-22
** Added
- Display count of the number of files uploaded
** Changed
- Improved performance by fetching all MD5 hashes from S3 in single
request at startup
* [0.1.0] - 2019-05-13
** Added
- Initial Release
- Synchronise files with an S3 bucket, using an MD5 hash to
identify when the file has changed and needs to be uploaded