piranna / buho

The one that wakes up in the night and go for a walk
ISC License
3 stars 0 forks source link

Update got to the latest version πŸš€ #10

Open greenkeeper[bot] opened 6 years ago

greenkeeper[bot] commented 6 years ago

Version 9.0.0 of got was just published.

Dependency got
Current Version 8.3.2
Type dependency

The version 9.0.0 is not covered by your current version range.

If you don’t accept this pull request, your project will work just like it did before. However, you might be missing out on a bunch of new features, fixes and/or performance improvements from the dependency update.

It might be worth looking into these changes and trying to get this project onto the latest version of got.

If you have a solid test suite and good coverage, a passing build is a strong indicator that you can take advantage of these changes directly by merging the proposed change into your project. If the build fails or you don’t have such unconditional trust in your tests, this branch is a great starting point for you to work on the update.


Release Notes v9.0.0

This is a huge release! Many new awesome features and we have pretty much fixed all the open issues regarding Got bugs on the issue tracker.

Breaking changes

  • Requires Node.js 8.
    You might ask, why not follow the Node.js LTS cycle and target Node.js 6. In short, async/await and WHATWG URL, which enabled us to considerably simplify the codebase and reduce the dependency-tree. Got v8 is a stable release and you can continue using that if you need to support Node.js 6.
  • The retry functionality was rewritten to improve its reliability and to support retrying on HTTP status codes. Previously, it only retried on some network failures. 98b5664
    The option was renamed from retries to retry and it now accepts either a number of retries or an object with ability to specify number of retries, HTTP status codes and methods to retry on, and a function to decide how to retry. See the docs for more.
    Migration:
    - { retries: 4 } β†’ { retry: 4 }
    - { retries: () => { … } } β†’ { retry: { retries: () => { … } } }
  • Renamed the .canceled property to .isCanceled. 00fdeea
  • Dropped support for the body option being an Array when form: true. dfe5b1c
    The built-in new URLSearchParams() API doesn't support this either and it's a weird use-case. If you need support for this, just don't set form: true and handle stringifying yourself.

Improvements

  • Less dependencies!
  • The timeout option was rewritten to be more reliable and flexible. You can now set a timeout for every phase of the request if you want, or just for the whole request. That's up to you. da4f236
  • Added got.extend() which lets you easily create instances of Got with some options overriden. bc41a49
  • Added got.create() which is a more advanced and powerful version of got.extend(). With this API, you can create your own niche-specific instance of Got, for example, a HTTP-client for GitHub. bc41a49
  • Added a beforeRequest hook. 107756f
  • Added request and response events to the Promise API. e86aad7
  • The content-length header is now also automatically set if the body option is set to a fs.createReadStream instance. 6e7a455
  • You can now remove the default user-agent header by passing in 'user-agent': null as a header. e473a26
  • The body option can now be any kind of object, not just a plain object. 7a49ce7

Bug fixes

  • Fixed a problem with the cache not working when using the query option. 07a91cc
  • Less unhandled errors (Hopefully none!). f621184
  • Headers are now correctly proxied when you pipe got.stream(). 83bc44c
  • Lots of more bug fixes…

Other

  • 100% code coverage! Doing this caught a couple of bugs, so totally worth doing even if 100% doesn't mean bug-free.
  • The codebase was greatly refactored for better readability and maintainability. b54b680

Team

Welcome @szmarczak and @brandon93s as maintainers πŸŽ‰

Special shoutout to @jstewmon for helping us with many of the above improvements and fixes πŸ™Œ

All changes

v8.3.2...v9.0.0

Commits

