Commit Graph

143 Commits

Author SHA1 Message Date
Jorropo
3ab1086f71 chore: migrate go-libipfs to boxo
Resolves #9677, #9676, #9675, #9736
2023-03-28 22:05:25 -04:00
Jorropo
1f5763f787 chore: deprecate the pubsub api
Fixes #9717
2023-03-15 04:42:02 +01:00
Marcin Rataj
82467bc936 refactor: rename to kubo 2022-07-06 18:40:37 +02:00
Jorropo
a433064d72
chore: replace ioutil with io and os (#8969)
Co-authored-by: Håvard Anda Estensen <haavard.ae@gmail.com>
2022-06-14 12:37:02 -04:00
T Mo
9a84a4f06e
pubsub multibase encoding (#8933)
* pubsub multibase encoding

Adds clarification for pubsub multibase encoding over HTTP RPC for issue https://github.com/ipfs/ipfs-docs/issues/1007

* Grammatical change

* Moved period
2022-05-06 08:49:15 -07:00
Marcin Rataj
a61c53f87f
feat(cmds): document deprecated RPC API commands (#8802)
* feat(cmds): add deprecated and experimental status

Added programmatic state annotation introduced in
https://github.com/ipfs/go-ipfs-cmds/pull/225
for already deprecated / experimental commands.

* chore: go-ipfs-cmds v0.7.0

Co-authored-by: Lucas Molas <schomatis@gmail.com>
2022-03-22 20:46:32 +01:00
Cory Schwartz
a43e506d7f
fix: multibase in pubsub http rpc (#8183)
* multibase encoding on pubsub
* emit multibase for json clients
* refactor(pubsub): base64url for all URL args

This makes it easier to reason about.
Also added better helptext to each command explaining how the binary
data is encoded on the wire, and how to process it in userland.

* refactor: remove ndpayload and lenpayload

Those output formats are undocumented and seem to be only used in tests.
This change removes their implementation and replaces it with error
message to use JSON instead.

I also refactored tests to test the --enc=json response format instead
of imaginary one, making tests more useful as they also act as
regression tests for HTTP RPC.

* test(pubsub): go-ipfs-api

Testing against compatible version from
https://github.com/ipfs/go-ipfs-api/pull/255

* refactor: safeTextListEncoder

Making it clear what it does and why

* refactor(pubsub): unify peerids

This ensures `ipfs pubsub sub` returns the same peerids in the `From`
field as `ipfs pubsub peers`.

libp2p already uses base encoding, no need to double wrap or use custom
multibase.

* test(pubsub): go-ipfs-http-client

* refactor(pubsub): make pub command read from a file

We want to send payload in the body as multipart so users can use
existing tools like curl for publishing arbitrary bytes to a topic.

StringArg was created for "one message per line" use case, and if data
has `\n` or `\r\n` byte sequences, it will cause payload to be split. It
is not possible to undo this, because mentioned sequences are lost, so
we are not able to tell if it was `\n` or `\r\n`

We already avoid this problem in `block put` and `dht put` by reading
payload via FileArg which does not mangle binary data and send it as-is.
It feel like `pubsub pub` should be using it in the first place anyway,
so this commit replaces StringArg with FileArg.

This also closes https://github.com/ipfs/go-ipfs/issues/8454
and makes rpc in go-ipfs easier to code against.

* test(pubsub): publishing with line breaks

Making sure we don't see regressions in the future.
Ref. https://github.com/ipfs/go-ipfs/issues/7939

* chore: disable pubsub interop for now

See
344f692d8c

* test: t0322-pubsub-http-rpc.sh

- Adds HTTP RPC regression test that ensures topic is encoded as URL-safe
  multibase.
- Moves pubsub tests to live in unique range ./t032x

* fix(ci):  js-ipfs with  fixed pubsub wire format

uses js-ipfs from https://github.com/ipfs/js-ipfs/pull/3922 
until js-ipfs release can ship with dependency on go-ipfs 0.11.0-rc1

Co-authored-by: Marcin Rataj <lidel@lidel.org>
Co-authored-by: Adin Schmahmann <adin.schmahmann@gmail.com>
2021-11-29 23:06:54 +01:00
gammazero
7193f950d7 Escape non-printable characters in user output
Replaces control characters and non-printable characters with escape sequences, in any fields that are printed by the CLI, which could have been user input.

Output from `ipfs cat` is unchanged.
2020-12-17 18:16:34 -08:00
Steven Allen
c58e3e4c7d fix: remove pubsub discovery hack
Pubsub handles this internally now.
2020-05-29 16:42:10 -07:00
Steven Allen
5f64b270f8 cmdkit -> cmds
License: MIT
Signed-off-by: Steven Allen <steven@stebalien.com>
2019-05-10 23:00:20 -07:00
Jakub Sztandera
42e191c017 gx: unrewrite
License: MIT
Signed-off-by: Jakub Sztandera <kubuxu@protonmail.ch>
2019-03-05 18:33:56 +01:00
Steven Allen
3fa1bfe1bc gx: update cmds and flatfs
fixes #6028, fixes crash when writing after closing on flatfs.

License: MIT
Signed-off-by: Steven Allen <steven@stebalien.com>
2019-03-01 12:17:49 -08:00
Steven Allen
f227862e88 gx: update go-ipfs-cmds, go-bitswap, go-libp2p-kad-dht, and go-mplex
Fixes the latest batch of bugs found in RC testing.

License: MIT
Signed-off-by: Steven Allen <steven@stebalien.com>
2019-02-27 12:39:24 -08:00
Hector Sanjuan
6972a9aa4d Gx Bubble. libp2p-6.0.38
License: MIT
Signed-off-by: Hector Sanjuan <code@hector.link>
2019-02-27 01:10:59 +00:00
Steven Allen
3c2536dd81 gx: update go-ipfs-cmds
fixes #6021

License: MIT
Signed-off-by: Steven Allen <steven@stebalien.com>
2019-02-25 16:45:43 -07:00
Steven Allen
fea7ae727f gx: update go-cid
License: MIT
Signed-off-by: Steven Allen <steven@stebalien.com>
2019-02-20 20:29:06 -08:00
Steven Allen
f924f57c61 gx: update go-bitswap and go-libp2p-kad-dht
* go-bitswap: fix some race conditions.
* go-libp2p-kad-dht: fix a goroutine leak.

License: MIT
Signed-off-by: Steven Allen <steven@stebalien.com>
2019-02-20 17:19:54 -08:00
Steven Allen
2f17b951c2 gx: update deps
* Updates go-ipfs-cmds to try to get the tests to pass on travis.
* While we're at it, fix duplicate gx deps.

License: MIT
Signed-off-by: Steven Allen <steven@stebalien.com>
2019-02-19 13:12:21 -08:00
Steven Allen
91ca5911be coreapi: return coreiface.ErrNotSupported when "catting" symlinks.
License: MIT
Signed-off-by: Steven Allen <steven@stebalien.com>
2019-02-19 03:48:04 -08:00
Jakub Sztandera
28cf3de0f9 Update protobuf
License: MIT
Signed-off-by: Jakub Sztandera <kubuxu@protonmail.ch>
2019-02-18 20:46:22 +01:00
Steven Allen
cf0d4706e2 gx: update libp2p stuff
License: MIT
Signed-off-by: Steven Allen <steven@stebalien.com>
2019-02-14 14:58:35 -08:00
Steven Allen
e97a60b073 gx: update go-ipfs-files
fix compatibility issue with js-ipfs

License: MIT
Signed-off-by: Steven Allen <steven@stebalien.com>
2019-02-11 10:48:58 -08:00
Łukasz Magiera
648cc40ec3 coreapi: fix import grouping after extracting iface
License: MIT
Signed-off-by: Łukasz Magiera <magik6k@gmail.com>
2019-02-09 01:57:26 +01:00
Łukasz Magiera
7ed6b518b6 coreapi: update imports to updated interface
License: MIT
Signed-off-by: Łukasz Magiera <magik6k@gmail.com>
2019-02-09 01:42:32 +01:00
Łukasz Magiera
7c2aa0e9a9 gx: update go-unixfs to propagate archive changes
License: MIT
Signed-off-by: Łukasz Magiera <magik6k@gmail.com>
2019-01-30 20:58:32 +01:00
Hector Sanjuan
ab270fbaa7 Bubble go-ipfs-cmds 2.0.10
License: MIT
Signed-off-by: Hector Sanjuan <hector@protocol.ai>
2019-01-10 21:31:11 +01:00
Łukasz Magiera
2c2f9f2bed coreapi: implement --local with Offline option
License: MIT
Signed-off-by: Łukasz Magiera <magik6k@gmail.com>
2018-12-20 16:40:51 +01:00
Łukasz Magiera
0618fd77be gx: update go-ipfs-files to 2.0
License: MIT
Signed-off-by: Łukasz Magiera <magik6k@gmail.com>
2018-12-20 13:52:20 +01:00
Steven Allen
90926ca5c7 gx: update go-ipfs-cmds
License: MIT
Signed-off-by: Steven Allen <steven@stebalien.com>
2018-12-12 16:35:42 -08:00
Overbool
51fa833fda cmds: use MakeTypedEncoder
License: MIT
Signed-off-by: Overbool <overbool.xu@gmail.com>
2018-11-10 12:11:45 +08:00
Steven Allen
0d80fc54c3 gx: update go-log and sha256
fixes #5709

License: MIT
Signed-off-by: Steven Allen <steven@stebalien.com>
2018-11-02 21:17:20 -07:00
Steven Allen
e332af8ed5 commands: fix a bunch of tiny commands-lib issues
* Always check errors returned by emit. Otherwise, we may not notice when the
  client goes away.
* Make sure to use EmitOnce instead of Emit when appropriate. Otherwise, we
  break javascript.

(thanks Magik6k for finding this before we cut the release...)

License: MIT
Signed-off-by: Steven Allen <steven@stebalien.com>
2018-10-30 06:49:08 -07:00
Dominic Della Valle
38cae95f30 gx: update go-ipfs-cmds to 2.0.5
License: MIT
Signed-off-by: Dominic Della Valle <ddvpublic@gmail.com>
2018-10-26 19:50:32 -04:00
Steven Allen
37f0fd92c7 gx: update go-ipfs-cmds
(no code changes)

License: MIT
Signed-off-by: Steven Allen <steven@stebalien.com>
2018-10-26 09:26:53 -07:00
Łukasz Magiera
59e5a9c652 gx: update to use extracted go-ipfs-files
License: MIT
Signed-off-by: Łukasz Magiera <magik6k@gmail.com>
2018-10-18 10:16:31 +02:00
Łukasz Magiera
18d5999ebc coreapi pubsub: fix review nits
License: MIT
Signed-off-by: Łukasz Magiera <magik6k@gmail.com>
2018-10-05 11:51:36 -07:00
Łukasz Magiera
d6aa9527f2 pubsub cmd: switch to coreapi
License: MIT
Signed-off-by: Łukasz Magiera <magik6k@gmail.com>
2018-10-05 11:51:36 -07:00
Kejie Zhang
3dc0ce7fa1 refactor all command code
License: MIT
Signed-off-by: Kejie Zhang <601172892@qq.com>
2018-10-05 11:21:54 +08:00
Kevin Atkinson
d127f1be98 gx update libp2p/go-buffer-pool
License: MIT
Signed-off-by: Kevin Atkinson <k@kevina.org>
2018-10-04 20:05:26 -04:00
Kevin Atkinson
2e975add22 gx update go-libp2p-peerstore
License: MIT
Signed-off-by: Kevin Atkinson <k@kevina.org>
2018-10-04 20:04:22 -04:00
Lars Gierth
2c3ed7efb0 gx: update go-datastore, go-libp2p-swarm
License: MIT
Signed-off-by: Lars Gierth <larsg@systemli.org>
2018-10-04 19:52:42 -04:00
Steven Allen
dac058f8be gx: update go-log go-ipld-cbor
(and friends)

License: MIT
Signed-off-by: Steven Allen <steven@stebalien.com>
2018-09-24 05:36:29 -07:00
Steven Allen
b7484c1bca gx: update go-ipfs-cmds to the final release
License: MIT
Signed-off-by: Steven Allen <steven@stebalien.com>
2018-09-19 14:36:08 -07:00
keks
f4b32e36f4 update cmds to 2.0.0-rc1
License: MIT
Signed-off-by: keks <keks@cryptoscope.co>
2018-09-19 14:35:54 -07:00
keks
ef21c3bfab update go-ipfs-cmds to 2.0.0-beta2
License: MIT
Signed-off-by: keks <keks@cryptoscope.co>
2018-09-19 14:35:54 -07:00
keks
908ffddc1b big squash commit
excerpt of commit messages:
- update postrun functions in core/commands
- sharness: allow setting -i with TEST_IMMEDIATE=1
- cmds Run func returns error now
- gx update cmdkit to 1.1.2 and cmds to 2.0.0-beta1

License: MIT
Signed-off-by: keks <keks@cryptoscope.co>
2018-09-19 14:35:54 -07:00
Kevin Atkinson
d3174f4bd9 gx update and fix code to use new Cid type
License: MIT
Signed-off-by: Kevin Atkinson <k@kevina.org>
2018-09-11 22:21:04 -04:00
Steven Allen
a6e617f55c gx: update peerstore
Also:

* Updates go-floodsub to fix a data race.
* Updates golang-lru

License: MIT
Signed-off-by: Steven Allen <steven@stebalien.com>
2018-09-07 23:40:08 -07:00
Steven Allen
46a1d9d39b gx update deps
License: MIT
Signed-off-by: Steven Allen <steven@stebalien.com>
2018-08-31 10:29:26 -07:00
Łukasz Magiera
b0c480acf5 name cmd: move subcommands to subdirectory
License: MIT
Signed-off-by: Łukasz Magiera <magik6k@gmail.com>
2018-08-22 10:34:44 +02:00