plexus 5.0.0-dev.8 icon indicating copy to clipboard operation
plexus: ^5.0.0-dev.8 copied to clipboard


Plexus is an advanced, modular event framework, driven by the desire for a first-class, logging experience.

Changelog #

5.0.0-dev.8 #

  • RootModule._internalQueue is now a synchronous PatientStreamQueue so that added events fire before the code found immediately after the event is added.

5.0.0-dev.7 #

  • Upgrade to Flex v0.5.0
  • Update inline documentation
  • Create documentation using docsify
  • Implement source and zone in Event interface
  • Remove IHasError, IHasIsInit and IHasBlob from Event interface
  • Remove blob, error, stackTrace and init fields from RequestInputEvent
  • Merge ILog and Module interfaces with the name Module
  • Remove logRequestInput from Module interface
  • Add GitHub issue templates

5.0.0-dev.6 #

  • Fix various logging bugs
  • Move RootModule.defaultLevel to constants.dart
  • Export constants.dart
  • Fix Module constructors to *guarantee* that the root package is always an instance of RootModule
  • Vastly improved and example/

5.0.0-dev.5 #

  • More lint fixes

5.0.0-dev.4 #

  • Remove unused eventHandlers and internalEventHandlers getter and field from RootModule
  • Convert typedefs to generic function type aliases
  • Annotate overridden member add on RootModule
  • Use generic function type syntax for parameter main on RootModule.start
  • Remove typedefs already defined in Flex
  • Move all typedefs to typedef.dart
  • Export typedef.dart

5.0.0-dev.3 #

  • Loosen some dependency requirements

5.0.0-dev.2 - Events Handled #

  • Breaking Change: Remove eventHandlers and internalEventHandlers from Module
  • Breaking Change: Refactor StdModule to _Module
  • Fix formatting of stack trace wrapping
  • Add stream getter to Module
  • Add add(Event) function to Module
  • Change return type of Module.unsubscribe from Future<void> to FutureOr<void>
  • Move subscribe/unsubscribe/etc. implementations from _Module to ModuleCommon
  • Refactor _Module._ constructor to _Module
  • Update example/analysis_options.yaml to use Flex
  • Update description in pubspec.yaml and
  • Fix handling of event handlers (support for canceling out and duplication prevention possibly coming soon)

5.0.0-dev.1 - Flexibility is key #

This version consists primarily of breaking changes.

  • Move many files to new Flex package
    • expose library
    • lib/analysis_options.yaml
    • lang.dart
    • patient_stream_queue.dart
    • prompt.dart
    • state.dart
    • util.dart
    • extension files
  • RequestInputEvent and ILog.logRequestInput no longer accepts a long message or level
  • Improve log function documentation
  • Fix Localizations pipe operator logic
  • Rewrite Locale and Language
  • mockito is now a dev dependency instead of a dependency
  • test is now a dev dependency instead of a dependency
  • test_api is now a dependency

Please ignore the hideous versioning beyond this point.

4.0.0+5 #

  • Fix formatting of some documentation

4.0.0+4 #

  • Run dartfmt on all files

4.0.0+3 #

  • Fix formatting of some documentation

4.0.0+2 #

  • Add test to regular dependency section due to use of TestFailure within RootModule
  • Update test dependency to 1.9.4

4.0.0+1 #

  • Add MarkdownLint configuration file
  • Remove boilerplate StreamQueueObservable code and reimplement directly in PatientStreamQueue
  • Refactor most Locale constants
  • Add a few more languages, countries and locales
  • Document entire library
  • Migrate to RXDart 0.23
  • Add DartX dependency
  • Add Mockito dependency for testing stdout
  • Add example along with a launch configuration for it
  • Remove deprecated echoPrompt and securePrompt
  • Add echo parameter to prompt amd promptSync
  • Refactor dtfmt to iso8601NoTZ
  • Refactor Level(...) to Level._(...)
  • Rename all documentation references of alpha package names including Flow and Ocean to Plexus
  • Remove KernelSignal
  • RootModule now watches for some process signals
  • RootModule internal initialization functions are now private
  • Refactor a bunch of typedef
  • Refactor basically everything else
  • Logging *works* (some things are still broken. queue many bug reports)

There are probably some documentation comments that were copy-pasted early on and have not been update. If you come across these, please file a bug report

3.0.0+1 #

  • Complete core localization implementation

2.1.2+2 #

  • Minor documentation and syntax updates

2.1.2 #

  • Fix type check in logging
  • Add log test

2.1.1 #

  • Add debug flag to prompts which prints input when true

2.1.0 #

  • Fix formatting in
  • Change UnmodifiableMapMixin to be a mixin instead of abstract class

2.0.0 #

  • Yeah... just tons of changes. Sorry fellas.

Somewhere Between #

  • Primarily use package:io instead of dart:io
  • Prompting is now asynchronous by default

1.0.0 #

  • Where it all began
pub points


verified publisher

Plexus is an advanced, modular event framework, driven by the desire for a first-class, logging experience.

Repository (GitHub)
View/report issues


Icon for licenses.unknown (LICENSE)


async, collection, dart_numerics, dartx, flex, intl, io, logging, meta, quiver, rxdart, test_api, tuple


Packages that depend on plexus