Skip to content

Releases: levkk/rwf

v0.1.9

16 Nov 21:35
Compare
Choose a tag to compare

What's Changed

  • Added more documentation to docs.rs
  • Fixed model JSON serialization bug.
  • Removed extra spacing from UPDATE queries with a WHERE clause.

Full Changelog: v0.1.8...v0.1.9

v0.1.8

14 Nov 18:29
Compare
Choose a tag to compare

What's Changed

  • Support for multipart/form-data encoding.
  • Fix incorrect BETWEEN usage in ORM.
  • More documentation.
  • More tests.
  • Add turbo_stream! macro to easily create TurboStreams from templates.

Full Changelog: v0.1.6...v0.1.8

v0.1.6

11 Nov 06:35
Compare
Choose a tag to compare

What's Changed

  • Support for running Rails (Ruby/Rack) applications alongside Rwf controllers. This is similar to how we do Python /WSGI apps, except we wrote our own bindings for Ruby and Rack directly in C. See rwf-ruby for details. Current status is experimental.
  • Add support for cross-site request forgery (CSRF) attack protection. All forms submitted via POST will require a CSRF token, unless protection is disabled. It's enabled by default.
  • Add rwf-cli package command to bundle Rwf applications for production.

Documentation has been updated as well.

Full Changelog: v0.1.5...v0.1.6

v0.1.5

04 Nov 22:26
28102ae
Compare
Choose a tag to compare

Highlights

  • An admin panel to monitor jobs, HTTP requests, and changes to the database. The app is built with Rwf (the first of its kind probably).
  • Hot reloading for local development.

New features

  • More dynamic template functions and syntax features, see updated docs.
  • Better template error messages (incl. line where the error happened for syntax errors)
  • More predictable middleware execution. Slight modification to the interface for response modification handler.
  • Better logging when RUST_LOG=debug
  • Support for more data types in the ORM and templates: Uuid, IpAddr, and many more.
  • Basic support for engines: re-usable controllers that can be used directly in other Rwf apps. Closest analogy in other languages is Rails engines.
  • Removed the id column requirement from ORM models. Models without the id column won't support updates or deletes, but will work fine with find_by_sql and pretty much most other search and ordering methods.
  • Added an implemented TurboStream controller (implements WebsocketController). Helps with better integration with Turbo.
  • Started controller and model generation with the CLI. Currently, controllers can be generated with rwf-cli controller add.
  • Added documentation on custom queries and group by aggregates.

Bug fixes

  • urldecode wasn't working quite right, fixed in this release.
  • RequestTracker middleware was recording negative request duration. Run UPDATE rwf_requests SET duration = abs(duration); to fix your data.

Local development

  • Added basic hot reload functionality. The app will be reloaded when a template changes, making local dev smoother.

Upgrading

This version of Rwf is available on crates.io. Install with cargo add [email protected].

New Contributors

Full Changelog: https://github.com/levkk/rwf/commits/v0.1.5