getappmap / getappmap/appmap-ruby

Resolve the normalized route at the end of the request

Open
#360 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
Ruby
Stars
101
Forks
13
PR merge metrics
No merged PRs in 30d

Description

We currently try to resolve the normalized route when the request comes in instead of when it's finished. In some environments this can be problematic; eg. devise provides route constraints that rely on certain request environment fields being filled by a middleware that only runs late in the stack (cf. issue #358).

If we move the normalized route resolution to the request finalizer we can be reasonably certain that all prerequisites are met.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Trace where the normalized route is resolved when the request comes in, then follow the request finalizer entry point. Check how late middleware-populated request environment fields affect the constraints described in issue #358; done means resolution occurs at finalization and the affected route constraints work correctly.

Written by the indexing model from the issue text.

Assessment

Tech stack
ruby
Domain
backend
Issue type
Refactor
Difficulty
3/5
Estimated time
1-2 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
42/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.