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 2023Releases
latest 26-
0.4.023 Oct 2023Release notes
Open source →Added
- Steward Context
- AoT compilation support
- URI property on Request
Removed
- Controllers
- Reflection-based routing
-
0.3.215 Mar 2023Release notes
Open source →What's Changed
- Add middleware support for path annotations by @bradcypert in #37
- add middleware section to documentation by @bradcypert in #38
- add new middleware command by @bradcypert in #39
- Set up new view command by @bradcypert in #40
- Start on static file access by @bradcypert in #43
New Contributors
- @dependabot made their first contribution in #30
Full Changelog: v0.2.8...v0.3.2
Release notes
Open source →Added
- Support for
.staticFiles('/my-static-files')on the router.
Fixed
- Several inconsistencies with type names that deviated from the dart standard.
-
0.3.101 Oct 2022Release notes
Open source →Added
- Support for middlware in the @Path annotation when working with controllers.
-
0.3.013 Sep 2022Release notes
Open source →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.
-
0.2.822 Jun 2022Release notes
Open source →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.
-
0.2.718 Jun 2022Release notes
Open source →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!
-
0.2.612 Jun 2022Release notes
Open source →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
-
0.2.527 May 2022Release notes
Open source →Fixed
- Resolved an issue where loopback was being used vs AnyIPvX and prevented use from docker containers.
-
0.2.422 Mar 2022Release notes
Open source →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.
-
0.2.317 Mar 2022Release notes
Open source →Move route specific middlewares to run after router specific middlewares
-
0.2.217 Mar 2022Release notes
Open source →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.
-
0.2.116 Mar 2022Release notes
Open source →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.
-
0.2.016 Mar 2022Release notes
Open source →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.
-
0.1.710 Mar 2022Release notes
Open source →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.
-
0.1.606 Mar 2022Release notes
Open source →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.
-
0.1.505 Mar 2022 -
0.1.405 Mar 2022 -
0.1.305 Mar 2022Release notes
Open source →Fixed
- Resolved an issue that was preventing the previous change from running. My bad.
-
0.1.205 Mar 2022Release notes
Open source →Fixed
- Resolved an issue that was preventing Futures of Futures (and so on) from serializing properly
-
0.1.110 Feb 2022Release notes
Open source →Changed
- Added support for passing in a host to the router, default to AnyIPv4
-
0.1.003 Feb 2022 -
0.0.803 Feb 2022Release notes
Open source →Added
- Support for @Path decorator to be used on controllers.
Fixed
- Steward's new command should now place dart files in the correct place
-
0.0.727 Jan 2022Nothing published for this version
-
0.0.627 Jan 2022 -
0.0.527 Jan 2022Release notes
Open source →Added
- CORS middleware
Changed
- Refactor and clean up a lot of the app and router code.
-
0.0.418 Dec 2021Release notes
Open source →Added
- Tests around HEAD, PUT, PATCH, and DELETE in the router
- You can now simply import
package:steward/steward.dartto 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.