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] develop from boostorg:develop #19

Open
wants to merge 120 commits into
base: develop
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
120 commits
Select commit Hold shift + click to select a range
7ea5958
Removed BOOST_LEAF_NORETURN for [[noreturn]]
zajo Jun 26, 2022
ff4f5da
throw leaf::exception(....) becomes leaf::throw_exception(....)
zajo Jun 27, 2022
a5494d0
Documentation update
zajo Jun 27, 2022
e16e0cf
Explicit tests for the BOOST_LEAF_CFG_CAPTURE=0 configurations
zajo Jun 29, 2022
fc170d2
Add local conanfile.py
kammce Aug 31, 2022
c697236
Merge pull request #48 from kammce/local-conanfile
zajo Sep 2, 2022
b2090ac
Fixed warnings
zajo Sep 6, 2022
538340d
Set conan veresion to 1.81.0-prerelease
kammce Sep 8, 2022
9d3ffa0
Merge pull request #49 from kammce/prerelease
zajo Sep 9, 2022
2163938
Documentation update
zajo Oct 16, 2022
5dcf605
[conan] Fix imports and license path
kammce Sep 10, 2022
50fe0ed
Merge pull request #51 from kammce/local-conanfile
zajo Dec 2, 2022
2e72c5c
GHA & Drone updates
zajo Mar 3, 2023
e02fc6b
Better includes for try_catch_test.cpp
zajo Apr 5, 2023
801e5e8
Fix for Issue 53
zajo Apr 5, 2023
333af15
Issue 56
zajo Aug 20, 2023
422a534
Added optional::put overload that uses T's default ctor
zajo Aug 27, 2023
c3f61f1
Fixed bugs in accumulate unit tests, error info object was not initia…
zajo Aug 27, 2023
8b5cd79
One more accumulate test bug fixed
zajo Aug 27, 2023
81b1141
Renamed meson bulid directory from bld to _bld
zajo Aug 27, 2023
f56c3ec
Much streamlined handling of diagnostics
zajo Aug 27, 2023
0b497c0
Upgrade MacOS drone tests
sdarwin Aug 28, 2023
bcdf82f
GHA update
zajo Aug 29, 2023
98288f5
Improved noexcept in load_slot
zajo Aug 29, 2023
b7ed627
Merge pull request #57 from boostorg/feature/issue56
zajo Aug 29, 2023
351a563
Copyright message update
zajo Sep 15, 2023
48319b4
Deleted test for GCC 4.8
zajo Sep 15, 2023
87c6ba4
Changed b2 invocation order for .vscode integration b2
zajo Sep 15, 2023
9e39b70
Improved configuration validation
zajo Sep 15, 2023
87efaf7
Improved diagnostics
zajo Sep 15, 2023
a84943f
Removing references to deleted doc png files
zajo Sep 15, 2023
3cf130e
Merge pull request #58 from sdarwin/drone2
zajo Sep 16, 2023
863bfdd
Disabled GCC 4.9 in Drone unit tests
zajo Sep 16, 2023
3199f47
Merge pull request #59 from boostorg/feature/drone_disable_gcc_49
zajo Sep 17, 2023
49a1fb3
Issue 60
zajo Sep 22, 2023
f2ec744
Merge pull request #61 from boostorg/feature/issue60
zajo Sep 22, 2023
51f6f65
Visual studio 2015 build error fixing
godmaycrying Oct 27, 2023
5b5673c
Update error.hpp
godmaycrying Oct 28, 2023
e3571f4
Merge pull request #64 from godmaycrying/develop
zajo Oct 28, 2023
c353af7
GHA compat
zajo Oct 28, 2023
867e2c9
removed redundant logic in error_id::value()
zajo Oct 28, 2023
4b37ca6
Merge pull request #65 from boostorg/feature/removed_redundant_value_…
zajo Oct 29, 2023
c497786
Public result<T>::value_type
zajo Nov 5, 2023
30a6e2a
Documentation update for result<T>::value_type
zajo Nov 6, 2023
d8aae79
Merge pull request #66 from boostorg/feature/result_value_type
zajo Nov 6, 2023
971ecac
dynamic_capture -> result<T>, a new way to hold and transport errors …
zajo Dec 25, 2023
971141d
New dynamic capture system: try_capture_all. Previous API based on ma…
zajo Jan 7, 2024
b4093c5
Renamed try_capture_all example/test files
zajo Jan 7, 2024
febc510
Documentation white space tweak
zajo Jan 7, 2024
668049c
Bug fix: adding missing inline on lead_detail::unload_result
zajo Jan 8, 2024
031dfa0
Issue 69
zajo Jan 9, 2024
c33f7ac
fixed a bug in .vscode/tasks.json
zajo Jan 15, 2024
bfabf9d
Removed redundant open/close of leaf namespace
zajo Jan 15, 2024
66deb97
Formatting
zajo Jan 17, 2024
52bbec0
Minor changes in result member functions sfinae use
zajo Jan 17, 2024
17b43e5
Documentation update
zajo Jan 20, 2024
ed8f9cd
Issue 70
zajo Jan 28, 2024
a2958ec
Add the [[nodiscard]] attribute to the result class
indiosmo May 9, 2024
32620fe
Revert "Add the [[nodiscard]] attribute to the result class"
indiosmo May 10, 2024
863eb21
require c++17 for both clang and gcc
indiosmo May 10, 2024
b8102ac
require c++17 regardless of compiler
indiosmo May 10, 2024
5ed2782
Update GHA
zajo Jun 30, 2024
d755b4c
Fix a bug in dynamic_allocator
zajo Jun 30, 2024
70ffa08
Upgraded gh-pages deployment script
zajo Jul 1, 2024
de20243
Upgrading gh-pages deployment script
zajo Jul 1, 2024
e5cf085
Attempt at fixing gh-pages deployment
zajo Jul 3, 2024
be26dfb
Merge branch 'boostorg:develop' into develop
indiosmo Jul 25, 2024
a7690d0
remove BOOST_LEAF_SYMBOL_VISIBLE for testing
indiosmo Jul 25, 2024
5583af8
Change syntax of attribute to avoid conflicts
indiosmo Jul 25, 2024
dcdc9bd
Updated gha
zajo Jul 26, 2024
ad38d5f
Merge branch 'develop'
zajo Jul 26, 2024
4565377
GHA update
zajo Jul 26, 2024
fd6ae82
GHA update
zajo Jul 27, 2024
9debb6f
Merge branch 'boostorg:develop' into develop
indiosmo Jul 27, 2024
ca88243
GHA
zajo Jul 28, 2024
e8ed8fe
Merge branch 'develop'
zajo Jul 28, 2024
1f74580
Merge pull request #72 from indiosmo/develop
zajo Jul 29, 2024
64bb944
Merge branch 'develop'
zajo Jul 30, 2024
05b94df
Added meson config for testing embedded builds
zajo Aug 4, 2024
cb3a943
Updated documentation to link talk on using exception hondling on emb…
zajo Aug 5, 2024
cf0dcfc
Merge branch 'develop'
zajo Aug 5, 2024
0e7f5a0
Fix for Issue 75 + unit test
zajo Aug 19, 2024
7d17e6f
Merge branch 'develop'
zajo Aug 19, 2024
3ed0334
Added _CRT_SECURE_NO_WARNINGS for Windows builds
zajo Aug 21, 2024
9bdf06b
Added vscode debug config for Window sdevelopment
zajo Aug 21, 2024
f9230c4
Fixed compatibility isue in asio_beast_leaf_rpc example
zajo Aug 21, 2024
9efc872
Removed constexpr from exception constructors, to support base types …
zajo Aug 21, 2024
144cd1d
Workaround in result<> to avoid msvc warnings
zajo Aug 21, 2024
b026a00
Improved demangling for prettier verbose_diagnostic_info printing
zajo Aug 21, 2024
9c139e0
C++11 constexpr type name parsing for diagnostics
zajo Aug 22, 2024
abaf59d
Merge branch 'develop'
zajo Aug 23, 2024
11dfa37
Streamlined demangling support
zajo Aug 23, 2024
c5db573
Correctly handling demangle failures
zajo Aug 25, 2024
16ed993
Renamed verbose_diagnostic_info -> diagnostic_details
zajo Aug 25, 2024
907bd6c
diagnostics.hpp
zajo Aug 26, 2024
acf0ae1
Improved diagnostics
zajo Sep 3, 2024
fa378e6
Documentation update
zajo Sep 3, 2024
a4207bb
Missing includes
zajo Sep 3, 2024
c9d494a
Exception wrapper optimization
zajo Sep 3, 2024
3422b31
Deleted context_ptr (was deprecated)
zajo Sep 4, 2024
16f1341
Refinement in how clear_current_error is handled
zajo Sep 4, 2024
2c12197
diagnostic_info and diagnostic_details storing e_source_location in c…
zajo Sep 6, 2024
7358896
More robust compile-time parsing of error type names, static_assert o…
zajo Sep 9, 2024
cc09447
Check if an error object's value member is a null pointer before prin…
zajo Sep 9, 2024
3bbe113
Correct name for include guard
zajo Sep 9, 2024
c0bf401
Renamed optional::has_value() to has_value_any_key() to avoid confusion
zajo Sep 9, 2024
d0047b7
Updated copyright dates
zajo Sep 9, 2024
e85effa
Merge branch 'feature/has_value_any_key' into develop
zajo Sep 9, 2024
f81020e
Merge branch 'feature/update_copyright_dates' into develop
zajo Sep 9, 2024
ec11ab1
Renamed namespace leaf_detail -> detail
zajo Sep 9, 2024
0c79239
Improvements in single header distro. Build script tweaks.
zajo Sep 13, 2024
5991052
Removed a few unused items
zajo Sep 14, 2024
7bd20a5
Documentation update
zajo Sep 15, 2024
cd4b96c
Single header generation only writes the output if it has changed
zajo Sep 28, 2024
8a3b024
Renamed examples, fixed minor issues in build scripts
zajo Sep 28, 2024
d9bc66a
Converted e_file_name::value to proper member even under BOOST_LEAF_C…
zajo Sep 28, 2024
9f63201
Added boost::source_location overload in lightweight_test.hpp for boo…
zajo Sep 28, 2024
c973cd4
std::error_code interoperability improvements
zajo Sep 28, 2024
adb98d8
Changed leaf.hpp link to open raw file in the brownser rather than do…
zajo Sep 28, 2024
6633c36
Deleted benchmark
zajo Sep 29, 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
234 changes: 234 additions & 0 deletions .drone.jsonnet
Original file line number Diff line number Diff line change
@@ -0,0 +1,234 @@
# Copyright 2022 Peter Dimov
# Distributed under the Boost Software License, Version 1.0.
# https://www.boost.org/LICENSE_1_0.txt

