Modify ↓
Ticket #3403 (closed defect: fixed)
Opened 6 years ago
Last modified 6 years ago
"source:" is not processed correctly with interwiki prefix
| Reported by: | greg@… | Owned by: | cboos |
|---|---|---|---|
| Priority: | high | Milestone: | 0.10 |
| Component: | wiki system | Version: | devel |
| Severity: | major | Keywords: | intertrac |
| Cc: | |||
| Release Notes: | |||
| API Changes: | |||
Description (last modified by cboos) (diff)
In interwiki processing
source:trunk/Makefile works as expected s:source:trunk/Makefile generates an invalid URL, however s:browser:trunk/Makefile does work
Attachments
Change History
comment:1 Changed 6 years ago by anonymous
- Owner changed from jonas to anonymous
comment:2 Changed 6 years ago by anonymous
- Owner changed from anonymous to jonas
comment:3 Changed 6 years ago by cboos
- Description modified (diff)
- Keywords intertrac added; interwiki removed
- Milestone set to 0.10
- Owner changed from jonas to cboos
- Priority changed from normal to high
- Severity changed from normal to major
- Status changed from new to assigned
comment:4 Changed 6 years ago by cboos
- Resolution set to fixed
- Status changed from assigned to closed
Implemented in [3526:3528/trunk].
In order to make it work, pay attention to the <trac_prefix>.compat
configuration option:
- If set to true, the InterTrac links will be using the old-style, which won't accomodate all kind of TracLinks but is compatible with all Trac versions.
- If set to false, the InterTrac links will use the new /intertrac/<link> dispatcher introduced in r3526, but of course, this means the targeted Trac has to run with r3526 or above.
Once compatilibity with versions older than 0.10 becomes less important,
the default could be switched to false, but for now, compatiblity is
the default.
Note: See
TracTickets for help on using
tickets.



You meant InterTrac here, not InterWiki.
But yes, the InterTrac code doesn't interpret links locally,
but let the remote Trac do the job, relying on the fact that
usually the same names are used for the module in link resolvers
and requests URLs.
However, this is not always the case, as your example shows.
A better solution would be a generic /intertrac/<link> request handler
that would dispatch any <link> to the appropriate local object.
The advantage of the current approach is that Trac servers of any
version can be targeted by an InterTrac link (at least for simple links).
I'll do at least the dispatching part for 0.10, as not only
it will solve this issue, but also the long standing one with
the log: InterTrac links, covers the comment: links, etc.