kubo/docs/changelogs
Marcin Rataj 904736c20e fix(mfs): add soft limit for --flush=false (#10985)
* fix: add MFS operation limit for --flush=false

adds a global counter that tracks consecutive MFS operations performed
with --flush=false and fails with clear error after limit is reached.

this prevents unbounded memory growth while avoiding the data corruption
risks of auto-flushing.

- adds Internal.MFSNoFlushLimit config
- operations fail with actionable error at limit
- counter resets on successful flush or any --flush=true operation
- operations with --flush=true reset and don't count

this commit removes automatic flush from https://github.com/ipfs/kubo/pull/10971
and instead errors to encourage users of --flush=false to develop a habit
of calling 'ipfs files flush' periodically.

boxo will no longer auto-flush (https://github.com/ipfs/boxo/pull/1041) to
avoid corruption issues, and kubo applies the limit to 'ipfs files' commands
instead.

closes #10842

* test: add tests for MFSNoFlushLimit

tests verify the new Internal.MFSNoFlushLimit config option:
- default limit of 256 operations
- custom limit configuration
- counter reset on flush=true
- counter reset on explicit flush command
- limit=0 disables the feature
- multiple MFS command types count towards limit

* docs: explain why MFS operations fail instead of auto-flushing

addresses feedback from https://github.com/ipfs/kubo/pull/10985#pullrequestreview-3256250970

- clarify that automatic flushing at limit was considered but rejected
- explain the data corruption risks of auto-flushing
- guide users who want auto-flush to use --flush=true (default)
- document benefits of explicit failure for batch operations

(cherry picked from commit a688b7eeac)
2025-09-27 03:21:55 +02:00
..
v0.2.md feat(ci): reusable spellcheck from unified CI (#10873) 2025-08-14 00:35:35 +00:00
v0.3.md docs: bulk spelling edits (#9544) 2023-02-20 23:37:10 +01:00
v0.4.md feat(ci): reusable spellcheck from unified CI (#10873) 2025-08-14 00:35:35 +00:00
v0.5.md feat: Add CI for Spell Checking (#10637) 2025-01-30 17:50:51 +01:00
v0.6.md feat: Add CI for Spell Checking (#10637) 2025-01-30 17:50:51 +01:00
v0.7.md feat: Add CI for Spell Checking (#10637) 2025-01-30 17:50:51 +01:00
v0.8.md feat(ci): reusable spellcheck from unified CI (#10873) 2025-08-14 00:35:35 +00:00
v0.9.md feat(ci): reusable spellcheck from unified CI (#10873) 2025-08-14 00:35:35 +00:00
v0.10.md feat(ci): reusable spellcheck from unified CI (#10873) 2025-08-14 00:35:35 +00:00
v0.11.md feat: Add CI for Spell Checking (#10637) 2025-01-30 17:50:51 +01:00
v0.12.md feat: Add CI for Spell Checking (#10637) 2025-01-30 17:50:51 +01:00
v0.13.md collection of typo fixes (#10647) 2025-01-13 18:55:10 +01:00
v0.14.md feat: Add CI for Spell Checking (#10637) 2025-01-30 17:50:51 +01:00
v0.15.md docs: bulk spelling edits (#9544) 2023-02-20 23:37:10 +01:00
v0.16.md feat: Add CI for Spell Checking (#10637) 2025-01-30 17:50:51 +01:00
v0.17.md docs: bulk spelling edits (#9544) 2023-02-20 23:37:10 +01:00
v0.18.md feat(ci): reusable spellcheck from unified CI (#10873) 2025-08-14 00:35:35 +00:00
v0.19.md feat: Add CI for Spell Checking (#10637) 2025-01-30 17:50:51 +01:00
v0.20.md feat(ci): reusable spellcheck from unified CI (#10873) 2025-08-14 00:35:35 +00:00
v0.21.md feat(ci): reusable spellcheck from unified CI (#10873) 2025-08-14 00:35:35 +00:00
v0.22.md feat(ci): reusable spellcheck from unified CI (#10873) 2025-08-14 00:35:35 +00:00
v0.23.md feat: Add CI for Spell Checking (#10637) 2025-01-30 17:50:51 +01:00
v0.24.md feat: Add CI for Spell Checking (#10637) 2025-01-30 17:50:51 +01:00
v0.25.md feat: Add CI for Spell Checking (#10637) 2025-01-30 17:50:51 +01:00
v0.26.md chore: update changelog 2024-01-22 14:35:53 +01:00
v0.27.md feat: Add CI for Spell Checking (#10637) 2025-01-30 17:50:51 +01:00
v0.28.md chore: update changelog for v0.28 2024-04-15 07:15:38 +00:00
v0.29.md feat: Add CI for Spell Checking (#10637) 2025-01-30 17:50:51 +01:00
v0.30.md feat: Add CI for Spell Checking (#10637) 2025-01-30 17:50:51 +01:00
v0.31.md feat(ci): reusable spellcheck from unified CI (#10873) 2025-08-14 00:35:35 +00:00
v0.32.md Update to boxo with refactored providerQueryManager. (#10595) 2024-11-26 03:34:06 -08:00
v0.33.md Merge remote-tracking branch 'origin/master' into merge-release-v0.33.2 2025-02-14 01:30:03 +01:00
v0.34.md docs: Fix typo in v0.34 changelog (#10771) 2025-04-01 07:26:38 -07:00
v0.35.md chore: spellcheck to avoid ai fix prs 2025-05-21 20:21:33 +02:00
v0.36.md fix typos in docs and comments (#10920) 2025-08-18 08:43:25 -07:00
v0.37.md docs: fix typo in v0.37 changelog 2025-08-27 20:33:02 +02:00
v0.38.md fix(mfs): add soft limit for --flush=false (#10985) 2025-09-27 03:21:55 +02:00