mirror of
https://github.com/discourse/discourse.git
synced 2026-08-11 02:59:07 +08:00
A category URL kept everything after `/c/` as its slug path, so the filter tail of `/c/support/6/l/latest` — the plain URL of a category's Latest tab — became the slug `support:6:l:latest`. That never resolves, so the link stayed on the source URL and showed up in the unresolved report. Categories now work like topics: the route ends at the id and whatever follows rides along in the suffix. The slug path is matched lazily, so the id is the first numeric segment that ends a path component. Greedy matching would have picked the last one and folded the tail back into the slug. Without a tail the lazy path still lands on the last segment, so `/c/2015/6` reads id 6, not slug `2015`. The id-less `/c/support/billing` form is unchanged, and a digit run too long to be an id still reads as a numeric slug. |
||
|---|---|---|
| .. | ||
| config | ||
| lib | ||
| spec | ||
| .rspec | ||
| Gemfile | ||
| migrations-importer.gemspec | ||