Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[pull] master from boostorg:master #7

Open
wants to merge 348 commits into
base: master
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
348 commits
Select commit Hold shift + click to select a range
ed9cab7
CI regenerates Boost.Outcome docs
Apr 26, 2023
4d4290c
More fixes for clang-cl.
ned14 Apr 26, 2023
e806cfa
Merging commit ned14/outcome@4d4290ce72a9fe2c7871618bd6abc1eb0305e702:
ned14 Apr 26, 2023
01cab5b
CI regenerates Boost.Outcome docs
Apr 26, 2023
bf73c1f
Yet more fixes for clang-cl
ned14 Apr 26, 2023
86ecc5d
Merging commit ned14/outcome@bf73c1fb4ad009935925b94f3ef8e4bffae1bef3:
ned14 Apr 26, 2023
f206743
CI regenerates Boost.Outcome docs
Apr 26, 2023
f3cbe84
Update changelog with recent changes.
ned14 Apr 27, 2023
af7c4a4
Merging commit ned14/outcome@f3cbe84e366402a65263905c48bed1d44727da5c:
ned14 Apr 27, 2023
22d5491
CI regenerates Boost.Outcome docs
Apr 27, 2023
8131678
Regenerate single include editions to match trunk.
ned14 Apr 27, 2023
ce34876
Merging commit ned14/outcome@8131678356386003aa10b1cde2c0ff274579acdd:
ned14 Apr 27, 2023
212fc2b
CI regenerates Boost.Outcome docs
Apr 27, 2023
1beeb74
Merging commit ned14/outcome@8108b6cbf8397af553ea81872b5e27183e17552a:
ned14 Apr 26, 2023
23fb31a
Merging commit ned14/outcome@5e3a8003e3107d63f49054e01f15911fe123554b:
ned14 Apr 26, 2023
f4883af
Merging commit ned14/outcome@db71c155841806562d9dea6666de0b255924e800:
ned14 Apr 26, 2023
8bf01c8
Merging commit ned14/outcome@59ae1528679acd736eab5b21a46fa82afc364a17:
ned14 Apr 26, 2023
8969548
Merging commit ned14/outcome@41e98a372ec4d0aba57de2c619f3e477bd36226b:
ned14 Apr 26, 2023
cc6120c
Merging commit ned14/outcome@a74e5231958874a03dcccfff56f0ba8b6bfffaae:
ned14 Apr 26, 2023
3f6ce1e
Merging commit ned14/outcome@4d4290ce72a9fe2c7871618bd6abc1eb0305e702:
ned14 Apr 26, 2023
397aaba
Merging commit ned14/outcome@bf73c1fb4ad009935925b94f3ef8e4bffae1bef3:
ned14 Apr 26, 2023
aec32cb
Merging commit ned14/outcome@f3cbe84e366402a65263905c48bed1d44727da5c:
ned14 Apr 27, 2023
b1a821c
Merging commit ned14/outcome@8131678356386003aa10b1cde2c0ff274579acdd:
ned14 Apr 27, 2023
e2e0eb1
CI regenerates Boost.Outcome docs
Apr 27, 2023
50ff8bd
Merge branch 'master' into develop
ned14 Apr 27, 2023
2c83304
Use std::addressof instead of operator&
gix Jun 2, 2023
a05bade
Update status code to latest, and no longer enable concepts by default
ned14 Jun 8, 2023
3aac409
Support big endian architectures in Experimental Outcome.
ned14 Jun 13, 2023
0dde11f
Merging commit ned14/outcome@a05bade04f916fc88607e6be9853be3b772d19bd:
ned14 Jun 8, 2023
67b2891
Merging commit ned14/outcome@3aac409501c9ecc770d175aa7f4597fea9527b80:
ned14 Jun 13, 2023
4a4be4b
CI regenerates Boost.Outcome docs
Jun 13, 2023
b3bc4b9
Merging commit ned14/outcome@a05bade04f916fc88607e6be9853be3b772d19bd:
ned14 Jun 8, 2023
6a179b6
Merging commit ned14/outcome@3aac409501c9ecc770d175aa7f4597fea9527b80:
ned14 Jun 13, 2023
a8f34db
CI regenerates Boost.Outcome docs
Jun 13, 2023
c8853a2
Update status-code.
ned14 Jun 28, 2023
2db6d7e
Merging commit ned14/outcome@c8853a277f18f83ce3614e8774b2a30e46d7dbe7:
ned14 Jun 28, 2023
35ae49a
CI regenerates Boost.Outcome docs
Jun 28, 2023
7bed9ea
Merging commit ned14/outcome@c8853a277f18f83ce3614e8774b2a30e46d7dbe7:
ned14 Jun 28, 2023
dd15ec7
CI regenerates Boost.Outcome docs
Jun 28, 2023
b274e86
Merge branch 'use-addressof' of https://github.com/gix/outcome into d…
ned14 Jun 28, 2023
44da28c
Outcome previously took addresses of things not using `std::addressof…
ned14 Jun 28, 2023
474d09a
Merging commit ned14/outcome@b274e869c28c9541f53cf43090495cf5e722ae09:
ned14 Jun 28, 2023
4cb0fdf
Merging commit ned14/outcome@44da28c59d85f2245230931b6c25725b679b556c:
ned14 Jun 28, 2023
3d81661
CI regenerates Boost.Outcome docs
Jun 28, 2023
597d2be
Merging commit ned14/outcome@b274e869c28c9541f53cf43090495cf5e722ae09:
ned14 Jun 28, 2023
7cae23f
Merging commit ned14/outcome@44da28c59d85f2245230931b6c25725b679b556c:
ned14 Jun 28, 2023
4cdabfb
CI regenerates Boost.Outcome docs
Jun 28, 2023
395f3a2
Fix issue #280 where docs and snippets hadn't been updated to reflect
ned14 Jul 13, 2023
92a6209
Add building of outcome-snippets to CI, which should have been there
ned14 Jul 13, 2023
02c06cf
Merging commit ned14/outcome@395f3a205041ff32c3a4a49f57fbc1f599be8381:
ned14 Jul 13, 2023
b058150
Merging commit ned14/outcome@92a6209d35687a345c7d8ad5e14ce1ae116b3b95:
ned14 Jul 13, 2023
1594018
CI regenerates Boost.Outcome docs
Jul 13, 2023
7fe6e84
Fix last commit
ned14 Jul 13, 2023
1c9322e
Merging commit ned14/outcome@7fe6e8407f0857e18df29507cb284d4689397c21:
ned14 Jul 13, 2023
d4eed8c
CI regenerates Boost.Outcome docs
Jul 13, 2023
cc6088d
Use a preprocessor macro to control the use of std::addressof(),
ned14 Jul 15, 2023
0bedf67
Merge pull request #283 from ned14/wip-fix-addressof
ned14 Jul 15, 2023
8eefcf3
Merging commit ned14/outcome@0bedf671c04467d66219454bd9a61d0bfbb99242:
ned14 Jul 15, 2023
8fac5f0
CI regenerates Boost.Outcome docs
Jul 15, 2023
d45173e
Fix issue #285 by respecting BUILD_TESTING
ned14 Jul 20, 2023
b6bf748
Merging commit ned14/outcome@d45173e172a9884022ec5795e7f9fc9096d4edd2:
ned14 Jul 20, 2023
90561ea
CI regenerates Boost.Outcome docs
Jul 20, 2023
29c6aa0
Fix broken Boost build.
ned14 Jul 20, 2023
bedf16e
Merging commit ned14/outcome@29c6aa09b66bf5d164703aa1c76ae26245fdf29d:
ned14 Jul 20, 2023
0393bfb
CI regenerates Boost.Outcome docs
Jul 20, 2023
11a18c8
Actually fix last commit.
ned14 Jul 20, 2023
555e13d
Merging commit ned14/outcome@11a18c85ca7ae16af34ea309da5a0fe90024e3c3:
ned14 Jul 20, 2023
8236b21
CI regenerates Boost.Outcome docs
Jul 20, 2023
3d75dc1
Merging commit ned14/outcome@395f3a205041ff32c3a4a49f57fbc1f599be8381:
ned14 Jul 13, 2023
c1d3167
Merging commit ned14/outcome@92a6209d35687a345c7d8ad5e14ce1ae116b3b95:
ned14 Jul 13, 2023
7cc9a6c
Merging commit ned14/outcome@7fe6e8407f0857e18df29507cb284d4689397c21:
ned14 Jul 13, 2023
426338e
Merging commit ned14/outcome@0bedf671c04467d66219454bd9a61d0bfbb99242:
ned14 Jul 15, 2023
6c09cd4
Merging commit ned14/outcome@d45173e172a9884022ec5795e7f9fc9096d4edd2:
ned14 Jul 20, 2023
5eeb15c
Merging commit ned14/outcome@29c6aa09b66bf5d164703aa1c76ae26245fdf29d:
ned14 Jul 20, 2023
b29d32e
Merging commit ned14/outcome@11a18c85ca7ae16af34ea309da5a0fe90024e3c3:
ned14 Jul 20, 2023
39500a3
CI regenerates Boost.Outcome docs
Jul 25, 2023
ca797c6
CI regenerates Boost.Outcome docs
Jul 25, 2023
0186207
v2.2.7 release corresponding to the Boost 1.83 release.
ned14 Aug 13, 2023
a71d075
Merging commit ned14/outcome@018620768577911c9b259275a5957525d55ad09a:
ned14 Aug 13, 2023
b155042
CI regenerates Boost.Outcome docs
Aug 13, 2023
7a5f457
Begin to address #288 by adding a github CI for FreeBSD
ned14 Aug 15, 2023
cb70e8f
Try again FreeBSD CI.
ned14 Aug 15, 2023
ea41770
Once again FreeBSD CI
ned14 Aug 15, 2023
35b0635
FreeBSD CI
ned14 Aug 15, 2023
ba8e41a
Hopefully last time FreeBSD CI
ned14 Aug 15, 2023
5c0831b
Add missing git to FreeBSD CI
ned14 Aug 15, 2023
0c5b665
Finally, success with the new FreeBSD CI.
ned14 Aug 15, 2023
6441e40
Address issue #288 where `core-result` test was incorrectly marked
ned14 Aug 15, 2023
1407d02
Also disable precompiled headers for the smoke tests, which hopefully
ned14 Aug 15, 2023
fbe0688
Bump version number macros for Outcome, which I had forgotten to do
ned14 Sep 8, 2023
d8b298c
Regen single header includes.
ned14 Sep 8, 2023
f0e1ede
There was a bug in the Outcome C++ coroutine awaitables whereby we we…
ned14 Sep 29, 2023
b311757
Fix CI
ned14 Sep 29, 2023
1f972ef
Disable the FreeBSD test on CI
ned14 Oct 9, 2023
ee5874f
Merging commit ned14/outcome@7a5f4579ab7b4678f7db986f72d5aee4a0d21bb0:
ned14 Aug 15, 2023
ec2a40d
Merging commit ned14/outcome@cb70e8f47d2c5cd1bfcc7bbb6fd3baeb80d1bcd7:
ned14 Aug 15, 2023
1880ba8
Merging commit ned14/outcome@ea417700e77e59a9f234f13a746f6bd5f7d01495:
ned14 Aug 15, 2023
c09eed7
Merging commit ned14/outcome@35b0635d168294ea98cb023a66e118a8ee450db5:
ned14 Aug 15, 2023
729d62b
Merging commit ned14/outcome@ba8e41a1c40781a174c055b97d8c50d8fff66749:
ned14 Aug 15, 2023
ed65054
Merging commit ned14/outcome@5c0831b18173f18ceabc0bf0cfd57613c3d6b54e:
ned14 Aug 15, 2023
8914c20
Merging commit ned14/outcome@0c5b66518c843fabba9925e8750e80a5724f0918:
ned14 Aug 15, 2023
e77a4b4
Merging commit ned14/outcome@6441e40c737a4957cfcc03d0702bf687304bd2b1:
ned14 Aug 15, 2023
9574c57
Merging commit ned14/outcome@1407d02d60c604e642ae202dbbd721e8c9851fbb:
ned14 Aug 15, 2023
6177eae
Merging commit ned14/outcome@fbe068891c8d585c61feeb90d9db445c71868b4f:
ned14 Sep 8, 2023
bd395ec
Merging commit ned14/outcome@d8b298c04d8d448909f72132bb8cd7a5e68c6d9c:
ned14 Sep 8, 2023
8e9a749
Merging commit ned14/outcome@f0e1edec29c63393559def5eb372365b6fa1a310:
ned14 Sep 29, 2023
4afa53c
Merging commit ned14/outcome@b31175703af62b2c4e3f853040f5b7d99f99beb4:
ned14 Sep 29, 2023
f533ce7
Merging commit ned14/outcome@1f972ef2c8365afd9dfb92f0bbb953fb06b61abe:
ned14 Oct 9, 2023
dad29e2
CI regenerates Boost.Outcome docs
Oct 9, 2023
18fa779
Merging commit ned14/outcome@018620768577911c9b259275a5957525d55ad09a:
ned14 Aug 13, 2023
bd8b96c
Merging commit ned14/outcome@7a5f4579ab7b4678f7db986f72d5aee4a0d21bb0:
ned14 Aug 15, 2023
697189b
Merging commit ned14/outcome@cb70e8f47d2c5cd1bfcc7bbb6fd3baeb80d1bcd7:
ned14 Aug 15, 2023
e223879
Merging commit ned14/outcome@ea417700e77e59a9f234f13a746f6bd5f7d01495:
ned14 Aug 15, 2023
57260cc
Merging commit ned14/outcome@35b0635d168294ea98cb023a66e118a8ee450db5:
ned14 Aug 15, 2023
e7f8e49
Merging commit ned14/outcome@ba8e41a1c40781a174c055b97d8c50d8fff66749:
ned14 Aug 15, 2023
f656e02
Merging commit ned14/outcome@5c0831b18173f18ceabc0bf0cfd57613c3d6b54e:
ned14 Aug 15, 2023
087492e
Merging commit ned14/outcome@0c5b66518c843fabba9925e8750e80a5724f0918:
ned14 Aug 15, 2023
e9086f3
Merging commit ned14/outcome@6441e40c737a4957cfcc03d0702bf687304bd2b1:
ned14 Aug 15, 2023
da613b4
Merging commit ned14/outcome@1407d02d60c604e642ae202dbbd721e8c9851fbb:
ned14 Aug 15, 2023
33421d9
Merging commit ned14/outcome@fbe068891c8d585c61feeb90d9db445c71868b4f:
ned14 Sep 8, 2023
dc63d6a
Merging commit ned14/outcome@d8b298c04d8d448909f72132bb8cd7a5e68c6d9c:
ned14 Sep 8, 2023
5ae27d0
Merging commit ned14/outcome@f0e1edec29c63393559def5eb372365b6fa1a310:
ned14 Sep 29, 2023
ea0beda
Merging commit ned14/outcome@b31175703af62b2c4e3f853040f5b7d99f99beb4:
ned14 Sep 29, 2023
a8db66c
Merging commit ned14/outcome@1f972ef2c8365afd9dfb92f0bbb953fb06b61abe:
ned14 Oct 9, 2023
c90858a
CI regenerates Boost.Outcome docs
Oct 10, 2023
b1dafda
CI regenerates Boost.Outcome docs
Oct 10, 2023
1b88e71
Merge branch 'master' into develop
ned14 Oct 26, 2023
e336197
Fix Boost CI
ned14 Oct 26, 2023
86f38a8
Merging commit ned14/outcome@e33619767469a29c7e65edd69a700998c801ad6a:
ned14 Oct 26, 2023
7bc00b2
CI regenerates Boost.Outcome docs
Oct 26, 2023
f65414a
build: Require at least CMake 3.9
BurningEnlightenment Oct 29, 2023
ec53527
Merge pull request #290 from BurningEnlightenment/dev/require-cmake-3.9
ned14 Oct 31, 2023
9912ac1
Merging commit ned14/outcome@ec53527dc5bca766d8468fec88d8cd657b5194f1:
ned14 Oct 31, 2023
c615695
CI regenerates Boost.Outcome docs
Oct 31, 2023
441e316
Bump ready for Boost 1.84 merge window close.
ned14 Oct 31, 2023
056f355
Merging commit ned14/outcome@441e3164801151ae7671ea331a04b4a712f505e9:
ned14 Oct 31, 2023
73eb874
CI regenerates Boost.Outcome docs
Oct 31, 2023
a969d9e
Merging commit ned14/outcome@e33619767469a29c7e65edd69a700998c801ad6a:
ned14 Oct 26, 2023
8dc1dd3
Merging commit ned14/outcome@ec53527dc5bca766d8468fec88d8cd657b5194f1:
ned14 Oct 31, 2023
6635bed
Merging commit ned14/outcome@441e3164801151ae7671ea331a04b4a712f505e9:
ned14 Oct 31, 2023
9563bb3
CI regenerates Boost.Outcome docs
Oct 31, 2023
12b93f8
CI regenerates Boost.Outcome docs
Oct 31, 2023
f7892ac
A Result or Outcome with `void` value type and move-only non-value ty…
ned14 Nov 17, 2023
ef1b519
Merging commit ned14/outcome@f7892ac2e8ef0a236f324a9111e75824ae55690a:
ned14 Nov 17, 2023
055e0c5
CI regenerates Boost.Outcome docs
Nov 17, 2023
9072e73
Merging commit ned14/outcome@f7892ac2e8ef0a236f324a9111e75824ae55690a:
ned14 Nov 17, 2023
ef6a992
CI regenerates Boost.Outcome docs
Nov 20, 2023
645500f
v2.2.8 release matching Boost 1.84.
ned14 Dec 16, 2023
a7209a0
Merging commit ned14/outcome@645500fe31c7ffc14299af9651b2ae1c9d6741c9:
ned14 Dec 16, 2023
3d05df5
CI regenerates Boost.Outcome docs
Dec 16, 2023
d4d1966
Fixes #293
ned14 Dec 16, 2023
84577bf
Merging commit ned14/outcome@d4d196619d5708834dd880fd62637b657e9a30ad:
ned14 Dec 16, 2023
0ed1a6b
CI regenerates Boost.Outcome docs
Dec 16, 2023
893c2d0
upd
ned14 Dec 16, 2023
d43293c
Merging commit ned14/outcome@893c2d0fb8f00b7afe8daf4a6f2782f3d11fc1ae:
ned14 Dec 16, 2023
105b60c
CI regenerates Boost.Outcome docs
Dec 16, 2023
7289e16
Add missing `BOOST_OUTCOME_ASSERT` macro, clearly I was not thinking
ned14 Dec 18, 2023
92ea092
Merging commit ned14/outcome@7289e160ee4a27fea50275e7b80cdf8e754110a3:
ned14 Dec 18, 2023
4940593
CI regenerates Boost.Outcome docs
Dec 18, 2023
0f6df25
Try using `BOOST_ASSERT` instead of `assert` in Boost.Outcome, see
ned14 Dec 18, 2023
ca5381b
Merging commit ned14/outcome@0f6df25eb0f1f383ef3061bdf72007fd5014f759:
ned14 Dec 18, 2023
d87e868
CI regenerates Boost.Outcome docs
Dec 18, 2023
4e228c4
In Boost.Outcome fix bad status-code header path translation.
ned14 Dec 18, 2023
3c8ed3b
Merging commit ned14/outcome@4e228c42890148ea8f6f5a08ba7c6e4e9fc15468:
ned14 Dec 18, 2023
9778b79
CI regenerates Boost.Outcome docs
Dec 18, 2023
b5017f5
Merging commit ned14/outcome@645500fe31c7ffc14299af9651b2ae1c9d6741c9:
ned14 Dec 16, 2023
1551c02
Merging commit ned14/outcome@d4d196619d5708834dd880fd62637b657e9a30ad:
ned14 Dec 16, 2023
a209bd1
Merging commit ned14/outcome@893c2d0fb8f00b7afe8daf4a6f2782f3d11fc1ae:
ned14 Dec 16, 2023
5e36de9
Merging commit ned14/outcome@7289e160ee4a27fea50275e7b80cdf8e754110a3:
ned14 Dec 18, 2023
4e6b055
Merging commit ned14/outcome@0f6df25eb0f1f383ef3061bdf72007fd5014f759:
ned14 Dec 18, 2023
98b1905
Merging commit ned14/outcome@4e228c42890148ea8f6f5a08ba7c6e4e9fc15468:
ned14 Dec 18, 2023
fa4e0d7
CI regenerates Boost.Outcome docs
Dec 18, 2023
52a6d99
CI regenerates Boost.Outcome docs
Dec 18, 2023
571f9c9
upd
ned14 Mar 13, 2024
03cadce
Merging commit ned14/outcome@571f9c930e672950e99d5d30f743603aaaf8014c:
ned14 Mar 13, 2024
2f43f0b
CI regenerates Boost.Outcome docs
Mar 13, 2024
c702009
Merging commit ned14/outcome@571f9c930e672950e99d5d30f743603aaaf8014c:
ned14 Mar 13, 2024
b8343ce
CI regenerates Boost.Outcome docs
Mar 14, 2024
1e3270d
Merge branch 'master' into develop
ned14 Mar 14, 2024
c79bd04
- Something I've been meaning to do for far too long now is make the …
ned14 Jun 14, 2024
9d86631
CI fixes
ned14 Jun 14, 2024
f5a45b6
Hopefully fix issue #300 caused by MSVC changing what diagnostic
ned14 Jun 14, 2024
5bcd0f3
Fix issue #299 GCC 14 warns on use of `_`.
ned14 Jun 21, 2024
2424b29
Merging commit ned14/outcome@c79bd04d216b1c918dcebba66cf4de5fd67b1cb8:
ned14 Jun 14, 2024
d032b8a
Merging commit ned14/outcome@9d86631b47fcd1c1aad84511793d8ef1d729a693:
ned14 Jun 14, 2024
32b723d
Merging commit ned14/outcome@f5a45b6909e732174fe98e59548914bcaa67d847:
ned14 Jun 14, 2024
6cd3573
Merging commit ned14/outcome@5bcd0f32f28659a0eab62f1d643d878c2220788d:
ned14 Jun 21, 2024
7af6937
CI regenerates Boost.Outcome docs
Jun 21, 2024
10eb45c
- Outcome.Experimental has had C representation support since the beg…
ned14 Jul 16, 2024
6279aff
Add missing docs for previous commit.
ned14 Jul 17, 2024
271fc9c
Fixes to previous commits as found the code didn't link under optimis…
ned14 Jul 17, 2024
16cbe67
Port https://github.com/boostorg/outcome/pull/7 to standalone Outcome.
ned14 Jul 26, 2024
a4f6b1b
Further changes from https://github.com/boostorg/outcome/pull/7
ned14 Jul 30, 2024
6a0421b
Suppress warning on clang about overly long string literals in
ned14 Jul 30, 2024
6092bf7
Merging commit ned14/outcome@6a0421b1bb866ef8ad489b46afc704215e4c2f94:
ned14 Jul 30, 2024
e3cad20
CI regenerates Boost.Outcome docs
Jul 30, 2024
691cd9b
Fix issue #301 where embedded GDB pretty printer was missing an escape.
ned14 Aug 8, 2024
8d7af14
Fix typo last commit.
ned14 Aug 8, 2024
dd2b611
Merge branch 'master' into develop
ned14 Aug 8, 2024
4dfc7e5
More improvements to GDB pretty printer script
ned14 Aug 12, 2024
04555d3
Try again inline GDB pretty printer.
ned14 Aug 12, 2024
35ae3cb
More improvements to GDB pretty printer script
ned14 Aug 12, 2024
60147ab
Try again inline GDB pretty printer.
ned14 Aug 12, 2024
0729625
Merge branch 'master' into develop
ned14 Aug 14, 2024
6cf2d43
Bug fix: The `status` enumeration used to track state internally did
ned14 Aug 14, 2024
5151d24
Merge branch 'master' into develop
ned14 Aug 14, 2024
5b881f6
Merging commit ned14/outcome@691cd9bc7f9dcf1fa17333f189751ddbdd942843:
ned14 Aug 8, 2024
709ca9d
Merging commit ned14/outcome@8d7af14cf2c40d52595f23b7e9d49b3c4dd9add5:
ned14 Aug 8, 2024
27f67fe
Merging commit ned14/outcome@35ae3cb35b22178bb185a45b694704d94c1ed71b:
ned14 Aug 12, 2024
f8ccae7
Merging commit ned14/outcome@60147ab3146f0418b10a6a4671ea0802cb514432:
ned14 Aug 12, 2024
1eeb48d
Merging commit ned14/outcome@6cf2d4345aeb57cdae00778aa80bc03609f1ae7e:
ned14 Aug 14, 2024
33f17f6
CI regenerates Boost.Outcome docs
Aug 14, 2024
36beb5b
Bump CI actions to latest.
ned14 Sep 4, 2024
bf104dd
More CI actions version updates
ned14 Sep 4, 2024
952fbb2
Fix up bad docs for one of the CI actions.
ned14 Sep 4, 2024
2a8ff2b
Disable windows installability test on CI.
ned14 Sep 4, 2024
a708d8b
Merging commit ned14/outcome@10eb45ca7d11a35df14e0fa89939a3e3185c0aa9:
ned14 Jul 16, 2024
6c4ddb4
Merging commit ned14/outcome@6279affbf2fee17dbe2a564165b8815409565b10:
ned14 Jul 17, 2024
d140aa9
Merging commit ned14/outcome@271fc9cf0693edb87d52fb496deb2baf54d4ebaa:
ned14 Jul 17, 2024
0569e0c
Merging commit ned14/outcome@16cbe6776d534d218f2275ee0461acb6d4b3f7ac:
ned14 Jul 26, 2024
b0fde41
Merging commit ned14/outcome@a4f6b1b1899632bcdafdd1f078ca49969428e9f6:
ned14 Jul 30, 2024
dc2864a
Merging commit ned14/outcome@dd2b611077edbc6a7466ba309939fa1a5b6f2f06:
ned14 Aug 8, 2024
7511a29
Merging commit ned14/outcome@4dfc7e5e394f84866cc6c1a49b6cd6b371038cab:
ned14 Aug 12, 2024
6a1b248
Merging commit ned14/outcome@04555d31e771447c4b79fad3d52d2c6b64c44b40:
ned14 Aug 12, 2024
6adec69
Merging commit ned14/outcome@0729625d93cb714048d8a441811dafd5ba864f9d:
ned14 Aug 14, 2024
09cf989
Merging commit ned14/outcome@5151d2428c8e47b863ea2ae6cc143e1e1d41bc4e:
ned14 Aug 14, 2024
4f43714
Merging commit ned14/outcome@36beb5b34b24cf25d93ac421370ef5578f2f65ed:
ned14 Sep 4, 2024
dd5cd16
Merging commit ned14/outcome@bf104dd4dcb68a6c795b1fbb0efaf9938709b534:
ned14 Sep 4, 2024
f84cb61
Merging commit ned14/outcome@952fbb268d3f7ca0ab1c05504e5ab2c278c1f25f:
ned14 Sep 4, 2024
46d20da
Merging commit ned14/outcome@2a8ff2b0ca37e4627b0d9919b653fee7d4cc6968:
ned14 Sep 4, 2024
19a4baf
CI regenerates Boost.Outcome docs
Sep 4, 2024
591853f
Add C Result link test based on Ken's description of link failure.
ned14 Oct 8, 2024
21ffac4
Merge pull request #306 from ned14/experimental-c-result-link-tests
ned14 Oct 8, 2024
0a91b4e
For the C make successful result, special case the implementation
ned14 Oct 17, 2024
9f8fce0
Merging commit ned14/outcome@21ffac49b2f5edc6c0c7e9abaf5e75936498ed47:
ned14 Oct 8, 2024
bf938c2
Merging commit ned14/outcome@0a91b4ef5c0ee391172998586761f306ce82ae52:
ned14 Oct 17, 2024
4e0def6
CI regenerates Boost.Outcome docs
Oct 17, 2024
ebcd267
Fix breakage of Android build.
ned14 Nov 6, 2024
954a054
Fix C link test incorrectly failing on MSVC
ned14 Nov 10, 2024
83e5127
Apply https://github.com/ned14/outcome/pull/308 to fix the GDB
ned14 Nov 19, 2024
72ff7b1
Fix annoying warnings on MSVC latest.
ned14 Nov 21, 2024
99f0a61
Update changelog with v2.2.11 release date
ned14 Dec 12, 2024
d745167
Looks like the github action create-release finally died. Replaced.
ned14 Dec 12, 2024
984f895
Merging commit ned14/outcome@ebcd26750db46336e460d5e5de9448474a25854e:
ned14 Nov 6, 2024
bbfcd8b
Merging commit ned14/outcome@954a054e50f2f121703a65aa6173a5d4f9748375:
ned14 Nov 10, 2024
eae4849
Merging commit ned14/outcome@83e5127dd20b15e3f59059e5862e9926283fee80:
ned14 Nov 19, 2024
aea41fd
Merging commit ned14/outcome@72ff7b1b25c678764e5348051a7fb01087923838:
ned14 Nov 21, 2024
971bbde
Merging commit ned14/outcome@99f0a61b29e64cc5e24ce49ee0b10d54661ec9b3:
ned14 Dec 12, 2024
6c65070
Merging commit ned14/outcome@d7451675c0baca0b63747fc12d3e1912e97c6e9f:
ned14 Dec 12, 2024
a3686af
CI regenerates Boost.Outcome docs
Dec 13, 2024
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
121 changes: 121 additions & 0 deletions .github/actions/boost_clone/action.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,121 @@
name: 'Boost Clone'
description: 'This workflow clones the boost source directory, attempting to get it from the cache first'
inputs:
boost_dir:
description: 'The boost directory. The default value assumes boost is in-source.'
required: false
default: 'boost'
branch:
description: 'Branch of the super-project'
required: false
default: 'master'
patches:
description: 'Libraries used to patch the boost installation'
required: true
default: ''
modules:
description: 'The boost submodules we need to clone'
required: false
default: ''

runs:
using: "composite"
steps:
- name: Environment
id: ctx
shell: bash
run: |
boost_hash=$(git ls-remote https://github.com/boostorg/boost.git ${{ inputs.branch }} | awk '{ print $1 }')
echo "boost_hash=$boost_hash" >> $GITHUB_OUTPUT

# Create cache hash
cache_hash=${{ runner.os }}-boost-$boost_hash
# Add modules names to hash
modules=${{ inputs.modules }}
for module in ${modules//,/ }
do
module_filename=${module##*/}
cache_hash=$cache_hash-$module_filename
done
# Add patch names and hashes to hash
patches=${{ inputs.patches }}
for patch in ${patches//,/ }
do
patch_hash=$(git ls-remote $patch ${{ inputs.branch }} | awk '{ print $1 }')
cache_hash=$cache_hash-$patch-$patch_hash
done
echo "cache_hash=$cache_hash" >> $GITHUB_OUTPUT

# attempt to get boost from the cache before cloning it
- name: boost cache
id: cache-boost
uses: actions/cache@v3
with:
path: boost
key: ${{ steps.ctx.outputs.cache_hash }}

# clone (if boost not found in cache)
- name: boost clone
if: steps.cache-boost.outputs.cache-hit != 'true'
shell: bash
run: |
git clone https://github.com/boostorg/boost.git -b ${{ inputs.branch }} ${{ inputs.boost_dir }}

# apply patches (if boost not found in cache)
- name: boost patches
if: steps.cache-boost.outputs.cache-hit != 'true' && inputs.patches != ''
shell: bash
working-directory: ${{ inputs.boost_dir }}/libs
run: |
# Apply boost patches ${{ inputs.patches }}
patches=${{ inputs.patches }}
for patch in ${patches//,/ }
do
git clone $patch -b ${{ inputs.branch }}
done

# Init all submodules (if boost not found in cache + no specific modules specified)
- name: boost init submodules
if: (steps.cache-boost.outputs.cache-hit != 'true' && inputs.modules == '')
working-directory: ${{ inputs.boost_dir }}
shell: bash
run: |
# Init all boost submodules
git submodule update --init --recursive

# Init specified submodules (if boost not found in cache + modules specified)
- name: boost patches
if: (steps.cache-boost.outputs.cache-hit != 'true' && inputs.modules != '')
working-directory: ${{ inputs.boost_dir }}
shell: bash
run: |
# Init required boost submodules
echo "Look for python"
if command -v python &> /dev/null; then
python_executable="python"
elif command -v python3 &> /dev/null; then
python_executable="python3"
elif command -v python2 &> /dev/null; then
python_executable="python2"
else
echo "Please install Python!" >&2
false
fi
echo "python_executable=$python_executable"

echo "Init boostdep"
git submodule update -q --init tools/boostdep

echo "Run boostdep for required modules: ${{ inputs.modules }}"
modules=${{ inputs.modules }}
for module in ${modules//,/ }
do
echo "Init submodule $module"
git submodule update -q --init libs/$module || true
done
for module in ${modules//,/ }
do
echo "Run boostdep for required module $module"
$python_executable tools/boostdep/depinst/depinst.py --include benchmark --include example --include examples --include tools --include source $module
done

131 changes: 131 additions & 0 deletions .github/actions/cmake_run/action.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,131 @@
name: 'Install dependencies'
description: 'This workflow installs dependencies from multiple package managers'
inputs:
cmake_exec:
description: 'The cmake executable'
required: false
default: 'cmake'
cc:
description: 'Path to C compiler.'
required: false
default: ''
cxx:
description: 'Path to C++ compiler.'
required: false
default: ''
cxxstd:
description: 'List of standards with which cmake will build and test the program.'
required: false
default: ''
source_dir:
description: 'Path to the source directory.'
required: false
default: ''
toolchain:
description: 'Path to toolchain.'
required: false
default: ''
build-type:
description: 'Build type.'
required: false
default: 'Release'
build-target:
description: 'Targets to build instead of the default target'
required: false
default: ''
install-prefix:
description: 'Path where the library should be installed.'
required: false
default: '.local/usr'
run-tests:
description: 'Whether we should run tests.'
required: false
default: 'true'
extra-args:
description: 'Extra arguments to cmake configure command.'
required: false
default: ''

runs:
using: "composite"
steps:
- name: Get CPU cores
uses: SimenB/github-actions-cpu-cores@v1
id: cpu-cores

- name: Setup msvc dev-cmd
if: runner.os == 'Windows'
uses: ilammy/msvc-dev-cmd@v1

- name: CMake Build C++${{ inputs.cxxstd }}
shell: bash
working-directory: ${{ inputs.source_dir }}
run: |
set -xe

# cmake args
cc=${{ matrix.cc }}
if [ "$cc" != "" ]; then
if command -v $cc &> /dev/null; then
cc="$(which $cc)"
elif command -v /usr/bin/$cc &> /dev/null; then
cc="/usr/bin/$cc"
fi
cmake_cc_path_args="-D CMAKE_C_COMPILER=$cc"
else
cmake_cc_path_args=
fi

cxx=${{ matrix.cxx }}
if [ "$cxx" != "" ]; then
if command -v $cxx &> /dev/null; then
cxx="$(which $cxx)"
elif command -v /usr/bin/$cxx &> /dev/null; then
cxx="/usr/bin/$cxx"
fi
cmake_cxx_path_args="-D CMAKE_CXX_COMPILER=$cxx"
else
cmake_cxx_path_args=
fi

cxxstds=${{ inputs.cxxstd }}
if [ "$cxxstds" == "" ]; then
cxxstds=defaultcxx
fi

cmake_toolchain=${{ inputs.toolchain }}
if [ "$cmake_toolchain" != "" ]; then
cmake_toolchain_arg="-D CMAKE_TOOLCHAIN_FILE=$cmake_toolchain"
else
cmake_toolchain_arg=
fi

run_tests=${{ inputs.run-tests }}
if [ "$run_tests" == "true" ]; then
cmake_enable_test_args="-D BUILD_TESTING=ON"
fi

build_target=${{ inputs.build-target }}
if [ "$build_target" != "true" ]; then
target_args="--target $build_target"
fi

# iterate stds
for cxxstd in ${cxxstds//,/ }
do
echo "==================================> CMAKE: C++$cxxstd"
if [ "$cxxstd" == "defaultcxx" ]; then
cmake_cxxstd_arg=""
build_dir="build"
else
cmake_cxxstd_arg="-D CMAKE_CXX_STANDARD=$cxxstd"
build_dir="build-$cxxstd"
fi
cmake -S . -B $build_dir -D CMAKE_BUILD_TYPE=${{ inputs.build-type }} $cmake_toolchain_arg $cmake_cxxstd_arg ${{ inputs.extra-args }} -D CMAKE_INSTALL_PREFIX=${{ inputs.install-prefix }} $cmake_cc_path_args $cmake_cxx_path_args $cmake_enable_test_args
cmake --build $build_dir --config ${{ inputs.build-type }} -j ${{ steps.cpu-cores.outputs.count }} $target_args
cmake --install $build_dir --config ${{ inputs.build-type }} --prefix prefix
if [ "$run_tests" == "true" ]; then
ctest --test-dir "$build_dir" -j ${{ steps.cpu-cores.outputs.count }} -C ${{ inputs.build-type }} --no-tests=error --progress --output-on-failure
fi
done

65 changes: 65 additions & 0 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,65 @@
name: Continuous Integration

on:
push:
branches:
- '*'
- '*/*'

pull_request:
branches:
- develop

jobs:
build:
name: ${{ matrix.name }}

strategy:
fail-fast: false
matrix:
include:
- { name: "MSVC 14.3 - C++17-20", os: windows-2022, cxxstd: '17,20', cmake_args: -G "Visual Studio 17 2022" -A x64, }
- { name: "clang-cl 14.3 - C++14,20", os: windows-2022, cxxstd: '14,20', cmake_args: -G "Visual Studio 17 2022" -T ClangCL -A x64, }
- { name: "MSVC 14.2 - C++14-17", os: windows-2019, cxxstd: '14,17', cmake_args: -G "Visual Studio 16 2019" -A x64, }

- { name: "GCC 12 - C++17-20", os: ubuntu-22.04, cc: gcc-12, cxx: g++-12, cxxstd: '17,20', install: g++-12, }
- { name: "GCC 11 - C++14,20", os: ubuntu-22.04, cc: gcc-11, cxx: g++-11, cxxstd: '14,20', install: g++-11, }
# The GCC 10 this runner has is broken
# - { name: "GCC 10 - C++17-20", os: ubuntu-22.04, cc: gcc-10, cxx: g++-10, cxxstd: '17,20', }
- { name: "GCC 9 - C++17-20", os: ubuntu-22.04, cc: gcc-9, cxx: g++-9, cxxstd: '17,20', install: g++-9, }
- { name: "GCC 8 - C++14-17", os: ubuntu-20.04, cc: gcc-8, cxx: g++-8, cxxstd: '14,17', install: g++-8, }
- { name: "GCC 7 - C++14", os: ubuntu-20.04, cc: gcc-7, cxx: g++-7, cxxstd: 14, install: g++-7, }

- { name: "Clang 14 - C++17-20", os: ubuntu-22.04, cc: clang-14, cxx: clang++-14, cxxstd: '17,20', install: clang-14, }
- { name: "Clang 13 - C++14,20", os: ubuntu-22.04, cc: clang-13, cxx: clang++-13, cxxstd: '14,20', install: clang-13, }
- { name: "Clang 12 - C++17-20", os: ubuntu-22.04, cc: clang-12, cxx: clang++-12, cxxstd: '17,20', install: clang-12, }
- { name: "Clang 11 - C++14-17", os: ubuntu-20.04, cc: clang-11, cxx: clang++-11, cxxstd: '14,17', install: clang-11, }

- { name: "AppleClang 13", os: macos-12, cxxstd: 17 }

runs-on: ${{ matrix.os }}

steps:
- name: Outcome checkout
uses: actions/checkout@v4

- name: Install packages
if: startsWith(matrix.os, 'ubuntu') && matrix.install
run: sudo apt-get install -y ${{ matrix.install }}

- name: Boost checkout
uses: ./.github/actions/boost_clone
with:
boost_dir: boost
branch: ${{ (github.ref_name == 'master' && 'master') || 'develop' }}
modules: config,exception,system,throw_exception,test

- name: CMake Run (C++${{ matrix.cxxstd }})
uses: ./.github/actions/cmake_run
with:
cxxstd: ${{ matrix.cxxstd }}
cxx: ${{ matrix.cxx }}
cc: ${{ matrix.cc }}
extra-args: ${{ format('-D BOOST_SRC_DIR=boost {0}', matrix.cmake_args) }}
build-target: tests

35 changes: 33 additions & 2 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,34 @@ cmake_minimum_required(VERSION 3.5...3.16)

project(boost_outcome VERSION "${BOOST_SUPERPROJECT_VERSION}" LANGUAGES CXX)

if (${PROJECT_SOURCE_DIR} STREQUAL ${CMAKE_SOURCE_DIR})
# Project is root. Find Boost source.
set(BOOST_SRC_DIR "${CMAKE_CURRENT_SOURCE_DIR}/../.." CACHE STRING "Boost source dir to use when running CMake from this directory")
if (NOT IS_ABSOLUTE ${BOOST_SRC_DIR})
set(BOOST_SRC_DIR "${CMAKE_CURRENT_SOURCE_DIR}/${BOOST_SRC_DIR}")
endif()
set(BOOST_SRC_DIR_IS_VALID ON)
foreach (F "CMakeLists.txt" "Jamroot" "boost-build.jam" "bootstrap.sh" "libs")
if (NOT EXISTS "${BOOST_SRC_DIR}/${F}")
message(STATUS "${BOOST_SRC_DIR}/${F} does not exist. Fallback to find_package.")
set(BOOST_SRC_DIR_IS_VALID OFF)
break()
endif()
endforeach()
# Create Boost targets from source dir or boost package.
set(BOOST_INCLUDE_LIBRARIES config exception system throw_exception test)
if (BOOST_SRC_DIR_IS_VALID)
set(BOOST_EXCLUDE_LIBRARIES ${PROJECT_NAME})
add_subdirectory(${BOOST_SRC_DIR} deps_/boost EXCLUDE_FROM_ALL)
set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} "${BOOST_SRC_DIR}/tools/cmake/include")
else()
find_package(Boost 1.81.0 REQUIRED)
foreach (BOOST_INCLUDE_LIBRARY ${BOOST_INCLUDE_LIBRARIES})
add_library(Boost::${BOOST_INCLUDE_LIBRARY} ALIAS Boost::headers)
endforeach ()
endif()
endif()

add_library(boost_outcome INTERFACE)
add_library(Boost::outcome ALIAS boost_outcome)

Expand All @@ -25,8 +53,11 @@ target_compile_features(boost_outcome
cxx_std_14
)

if(BUILD_TESTING AND EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/test/CMakeLists.txt")
if (CMAKE_CXX_COMPILER_ID STREQUAL "GNU" AND CMAKE_CXX_COMPILER_VERSION VERSION_GREATER_EQUAL 10 AND CMAKE_CXX_COMPILER_VERSION VERSION_LESS 11)
target_compile_options(boost_outcome INTERFACE -ftemplate-depth=5000)
endif ()

if(BUILD_TESTING AND EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/test/CMakeLists.txt")
enable_testing()
add_subdirectory(test)

endif()
26 changes: 26 additions & 0 deletions build.jam
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
# Copyright René Ferdinand Rivera Morell 2023-2024
# Distributed under the Boost Software License, Version 1.0.
# (See accompanying file LICENSE_1_0.txt or copy at
# http://www.boost.org/LICENSE_1_0.txt)

require-b2 5.2 ;

constant boost_dependencies :
/boost/assert//boost_assert
/boost/config//boost_config
/boost/exception//boost_exception
/boost/system//boost_system
/boost/throw_exception//boost_throw_exception ;

project /boost/outcome
: common-requirements
<include>include
;

explicit
[ alias boost_outcome : : : : <library>$(boost_dependencies) ]
[ alias all : boost_outcome test ]
;

call-if : boost-library outcome
;
Loading