2
0
mirror of https://github.com/boostorg/url.git synced 2026-01-20 05:02:43 +00:00

341 Commits

Author SHA1 Message Date
Alan de Freitas
176cea8a29 feat: grammar::range user-provided RangeRule
#943
2026-01-19 20:35:32 -05:00
Alan de Freitas
142fe37745 feat: decode free functions
fix #947
2026-01-19 16:00:56 -05:00
Alan de Freitas
dc14702786 feat: get_or for query containers
fix #945
2026-01-19 13:59:56 -05:00
Vinnie Falco
b5a940fbc1 chore: ci_is_equal slow path is fixed 2025-11-16 11:35:38 -08:00
Alan de Freitas
cbaf493668 fix(parse_query): guard empty string_view inputs from null data
fix #946
2025-11-13 12:04:12 -05:00
Alan de Freitas
1e010e5ba1 perf: constructing segments subviews has a constant cost 2025-11-04 19:07:09 -05:00
Alan de Freitas
0d082014f5 refactor: preserve absolute semantics for segment subviews
fix #939
2025-11-04 18:12:26 -05:00
Vinnie Falco
7e60e85fe7 static assert is in detail 2025-10-23 21:53:22 -07:00
Alan de Freitas
0b7fd495a4 feat: segments_view iterator constructors 2025-10-22 11:05:46 -05:00
Alan de Freitas
83d8166d50 refactor: replace BOOST_STATIC_ASSERT with BOOST_CORE_STATIC_ASSERT
fix #934
2025-10-22 11:05:46 -05:00
Alan de Freitas
0970de90d4 test: zone id round-trips
fix #919
2025-08-29 12:01:50 -05:00
Alan de Freitas
b1f1418b2e feat: zone_id setters 2025-08-29 12:01:50 -05:00
Alan de Freitas
9b4c4b440e fix: resolve replicates ref fragment in all cases
fix #920
2025-08-26 17:44:59 -05:00
Alan de Freitas
e9bec4c8d1 docs: functions that cannot round-trip
fix #921
2025-08-26 17:44:59 -05:00
Alan de Freitas
a1a5d18e93 build: independent test suite targets 2025-07-11 01:51:59 +00:00
Alan de Freitas
0820c344b6 test: test suite supports arguments
fix #883
2025-06-19 00:49:27 +00:00
Alan de Freitas
64859a8fc2 fix: consistent behavior for space-as-plus option
This commit refactors all functions so they have consistent behavior for the space-as-plus encoding option.

- any_params_iter objects store and apply the appropriate option when measuring and copying
- when the option is enabled, encoding functions encode space-as-plus and plus as %2B regardless of the charset
- normalization and comparison algorithms take into consideration special query chars whose meaning changes depending on encoding
- all params_view objects created with default options enable space-as-plus encoding

fix #903
2025-05-15 16:04:06 -05:00
alandefreitas
da331e4c99 docs: refactor javadoc
Refactor javadoc to use new MrDocs features
2025-01-10 19:59:51 -03:00
alandefreitas
d8cacb5658 refactor(url_base): copy operation uses reference to underlying implementation
The copy operation from a url_view_base should use the pointed implementation rather than the underlying implementation so that url_views that refer to other urls are accounted for.

fix #872
2024-10-24 22:01:22 -03:00
alandefreitas
c1b3ecc8f2 refactor: no deprecated variant2 alias from API
fix #857
2024-10-04 11:32:08 -03:00
alandefreitas
5118483c8b refactor: query_rule consistent interpretation
query_rule broke a grammar parse invariant by using different interpretations of the string depending on whether the reason for termination was the end of a string or a continuation with an invalid character.

fix #864
2024-10-04 11:32:08 -03:00
Rene Rivera
471aec5940 build: modular build structure 2024-08-20 19:41:20 -03:00
alandefreitas
d1f16a9e41 build: tests are excluded for all target
fix #841
2024-08-19 21:48:54 -03:00
alandefreitas
a1ecad8243 docs: implementation defined filters 2024-07-11 03:21:49 -03:00
alandefreitas
9460ddaf7f docs: string_token exposition
fix #845
2024-07-10 12:48:26 -03:00
alandefreitas
503602d6f5 test(natvis): fix dangling references 2024-07-05 19:49:26 -03:00
alandefreitas
fddf6b75d5 test: shared recycled_ptrs
This commit includes tests for shared `recycled_ptr`s. Unreachable paths are also marked.

This is the last in a series of commits that intend to fix #828, where `recycled_ptr` had low coverage.

fix #828
2024-03-15 21:01:16 -03:00
alandefreitas
9d4a4a5f15 test: authority_view host functions
This commit includes tests for the authority_view host functions when the host type is invalid.

This is a partial solution to #828, where authority_view.cpp has low coverage.
2024-03-15 15:23:26 -03:00
alandefreitas
0f97a6d4ed test: static_url url_base functions
This commit includes tests for the url_base functions whose behavior is customized by static_url.

This is a partial solution to #828, where static_url.cpp has low coverage.
2024-03-13 23:10:04 -03:00
alandefreitas
40a3599215 fix: handle encoded slash in hash
fix #818
2024-03-08 16:00:30 -03:00
alandefreitas
30d953aad2 test: cover comparison of ports of different sizes
The previous tests did not cover all the cases of comparison between port strings.

fix #818
2024-03-08 16:00:30 -03:00
alandefreitas
0cc6191a54 refactor: no implicit char conversions
fix #816
2024-02-07 18:02:58 -03:00
alandefreitas
8a8204103f refactor: move detail headers to src 2024-01-19 15:34:31 -03:00
alandefreitas
fcb5f58b0e test: simplify error flags
Aggregate Jamfile error flags per compiler and update CI compiler versions with warnings-as-errors based on new cpp-actions entry flags.
2024-01-18 23:43:01 -03:00
alandefreitas
6526b0a5c1 test(snippets): include vector 2024-01-18 23:43:01 -03:00
alandefreitas
df21f5b98d test(format): use qualified functions
Latest standard implementations have been indirectly including the std::format declaration, which makes urls::format ambiguous in tests because of ADL.
2024-01-04 18:45:23 -03:00
alandefreitas
2df5f62f55 fix: resolve abnormal hrefs
fix #808
2024-01-03 17:55:04 -03:00
alandefreitas
a4d2f956f6 build: all tests depend on custom target
Tests were depending on other targets that don't match the convention for Boost libraries.

fix #804
2023-12-22 12:05:53 -03:00
alandefreitas
b8b91407fd fix: handle brackets in query_chars
Although 1317ca8c includes support for brackets in key_chars, the lack of support in query_chars made still led to errors when the the complete url is parsed at once.

fix #93
2023-12-15 15:42:28 -03:00
alandefreitas
d99b89ac16 feat(format): support const args
fix #793
2023-11-27 16:53:17 -03:00
alandefreitas
ce31dfd4d2 docs: format tables for new UI
This commit formats tables so that the content fits in the margins of the new UI template.
2023-11-09 16:21:06 -03:00
alandefreitas
7e47e9fef6 docs: sync README and documentation
Update the content to match the documentation and remove old information that is currently incorrect.

fix #780
2023-10-13 18:40:35 -03:00
alandefreitas
f2bb191b90 fix: IP-literal can be IPv6addrz
This commit changes the IP-literal rule to also accept IPv6addrz as a valid ipv6 host type. IPv6addrz includes a ZoneID at the end, delimited by an encoded "%25". The ipv6_address class is unmodified, as the mapping from the ZoneID to a std::uint32_t is dependent on the application context. The original ZoneID can be obtained from the url_view.

fix #711
2023-07-20 14:13:32 -03:00
alandefreitas
0ca58467a4 fix: url_view string_view constructor requires non-url_view_base
fix #756
2023-07-18 18:52:18 -03:00
alandefreitas
ec55734d36 test: fluent API
fix #446
2023-07-18 18:51:55 -03:00
alandefreitas
c9721557e2 test: IPv4-address leftover forms hostname
Although the issue has been fixed since 3a237c35, this commit includes the test from #755.

closes #755
2023-07-18 18:50:43 -03:00
alandefreitas
c97bc2782c fix: parse_query does not recreate string_view
fix #757
2023-07-18 15:34:23 -03:00
Ed Tanous
f06f595ae7 fix: format_args zero serialization
Fixes #758

The parsing and measuring code didn't have explicit handling for integer
zero, and the while(v > 0) loop wouldn't execute.

Also add tests to cover both of these cases.
2023-06-29 02:32:51 -03:00
alandefreitas
34e0430307 build(test): replicate Jamfile error flags 2023-06-09 21:12:59 -03:00
alandefreitas
96438f683e remove type aliases
fix #743
2023-04-28 17:27:26 -03:00