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: v9 #518

Closed
wants to merge 11 commits into from
Closed

feat: v9 #518

wants to merge 11 commits into from

Conversation

gr2m
Copy link
Contributor

@gr2m gr2m commented Mar 30, 2021

⚠️ do not rebase this pull request, it will break the beta release flow for semantic-release

I've pushed a beta-rebased branch which resolves the conflicts.

fixes #477, fixes #515, fixes #476, fixes #475

Breaking changes

  • default sign algorithm for webhooks.sign is now sha256. Use webhooks.sign({ algorithm: "sha1", secret }, payload) to fall back to sha1.
  • static sign and verify methods are no longer exported. Use @octokit/webhooks-methods package instead
  • webhooks.sign() and webhooks.verify() are now asynchronous

TODOs

  • default sign algorithm to sha256
  • Make webhooks.sign and webhooks.verify async, for compatibility with Browsers and Deno
  • Remove exports of standalone sign and verify methods

View rendered src/middleware-legacy/README.md

gr2m added 3 commits March 30, 2021 05:52
BREAKING CHANGE: `createWebhooksApi()` has been removed. Use `new Webhooks()` instead
…Middleware`

BREAKING CHANGE: `webhooks.middleware` has been removed. Use `createNodeMiddleware()` instead

BREAKING CHANGE: `createMiddleware` has been removed. Use `createNodeMiddleware()` instead
BREAKING CHANGE: deprecated `path` option for `Webhooks` constructor has been removed. Use `createNodeMiddleware(webhooks, { path })` instead
@gr2m gr2m added the Type: Feature New feature or request label Mar 30, 2021
BREAKING CHANGE: all usage of [`debug`](https://www.npmjs.com/package/debug) has been removed. Use the `log` option instead
@gr2m
Copy link
Contributor Author

gr2m commented Mar 30, 2021

@gr2m gr2m changed the title feat: v9 🚧 feat: v9 Mar 30, 2021
BREAKING CHANGE: `sign` and `webhooks.sign` no default to `sha256` algorithm. In order to continue to use `sha1`, replace

```js
sign(secret, payload)
```

with

```js
sign({ secret, algorith: "sha1" }, payload)
```
@gr2m gr2m changed the title 🚧 feat: v9 feat: v9 Mar 30, 2021
@gr2m
Copy link
Contributor Author

gr2m commented Mar 30, 2021

@gr2m gr2m changed the title feat: v9 🚧 feat: v9 Apr 10, 2021
BREAKING CHANGE: `webhooks.sign()` and `webhooks.verify()` are now asynchronous

BREAKING CHANGE: static `sign` and `verify` methods are no longer exported. Use `@octokit/webhooks-methods` package instead
@gr2m gr2m changed the title 🚧 feat: v9 feat: v9 Apr 10, 2021
@gr2m
Copy link
Contributor Author

gr2m commented Apr 10, 2021

This is ready to be merged. I've pushed a beta-rebased branch which resolves the conflicts.

@octokit/maintainers anyone of you would like to give this a review?

@wolfy1339
Copy link
Member

Fixes #476 by removing the deprecated middleware

@gr2m
Copy link
Contributor Author

gr2m commented Apr 10, 2021

v9 beta.4 release: https://github.com/octokit/webhooks.js/releases/tag/v9.0.0-beta.4

I tested it in the browser console with

pkg = await import("https://cdn.skypack.dev/@octokit/[email protected]")
const webhooks = new pkg.Webhooks({
  secret: "secret"
})
await webhooks.sign("payload")

and it works great

@gr2m
Copy link
Contributor Author

gr2m commented Apr 11, 2021

Unless there are any objects, I'd like to release this on Tuesday

@gr2m gr2m mentioned this pull request Apr 14, 2021
@gr2m gr2m closed this in #533 Apr 14, 2021
@gr2m gr2m deleted the beta branch April 14, 2021 08:18
@github-actions
Copy link
Contributor

🎉 This issue has been resolved in version 9.0.0 🎉

The release is available on:

Your semantic-release bot 📦🚀

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Type: Feature New feature or request
Projects
None yet
2 participants