Skip to content
New issue

Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? # to your account

fix!: treat validity as opaque #307

Merged
merged 1 commit into from
Jan 18, 2024
Merged

Conversation

achingbrain
Copy link
Member

Instead of parsing the validity field of an IPNS record as a timestamp during unmarshalling, treat it as an opaque string value.

This ensures we can round-trip records supplied by other systems which may have a different interpretation of rfc3339 dates, for example.

It also means we can handle different types of validity types, not just EOL.

BREAKING CHANGE: the validity field is now a string

Instead of parsing the validity field of an IPNS record as a timestamp
during unmarshalling, treat it as an opaque string value.

This ensures we can round-trip records supplied by other systems which
may have a different interpretation of rfc3339 dates, for example.

It also means we can handle different types of validity types, not
just EOL.

BREAKING CHANGE: the validity field is now a string
@achingbrain achingbrain merged commit 461190e into main Jan 18, 2024
16 checks passed
@achingbrain achingbrain deleted the fix/treat-validity-as-opaque branch January 18, 2024 12:57
github-actions bot pushed a commit that referenced this pull request Jan 18, 2024
## [9.0.0](v8.0.4...v9.0.0) (2024-01-18)

### ⚠ BREAKING CHANGES

* the validity field is now a string

### Bug Fixes

* treat validity as opaque ([#307](#307)) ([461190e](461190e))
jtsmedley added a commit to filebase/js-ipns that referenced this pull request Jan 25, 2024
* deps: bump @libp2p/crypto from 3.0.4 to 4.0.0 (ipfs#304)

Bumps [@libp2p/crypto](https://github.com/libp2p/js-libp2p) from 3.0.4 to 4.0.0.
- [Release notes](https://github.com/libp2p/js-libp2p/releases)
- [Changelog](https://github.com/libp2p/js-libp2p/blob/main/.release-please.json)
- [Commits](libp2p/js-libp2p@perf-v3.0.4...utils-v4.0.0)

---
updated-dependencies:
- dependency-name: "@libp2p/crypto"
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* chore(release): 8.0.2 [skip ci]

## [8.0.2](ipfs/js-ipns@v8.0.1...v8.0.2) (2024-01-15)

### Dependencies

* bump @libp2p/crypto from 3.0.4 to 4.0.0 ([ipfs#304](ipfs#304)) ([ed83244](ipfs@ed83244))

* fix: mark package as side-effect free (ipfs#305)

[Tree shaking](https://webpack.js.org/guides/tree-shaking/) results in smaller web bundles by deleting unused code.

This module is side-effect free so mark it as such to signal to bundlers that unused exports can be excluded from bundles.

* chore(release): 8.0.3 [skip ci]

## [8.0.3](ipfs/js-ipns@v8.0.2...v8.0.3) (2024-01-16)

### Bug Fixes

* mark package as side-effect free ([ipfs#305](ipfs#305)) ([a389fe8](ipfs@a389fe8))

* fix: log type as string (ipfs#306)

The value field is a string so it needs to be logged as `%s` - logging as `%b` will throw.

* chore(release): 8.0.4 [skip ci]

## [8.0.4](ipfs/js-ipns@v8.0.3...v8.0.4) (2024-01-18)

### Bug Fixes

* log type as string ([ipfs#306](ipfs#306)) ([de68e4c](ipfs@de68e4c))

* fix!: treat validity as opaque (ipfs#307)

Instead of parsing the validity field of an IPNS record as a timestamp
during unmarshalling, treat it as an opaque string value.

This ensures we can round-trip records supplied by other systems which
may have a different interpretation of rfc3339 dates, for example.

It also means we can handle different types of validity types, not
just EOL.

BREAKING CHANGE: the validity field is now a string

* chore(release): 9.0.0 [skip ci]

## [9.0.0](ipfs/js-ipns@v8.0.4...v9.0.0) (2024-01-18)

### ⚠ BREAKING CHANGES

* the validity field is now a string

### Bug Fixes

* treat validity as opaque ([ipfs#307](ipfs#307)) ([461190e](ipfs@461190e))

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: semantic-release-bot <semantic-release-bot@martynus.net>
Co-authored-by: Alex Potsides <alex@achingbrain.net>
# for free to join this conversation on GitHub. Already have an account? # to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant