Skip to content

🚀Preview Release - v1.0.0-preview.16

Pre-release
Pre-release
Compare
Choose a tag to compare
@github-actions github-actions released this 14 Sep 09:12
· 40 commits to preview since this release
d5ca1ca

Carbonate Preview Release Notes - v1.0.0-preview.16

Quick Reminder

As with all software, there is always a chance for issues and bugs, especially for preview releases, which is why your input is greatly appreciated. 🙏🏼

New Features ✨

  1. #150 - Add fluent API to help improve the readability and setup of reactable and subscription setup.
    • The fluent API types are located in a new namespace named Carbonate.Fluent. Use the types ReactableBuilder and SubscriptionBuilder.

Breaking Changes 🧨

  1. #150 - Introduced many public API improvements related to parameter order, class, interface, and param names. This was done to help improve the understanding and usage of the API. Updating your code base is pretty straightforward.
    • Renamed the TDataIn generic params in the entire codebase to TIn.
    • Renamed the TDataOut generic params in the entire codebase to TOut.
    • Renamed the Carbonate.UniDirectional namespace to Carbonate.OneWay.
    • Renamed the Carbonate.BiDirectional namespace to Carbonate.TwoWay.
    • Renamed the Carbonate.Core.UniDirectional namespace to Carbonate.Core.OneWay.
    • Renamed the Carbonate.Core.BiDirectional namespace to Carbonate.Core.TwoWay.
    • Renamed the Carbonate.BiDirectional.IPullReactable interface to Carbonate.TwoWay.IPushPullReactable.
    • Renamed the Carbonate.BiDirectional.PullReactable class to Carbonate.TwoWay.PushPullReactable.
    • Renamed the Carbonate.BiDirectional.IPullable interface to Carbonate.TwoWay.IPushablePullable.
    • Renamed the ReceiveReactor constructor param named onReceiveData to onReceive.
    • Renamed the non-directional RespondReactor constructor param named onRespondData to onRespond.
    • Renamed the one-way RespondReactor<TDataIn> constructor param named onRespondData to onReceiveRespond.
    • Renamed the two-way RespondReactor<TDataOut, TDataIn> constructor param named onRespondData to onReceiveRespond.
    • Renamed the non-directional IReceiveReactor interface to IReceiveSubscription.
    • Renamed the non-directional ReceiveReactor class to ReceiveSubscription.
    • Renamed the one-way IReceiveReactor<TDataIn> interface to IReceiveSubscription<TIn>.
    • Renamed the one-way ReceiveReactor<TDataIn> class to ReceiveSubscription<TIn>.
    • Renamed the one-way IRespondReactor<TDataIn> interface to IRespondSubscription<TIn>.
    • Renamed the one-way RespondReactor<TDataIn> class to RespondSubscription<TIn>.
    • Renamed the one-way IRespondReactor<TDataIn, TDataOut> interface to IRespondSubscription<TIn, TOut>.
    • Renamed the one-way RespondReactor<TDataIn, TDataOut> class to RespondSubscription<TIn, TOut>.
    • Renamed the IReactor interface to ISubscription.
    • Renamed the IReactable.Reactors property to IReactable.Subscriptions.
    • Renamed the IReactable.Subscribe() method parameter named reactor to subscription.
    • Renamed the ReactableBase.Reactors property to ReactableBase.Subscriptions
    • Renamed the ReactableBase.Subscribe() method parameter named reactor to subscription.
    • Renamed ReactableBase class generic parameter from T to TSubscription.
    • Renamed the non-directional ReceiveSubscription constructor parameter eventId to id.
    • Renamed the one-way RespondSubscription<TOut> constructor parameter responded to id.
    • Renamed the two-way RespondSubscription<TIn, TOut> constructor parameter responded to id.
    • Renamed the SubscriptionBase constructor parameter eventId to id.
    • Swapped the parameter positions for parameters name and onReceive for the non-directional ReceiveSubscription constructor.
      • Used to be the ReceiveReactor class
    • Swapped the parameter positions for parameters name and onReceive for the one-way ReceiveSubscription<TIn> constructor.
      • Used to be the ReceiveReactor<TDataIn> class
    • Swapped the parameter positions for parameters name and onReceive for the one-way ReceiveSubscription<TIn> constructor.
      • Used to be the ReceiveReactor<TDataIn> class
    • Swapped the parameter positions for parameters name and onRespond for the one-way RespondSubscription<TOut> constructor.
      • Used to be the RespondReactor<TDataOut> class
    • Swapped the parameter positions for parameters name and onReceiveRespond for the two-way RespondSubscription<TIn, TOut> constructor.
      • Used to be the RespondReactor<TDataIn, TDataOut> class
    • Set the non-directional ReceiveSubscription class constructor parameter named onReceive to be non-nullable.
      • Used to be the ReceiveReactor class
    • Set the one-way ReceiveSubscription<TIn> class constructor parameter named onReceive to be non-nullable.
      • Used to be the ReceiveReactor<TDataIn> class
    • Set the one-way RespondSubscription<TOut> class constructor parameter named onRespond to be non-nullable.
      • Used to be the RespondReactor<TDataOut> class
    • Set the two-way RespondSubscription<TIn, TOut> class constructor parameter named onReceiveRespond to be non-nullable.
      • Used to be the RespondReactor<TDataIn, TDataOut> class

Dependency Updates 📦

  1. #149 - Updated dependency benchmarkdotnet to v0.13.8
  2. #147 - Updated actions/checkout action to v4
  3. #146 - Updated kinsondigital/infrastructure action to v13
  4. #145 - Updated dependency microsoft.net.test.sdk to v17.7.2
  5. #143 - Updated dependency microsoft.codeanalysis.netanalyzers to v7.0.4
  6. #141 - Updated dependency fluentassertions to v6.12.0
  7. #139 - Updated dependency microsoft.net.test.sdk to v17.7.1
  8. #138 - Updated kinsondigital/infrastructure action to v12
  9. #137 - Locked version of MOQ.
  10. #135 - Updated kinsondigital/infrastructure action to v11
  11. #133 - Updated dependency microsoft.net.test.sdk to v17.7.0
  12. #132 - Updated dependency benchmarkdotnet to v0.13.7

Other 🪧

  1. #151 - Fixed an issue with the sync status check bot.
  2. #142 - Adjusted workflow triggers.
  3. #130 - Adjusted release workflow input.
  4. #126 - Improved readme.