mirror of
https://github.com/ArchiveBox/ArchiveBox.git
synced 2026-04-25 17:16:00 +03:00
[PR #1721] [MERGED] Improve concurrency control between plugin hooks #4485
Labels
No labels
expected: maybe someday
expected: next release
expected: release after next
expected: unlikely unless contributed
good first ticket
help wanted
pull-request
scope: all users
scope: windows users
size: easy
size: hard
size: medium
size: medium
status: backlog
status: blocked
status: done
status: idea-phase
status: needs followup
status: wip
status: wontfix
touches: API/CLI/Spec
touches: configuration
touches: data/schema/architecture
touches: dependencies/packaging
touches: docs
touches: js
touches: views/replayers/html/css
why: correctness
why: functionality
why: performance
why: security
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
starred/ArchiveBox#4485
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/ArchiveBox/ArchiveBox/pull/1721
Author: @pirate
Created: 12/28/2025
Status: ✅ Merged
Merged: 12/28/2025
Merged by: @pirate
Base:
dev← Head:claude/review-snapshot-archive-RJOkr📝 Commits (5)
1b5a816Implement hook step-based concurrency system6b3c872Mark hook renumbering testing as complete in TODO32bcf08Restore missing folder utility functions767458eRevert "Restore missing folder utility functions"057b49aUpdate status command to use DB as source of truth📊 Changes
30 files changed (+327 additions, -127 deletions)
View changed files
📝
TODO_hook_concurrency.md(+48 -36)📝
archivebox/cli/archivebox_status.py(+27 -41)📝
archivebox/core/migrations/0032_alter_archiveresult_binary_and_more.py(+2 -2)➕
archivebox/core/migrations/0034_snapshot_current_step.py(+23 -0)📝
archivebox/core/models.py(+116 -37)📝
archivebox/core/statemachines.py(+5 -0)📝
archivebox/hooks.py(+73 -2)📝
archivebox/machine/migrations/0003_alter_dependency_id_alter_installedbinary_dependency_and_more.py(+5 -5)📝
archivebox/plugins/dom/on_Snapshot__53_dom.js(+0 -0)📝
archivebox/plugins/forumdl/on_Snapshot__65_forumdl.bg.py(+0 -0)📝
archivebox/plugins/gallerydl/on_Snapshot__64_gallerydl.bg.py(+0 -0)📝
archivebox/plugins/git/on_Snapshot__62_git.py(+0 -0)📝
archivebox/plugins/headers/on_Snapshot__55_headers.js(+0 -0)📝
archivebox/plugins/htmltotext/on_Snapshot__57_htmltotext.py(+0 -0)📝
archivebox/plugins/media/on_Snapshot__63_media.bg.py(+0 -0)📝
archivebox/plugins/mercury/on_Snapshot__56_mercury.py(+0 -0)📝
archivebox/plugins/papersdl/on_Snapshot__66_papersdl.bg.py(+0 -0)📝
archivebox/plugins/parse_dom_outlinks/on_Snapshot__75_parse_dom_outlinks.js(+0 -0)📝
archivebox/plugins/parse_html_urls/on_Snapshot__70_parse_html_urls.py(+0 -0)📝
archivebox/plugins/parse_jsonl_urls/on_Snapshot__74_parse_jsonl_urls.py(+0 -0)...and 10 more files
📄 Description
Summary
Related issues
Changes these areas
🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.