Commit Graph
139 Commits
Author SHA1 Message Date
chris48sGitHubrepo-ranger[bot] <39074581+repo-ranger[bot]@users.noreply.github.com>
e3154f67be set a custom error on 429 (#9159)
Co-authored-by: repo-ranger[bot] <39074581+repo-ranger[bot]@users.noreply.github.com>
2023-05-18 23:44:05 +00:00
chris48sGitHubrepo-ranger[bot] <39074581+repo-ranger[bot]@users.noreply.github.com>
388459a8ca fail to start server if there are duplicate service names (#9099)
* fail to start server if there are duplicate service names

* update class names in loader test fixtures

---------

Co-authored-by: repo-ranger[bot] <39074581+repo-ranger[bot]@users.noreply.github.com>
2023-05-01 18:07:13 +00:00
chris48sandGitHub 148b51d554 Export OpenAPI definitions from service examples; affects [dynamic endpoint static] (#8966)
* WIP export OpenAPI definitions from service examples

* allow services to optionally define an OpenApi Paths Object instead of examples

* make use of param descriptions and required query params

* convert other 'core' services to declare openApi..

..instead of examples

* tweak descriptions for standard query params

* move stuff around, add a high-level integration test for category2openapi

* update simple-icons text refs #9054

* remove legacy param names
2023-04-11 18:37:16 +01:00
chris48sandGitHub fab3fd7a93 sort service path matches (#8968) 2023-03-06 15:58:16 +00:00
dependabot[bot]GitHubdependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>chris48srepo-ranger[bot] <39074581+repo-ranger[bot]@users.noreply.github.com>
a5480d5a8c chore(deps): bump glob from 8.1.0 to 9.2.1 (#8952)
* chore(deps): bump glob from 8.1.0 to 9.2.1

Bumps [glob](https://github.com/isaacs/node-glob) from 8.1.0 to 9.2.1.
- [Release notes](https://github.com/isaacs/node-glob/releases)
- [Changelog](https://github.com/isaacs/node-glob/blob/main/changelog.md)
- [Commits](https://github.com/isaacs/node-glob/compare/v8.1.0...v9.2.1)

---
updated-dependencies:
- dependency-name: glob
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>

* update glob usage

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: chris48s <git@chris-shaw.dev>
Co-authored-by: repo-ranger[bot] <39074581+repo-ranger[bot]@users.noreply.github.com>
2023-03-06 12:09:48 +00:00
chris48sGitHubrepo-ranger[bot] <39074581+repo-ranger[bot]@users.noreply.github.com>
f67fe525c2 fix service test loader on windows, add tests (#8786)
Co-authored-by: repo-ranger[bot] <39074581+repo-ranger[bot]@users.noreply.github.com>
2023-01-14 00:37:25 +00:00
Prashant RawatandGitHub 5e6583c530 Docstrings for php-version service (#8766)
* add docstrings for php-version service

* update docstring for resource-cache service

* update docstring param type
2023-01-06 21:01:59 +00:00
chris48sandGitHub f67251a9ca don't try to call .entries on null or undefined (#8757) 2022-12-29 16:54:11 +00:00
chris48sandGitHub 00f35c67e8 fix debug logging of undefined query params (#8540) 2022-12-28 19:54:11 +00:00
Sébastien RègneGitHubchris48srepo-ranger[bot] <39074581+repo-ranger[bot]@users.noreply.github.com>
bcc39200ae fix: support logoColor to shield icons. (#8263)
* fix: support logoColor to shield icons.

* FIXUP: Use 'travis-ci' to 'travis'

* FIXUP: Update docs.

* docs tweak

Co-authored-by: chris48s <chris.shaw480@gmail.com>
Co-authored-by: repo-ranger[bot] <39074581+repo-ranger[bot]@users.noreply.github.com>
2022-11-26 13:48:34 +00:00
chris48sGitHubrepo-ranger[bot] <39074581+repo-ranger[bot]@users.noreply.github.com>
b624179b8d get the tests passing on windows (#8350)
* run the core tests on windows

* fix glob with windows path seperator

* always use slash when slicing serviceClass matches

..and add comment explaining why we need to do this

* strip line endings (+ any other whitspace) before base64 encoding

Co-authored-by: repo-ranger[bot] <39074581+repo-ranger[bot]@users.noreply.github.com>
2022-08-29 19:58:10 +00:00
chris48sGitHubrepo-ranger[bot] <39074581+repo-ranger[bot]@users.noreply.github.com>
ace5e03221 set a higher default cacheLength on rating/star category (#7587)
Co-authored-by: repo-ranger[bot] <39074581+repo-ranger[bot]@users.noreply.github.com>
2022-02-10 21:02:22 +00:00
dependabot[bot]GitHubdependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>chris48schris48s
f2d88e76fb chore(deps): bump fast-xml-parser from 3.21.1 to 4.0.1
* chore(deps): bump fast-xml-parser from 3.21.1 to 4.0.1
* update for fast-xml-parser v4
* fix maven and jetbrains badges

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: chris48s <chris.shaw480@gmail.com>
Co-authored-by: chris48s <chris48s@users.noreply.github.com>
2022-01-29 20:10:07 +00:00
dependabot[bot]GitHubdependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>chris48schris48s
0f288a42fc chore(deps): bump got from 11.8.3 to 12.0.1 (#7370)
* chore(deps): bump got from 11.8.3 to 12.0.1
* update limit syntax
* update CancelError import
* update timeout syntax
* set missing user/pass to empty string for basic auth
* fix opm badge

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: chris48s <chris.shaw480@gmail.com>
Co-authored-by: chris48s <chris48s@users.noreply.github.com>
2022-01-29 20:04:11 +00:00
chris48sandGitHub feb1682814 Clean up cache module; affects [feedz jenkinsplugin myget node nuget packagist travis wordpress] (#7319)
* update terminology
    - "regular update" to "cached resource"
    - "interval" to "ttl"
    - move file and update imports

* set a default TTL, don't explicitly pass params if we want the default

* add tests

* update docs
2021-11-29 21:21:03 +00:00
chris48sGitHubrepo-ranger[bot] <39074581+repo-ranger[bot]@users.noreply.github.com>
99bffd3a86 Send better user-agent values (and got config changes) (#7309)
* expose fetchLimitBytes/userAgent in got-config module

* export a function not a factory

* send better user-agent values

- add userAgentBase setting
- send short SHA in user agent on heroku
- set a version (tag or short SHA) in Dockefile and use
  it to report server version in UA for docker users

* add a comment explaining fileSize

Co-authored-by: repo-ranger[bot] <39074581+repo-ranger[bot]@users.noreply.github.com>
2021-11-25 17:11:49 +00:00
chris48sandGitHub 6d22389e88 rename sendAndCacheRequest (#7277) 2021-11-17 20:00:29 +00:00
chris48sGitHubrepo-ranger[bot] <39074581+repo-ranger[bot]@users.noreply.github.com>
c73072deed Remove requestOptions2GotOptions compatibility layer (#7270)
* gzip --> decompress

* strictSSL --> https.rejectUnauthorized

* auth --> username/password

* qs --> searchParams

* fix base service auth docs

* completely remove requestOptions2GotOptions layer

* update the docs

Co-authored-by: repo-ranger[bot] <39074581+repo-ranger[bot]@users.noreply.github.com>
2021-11-15 19:56:08 +00:00
chris48sGitHubrepo-ranger[bot] <39074581+repo-ranger[bot]@users.noreply.github.com>
f1b643df0d remove request from legacy request handler (#7233)
Co-authored-by: repo-ranger[bot] <39074581+repo-ranger[bot]@users.noreply.github.com>
2021-11-06 10:59:58 +00:00
chris48sGitHubrepo-ranger[bot] <39074581+repo-ranger[bot]@users.noreply.github.com>
eb07b60cf0 migrate github badges to use got instead of request; affects [github librariesio] (#7212)
* migrate github badges to use got instead of request

* simplify creation of requestFetcher in libraries.io base

* improve libraries.io connection error test

Co-authored-by: repo-ranger[bot] <39074581+repo-ranger[bot]@users.noreply.github.com>
2021-10-31 16:19:09 +00:00
Caleb CartwrightGitHubrepo-ranger[bot] <39074581+repo-ranger[bot]@users.noreply.github.com>
ae58e4a211 Add authentication for Libraries.io-based badges, run [Libraries Bower] (#7080)
* feat: support authentication on Libraries.io requests

* feat: wire up libraries.io config and api provider instantiation

* feat: create libraries.io and bower base classes

* refactor: tweak libraries/bower service classes and tests

* rename request fetcher function/arg

* throw exception when no tokens available

* cleanup old value

Co-authored-by: repo-ranger[bot] <39074581+repo-ranger[bot]@users.noreply.github.com>
2021-10-28 19:21:24 -05:00
chris48sGitHubrepo-ranger[bot] <39074581+repo-ranger[bot]@users.noreply.github.com>
f62dbed843 set content-length header on badge responses (#7179)
closes #7171

Co-authored-by: repo-ranger[bot] <39074581+repo-ranger[bot]@users.noreply.github.com>
2021-10-21 17:09:45 +00:00
chris48sandGitHub 14f64d17a8 Revert "got --> node-fetch" (#7175)
This reverts commit b209f5c63a.
2021-10-21 18:01:10 +01:00
chris48sandGitHub b209f5c63a got --> node-fetch (#6914) 2021-10-08 17:27:50 +01:00
Caleb CartwrightGitHubrepo-ranger[bot] <39074581+repo-ranger[bot]@users.noreply.github.com>
5e96598fcb refactor: cleanup legacy sinon sandboxing (#7066)
Co-authored-by: repo-ranger[bot] <39074581+repo-ranger[bot]@users.noreply.github.com>
2021-09-26 20:34:51 +00:00
chris48sGitHubrepo-ranger[bot] <39074581+repo-ranger[bot]@users.noreply.github.com>
8983c39f74 Re-apply 'Migrate request to got (part 1)' (#6755)
Co-authored-by: repo-ranger[bot] <39074581+repo-ranger[bot]@users.noreply.github.com>
2021-07-11 13:28:14 +00:00
Pierre-Yves BandGitHub 23c0406bed Migrate from CommonJS to ESM (#6651) 2021-07-09 12:53:55 +01:00
anatawa12andGitHub b0384f438c [GradlePluginPortal] add gradle plugin portal (#6449) 2021-06-07 07:55:23 +01:00
chris48sGitHubrepo-ranger[bot] <39074581+repo-ranger[bot]@users.noreply.github.com>
830bb15b58 increase max-age for download and social badges (#6567)
Co-authored-by: repo-ranger[bot] <39074581+repo-ranger[bot]@users.noreply.github.com>
2021-06-02 16:28:00 +00:00
dependabot-preview[bot]GitHubdependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>Caleb Cartwrightrepo-ranger[bot] <39074581+repo-ranger[bot]@users.noreply.github.com>
636ed87057 Build(deps-dev): bump prettier from 2.2.1 to 2.3.0, run [ciibestpractices eclipsemarketplacedownloads gemdownloads githubdeployments githubtotaldiscussions githubforks githubhacktoberfest githubissuessearch githubpackagejson githubsponsors githubtag jenkinscoverage node npm nuget scoop teamcitybuild testspace] (#6482)
* Build(deps-dev): bump prettier from 2.2.1 to 2.3.0

Bumps [prettier](https://github.com/prettier/prettier) from 2.2.1 to 2.3.0.
- [Release notes](https://github.com/prettier/prettier/releases)
- [Changelog](https://github.com/prettier/prettier/blob/main/CHANGELOG.md)
- [Commits](https://github.com/prettier/prettier/compare/2.2.1...2.3.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

* chore: prettier

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
Co-authored-by: Caleb Cartwright <caleb.cartwright@outlook.com>
Co-authored-by: repo-ranger[bot] <39074581+repo-ranger[bot]@users.noreply.github.com>
2021-05-15 08:49:20 +00:00
dependabot-preview[bot]GitHubdependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>Caleb CartwrightCaleb Cartwright
1b07126207 Build(deps-dev): bump eslint-plugin-promise from 4.3.1 to 5.1.0 (#6412)
* Build(deps-dev): bump eslint-plugin-promise from 4.3.1 to 5.1.0

Bumps [eslint-plugin-promise](https://github.com/xjamundx/eslint-plugin-promise) from 4.3.1 to 5.1.0.
- [Release notes](https://github.com/xjamundx/eslint-plugin-promise/releases)
- [Changelog](https://github.com/xjamundx/eslint-plugin-promise/blob/development/CHANGELOG.md)
- [Commits](https://github.com/xjamundx/eslint-plugin-promise/commits)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

* chore: correct false eslint positives

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
Co-authored-by: Caleb Cartwright <caleb.cartwright@outlook.com>
Co-authored-by: Caleb Cartwright <calebcartwright@users.noreply.github.com>
2021-05-01 21:05:02 -05:00
chris48sandGitHub e0510ca761 Revert request --> got migration (for now) (#6277)
* Revert "send custom user agent when using got (#6256)"
This reverts commit fd7eddc7bb.

* Revert "Migrate request to got (part 1 of many) (#6160)"
This reverts commit 2359eb278b.

* install got as a prod dependency, allow npm 7
2021-03-17 20:10:38 +00:00
chris48sandGitHub fd7eddc7bb send custom user agent when using got (#6256) 2021-03-10 19:38:41 +00:00
chris48sandGitHub 2359eb278b Migrate request to got (part 1 of many) (#6160)
* install new packages

* migrate request to got

* update dynamic json test

This is a behavioural difference between request and got

request will send the request, then we'll get a
`400 Bad Request` back and re-throw at as invalid

got will pick up that the URL is invalid and throw
`RequestError: URI malformed` before attempting to send it
which we'll re-throw as inaccessible

* fix OPM service

* fix wordpress querystring

Got doesn't natively support assmebling a querystring
from nested objects because it uses node's URLSearchParams
internally. Use qs and pass qs a string.

Wordpress is the only service that needs this,
so we could build the string manually in this case
if we don't want to take qs as a prod dependency.
It is mostly hard-coded values anyway.

* fix wercker

got overwrites any ?foo=bar in the URL string if
searchParams is also passed whereas request appends
see https://github.com/sindresorhus/got#url

* fix keybase

* add tests for got wrapper

* bootstrap global agent in server start
2021-03-09 20:03:52 +00:00
chris48sGitHubrepo-ranger[bot] <39074581+repo-ranger[bot]@users.noreply.github.com>
06464008cc ensure redirect target path is correctly encoded (#6229)
Co-authored-by: repo-ranger[bot] <39074581+repo-ranger[bot]@users.noreply.github.com>
2021-02-28 16:28:20 +00:00
chris48sGitHubrepo-ranger[bot] <39074581+repo-ranger[bot]@users.noreply.github.com>
4fea056421 improve debug output for API calls with query strings (#6075)
* improve debug output for API calls with query strings

* update test

Co-authored-by: repo-ranger[bot] <39074581+repo-ranger[bot]@users.noreply.github.com>
2021-01-22 18:16:19 +00:00
Paul MelnikowandGitHub 46b98c40be Remove the in-memory cache (#6037)
Shields has long had an in-memory cache with some complex logic for determining when the cached values are used and when they are flushed. At the time this was implemented, squeezing cache performance was helpful since there was no downstream cache. For years now we've used Cloudflare as a CDN, so trying to cache onboard is less useful than before. Furthermore, since the cache is very small and only used in fairly restrictive ways, it probably has very little impact on performance.
2021-01-11 15:53:36 -05:00
dependabot-preview[bot]GitHubdependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>Caleb Cartwrightrepo-ranger[bot] <39074581+repo-ranger[bot]@users.noreply.github.com>
3a31721631 Build(deps): bump js-yaml from 3.14.1 to 4.0.0; run [DynamicYaml] (#6026)
* Build(deps): bump js-yaml from 3.14.1 to 4.0.0

Bumps [js-yaml](https://github.com/nodeca/js-yaml) from 3.14.1 to 4.0.0.
- [Release notes](https://github.com/nodeca/js-yaml/releases)
- [Changelog](https://github.com/nodeca/js-yaml/blob/master/CHANGELOG.md)
- [Commits](https://github.com/nodeca/js-yaml/compare/3.14.1...4.0.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

* deps: apply js-yaml v4 changes

* deps: js-yaml v4 updates in gatsby config

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
Co-authored-by: Caleb Cartwright <caleb.cartwright@outlook.com>
Co-authored-by: repo-ranger[bot] <39074581+repo-ranger[bot]@users.noreply.github.com>
2021-01-10 15:23:32 +00:00
dependabot-preview[bot]GitHubdependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>Caleb CartwrightMarcin Mielnickirepo-ranger[bot] <39074581+repo-ranger[bot]@users.noreply.github.com>
e202b73c3c Build(deps): bump prom-client from 11.5.3 to 13.0.0 (#5962)
* Build(deps): bump prom-client from 11.5.3 to 13.0.0

Bumps [prom-client](https://github.com/siimon/prom-client) from 11.5.3 to 13.0.0.
- [Release notes](https://github.com/siimon/prom-client/releases)
- [Changelog](https://github.com/siimon/prom-client/blob/master/CHANGELOG.md)
- [Commits](https://github.com/siimon/prom-client/compare/v11.5.3...v13.0.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

* deps: apply updates for prom version bump

* register.getMetricsAsJSON is async now

* PrometheusMetrics#metrics is async

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
Co-authored-by: Caleb Cartwright <caleb.cartwright@outlook.com>
Co-authored-by: Marcin Mielnicki <marcin.mielnicki@gmail.com>
Co-authored-by: repo-ranger[bot] <39074581+repo-ranger[bot]@users.noreply.github.com>
2020-12-23 23:32:08 +00:00
dependabot-preview[bot]GitHubdependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>Caleb Cartwrightrepo-ranger[bot] <39074581+repo-ranger[bot]@users.noreply.github.com>
d0b93b4103 Build(deps): bump path-to-regexp from 5.0.0 to 6.2.0, run [Appveyor Bitbucket Circle GitHub GitLab ScrutinizerBuild] (#5684)
* Build(deps): bump path-to-regexp from 5.0.0 to 6.2.0

Bumps [path-to-regexp](https://github.com/pillarjs/path-to-regexp) from 5.0.0 to 6.2.0.
- [Release notes](https://github.com/pillarjs/path-to-regexp/releases)
- [Changelog](https://github.com/pillarjs/path-to-regexp/blob/master/History.md)
- [Commits](https://github.com/pillarjs/path-to-regexp/compare/v5.0.0...v6.2.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

* deps: apply path-to-regexp breaking changes

* fix: path-to-regexp types in frontend

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
Co-authored-by: Caleb Cartwright <caleb.cartwright@outlook.com>
Co-authored-by: repo-ranger[bot] <39074581+repo-ranger[bot]@users.noreply.github.com>
2020-12-23 22:59:31 +00:00
Paul MelnikowandGitHub f1a5dd9427 Align style prop of coalesceBadge() with internal makeBadge() (#5726)
This is an analogous change to #5719 for `’template’` and `’style’`. (See the top comment for more explanation.)
2020-10-20 19:16:38 -04:00
Paul MelnikowandGitHub 1184938ed1 Align label and message props of coalesceBadge() with internal makeBadge() (#5719)
There is an internal `makeBadge()` function which is called from a few places in the server and from the public `makeBadge()` function which is a light wrapper. (Eventually we want to dogfood the public API: that's the work of #4950, and this helps with it by aligning the interfaces.)

Related to that is #3370, which is about aligning the `serviceData` schema (i.e. the result of `handle()`) with the public `makeBadge()` function.

A legacy quirk of the _private_ `makeBadge()` function is accepting a `text: ['label', 'message']` array instead of separate `{ label, message }` props like the rest of the codebase. `coalesceBadge()` has to translate from `{ label, message }` to `text: ['label', message']`. This removes that bit of indirection.

It also rewrites most of the tests of `coalesceBadge()` to use `.includes()`, providing IMO a slight improvement in readability.
2020-10-16 18:06:32 -04:00
chris48sGitHubrepo-ranger[bot] <39074581+repo-ranger[bot]@users.noreply.github.com>
504015c0ba migrate hapi/joi to joi (#5624)
* update joi + joi-extension-semver

* @hapi/joi --> joi

Co-authored-by: repo-ranger[bot] <39074581+repo-ranger[bot]@users.noreply.github.com>
2020-09-30 17:51:02 +00:00
108a819c3a [GITHUB] Badge for total stars of an user / org (#5507)
* added badge for total stars of an user / org
* Added a transformJson method in graphql-base to handle partial data


Co-authored-by: Pratapi Hemant Patel <pratpatel@expedia.com>
Co-authored-by: Caleb Cartwright <calebcartwright@users.noreply.github.com>
2020-09-19 12:07:23 +01:00
chris48sGitHubrepo-ranger[bot] <39074581+repo-ranger[bot]@users.noreply.github.com>
38322e1412 redirect /endpoint with no query params to endpoint docs (#5137)
Co-authored-by: repo-ranger[bot] <39074581+repo-ranger[bot]@users.noreply.github.com>
2020-09-06 17:21:58 +00:00
Paul MelnikowandGitHub 7c226456fe Adopt static fields in [amo] and core (#5440)
Since we've upgraded production to Node 12 (#5436) we can finally adopt static fields!

This starts the process by updating core and one of the service families.
2020-08-19 14:49:29 -04:00
Pierre-Yves BandGitHub 135b842946 Migrate [Discord] implementation to use bot token (#5346)
* Migrate [Discord] implementation to use bot token

* Rework authorization field creation

* Revert "Rework authorization field creation"

This reverts commit caf65bde5d.

* Add LGTM exclusion for hardcoded credentials
2020-07-24 18:04:12 +02:00
Pierre-Yves BandGitHub 1639417a55 Fix [Twitch] Client-ID header (#5217) 2020-06-17 19:18:25 +02:00
88ea1f9149 Fix invalid Cache-Control header, run [Endpoint] (#5139)
* Fix invalid Cache-Control header
* Update endpoint.tester.js
* Update legacy-request-handler.spec.js

Co-authored-by: chris48s <chris48s@users.noreply.github.com>
2020-05-31 14:04:37 +01:00
chris48sandGitHub 13d75e0607 upgrade to prettier 2 (#5051)
* arrowParens: avoid
* remove trailingComma setting
2020-05-05 21:07:43 +01:00