Skip to content

Releases: upa-url/upa

v2.4.0

14 Nov 19:50

Choose a tag to compare

What's Changed

  • Update Doxygen to 1.14.0 by @rmisev in #150
  • Use the [[lifetimebound]] attribute by @rmisev in #152
  • Cirrus CI: update FreeBSD to 14.3 by @rmisev in #154
  • Free up memory of ctx in the public_suffix_list::finalize by @rmisev in #155
  • Fix the no rules match condition in the public_suffix_list by @rmisev in #156
  • Bump github/codeql-action from 3 to 4 by @dependabot[bot] in #157
  • Bump lukka/get-cmake from 4.1.1 to 4.1.2 by @dependabot[bot] in #153
  • Fix when the "no rules match" condition is checked by @rmisev in #158
  • Deprecate the public_suffix_list::option::allow_trailing_dot by @rmisev in #159
  • Add the public_suffix_list::result::is_rules_match() function by @rmisev in #160
  • Fix the public_suffix_list functions for PSL loading by @rmisev in #161
  • Fix public_suffix_list::get_host_suffix_info by @rmisev in #162
  • Refactor upa::str_arg by @rmisev in #163
  • Make str_arg more flexible by @rmisev in #164
  • Use the gcc:9 container to build with g++-9 by @rmisev in #166
  • Change the order in which input is checked and converted to str_arg by @rmisev in #165
  • Refactor has_data_and_size_v and is_iterable_pairs_v by @rmisev in #167
  • Update Doxygen to 1.15.0 by @rmisev in #168

Full Changelog: v2.3.0...v2.4.0

v2.3.0

18 Sep 19:37

Choose a tag to compare

What's New

The Upa IDNA has been updated to support Unicode 17.0.0.

What's Changed

  • Use MSVC v142 (VS 2019 C++ build tools) with VS 2022 by @rmisev in #138
  • Fix CMakeLists.txt by @rmisev in #140
  • Update WPT: add port setter tests with newlines and tabs by @rmisev in #141
  • Update WPT: add host setter tests for empty host with port by @rmisev in #142
  • Use another Docker image to fix errors when running apt-get update by @rmisev in #144
  • Update WPT: add path setter tests for parent directory by @rmisev in #143
  • Bump actions/checkout from 4 to 5 by @dependabot[bot] in #146
  • Bump lukka/get-cmake from 4.0.2 to 4.1.0 by @dependabot[bot] in #145
  • Change length() == 0 to empty() by @rmisev in #147
  • Update Upa IDNA to 2.4.0 (Unicode 17.0.0) by @rmisev in #149
  • Bump lukka/get-cmake from 4.1.0 to 4.1.1 by @dependabot[bot] in #148

Full Changelog: v2.2.0...v2.3.0

v2.2.0

12 Jun 19:48
8dab2d1

Choose a tag to compare

What's Changed

  • Some fixes by @rmisev in #133
  • Eliminate data exports by @rmisev in #134
  • Add [[nodiscard]] to public functions in public_suffix_list.h by @rmisev in #135
  • Fix public_suffix_list::get_suffix_view by @rmisev in #136
  • Add a workflow job to build with GCC on Windows by @rmisev in #137

Full Changelog: v2.1.0...v2.2.0

v2.1.0

01 Jun 16:41

Choose a tag to compare

What's Changed

  • Update README.md by @rmisev in #119
  • Fix test-url_for_.cpp by @rmisev in #120
  • Bump lukka/get-cmake from 3.31.6 to 4.0.0 by @dependabot in #121
  • Bump lukka/get-cmake from 4.0.0 to 4.0.1 by @dependabot in #122
  • Remove unnecessary inline by @rmisev in #123
  • Update Doctest to 2.4.12 by @rmisev in #125
  • Enable building Upa URL as a shared library by @rmisev in #124
  • Add functions to get and check the shared library version by @rmisev in #127
  • Remove the URL_BUILD_TESTS CMake variable by @rmisev in #128
  • Bump lukka/get-cmake from 4.0.1 to 4.0.2 by @dependabot in #129
  • Add url_from_file_path function with std::filesystem::path parameter by @rmisev in #90
  • Add fs_path_from_file_url function by @rmisev in #130
  • Add the Visual Studio 2019 workflow to AppVeyor by @rmisev in #131
  • Run ctest with the --output-on-failure option by @rmisev in #132

Full Changelog: v2.0.0...v2.1.0

v2.0.0

27 Mar 20:58

Choose a tag to compare

What's New

  • Migrated to C++17
  • Added support for string classes convertible to std::basic_string_view (for example string classes of Qt 6.7 or latter).
  • Added upa::domain_to_unicode function
  • Added Public Suffix List (PSL) functionality
  • Updated Upa IDNA to version 2.1.0, which improves IDNA processing performance.

