mirror of
https://github.com/hoppscotch/hoppscotch.git
synced 2026-04-25 16:55:59 +03:00
Labels
No labels
CodeDay
a11y
browser limited
bug
bug fix
cli
core
critical
design
desktop
discussion
docker
documentation
duplicate
enterprise
feature
feature
fosshack
future
good first issue
hacktoberfest
help wanted
i18n
invalid
major
minor
need information
need testing
not applicable to hoppscotch
not reproducible
pull-request
question
refactor
resolved
sandbox
self-host
spam
stale
testmu
wip
wont fix
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
starred/hoppscotch#5418
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
📋 Pull Request Information
Original PR: https://github.com/hoppscotch/hoppscotch/pull/5918
Author: @GaneshAdimalupu
Created: 2/28/2026
Status: 🔄 Open
Base:
main← Head:main📝 Commits (10+)
51ac59bfeat: auto-save requests when enabled in settings (#3437)3b8a6c1Merge branch 'hoppscotch:main' into maina81e56cUpdate packages/hoppscotch-common/src/components/http/Request.vue08a5ffefix: resolve auto-save debounce and silent-save issues3aefeebMerge pull request #1 from GaneshAdimalupu/fix/auto-save-debounce-and-silent-save073c14dPotential fix for pull request finding94ce5f5fix(autosave): fix GQL tab mismatch, stale ref, analytics inflation, input clampingbb10094fix(autosave): guard modal triggers and catch block behind silent flag in REST846a812fix(autosave): gate all error toasts and modals behind silent flag, fix saveInProgress raceb94360cfix(autosave): await mutation, fix saveInProgress race and recovery path, guard GQL modal📊 Changes
6 files changed (+609 additions, -130 deletions)
View changed files
📝
packages/hoppscotch-common/locales/en.json(+4 -0)📝
packages/hoppscotch-common/src/components/graphql/RequestOptions.vue(+281 -29)📝
packages/hoppscotch-common/src/components/http/Request.vue(+253 -100)📝
packages/hoppscotch-common/src/newstore/settings.ts(+6 -0)📝
packages/hoppscotch-common/src/pages/settings.vue(+62 -1)📝
packages/hoppscotch-common/src/services/persistence/validation-schemas/index.ts(+3 -0)📄 Description
Closes #3437
Adds an optional auto-save feature for request tabs: when "Auto-save requests" is enabled in Settings → General, requests that are already saved to a collection (or team) are saved automatically after a configurable delay. Auto-save is silent (no toast); manual Save still shows "Request saved". Applies to REST and GraphQL, user and team collections.
What's changed
AUTO_SAVE_REQUESTSandAUTO_SAVE_DELAY_MS(store, persistence schema, Settings UI, i18n in en.json)Request.vuewith silent toast, save-in-flight guard, and team save error handlingRequestOptions.vueplus team-collection save path (was missing)Notes to reviewers
@liyasthomas
Summary by cubic
Adds optional per-tab auto-save for saved REST and GraphQL requests. When enabled, edits save silently after you stop typing, with a configurable 500–10000 ms delay.
New Features
AUTO_SAVE_REQUESTStoggle andAUTO_SAVE_DELAY_MS(500–10000 ms, default 2000) with UI hint, clamped input, and persistence schema validation.Bug Fixes
saveInProgressbefore auth/network to close races; snapshot request before mutation and clearisDirtyonly if unchanged; re-verifysaveContextafter auth; queue manual saves if one is in-flight; exponential backoff on failures (2s → 4s → 8s, max 3) only when no new edits occurred; trigger a follow-up silent save only if edits changed during an in-flight save; reset/cancel retry timers and debounced watchers on new edits and unmount; stop retries if a tab is closed or component is unmounted (explicit unmounted flag in GQL); never log analytics or show toasts for auto-saves.isValidUser; manual saves only when the invoking tab is active; errors/modals gated behind the silent flag; “Save As” uses a separatesaveAsRequest; result view scoped to the tab’s ID.isValidUser; manual saves only when the saving tab is active; errors/modals gated behind the silent flag; prevent actions after component destruction with an unmounted guard.Written for commit
4eed44a7ff. Summary will update on new commits.🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.