Releases: p2panda/p2panda
Releases Β· p2panda/p2panda
v0.8.1
v0.8.0
v0.7.1
v0.7.0
Changed
- Validate an operation's schema id matches the target document's in
publish
#486rs
- Introduce
SchemaName
,SchemaDescription
andSchemaFields
structs #481rs
- Add
commit
method toDocument
for applying operations incrementally #485rs
π₯ - Introduce
api
module which publicly exportspublish
andnext_args
#483rs
- Add schema name tests when deserializing plain operations #480
rs
- Introduce typed errors in
domain
andvalidation
modules #478rs
- Refactor storage API: Rename methods, remove
StorageProvider
and document "caching" layers #469rs
π₯ - Remove
VerifiedOperation
#465rs
- Better docs for
Document
#470rs
- Remove
DocumentMeta
#472rs
- Update dependencies for Rust and TypeScript #476
rs
js
v0.6.0
v0.5.0
Added
MemoryStore
in memory implementation of storage traits #383rs
- Helpers and conversion implementations to create schemas and operations more easily #416
rs
- Untagged operation format, schema validation, new operation and entry API #415
rs
- Serde trait implementations for
DocumentId
and all relations #446rs
- Introduce new low-level API for
p2panda-js
, moveSession
into new repository #447js
Changed
- Refactor mock
Node
implementation to useStorageProvider
traits #383rs
- Deserialize from string and u64 for
LogId
andSeqNum
#401rs
- Add latest_log_id method to
LogStore
#413rs
- Remove generic parameters from
StorageProvider
#408rs
- Consistent
as_str
andto_string
functions, introduceHuman
trait withdisplay
method for short strings #389rs
- Update
Human
impl forSchemaId
andDocumentViewId
#414rs
- Deprecate mock
Node
andClient
structs #437 - Introduce
validation
anddomain
modules totest_utils/db
#437 - Introduce new node and browser builds for JavaScript, export TypeScript definitions #429
js
- Refactored benchmarks to include schema validation #430
rs
- Replace
@apollo/client
withgraphql-request
#441js
- Expose
from_bytes
forEncodedOperation
andEncodedEntry
#445rs
- Introduce new feature flags, rename
testing
totest-utils
#448rs
- Replace
lazy_static
withonce_cell
#449rs
- Build ES Module, CommonJS, NodeJS and UMD modules with rollup #450
js
Fixed
v0.4.0
Added
Document
for sorting and reducing a graph ofOperations
#169rs
π₯- Derive
Ord
andPartialOrd
forLogId
#201rs
- Rename
SchemaBuilder
toCDDLBuilder
#226rs
SchemaView
andSchemaFieldView
for representing materialised system documents #226rs
relation
&relation_list
field type #205rs
js
SchemaId
enum for identifying different schema types #221rs
- CDDL for schema_v1 and schema_field_v1, use
cddl-cat
instead ofcddl
#248rs
Schema
for representing application schema #250rs
- Performance benchmarks for entry and operation encoding/decoding #254
rs
- Move
DocumentId
fromDocmentView
intoDocument
#255rs
- Introduce
OperationId
to increase type safety around uses ofHash
#272rs
StorageProvider
and associated traits for implementing storage solutions #274rs
π₯- Implement
Display
trait for various structs #281rs
- Implement document view id hash as a limited-size identifier for document views #277
rs
- Additional methods on
EntryStore
needed for replication #310rs
- Introduce
DocumentViewHash
, implementHash
forDocumentViewId
#313rs
- Introduce
DocumentViewFields
&DocumentViewValue
and otherDocument
additions #319rs
- Storage traits for
Operation
#326rs
- Implement schema hash id as a unique identifier for schemas
rs
#282rs
Graph
method for selecting sub-section of graph #335rs
- Storage traits for documents #343
rs
- Materialise a document at a specific document view #337
rs
- Static definitions of system schemas and other updates for schema provider in aquadoggo #365
rs
Changed
Instance
renamed toDocumentView
#169rs
- Fix letter casing in operations #230
rs
js
- Fixes and refactorings around schema #233
rs
- Split
Relation
into pinned and unpinned type #235rs
- Separate
cddl
fromschema
more clearly #239rs
- Turn schema field in operations into a pinned relation #256
rs
- Implement
OperationValue
variants for all relation types #260rs
js
- Support all
Relation
flavours incddl
module #259rs
- Impl
IntoIter
trait forPinnedRelation
,RelationList
andDocumentViewId
#266rs
- Improve error reporting when adding operation fields #262
rs
js
- Update mock node API #286
rs
- Refactored graph module to be generic over graph node keys and other graph improvements #289
rs
- Require sorted serialisation of document view ids #284
rs
- Introduce new application schema id format #292
rs
- Update spelling of system schema ids #294
rs
- Update
Schema
implementation to make use of newSchemaId
#296rs
- Require schema field definitions to specify a specific schema #269
rs
π₯ - Methods for getting string representations of
OperationValue
field type andOperationAction
#303rs
- Additional constructor method for
OperationWithMeta
#322rs
- Minor method renaming in
EntryStore
#323rs
- Require storage provider errors to be thread-safe #340
- Make
previous_operations
aDocumentViewId
#342rs
- Restructure / refactor
test_utils
and place behindtesting
flag #344rs
- Update
openmls
crate tov0.4.1
#336rs
- Replace
OperationWithMeta
withVerifiedOperation
#353rs
- Remove test-data generator from
test_utils
#373rs
- Implement
OperationStore
on test providerSimplestStorageProvider
#361rs
- Improve validation in
EntrySigned
constructor #367rs
Session
interface using GraphQL #364js
- Updated dependencies, remove
automock
crate #379rs
Fixed
- Fix determination of field types in p2panda-js #202
js
- Fix equality of document view ids by sorting before comparison #284
js
- Pin all versions in
Cargo.toml
to avoid unexpected crate updates #299rs
- Fix document test needing
testing
feature to be activated #350rs
Everything burrito
- Easier to read CDDL schema error strings #207
rs
- Force cache cleanup to fix code coverage report #231
- Split up overly long
operation.rs
file #232rs
- Extend test coverage for
OperationFields
#236rs
- Further develop our best practices for writing documentation #240
rs
- Test
debug
macro calls in Github CI #288rs
- Move private module doc strings into public places #339
rs
- Add
mockall
crate and create mocks forEntryStore
andLogStore
#314rs
- Generate documentation with TypeDoc for
p2panda-js
#359js
v0.3.0
Added
SecureGroup
for key negotiation in groups and message protection #130rs
π₯SchemaBuilder
andSchema
structs for working with CDDL definitions #78rs
test_utils
module containingrstest
fixtures, mockNode
andClient
structs, test data helper forp2panda-js
#116rs
- Reconciliation logic /w DAG for materialisation module #129
rs
Instance
which encapsulates the materialised view of a reduced collection ofOperations
#161rs
- Retrieve unsigned bytes to verify
Entry
signatures manually #197rs
Changed
- Adopt Blake3 hashes, which bring us better performance and shorter identifiers #139
rs
π₯ - Update
ed25519
crate to1.3.0
and deprecatedSignature
API #137rs
- Use new
Operation
naming which replacesMessage
#156 BREAKINGrs
js
- Remove distinction of system and application log ids #154
rs
- Update JavaScript dependencies, remove deprecated eslint-loader #155
js
- Split utils modules in
test_utils
into utils.rs and constants.rs #157rs
- Use traits for validation methods in
Schema
#160rs
- Add
previous_operations
field inOperation
#163 BREAKINGrs
js
- Introduce
OperationWithMeta
struct #163rs
- Update API and mocks to reflect yasmf hash and document flow changes #165 BREAKING
rs
js
- Change to new
rustdoc::missing_doc_code_examples
linter name #168rs
- Update Rust dependencies #171
rs
- Convert JavaScript configuration files to TypeScript or JSON #172
js
- Implement
Hash
,Eq
andPartialEq
traits for several core data types #178rs
- Use
ciborium
for cbor de/serialization #180rs
- Break
wasm
module down into sub-files, add wasm target tests #184rs
- Changes to
mocks
module intest_utils
#181rs
- Implement logging for mock node in
test_utils
#192rs
- Support
u64
andi64
integers, removesqlx
#177rs
js
Campfires and boiling pots to sit around
v0.2.1
v0.2.0
Added
Relation
message values #33rs
- Atomic data types like
Message
,Entry
,LogId
,SeqNum
, etc. #23rs
π₯ sqlx
Type traits to atomic structs, introducedb-sqlx
feature flag #43rs
serde
serialization and deserialization for all atomic structs #42rs
- Implement method for iterating over MessageFields #68
rs
- TypeScript API that wraps wasm bindings, introduce OpenRPC specification #67
js
π₯ - Methods to update and delete instances #114
js
π₯
Changed
- Change all result types to return
std::Result
and custom p2panda-rs errors #41rs
- Move WebAssembly related code into own
wasm
module #49rs
- Own module for encoding, decoding and signing entries #62
rs
- General module restructure #69
rs
- Add support for different message values in WebAssembly #71
rs
- Extend
jserr
macro to support custom error messages #75rs
- Use published
bamboo-rs-core
crate #94rs
p2panda-js
directory restructure #102js
- Use Jest as test framework #104
js
- Clean up OpenRPC generate script #109
tests
- Refactor and simplify WebAssembly build pipeline #105
rs
js
- Revisit singleton logic of WebAssembly import #110
js
- Move WebAssembly methods of KeyPair into dedicated module #111
rs
Fixed
- Fix wrong offset of skiplinks #46
rs
- Assure deterministic hashing by ordering of message keys 84a583
rs
- Remove
BigInt
to support WebKit #66rs
- Properly import entry tests module #81
rs
- Correct error in
panda_queryEntries
OpenRPC specification result #108tests