Alexander Grund
48b65c65b7
Add assertions to IConv converter
...
Assert post-conditions of calling `iconv` and add test for a possible
violation of that.
2023-11-28 20:19:20 +01:00
Alexander Grund
8445dce654
Allow to disable the IConv backend in B2
...
Useful if the IConv implementation has bugs.
Now honors `boost.locale.iconv=off` correctly similar to other backends
2023-11-21 17:38:06 +01:00
Alexander Grund
c5314a857c
Merge pull request #205 from Flamefire/ci
...
Update GHA CI
2023-11-10 20:13:49 +01:00
Alexander Grund
e9b88678c2
Update GHA CI
...
Remove C++03 jobs from newer compilers
Fix after GHA Ubuntu 22 image update
2023-11-06 08:41:13 +01:00
Alexander Grund
68f5cd0054
Fix a warning on Clang
2023-11-03 19:49:07 +01:00
Alexander Grund
4d06360baf
GHA: Run apt-get update before adding repositories
2023-10-16 07:09:38 +02:00
Alexander Grund
79c602e110
Use super project to build locale and its dependencies in cmake(-subdir)-test
...
The transitive dependencies of Boost.Locale are many and might be changing.
To avoid frequently required updates use the super-project with `BOOST_INCLUDE_LIBRARIES` to auto-select the required libs.
2023-10-15 16:23:37 +02:00
Alexander Grund
e480cd5d94
Merge pull request #199 from Flamefire/warnings-cov
...
Minor refactoring and added tests
2023-10-14 08:35:41 +02:00
Alexander Grund
c67a5f2a1a
Update CMakeLists
2023-10-13 18:42:45 +02:00
Alexander Grund
5080ef2fe3
Use std::array in date_time_period_set
...
Avoids the magic number
2023-10-13 11:59:55 +02:00
Alexander Grund
9160e35d52
Add test for date_time_period_set
2023-10-13 11:45:15 +02:00
Alexander Grund
4548dc0059
Add tests for rolling date_time by a single period
2023-10-13 11:29:22 +02:00
Alexander Grund
929fcfec62
Add test for auto-formatting date_time
2023-10-13 11:20:11 +02:00
Alexander Grund
034dae9c77
Test the base_converter (ASCII implementation as fallback)
2023-10-13 10:54:50 +02:00
Alexander Grund
1b2dde2314
Remove superflous codecvt code
2023-10-13 10:17:24 +02:00
Alexander Grund
9a4446aafa
Add tests for hold_ptr
2023-10-13 09:59:39 +02:00
Alexander Grund
96c4c141ce
Use nullptr instead of 0
2023-10-13 09:30:34 +02:00
Alexander Grund
3c647f2f7f
Merge pull request #197 from Flamefire/gbk-test
...
Add test for UTF<->GBK conversion
2023-10-12 19:51:53 +02:00
Alexander Grund
624f83695c
Merge branch 'boostorg:develop' into gbk-test
2023-10-12 09:48:52 +02:00
Alexander Grund
d97969a0cb
Merge pull request #198 from Flamefire/date_time-coverage
...
Fix issue with negative times in `date_time` and add tests for full coverage
2023-10-12 09:08:39 +02:00
Alexander Grund
303e141475
Fix handling of negative times
...
The fractional part (sub-seconds) was not handled correctly
(subtracting the second only from a temporary)
Fix this and add tests, also for comparing sub-second differences.
2023-10-11 18:50:01 +02:00
Alexander Grund
980266eadb
Add tests for remaining constructors of date_time&calendar
...
Includes checks for correct timezone in `date_time`
2023-10-11 13:13:52 +02:00
Alexander Grund
6259738eb3
Add test for date_time::is_in_daylight_saving_time
2023-10-11 13:13:52 +02:00
Alexander Grund
bea86a3d2e
Implement hold_ptr::swap with exchange
2023-10-11 13:13:39 +02:00
Alexander Grund
277cf09062
Provide ADL swap for date_time
2023-10-10 18:45:03 +02:00
Alexander Grund
8ec7d666cc
Add test for UTF<->GBK conversion
...
Test for #196 , should pass, especially without crashing.
2023-10-10 11:43:04 +02:00
Alexander Grund
2cdef1a6f9
Merge pull request #195 from Flamefire/fix_escaped_braces
...
Fix handling of escaped opening brace in format strings
2023-09-20 16:17:25 +02:00
Alexander Grund
744799aad3
Add test cases for remaining format modifiers
2023-09-20 08:33:59 +02:00
Alexander Grund
c68c5c7a2b
Fix handling of escaped opening brace in format strings
...
When using an escaped opening brace in a format string it was output 2
times instead of one.
Fix and add test
2023-09-19 10:51:59 +02:00
Alexander Grund
e1b20caa87
Merge pull request #193 from Flamefire/coverage
...
Fix `to_title_case` for WinAPI and improve tests&coverage
2023-09-17 10:39:14 +02:00
Alexander Grund
e6e3b33d03
Fix title_case and fallthrough part of WinAPI converter
...
Those code paths erroneously returned an empty string
2023-09-16 19:10:31 +02:00
Alexander Grund
debe0dc0a3
Add test for the unimplemented title_case conversions
2023-09-16 19:09:57 +02:00
Alexander Grund
6a522a35c7
Test fall-through case of case-converter (i.e. unimplemented normalization)
...
Add coverage ignore for the (logically) impossible cases
2023-09-16 19:08:26 +02:00
Alexander Grund
6e8a77b31c
Add missing test cases for info-class
2023-09-16 17:13:39 +02:00
Alexander Grund
9b00ac4eb5
Fix typo string_propery/string_property
2023-09-16 17:13:39 +02:00
Alexander Grund
0113bf309d
Output C++20 char8_t support in show_config
2023-09-16 17:13:38 +02:00
Alexander Grund
fc2ccba1d4
Revert "DEBUG: echo stdlib"
...
This reverts commit 21ddbb006d .
2023-09-16 17:07:43 +02:00
Alexander Grund
e0b28bf5e0
Merge pull request #192 from Flamefire/utf_chartypes
...
Add (partial) implementations for `char8_t`
2023-09-14 16:13:55 +02:00
Alexander Grund
e6b02a48d9
Collect coverage with C++2a
2023-09-14 10:15:23 +02:00
Alexander Grund
7d9ab27511
Use BOOST_WORKAROUND
2023-09-13 16:58:18 +02:00
Alexander Grund
908b2744b4
Workaround bug in Clang < 15.x
2023-09-13 16:56:53 +02:00
Alexander Grund
324a66752b
Use dedicated macro to check availability of std::basic_string<char8_t>
...
Allow to disable for non-conforming compilers/stdlibs
2023-09-13 09:20:05 +02:00
Alexander Grund
21ddbb006d
DEBUG: echo stdlib
2023-09-13 09:10:46 +02:00
Alexander Grund
fd6701be21
Workaround missing std::ctype<char8_t> in tests
2023-09-13 09:10:38 +02:00
Alexander Grund
e2283eb0f4
CI: Add clang-15
2023-09-12 15:01:45 +02:00
Alexander Grund
efed993fae
Check for availability of std::string<char8_t>
2023-09-12 13:18:28 +02:00
Alexander Grund
238ba9e2e9
Remove support for codecvt<char8_t
...
std libraries don't provide the required support
(e.g. missing VTables or facet IDs)
2023-09-12 10:07:45 +02:00
Alexander Grund
6150435487
Check for std-library support for std::codecvt<char8_t
2023-09-12 10:07:45 +02:00
Alexander Grund
2d48747a74
Add missing switch-cases
2023-09-12 10:07:45 +02:00
Alexander Grund
0faa3c10cc
Add implementations for char8_t where available
...
Allows to e.g. convert `std::u8string`s, translate them and run boundary
analysis.
Formatting isn't possible due to lack of facets
(more specifically: their IDs) in the standard libraries
2023-09-12 10:07:45 +02:00