local library = "leaf";

local triggers =
{
branch: [ "master", "develop", "feature/*" ]
};

local ubsan = { UBSAN: '1', UBSAN_OPTIONS: 'print_stacktrace=1' };
local asan = { ASAN: '1' };

local linux_pipeline(name, image, environment, packages = "", sources = [], arch = "amd64") =
{
name: name,
kind: "pipeline",
type: "docker",
trigger: triggers,
platform:
{
os: "linux",
arch: arch
},
steps:
[
{
name: "everything",
image: image,
environment: environment,
commands:
[
'set -e',
'wget -O - https://apt.llvm.org/llvm-snapshot.gpg.key | apt-key add -',
] +
(if sources != [] then [ ('apt-add-repository "' + source + '"') for source in sources ] else []) +
(if packages != "" then [ 'apt-get update', 'apt-get -y install ' + packages ] else []) +
[
'export LIBRARY=' + library,
'./.drone/drone.sh',
]
}
]
};

local macos_pipeline(name, environment, xcode_version = "14.1", osx_version = "monterey", arch = "arm64") =
{
name: name,
kind: "pipeline",
type: "exec",
trigger: triggers,
platform: {
"os": "darwin",
"arch": arch
},
node: {
"os": osx_version
},
steps: [
{
name: "everything",
environment: environment + { "DEVELOPER_DIR": "/Applications/Xcode-" + xcode_version + ".app/Contents/Developer" },
commands:
[
'export LIBRARY=' + library,
'./.drone/drone.sh',
]
}
]
};

