Skip to content

add restart and check_interval helpers, document github rate limits and no-client compile error#194

Merged
jaemk merged 1 commit into
masterfrom
260716.followups-docs-restart-interval
Jul 17, 2026
Merged

add restart and check_interval helpers, document github rate limits and no-client compile error#194
jaemk merged 1 commit into
masterfrom
260716.followups-docs-restart-interval

Conversation

@jaemk

@jaemk jaemk commented Jul 17, 2026

Copy link
Copy Markdown
Owner

Closes four open-issue followups: two new opt-in helpers plus two doc gaps.

Helpers

  • self_update::restart::{restart, restart_with} (How to restart the process to update? #62): relaunch the already-replaced executable after an update so a long-running process picks up the new binary. restart() reuses the current args; restart_with(args) supplies a fresh arg list. Unix replaces the image with exec; Windows spawns and exits.
  • self_update::check_interval::UpdateCheckGuard (Check for updates periodically #79): a stamp-file guard that throttles update checks. should_check() reports whether the interval elapsed since the last check (missing/corrupt/future stamps count as due); record_check() stamps now via write-to-temp-then-rename. No time/date dependency.

Docs

  • Document GitHub's API rate limits (Document GitHub rate limits #78): 60/hour unauthenticated vs 5000/hour with a token, the 403 symptom mapping to Error::Unauthorized, and mitigations. Added to the crate docs and the auth_token setter.
  • Name the no HTTP client selected compile error (Clarify documentation on features #168) in the Features section for a client-less build (e.g. default-features = false, features = ["rustls"]) and show the fix.

Specs updated alongside each change; CHANGELOG entries added.

…e limits and the no-client compile error

- add `self_update::restart::{restart, restart_with}`: relaunch the (already
  replaced) executable after an update so a long-running process picks up the new
  binary. `restart()` reuses the current args; `restart_with(args)` supplies a fresh
  arg list. unix replaces the image with `exec`; windows spawns and exits. (#62)
- add `self_update::check_interval::UpdateCheckGuard`: a stamp-file guard that
  throttles update checks. `should_check()` reports whether the interval elapsed
  since the last check (missing/corrupt/future stamps count as due); `record_check()`
  stamps now via write-to-temp-then-rename. No time/date dependency. (#79)
- document github's api rate limits (60/hour vs 5000/hour with a token, the 403
  symptom mapping to `Error::Unauthorized`, and mitigations) in the crate docs and
  the `auth_token` setter. (#78)
- name the `no HTTP client selected` compile error in the Features section for a
  client-less build (e.g. `default-features = false, features = ["rustls"]`) and show
  the fix. (#168)
@jaemk
jaemk merged commit 6b5f83b into master Jul 17, 2026
3 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant