- Add Redis adapter (#114).
- Add global response tags (#110).
- Implement around_action callbacks (#107).
- Support date types in Alba serializers (#112).
Rage::OpenAPI
(#109).
- Correctly handle ActiveRecord connections in the environments with
legacy_connection_handling == false
(#108).
- Patch AR pool even if
Rake
is defined (#105).
- Enable Rage Connection Pool by default (#103).
- Allow to preconfigure the app for selected database (#104).
- Add
version
andmiddleware
CLI commands (#99).
- Static file server (#100).
- Rails 7.2 compatibility (#101).
- Correctly set Rails env (#102).
- Support WebSockets (#88).
- Support
wrap_parameters
by @alex-rogachev (#89). - Unknown environment error handling by @cuneyter (#95).
- Allow
rescue_from
handlers to not accept arguments (#93).
- Support legacy route helpers (#90).
- Correctly handle internal Rails routes in
Rage.multi_application
(#91).
- Correctly reload code in multi apps (#87).
- Allow to have both Rails and Rage controllers in one application (#83).
- Add
authenticate_or_request_with_http_token
(#85). - Add the
member
andcontroller
route helpers (#86).
- Deprecate
Rage.load_middlewares
(#83).
- Correctly init console in Rails mode (credit to efibootmgr) (#84).
- Support cookies and sessions (#69).
- Improve compatibility with ActiveRecord 7.1 (#80).
- Introduce the
ActiveRecord::ConnectionPool
patch (#78).
- Correctly determine Rage env (#77).
- Correctly clone Rails logger (#76).
- Disable Ruby buffer for logging IO (#73).
- Default to 1 worker in development (#74).
- Default to use ActionDispatch::Reloader in dev env in Rails mode (#75).
- Change the way controller names are logged (#72).
- Use formatters in console (#71).
- Fix Fiber.await behavior in RSpec (#70).
- RSpec integration (#60).
- Add DNS cache (#65).
- Allow to disable the
FiberScheduler#io_write
hook (#63).
- Preload fiber ID (#62).
- Release ActiveRecord connections on yield (#66).
- Logger fixes (#64).
- Fix publish calls in cluster mode (#67).
- Add conditional GET using
stale?
by @tonekk (#55). - Add Rails integration (#57).
- Add JSON log formatter (#59).
- Implement after actions (#53).
- Zeitwerk autoloading and reloading by @alex-rogachev (#54).
- Support the
environment
,binding
,timeout
, andmax_clients
options when usingrage s
(#52). - Add CORS middleware (#49).
- Prevent
block
andsleep
channels from conflicting (#51).
- Add env class (#43).
- Schedule request Fibers in a separate middleware (#48).
- Fix logging inside detached fibers (#41).
- Allow to configure the logger as
nil
(#42).
- Add sessions for compatibility with
Sidekiq::Web
(#35). - Add logger (#33).
- Fixes for
FiberScheduler#io_wait
andFiberScheduler#io_read
(#32). - Correctly handle exceptions in inner fibers (#34).
- Fixes for
FiberScheduler#kernel_sleep
(#36).
- Use config namespaces (#25).
- Update
Fiber.await
signature (#36).
- Expose the
params
object (#23). - Support header authentication with
authenticate_with_http_token
(#21). - Add the
resources
route helper (#20). - Add the
namespace
route helper by @arikarim (#17). - Add the
mount
andmatch
route helpers by @arikarim (#18) (#14). - Allow to access request headers by @arikarim (#15).
- Support custom ports when starting the app with
rage s
.
- CLI
routes
task by @arikarim (#9). - CLI
console
task (#12). :if
and:unless
options inbefore_action
(#10).- Allow to set response headers (#11).
- Block version of
before_action
by @heysyam99 (#8).
- Gem configuration by env.
- Add
skip_before_action
. - Add
rescue_from
. - Add
Fiber.await
. - Support the
defaults
route option.
- Ignore trailing slashes in the URLs.
- Support constraints in routes with optional params.
- Make the
root
routes helper work correctly with scopes. - Convert objects to string when rendering text.
- Initial release
- Add console utility to generate new apps and start up the server.
- Implement base API controller:
- support
before_action
with theonly
andexcept
options; - support
render
with thejson
,plain
andstatus
options; - support the
head
method;
- support
- Implement router:
- support the
root
,get
,post
,patch
,put
,delete
methods; - support the
scope
method with thepath
andmodule
options; - support
host
constraint;
- support the