The new version differs by 74 commits ahead by 74, behind by 2.

  • 3a145c0 9.0.0
  • bf3c463 Fix readme Highlights link to retry option
  • ba0cb0d Unify calculating content-length (#544)
  • 5c3adba Increase coverage (#543)
  • 10d22b7 Increase coverage (#542)
  • 99dbd97 Fix the behaviour of proxying headers
  • 4d92eb6 Ignore JSON option when using got.stream() (#541)
  • 6ba9e68 Fix the description of the next() function
  • bf206ca Don't recommend setting user-agent to undefined
  • 80a02fe Update readme links to Electron-related issues
  • af5c3fd Improve merging options (#539)
  • d369b08 Make got.mergeOptions() behavior more obvious and document its behavior (#538)
  • 6d654fa Drop ESOCKETTIMEDOUT error
  • da7f055 Add timeout for secureConnect event for HTTPS requests (#536)
  • 9d87e9f Document TimeoutError

There are 74 commits in total.

See the full diff

FAQ and help There is a collection of [frequently asked questions](https://greenkeeper.io/faq.html). If those don’t help, you can always [ask the humans behind Greenkeeper](https://github.com/greenkeeperio/greenkeeper/issues/new).

Your Greenkeeper bot :palm_tree:

greenkeeper[bot] commented 6 years ago

Version 9.1.0 just got published.

Update to this version instead πŸš€

Commits

The new version differs by 24 commits.

  • 1c54a03 9.1.0
  • c901c46 Normalize the URL in the baseUrl option (#579)
  • f241936 Remove AppVeyor
  • 3d98b9b Follow redirects with encoded URI (#564)
  • 45d3a60 Bump get-stream to 0.4.0 (#578)
  • 2ffcd49 Don't freeze any other values than plain objects and arrays (#577)
  • a7cd35a Tiny readme formatting tweak
  • b8a086f Allow the query option to be a URLSearchParams instance (#565)
  • 97533e5 Fix AWS example in readme (#575)
  • 8f30f1f Add note about global-tunnel package
  • eb652f8 Ignore empty query objects (#572)
  • ca2675e Upgrade to ava@1.0.0-beta.7
  • f30b623 Mention browser and Electron support in the comparison table (#556)
  • a3e77de Support retrying on HTTP 500
  • 2cdb3ed Fix a typo in the readme (#553)

There are 24 commits in total.

See the full diff

greenkeeper[bot] commented 6 years ago

Version 9.2.0 just got published.

Update to this version instead πŸš€

Release Notes v9.2.0

v9.1.0...v9.2.0

Commits

The new version differs by 19 commits.

  • aec95d2 9.2.0
  • f8af5b0 Update http-timer dependency to 1.1.0
  • e66a6b6 Fix Electron throwing HTTP trailers are not supported error (#598)
  • eedebc9 Add cookieJar option (#596)
  • ab0d24b Add "Bugs" to the comparsion table
  • 887f02d Improve code readability
  • a8eb41b Proper fix for #469 (#594)
  • 78a56ec Provide timings (#590)
  • bb8175b Correct the comparison table
  • 7910e14 Unify calling mergeOptions
  • 488ac7e Remove redundant code
  • 21bef3c Update readme.md (#593)
  • 267cb66 Document the response object (#592)
  • d0757da Add tests for stripping port in host header (#591)
  • dda1ce9 Use correct package/module wording in the readme

There are 19 commits in total.

See the full diff

greenkeeper[bot] commented 6 years ago

Version 9.2.1 just got published.

Update to this version instead πŸš€

Release Notes v9.2.1
  • Don't cache response when HTTP error was received. #597 b8480f3
  • Fix merging default & custom handlers. 5f191b9

v9.2.0...v9.2.1

Commits

The new version differs by 7 commits.

See the full diff

greenkeeper[bot] commented 6 years ago

Update to this version instead πŸš€

Release Notes for v9.2.2
  • Gracefully handle invalid Location redirect URLs. (#605) 7ae6939
  • Don't override hooks when merging arguments. 3ad3950
  • Merge hooks on got.extend(). (#608) 292f78a

v9.2.1...v9.2.2

Commits

The new version differs by 4 commits.

  • 248d68c 9.2.2
  • 3ad3950 Don't override hooks when merging arguments
  • 292f78a Merge hooks on got.extend() (#608)
  • 7ae6939 Gracefully handle invalid Location redirect URLs (#605)

See the full diff

greenkeeper[bot] commented 5 years ago

Update to this version instead πŸš€

Commits

The new version differs by 18 commits.

  • 232e0f3 9.3.0
  • c5bfad5 Add npm release script
  • b50d76c Upgrade dependencies
  • ea41bdc Change the way to retry using the afterResponse hook (#647)
  • 5adfc27 Improve docs for the query option (#643)
  • b392f60 Allow defaults to be mutable (#645)
  • 180cbd5 Add missing test for retrying using the afterResponse hook
  • 01e9cd8 Move setting redirectUrls to request-as-event-emitter.js
  • 3a50d8b Mention node-fetch Node.js stream API in comparison table (#644)
  • 325409c Add more hooks (#640)
  • af341ca Code cleanup and bug fixes (#635)
  • 8d2e911 Fix tunnel package reference in the docs (#627)
  • 25f18be Support electron renderer timings
  • fbaaa2a Retry on a few more errors
  • fdc0fa6 Include body property in HTTPError (#622)

There are 18 commits in total.

See the full diff

greenkeeper[bot] commented 5 years ago

Update to this version instead πŸš€

Release Notes for v9.3.1
  • Don't override headers defined in the url argument when it's an object. 191e00a
  • Don't set content-length header when upload body size is null. 311b184

v9.3.0...v9.3.1

Commits

The new version differs by 6 commits.

  • 50fdab3 9.3.1
  • 191e00a Don't override headers defined in the url argument when it's an object (#633)
  • 311b184 Don't set content-length header when uploadBodySize is null (#651)
  • 46c0951 Document the .defaults property (#649)
  • 84a9534 Mention how to access the defaults
  • 3af3616 Update docs according to the new defaults

See the full diff

greenkeeper[bot] commented 5 years ago

Update to this version instead πŸš€

Release Notes for v9.3.2

v9.3.1...v9.3.2

Commits

The new version differs by 3 commits.

See the full diff

greenkeeper[bot] commented 5 years ago

Update to this version instead πŸš€

Release Notes for v9.4.0
  • Add ability to specify which network error codes to retry on. 9f3a099
  • Add Got options onto responses and errors. 33b838f
  • Correctly clear socket timeout on error. c8e358f

v9.3.2...v9.4.0

Commits

The new version differs by 11 commits.

  • 533d7e5 9.4.0
  • 9f3a099 Add ability to specify which network error codes to retry on (#660)
  • 33b838f Add Got options onto responses and errors (#663)
  • 8848a7a Add migration guides (#595)
  • 4a8722b Minor code style tweaks
  • c8e358f Clear socket timeout on error (#659)
  • 3229448 Create issue templates (#655)
  • ef1494c Remove unnecessary check for options
  • 5367228 Remove unnecessary if block
  • 64f0adc Update node-fetch in the readme comparison table (#658)
  • 7f18ef3 Mention a few more Node errors when Got will retry

See the full diff

greenkeeper[bot] commented 5 years ago

Update to this version instead πŸš€

Release Notes for v9.5.0
  • Remove error thrown for URLs with auth component (#676) 5d20a43
  • Upgrade dependencies a1eadfe

v9.4.0...v9.5.0

Commits

The new version differs by 5 commits.

  • 91c0607 9.5.0
  • a1eadfe Upgrade dependencies
  • 5d20a43 Remove error thrown for URLs with auth component (#676)
  • 3e0edd8 Mention HTTPError body property in docs
  • aa4c9a6 Clarify error docs (#670)

See the full diff

greenkeeper[bot] commented 5 years ago

Update to this version instead πŸš€

Commits

The new version differs by 8 commits.

  • 6ce603e 9.5.1
  • 203dadc Fix memory leak when using socket timeout and keepalive agent (#694)
  • 73428f9 Add superagent to the comparison table (#691)
  • d136e61 Update dependencies
  • 877a6c1 Remove badge labels from the Comparison section
  • 5653c1a Add failing test for #687 (#688)
  • 8341fba Consistent use of emphasis in readme (#684)
  • 0bb9fa6 Fix 'Migration guides' json example

See the full diff

greenkeeper[bot] commented 5 years ago

Update to this version instead πŸš€

Release Notes for v9.6.0

v9.5.1...v9.6.0

Commits

The new version differs by 4 commits.

See the full diff

greenkeeper[bot] commented 4 years ago

Update to this version instead πŸš€

Release Notes for v10.0.0

We're excited to announce Got 10! πŸŽ‰ This release has been in the works for almost a year and has been a major undertaking. Got was fully rewritten in TypeScript, which helped us catch many bugs and will give us more confidence in the codebase going forward. Got is now faster and much more stable. We also fixed a huge amount of bugs. Big thanks to everyone that helped make this release possible. πŸ™Œ


If you find Got useful, you might want to sponsor the Got maintainers.

Note: Some HTTP agents like https-proxy-agent and agentkeepalive are not compatible with Node.js 10 and hence not compatible with Got as Got takes advantage of some Node.js 10-only APIs.

Breaking

  • Require Node.js 10 633651f
    • Why: This is so that we can use stream.pipeline for more reliable stream handling. Node.js 8 will be out of LTS at the end of this month anyway.
  • Remove support for protocol-less URLs in the url argument 92bc808
    • Why: To reduce ambiguity. It was not clear from just reading the code what it would default to.
    • Migrate:
- got('sindresorhus.com');
+ got('https://sindresorhus.com');
  • Rename the query option to searchParams and make it stricter b223663 5376216 518f0f5
    • Why: To get closer to the window.fetch naming in the browser.
    • Migrate:
- got(…, {query: …});
+ got(…, {searchParams: …});
  • Replace the baseUrl option with prefixUrl (#829) 0d534ed
    • Note: We also made it stricter to reduce ambiguity. The Got url argument now cannot be prefixed with a slash when this option is used.
    • Why: We renamed it to make it clear that it doesn't do any URL resolution.
    • Migrate:
- got('/foo', {baseUrl: 'https://x.com'});
+ got('foo', {prefixUrl: 'https://x.com'});
  • Change the json option to accept an object instead of a boolean and to only be responsible for the request, not the response (#704) a6a7d5a
    • Note: You now set the request body in this option instead of the body option when you want to send JSON. This option also no longer sets the response type to JSON. You either call the .json() method or specify the responseType option for that.
    • Why: Many people were confused how {json: true} worked and they also complained that they could not set the request/response type individually.
    • Migrate:
- got(url, {body: {x: true}, json: true});
+ got.post(url, {json: {x: true}}).json();
  • Use the responseType option instead of encoding to get a Buffer (#940) 6cc3d9f
    • Why: Previously, you would pass {encoding: null} to get a Buffer, but this was confusing. You now use {responseType: 'buffer'} instead.
    • Tip: You can also use got(…).buffer();.
    • Migrate:
- got(…, {encoding: null});
+ got(…, {responseType: 'buffer'});
  • Don't infer POST automatically when specifying body (#756) e367bdb
    • Why: We're trying to reduce the amount of magic behavior.
    • Migrate:
- got(…, {body: 'foo'});
+ got.post(…, {body: 'foo'});
  • The retries.retry option was split into retries.limit and retries.calculateDelay b15ce1d
    • Migrate:
 got(…, {
    retry: {
-        retries: 2
+      limit: 2
    }
 });
 got(…, {
    retry: {
-        retries: iteration => iteration < 2
+      calculateDelay: ({attemptCount}) => attemptCount < 2
    }
 });
 got(…, {
    headers: {
-        'user-agent': null
+      'user-agent': undefined
    }
 });
  • Rename the Promise API property .fromCache to .isFromCache (#768) b5e443b
  • Rename the stream option to isStream 518f0f5
    • Why: To make it clearer that it's a boolean and that it doesn't expect a stream to be passed in.
    • Migrate:
- got(…, {stream: true});
+ got(…, {isStream: true});
  • Don't include the Got version in the default user-agent header (#911) 95bed1e
    • got/9.6.0 (https://github.com/sindresorhus/got) β†’ got (https://github.com/sindresorhus/got)
    • Why: Importing package.json to get the version caused a lot of problems. And you should ideally set your own user-agent header anyway.
  • Remove got.create() 518f0f5
    • You can achieve the same thing with got.extend() now.
  • Remove got.mergeInstances() 518f0f5
    • Use gotInstance.extend(...gotInstances) instead.
  • Move top-level error properties into an .options and .response property (#773) 6eaa81b
    • Migrate:
- error.gotOptions
+ error.options

- error.headers
+ error.response.headers

- error.statusCode
+ error.response.statusCode

- error.statusMessage
+ error.response.statusMessage

- error.body
+ error.response.body

- error.redirectUrls
+ error.response.redirectUrls

- error.host
+ error.options.host

- error.hostname
+ error.options.hostname

- error.method
+ error.options.method

- error.protocol
+ error.options.protocol

- error.url
+ error.options.url

- error.path
+ error.options.path
  • Custom instance creation was simplified (#707) 8eaef94
    • Note: got.mergeInstances(...instances) is deprecated. Use instanceA.extend(instanceB) instead.
    • Migrate:
# Merging instances
- got.mergeInstances(instanceA, instanceB, instanceC, …);
+ instanceA.extend(instanceB, instanceC, …);

# Merging options
- instanceA.extend(optionsB).extend(optionsC).extend(…);
+ instanceA.extend(optionsB, optionsC, …);

# Merging instances and options
- got.mergeInstances(instanceA.extend(optionsB), instanceC);
+ instanceA.extend(optionsB, instanceC, …);

# Extending handlers
- got.mergeInstances(instanceA, got.create({handler: handlerB}));
+ instanceA.extend({handlers: [handlerB]});

Enhancements

Fixes

  • Fix parsing response when using afterResponse hook (#775) e2054cd
  • Fix port not being reset on redirect (#729) ada5861
  • Fix the retry functionality (#787) 0501e00
  • Fix default retry option value when specifying a number (#809) 9c04a7c
  • Correctly handle promise- and stream-specific errors in the beforeError hook 134c9b7
  • Don't throw on early lookups 4faf5c7
  • Fix Node.js 13 compatibility (#915) b0dfc95
  • Fix memory leak when using cache feature (#792) 518f0f5
  • Don't throw on 204 No Content when parsing response (#925) 518f0f5
  • When redirect fails, don't retry from scratch (#930) 518f0f5
  • Retrying inside afterResponse hook should trigger beforeRetry hook (#918) 518f0f5
  • Fix a bug that sometimes caused the Node.js process to hang 518f0f5
  • Fix a bug where cookies weren't reset on redirect between two different sites 518f0f5
  • Make the progress events not be based on internal Node.js properties cd11a50

Docs

  • Clarify retry behavior 5e6782a
  • Clarify prefixUrl behavior (#943) f008bc9
  • Document that retry option doesn't work with streams 9088866
  • Encourage using Stream.pipeline() when using the stream API 06afb27
  • Add instructions for global-agent (#822) ca8c560
  • Mention the TimeoutError.timings property 8fa18f4
  • Mention how to abort the request using hooks 96ea75f

All commits

v9.6.0...v10.0.0

Commits

The new version differs by 163 commits.

  • abdfee2 10.0.0
  • aae7b89 Improve readme
  • 71b8452 Improve types (#946)
  • f008bc9 Clarify prefixUrl behavior (#943)
  • d968e49 Upgrade dependencies
  • b82358f Add methodRewriting option (#942)
  • 966e7ff 10.0.0-beta.2
  • c537dee Make TypeScript types conforms to strict mode (#928)
  • d9a3273 Clarify retry behavior (#944)
  • 6cc3d9f Use responseType instead of options.encoding to get a Buffer (#940)
  • 3acdb69 Update a comment
  • d0f2dfd Mention that progress.total can be undefined
  • 8874a45 Preserve stacktrace when wrapping errors (#935)
  • b7a356a Fix .json() usage in readme.md
  • 2c5d0c0 Follow-up to cd11a5092972c16e5295f4d13dee20c228dcb19c

There are 163 commits in total.

See the full diff

greenkeeper[bot] commented 4 years ago

Update to this version instead πŸš€

greenkeeper[bot] commented 4 years ago

Update to this version instead πŸš€

greenkeeper[bot] commented 4 years ago

Update to this version instead πŸš€

greenkeeper[bot] commented 4 years ago

Update to this version instead πŸš€

greenkeeper[bot] commented 4 years ago

Update to this version instead πŸš€

greenkeeper[bot] commented 4 years ago

Update to this version instead πŸš€

greenkeeper[bot] commented 4 years ago

Update to this version instead πŸš€

greenkeeper[bot] commented 4 years ago

Update to this version instead πŸš€

greenkeeper[bot] commented 4 years ago

Update to this version instead πŸš€

greenkeeper[bot] commented 4 years ago

Update to this version instead πŸš€

greenkeeper[bot] commented 4 years ago

Update to this version instead πŸš€

greenkeeper[bot] commented 4 years ago

Update to this version instead πŸš€

greenkeeper[bot] commented 4 years ago

Update to this version instead πŸš€

greenkeeper[bot] commented 4 years ago

Update to this version instead πŸš€

greenkeeper[bot] commented 4 years ago

Update to this version instead πŸš€

greenkeeper[bot] commented 4 years ago

Update to this version instead πŸš€

greenkeeper[bot] commented 4 years ago

Update to this version instead πŸš€

greenkeeper[bot] commented 4 years ago

Update to this version instead πŸš€

greenkeeper[bot] commented 4 years ago

Update to this version instead πŸš€

greenkeeper[bot] commented 4 years ago

Update to this version instead πŸš€

greenkeeper[bot] commented 4 years ago

Update to this version instead πŸš€

greenkeeper[bot] commented 4 years ago

Update to this version instead πŸš€

greenkeeper[bot] commented 4 years ago

Update to this version instead πŸš€

greenkeeper[bot] commented 4 years ago

Update to this version instead πŸš€

greenkeeper[bot] commented 4 years ago

🚨 Reminder! Less than one month left to migrate your repositories over to Snyk before Greenkeeper says goodbye on June 3rd! πŸ’œ πŸššπŸ’¨ πŸ’š

Find out how to migrate to Snyk at greenkeeper.io


Update to this version instead πŸš€

greenkeeper[bot] commented 4 years ago

🚨 Reminder! Less than one month left to migrate your repositories over to Snyk before Greenkeeper says goodbye on June 3rd! πŸ’œ πŸššπŸ’¨ πŸ’š

Find out how to migrate to Snyk at greenkeeper.io


Update to this version instead πŸš€

greenkeeper[bot] commented 4 years ago

🚨 Reminder! Less than one month left to migrate your repositories over to Snyk before Greenkeeper says goodbye on June 3rd! πŸ’œ πŸššπŸ’¨ πŸ’š

Find out how to migrate to Snyk at greenkeeper.io


Update to this version instead πŸš€

greenkeeper[bot] commented 4 years ago

🚨 Reminder! Less than one month left to migrate your repositories over to Snyk before Greenkeeper says goodbye on June 3rd! πŸ’œ πŸššπŸ’¨ πŸ’š

Find out how to migrate to Snyk at greenkeeper.io


Update to this version instead πŸš€

greenkeeper[bot] commented 4 years ago

🚨 Reminder! Less than one month left to migrate your repositories over to Snyk before Greenkeeper says goodbye on June 3rd! πŸ’œ πŸššπŸ’¨ πŸ’š

Find out how to migrate to Snyk at greenkeeper.io


Update to this version instead πŸš€