Merged
Conversation
Contributor
labkey-jeckels
left a comment
There was a problem hiding this comment.
I know you're didn't tag anyone for review yet but I was interested so I took a quick peek.
announcements/resources/schemas/dbscripts/postgresql/comm-22.000-22.001.sql
Show resolved
Hide resolved
…d -> PageRowId for clarity. Remove crufty, unused, and unnecessary code.
…tent with PG. Introduce PermanentRedirectException and use it. Futz with aliases saving: be more tolerant of duplicates (just warn). Remove unused rename handling on edit page.
labkey-jeckels
approved these changes
Mar 28, 2022
Co-authored-by: Josh Eckels <jeckels@labkey.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Rationale
Our documentation pages have some very outdated names (cpasxml, sampleSets, workflowModules), but updating them is problematic because renaming a page would break all links that have been sent to clients via email, tickets, etc. Our documentation team has requested a new feature, wiki aliases, to allow them to rename wikis while still resolving page requests to the old name. These are patterned after container aliases. The basic spec plus doc team requests:
Add the option (on by default) to create a wiki alias having the old name at the time a wiki is renamed
Aliases are respected in only one place: if wiki-page.view is invoked with a "name" that doesn't match an existing wiki we'll then consult the list of aliases in that specific container only. If "name" is a valid alias then LabKey will redirect to the same URL, replacing "name" with the real name of the aliased wiki, and maintaining/forwarding any #anchors included with the alias name to the real page name (i.e. oldname#section would go to newname#section). Every other action (e.g., edit, delete, manage, copy, print, etc.) would require real names.
As a result of 2, if a wiki is later added with an existing alias name, that wiki would take precedence over the aliased one. (This matches the container alias behavior.)
Constraints will ensure that you can't add the same alias twice in the same container, but different containers can have different alias lists. (e.g., portals/lksm docs and main docs won't collide or cross-link to each other.)
The manage wiki page shows a list of all aliases associated with that wiki. The alias list can be edited here.
The back-links action will stay focused on real names (ignore aliases) so the docs pages would continue to use canonical names.
Possible future enhancements: managing via an "all aliases in this folder" view could be useful for release-time-link-checking and periodic cleanups, index aliases for full-text search (not sure that's really desired).
https://www.labkey.org/home/Developer/issues/issues-details.view?issueId=45063