Skip to content

Commit

Permalink
feat: Add CI for Spell Checking (#10637)
Browse files Browse the repository at this point in the history
* Create spellcheck.yml
* Create .codespell-ignore
---------

Co-authored-by: Marcin Rataj <[email protected]>
Co-authored-by: Guillaume Michel <[email protected]>
  • Loading branch information
3 people authored Jan 30, 2025
1 parent dab91c8 commit 9adab29
Show file tree
Hide file tree
Showing 30 changed files with 105 additions and 63 deletions.
21 changes: 21 additions & 0 deletions .codespell-ignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
Adin
nd
Nd
afile
thirdparty
receivedFrom
origN
hel
TotalIn
childs
userA
AssignT
OT
AssignT
fo
recusive
raison
Boddy
ressource
achin
re-using
21 changes: 21 additions & 0 deletions .github/workflows/spellcheck.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
name: Spell Check

on: [push, pull_request]

jobs:
spellcheck:
runs-on: ubuntu-latest

steps:
- name: Checkout code
uses: actions/checkout@v3

- name: Install Codespell
run: pip install codespell==2.4.0

- name: Run Codespell
uses: codespell-project/actions-codespell@v2
with:
only_warn: 1
ignore_words_file: .codespell-ignore
skip: "*.mod,*.sum,*.pdf,./docs/AUTHORS,./test/sharness/t0275-cid-security-data,./test/sharness/t0280-plugin-dag-jose-data,./bin"
2 changes: 1 addition & 1 deletion config/version.go
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ package config

const DefaultSwarmCheckPercentThreshold = 5

// Version allows controling things like custom user agent and update checks.
// Version allows controlling things like custom user agent and update checks.
type Version struct {
// Optional suffix to the AgentVersion presented by `ipfs id` and exposed
// via libp2p identify protocol.
Expand Down
2 changes: 1 addition & 1 deletion core/commands/version.go
Original file line number Diff line number Diff line change
Expand Up @@ -227,7 +227,7 @@ func DetectNewKuboVersion(nd *core.IpfsNode, minPercent int64) (VersionCheckOutp
return
}

// Ignore prerelases and development releases (-dev, -rcX)
// Ignore prereleases and development releases (-dev, -rcX)
if peerVersion.Metadata() != "" || peerVersion.Prerelease() != "" {
return
}
Expand Down
4 changes: 2 additions & 2 deletions docs/changelogs/v0.10.md
Original file line number Diff line number Diff line change
Expand Up @@ -320,7 +320,7 @@ See `ipfs swarm peering --help` for more details.
- More changelog grooming.
- Changelog grooming.
- node/tests: put most of the schema test cases here
- Add more explicit discussion of indicies to ListIterator.
- Add more explicit discussion of indices to ListIterator.
- node/bindnode: start of a reflect-based Node implementation
- add DeepEqual and start using it in tests
- Add enumerate methods to the multicodec registries. ([ipld/go-ipld-prime#176](https://github.com/ipld/go-ipld-prime/pull/176))
Expand Down Expand Up @@ -390,7 +390,7 @@ See `ipfs swarm peering --help` for more details.
- remove note about go modules in README ([libp2p/go-libp2p-noise#100](https://github.com/libp2p/go-libp2p-noise/pull/100))
- fix: remove deprecated call to pk.Bytes ([libp2p/go-libp2p-noise#99](https://github.com/libp2p/go-libp2p-noise/pull/99))
- github.com/libp2p/go-libp2p-peerstore (v0.2.7 -> v0.2.8):
- Fix perfomance issue in updating addr book ([libp2p/go-libp2p-peerstore#141](https://github.com/libp2p/go-libp2p-peerstore/pull/141))
- Fix performance issue in updating addr book ([libp2p/go-libp2p-peerstore#141](https://github.com/libp2p/go-libp2p-peerstore/pull/141))
- Fix test flakes ([libp2p/go-libp2p-peerstore#164](https://github.com/libp2p/go-libp2p-peerstore/pull/164))
- Only remove records during GC ([libp2p/go-libp2p-peerstore#135](https://github.com/libp2p/go-libp2p-peerstore/pull/135))
- sync: update CI config files ([libp2p/go-libp2p-peerstore#160](https://github.com/libp2p/go-libp2p-peerstore/pull/160))
Expand Down
2 changes: 1 addition & 1 deletion docs/changelogs/v0.11.md
Original file line number Diff line number Diff line change
Expand Up @@ -301,7 +301,7 @@ This work was [contributed](https://github.com/ipfs/go-ipfs/pull/8569) by [Ceram
- fix(graphsync): make sure linkcontext is passed (#207) ([ipfs/go-graphsync#207](https://github.com/ipfs/go-graphsync/pull/207))
- Merge final v0.6.x commit history, and 0.8.0 changelog (#205) ([ipfs/go-graphsync#205](https://github.com/ipfs/go-graphsync/pull/205))
- Fix broken link to IPLD selector documentation (#189) ([ipfs/go-graphsync#189](https://github.com/ipfs/go-graphsync/pull/189))
- fix: check errors before defering a close (#200) ([ipfs/go-graphsync#200](https://github.com/ipfs/go-graphsync/pull/200))
- fix: check errors before deferring a close (#200) ([ipfs/go-graphsync#200](https://github.com/ipfs/go-graphsync/pull/200))
- chore: fix checks (#197) ([ipfs/go-graphsync#197](https://github.com/ipfs/go-graphsync/pull/197))
- Merge the v0.6.x commit history (#190) ([ipfs/go-graphsync#190](https://github.com/ipfs/go-graphsync/pull/190))
- Ready for universal CI (#187) ([ipfs/go-graphsync#187](https://github.com/ipfs/go-graphsync/pull/187))
Expand Down
2 changes: 1 addition & 1 deletion docs/changelogs/v0.12.md
Original file line number Diff line number Diff line change
Expand Up @@ -58,7 +58,7 @@ As usual, this release includes important fixes, some of which may be critical f

- `ipfs refs local` will now list all blocks as if they were [raw]() CIDv1 instead of with whatever CID version and IPLD codecs they were stored with. All other functionality should remain the same.

Note: This change also effects [ipfs-update](https://github.com/ipfs/ipfs-update) so if you use that tool to mange your go-ipfs installation then grab ipfs-update v1.8.0 from [dist](https://dist.ipfs.tech/#ipfs-update).
Note: This change also effects [ipfs-update](https://github.com/ipfs/ipfs-update) so if you use that tool to manage your go-ipfs installation then grab ipfs-update v1.8.0 from [dist](https://dist.ipfs.tech/#ipfs-update).

Keep reading to learn more details.

Expand Down
2 changes: 1 addition & 1 deletion docs/changelogs/v0.14.md
Original file line number Diff line number Diff line change
Expand Up @@ -173,7 +173,7 @@ $ ipfs cid format -v 1 -b base256emoji bafybeigdyrzt5sfp7udm7hu76uh7y26nf3efuylq
- swarm: fix flaky TestDialExistingConnection test (#1509) ([libp2p/go-libp2p#1509](https://github.com/libp2p/go-libp2p/pull/1509))
- tcp: limit the number of connections in tcp suite test on non-linux hosts (#1507) ([libp2p/go-libp2p#1507](https://github.com/libp2p/go-libp2p/pull/1507))
- increase overly short require.Eventually intervals (#1501) ([libp2p/go-libp2p#1501](https://github.com/libp2p/go-libp2p/pull/1501))
- tls: fix flaky handshake cancelation test (#1503) ([libp2p/go-libp2p#1503](https://github.com/libp2p/go-libp2p/pull/1503))
- tls: fix flaky handshake cancellation test (#1503) ([libp2p/go-libp2p#1503](https://github.com/libp2p/go-libp2p/pull/1503))
- merge the transport test suite from go-libp2p-testing here ([libp2p/go-libp2p#1496](https://github.com/libp2p/go-libp2p/pull/1496))
- fix racy connection comparison in TestDialWorkerLoopBasic (#1499) ([libp2p/go-libp2p#1499](https://github.com/libp2p/go-libp2p/pull/1499))
- swarm: fix race condition in TestFailFirst (#1490) ([libp2p/go-libp2p#1490](https://github.com/libp2p/go-libp2p/pull/1490))
Expand Down
6 changes: 3 additions & 3 deletions docs/changelogs/v0.16.md
Original file line number Diff line number Diff line change
Expand Up @@ -106,7 +106,7 @@ The previous alternative is websocket secure, which require installing a reverse

#### How to enable WebTransport

Thoses steps are temporary and wont be needed once we make it enabled by default.
Those steps are temporary and won't be needed once we make it enabled by default.

1. Enable the WebTransport transport:
`ipfs config Swarm.Transports.Network.WebTransport --json true`
Expand Down Expand Up @@ -191,7 +191,7 @@ For more information, see `ipfs add --help` and `ipfs files --help`.
- docs: add WebTransport docs ([ipfs/kubo#9308](https://github.com/ipfs/kubo/pull/9308))
- chore: bump version to 0.16.0-rc1
- fix: ensure hasher is registered when using a hashing function
- feat: add webtransport as an optin transport ([ipfs/kubo#9293](https://github.com/ipfs/kubo/pull/9293))
- feat: add webtransport as an option transport ([ipfs/kubo#9293](https://github.com/ipfs/kubo/pull/9293))
- feat(gateway): _redirects file support (#8890) ([ipfs/kubo#8890](https://github.com/ipfs/kubo/pull/8890))
- docs: fix typo in changelog-v0.16.0.md
- Readme: Rewrite introduction and featureset (#9211) ([ipfs/kubo#9211](https://github.com/ipfs/kubo/pull/9211))
Expand Down Expand Up @@ -265,7 +265,7 @@ For more information, see `ipfs add --help` and `ipfs files --help`.
- sync: update CI config files ([ipfs/go-pinning-service-http-client#21](https://github.com/ipfs/go-pinning-service-http-client/pull/21))
- github.com/ipld/edelweiss (v0.1.4 -> v0.2.0):
- Release v0.2.0 (#60) ([ipld/edelweiss#60](https://github.com/ipld/edelweiss/pull/60))
- feat: add cachable modifier to methods (#48) ([ipld/edelweiss#48](https://github.com/ipld/edelweiss/pull/48))
- feat: add cacheable modifier to methods (#48) ([ipld/edelweiss#48](https://github.com/ipld/edelweiss/pull/48))
- adding licenses (#52) ([ipld/edelweiss#52](https://github.com/ipld/edelweiss/pull/52))
- sync: update CI config files ([ipld/edelweiss#56](https://github.com/ipld/edelweiss/pull/56))
- chore: replace deprecated ioutil with io/os ([ipld/edelweiss#59](https://github.com/ipld/edelweiss/pull/59))
Expand Down
10 changes: 5 additions & 5 deletions docs/changelogs/v0.18.md
Original file line number Diff line number Diff line change
Expand Up @@ -56,7 +56,7 @@ As much as possible, the aim is for a user to only think about how much memory t
and not need to think about translating that to hard numbers for connections, streams, etc.
More updates are likely in future Kubo releases, but with this release:
1. ``System.StreamsInbound`` is no longer bounded directly
2. ``System.ConnsInbound``, ``Transient.Memory``, ``Transiet.ConnsInbound`` have higher default computed values.
2. ``System.ConnsInbound``, ``Transient.Memory``, ``Transient.ConnsInbound`` have higher default computed values.

### 📝 Changelog

Expand Down Expand Up @@ -312,11 +312,11 @@ and various improvements have been made to improve the UX including:
- github.com/ipfs/kubo:
- fix: clarity: no user supplied rcmgr limits of 0 (#9563) ([ipfs/kubo#9563](https://github.com/ipfs/kubo/pull/9563))
- fix(gateway): undesired conversions to dag-json and friends (#9566) ([ipfs/kubo#9566](https://github.com/ipfs/kubo/pull/9566))
- fix: ensure connmgr is smaller then autoscalled ressource limits
- fix: ensure connmgr is smaller then autoscalled resource limits
- fix: typo in ensureConnMgrMakeSenseVsResourcesMgr
- docs: clarify browser descriptions for webtransport
- fix: update saxon download path
- fix: refuse to start if connmgr is smaller than ressource limits and not using none connmgr
- fix: refuse to start if connmgr is smaller than resource limits and not using none connmgr
- fix: User-Agent sent to HTTP routers
- test: port gateway sharness tests to Go tests
- fix: do not download saxon in parallel
Expand All @@ -338,7 +338,7 @@ and various improvements have been made to improve the UX including:
- fix: disable provide over HTTP with Routing.Type=auto (#9511) ([ipfs/kubo#9511](https://github.com/ipfs/kubo/pull/9511))
- Update version.go
- 'chore: update version.go'
- Clened up 0.18 changelog for release ([ipfs/kubo#9497](https://github.com/ipfs/kubo/pull/9497))
- Cleaned up 0.18 changelog for release ([ipfs/kubo#9497](https://github.com/ipfs/kubo/pull/9497))
- feat: turn on WebTransport by default ([ipfs/kubo#9492](https://github.com/ipfs/kubo/pull/9492))
- feat: fast directory listings with DAG Size column (#9481) ([ipfs/kubo#9481](https://github.com/ipfs/kubo/pull/9481))
- feat: add basic CLI tests using Go Test
Expand Down Expand Up @@ -484,7 +484,7 @@ and various improvements have been made to improve the UX including:
- run gofmt -s
- bump go.mod to Go 1.18 and run go fix
- test for reader / sizing behavior on large files ([ipfs/go-unixfsnode#34](https://github.com/ipfs/go-unixfsnode/pull/34))
- add helper to approximate test creation patter from ipfs-files ([ipfs/go-unixfsnode#32](https://github.com/ipfs/go-unixfsnode/pull/32))
- add helper to approximate test creation pattern from ipfs-files ([ipfs/go-unixfsnode#32](https://github.com/ipfs/go-unixfsnode/pull/32))
- chore: remove Stebalien/go-bitfield in favour of ipfs/go-bitfield
- github.com/ipfs/interface-go-ipfs-core (v0.7.0 -> v0.8.2):
- chore: version 0.8.2 (#100) ([ipfs/interface-go-ipfs-core#100](https://github.com/ipfs/interface-go-ipfs-core/pull/100))
Expand Down
6 changes: 3 additions & 3 deletions docs/changelogs/v0.19.md
Original file line number Diff line number Diff line change
Expand Up @@ -89,7 +89,7 @@ There are further followups up on libp2p resource manager improvements in Kubo [
and [0.18.1](https://github.com/ipfs/kubo/blob/master/docs/changelogs/v0.18.md#improving-libp2p-resource-management-integration):
1. `ipfs swarm limits` and `ipfs swarm stats` have been replaced by `ipfs swarm resources` to provide a single/combined view for limits and their current usage in a more intuitive ordering.
1. Removal of `Swarm.ResourceMgr.Limits` config. Instead [the power user can specify limits in a .json file that are fed directly to go-libp2p](https://github.com/ipfs/kubo/blob/master/docs/libp2p-resource-management.md#user-supplied-override-limits). This allows the power user to take advantage of the [new resource manager types introduced in go-libp2p 0.25](https://github.com/libp2p/go-libp2p/blob/master/CHANGELOG.md#new-resource-manager-types-) including "use default", "unlimited", "block all".
- Note: we don't expect most users to need these capablities, but they are there if so.
- Note: we don't expect most users to need these capabilities, but they are there if so.
1. [Doc updates](https://github.com/ipfs/kubo/blob/master/docs/libp2p-resource-management.md).

#### Gateways
Expand Down Expand Up @@ -205,11 +205,11 @@ For more information and rational see [#9717](https://github.com/ipfs/kubo/issue
- Merge Kubo: v0.18 ([ipfs/kubo#9581](https://github.com/ipfs/kubo/pull/9581))
- fix: clarity: no user supplied rcmgr limits of 0 (#9563) ([ipfs/kubo#9563](https://github.com/ipfs/kubo/pull/9563))
- fix(gateway): undesired conversions to dag-json and friends (#9566) ([ipfs/kubo#9566](https://github.com/ipfs/kubo/pull/9566))
- fix: ensure connmgr is smaller then autoscalled ressource limits
- fix: ensure connmgr is smaller then autoscalled resource limits
- fix: typo in ensureConnMgrMakeSenseVsResourcesMgr
- docs: clarify browser descriptions for webtransport
- fix: update saxon download path
- fix: refuse to start if connmgr is smaller than ressource limits and not using none connmgr
- fix: refuse to start if connmgr is smaller than resource limits and not using none connmgr
- fix: User-Agent sent to HTTP routers
- test: port gateway sharness tests to Go tests
- fix: do not download saxon in parallel
Expand Down
4 changes: 2 additions & 2 deletions docs/changelogs/v0.21.md
Original file line number Diff line number Diff line change
Expand Up @@ -75,7 +75,7 @@ The [`go-ipfs-http-client`](https://github.com/ipfs/go-ipfs-http-client) RPC has
been migrated into [`kubo/client/rpc`](../../client/rpc).

With this change the two will be kept in sync, in some previous releases we
updated the CoreAPI with new Kubo features but forgot to port thoses to the
updated the CoreAPI with new Kubo features but forgot to port those to the
http-client, making it impossible to use them together with the same coreapi
version.

Expand Down Expand Up @@ -142,7 +142,7 @@ Shared Size: 2048
Ratio: 1.615755
```

`ipfs --enc=json dag stat`'s keys are a non breaking change, new keys have been added but old keys with previous sementics are still here.
`ipfs --enc=json dag stat`'s keys are a non breaking change, new keys have been added but old keys with previous semantics are still here.

#### Accelerated DHT Client is no longer experimental

Expand Down
6 changes: 3 additions & 3 deletions docs/changelogs/v0.23.md
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@
Mplex is being deprecated, this is because it is unreliable and
randomly drop streams when sending data *too fast*.

New pieces of code rely on backpressure, that means the stream will dynamicaly
New pieces of code rely on backpressure, that means the stream will dynamically
slow down the sending rate if data is getting backed up.
Backpressure is provided by **Yamux** and **QUIC**.

Expand Down Expand Up @@ -111,7 +111,7 @@ the `/quic-v1` addresses only. For more background information, check [issue #94

Thanks to [probelab.io's RFM17.1](https://github.com/plprobelab/network-measurements/blob/master/results/rfm17.1-sharing-prs-with-multiaddresses.md) DHT servers will [now cache the addresses of content hosts for the lifetime of the provider record](https://github.com/libp2p/go-libp2p-kad-dht/commit/777160f164b8c187c534debd293157031e9f3a02).

This means clients who resolve content from theses servers get a responses which include both peer id and multiaddresses.
This means clients who resolve content from these servers get a responses which include both peer id and multiaddresses.
In most cases this enables skipping a second query which resolves the peer id to multiaddresses for stable enough peers.

This will improve content fetching lantency in the network overtime as servers updates.
Expand Down Expand Up @@ -175,7 +175,7 @@ Thx a lot @bmwiedemann for debugging this issue.
- chore: bump boxo for verifcid breaking changes
- chore: remove outdated comment (#10077) ([ipfs/kubo#10077](https://github.com/ipfs/kubo/pull/10077))
- chore: remove deprecated testground plans
- feat: allow users to optin again into mplex
- feat: allow users to option again into mplex
- feat: remove Mplex
- docs(readme): minimal reqs (#10066) ([ipfs/kubo#10066](https://github.com/ipfs/kubo/pull/10066))
- docs: add v0.23.md
Expand Down
2 changes: 1 addition & 1 deletion docs/changelogs/v0.24.md
Original file line number Diff line number Diff line change
Expand Up @@ -62,7 +62,7 @@ record remains cached before checking an upstream routing system, such as Amino
DHT, for updates. The TTL value in the IPNS record now serves as a hint for:

- `boxo/namesys`: the internal cache, determining how long the IPNS resolution
result is cached before asking upsteam routing systems for updates.
result is cached before asking upstream routing systems for updates.
- `boxo/gateway`: the `Cache-Control` HTTP header in responses to requests made
for `/ipns/name` content paths.

Expand Down
2 changes: 1 addition & 1 deletion docs/changelogs/v0.25.md
Original file line number Diff line number Diff line change
Expand Up @@ -44,7 +44,7 @@ After deprecating and removing mplex support by default in [v0.23.0](https://git
We now fully removed it. If you still need mplex support to talk with other pieces of software,
please try updating them, and if they don't support yamux or QUIC [talk to us about it](https://github.com/ipfs/kubo/issues/new/choose).

Mplex is unreliable by design, it will drop data and generete errors when sending data *too fast*,
Mplex is unreliable by design, it will drop data and generate errors when sending data *too fast*,
yamux and QUIC support backpressure, that means if we send data faster than the remote machine can process it, we slows down to match the remote's speed.

#### Graphsync Experiment Removal
Expand Down
2 changes: 1 addition & 1 deletion docs/changelogs/v0.27.md
Original file line number Diff line number Diff line change
Expand Up @@ -113,7 +113,7 @@ Kubo now only uses [trustless requests](https://specs.ipfs.tech/http-gateways/tr
- github.com/multiformats/go-multiaddr (v0.12.1 -> v0.12.2):
- chore: release v0.12.2
- tests: add round trip equality check to fuzz (#232) ([multiformats/go-multiaddr#232](https://github.com/multiformats/go-multiaddr/pull/232))
- fix: correctly parse ports as uint16 and explicitely fail on overflows (#228) ([multiformats/go-multiaddr#228](https://github.com/multiformats/go-multiaddr/pull/228))
- fix: correctly parse ports as uint16 and explicitly fail on overflows (#228) ([multiformats/go-multiaddr#228](https://github.com/multiformats/go-multiaddr/pull/228))
- replace custom random tests with testing.F (#227) ([multiformats/go-multiaddr#227](https://github.com/multiformats/go-multiaddr/pull/227))

</details>
Expand Down
2 changes: 1 addition & 1 deletion docs/changelogs/v0.29.md
Original file line number Diff line number Diff line change
Expand Up @@ -80,7 +80,7 @@ The hash function, CID version, or UnixFS raw leaves and chunker behaviors can b
- github.com/ipfs/go-ipfs-exchange-interface (v0.2.0 -> v0.2.1):
- chore: bump version
- Deprecate types and readme (#29) ([ipfs/go-ipfs-exchange-interface#29](https://github.com/ipfs/go-ipfs-exchange-interface/pull/29))
- docs: Add proper documenation to the interface.
- docs: Add proper documentation to the interface.
- github.com/ipfs/go-verifcid (v0.0.2 -> v0.0.3):
- chore: bump version
- chore: deprecate types and readme
Expand Down
Loading

0 comments on commit 9adab29

Please sign in to comment.