Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add support for anchor redirects with client-side js #9212

Merged
merged 1 commit into from
Nov 20, 2024

Conversation

zanieb
Copy link
Member

@zanieb zanieb commented Nov 18, 2024

The redirect plugin doesn't support this, and it's not feasible to do server-side so we need to do the redirect client-side with some javascript.

@zanieb zanieb added the documentation Improvements or additions to documentation label Nov 18, 2024
Comment on lines -11 to +12
node?.classList?.contains(className),
),
node?.classList?.contains(className)
)
Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Prettier strikes!

@zanieb zanieb force-pushed the zb/docs-redirect-anchor branch 2 times, most recently from 5dd4004 to 6c5706a Compare November 18, 2024 20:31
// The prefix for the site, see `site_dir` in `mkdocs.yml`
let site_dir = "uv";

function get_path() {
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Is this required? Could we just do window.location.pathname + window.location.hash ?

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Is the pathname guaranteed to end in a /?

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'm not sure, I can't find any documentation about whether this is guaranteed or not but from my experience modern browsers do tend to maintain this consistency even if you might not include a trailing / the browser will include it. I think it's fine to keep this in just to be on the safer side.


// Use client-side redirects for anchors that have moved.
// Other redirects should use `redirect_maps` in the `mkdocs.yml` file instead.
(function () {
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We'll probably need to add an event listener for this, mostly on DOMContentLoaded.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Why? I don't think you can get to a page that doesn't exist except on initial load — i.e., like only an external link should reference it.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Oh right, because all the internal references have been updated.

Base automatically changed from zb/docs-collapsible-project to main November 19, 2024 19:52
@zanieb zanieb merged commit 78df14e into main Nov 20, 2024
53 checks passed
@zanieb zanieb deleted the zb/docs-redirect-anchor branch November 20, 2024 04:32
tmeijn pushed a commit to tmeijn/dotfiles that referenced this pull request Nov 21, 2024
This MR contains the following updates:

| Package | Update | Change |
|---|---|---|
| [astral-sh/uv](https://github.com/astral-sh/uv) | patch | `0.5.3` -> `0.5.4` |

MR created with the help of [el-capitano/tools/renovate-bot](https://gitlab.com/el-capitano/tools/renovate-bot).

**Proposed changes to behavior should be submitted there as MRs.**

---

### Release Notes

<details>
<summary>astral-sh/uv (astral-sh/uv)</summary>

### [`v0.5.4`](https://github.com/astral-sh/uv/blob/HEAD/CHANGELOG.md#054)

[Compare Source](astral-sh/uv@0.5.3...0.5.4)

##### Enhancements

-   Accept either singular or plural values for CLI requirements ([#&#8203;9196](astral-sh/uv#9196))
-   Add `--all-groups` to `uv sync`, `uv run`, `uv export`, and `uv tree` ([#&#8203;8892](astral-sh/uv#8892))
-   Add a progress bar to `uv tree --outdated` and `uv pip list --outdated` ([#&#8203;9284](astral-sh/uv#9284))
-   Add retries for Python downloads ([#&#8203;9274](astral-sh/uv#9274))
-   Use exponential backoff for publish retries ([#&#8203;9276](astral-sh/uv#9276))
-   Add manylinux target triples up to glibc 2.40 ([#&#8203;9234](astral-sh/uv#9234))

##### Performance

-   Parallelize network requests in `uv tree --outdated` ([#&#8203;9280](astral-sh/uv#9280))
-   Use `zlib-rs` on all platforms ([#&#8203;9264](astral-sh/uv#9264))

##### Bug fixes

-   Avoid validating extra and group sources in `build-system.requires` ([#&#8203;9273](astral-sh/uv#9273))
-   Catch retries with wrapped `reqwest` errors ([#&#8203;9253](astral-sh/uv#9253))
-   Sort hashes in `uv export` output ([#&#8203;9237](astral-sh/uv#9237))
-   Strip `--index` and `--default-index` from command header ([#&#8203;9288](astral-sh/uv#9288))

##### Documentation

-   Add breadcrumbs to the documentation ([#&#8203;9242](astral-sh/uv#9242))
-   Add minimum version to PyTorch guide ([#&#8203;9247](astral-sh/uv#9247))
-   Add support for anchor redirects with client-side js ([#&#8203;9212](astral-sh/uv#9212))
-   Improve content on project configuration ([#&#8203;9235](astral-sh/uv#9235))
-   Improve the project creation documentation ([#&#8203;9236](astral-sh/uv#9236))
-   Move the integration guides into the "Guides" section as a collapsed group ([#&#8203;9245](astral-sh/uv#9245))
-   Reorganize the project concept documentation ([#&#8203;9121](astral-sh/uv#9121))
-   Use the full screen height for the main content to stabilize the nav ([#&#8203;9153](astral-sh/uv#9153))

##### Error messages

-   Add dedicated warning for empty stdin ([#&#8203;9256](astral-sh/uv#9256))

</details>

---

### Configuration

📅 **Schedule**: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).

🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied.

♻ **Rebasing**: Whenever MR becomes conflicted, or you tick the rebase/retry checkbox.

🔕 **Ignore**: Close this MR and you won't be reminded about this update again.

---

 - [ ] <!-- rebase-check -->If you want to rebase/retry this MR, check this box

---

This MR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNy40NDAuNyIsInVwZGF0ZWRJblZlciI6IjM3LjQ0MC43IiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6WyJSZW5vdmF0ZSBCb3QiXX0=-->
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
documentation Improvements or additions to documentation
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants