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: account recover with email #149

Merged
merged 7 commits into from
Nov 16, 2022
Merged

feat: account recover with email #149

merged 7 commits into from
Nov 16, 2022

Conversation

hugomrdias
Copy link
Contributor

Theres also a commit with changes to rename access to access-client

@cloudflare-workers-and-pages
Copy link

cloudflare-workers-and-pages bot commented Nov 9, 2022

Deploying with  Cloudflare Pages  Cloudflare Pages

Latest commit: 03596d0
Status: ✅  Deploy successful!
Preview URL: https://023f11cf.ucan-protocol.pages.dev
Branch Preview URL: https://feat-account-delegation.ucan-protocol.pages.dev

View logs

@hugomrdias hugomrdias temporarily deployed to dev November 9, 2022 16:57 Inactive
package.json Outdated Show resolved Hide resolved
const results = await ctx.kvs.accounts.get(capability.with)
if (!results) {
throw new Failure('Account not found...')
return new Failure('Account not found.')
Copy link
Member

Choose a reason for hiding this comment

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

It feels counter-intuitive to return an error...why can we not throw these?

Copy link
Contributor Author

Choose a reason for hiding this comment

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

These are known errors that should be returned to the user but not sent to sentry.
Ucanto supports multiple invocations in the same request thats why the responses are always arrays, so some invocations can succeed and some can error thats why we dont throw here.

In ucanto a known error like "account not found" is a valid response, the server types also include those. Any other exception error like "fail to parse json" that we want to send to sentry we should throw from the code.

// For testing
if (ctx.config.ENV === 'test') {
return encoded
return url
Copy link
Member

Choose a reason for hiding this comment

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

Only return in test?

Copy link
Contributor Author

Choose a reason for hiding this comment

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

yes just for tests so we can process the delegation without dealing with emails.

@hugomrdias hugomrdias temporarily deployed to dev November 16, 2022 19:34 Inactive
@hugomrdias hugomrdias temporarily deployed to dev November 16, 2022 19:36 Inactive
@hugomrdias hugomrdias temporarily deployed to dev November 16, 2022 19:48 Inactive
@hugomrdias hugomrdias merged commit 6c659ba into main Nov 16, 2022
@hugomrdias hugomrdias deleted the feat/account-delegation branch November 16, 2022 19:50
alanshaw pushed a commit that referenced this pull request Nov 18, 2022
🤖 I have created a release *beep* *boop*
---


##
[1.1.0](upload-client-v1.0.0...upload-client-v1.1.0)
(2022-11-18)


### Features

* account recover with email
([#149](#149))
([6c659ba](6c659ba))
* allow custom shard size
([#185](#185))
([0cada8a](0cada8a))
* explicit resource
([#181](#181))
([785924b](785924b))

---
This PR was generated with [Release
Please](https://github.com/googleapis/release-please). See
[documentation](https://github.com/googleapis/release-please#release-please).
vasco-santos pushed a commit that referenced this pull request Nov 22, 2022
🤖 I have created a release *beep* *boop*
---


##
[6.0.0](access-v5.0.2...access-v6.0.0)
(2022-11-22)


### ⚠ BREAKING CHANGES

* **access-client:** bump to major
* store/list and upload/list types now require nb object with optional
properties

### Features

* [#153](#153)
([#177](#177))
([d6d448c](d6d448c))
* **access-client:** bump to major
([4d5899f](4d5899f))
* account recover with email
([#149](#149))
([6c659ba](6c659ba))
* add support for list pagination in list capability invocations
([#184](#184))
([ced23db](ced23db))

---
This PR was generated with [Release
Please](https://github.com/googleapis/release-please). See
[documentation](https://github.com/googleapis/release-please#release-please).
gobengo pushed a commit that referenced this pull request Dec 7, 2022
🤖 I have created a release *beep* *boop*
---


##
[5.0.0](upload-client-v4.0.0...upload-client-v5.0.0)
(2022-12-07)


### ⚠ BREAKING CHANGES

* upgrade access-api @ucanto/* and @ipld/dag-ucan major versions
([#246](#246))
* upload/list items have a shards array property
([#229](#229))
* upgrade to `@ucanto/{interface,principal}`@^4.0.0
([#238](#238))
* follow up on the capabilities extract
([#239](#239))
* rename callback
([#198](#198))

### Features

* [#153](#153)
([#177](#177))
([d6d448c](d6d448c))
* a base for a new web3.storage upload-client
([#141](#141))
([9d4b5be](9d4b5be))
* **access-client:** cli and recover
([#207](#207))
([adb3a8d](adb3a8d))
* account recover with email
([#149](#149))
([6c659ba](6c659ba))
* add static uploads API
([#148](#148))
([d85d051](d85d051))
* allow custom shard size
([#185](#185))
([0cada8a](0cada8a))
* explicit resource
([#181](#181))
([785924b](785924b))
* follow up on the capabilities extract
([#239](#239))
([ef5e779](ef5e779))
* Revert "feat!: upgrade to `@ucanto/{interface,principal}`@^4.0.0"
([#245](#245))
([c182bbe](c182bbe))
* support pagination
([#204](#204))
([a5296a6](a5296a6)),
closes [#201](#201)
* upgrade access-api @ucanto/* and @ipld/dag-ucan major versions
([#246](#246))
([5e663d1](5e663d1))
* upgrade to `@ucanto/{interface,principal}`@^4.0.0
([#238](#238))
([2f3bab8](2f3bab8))
* upload/list items have a shards array property
([#229](#229))
([c00da35](c00da35))


### Bug Fixes

* export types
([c8d0a3f](c8d0a3f))
* list response results return type
([#206](#206))
([4bca6c1](4bca6c1))
* store export
([#197](#197))
([9b836e6](9b836e6))
* upload client list needs empty nb
([#194](#194))
([ff7fbb8](ff7fbb8))
* uploadFile requires BlobLike not Blob
([1cc7681](1cc7681))


### Code Refactoring

* rename callback
([#198](#198))
([5b8ef7d](5b8ef7d))

---
This PR was generated with [Release
Please](https://github.com/googleapis/release-please). See
[documentation](https://github.com/googleapis/release-please#release-please).
hugomrdias added a commit that referenced this pull request Dec 13, 2022
🤖 I have created a release *beep* *boop*
---


##
[4.0.0](access-api-v3.0.0...access-api-v4.0.0)
(2022-12-13)


### ⚠ BREAKING CHANGES

* upgrade access-api @ucanto/* and @ipld/dag-ucan major versions
([#246](#246))
* access-client store decoupling
([#228](#228))
* upgrade to `@ucanto/{interface,principal}`@^4.0.0
([#238](#238))
* follow up on the capabilities extract
([#239](#239))
* doc capabilities & make requierd nb non-optionals
([#159](#159))
* Remove 0.8 caps and add account delegation to the service
([#123](#123))
* bump to 0.9
([#116](#116))

### Features

* [#153](#153)
([#177](#177))
([d6d448c](d6d448c))
* access-api uses DID env variable when building its ucanto server id
([#275](#275))
([311da78](311da78))
* **access-client:** cli and recover
([#207](#207))
([adb3a8d](adb3a8d))
* account recover with email
([#149](#149))
([6c659ba](6c659ba))
* bump to 0.9
([#116](#116))
([3e0b63f](3e0b63f))
* doc capabilities & make requierd nb non-optionals
([#159](#159))
([6496773](6496773))
* follow up on the capabilities extract
([#239](#239))
([ef5e779](ef5e779))
* Remove 0.8 caps and add account delegation to the service
([#123](#123))
([878f8c9](878f8c9)),
closes [#117](#117)
[#121](#121)
* Revert "feat!: upgrade to `@ucanto/{interface,principal}`@^4.0.0"
([#245](#245))
([c182bbe](c182bbe))
* sync encode/decode delegations
([#276](#276))
([ab981fb](ab981fb))
* upgrade access-api @ucanto/* and @ipld/dag-ucan major versions
([#246](#246))
([5e663d1](5e663d1))
* upgrade to `@ucanto/{interface,principal}`@^4.0.0
([#238](#238))
([2f3bab8](2f3bab8))


### Bug Fixes

* 0.9 ([#78](#78))
([1b1ed01](1b1ed01))
* add validation copy
([#257](#257))
([7f50af4](7f50af4)),
closes [#139](#139)
* fix Access API cannot get space/info
[#243](#243)
([#255](#255))
([1bacd54](1bacd54))
* fix d1 migrations
([#264](#264))
([fb8c09d](fb8c09d))
* make d1 spaces.metadata nullable and change to kysely
([#284](#284))
([c8a9ce5](c8a9ce5)),
closes [#280](#280)
* make multiformats 9 go away
([#133](#133))
([2668880](2668880))
* miniflare dev script
([#137](#137))
([1c5a4e2](1c5a4e2))
* testing staging deploy
([3d500fa](3d500fa))
* try to deploy api staging
([18b7b29](18b7b29))
* try to deploy staging
([c616818](c616818))


### Code Refactoring

* access-client store decoupling
([#228](#228))
([a785278](a785278))

---
This PR was generated with [Release
Please](https://github.com/googleapis/release-please). See
[documentation](https://github.com/googleapis/release-please#release-please).
gobengo pushed a commit that referenced this pull request Apr 11, 2023
Theres also a commit with changes to rename access to access-client

Co-authored-by: Alan Shaw <alan.shaw@protocol.ai>
gobengo pushed a commit that referenced this pull request Apr 11, 2023
🤖 I have created a release *beep* *boop*
---


##
[1.1.0](upload-client-v1.0.0...upload-client-v1.1.0)
(2022-11-18)


### Features

* account recover with email
([#149](#149))
([91ad47d](91ad47d))
* allow custom shard size
([#185](#185))
([2130405](2130405))
* explicit resource
([#181](#181))
([c127431](c127431))

---
This PR was generated with [Release
Please](https://github.com/googleapis/release-please). See
[documentation](https://github.com/googleapis/release-please#release-please).
gobengo pushed a commit that referenced this pull request Apr 11, 2023
🤖 I have created a release *beep* *boop*
---


##
[6.0.0](access-v5.0.2...access-v6.0.0)
(2022-11-22)


### ⚠ BREAKING CHANGES

* **access-client:** bump to major
* store/list and upload/list types now require nb object with optional
properties

### Features

* [#153](#153)
([#177](#177))
([7fbf2a1](7fbf2a1))
* **access-client:** bump to major
([7be598d](7be598d))
* account recover with email
([#149](#149))
([91ad47d](91ad47d))
* add support for list pagination in list capability invocations
([#184](#184))
([23206ad](23206ad))

---
This PR was generated with [Release
Please](https://github.com/googleapis/release-please). See
[documentation](https://github.com/googleapis/release-please#release-please).
gobengo pushed a commit that referenced this pull request Apr 11, 2023
🤖 I have created a release *beep* *boop*
---


##
[5.0.0](upload-client-v4.0.0...upload-client-v5.0.0)
(2022-12-07)


### ⚠ BREAKING CHANGES

* upgrade access-api @ucanto/* and @ipld/dag-ucan major versions
([#246](#246))
* upload/list items have a shards array property
([#229](#229))
* upgrade to `@ucanto/{interface,principal}`@^4.0.0
([#238](#238))
* follow up on the capabilities extract
([#239](#239))
* rename callback
([#198](#198))

### Features

* [#153](#153)
([#177](#177))
([7fbf2a1](7fbf2a1))
* a base for a new web3.storage upload-client
([#141](#141))
([72c08d7](72c08d7))
* **access-client:** cli and recover
([#207](#207))
([720dafb](720dafb))
* account recover with email
([#149](#149))
([91ad47d](91ad47d))
* add static uploads API
([#148](#148))
([8b735fa](8b735fa))
* allow custom shard size
([#185](#185))
([2130405](2130405))
* explicit resource
([#181](#181))
([c127431](c127431))
* follow up on the capabilities extract
([#239](#239))
([717fcaa](717fcaa))
* Revert "feat!: upgrade to `@ucanto/{interface,principal}`@^4.0.0"
([#245](#245))
([197439e](197439e))
* support pagination
([#204](#204))
([363e3ac](363e3ac)),
closes [#201](#201)
* upgrade access-api @ucanto/* and @ipld/dag-ucan major versions
([#246](#246))
([65d191c](65d191c))
* upgrade to `@ucanto/{interface,principal}`@^4.0.0
([#238](#238))
([309aff0](309aff0))
* upload/list items have a shards array property
([#229](#229))
([723b281](723b281))


### Bug Fixes

* export types
([c44a252](c44a252))
* list response results return type
([#206](#206))
([e49c685](e49c685))
* store export
([#197](#197))
([d2296c5](d2296c5))
* upload client list needs empty nb
([#194](#194))
([7894fb9](7894fb9))
* uploadFile requires BlobLike not Blob
([56ec496](56ec496))


### Code Refactoring

* rename callback
([#198](#198))
([2349763](2349763))

---
This PR was generated with [Release
Please](https://github.com/googleapis/release-please). See
[documentation](https://github.com/googleapis/release-please#release-please).
gobengo pushed a commit that referenced this pull request Apr 11, 2023
🤖 I have created a release *beep* *boop*
---


##
[4.0.0](access-api-v3.0.0...access-api-v4.0.0)
(2022-12-13)


### ⚠ BREAKING CHANGES

* upgrade access-api @ucanto/* and @ipld/dag-ucan major versions
([#246](#246))
* access-client store decoupling
([#228](#228))
* upgrade to `@ucanto/{interface,principal}`@^4.0.0
([#238](#238))
* follow up on the capabilities extract
([#239](#239))
* doc capabilities & make requierd nb non-optionals
([#159](#159))
* Remove 0.8 caps and add account delegation to the service
([#123](#123))
* bump to 0.9
([#116](#116))

### Features

* [#153](#153)
([#177](#177))
([7fbf2a1](7fbf2a1))
* access-api uses DID env variable when building its ucanto server id
([#275](#275))
([e8326ec](e8326ec))
* **access-client:** cli and recover
([#207](#207))
([720dafb](720dafb))
* account recover with email
([#149](#149))
([91ad47d](91ad47d))
* bump to 0.9
([#116](#116))
([29cf63c](29cf63c))
* doc capabilities & make requierd nb non-optionals
([#159](#159))
([f6b6d06](f6b6d06))
* follow up on the capabilities extract
([#239](#239))
([717fcaa](717fcaa))
* Remove 0.8 caps and add account delegation to the service
([#123](#123))
([c3c58b9](c3c58b9)),
closes [#117](#117)
[#121](#121)
* Revert "feat!: upgrade to `@ucanto/{interface,principal}`@^4.0.0"
([#245](#245))
([197439e](197439e))
* sync encode/decode delegations
([#276](#276))
([9d48372](9d48372))
* upgrade access-api @ucanto/* and @ipld/dag-ucan major versions
([#246](#246))
([65d191c](65d191c))
* upgrade to `@ucanto/{interface,principal}`@^4.0.0
([#238](#238))
([309aff0](309aff0))


### Bug Fixes

* 0.9 ([#78](#78))
([561c68b](561c68b))
* add validation copy
([#257](#257))
([0bd49ce](0bd49ce)),
closes [#139](#139)
* fix Access API cannot get space/info
[#243](#243)
([#255](#255))
([1a74031](1a74031))
* fix d1 migrations
([#264](#264))
([5b8a6e7](5b8a6e7))
* make d1 spaces.metadata nullable and change to kysely
([#284](#284))
([7f09479](7f09479)),
closes [#280](#280)
* make multiformats 9 go away
([#133](#133))
([cdb4109](cdb4109))
* miniflare dev script
([#137](#137))
([f2cffb2](f2cffb2))
* testing staging deploy
([975cffc](975cffc))
* try to deploy api staging
([5130464](5130464))
* try to deploy staging
([4e56657](4e56657))


### Code Refactoring

* access-client store decoupling
([#228](#228))
([64c7496](64c7496))

---
This PR was generated with [Release
Please](https://github.com/googleapis/release-please). See
[documentation](https://github.com/googleapis/release-please#release-please).
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.

Add a recover or login feature that recovers account delegations from w3access
2 participants