Change Log for keripy
2.0.0-dev6
*** peer.exchange has been replaced with a combination of either core.eventing.exchange or peer.specialExhange. peer.specialExchange supports the embeds and diger parameters and returns a tuple of (exn, atc) exn Serder instance and atc attachments bytearray. Whereas eventing.exchange just returns the exchange Serder instance.
*** peer.exchanging.exchange normalizing call signature with core.eventing.exchange so that all KERI message function call signatures are aligned. currently peer.exchanging.exchange uses a differe signature. So to better support v2 with backwards compat for v1 want one exchange function. parameters changes: date -> stamp, recipient->receiver payload->attributes No longer has embeds and diger this is for specialExchange return type is no longer tuple just SerderKERI
*** peer.exchanging.specialExchange now handles the special exchange with embeds and or diger use this for v1 compatibility with old exchange.
*** BaseHab and subclasses .incept alias for .make promoted to default and .make is alias. Future deprecate .make
*** Kever .init and .update refactored signature to use delsner and delsger instead of delnum (which was not per convention) and deldiger to better match new convention for Number and Diger but name indicates sequence number and said diger
Kevery.processEvent signature change
delnum is now delsner short for delegating sequence number
deldiger is now delsger short for delegating said diger
app.habbing.BaseHab.makeOwnEvent has been changed to .msgOwnEvent because
it better fits what is does is to messagize its own event. .makeOwnEvent is now deprecated
app.habbing.BaseHab.makeOwnInception has been change to .msgOwnInception
because it better fits what is does is to messagize its own inception event. .makeOwnInception is now deprecated
app.habbing.BaseHab.makeOtherEvent has been changed to .msgOtherEvent because
it better fits what is does is to messagize some other event. .makeOtherEvent is now deprecated
core.eventing.messagize call signature changes: piplined parameter is replaced
with framed and the default is framed=False. This is because the Parser meaning of piplined has evolved whereas messagize no longer tracks that meansing so framed is now the accurated parameter. Added other parameters to make it support verison 2 BasHab methods that call messagize have pass through parameters with same semantics
OnSuber and OnIoDupSuber remap of method names
change method names to shadow super class methods to avoid confusion and reduce potential errors
WASM Support.
Added keri.db.webdbing.py with support for IndexedDB in wasm pyodide pyscript. as a plugin replacement for LMDB (see keri.db.webdbing.WebDBer)
2.0.0-dev5
Backwards breaking interface changes
Changes to call signatures that will break dependent libraries
keri.vdr subpackage
combined viring into eventing to remove hard circular import now that its a subpackage using init.py moved dataclasses to vdring as shared imports across vdr. fixed circular imports with agenting and app subpackage using dynamic imports
keri.db.subing
SuberBase.getItemIter and subclasses is changed to .getTopItemIter this is to clearly indicate that it iterates over the top branch given by keys and uses the topive parameter.
keri.db.koming
KomerBase.getItemIter and subclasses is changed to .getTopItemIter this is to clearly indicate that it iterates over the top branch given by keys and uses the topive parameter.
keri.db.dbing
Changed LMDBer.delval to LMDBer.remval
keri.core.scheming.py
Replaced deprecated jsonschema.RefResolver with referencing.Registry in
CacheResolver.resolver(). The method now returns a referencing.Registry
instance instead of a jsonschema.RefResolver instance.
Requires jsonschema >= 4.18.0 and the referencing package.
Users on older versions of jsonschema must upgrade.
JSONSchema.verify_json() now passes registry= instead of resolver= to
jsonschema.validate().
keri.core.routing.py
Changed Router.dispatch(self, serder, saider, ...) to dispatch(self, serder, diger, ...).
Changed Router.processRouteNotFound(self, *, serder, saider, ...) to processRouteNotFound(self, *, serder, diger, ...).
Changed Revery.processReply local variable from saider to diger.
keri.core.eventing.py
Changed Kevery.processReplyEndRole(self, *, serder, saider, ...) to processReplyEndRole(self, *, serder, diger, ...).
Changed Kevery.processReplyLocScheme(self, *, serder, saider, ...) to processReplyLocScheme(self, *, serder, diger, ...).
Changed Kevery.processReplyKeyStateNotice(self, *, serder, saider, ...) to processReplyKeyStateNotice(self, *, serder, diger, ...).
Renamed local diger to ksr_diger in processReplyKeyStateNotice to avoid shadowing the parameter.
Changed Kevery.processReplyAddWatched(self, *, serder, saider, ...) to processReplyAddWatched(self, *, serder, diger, ...).
keri.app.oobiing.py
Changed Oobiery.processReply(self, *, serder, saider, ...) to processReply(self, *, serder, diger, ...).
keri.vdr.eventing.py
Changed Tvy.processReplyRegistryTxnState(self, *, serder, saider, ...) to processReplyRegistryTxnState(self, *, serder, diger, ...).
Changed Tvy.processReplyCredentialTxnState(self, *, serder, saider, ...) to processReplyCredentialTxnState(self, *, serder, diger, ...).
Removed redundant diger = saider alias lines in both functions.
keri.db.escrowing.py
Changed Broker.processEscrowState dispatch call from processReply(saider=diger, ...) to processReply(diger=diger, ...).
keri.app.grouping.py
Changed complete(self, prefixer, seqner, saider=None) to complete(self, prefixer, number, diger=None).
Renamed seqner and saider parameter to number and diger to match the actual type (Number, Diger) being
passed. All callers functions in test_grouping.py are updated.
Fixed stale docstring in complete(): saider (Saider) → diger (Diger).
Renamed saiders/saider → digers/diger local variables in Counselor.get() (meids sub-DB returns Diger instances).
2.0.0-dev5
Backwards breaking interface changes
Changes to call signatures that will break dependent libraries
keri.app.delegating.py
Changed start(self, ghab, prefixer, seqner, saider) to start(self, ghab, prefixer, number, diger).
Changed startCounselor(self, hab, prefixer, seqner, saider) to startCounselor(self, hab, prefixer, number, diger).
Renamed seqner and saider parameter to number and diger to match the actual type (Number, Diger) being
passed. All callers for both functions in test_grouping.py, confirm.py, incept.py, join.py, rotate.py credentialing.py and interact.py updated.
2.0.0-dev5
Backwards breaking interface changes
Changes to call signatures that will break dependent libraries
keri.app.delegating.py
Changed complete(self, prefixer, seqner, diger=None) to complete(self, prefixer, number, diger=None).
Renamed seqner parameter to number to match the actual type (Number) being
passed. All callers in rotate.py, incept.py, and grouping.py updated.
2.0.0-dev5
Backwards breaking interface changes
Changes to call signatures that will break dependent libraries
keri.core.eventing.Kevery.processEvent
Changed keyword parameter delseqner (Seqner) to delnum (Number) in the function
signature and all internal call sites. External callers that previously passed
delseqner must now pass delnum with a Number instance.
2.0.0-dev5
Backwards breaking interface changes
Changes to call signatures that will break dependent libraries
keri.core.eventing.py
Changed fetchTsgs(db, saider, snh) to fetchTsgs(db, diger, snh).
Renamed saider parameter to diger to match the actual type (Diger) being
passed. All callers in routing.py, habbing.py, and escrowing.py updated.
2.0.0-dev1
Backwards breaking interface changes
Changes to call signatures that will break dependent libraries
keri.help.helping.py
Changed nonStringIterable() to isNonStringIterable() Change nonStringSequence() to isNonStringSequence() Added Metaclasses NonStringIterable and NonStringSequence
keri.core.coring.py
Changed Pather class to support both relative and aboslute paths Now supports relative paths in Base64 using excape sequence. More thorough checks for valid paths. Supports both paths for pathed material and paths for routes and return routes in KERI messages. Init supports path as ‘/’ delimited string that if otherwise the path parts are Based64 will compacting encode as StrB64 variable length. If not will encode as Bytes variable length. No longer is Pather a subclass of Bexter so .bext is no longer a property .path property returns a path string this is a breaking change .parts property returns a list of path parts as either relative or absolute depending on what the actual path expression .rparts property returns a list of path parts as a relative path On init relative (bool) False forces path to be absolute Relative True allows relative path if expressed as relative. On init pathive(bool) True forces B64 compliant path parts raises exception if not. False allows non B64 path parts.
Changed Dicter Class. made randomNonce a statice method. ._randomNonce instead of module method since only used inside Dicter Changed init parameter sad to dicter since more accurate.
keri.core.serdering.SerderACDC
Changed .regi property to .regid to avoid confusion with regd regk and other reg and to avoid the confusion of i meaning a AID, whereas regid is a said its an identifier for registry but not an aid. Since regd is already used to mean something else, we picked the regid which was not previously used anywhere.
keri.core.streaming now keri.core.annotating
Due to circular imports moved Streamer class to keri.core.signing and renamed streaming.py and test_streaming.py to annotating.py and test_annotating from keri.core import Streamer still works.
keri.core Tierage and Tiers
moved Tierage and Tiers defintions from keri.core.coring to keri.core.signing where they more naturally belong (not used in coring) from keri.core import Tiers still works