Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .github/workflows/build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -39,7 +39,7 @@ jobs:
uses: docker/setup-qemu-action@v3
with:
platforms: all
- uses: pypa/cibuildwheel@v2.22.0
- uses: pypa/cibuildwheel@v3.3.1
- uses: actions/upload-artifact@v4
with:
name: artifact-wheel-${{ matrix.os }}
Expand Down
8 changes: 7 additions & 1 deletion ada_url/ada.cpp
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
/* auto-generated on 2026-01-30 13:29:04 -0500. Do not edit! */
/* auto-generated on 2026-02-23 21:29:24 -0500. Do not edit! */
/* begin file src/ada.cpp */
#include "ada.h"
/* begin file src/checkers.cpp */
Expand Down Expand Up @@ -14495,6 +14495,12 @@ bool url_aggregator::set_pathname(const std::string_view input) {
if (get_pathname().starts_with("//") && !has_authority() && !has_dash_dot()) {
buffer.insert(components.pathname_start, "/.");
components.pathname_start += 2;
if (components.search_start != url_components::omitted) {
components.search_start += 2;
}
if (components.hash_start != url_components::omitted) {
components.hash_start += 2;
}
}
ADA_ASSERT_TRUE(validate());
return true;
Expand Down
23 changes: 15 additions & 8 deletions ada_url/ada.h
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
/* auto-generated on 2026-01-30 13:29:04 -0500. Do not edit! */
/* auto-generated on 2026-02-23 21:29:24 -0500. Do not edit! */
/* begin file include/ada.h */
/**
* @file ada.h
Expand Down Expand Up @@ -8091,6 +8091,12 @@ inline void url_aggregator::update_base_pathname(const std::string_view input) {
// output.
buffer.insert(components.pathname_start, "/.");
components.pathname_start += 2;
if (components.search_start != url_components::omitted) {
components.search_start += 2;
}
if (components.hash_start != url_components::omitted) {
components.hash_start += 2;
}
}

uint32_t difference = replace_and_resize(
Expand Down Expand Up @@ -9530,13 +9536,14 @@ url_pattern_component<regex_provider>::create_component_match_result(
auto result =
url_pattern_component_result{.input = std::move(input), .groups = {}};

// Optimization: Let's reserve the size.
result.groups.reserve(exec_result.size());

// We explicitly start iterating from 0 even though the spec
// says we should start from 1. This case is handled by the
// std_regex_provider.
for (size_t index = 0; index < exec_result.size(); index++) {
// std_regex_provider which removes the full match from index 0.
// Use min() to guard against potential mismatches between
// exec_result size and group_name_list size.
const size_t size = std::min(exec_result.size(), group_name_list.size());
result.groups.reserve(size);
for (size_t index = 0; index < size; index++) {
result.groups.emplace(group_name_list[index],
std::move(exec_result[index]));
}
Expand Down Expand Up @@ -11221,14 +11228,14 @@ constructor_string_parser<regex_provider>::parse(std::string_view input) {
#ifndef ADA_ADA_VERSION_H
#define ADA_ADA_VERSION_H

#define ADA_VERSION "3.4.2"
#define ADA_VERSION "3.4.3"

namespace ada {

enum {
ADA_VERSION_MAJOR = 3,
ADA_VERSION_MINOR = 4,
ADA_VERSION_REVISION = 2,
ADA_VERSION_REVISION = 3,
};

} // namespace ada
Expand Down
8 changes: 1 addition & 7 deletions pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"

[project]
name = "ada-url"
version = "1.29.0"
version = "1.30.0"
authors = [
{name = "Bo Bayles", email = "bo@bbayles.com"},
]
Expand Down Expand Up @@ -61,7 +61,6 @@ build = [
"cp312-*",
"cp313-*",
"cp314-*",
"pp310-*",
]
manylinux-x86_64-image = "manylinux_2_28"
manylinux-aarch64-image = "manylinux_2_28"
Expand All @@ -76,8 +75,3 @@ before-build = "make clean"

[tool.cibuildwheel.windows]
archs = ["AMD64"]

# https://github.com/pypy/pypy/issues/5027
[[tool.cibuildwheel.overrides]]
select = "pp310-win_amd64"
environment = { SETUPTOOLS_USE_DISTUTILS="stdlib" }
Loading