2
0
mirror of https://github.com/boostorg/url.git synced 2026-01-19 04:42:15 +00:00

473 Commits

Author SHA1 Message Date
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
50bd47efb7 build: cmake preferred version is 3.20 2025-05-21 15:51:05 -05:00
Alan de Freitas
7f993b0dee ci: test deprecated-variadic-comma-omission 2025-05-19 13:39:18 -05:00
Alan de Freitas
308eaf2880 build: disable C++26 dependency warnings 2025-05-17 14:49:22 -05: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
88eb32c80d build: cmake subdirectory tests skip Boost.Context 2025-03-08 14:31:51 -03:00
alandefreitas
36602cfd44 build: cmake subdirectory test disables examples 2025-03-08 14:31:51 -03: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
b6688d9fbb test: cmake tests return integers 2024-10-04 11:32:08 -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
3f1d11812c build: disable clang unused-parameter in external modules 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
e34828ecd0 build: test flags depend on frontend
The logic for test flags in cmake also needs to check CMAKE_CXX_COMPILER_FRONTEND_VARIANT. In particular, if the compiler is clang but the frontend is MSVC, we need to add flags as if it were MSVC rather than GCC-like flags.

This commit also updates existing flags to account for new compiler versions.
2023-12-22 12:05:53 -03:00
alandefreitas
e35ae73ba5 build: tests rely on BUILD_TESTING
When URL was configured with cmake `-D BUILD_TESTING=ON` and then reconfigured with cmake `-D BUILD_TESTING=OFF`, tests would remain enabled. That's because `BUILD_TESTING` was only used once as the default value of `BOOST_URL_BUILD_TESTS` being cached. That's not how all other Boost libraries work.

This commit makes tests rely on `BUILD_TESTING` and, for backwards compatibility, `BOOST_URL_BUILD_TESTS` is only available as an extra option to enable Boost.URL tests even if `BUILD_TESTING` is `OFF`.

fix #805
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
84b82b88bb ci: test all Boost workflows
The updated CI workflows include building Boost.URL with the Boost super-project as the project root, with Boost.URL as the project root, building a project that adds the Boost super-project as a subdirectory, a project that adds Boost.URL as a subdirectory, that finds Boost as a package and that finds Boost.URL as a package.

fix #796
2023-12-06 20:03:36 -03:00
Christian Mazakas
392bbfc445 test: invoke methods defined in the DLL
URL's find_package() CMake test doesn't actually invoke any methods defined in the found DLL for Windows platforms with BUILD_SHARED_LIBS.

This PR updates the test to use components of URL with out-of-line definitions which now triggers an expected CI failure.
2023-12-06 20:03:36 -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