Skip to content
New issue

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

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

Already on GitHub? Sign in to your account

feat: upgrade to local did resolver #48

Merged
merged 9 commits into from
Aug 23, 2019
Merged

Conversation

mi-xu
Copy link
Contributor

@mi-xu mi-xu commented Aug 21, 2019

This PR upgrades did-resolver from v0 to v1.

Instead of accessing a global resolve() function, this module now manages its own Resolver instance. Consequently, ethr-did-resolver and https-did-resolver must be included as dependencies, to be registered during construction of the local resolver.

Since uport-did-resolver and nacl-did-resolver are not supported by the local resolver, tests that currently depend on them must be refactored or removed.

@codecov

This comment has been minimized.

@mi-xu mi-xu changed the title [WIP] feat: upgrade to local did resolver feat: upgrade to local did resolver Aug 22, 2019
@mi-xu mi-xu changed the title feat: upgrade to local did resolver [WIP] feat: upgrade to local did resolver Aug 22, 2019
@mi-xu mi-xu changed the title [WIP] feat: upgrade to local did resolver feat: upgrade to local did resolver Aug 22, 2019
Copy link
Member

@mirceanis mirceanis left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Excellent work.
There's one tiny nit but it can be deferred to the test overhaul.

src/__tests__/JWT-test.ts Outdated Show resolved Hide resolved
@mi-xu mi-xu merged commit 52ed845 into develop Aug 23, 2019
@mi-xu mi-xu deleted the feature/no-global-did-resolver branch August 23, 2019 18:43
mi-xu added a commit that referenced this pull request Aug 26, 2019
* change iat to nbf

* feat: Set `iat` timestamp by default instead of `nbf` (#43)

* refactor: change createJWT to set iat by default instead of nbf

* test: add tests for iat behavior in createJWT

* feat: do not set iat if value in payload is null

* fix: set payload.iat to undefined instead of null to omit from JWT

* fix code style for division

* fix code style

BREAKING CHANGE: expiresIn option passed to createJWT now calculates exp from nbf instead of iat.

* chore: add release automation configuration (#44)

* feat: verifyJWT against nbf if present but use iat if not (#45)

* feat: verifyJWT against nbf if present but use iat if not

* fix: apply skew in the opposite direction when checking exp

* test: make some test inputs more clear

* test: use hard coded JWTs to test validFrom teimstamp

* style: remove unused constants

* feat: upgrade to local did resolver (#48)

* feat: upgrade to local did resolver

* refactor: export resolver so it can be mocked in tests

* wip: refactor tests to remove dependency on uport and nacl did resolvers

* test: fix tests to verify pregenerated JWT

* test: fix hard coded jwts for validFrom timestamp tests

* test: fix  remaining

* test: add tests for normalizeDID

* refactor: upgrade ethr-did-resolver to fix imports

* refactor: rename variables and clean up async syntax for tests
localredhead pushed a commit that referenced this pull request Aug 28, 2019
* change iat to nbf

* feat: Set `iat` timestamp by default instead of `nbf` (#43)

* refactor: change createJWT to set iat by default instead of nbf

* test: add tests for iat behavior in createJWT

* feat: do not set iat if value in payload is null

* fix: set payload.iat to undefined instead of null to omit from JWT

* fix code style for division

* fix code style

BREAKING CHANGE: expiresIn option passed to createJWT now calculates exp from nbf instead of iat.

* chore: add release automation configuration (#44)

* feat: verifyJWT against nbf if present but use iat if not (#45)

* feat: verifyJWT against nbf if present but use iat if not

* fix: apply skew in the opposite direction when checking exp

* test: make some test inputs more clear

* test: use hard coded JWTs to test validFrom teimstamp

* style: remove unused constants

* feat: upgrade to local did resolver (#48)

* feat: upgrade to local did resolver

* refactor: export resolver so it can be mocked in tests

* wip: refactor tests to remove dependency on uport and nacl did resolvers

* test: fix tests to verify pregenerated JWT

* test: fix hard coded jwts for validFrom timestamp tests

* test: fix  remaining

* test: add tests for normalizeDID

* refactor: upgrade ethr-did-resolver to fix imports

* refactor: rename variables and clean up async syntax for tests
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants