History log of /openbmc/sdbusplus/ (Results 1 – 25 of 891)
Revision Date Author Comments
(<<< Hide modified files)
(Show modified files >>>)
663b7b7331-Dec-2025 Jayanth Othayoth <ojayanth@gmail.com>

clang-tidy: async:context: replace optional access

Add local accessor for the async ctx in the test fixture and switch to
using that, rather than raw access to a std::optional. This resolves
clang-

clang-tidy: async:context: replace optional access

Add local accessor for the async ctx in the test fixture and switch to
using that, rather than raw access to a std::optional. This resolves
clang-tidy warnings for bugprone-unchecked-optional-access.

Change-Id: Iead8fca940d80003dea87199a9df6dfb05305579
Signed-off-by: Jayanth Othayoth <ojayanth@gmail.com>

show more ...

38744f4029-Dec-2025 Jayanth Othayoth <ojayanth@gmail.com>

clang-tidy:unpack_properties guard optional access

Replace ASSERT_TRUE checks with explicit `if (!opt.has_value())` guards
and early return to satisfy bugprone-unchecked-optional-access.

Change-Id:

clang-tidy:unpack_properties guard optional access

Replace ASSERT_TRUE checks with explicit `if (!opt.has_value())` guards
and early return to satisfy bugprone-unchecked-optional-access.

Change-Id: I426b869b30d7631fe6ea973a48b4892765785b8f
Signed-off-by: Jayanth Othayoth <ojayanth@gmail.com>

show more ...

540ad05922-Dec-2025 Jayanth Othayoth <ojayanth@gmail.com>

clang-tidy: remove unused private fields

Dropped unused members `fd` and `wd` from mutex.cpp to resolve
-Wunused-private-field errors under -Werror. No functional changes.

Fixed below errors.
'''
.

clang-tidy: remove unused private fields

Dropped unused members `fd` and `wd` from mutex.cpp to resolve
-Wunused-private-field errors under -Werror. No functional changes.

Fixed below errors.
'''
../test/async/mutex.cpp:94:9: error: private field 'fd' is not used [-Werror,-Wunused-private-field]
94 | int fd = -1;
| ^
../test/async/mutex.cpp:95:9: error: private field 'wd' is not used [-Werror,-Wunused-private-field]
95 | int wd = -1;
'''

Change-Id: If8079277c6e1be2760de8896997d7da4df6e1a98
Signed-off-by: Jayanth Othayoth <ojayanth@gmail.com>

show more ...

45d0406022-Dec-2025 Jayanth Othayoth <ojayanth@gmail.com>

clang-tidy: fix lax exception spec in fixture

Explicitly declare MutexTest destructor as `noexcept override` to match
::testing::Test. This resolves Clang error about exception specification
being m

clang-tidy: fix lax exception spec in fixture

Explicitly declare MutexTest destructor as `noexcept override` to match
::testing::Test. This resolves Clang error about exception specification
being more lax than the base under -Werror. No functional changes.

Fixed below errors
'''
../test/async/mutex.cpp:12:7: error: exception specification of overriding function
is more lax than base version
12 | class MutexTest : public ::testing::Test
'''

Change-Id: I0b3d0775ecdda4408e794ff4220dd564595b54f6
Signed-off-by: Jayanth Othayoth <ojayanth@gmail.com>

show more ...

ec7bf8c007-Nov-2025 Patrick Williams <patrick@stwcx.xyz>

delete bundled stdexec

Signed-off-by: Patrick Williams <patrick@stwcx.xyz>
Change-Id: I054b42515b94be3204f298c12a60dfc0d54ac3a7


afc8e6e120-Aug-2025 Patrick Williams <patrick@stwcx.xyz>

use external stdexec package

Add subprojects/stdexec.wrap so that we can use upstream stdexec,
if the packageconfig is unavailable, and reference it as necessary
in the meson.build.

Signed-off-by:

use external stdexec package

Add subprojects/stdexec.wrap so that we can use upstream stdexec,
if the packageconfig is unavailable, and reference it as necessary
in the meson.build.

Signed-off-by: Patrick Williams <patrick@stwcx.xyz>
Change-Id: Ic0f32f694aac2f98c9646168b08ca352c183afa1

show more ...

5e36f4ab06-Nov-2025 Patrick Williams <patrick@stwcx.xyz>

async: remove tag_invoke calls

P2300R9 removed usage of tag_invoke. stdexec still has it
but in order to be forward compliant with the C++26 standard
we should modernize the code and remove its usa

async: remove tag_invoke calls

P2300R9 removed usage of tag_invoke. stdexec still has it
but in order to be forward compliant with the C++26 standard
we should modernize the code and remove its usage. This also
has the benefit of simplifying most sender/receiver implementations.

Signed-off-by: Patrick Williams <patrick@stwcx.xyz>
Change-Id: Ib0a1d0a82485c8d247a18daa020d0bba2249e95c

show more ...

10d0b4b705-Nov-2025 Patrick Williams <patrick@stwcx.xyz>

stdexec: update to latest

* Add a .clang-format-ignore for the stdexec and stop running
clang-format on it. This makes it identical to the stdexec
source.

* Add a warning exception for

stdexec: update to latest

* Add a .clang-format-ignore for the stdexec and stop running
clang-format on it. This makes it identical to the stdexec
source.

* Add a warning exception for -Wempty-body.

* Remove a requirement constraint on the spawn function. The
sender_of constraint can no longer analyze certain stdexec
generated classes and appears to be deprecated. In the future
I may be able to figure out a newer constraint for better
diagnostics, but this is only for diagnostic purposes.

Signed-off-by: Patrick Williams <patrick@stwcx.xyz>
Change-Id: Ic29b7052b1e3a1818fbbfbd42aefe2990f4295c7

show more ...


.clang-format-ignore
include/sdbusplus/async/context.hpp
include/sdbusplus/async/execution.hpp
include/sdbusplus/async/stdexec/__detail/__any_receiver_ref.hpp
include/sdbusplus/async/stdexec/__detail/__as_awaitable.hpp
include/sdbusplus/async/stdexec/__detail/__awaitable.hpp
include/sdbusplus/async/stdexec/__detail/__basic_sender.hpp
include/sdbusplus/async/stdexec/__detail/__bulk.hpp
include/sdbusplus/async/stdexec/__detail/__completion_behavior.hpp
include/sdbusplus/async/stdexec/__detail/__completion_signatures.hpp
include/sdbusplus/async/stdexec/__detail/__concepts.hpp
include/sdbusplus/async/stdexec/__detail/__config.hpp
include/sdbusplus/async/stdexec/__detail/__connect_awaitable.hpp
include/sdbusplus/async/stdexec/__detail/__continues_on.hpp
include/sdbusplus/async/stdexec/__detail/__cpo.hpp
include/sdbusplus/async/stdexec/__detail/__debug.hpp
include/sdbusplus/async/stdexec/__detail/__diagnostics.hpp
include/sdbusplus/async/stdexec/__detail/__domain.hpp
include/sdbusplus/async/stdexec/__detail/__ensure_started.hpp
include/sdbusplus/async/stdexec/__detail/__env.hpp
include/sdbusplus/async/stdexec/__detail/__execute.hpp
include/sdbusplus/async/stdexec/__detail/__execution_fwd.hpp
include/sdbusplus/async/stdexec/__detail/__execution_legacy.hpp
include/sdbusplus/async/stdexec/__detail/__force_include.hpp
include/sdbusplus/async/stdexec/__detail/__inline_scheduler.hpp
include/sdbusplus/async/stdexec/__detail/__into_variant.hpp
include/sdbusplus/async/stdexec/__detail/__intrusive_mpsc_queue.hpp
include/sdbusplus/async/stdexec/__detail/__intrusive_ptr.hpp
include/sdbusplus/async/stdexec/__detail/__intrusive_queue.hpp
include/sdbusplus/async/stdexec/__detail/__intrusive_slist.hpp
include/sdbusplus/async/stdexec/__detail/__just.hpp
include/sdbusplus/async/stdexec/__detail/__let.hpp
include/sdbusplus/async/stdexec/__detail/__manual_lifetime.hpp
include/sdbusplus/async/stdexec/__detail/__meta.hpp
include/sdbusplus/async/stdexec/__detail/__on.hpp
include/sdbusplus/async/stdexec/__detail/__operation_states.hpp
include/sdbusplus/async/stdexec/__detail/__optional.hpp
include/sdbusplus/async/stdexec/__detail/__preprocessor.hpp
include/sdbusplus/async/stdexec/__detail/__query.hpp
include/sdbusplus/async/stdexec/__detail/__ranges.hpp
include/sdbusplus/async/stdexec/__detail/__read_env.hpp
include/sdbusplus/async/stdexec/__detail/__receiver_adaptor.hpp
include/sdbusplus/async/stdexec/__detail/__receiver_ref.hpp
include/sdbusplus/async/stdexec/__detail/__receivers.hpp
include/sdbusplus/async/stdexec/__detail/__run_loop.hpp
include/sdbusplus/async/stdexec/__detail/__schedule_from.hpp
include/sdbusplus/async/stdexec/__detail/__schedulers.hpp
include/sdbusplus/async/stdexec/__detail/__scope.hpp
include/sdbusplus/async/stdexec/__detail/__sender_adaptor_closure.hpp
include/sdbusplus/async/stdexec/__detail/__sender_introspection.hpp
include/sdbusplus/async/stdexec/__detail/__senders.hpp
include/sdbusplus/async/stdexec/__detail/__senders_core.hpp
include/sdbusplus/async/stdexec/__detail/__shared.hpp
include/sdbusplus/async/stdexec/__detail/__spin_loop_pause.hpp
include/sdbusplus/async/stdexec/__detail/__split.hpp
include/sdbusplus/async/stdexec/__detail/__start_detached.hpp
include/sdbusplus/async/stdexec/__detail/__starts_on.hpp
include/sdbusplus/async/stdexec/__detail/__stop_token.hpp
include/sdbusplus/async/stdexec/__detail/__stopped_as_error.hpp
include/sdbusplus/async/stdexec/__detail/__stopped_as_optional.hpp
include/sdbusplus/async/stdexec/__detail/__submit.hpp
include/sdbusplus/async/stdexec/__detail/__sync_wait.hpp
include/sdbusplus/async/stdexec/__detail/__tag_invoke.hpp
include/sdbusplus/async/stdexec/__detail/__then.hpp
include/sdbusplus/async/stdexec/__detail/__transfer_just.hpp
include/sdbusplus/async/stdexec/__detail/__transform_completion_signatures.hpp
include/sdbusplus/async/stdexec/__detail/__transform_sender.hpp
include/sdbusplus/async/stdexec/__detail/__tuple.hpp
include/sdbusplus/async/stdexec/__detail/__type_traits.hpp
include/sdbusplus/async/stdexec/__detail/__unstoppable.hpp
include/sdbusplus/async/stdexec/__detail/__upon_error.hpp
include/sdbusplus/async/stdexec/__detail/__upon_stopped.hpp
include/sdbusplus/async/stdexec/__detail/__utility.hpp
include/sdbusplus/async/stdexec/__detail/__variant.hpp
include/sdbusplus/async/stdexec/__detail/__when_all.hpp
include/sdbusplus/async/stdexec/__detail/__with_awaitable_senders.hpp
include/sdbusplus/async/stdexec/__detail/__write_env.hpp
include/sdbusplus/async/stdexec/any_sender_of.hpp
include/sdbusplus/async/stdexec/async_scope.hpp
include/sdbusplus/async/stdexec/at_coroutine_exit.hpp
include/sdbusplus/async/stdexec/commit.info
include/sdbusplus/async/stdexec/concepts.hpp
include/sdbusplus/async/stdexec/coroutine.hpp
include/sdbusplus/async/stdexec/env.hpp
include/sdbusplus/async/stdexec/execution.hpp
include/sdbusplus/async/stdexec/functional.hpp
include/sdbusplus/async/stdexec/import
include/sdbusplus/async/stdexec/inline_scheduler.hpp
include/sdbusplus/async/stdexec/scope.hpp
include/sdbusplus/async/stdexec/sequence_senders.hpp
include/sdbusplus/async/stdexec/stop_token.hpp
include/sdbusplus/async/stdexec/task.hpp
d0ac4bf104-Nov-2025 Patrick Williams <patrick@stwcx.xyz>

message: ensure support for flat-map

Signed-off-by: Patrick Williams <patrick@stwcx.xyz>
Change-Id: Id50c1e5a4dbf86a16668f1a51c00a82fd2319c73

7c0fb15f04-Nov-2025 Patrick Williams <patrick@stwcx.xyz>

use unpack syntax

Rather than defining a variable and then reading it from a message,
we also supports directly unpack-ing from the message. Use this
syntax instead as it is more efficient and succ

use unpack syntax

Rather than defining a variable and then reading it from a message,
we also supports directly unpack-ing from the message. Use this
syntax instead as it is more efficient and succinct.

Signed-off-by: Patrick Williams <patrick@stwcx.xyz>
Change-Id: I2ce2aa3e6a43d8866ba9b3920dd3165b7b6b9f6e

show more ...

86e3835704-Nov-2025 Patrick Williams <patrick@stwcx.xyz>

test: unpack_properties: remove unused boost include

Signed-off-by: Patrick Williams <patrick@stwcx.xyz>
Change-Id: I30e8752b4d3a8951dd1352126b8664fa5b8f53aa

c1e6eed910-Oct-2025 Haiyue Wang <haiyuewa@163.com>

docs: update the sdbus++ python installation

Update the sdbus++ python installation documentation, as it has changed
from setup.py to pyproject.toml.

Fixes: ed24aa516d98 ("sdbus++: convert from set

docs: update the sdbus++ python installation

Update the sdbus++ python installation documentation, as it has changed
from setup.py to pyproject.toml.

Fixes: ed24aa516d98 ("sdbus++: convert from setup.py to pyproject.tom")
Change-Id: Ie50f99e2678777dde5b40e131d48b5017c192a20
Signed-off-by: Haiyue Wang <haiyuewa@163.com>

show more ...

2cd25e6423-Oct-2025 Alexander Hansen <alexander.hansen@9elements.com>

test: split up long-running tests

gtests runs testcases sequentially as part of a test suite which is
causing long test runs. Split up the tests into separate files to
optimize test run duration.

T

test: split up long-running tests

gtests runs testcases sequentially as part of a test suite which is
causing long test runs. Split up the tests into separate files to
optimize test run duration.

Test suite definition is done via `suite.hpp`/`suite.cpp`.

There is a tradeoff here since the test folder structure now does not
directly mirror the source folder structure anymore. The folder name
is chosen to clarify which implementation file is being tested.

Timeouts inside testcases are not touched, it is assumed these were
chosen correctly.

In case of fdio_timed there is dependency on a folder, which is made
unique via `getpid()` call to avoid races.

Command: `time ninja -C build test`

Before: (as of current master branch, commit
`c6fee5a94bbb4b4fbb6212942f0f2cfa3049c255`)
```
real 0m18.581s
user 0m9.977s
sys 0m5.494s
```

After:
```
real 0m6.430s
user 0m10.021s
sys 0m5.501s
```

Change-Id: I2ba096cb8f9d8ffcc146448d22b7e75a1c25d103
Signed-off-by: Alexander Hansen <alexander.hansen@9elements.com>

show more ...

c6fee5a920-Oct-2025 Alexander Hansen <alexander.hansen@9elements.com>

expose DBus interface signal names as symbols

Enable a way to access the signal names of a given DBus interface as a
constexpr symbol via the header.

4 use-cases:

- printing error / debug logs wit

expose DBus interface signal names as symbols

Enable a way to access the signal names of a given DBus interface as a
constexpr symbol via the header.

4 use-cases:

- printing error / debug logs with the signal name.
e.g. 'received signal ${SIGNAL_NAME}'

- matching on DBus signals in applications which do not yet use the PDI
generated bindings.

- preventing typos in DBus signal names

- estimating the impact of removing a given DBus signal from an
interface. When using these symbols, it would cause a build failure in
applications relying on the existence of that signal.

This change is similar to [1] and goes into the same direction.

Tested: Newly written unit test passes.

References:
[1] d2571922bfdb4f6b41ba4fbc45b8a4272793fd40

Change-Id: I9c20d744955c883302f349c5351dbdba1753466b
Signed-off-by: Alexander Hansen <alexander.hansen@9elements.com>

show more ...

4aa58f5a16-Oct-2025 Alexander Hansen <alexander.hansen@9elements.com>

expose DBus interface method names as symbols

Enable a way to access the method names of a given DBus interface as a
constexpr symbol via the header.

4 use-cases:

- printing error / debug logs wit

expose DBus interface method names as symbols

Enable a way to access the method names of a given DBus interface as a
constexpr symbol via the header.

4 use-cases:

- printing error / debug logs with the method name.
e.g. 'error calling ${METHOD_NAME}'

- accessing DBus methods in applications which do not yet use the PDI
generated bindings.

- preventing typos in DBus method names

- estimating the impact of removing a given DBus method from an
interface. When using these symbols, it would cause a build failure in
applications relying on the existence of that method.

This change is similar to [1] and goes into the same direction.

Tested: Newly written unit test passes.

References:
[1] d2571922bfdb4f6b41ba4fbc45b8a4272793fd40

Change-Id: Id423c3a668dd1a8346040f4380476d5e02468ddb
Signed-off-by: Alexander Hansen <alexander.hansen@9elements.com>

show more ...

d257192202-Oct-2025 Alexander Hansen <alexander.hansen@9elements.com>

expose DBus interface property names as symbols

Enable a way to access the property names of a given DBus interface as a
constexpr symbol via the header [1]

4 use-cases:

- printing error / debug l

expose DBus interface property names as symbols

Enable a way to access the property names of a given DBus interface as a
constexpr symbol via the header [1]

4 use-cases:

- printing error / debug logs with the property name.
e.g. '${property} missing from configuration'

- accessing DBus properties in applications which do not yet use the PDI
generated bindings.

- preventing typos in DBus property names

- estimating the impact of removing a given DBus property from an
interface. When using these symbols, it would cause a build failure in
applications relying on the existence of that property.

Tested: a newly added unit test is using this feature.

References:
[1] https://discordapp.com/channels/775381525260664832/867820390406422538/1423317550732673206

Change-Id: I7b2906b6b1b445c3a49868ff1d50ced6ccaa5336
Signed-off-by: Alexander Hansen <alexander.hansen@9elements.com>

show more ...

871cc33610-Oct-2025 Matt Spinler <spinler@us.ibm.com>

sdbus++: Append 'common' namespace to enums

When an enum is used as a method arg, the generated aserver.hpp wasn't
compiling because the "xyz::openbmc_project::" namespace wasn't found as
a type in

sdbus++: Append 'common' namespace to enums

When an enum is used as a method arg, the generated aserver.hpp wasn't
compiling because the "xyz::openbmc_project::" namespace wasn't found as
a type in these two places:

```
Control/Failover/aserver.hpp:78:133: error: template argument 1 is invalid [-Wtemplate-body]
78 | using value_types = std::tuple<xyz::openbmc_project::control::Failover::Requester, std::map<std::string, std::variant<bool>>>;
```

and
```
Control/Failover/aserver.hpp:97:49: error: parse error in template argument list [-Wtemplate-body]
97 | utility::tuple_to_array(message::types::type_id<xyz::openbmc_project::control::Failover::Requester, std::map<std::string, std::variant<bool>>>());
```

Fix this by updating property.py to append the sdbusplus::common
namespace to enums to make them fully qualified, i.e:

```
using value_types = std::tuple<sdbusplus::common::xyz::openbmc_project::control::Failover::Requester, std::map<std::string, std::variant<bool>>>;
```

This applies to enums used everywhere. I didn't see a way to only make
the change for the 2 spots listed above.

Tested:
* The aserver.hpp properly compiles now.
* A full image still builds.

Change-Id: I0083b1d442e1aed0242b4c5522b3fe93aa67f06b
Signed-off-by: Matt Spinler <spinler@us.ibm.com>

show more ...

4076259512-Sep-2025 Ed Tanous <etanous@nvidia.com>

Remove read_into_tuple

This function can be easily superseded by pack expressions, simplifying
the code.

Tested:
Boot up gb200 in qemu. Redfish service validator/login/logout all pass.

Change-Id:

Remove read_into_tuple

This function can be easily superseded by pack expressions, simplifying
the code.

Tested:
Boot up gb200 in qemu. Redfish service validator/login/logout all pass.

Change-Id: I999e0947c2ee124ca3dc8dc9718ddb13c2c52ea4
Signed-off-by: Ed Tanous <etanous@nvidia.com>

show more ...

bd04c3b207-Jul-2025 Jagpal Singh Gill <paligill@gmail.com>

add support for async mutex

Add support for async mutex for synchronizing coroutines/tasks using
sender receiver framework. Also, add lock_guard support which provides a
RAII wrapper for mutex to ow

add support for async mutex

Add support for async mutex for synchronizing coroutines/tasks using
sender receiver framework. Also, add lock_guard support which provides a
RAII wrapper for mutex to own it for the duration of a scoped block.

Tested: Add Unit Test using gtest
```
1/1 test_async_mutex OK 2.01s

Ok: 1
Expected Fail: 0
Fail: 0
Unexpected Pass: 0
Skipped: 0
Timeout: 0
```

Change-Id: I691528885a94b9cf55d4b7f2fb0c1e0e6d0ab84f
Signed-off-by: Jagpal Singh Gill <paligill@gmail.com>
Signed-off-by: Patrick Williams <patrick@stwcx.xyz>

show more ...

5b54325122-Jul-2025 Jagpal Singh Gill <paligill@gmail.com>

add support for timed fdio

For certain operations such as reading and writing to a fd for request
response flows, the fd needs to have a timeout to avoid everlasting
hangs in case of a unresponsive

add support for timed fdio

For certain operations such as reading and writing to a fd for request
response flows, the fd needs to have a timeout to avoid everlasting
hangs in case of a unresponsive responder. To support this, the fdio has
been extended to add timeout support by throwing an exception in case of
timeout.

Tested: Unit Test
```
1/1 test_async_fdio_timed OK 10.03s

Ok: 1
Expected Fail: 0
Fail: 0
Unexpected Pass: 0
Skipped: 0
Timeout: 0
```

Change-Id: Ib219e4a4c55125785e6c1571488e445ba3379244
Signed-off-by: Jagpal Singh Gill <paligill@gmail.com>

show more ...

e8f2b0d512-Sep-2025 Ed Tanous <etanous@nvidia.com>

asio: unpack in place

The existing code uses several different tuples to do the unpack, then
concatenates them with tuple_cat. Simplify the code by generating a
tuple of references to the dbus args

asio: unpack in place

The existing code uses several different tuples to do the unpack, then
concatenates them with tuple_cat. Simplify the code by generating a
tuple of references to the dbus args, and unpack directly to the main
struct, thus simplifying the flow.

To accomplish this the make_dbus_args_tuple helper method is added,
which strips the non-dbus arguments from a callback so they can be
unpacked separately. This is relatively complex because this code tries
to support

callback(boost::error_code, message_t, dbus_arg);
as well as
callback(boost::error_code, dbus_arg);

Dynamically dependent on which overload is provided. There's likely
more cleanup that can happen there to separate these two, but this
should at least help.

Tested: OpenBMC launches and runs. Redfish service validator (which
should hit the majority of these overloads) passes.

Change-Id: I6bb7ee960459a505eb8633b1cdb30cd2b3037466
Signed-off-by: Ed Tanous <etanous@nvidia.com>

show more ...

485f6b6019-Sep-2025 Patrick Williams <patrick@stwcx.xyz>

clang-format: update latest spec and reformat with clang-21

Copy the latest format file from the docs repository and apply using
clang-format-21.

See I795e88ada8e676c242b5a18888ce9c08afdedc93 for c

clang-format: update latest spec and reformat with clang-21

Copy the latest format file from the docs repository and apply using
clang-format-21.

See I795e88ada8e676c242b5a18888ce9c08afdedc93 for clang-21 enablement.

Change-Id: If23c0ebde25b8016876e48e4a63697310ea57706
Signed-off-by: Patrick Williams <patrick@stwcx.xyz>

show more ...

0fc4739512-Sep-2025 Ed Tanous <etanous@nvidia.com>

Use specific callable_traits includes

In line with the coding standard, use the most specific boost includes
we can, in this case for callable_traits, we only need two structs, not
the whole library

Use specific callable_traits includes

In line with the coding standard, use the most specific boost includes
we can, in this case for callable_traits, we only need two structs, not
the whole library.

Change-Id: I0500e5f726b7dc1646fa3fecc47cac5189218c64
Signed-off-by: Ed Tanous <etanous@nvidia.com>

show more ...

ed24aa5126-Aug-2025 Patrick Williams <patrick@stwcx.xyz>

sdbus++: convert from setup.py to pyproject.toml

Python setup.py files are deprecated in favor of newer pyproject.toml
and with later versions of Python this is both a warning and can be
a failure d

sdbus++: convert from setup.py to pyproject.toml

Python setup.py files are deprecated in favor of newer pyproject.toml
and with later versions of Python this is both a warning and can be
a failure due to incorrect SPDX license directives. Convert to
pyproject robotically by using:

```
uvx setuptools-py2cfg >> setup.cfg
uvx ini2toml[full] setup.cfg >> pyproject.toml
```

Tested: Ran `uv build --sdist` with `setup.py` and `pyproject.toml` and
confirmed same results (other than obvious changes due to install of
the setuptools directives).

Signed-off-by: Patrick Williams <patrick@stwcx.xyz>
Change-Id: Id62a63c3d9f061d632eab504a76b0c13be8a8b08

show more ...

47ac18da15-Jul-2025 Ed Tanous <etanous@nvidia.com>

Allow appending std::vector<bool>

std::vector<bool> when done with a for loop returns the type of
std::_bit_reference, which doesn't have a direct conversion to the
underlying boolean type.

Rather

Allow appending std::vector<bool>

std::vector<bool> when done with a for loop returns the type of
std::_bit_reference, which doesn't have a direct conversion to the
underlying boolean type.

Rather than relying on the type returned by begin(), rely on
T::value_type to specifically get the type in the container.

There isn't a particular use for this, but
https://gerrit.openbmc.org/c/openbmc/entity-manager/+/81474

Is trying to consolidate code, and having all types use the same
pack/unpack code is advantageous to avoid special cases. I don't
know of a place we're actually packing/unpacking arrays of bool.

Tested: Booted gb200nvl-bmc. Services launched, no new crashes seen.

Change-Id: I07fc150a190ae44f7bdc90531ad2a4ce7f47e0a1
Signed-off-by: Ed Tanous <etanous@nvidia.com>

show more ...

12345678910>>...36