mirror of
https://github.com/ipfs/kubo.git
synced 2025-06-26 23:53:19 +08:00
Ipfs 0.4.16 release candidate 2
License: MIT Signed-off-by: Whyrusleeping <why@ipfs.com>
This commit is contained in:
@ -1 +1 @@
|
||||
0.4.15: QmcKwjeebv5SX3VFUGDFa4BNMYhy14RRaCzQP7JN3UQDpB
|
||||
0.4.16-rc2: QmYM2pipuZdMKKgU6m8wNN7F7sL64ipaCCf3p6VJpKHdb1
|
||||
|
66
CHANGELOG.md
66
CHANGELOG.md
@ -1,5 +1,71 @@
|
||||
# go-ipfs changelog
|
||||
|
||||
## 0.4.16
|
||||
|
||||
Ipfs 0.4.16 is a fairly small release in terms of changes to the ipfs codebase,
|
||||
but it contains a huge amount of changes and improvements from libraries we
|
||||
depend on, notably libp2p. This version of ipfs contains the changes for libp2p
|
||||
v6.0.5, In that release, we made significant changes to the codebase to allow
|
||||
for more easy integration of future transports and modules. We also improved
|
||||
some of our dialing logic, fixed a couple issues in the DHT, and added
|
||||
support for a new way to write ipfs multiaddrs. The transport refactor now
|
||||
allows us to much more easily add in support for running libp2p (and by
|
||||
extension, ipfs) over QUIC, or using TLS instead of secio for encrypting
|
||||
connections. Our [QUIC
|
||||
transport](https://github.com/libp2p/go-libp2p-quic-transport) currently
|
||||
works, and can be plugged into libp2p manually (though note that it is
|
||||
still experimental, as the upstream spec is still in flux). Further work is
|
||||
needed to make enabling this inside ipfs easy and not require
|
||||
recompilation. For more information on the refactor and libp2p v6.0.0, see
|
||||
the [release blog post](https://ipfs.io/blog/39-go-libp2p-6-0-0/). Between
|
||||
libp2p v6.0.0 and v6.0.5, there have been some changes worth pointing out
|
||||
as well. The swarm dialer has been improved to have shortened timeouts when
|
||||
dialing peers in 'local' subnets. This prevents large dial timeouts from
|
||||
wasting dial time when the subnet you are dialing is not accessible. The
|
||||
TCP handshake timeout has also been dropped to 5 seconds, improving the
|
||||
performance of dials to non-existent addresses. In the DHT, we have fixed
|
||||
the query code to put records to the K closest peers we can actually
|
||||
connect to, which is a strict superset of the peers we previously put
|
||||
records to: The peers we could connect to out of the K closest we learned
|
||||
about. Finally, we are changing the way that people write 'ipfs'
|
||||
multiaddrs. Currently, ipfs multiaddrs look something like
|
||||
`/ip4/104.131.131.82/tcp/4001/ipfs/QmaCpDMGvV2BGHeYERUEnRQAwe3N8SzbUtfsmvsqQLuvuJ`.
|
||||
But caling them 'ipfs' multiaddrs is a bit misleading, as this is actually
|
||||
the multiaddr of a libp2p peer that runs ipfs. Other protocols using libp2p
|
||||
right now still have to use multiaddrs that say 'ipfs', without actually
|
||||
having anything to do with ipfs. Towards that, we are renaming them to
|
||||
'p2p' multiaddrs. Moving forward these addresses will be written as:
|
||||
`/ip4/104.131.131.82/tcp/4001/p2p/QmaCpDMGvV2BGHeYERUEnRQAwe3N8SzbUtfsmvsqQLuvuJ`.
|
||||
This release adds support for *parsing* both types of addresses into the
|
||||
same binary format, and the binary format is remaining exactly the same. A
|
||||
future release will have the ipfs daemon switch to *printing* out addresses
|
||||
this way, once a large enough portion of the network has upgraded.
|
||||
|
||||
On the ipfs side of things, we've added a few small features. The first of
|
||||
which is moving to embedding public keys inside IPNS records. This allows
|
||||
lookups to be faster, as we only need to fetch the record itself (and not the
|
||||
public key separately), and also fixes an issue where DHT peers wouldnt store a
|
||||
record for a peer if they didn't have their public key already. Combined with
|
||||
some of the DHT and dialing fixes, this should improve the performance of IPNS
|
||||
(once a majority of the network updates).
|
||||
|
||||
The second feature added is the automatic inclusion of the git plugin in the
|
||||
default build. With this, ipfs can ingest git repositories and other data
|
||||
directly, and operate over it. For more information on this, see [the
|
||||
go-ipld-git repo](https://github.com/ipfs/go-ipld-git).
|
||||
|
||||
Various other changes were merged in this release, including great
|
||||
documentation, a good number of smaller bugfixes, refactoring and a good bit
|
||||
more. For the details, see the changelog below.
|
||||
|
||||
|
||||
## 0.4.16-rc2 2018-07-05
|
||||
- Bugfixes
|
||||
- Fix usage of file name vs path name in adder ([ipfs/go-ipfs#5167](https://github.com/ipfs/go-ipfs/pull/5167))
|
||||
- Fix `ipfs update` working with migrations ([ipfs/go-ipfs#5194](https://github.com/ipfs/go-ipfs/pull/5194))
|
||||
- Documentation
|
||||
- Grammer fix in fuse docs ([ipfs/go-ipfs#5164](https://github.com/ipfs/go-ipfs/pull/5164))
|
||||
|
||||
## 0.4.16-rc1 2018-06-27
|
||||
- Features
|
||||
- Embed public keys inside ipns records, use for validation ([ipfs/go-ipfs#5079](https://github.com/ipfs/go-ipfs/pull/5079))
|
||||
|
@ -551,6 +551,6 @@
|
||||
"language": "go",
|
||||
"license": "MIT",
|
||||
"name": "go-ipfs",
|
||||
"version": "0.4.16-rc1"
|
||||
"version": "0.4.16-rc2"
|
||||
}
|
||||
|
||||
|
@ -4,6 +4,6 @@ package config
|
||||
var CurrentCommit string
|
||||
|
||||
// CurrentVersionNumber is the current application's version literal
|
||||
const CurrentVersionNumber = "0.4.16-rc1"
|
||||
const CurrentVersionNumber = "0.4.16-rc2"
|
||||
|
||||
const ApiVersion = "/go-ipfs/" + CurrentVersionNumber + "/"
|
||||
|
Reference in New Issue
Block a user