1
0
mirror of https://github.com/ipfs/kubo.git synced 2025-06-28 00:39:31 +08:00

Ipfs v0.4.12

License: MIT
Signed-off-by: Jeromy <jeromyj@gmail.com>
This commit is contained in:
Jeromy
2017-11-09 10:05:07 -08:00
parent 13ed3f34f7
commit 84e4fe578f
4 changed files with 45 additions and 4 deletions

View File

@ -1 +1 @@
0.4.11: QmNUKMfTHQQpEwE8bUdv5qmKC3ymdW7zw82LFS8D6MQXmu 0.4.12: QmdKL1GVaUaDVt3JUWiYQSLYRsJMym2KRWxsiXAeEU6pzX

View File

@ -1,6 +1,47 @@
# go-ipfs changelog # go-ipfs changelog
## 0.4.12-rc2 2017-10-26 ## 0.4.12 2017-11-09
Ipfs 0.4.12 brings with it many important fixes for the huge spike in network
size we've seen this past month. These changes include the Connection Manager,
faster batching in `ipfs add`, libp2p fixes that reduce CPU usage, and a bunch
of new documentation.
The most critical change is the 'Connection Manager': it allows an ipfs node to
maintain a limited set of connections to other peers in the network. By default
(and with no config changes required by the user), ipfs nodes will now try to
maintain between 600 and 900 open connections. These limits are still likely
higher than needed, and future releases may lower the default recommendation,
but for now we want to make changes gradually. The rationale for this selection
of numbers is as follows:
- The DHT routing table for a large network may rise to around 400 peers
- Bitswap connections tend to be separate from the DHT
- PubSub connections also generally are another distinct set of peers
(including js-ipfs nodes)
Because of this, we selected 600 as a 'LowWater' number, and 900 as a
'HighWater' number to avoid having to clear out connections too frequently.
You can configure different numbers as you see fit via the `Swarm.ConnMgr`
field in your ipfs config file. See
[here](https://github.com/ipfs/go-ipfs/blob/master/docs/config.md#connmgr) for
more details.
Disk utilization during `ipfs add` has been optimized for large files by doing
batch writes in parallel. Previously, when adding a large file, users might have
noticed that the add progressed by about 8MB at a time, with brief pauses in between.
This was caused by quickly filling up the batch, then blocking while it was
writing to disk. We now write to disk in the background while continuing to add
the remainder of the file.
Other changes in this release have noticeably reduced memory consumption and CPU
usage. This was done by optimising some frequently called functions in libp2p
that were expensive in terms of both CPU usage and memory allocations. We also
lowered the yamux accept buffer sizes which were raised over a year ago to
combat a separate bug that has since been fixed.
And finally, thank you to everyone who filed bugs, tested out the release candidates,
filed pull requests, and contributed in any other way to this release!
- Features - Features
- Implement Connection Manager ([ipfs/go-ipfs#4288](https://github.com/ipfs/go-ipfs/pull/4288)) - Implement Connection Manager ([ipfs/go-ipfs#4288](https://github.com/ipfs/go-ipfs/pull/4288))

View File

@ -493,6 +493,6 @@
"language": "go", "language": "go",
"license": "MIT", "license": "MIT",
"name": "go-ipfs", "name": "go-ipfs",
"version": "0.4.12-rc2" "version": "0.4.12"
} }

View File

@ -4,6 +4,6 @@ package config
var CurrentCommit string var CurrentCommit string
// CurrentVersionNumber is the current application's version literal // CurrentVersionNumber is the current application's version literal
const CurrentVersionNumber = "0.4.12-rc2" const CurrentVersionNumber = "0.4.12"
const ApiVersion = "/go-ipfs/" + CurrentVersionNumber + "/" const ApiVersion = "/go-ipfs/" + CurrentVersionNumber + "/"