Skip to content

Releases: ropensci/crul

crul v1.5.0

19 Jul 17:31
1c1a0ae
Compare
Choose a tag to compare

NEW FEATURES

  • gains ability to mock (via webmockr) async requests via either Async and/or AsyncVaried (thanks @keller-mark) (#180)

INTERNAL

  • reduce use of single letter variables within crul code to make code easier to understand (#181)

crul v1.4.2

09 Apr 16:44
dc333cb
Compare
Choose a tag to compare

DOCUMENTATION

INTERNAL

  • tweak to test helper base url setup (#178)

crul v1.4

13 May 02:56
e38736d
Compare
Choose a tag to compare

ASYNC RETRIES

Via the two issues (#135) and (#159) crul now supports http retries in: Async, AsyncVaried, AsyncQueue, and the request builder class HttpRequest

crul v1.3

13 Dec 16:27
7ac2bae
Compare
Choose a tag to compare

BUG FIXES

  • improved error message for Async when urls and disk vector lengths do not match (they must match) (#165) thanks @shakraz

crul v1.2

22 Nov 18:47
a8c1172
Compare
Choose a tag to compare

DOCUMENTATION

  • fix example in AsyncQueue docs (#146) thanks @johnbaums !
  • update HttpClient docs to state that it's an R6 class, and give some details on what an R6 class is and links to more info (#155)

NEW FEATURES

  • AsyncQueue gains methods: parse, status_code, status, content, and times (#156)
  • $responses() method now returns an S3 class with an associated print method to prevent printing a lot of results to the screen; print method pritns a summary of results, and at most 10 results, just status code and url (#157)

MINOR IMPROVEMENTS

  • parsing response headers gains a check for whether encoding is valid, and if not tries to set Latin1 encoding, and if that doesn't work, fails out with message (#163) (#164) thanks @FlukeAndFeather

crul v1.1.0

08 Feb 19:38
a22b191
Compare
Choose a tag to compare

NEW FEATURES

  • Paginator gains support for query parameter combination page/per_page to automatically paginate (#145)

MINOR IMPROVEMENTS

  • fix typo (#149) thanks @dpprdan
  • Change to how numbers are handled in query parameters. We unfortunately hadn't tested this package with large numbers, which were being converted to scientific notation with a certain number of digits before a decimal. Fixed handling of query parameters to avoid this problem. Fix for Paginator as well as for HttpClient (#151) (#152) (#153) thanks @ateucher

BUG FIXES

  • sometimes weird response headers are returned in an HTTP response that can not be easily parsed; crul would raise an error when this header parsing happens, but now we raise a warning instead (#150)

crul v1.0.0

30 Jul 21:22
3a621b6
Compare
Choose a tag to compare

ok related changes

  • ok() can now accept more than 1 status code so that you can check if the status of a url is within a set of status codes rather than equal to 1 status code (#124)
  • ok() gains a parameter verb to use either head or get requests. in addition added more documentation (#125) to the function on how to get the "right answer" for whether a url is ok/up (#123) (#127)
  • ok() gains parameter ua_random, which if TRUE, will use a random user agent string pulled from a vector of 50 user agent strings generated from charlatan::UserAgentProvider (#138)

NEW FEATURES

  • gains new async class AsyncQueue for doing async requests with rate limits (#139)
  • gains new functions curl_verbose() and set_verbose(). curl_verbose() can be set by passing to the initialize step (e.g., HttpClient$new(url, verbose=curl_verbose())), and gets more compact verbose curl output, while also getting request body information (and response body optionally). set_verbose() is sets curl_verbose() globally (#141)
  • gains new vignette "How to choose a client" for choosing which crul class to use (e.g., HttpClient vs. Async) (#133) (#143)

MINOR IMPROVEMENTS

  • package sticker done, shown in README (#42)
  • improve function/class reference page in docs site (#131)
  • improvements to the best practices vignette (#132)
  • removed unused private variable in the AsyncVaried class (#140)
  • fix inaccuracy in documentation for the RETRY method (#130)
  • HttpRequest now adds the query (if present) to the printed url in the print method for the class (it was absent before now) (#128)
  • use new roxygen2 support for R6 classes (#126)
  • removed delete-requests and post-requests manual files - mostly redundant with other documentation

crul v0.9.0

06 Nov 21:28
Compare
Choose a tag to compare

NEW FEATURES

  • HttpResponse response object gains new methods for checking response content types, includes: raise_for_ct, raise_for_ct_html, raise_for_ct_json, raise_for_ct_xml. these behave similarly to raise_for_status, and can behave as a warning or raise an error through stop (#119) (#120)

MINOR IMPROVEMENTS

  • fix to prep_body internal function to handle various body inputs; now avoids warning about as.character.form_file when both httr and crul are loaded (#112)
  • finish off "Failing with fauxpas" section of the "API package best practices" vignette (#121)

BUG FIXES

  • the head() verb on HttpClient was no capturing auth when set on initialization (#122)

crul v0.8.4

02 Aug 20:00
Compare
Choose a tag to compare

MINOR IMPROVEMENTS

  • jsonlite package moved to Imports (#112)
  • the parse() method in the HttpResponse object now checks whether the response raw bytes can be converted to character, and if not just returns raw bytes (#115) (#116)
  • give vignettes titles (#113) (#114)

BUG FIXES

  • no longer setting cainfo curl option, fixes problem arising from change in recent libcurl version (#117)

crul v0.8.0

27 Jun 23:31
Compare
Choose a tag to compare

NEW FEATURES

  • you can now pass on parameters through the parse() method of an HttpResponse class to the internally called function iconv() to finely control the usage of iconv for cases in which normal encoding conversion doesn't work (#110)

MINOR IMPROVEMENTS

  • use httpcode package instead of fauxpas package within ok() function (#108) (#109) thanks @maelle !
  • fix links to http testing book - ropensci -> ropenscilabs (#111)