PackageTrack
Sign in Get early access

steward

Steward is a CLI and Framework for building expressive web servers in Dart.

0.4.0 4.5K downloads/mo #3975 most downloaded on pub.dev pyrestudios/steward

What this package is like to depend on

Last release 3 years ago

no release in 18 months

Release timing varies

gaps range from 1 weeks to 7 months

Nearly every release is documented

notes for 25 of 26 stable releases

Nothing withdrawn

no release was ever pulled

5 years old

26 releases · first in 2021

0 releases in the last 12 months

see the full history below

Release timeline

26 releases · Dec 2021 to Oct 2023
2022 2023 2024 2025 2026
Release Pre-release

Releases

latest 26
  1. 0.4.0 23 Oct 2023
    Release notes

    Added

    • Steward Context
    • AoT compilation support
    • URI property on Request

    Removed

    • Controllers
    • Reflection-based routing
    Open source →
  2. 0.3.2 15 Mar 2023
    Release notes

    What's Changed

    New Contributors

    Full Changelog: v0.2.8...v0.3.2

    Open source →
    Release notes

    Added

    • Support for .staticFiles('/my-static-files') on the router.

    Fixed

    • Several inconsistencies with type names that deviated from the dart standard.
    Open source →
  3. 0.3.1 01 Oct 2022
    Release notes

    Added

    • Support for middlware in the @Path annotation when working with controllers.
    Open source →
  4. 0.3.0 13 Sep 2022
    Release notes

    Changed

    • The Form API has changed a small bit. This is a breaking change. Overriding the validator function is the preferred way forward instead of passing it via constructor.
    Open source →
  5. 0.2.8 22 Jun 2022
    Release notes

    fix issue writing strings as json

    Open source →
    Release notes

    Fixed

    • Let strings render as text by default instead of application/json. You can still override this if needed by passing in a content type.
    Open source →
  6. 0.2.7 18 Jun 2022
    Release notes

    Added

    • Support for wrangling forms of data via the Forms class. You don't have to use this and Steward will work fine without it, but its there if you'd like it!
    Open source →
  7. 0.2.6 12 Jun 2022
    Release notes

    Enhance requests and responses

    Open source →
    Release notes

    Added

    • Requests now expose cookies
    • Requests now expose the x509 Certificate object
    • Requests now expose the session
    • Responses now support setting cookies
    • Responses now have a named constructor for temporary and permenant redirects
    Open source →
  8. 0.2.5 27 May 2022
    Release notes

    Adjust router to use any ipv6

    Open source →
    Release notes

    Fixed

    • Resolved an issue where loopback was being used vs AnyIPvX and prevented use from docker containers.
    Open source →
  9. 0.2.4 22 Mar 2022
    Release notes

    Fix an issue with path regexs and defined trailing slashes

    Open source →
    Release notes

    Fixed

    • Resolved an issue where if a path was defined with a trailing slash, the trailing slash was required. This was particularly problematic with combinations of the @Path and @GET (or other) decorators.

    [0.2.3] - 2022-03-16

    Fixed

    • Route specific middlewares were being called before router specific middlewares. This is no longer the case.
    Open source →
  10. 0.2.3 17 Mar 2022
    Release notes

    Move route specific middlewares to run after router specific middlewares

    Open source →
  11. 0.2.2 17 Mar 2022
    Release notes

    fix middleware execution ordering - ltr

    Open source →
    Release notes

    Fixed

    • Middlewares were being called from right to left in declararation order and this was causing a lot of confusion (and wasnt intended). This is now fixed.
    Open source →
  12. 0.2.1 16 Mar 2022
    Release notes

    add support for controller method-level middleware

    Open source →
    Release notes

    Added

    • Support for Controller Method level Middleware. More below.

    Controller Method-level middleware can be specified by passing an optional list of middleware to the annotation for controller method decorations.

    Open source →
  13. 0.2.0 16 Mar 2022
    Release notes

    Added

    • Support for the app to take in an environment variable which is used to help determine if stacktraces should be written via HTTP when failures are caught. The plan is to ultimately incorporate this into more functionality in the future.
    • Steward CLI support for steward doctor
    • Steward CLI support for steward new controller $controllerName
    • Support for dart pub global activate steward

    Changed

    • The Container abstract class now has an abstract method called Clone. Containers must implement clone to be used by Steward.
    • The container made available to a request is cloned right before we start processing middleware and/or the request handler. This should allow users to bind request specific details via middleware and expose those in the handler should they choose to do so.

    Fixed

    • Steward CLI support for up-to-date steward app generation.
    Open source →
  14. 0.1.7 10 Mar 2022
    Release notes

    Added

    • Support for optional trailing slash support in router matching.
    • Support for case insensitive pattern matching for router matching.

    Changed

    • Bump version of Bosun dependency.
    Open source →
  15. 0.1.6 06 Mar 2022
    Release notes

    Fixed

    • Dont try to JSONify primitives on their own.
    • Catch errors at the framework layer and dont crash the server)
      • There's a lot of further improvement to be made here. See https://github.com/PyreStudios/steward/issues/16 for more information.
    Open source →
  16. 0.1.5 05 Mar 2022
    Release notes

    Fixed

    • Changed the JSON detection mechanism to be less picky.
    Open source →
  17. 0.1.4 05 Mar 2022
    Release notes

    Fixed

    • JSON-ify the body even if the content type is already set
    Open source →
  18. 0.1.3 05 Mar 2022
    Release notes

    Fixed

    • Resolved an issue that was preventing the previous change from running. My bad.
    Open source →
  19. 0.1.2 05 Mar 2022
    Release notes

    Fixed

    • Resolved an issue that was preventing Futures of Futures (and so on) from serializing properly
    Open source →
  20. 0.1.1 10 Feb 2022
    Release notes

    Changed

    • Added support for passing in a host to the router, default to AnyIPv4
    Open source →
  21. 0.1.0 03 Feb 2022
    Release notes

    Changed

    • Steward is now async based!
    Open source →
  22. 0.0.8 03 Feb 2022
    Release notes

    Added

    • Support for @Path decorator to be used on controllers.

    Fixed

    • Steward's new command should now place dart files in the correct place
    Open source →
  23. 0.0.7 27 Jan 2022

    Nothing published for this version

  24. 0.0.6 27 Jan 2022
    Release notes

    Fixed

    • An issue with config reader types not working as expected.
    Open source →
  25. 0.0.5 27 Jan 2022
    Release notes

    Added

    • CORS middleware

    Changed

    • Refactor and clean up a lot of the app and router code.
    Open source →
  26. 0.0.4 18 Dec 2021
    Release notes

    Added

    • Tests around HEAD, PUT, PATCH, and DELETE in the router
    • You can now simply import package:steward/steward.dart to bring the entire steward suite into scope. This is the intended way to use steward.
    • Added tests for the new controller patterns.
    • Added Injectable annotation and HTTP Verb annotations for controllers.

    Changed

    • Description in Pubspec.yaml
    • Router package now exports the request and response classes as well, since theyre coupled.
    • Simplified the generated seed-code to use the simplified imports changes captured in #4
    • Controllers function completely differently now. Controllers are mounted into the router which reflectively generates routes from member annotations. Additionally, controllers reflectively have DI items injected via the @Injectable annotation during this time as well.
    • Migrated what little CLI we already have to Bosun to provide a better CLI experience.
    Open source →

Every package, every release, already written down.

The archive is open and free. Watching your own project is what we are building next.

Browse the archive