local windows_pipeline(name, image, environment, arch = "amd64") =
{
name: name,
kind: "pipeline",
type: "docker",
trigger: triggers,
platform:
{
os: "windows",
arch: arch
},
"steps":
[
{
name: "everything",
image: image,
environment: environment,
commands:
[
'cmd /C .drone\\\\drone.bat ' + library,
]
}
]
};

[
linux_pipeline(
"Linux 16.04 GCC 5*",
"cppalliance/droneubuntu1604:1",
{ TOOLSET: 'gcc', COMPILER: 'g++', CXXSTD: '11,14' },
),

linux_pipeline(
"Linux 18.04 GCC 6",
"cppalliance/droneubuntu1804:1",
{ TOOLSET: 'gcc', COMPILER: 'g++-6', CXXSTD: '11,14' },
"g++-6",
),

linux_pipeline(
"Linux 18.04 GCC 7* 32",
"cppalliance/droneubuntu1804:1",
{ TOOLSET: 'gcc', COMPILER: 'g++', CXXSTD: '11,14', ADDRMD: '32' },
),

linux_pipeline(
"Linux 18.04 GCC 7* 64",
"cppalliance/droneubuntu1804:1",
{ TOOLSET: 'gcc', COMPILER: 'g++', CXXSTD: '11,14', ADDRMD: '64' },
),

linux_pipeline(
"Linux 18.04 GCC 8",
"cppalliance/droneubuntu1804:1",
{ TOOLSET: 'gcc', COMPILER: 'g++-8', CXXSTD: '11,14,17' },
"g++-8",
),

linux_pipeline(
"Linux 20.04 GCC 9* 32",
"cppalliance/droneubuntu2004:1",
{ TOOLSET: 'gcc', COMPILER: 'g++', CXXSTD: '11,14,17,2a', ADDRMD: '32' },
),

linux_pipeline(
"Linux 20.04 GCC 9* 64",
"cppalliance/droneubuntu2004:1",
{ TOOLSET: 'gcc', COMPILER: 'g++', CXXSTD: '11,14,17,2a', ADDRMD: '64' },
),

linux_pipeline(
"Linux 20.04 GCC 9 ARM64 32/64",
"cppalliance/droneubuntu2004:multiarch",
{ TOOLSET: 'gcc', COMPILER: 'g++', CXXSTD: '11,14,17,2a', ADDRMD: '32,64' },
arch="arm64",
),

linux_pipeline(
"Linux 20.04 GCC 10 32 ASAN",
"cppalliance/droneubuntu2004:1",
{ TOOLSET: 'gcc', COMPILER: 'g++-10', CXXSTD: '11,14,17,20', ADDRMD: '32' } + asan,
"g++-10-multilib",
),

linux_pipeline(
"Linux 20.04 GCC 10 64 ASAN",
"cppalliance/droneubuntu2004:1",
{ TOOLSET: 'gcc', COMPILER: 'g++-10', CXXSTD: '11,14,17,20', ADDRMD: '64' } + asan,
"g++-10-multilib",
),

linux_pipeline(
"Linux 16.04 Clang 3.6",
"cppalliance/droneubuntu1604:1",
{ TOOLSET: 'clang', COMPILER: 'clang++-3.6', CXXSTD: '11,14' },
"clang-3.6",
),

linux_pipeline(
"Linux 16.04 Clang 3.7",
"cppalliance/droneubuntu1604:1",
{ TOOLSET: 'clang', COMPILER: 'clang++-3.7', CXXSTD: '11,14' },
"clang-3.7",
),

linux_pipeline(
"Linux 16.04 Clang 3.8",
"cppalliance/droneubuntu1604:1",
{ TOOLSET: 'clang', COMPILER: 'clang++-3.8', CXXSTD: '11,14' },
"clang-3.8",
),

linux_pipeline(
"Linux 20.04 Clang 13",
"cppalliance/droneubuntu2004:1",
{ TOOLSET: 'clang', COMPILER: 'clang++-13', CXXSTD: '11,14,17,20' },
"clang-13",
["deb http://apt.llvm.org/focal/ llvm-toolchain-focal-13 main"],
),

linux_pipeline(
"Linux 22.04 Clang 14 UBSAN",
"cppalliance/droneubuntu2204:1",
{ TOOLSET: 'clang', COMPILER: 'clang++-14', CXXSTD: '11,14,17,20' } + ubsan,
"clang-14",
),

linux_pipeline(
"Linux 22.04 Clang 14 ASAN",
"cppalliance/droneubuntu2204:1",
{ TOOLSET: 'clang', COMPILER: 'clang++-14', CXXSTD: '11,14,17,20' } + asan,
"clang-14",
),

macos_pipeline(
"MacOS 12.5.1 Xcode 14.1 UBSAN",
{ TOOLSET: 'clang', COMPILER: 'clang++', CXXSTD: '14,17,20' } + ubsan,
),

macos_pipeline(
"MacOS 12.5.1 Xcode 14.1 ASAN",
{ TOOLSET: 'clang', COMPILER: 'clang++', CXXSTD: '14,17,20' } + asan,
),

windows_pipeline(
"Windows VS2017 msvc-14.1",
"cppalliance/dronevs2017",
{ TOOLSET: 'msvc-14.1', CXXSTD: '14,17,latest' },
),

windows_pipeline(
"Windows VS2019 msvc-14.2",
"cppalliance/dronevs2019",
{ TOOLSET: 'msvc-14.2', CXXSTD: '14,17,20,latest' },
),

windows_pipeline(
"Windows VS2022 msvc-14.3",
"cppalliance/dronevs2022:1",
{ TOOLSET: 'msvc-14.3', CXXSTD: '14,17,20,latest' },
),
]
55 changes: 0 additions & 55 deletions .drone.star

