mirror of
https://github.com/ipfs/kubo.git
synced 2026-02-21 10:27:46 +08:00
* 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 |
||
|---|---|---|
| .. | ||
| changelogs | ||
| examples | ||
| logo | ||
| production | ||
| specifications | ||
| add-code-flow.md | ||
| AUTHORS | ||
| cli-http-api-core-diagram.png | ||
| command-completion.md | ||
| config.md | ||
| content-blocking.md | ||
| customizing.md | ||
| datastores.md | ||
| debug-guide.md | ||
| delegated-routing.md | ||
| developer-certificate-of-origin | ||
| EARLY_TESTERS.md | ||
| environment-variables.md | ||
| experimental-features.md | ||
| file-transfer.md | ||
| fuse.md | ||
| gateway.md | ||
| generate-authors.sh | ||
| http-rpc-clients.md | ||
| implement-api-bindings.md | ||
| libp2p-resource-management.md | ||
| metrics.md | ||
| plugins.md | ||
| README.md | ||
| RELEASE_CHECKLIST.md | ||
| RELEASE_ISSUE_TEMPLATE.md | ||
| releases_thunderdome.md | ||
| releases.md | ||
| telemetry.md | ||
| transports.md | ||
| windows.md | ||
Developer Documentation and Guides
If you are looking for User Documentation & Guides, please visit docs.ipfs.tech or check General Documentation.
If you’re experiencing an issue with IPFS, please follow our issue guide when filing an issue!
Otherwise, check out the following guides to using and developing IPFS:
General Documentation
Developing kubo
- First, please read the Contributing Guidelines for IPFS projects and then the Contributing Guidelines for Go code specifically
- Building on…
- Performance Debugging Guidelines
- Release Checklist
Guides
- How to Implement an API Client
- Connecting with Websockets — if you want
js-ipfsnodes in web browsers to connect to yourkubonode, you will need to turn on websocket support in yourkubonode.
Advanced User Guides
- Transferring a File Over IPFS
- Installing command completion
- Mounting IPFS with FUSE
- Installing plugins
- Setting up an IPFS Gateway
Other
- Thanks to all our contributors ❤️ (We use the
generate-authors.shscript to regenerate this list.) - How to file a GitHub Issue