mirror of
https://github.com/AppFlowy-IO/AppFlowy.git
synced 2026-03-24 04:46:56 +00:00
[GH-ISSUE #3064] [FR] Edit history #1349
Labels
No labels
2024
2025
2026
acct mgmt
AI
automation
bug
calendar
ci
CJK
cloud
code-block
collaboration
copy-paste
database
data migration
data sync
deploy
desktop
develop
develop
documentation
duplicate
editor
editor-plugin
emoji
export
files
flutter-only
follow-up
formula
good first issue for devs
good first issue for experienced devs
grid
hacktoberfest
HACKTOBERFEST-ACCEPTED
help wanted
i18n
icons
images
importer
improvements
infra
install
integrations
IR
kanban board
login
look and joy
mentorship
mobile
mobile
needs design
new feature
new feature
non-coding
notes
notifications
onboarding
organization
P0+
permission
platform-linux
platform-mac
platform-windows
plugins
program
pull-request
Q1 25
Q1 26
Q2 24
Q2 25
Q3 24
Q3 25
Q4 24
Q4 25
react
regression
rust
rust
Rust-only
Rust-only
Rust-starter
Rust-starter
self-hosted
shortcuts
side panel
slash-menu
sync v2
table
tablet
task
tauri
templates
tests
themes
translation
v0.5.6
v0.5.8
v0.5.9
v0.6.0
v0.6.1
v0.6.4
v0.6.7
v0.6.8
v0.7.1
v0.7.4
v0.7.4
v0.7.5
v0.7.6
v0.7.7
v0.7.8
v0.8.0
v0.8.4
v0.8.5
v0.8.9
web
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
AppFlowy-IO/AppFlowy#1349
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?
Originally created by @emmggi on GitHub (Jul 26, 2023).
Original GitHub issue: https://github.com/AppFlowy-IO/AppFlowy/issues/3064
Originally assigned to: @appflowy on GitHub.
Description
I suggest document work space to have edit history. It should keep track of changes we do in our documents. This would make most sense for the document work space. I don't see this being useful for calendar, grid or kanban.
Most important use case for this is when a user deletes a piece of information that will be important in the future.
Impact
All users.
Additional Context
I suggest making the data for edits compact. Maybe just persist blocks that were changed in the database, not to create huge DB files, but I'll leave this to the more knowledgeable.
@lalomartins commented on GitHub (Jun 30, 2024):
To add my 2¥ to an issue that for me is a dealbreaker:
A risk is that storing every revision ever might bloat the storage needs and get unwieldy over time. The most common fix for that is to simply limit the retention, but that then makes the feature no longer suit all use cases; for design documents, for example, it's important to have a history going back to the first draft so we can trace how the design evolved.
What I find the best solution is to have a retention window (maybe a week) within which we keep all revisions, and then when passing that, keeping only key revisions.
The two ways I know about for deciding what is a key revision are:
With a session-based approach, there could even be 2 layers of retention. For example, once per day we could remove revisions more than a day older, where there is a newer revision less than 30 minutes later; and then once a month we could do the same but with a window of 12 hours.
For maximum flexibility, both approaches could be combined too, at the cost of bloating the UX. That is, revisions to preserve are picked automatically, but explicitly named revisions are taken out of the algorithm entirely and never removed.
Okay, that may have ended up being 4 or 5¥ 😹 I hope it's useful.
@EPGames commented on GitHub (May 14, 2025):
This is pretty much needed to be usable in non-personal environment. Is there any new info on the progress? Thanks!
@pascalpvk commented on GitHub (Jun 2, 2025):
Sources of inspiration for the design :
One store only modifications (with time stamp and editor ID), not full versions of document.