Commit Graph

417 Commits

Author SHA1 Message Date
Gus Eggert
f855bfe6ef
feat: add basic gateway tracing (#8595)
* add deprecation warning when tracer plugins are loaded
* add response format attribute to span in gateway handler
* add note about tracing's experimental status in godoc
* add nil check for TTL when adding name span attrs
* add basic sharness test for integration with otel collector
* add nil check in UnixFSAPI.processLink
* test: sharness check all json objs for swarm span
* add env var docs to docs/environment-variables.md
* chore: pin the otel collector version
* add tracing spans per response type (#8841)
* docs: tracing with jaeger-ui

Co-authored-by: Marcin Rataj <lidel@lidel.org>
2022-04-04 19:24:05 +02:00
Marcin Rataj
d6de97b417
docs: gateway.md (#8825)
Adds link to relevant pages at docs.ipfs.io
2022-03-28 16:31:36 +02:00
Marcin Rataj
4cabdfefbf
feat(gateway): Block and CAR response formats (#8758)
* feat: serveRawBlock implements ?format=block
* feat: serveCar implements ?format=car
* feat(gw): ?format= or Accept HTTP header

- extracted file-like content type responses to separate .go files
- Accept HTTP header with support for application/vnd.ipld.* types

* fix: use .bin for raw block content-disposition

.raw may be handled by something, depending on OS, and .bin
seems to be universally "binary file" across all systems:
https://en.wikipedia.org/wiki/List_of_filename_extensions_(A%E2%80%93E)

* refactor: gateway_handler_unixfs.go

- Moved UnixFS response handling to gateway_handler_unixfs*.go files.
- Removed support for X-Ipfs-Gateway-Prefix (Closes #7702)

* refactor: prefix cleanup and readable paths

- removed dead code after X-Ipfs-Gateway-Prefix is gone
  (https://github.com/ipfs/go-ipfs/issues/7702)
- escaped special characters in content paths returned with http.Error
  making them both safer and easier to reason about (e.g. when invisible
  whitespace Unicode is used)
2022-03-17 17:15:24 +01:00
Gus Eggert
bc33ed4c35
Update PATCH_RELEASE_TEMPLATE.md 2022-03-16 17:50:46 -04:00
Adin Schmahmann
eafa1c7345
docs: note the default reprovider strategy as all (#8603) 2022-03-10 01:42:33 -08:00
Gus Eggert
10ff11b4ca
chore: add instructions for Chocolatey release 2022-03-01 10:35:19 -05:00
Adin Schmahmann
686993f6f2
docs: add Internal.UnixFSShardingSizeThreshold (#8723)
Co-authored-by: Marcin Rataj <lidel@lidel.org>
2022-02-18 23:37:55 +01:00
Manuel Alonso
edb32ac3d7
chore(gateway): debug logging for the http requests (#8518)
* chore(gateway): better logging for the http requests

* chore(gateway): removed defer and add more data to the final log

* chore(gateway): debug logging refactor

* chore(gateway): use debug w/o context when only msg

* doc: add cmd for log level

* chore: add more logs and address fedback

* chore(gateway): log subdomains and from=requestURI, refactor

* chore(gateway): fix debug redirect
2022-02-15 17:13:09 -05:00
Marcin Rataj
f9643a61d7
docs: optionalInteger|String|Duration (#8729) 2022-02-10 23:52:18 +01:00
Thibault Meunier
a93907a40f
feat: DNS.MaxCacheTTL for DNS-over-HTTPS resolvers (#8615)
* feat: Add MaxCacheTTL option for DNS-over-HTTPS resolvers
* Update libp2p/go-doh-resolver dependencies to support Options
* feat: Add `DNS.MaxCacheTTL` config documentation
* docs: DNS.MaxCacheTTL
* chore: go-ipfs-config@v0.19.0
Co-authored-by: Gus Eggert <gus@gus.dev>
Co-authored-by: Marcin Rataj <lidel@lidel.org>
2022-02-10 22:26:14 +01:00
Shu Shen
012be8ae08 chore: bump to go-ipfs@0.11 in go-ipfs-as-a-library 2022-02-02 21:15:51 -08:00
Marcin Rataj
4ad316803e
docs: update badger section in config.md (#8662)
This should fix the issue of users thinking badger
is "no-brainer faster choice" and then running into problems.

Co-authored-by: Johnny <9611008+johnnymatthews@users.noreply.github.com>
2022-01-28 23:22:26 +01:00
chblodg
562365f4fc Adding PowerShell to Minimal Go Installation
Separated CMD and PowerShell to add additional support.
2022-01-14 11:35:11 -05:00
Somajit
7e4fcbb324 Fixed typos in docs/config.md 2022-01-14 11:32:00 -05:00
Gus Eggert
deb79a2587
chore: add release template snippet for fetching artifact tarball 2021-12-09 15:47:44 -05:00
Gus Eggert
007921b900 chore: add release steps for upgrading Go 2021-12-09 11:24:02 -05:00
Marten Seemann
48a6cac00b
feat: Swarm.EnableHolePunching flag (#8562)
* feat: use Swarm.EnableHolePunching flag within libp2p
* docs: Swarm.EnableHolePunching

Co-authored-by: Marcin Rataj <lidel@lidel.org>
Co-authored-by: Adin Schmahmann <adin.schmahmann@gmail.com>
2021-11-30 11:18:51 -08:00
jwh
029d82c4ea
feat: enabling pubsub and ipns-pubsub via config flags (#8510)
* Allow pubsub and namesys-pubsub to be enabled via config

Signed-off-by: Joe Holden <jwh@zorins.us>
Co-authored-by: Marcin Rataj <lidel@lidel.org>
Co-authored-by: Adin Schmahmann <adin.schmahmann@gmail.com>
2021-11-30 11:00:11 -08:00
Jorropo
c2953ab8f1
feat: Addresses.AppendAnnounce (#8177)
* feat: Addresses.AppendAnnounce

Closes #7791

* fix: deduplicate Swarm.Announce and AppendAnnounce

https://github.com/ipfs/go-ipfs/pull/8177#discussion_r759317772
https://github.com/ipfs/go-ipfs/pull/8177#discussion_r759320332

Co-authored-by: Marcin Rataj <lidel@lidel.org>
2021-11-30 17:58:19 +01:00
Marcin Rataj
82c1bfa0e6 feat: hard deprecation of IPFS_REUSEPORT
Years passed and we still see it. Time to force users to switch to
LIBP2P_TCP_REUSEPORT.
2021-11-29 14:42:30 -05:00
Adin Schmahmann
52c177ced9
feat: go-libp2p 0.16, UnixFS autosharding and go-datastore with contexts (#8563)
* plumb through go-datastore context changes

* update go-libp2p to v0.16.0
* use LIBP2P_TCP_REUSEPORT instead of IPFS_REUSEPORT
* use relay config
* making deprecation notice match the go-ipfs-config key
* docs(config): circuit relay v2
* docs(config): fix links and headers
* feat(config): Internal.Libp2pForceReachability

This switches to config that supports setting and reading
Internal.Libp2pForceReachability OptionalString flag

* use configuration option for static relays

* chore: go-ipfs-config v0.18.0

https://github.com/ipfs/go-ipfs-config/releases/tag/v0.18.0

* feat: circuit v1 migration prompt when Swarm.EnableRelayHop is set (#8559)
* exit when Swarm.EnableRelayHop is set
* docs: Experimental.ShardingEnabled migration

This ensures existing users of global sharding experiment get notified
that the flag no longer works + that autosharding happens automatically.

For people who NEED to keep the old behavior (eg. have no time to
migrate today) there is a note about restoring it with
`UnixFSShardingSizeThreshold`.

* chore: add dag-jose code to the cid command output

* add support for setting automatic unixfs sharding threshold from the config
* test: have tests use low cutoff for sharding to mimic old behavior
* test: change error message to match the current error
* test: Add automatic sharding/unsharding tests (#8547)
* test: refactored naming in the sharding sharness tests to make more sense

* ci: set interop test executor to convenience image for Go1.16 + Node
* ci: use interop master

Co-authored-by: Marcin Rataj <lidel@lidel.org>
Co-authored-by: Marten Seemann <martenseemann@gmail.com>
Co-authored-by: Marcin Rataj <lidel@lidel.org>
Co-authored-by: Gus Eggert <gus@gus.dev>
Co-authored-by: Lucas Molas <schomatis@gmail.com>
2021-11-29 19:58:05 +01:00
Steve Loeppky
ba2445ae72
Updating release template based off some 0.10 learnings (#8491)
* Updating release template based off some 0.10 learnings

This addresses the easy items in https://github.com/ipfs/go-ipfs/issues/8248

* Further updates based on 2021-10-07 discussion.

* Added OrbitDB to early testers.

* Fixing early tester username references.

* Being clear about how to contact early testers.
2021-11-23 14:32:22 -05:00
Dimitris Apostolou
0c2f9d5950
Fix typos (#8548) 2021-11-17 21:16:06 +01:00
Adin Schmahmann
acede6f73c
Examples no longer need go mod replace (#8516)
* chore: bump examples to use v0.10.0
* feat: build examples against released packages instead of using replace directives to refer to the parent repo
* ci: run examples against the latest (unreleased) version of go-ipfs
2021-10-26 11:31:50 -04:00
Marcin Rataj
8b7432d6e8
chore: go-ipfs-files v0.0.9 (#8488)
Closes #8445
Closes #8406
2021-10-05 23:53:52 +02:00
Gus Eggert
0a4e484b4f
Update RELEASE_ISSUE_TEMPLATE.md 2021-10-04 15:47:01 -04:00
Gus Eggert
eaf464c41b
Update RELEASE_ISSUE_TEMPLATE.md 2021-10-04 15:28:17 -04:00
Gus Eggert
e4a5513045
Update RELEASE_ISSUE_TEMPLATE.md 2021-10-01 17:04:10 -04:00
Gus Eggert
86dc88c126
Update RELEASE_ISSUE_TEMPLATE.md 2021-10-01 17:02:25 -04:00
Steve Loeppky
727df2ceaf
Updating chocolatey to reference go-ipfs 2021-10-01 08:12:47 -07:00
Adin Schmahmann
85e30b9b36 fuse: load unixfs adls as their dagpb substrates 2021-09-27 17:50:44 -04:00
Marten Seemann
2589e1f65e enable the legacy mDNS implementation 2021-09-27 17:50:00 -04:00
Adin Schmahmann
5471092d85 chore: update go-path 2021-09-27 15:50:23 -04:00
Marten Seemann
4969ed2b17 chore: update go-libp2p to v0.15.0 2021-09-27 11:12:42 -04:00
Daniel Martí
d6127b062c make json, cbor, and git codecs error on empty input 2021-09-23 13:01:50 -04:00
Gus Eggert
65d570c6cb
chore: update IPFS Desktop testing steps (#8393)
* chore: update IPFS Desktop testing steps

Co-authored-by: Marcin Rataj <lidel@lidel.org>
2021-09-03 17:49:46 +02:00
Jesse Bouwman
cb189c7b78 go mod tidy ipfs library example
The code example for using IPFS as a library doesn't run unless indirect dependencies are updated:

```
$ go version
go version go1.17 linux/amd64
$ uname -a
Linux home 4.19.0-17-amd64 #1 SMP Debian 4.19.194-3 (2021-07-18) x86_64 GNU/Linux
$ go run main.go
go: github.com/ipfs/go-ipfs@v0.9.1 requires
	github.com/ipfs/go-bitswap@v0.4.0: missing go.sum entry; to add it:
	go mod download github.com/ipfs/go-bitswap
go: github.com/ipfs/go-ipfs@v0.9.1 requires
	github.com/ipfs/go-bitswap@v0.4.0: missing go.sum entry; to add it:
	go mod download github.com/ipfs/go-bitswap
```

Remedied by:

```
$ go mod tidy
$ go run main.go
-- Getting an IPFS node running --
Spawning node on a temporary repo
    ...
```

Also, require go version 1.16, otherwise, example can fail under go
1.15 with errors like:

```
go build github.com/lucas-clemente/quic-go/internal/qtls:
    build constraints exclude all Go files in
    /home/jbouwman/go/pkg/mod/github.com/lucas-clemente/quic-go@v0.23.0/internal/qtls
```
2021-08-30 09:00:39 -07:00
Petar Maymounkov
c9cc09f6f7
Cosmetic fixups in examples (#8325)
* test the examples in CI
* combine the two examples into a single one
2021-08-27 11:55:26 -04:00
Adin Schmahmann
7448340d20
support bitswap configurability (#8268)
* feat: extract Bitswap fx initialization to its own file
* chore: bump go-bitswap dependency
* feat: bump go-ipfs-config dependency and utilize the new Internal.Bitswap configuration options. Add documentation around the new OptionalInteger config type as well as the Internal.Bitswap options.
* docs(docs/config.md): move the table of contents towards the top of the document and update it

Co-authored-by: Petar Maymounkov <petarm@gmail.com>
Co-authored-by: Marcin Rataj <lidel@lidel.org>
Co-authored-by: Gus Eggert <877588+guseggert@users.noreply.github.com>
2021-08-18 14:15:16 -04:00
Gus Eggert
679c004a46 Merge branch 'master' into update-go-on-ci-guseggert 2021-08-16 15:24:34 -04:00
Marcin Rataj
6e610066f6
fix: macos notarized fs-repo-migrations (#8333)
Uses: https://github.com/ipfs/distributions/pull/381
Closes #8240
2021-08-12 18:52:23 +02:00
lasiar
d00e9656ac refactor(as-a-library): change comment with default path repo 2021-08-03 08:46:16 -07:00
lasiar
da0afea33b refactor(as-a-library): remove unused context
createTempRepo doesn't use context
2021-08-03 08:46:16 -07:00
lasiar
67fdd6e876 refactor(as-a-library): remove redundant alias
libp2p doesn't need alias
2021-08-03 08:46:16 -07:00
lasiar
4a9dace814 refactor(as-a-library): wrap error
wrap error handling from connectToPeers in a closure
2021-08-03 08:46:16 -07:00
lasiar
d6f442bb86 refactor(as-a-library): replace deprecated functions and structures 2021-08-03 08:46:16 -07:00
lasiar
c5b0f15003 fix(as-a-library): go mod tidy 2021-08-03 08:46:15 -07:00
Gus Eggert
db2684f388 Merge branch 'master' into update-go-on-ci-guseggert 2021-08-02 14:42:32 -04:00
Steven Allen
9c1bb99eeb
fix: spelling
Co-authored-by: Adin Schmahmann <adin.schmahmann@gmail.com>
2021-07-21 20:45:45 -07:00
Steven Allen
3745047ccf doc(profile): improve profiling docs 2021-07-21 18:04:11 -07:00