Skip to content

Releases: libcpr/cpr

1.9.0 - Goodbye cpp11

18 Jul 08:35
871ed52

Choose a tag to compare

This will be the last release where the minimum required C++ standard is cpp11. With the next major release (1.10.0) in ~late 2022/early 2023 we will increase the minimum C++ standard to cpp17 (Issue).
This release (1.9.0) will still receive bug fixes, at least until the end of 2023, but all new features require from now on a cpp17 compatible compiler.

Thanks to everyone who helped making this next release of cpr possible 🎉!
Especially I would like to thank @simon-berger, @saendigPhilip @leviliangtw .

In case everything goes like planed we will even offer a .deb package and a NuGet package soon.
So stay tuned!

What's Changed

New Contributors

Full Changelog: 1.8.4...1.9.0

Securely remove sensitive data from memory

06 Jul 07:25

Choose a tag to compare

This release addresses a security concern, where an attacker could extract sensitive information from cpr after the application had been exited.

Changes:

  • Explicit removal of sensitive data from memory (@Garfield96)

Full Changelog: 1.8.3...1.8.4

`CURLOPT_SSLKEY_BLOB` and old curl Versions

05 May 09:20

Choose a tag to compare

This release disables setting SSL-Key blobs for older versions of curl below 7.71.0, since it was not available previously to that.
More information on that can be found here: #732

Full Changelog: 1.8.2...1.8.3

Windows and MacOS HTTPS fix

27 Apr 16:40

Choose a tag to compare

What's Changed

Full Changelog: 1.8.1...1.8.2

cpr v1.8.1

25 Mar 15:13

Choose a tag to compare

Changes

  • Not including curl.h in cpr header files #716

cpr v1.8.0

25 Mar 14:19
21f42cf

Choose a tag to compare

Changes

  • Added DownloadAsync(...) #696
  • Added basic range support via SetRange(...) #701
  • Added support for setting the private key blob directly #699
  • Added Mbed TLS support #714
  • Added an option to reserve space before downloading the response string #712
  • Updated the build in curl to 7.81.0
  • Fixed CA-Path for Android #707
  • Fix overwriting of ca bundle #717
  • Fix build with OpenSSL on Ubuntu bionic #696
  • Fixed installing DLLs to binary directory

cpr v1.7.2

09 Dec 09:12

Choose a tag to compare

Small bug fix release.

Changes

  • Fixed version macro

cpr v1.7.1 - Header and cpr::Session::Download

09 Dec 08:53

Choose a tag to compare

Small bug fix release.

Changes

  • Fixed setting headers when calling cpr::Session::Download(...).

Now something like this should work:

cpr::Url url{server->GetBaseUrl() + "/download_gzip.html"};
cpr::Session session;
session.SetUrl(url);
session.SetHeader(cpr::Header{{"Accept-Encoding", "gzip"}}); // Works now
cpr::Response response = session.Download(cpr::WriteCallback{write_data, 0});

cpr v1.7.0

24 Nov 12:57
bcb7729

Choose a tag to compare

  • Added a Cppcheck CI run
  • Fixed automated libcurl ca path detection
  • Fixed missing raw_header in cpr::Response
  • Fixed bugprone narrowing conversions
  • Fixed MaxRedirects exceeded should be treated as error
  • Updated libcurl from 7.75.0 to 7.79.1
  • Fixed cprConfig.cmake when building cpr as a submodule
  • Added cpr version macros in cprver.h
  • Fixed CMake paths for subprojects
  • Updated zlib-ng from 2.0.0-RC2 to 2.0.5
  • Fixed usage of CPR_USE_SYSTEM_GTEST
  • Added CMake find-package support
  • Added more redirect options:
    • cont_send_cred: Continue to send authentication (user+password) credentials when following locations, even when hostname changed.
  • Added an option to specify the HTML version with SetHttpVersion(...)
  • Fixed respecting system proxy configuration
  • Added an option to select the outgoing interface with SetInterface(...)
  • Added an option to get the file download length GetDownloadFileLength(...)
  • Updated Google Tests from 1.10.0 to 1.11.0
  • Added proxy authentication
  • Don't forcibly override user setting for FETCHCONTENT_QUIET

cpr v1.6.2

27 Apr 17:04

Choose a tag to compare

  • Fix MSVC build; linker flags for sanitizer builds #558