-
Notifications
You must be signed in to change notification settings - Fork 8
Comparing changes
Open a pull request
base repository: gnarf/node-notifier-server
base: master
head repository: jquery/node-notifier-server
compare: main
- 20 commits
- 17 files changed
- 2 contributors
Commits on Mar 19, 2021
-
Configuration menu - View commit details
-
Copy full SHA for 2e8fa44 - Browse repository at this point
Copy the full SHA 2e8fa44View commit details
Commits on Sep 22, 2021
-
Follows-up 4d9ccce. The conditional call was overriden by the previous one.
Configuration menu - View commit details
-
Copy full SHA for a7faf22 - Browse repository at this point
Copy the full SHA a7faf22View commit details
Commits on Jan 8, 2022
-
Add testing and docs. Embed github-notifier. Remove notify-mail.
* Add linting, testing, and CI workflow. * Add docs. * Add MIT license. * Embed a copy of git-notifier from <https://github.com/scottgonzalez/node-github-notifier/blob/v2.1.0/index.js>. (To be simplified and developed further inside this repo.) * Remove unused notify-mail code. Ref jquery/infrastructure#526.
Configuration menu - View commit details
-
Copy full SHA for 89ef2e8 - Browse repository at this point
Copy the full SHA 89ef2e8View commit details
Commits on Jan 9, 2022
-
Configuration menu - View commit details
-
Copy full SHA for 8925c9b - Browse repository at this point
Copy the full SHA 8925c9bView commit details
Commits on Jan 17, 2022
-
Switch to commander.js and further clean up of github-notifier
Follows-up 89ef2e8 and 8925c9b, based on Ori's code review: * Remove `owner.name` . Property `owner.login` is documented and was consistently present in events I inspected. The other should be redundant as such. It was also not documented at [1], and not present in any events. * Validate `data.ref` before slicing the string for use in `event.postfix`. * Use RegExp#test instead of exec for simple boolean check. * Use path.join() instead of concatenating with slash. * Switch from unmaintained "optimist" package to commander.js, and validate port and directory options. * Limit HTTP payload size. * Document HTTP timeouts. [1] https://docs.github.com/en/developers/webhooks-and-events/webhooks/webhook-events-and-payloads
Configuration menu - View commit details
-
Copy full SHA for 0e9aa90 - Browse repository at this point
Copy the full SHA 0e9aa90View commit details
Commits on Feb 18, 2022
-
Configuration menu - View commit details
-
Copy full SHA for bf73e6a - Browse repository at this point
Copy the full SHA bf73e6aView commit details -
bin: Rename bin/notifier-server.js back to bin/notifier-server
This was a needlessly breaking change that made it rather difficult to upgrade servers in-place. Let's undo that.
Configuration menu - View commit details
-
Copy full SHA for 31f37a3 - Browse repository at this point
Copy the full SHA 31f37a3View commit details
Commits on Feb 20, 2022
-
Configuration menu - View commit details
-
Copy full SHA for fc2d61b - Browse repository at this point
Copy the full SHA fc2d61bView commit details
Commits on Mar 15, 2023
-
build: Migrate from async 1.x to async 3.x
<https://github.com/caolan/async> This skips over async 2.x, which carried an additional dependency on Lodash that has since been dropped. The latest version still advertises support for Node 6+, so it should work with Node 10+ as well. Recent releases do include ES2020 support for async/await, but appears to be done based purely through Promise and then-able interface in a way that the library itself remains ES6-compatible (no actual 'async' or 'await' statements internally).
Configuration menu - View commit details
-
Copy full SHA for 2443b8d - Browse repository at this point
Copy the full SHA 2443b8dView commit details -
Configuration menu - View commit details
-
Copy full SHA for dbb7e60 - Browse repository at this point
Copy the full SHA dbb7e60View commit details
Commits on Jul 8, 2023
-
Configuration menu - View commit details
-
Copy full SHA for 7c95c22 - Browse repository at this point
Copy the full SHA 7c95c22View commit details -
Configuration menu - View commit details
-
Copy full SHA for 7e5a3ae - Browse repository at this point
Copy the full SHA 7e5a3aeView commit details -
Configuration menu - View commit details
-
Copy full SHA for 07a3dde - Browse repository at this point
Copy the full SHA 07a3ddeView commit details
Commits on Sep 30, 2023
-
github-notifier: remove "urlencoded" support, remove size restriction
When deploying changes to large static sites, even relatively small changes where each of the many pages changes a little, GitHub details the names of every file in the "push" event. Ref jquery/infrastructure-puppet#10. These events exceed the size of MAX_BODY_LENGTH. Remove this restriction but preserve its spirit (not parsing large sequences of malicious JSON) by validating the HMAC signature *before* parsing the payload. For this to be consistent, the support for the "urlencoded" format is removed because that format required parsing before the "payload" is known, and thus required parsing before one could validate the payload. This way, we don't leave the door open to malicious requests that still invoke `querystring.parse()`.
Configuration menu - View commit details
-
Copy full SHA for fec6bd9 - Browse repository at this point
Copy the full SHA fec6bd9View commit details -
Configuration menu - View commit details
-
Copy full SHA for 0184ef2 - Browse repository at this point
Copy the full SHA 0184ef2View commit details -
Configuration menu - View commit details
-
Copy full SHA for d817245 - Browse repository at this point
Copy the full SHA d817245View commit details
Commits on Oct 1, 2023
-
Configuration menu - View commit details
-
Copy full SHA for 4f6b66b - Browse repository at this point
Copy the full SHA 4f6b66bView commit details
Commits on Jul 2, 2026
-
Make WEBHOOK_SECRET mandatory unless
--insecureis setReduce chances of misconfiguration by explicilty refusing to start without a secret for payload verification, unless it is explicitly disabled. Credit to Quarkslab for the discovery and recommended mitigation. Ref jquery/infrastructure#526 Ref jquery/infrastructure#565 Closes jquery#1
Configuration menu - View commit details
-
Copy full SHA for 873c717 - Browse repository at this point
Copy the full SHA 873c717View commit details
Commits on Jul 3, 2026
-
github-notifier: Restore MAX_BODY_LENGTH and raise from 200 kB to 1 MiB
Follows-up 0e9aa90 which introduced MAX_BODY_LENGTH, and fec6bd9 which removed it again due to being too low for static site deployments where small changes often change all files and thus produce fairly large GitHub Push eventsm because they are essentially a JSON wrapper around `git show` with a full file listing. GitHub Docs promise to limit the 'added', 'removed', and 'changed' arrays to 5000 file paths each (if more, the array is capped, in favor of recommending you call their API for the full details instead), or 25 MB overall (event is dropped by them if still larger than that). Note that we don't need any of this information, but there's no way to opt-out of this afaik. Note that we did not actually remove the limit in that patch in practice, because we run it with Nginx in front, and that limits the request body to 1MiB. That has been large enough so reflect that in the Node.js service directly as well, to benefit other potential users of the package. Credit to Quarkslab for the discovery and recommended mitigation. Ref jquery/infrastructure#565.
Configuration menu - View commit details
-
Copy full SHA for f0df8c2 - Browse repository at this point
Copy the full SHA f0df8c2View commit details -
Add missing "error" handler which was exposed by a change in behavior in Node.js 24.16.x, where `http.request` now also emits an error (ECONNRESET) after having received the HTTP 413 response. This then became a global uncaught error due to the missing "error" handler. Adding `req.on('error', reject);` is a no-op because the Promise is already settled by `resolve()`, so it's still ignored all the same but in user-land rather than somewhere internally. See also nodejs/node#64272 Ref jquery/infrastructure-puppet#91Configuration menu - View commit details
-
Copy full SHA for a8b1c98 - Browse repository at this point
Copy the full SHA a8b1c98View commit details
This comparison is taking too long to generate.
Unfortunately it looks like we can’t render this comparison for you right now. It might be too big, or there might be something weird with your repository.
You can try running this command locally to see the comparison on your machine:
git diff master...main