Skip to content

Conversation

@Blacksmoke16
Copy link
Member

Context

Follow up to #636 that makes use of #652 to store the _action directly within the route defaults. This removes the needs for an extra mapping layer from controller name to ATH::Action. I kept _controller as a means to more easily tell what controller action handled the request.

Changelog

  • Refactor how the ATH::Action for a given request is resolved
  • Expose ATH::ActionResolver and interface

Before merging, remember to add the athena-framework/athena prefix to the PR number in the PR title

@codecov
Copy link

codecov bot commented Jan 3, 2026

Codecov Report

❌ Patch coverage is 95.74468% with 2 lines in your changes missing coverage. Please review.
✅ All tests successful. No failed tests found.

Files with missing lines Patch % Lines
...amework/src/ext/routing/annotation_route_loader.cr 85.71% 0 Missing and 2 partials ⚠️

❌ Your patch status has failed because the patch coverage (95.74%) is below the target coverage (100.00%). You can increase the patch coverage or adjust the target coverage.

Components Coverage Δ
clock 100.00% <ø> (ø)
console 97.21% <ø> (ø)
dependency_injection 92.04% <ø> (ø)
dotenv 98.41% <ø> (ø)
event_dispatcher 95.90% <ø> (ø)
framework 97.25% <95.74%> (+0.03%) ⬆️
http 98.94% <ø> (ø)
image_size 96.63% <ø> (ø)
mercure 94.94% <ø> (ø)
mime 99.37% <ø> (ø)
negotiation 97.93% <ø> (ø)
routing 98.36% <ø> (ø)
serializer 95.86% <ø> (ø)
spec 94.06% <ø> (ø)
validator 95.85% <ø> (ø)

📢 Thoughts on this report? Let us know!

@Blacksmoke16 Blacksmoke16 merged commit 0521bef into master Jan 3, 2026
15 of 16 checks passed
@Blacksmoke16 Blacksmoke16 deleted the action-storage-refactor branch January 3, 2026 00:06
PallasAthenaie pushed a commit to athena-framework/framework that referenced this pull request Jan 3, 2026
…a-framework/athena#653)

## Context

Follow up to athena-framework/athena#636 that
makes use of athena-framework/athena#652 to
store the `_action` directly within the route defaults. This removes the
needs for an extra mapping layer from controller name to `ATH::Action`.
I kept `_controller` as a means to more easily tell what controller
action handled the request.

## Changelog

- Refactor how the `ATH::Action` for a given request is resolved
- Expose `ATH::ActionResolver` and interface
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Development

Successfully merging this pull request may close these issues.

2 participants