This file was deleted.

28 changes: 28 additions & 0 deletions .drone/drone.bat
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
@REM Copyright 2022 Peter Dimov
@REM Distributed under the Boost Software License, Version 1.0.
@REM https://www.boost.org/LICENSE_1_0.txt

@ECHO ON

set LIBRARY=%1
set DRONE_BUILD_DIR=%CD%

set BOOST_BRANCH=develop
if "%DRONE_BRANCH%" == "master" set BOOST_BRANCH=master
cd ..
git clone -b %BOOST_BRANCH% --depth 1 https://github.com/boostorg/boost.git boost-root
cd boost-root
git submodule update --init tools/boostdep
xcopy /s /e /q %DRONE_BUILD_DIR% libs\%LIBRARY%\
python tools/boostdep/depinst/depinst.py %LIBRARY%
cmd /c bootstrap
b2 -d0 headers

echo "Generating single header"
cd libs/%LIBRARY%
python gen/generate_single_header.py -i include/boost/leaf/detail/all.hpp -p include -o test/leaf.hpp boost/leaf

echo "Testing"
if not "%CXXSTD%" == "" set CXXSTD=cxxstd=%CXXSTD%
if not "%ADDRMD%" == "" set ADDRMD=address-model=%ADDRMD%
..\..\b2 -j3 test toolset=%TOOLSET% %CXXSTD% %ADDRMD% embed-manifest-via=linker link=shared,static variant=debug,release,leaf_debug_capture0,leaf_release_capture0,leaf_debug_diag0,leaf_release_diag0,leaf_debug_embedded,leaf_release_embedded,leaf_debug_single_header,leaf_release_single_header
Loading