What's Changed

  • Fix use of __has_include by @rmisev in #76 (also in v1.0.2)
  • Move to C++17 by @rmisev in #71
  • Simplify str_arg_char template specialization by @rmisev in #77 (partially backported to v1.0.2)
  • Improve support for string input by @rmisev in #78 (partially backported to v1.0.2)
  • Add [[nodiscard]] mainly to public functions by @rmisev in #79
  • Simplify str_arg_char specialization for ATL/MFC strings (C++20) by @rmisev in #80 (backported to v1.0.2)
  • Add more constexpr by @rmisev in #81
  • Use std::array in code_point_set and code_points_multiset classes by @rmisev in #82
  • Bump codecov/codecov-action from 4 to 5 by @dependabot in #83 (backported to v1.0.2)
  • Slightly simplify and optimize ipv6_serialize by @rmisev in #85 (backported to v1.0.2)
  • Rename download-wpt.sh (.bat) to download-tests.sh (.bat) by @rmisev in #86 (backported to v1.1.0)
  • Update WPT: upstream some WebKit IDNA tests by @rmisev in #87 (backported to v1.1.0)
  • Use std::filesystem::path for test file paths by @rmisev in #88
  • Fix: set_port must return false if input does not start with a digit by @rmisev in #89 (backported to v1.1.0)
  • Fix static analysis errors by @rmisev in #91 (backported to v1.1.0)
  • Optimize url::search() and url::hash() functions by @rmisev in #93 (backported to v1.1.0)
  • Simplify util::append by using constexpr if by @rmisev in #95
  • Add upa::domain_to_unicode function by @rmisev in #94
  • Add url::get_part_pos function by @rmisev in #92 (backported to v1.1.0)
  • Optimize path start state by @rmisev in #96 (backported to v1.1.0)
  • Update Doxygen to 1.13.1 by @rmisev in #97 (backported to v1.1.0)
  • Update Doxygen to 1.13.2 by @rmisev in #99 (backported to v1.1.0)
  • Implement the Public Suffix List algorithm by @rmisev in #98
  • Add operator<< to url and url_search_params by @rmisev in #100 (backported to v1.1.0)
  • Update WPT: Test by @rmisev in #101 (backported to v1.1.0)
  • Fix: delete URL object after use in URL demo JS code by @rmisev in #102 (backported to v1.1.0)
  • Move get_scheme_info from url class to detail namespace by @rmisev in #103 (backported to v1.1.0)
  • Update to Unicode IDNA Compatibility Processing version 16.0.0 by @rmisev in #104 (backported to v1.1.0)
  • Add U+005E (^) to the path percent-encode set by @rmisev in #105 (backported to v1.1.0)
  • Add Visual Studio 2017 workflow (AppVeyor) by @rmisev in #106
  • Update WPT: add more host/hostname setter tests by @rmisev in #107 (backported to v1.2.0)
  • Ensure opaque paths always roundtrip by @rmisev in #108 (backported to v1.2.0)
  • Update WPT by @rmisev in #109 (backported to v1.2.0)
  • Fix: do link with stdc++fs when using GCC 8 by @rmisev in #110
  • Update WPT: add even more host/hostname setter tests by @rmisev in #111 (backported to v1.2.0)
  • Use Public Suffix List (PSL) in Upa URL demo by @rmisev in #112
  • Prepare public_suffix_list.cpp,.h files for single_include/upa by @rmisev in #113
  • Add workflow to compile with clang++ 7 and g++ 8 by @rmisev in #114
  • Update Upa IDNA to 2.1.0 by @rmisev in #115
  • Make public_suffix_list::option enumerator names lowercase by @rmisev in #116
  • Move code that accesses public_suffix_list::root_ to .cpp file by @rmisev in #117
  • Update documentation by @rmisev in #118

Full Changelog: v1.0.1...v2.0.0

v1.2.0

19 Mar 18:53

Choose a tag to compare

What's Changed

Full Changelog: v1.1.0...v1.2.0

v1.1.0

v1.0.2

23 Nov 16:02

Choose a tag to compare

v1.0.1

18 Oct 19:03

Choose a tag to compare

What's New

Two header files url_for_atl.h and url_for_qt.h have been added to allow strings from the ATL/MFC and Qt libraries to be used as input. See "String input" for more information.

What's Changed

  • Use <generator> instead of <experimental/generator> by @rmisev in #72
  • Use specific versions of Ubuntu and add GCC 14 C++23 workflow by @rmisev in #73
  • Add str_arg_char specializations for ATL/MFC and Qt strings by @rmisev in #74
  • Update WPT by @rmisev in #75

Full Changelog: v1.0.0...v1.0.1

v1.0.0

12 Sep 18:05

Choose a tag to compare

What's New

The dependency on ICU was dropped, and the compact Upa IDNA library was included in this project. This has simplified the use of the library and allows it to be compiled into WebAssembly (see Upa URL demo).

What's Changed

Full Changelog: v0.4.2...v1.0.0