Changelog for ron-0.12
Changelog
All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog and this project adheres to Compatible Versioning.
Unreleased
0.12 - 2021-07-15
Added
- Support for GHC 8.10.
Fixed
- Internal parser helper (<+>)
0.11 - 2020-06-14
Added
- Support for GHC 8.8.
0.10 - 2019-10-07
Added
- Instances of
GenericandHashableforObjectRef
0.9 - 2019-09-06
Added
- A useful message when UUID parsing fails
Changed
- Renamed
ObjecttoObjectRef
Removed
- Types
NetworkSim,ReplicaSim, functionsrunNetworkSim,runReplicaSim. UseNetworkSimT,ReplicaSimT, functionsrunNetworkSimT,runReplicaSimTinstead.
0.8 - 2019-08-10
Added
- Type alias
Payload = [Atom] - Associated type
ReplicatedAsObject.Rep - Function
correct
Changed
- Renamed
ObjectStatetoObjectFrame. - Simplified
Errortype - Type
StateChunkis split into two new:StateChunkis tagged on Haskell-type-level with its RDTWireStateChunkhas RDT as a field, isomorphic to the oldStateChunk
Removed
- Method
ReplicatedAsObject.objectOpType
0.7 - 2019-07-26
Added
- Instance
ReplicaClock WriterT. - Instance
MonadFail ReplicaSimT. - Module
RON.Semilattice:- Class
Semilattice. - Class alias
BoundedSemilattice.
- Class
Changed
- Now
ObjectStatekeeps a typed reference to an object with state frame attached, andObjectis just a typed UUID -- a typed reference to an object in a state frame passed in MonadState context.
Removed
ObjectPartas not used in RON-RDT 2.1.- Support of space inside text UUID, as removed in RON 2.1.
0.6 - 2019-03-01
Added
RON.Error:liftEitherliftEitherString
0.5 - 2019-02-04
Added
RON.UUID.liftNamefunction to create name UUIDs in compile time.RON.Util.ByteStringLtype.RON.Errormodule with unified pretty errors.- Organize
Replicated,ReplicatedAsPayload, andReplicatedAsObjectin class hierarchy. - Add
ORSet.removeValueandremoveRefimplementation. - Op "patterns" and patterns.
Removed
- Type alias
ObjectIdsince objects are identified by UUID.
Changed
- Extracted
ron-storagepackage. - Extracted
ron-schemapackage. - Extracted
ron-rdtpackage. - Switched from
Either String atoMonadError String m => m ain failable procedures. ORSet.addRefnow adds item's frame, too.ORSet.addNewRefnow returns the reference to the freshly created object.- Change
StateFramekey to UUID since objects are identified by UUID. - Renamed
RawOptoClosedOpaccording to the fresh spec.
Fixed
- Error handling in Boole decoder.
0.4 - 2019-01-09
Added
- Schema
enumdeclaration. docIdFromUuid.OnDocumentChangedis called each time when any document is changed.
Changed
- Made GHC 8.6 default.
Removed
- Schema embedded DSL helpers:
atomInteger,atomString,boole,char,field,option,orSet,rgaString,structLww,versionVector.
Fixed
RGA.editbug with re-adding deleted items (#39).
0.3 - 2018-12-05
Added
- Encode/decode EpochTime.
- EDN-based schema DSL.
Removed
RON.Storage.createVersionfrom public API.NFDatainstances.
0.2 - 2018-11-20
Added
- Schema boole type.
- RON.Storage and submodules are moved from ff project.
- RON.Schema is now re-exported via RON.Schema.TH.
Changed
- Renamed UUID field "schema" to "version", according to changes in the specification.
- RGA: sequential UUIDs on initialization.
- Optimized
Base64.isLetter. - Extend
UUID.mkNameto accept any monad. - Renamed
MonadStoragemethodslist...->get... - Renamed
RON.Storage.saveDocument->createDocument
Removed
RON.Storage.uuidToFileNameas it has no sense as an abstractionRON.Storage.IO.runStorageTwithStorageT
0.1 - 2018-11-08
Added
- Package
ron- RON-text format
- RON-binary format
- RON-RDT:
- LWW
- RGA
- OR-Set
- VersionVector
- RON-Schema
- RON-Schema TemplateHaskell code generator