Skip to content

Releases: yousif-khalil-abdulkarim/daiso-core

v0.26.0

20 Feb 01:36
694a54e
Compare
Choose a tag to compare

Minor Changes

  • a93ee80: The Pipeline class invoke method can now take function, async function, LazyPromise and reguler value
  • 70e2494: Changed IInvokableObject method name
  • b34c3dc: The LazyPromise defer method now accepts callbacks onSuccess, onFailure, and onFinally.
  • 70e2494: Removed IEventListenerObject and EventListener types.
  • 84e333c: Added new Pipeline utility class makes it easy to chain multiple functions and IInvokableObject instances together. Each function or object in the pipeline can inspect or modify the input as it passes through. The Pipeline class is immutable, so you can safely extend or modify it without causing issues.
  • 0cc289d: Changed the serialization, deserialization of the TimeSpan class

v0.25.0

18 Feb 21:13
e73c0a4
Compare
Choose a tag to compare

Minor Changes

  • a4349e5: Renamed ILockListener contract to ILockListenable.
  • a4349e5: Renamed ICacheListener contract to ICacheListenable.
  • 92d7dd3: The LockProvider class and LockProviderFactory class uses MemoryEventBusAdapter by default now.
  • 76063a4: Renamed IEventListener contract to IEventListenable.
  • 89aa51e: Added 2 new methods for ILock contract, acquireBlocking and runBlocking.
    They retry acquiring the lock at a set interval until the timeout is reached."
  • 76063a4: Renamed Listener type to EventListener
  • 76063a4: Enhanced the IEventListenable contract to support both function, object literal and class instance listeners, providing greater flexibility in event handling.
  • afa57c7: Added new method asPromise to the IEventBus. The asPromise method returns LazyPromise objecet that resolves once the BaseEvent is dispatched.

Patch Changes

  • 57e4bb5: Updated documentation
  • 92d7dd3: The Cache class and CacehFactory class uses MemoryEventBusAdapter by default now.

v0.24.0

17 Feb 04:49
e5bbb78
Compare
Choose a tag to compare

Minor Changes

  • 1f1b344: Renamed function registerEventBusErrors to registerEventBusErrorsToSerde.
  • 78bad79: Made ListCollection and IterableCollection class serializable and deserializable.
  • 1f1b344: Renamed function registerCacheErrors to registerCacheErrorsToSerde
  • 8253d62: Changed Lock class so it now doesn't implement ISerdeTransformer contract.
  • fadaaeb: - Changes
    • Converted the project to ESM only module.
    • Removed the main entrypoint and multiple entry points to the project via package.json exports field.
  • 4e4b1b8: Added new Serde class that implements IFlexibleSerded and that can be derivied from IFlexibleSerdeAdapter.
  • 1f1b344: Renamed function registerCacheEvents to registerCacheEventsToSerde
  • 66215ea: The ISerdeTransformer contract name field can now be bot a string and string[].

Patch Changes

  • 7055619: Improved lock component documentation
  • 8253d62: Fixed a bug with Lock class serialization and deserialization
  • 1f1b344: Added new functions registerCollectionsToSerde and registerCollectionErrorsToSerde

v0.23.0

14 Feb 13:10
24b66f8
Compare
Choose a tag to compare

Minor Changes

  • 9160158: Renamed UnownedExtendLockError to UnownedRefreshLockError
  • ebd0666: Removed IDatabaseLockAdapter inheritance from IDeinitizable and IInitizable to simplify the contract.
  • 4a4b537: Removed the ISerdeRegistrable contract
  • ebd0666: Removed isLocked method and getRemainingTime method from ILockAdapter.

Patch Changes

  • 4a4b537: Updated READNE.md and package.json.
  • ebd0666: - Lock class
    • Fixed a bug in acquireOrFail, it now correctly throws an error.

v0.22.2

10 Feb 00:04
d566a11
Compare
Choose a tag to compare

Patch Changes

  • e456cbe: Updated READNE.md and package.json.

v0.22.1

08 Feb 18:19
ed7709d
Compare
Choose a tag to compare

Patch Changes

  • c2a6a79: Added more documentation for the lock component

v0.22.0

08 Feb 17:50
7542868
Compare
Choose a tag to compare

Minor Changes

  • ecabc49: - Changes
    • Remove static settings methods and settings builder classes from:
      • EventBus class
      • EventBusFactory class
      • MemoryEventBusAdapter class
      • RedisPubSubEventBusAdapter class
  • 1c41caf: - New features
    • Added new ILock UnexpectedLockErrorEvent that will dispatched when error occurs.
    • Added event listeners to ILockProvider, enabling monitoring of lock events from multiple locks.
    • Changes
      • Made all the ILock events defered when dispatched.
  • 1821d46: - New features
    • Added new ICache UnexpectedCacheErrorEvent that will dispatched when error occurs.
    • Changes
      • Made all the ICache events defered when dispatched.
  • 9a0c764: - Changes
    • Remove static settings methods and settings builder classes from:
      • Cache class
      • CacheFactory class
      • MemoryCacheAdapter class
      • MongodbCacheAdapter class
      • LibsqlCacheAdapter class
      • SqliteCacheAdapter class
      • RedisCacheAdapter class
  • 9ef0a81: - New features
    • Added distributed lock.
      • Contracts
        • Added IDatabaseLockAdapter
        • Added ILockAdapter
        • ILockProvider
        • ILockProviderFactory
        • ILock
      • Derivables
        • Added LockProvider class.
        • Added LockProviderFactory class.
      • Adapter
        • LibsqlLockAdapter
        • MemoryLockAdapter
        • MongodbLockAdapter
        • RedisLockAdapter
        • SqliteLockAdapter
  • 0dfe16c: - Changes
    • Simplified the cacheAdapterTestSuite
    • Simplified the cacheTestSuite
  • 8fa218c: - Changes
    • Simplified the eventBusAdapterTestSuite
    • Simplified the eventBusTestSuite
  • e2f6d79: - Changes
    • IAsyncCollection: You can now pass in LazyPromise as default value in the following methods.
      • firstOr
      • lastOr
      • beforeOr
      • afterOr
    • Cache: You can now pass in LazyPromise as default value in the following methods.
      • getOr
      • getOrAdd

Patch Changes

v0.21.1

31 Jan 13:12
9fc74b9
Compare
Choose a tag to compare

Patch Changes

  • c3aaf06: - Fixed bugs with LazyPromise class
  • ccf442d: - Removed exists mehtod from the ICacheAdapter contract and all classes that implement the contract.

v0.21.0

28 Jan 16:22
8234a86
Compare
Choose a tag to compare

Minor Changes

  • afdd280: - Removed shouldRegisterEvents and shouldRegisterErrors from CacheSettings.
    • Removed shouldRegisterErrors from EventBusSettings.
  • 81396af: - Updated the documentation and made CacheSettings.eventBus field required.

v0.20.0

28 Jan 13:18
fdc148a
Compare
Choose a tag to compare

Minor Changes

  • 3dfbd75: - Updated the ICacheAdapter contract: The withGroup method now accepts only a string as its argument.
    • Updated the IEventBusAdapter contract: The withGroup method now accepts only a string as its argument.