0
0
Fork 0
mirror of https://github.com/discourse/discourse.git synced 2026-08-11 02:59:07 +08:00
discourse/migrations/importer
Gerhard Schlager b7638e920e MT: Anchor category links on the id so a filter tail stays a suffix
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.
2026-07-30 21:05:45 +02:00
..
config MT: Add a TUI progress reporter and use it in the importer too 2026-06-25 17:46:04 +02:00
lib MT: Rewrite route-less internal URLs and support subfolder installs 2026-07-25 10:31:53 +02:00
spec MT: Anchor category links on the id so a filter tail stays a suffix 2026-07-30 21:05:45 +02:00
.rspec MT: Split the migrations tooling into separate gems (#40492) 2026-06-02 22:20:03 +02:00
Gemfile MT: Split the migrations tooling into separate gems (#40492) 2026-06-02 22:20:03 +02:00
migrations-importer.gemspec MT: Split the migrations tooling into separate gems (#40492) 2026-06-02 22:20:03 +02:00