History log of /openbmc/sdbusplus/include/ (Results 1 – 25 of 254)
Revision Date Author Comments
(<<< Hide modified files)
(Show modified files >>>)
b08d14dd05-Nov-2024 Patrick Williams <patrick@stwcx.xyz>

sdbus++: events: unpack an event from JSON

Generate code necessary to unpack a generated event from its
JSON representation.

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

sdbus++: events: unpack an event from JSON

Generate code necessary to unpack a generated event from its
JSON representation.

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

show more ...

3b54a8e525-Oct-2024 Patrick Williams <patrick@stwcx.xyz>

sdbus++: simplify handling of empty parameter lists

Add a template specialization of the type-tuple generation for
empty parameter lists in order to simplify the Mako templates.
This eliminates a sp

sdbus++: simplify handling of empty parameter lists

Add a template specialization of the type-tuple generation for
empty parameter lists in order to simplify the Mako templates.
This eliminates a special case for empty parameter lists in
multiple places.

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

show more ...

fc0bb99611-Oct-2024 Patrick Williams <patrick@stwcx.xyz>

bus: un-inline functions

Due to additional upstream error results, the bus creation functions
need better error handling. This will result in larger functions
that are no longer a direct sd-bus cal

bus: un-inline functions

Due to additional upstream error results, the bus creation functions
need better error handling. This will result in larger functions
that are no longer a direct sd-bus call and probably shouldn't be
inlined. Move the functions to the `bus.cpp` file.

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

show more ...

4b3720f810-Oct-2024 Patrick Williams <patrick@stwcx.xyz>

async: context: use new_bus by default

There are two primary methods for creating a generic bus:
* new_default
* new_bus

The "default" methods use TLS to get a shared bus for the thread. Thi

async: context: use new_bus by default

There are two primary methods for creating a generic bus:
* new_default
* new_bus

The "default" methods use TLS to get a shared bus for the thread. This
is likely not the desired bus to use for async operations because:

1. Currently a separate thread is used for the message processing.
2. Some existing synchronous code throughout openbmc uses
`new_default` instead of referencing an existing bus, which could
interfere with the async context.

Switch to using `new_bus` by default to ensure we get a fresh, unused
and unshared bus in the typical case.

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

show more ...

c012fde407-Oct-2024 Patrick Williams <patrick@stwcx.xyz>

events: add severity to class generation

Use the severity field to add to the class generation for use
by phosphor-logging to commit entries.

Signed-off-by: Patrick Williams <patrick@stwcx.xyz>
Cha

events: add severity to class generation

Use the severity field to add to the class generation for use
by phosphor-logging to commit entries.

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

show more ...

760adffd05-Oct-2024 Patrick Williams <patrick@stwcx.xyz>

events: add non-template base class

In order to allow non-template implementations that interact with
the `sdbusplus::excception::generated_event<T>` class, it is useful
to have a non-template base

events: add non-template base class

In order to allow non-template implementations that interact with
the `sdbusplus::excception::generated_event<T>` class, it is useful
to have a non-template base class. Add the `to_json` there for use
by phosphor-logging.

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

show more ...

14c4797c24-Sep-2024 Patrick Williams <patrick@stwcx.xyz>

sdbus++: events: create json for events

Create JSON for the events containing their metadata and leverage that
as the "message" portion of the `sd_bus_error`. This will allow
unpacking the message

sdbus++: events: create json for events

Create JSON for the events containing their metadata and leverage that
as the "message" portion of the `sd_bus_error`. This will allow
unpacking the message on a client side back to the original exception.

Tested:
```
$ busctl --user call net.poettering.Calculator /net/poettering/calculator net.poettering.Calculator Divide xx 5 0
Call failed: {"net.poettering.Calculator.DivisionByZero":{"FOO":"unused"}}
```

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

show more ...

a4bfefde24-Sep-2024 Patrick Williams <patrick@stwcx.xyz>

exception: move sd_bus_error_set calls to exception

In the future, generated exceptions will need to fill the sd_error
with something other than the "description" in order to pass more
metadata. Mo

exception: move sd_bus_error_set calls to exception

In the future, generated exceptions will need to fill the sd_error
with something other than the "description" in order to pass more
metadata. Move the sd_bus_error_set calls to exception as a virtual
function so this can be accomplished.

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

show more ...

ebe0179424-Sep-2024 Patrick Williams <patrick@stwcx.xyz>

sdbus++: events: simplify constructor

Consolidate consteval_string usage to simplify the generated code.

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

sdbus++: events: simplify constructor

Consolidate consteval_string usage to simplify the generated code.

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

show more ...

d925c0bc23-Sep-2024 Patrick Williams <patrick@stwcx.xyz>

sdbus++: events: generate exception constructors

Generate constructors for exceptions using the listed metadata.

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

sdbus++: events: generate exception constructors

Generate constructors for exceptions using the listed metadata.

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

show more ...

d731d26317-Sep-2024 Patrick Williams <patrick@stwcx.xyz>

sdbus++: events: create event classes

Generate an equivalent amount of exception class as the `errors.yaml`
supported and convert the examples to use it.

Tested:

```
‣ Type=error Endian=l Flags=

sdbus++: events: create event classes

Generate an equivalent amount of exception class as the `errors.yaml`
supported and convert the examples to use it.

Tested:

```
‣ Type=error Endian=l Flags=1 Version=1 Cookie=9 ReplyCookie=2 Timestamp="Tue 2024-09-17 18:21:35.649674 UTC"
Sender=:1.2489 Destination=:1.2495
ErrorName=net.poettering.Calculator.DivisionByZero ErrorMessage="Attempted to divide by zero."
UniqueName=:1.2489
MESSAGE "s" {
STRING "Attempted to divide by zero.";
};
```

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

show more ...

88c6a82310-Sep-2024 Lei YU <yulei.sh@bytedance.com>

message: Fix unpack void type

The template unpack<void> is deduced as one argument instead of 0, and
results in below compile error:
```
error: variable or field ‘r’ declared void
error: return-stat

message: Fix unpack void type

The template unpack<void> is deduced as one argument instead of 0, and
results in below compile error:
```
error: variable or field ‘r’ declared void
error: return-statement with a value, in function returning ‘void’ [-fpermissive]
```

Fix this by checking void if `sizeof...(Args) == 1` and return void.
Also add a unit test case to make sure the code compiles.

Change-Id: I74cca180783645496863393be37215f1d6f4ca02
Signed-off-by: Lei YU <yulei.sh@bytedance.com>

show more ...

6ea10e0402-Sep-2024 Lei YU <yulei.sh@bytedance.com>

asio: Fix read into tuple response

Some DBus methods return multiple elements, e.g.
`org.freedesktop.resolve1` has a method `ResolveHostname` that returns
the result type `a(iiay)st`, which could no

asio: Fix read into tuple response

Some DBus methods return multiple elements, e.g.
`org.freedesktop.resolve1` has a method `ResolveHostname` that returns
the result type `a(iiay)st`, which could not be "read()" directly as a
tuple.

The code was using a tuple to represent the multiple elements, and use
`r.read(responseData)` that would result in "Invalid Argument" error.

Fix it by `message::unpack` API to correctly read the response and
unpack the multiple elements into the tuple.

Change-Id: I83eb83abf0b079ebf94c1a51a40640533ab04a9f
Signed-off-by: Lei YU <yulei.sh@bytedance.com>

show more ...

8d40adad22-Aug-2024 Igor Kononenko <i.kononenko.e@gmail.com>

transaction: fix -Wconversion c++ warning

Building sdbusplus by meson subproject as a part of external project
contains compile warning which can be interpreted as compile error (if
external project

transaction: fix -Wconversion c++ warning

Building sdbusplus by meson subproject as a part of external project
contains compile warning which can be interpreted as compile error (if
external project defines both `-Werror` and `-Wconversion`)

Changing the `Transaction::time` property type to the appropriate
`std::time_t` will solve the issue.

Change-Id: I9ab42472ff361aab9487c73d7804531151986e4c
Signed-off-by: Igor Kononenko <i.kononenko.e@gmail.com>

show more ...

06f265f616-Aug-2024 Patrick Williams <patrick@stwcx.xyz>

clang-format: re-format for clang-18

clang-format-18 isn't compatible with the clang-format-17 output, so we
need to reformat the code with the latest version. The way clang-18
handles lambda forma

clang-format: re-format for clang-18

clang-format-18 isn't compatible with the clang-format-17 output, so we
need to reformat the code with the latest version. The way clang-18
handles lambda formatting also changed, so we have made changes to the
organization default style format to better handle lambda formatting.

See I5e08687e696dd240402a2780158664b7113def0e for updated style.
See Iea0776aaa7edd483fa395e23de25ebf5a6288f71 for clang-18 enablement.

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

show more ...


/openbmc/sdbusplus/.clang-format
/openbmc/sdbusplus/example/asio-example.cpp
/openbmc/sdbusplus/example/calculator-aserver.cpp
/openbmc/sdbusplus/example/coroutine-example.cpp
/openbmc/sdbusplus/example/get-all-properties.cpp
/openbmc/sdbusplus/example/list-users.cpp
/openbmc/sdbusplus/example/register-property.cpp
sdbusplus/asio/connection.hpp
sdbusplus/asio/detail/async_send_handler.hpp
sdbusplus/asio/object_server.hpp
sdbusplus/asio/property.hpp
sdbusplus/asio/sd_event.hpp
sdbusplus/async/callback.hpp
sdbusplus/async/match.hpp
sdbusplus/async/proxy.hpp
sdbusplus/async/server.hpp
sdbusplus/async/stdexec/__detail/__awaitable.hpp
sdbusplus/async/stdexec/__detail/__basic_sender.hpp
sdbusplus/async/stdexec/__detail/__bulk.hpp
sdbusplus/async/stdexec/__detail/__concepts.hpp
sdbusplus/async/stdexec/__detail/__connect_awaitable.hpp
sdbusplus/async/stdexec/__detail/__continue_on.hpp
sdbusplus/async/stdexec/__detail/__debug.hpp
sdbusplus/async/stdexec/__detail/__domain.hpp
sdbusplus/async/stdexec/__detail/__ensure_started.hpp
sdbusplus/async/stdexec/__detail/__env.hpp
sdbusplus/async/stdexec/__detail/__into_variant.hpp
sdbusplus/async/stdexec/__detail/__intrusive_mpsc_queue.hpp
sdbusplus/async/stdexec/__detail/__intrusive_ptr.hpp
sdbusplus/async/stdexec/__detail/__intrusive_queue.hpp
sdbusplus/async/stdexec/__detail/__just.hpp
sdbusplus/async/stdexec/__detail/__let.hpp
sdbusplus/async/stdexec/__detail/__meta.hpp
sdbusplus/async/stdexec/__detail/__on.hpp
sdbusplus/async/stdexec/__detail/__operation_states.hpp
sdbusplus/async/stdexec/__detail/__read_env.hpp
sdbusplus/async/stdexec/__detail/__receiver_adaptor.hpp
sdbusplus/async/stdexec/__detail/__receivers.hpp
sdbusplus/async/stdexec/__detail/__run_loop.hpp
sdbusplus/async/stdexec/__detail/__schedule_from.hpp
sdbusplus/async/stdexec/__detail/__schedulers.hpp
sdbusplus/async/stdexec/__detail/__scope.hpp
sdbusplus/async/stdexec/__detail/__sender_adaptor_closure.hpp
sdbusplus/async/stdexec/__detail/__senders.hpp
sdbusplus/async/stdexec/__detail/__shared.hpp
sdbusplus/async/stdexec/__detail/__split.hpp
sdbusplus/async/stdexec/__detail/__start_on.hpp
sdbusplus/async/stdexec/__detail/__stop_token.hpp
sdbusplus/async/stdexec/__detail/__stopped_as_error.hpp
sdbusplus/async/stdexec/__detail/__submit.hpp
sdbusplus/async/stdexec/__detail/__sync_wait.hpp
sdbusplus/async/stdexec/__detail/__tag_invoke.hpp
sdbusplus/async/stdexec/__detail/__transfer_just.hpp
sdbusplus/async/stdexec/__detail/__transform_completion_signatures.hpp
sdbusplus/async/stdexec/__detail/__transform_sender.hpp
sdbusplus/async/stdexec/__detail/__tuple.hpp
sdbusplus/async/stdexec/__detail/__upon_stopped.hpp
sdbusplus/async/stdexec/__detail/__when_all.hpp
sdbusplus/async/stdexec/__detail/__with_awaitable_senders.hpp
sdbusplus/async/stdexec/__detail/__write_env.hpp
sdbusplus/async/stdexec/any_sender_of.hpp
sdbusplus/async/stdexec/async_scope.hpp
sdbusplus/async/stdexec/at_coroutine_exit.hpp
sdbusplus/async/stdexec/functional.hpp
sdbusplus/async/stdexec/sequence_senders.hpp
sdbusplus/async/stdexec/stop_token.hpp
sdbusplus/async/stdexec/task.hpp
sdbusplus/async/timer.hpp
sdbusplus/bus.hpp
sdbusplus/message/native_types.hpp
sdbusplus/message/read.hpp
sdbusplus/sdbus.hpp
sdbusplus/timer.hpp
sdbusplus/unpack_properties.hpp
sdbusplus/utility/container_traits.hpp
sdbusplus/utility/type_traits.hpp
sdbusplus/vtable.hpp
/openbmc/sdbusplus/src/async/context.cpp
/openbmc/sdbusplus/src/async/match.cpp
/openbmc/sdbusplus/src/event.cpp
/openbmc/sdbusplus/src/exception.cpp
/openbmc/sdbusplus/src/server/interface.cpp
/openbmc/sdbusplus/test/async/context.cpp
/openbmc/sdbusplus/test/exception/sdbus_error.cpp
/openbmc/sdbusplus/test/message/call.cpp
/openbmc/sdbusplus/test/unpack_properties.cpp
5cee915730-Jul-2024 Patrick Williams <patrick@stwcx.xyz>

stdexec: update to latest commit

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


sdbusplus/async/stdexec/__detail/__as_awaitable.hpp
sdbusplus/async/stdexec/__detail/__awaitable.hpp
sdbusplus/async/stdexec/__detail/__basic_sender.hpp
sdbusplus/async/stdexec/__detail/__bulk.hpp
sdbusplus/async/stdexec/__detail/__completion_signatures.hpp
sdbusplus/async/stdexec/__detail/__concepts.hpp
sdbusplus/async/stdexec/__detail/__config.hpp
sdbusplus/async/stdexec/__detail/__connect_awaitable.hpp
sdbusplus/async/stdexec/__detail/__continue_on.hpp
sdbusplus/async/stdexec/__detail/__cpo.hpp
sdbusplus/async/stdexec/__detail/__debug.hpp
sdbusplus/async/stdexec/__detail/__diagnostics.hpp
sdbusplus/async/stdexec/__detail/__domain.hpp
sdbusplus/async/stdexec/__detail/__ensure_started.hpp
sdbusplus/async/stdexec/__detail/__env.hpp
sdbusplus/async/stdexec/__detail/__execute.hpp
sdbusplus/async/stdexec/__detail/__execution_fwd.hpp
sdbusplus/async/stdexec/__detail/__inline_scheduler.hpp
sdbusplus/async/stdexec/__detail/__into_variant.hpp
sdbusplus/async/stdexec/__detail/__intrusive_mpsc_queue.hpp
sdbusplus/async/stdexec/__detail/__intrusive_ptr.hpp
sdbusplus/async/stdexec/__detail/__intrusive_queue.hpp
sdbusplus/async/stdexec/__detail/__intrusive_slist.hpp
sdbusplus/async/stdexec/__detail/__just.hpp
sdbusplus/async/stdexec/__detail/__let.hpp
sdbusplus/async/stdexec/__detail/__meta.hpp
sdbusplus/async/stdexec/__detail/__on.hpp
sdbusplus/async/stdexec/__detail/__operation_states.hpp
sdbusplus/async/stdexec/__detail/__optional.hpp
sdbusplus/async/stdexec/__detail/__read_env.hpp
sdbusplus/async/stdexec/__detail/__receiver_adaptor.hpp
sdbusplus/async/stdexec/__detail/__receiver_ref.hpp
sdbusplus/async/stdexec/__detail/__receivers.hpp
sdbusplus/async/stdexec/__detail/__run_loop.hpp
sdbusplus/async/stdexec/__detail/__schedule_from.hpp
sdbusplus/async/stdexec/__detail/__schedulers.hpp
sdbusplus/async/stdexec/__detail/__sender_adaptor_closure.hpp
sdbusplus/async/stdexec/__detail/__sender_introspection.hpp
sdbusplus/async/stdexec/__detail/__senders.hpp
sdbusplus/async/stdexec/__detail/__senders_core.hpp
sdbusplus/async/stdexec/__detail/__shared.hpp
sdbusplus/async/stdexec/__detail/__spin_loop_pause.hpp
sdbusplus/async/stdexec/__detail/__split.hpp
sdbusplus/async/stdexec/__detail/__start_detached.hpp
sdbusplus/async/stdexec/__detail/__start_on.hpp
sdbusplus/async/stdexec/__detail/__stop_token.hpp
sdbusplus/async/stdexec/__detail/__stopped_as_error.hpp
sdbusplus/async/stdexec/__detail/__stopped_as_optional.hpp
sdbusplus/async/stdexec/__detail/__submit.hpp
sdbusplus/async/stdexec/__detail/__sync_wait.hpp
sdbusplus/async/stdexec/__detail/__tag_invoke.hpp
sdbusplus/async/stdexec/__detail/__then.hpp
sdbusplus/async/stdexec/__detail/__transfer_just.hpp
sdbusplus/async/stdexec/__detail/__transform_completion_signatures.hpp
sdbusplus/async/stdexec/__detail/__transform_sender.hpp
sdbusplus/async/stdexec/__detail/__tuple.hpp
sdbusplus/async/stdexec/__detail/__type_traits.hpp
sdbusplus/async/stdexec/__detail/__upon_error.hpp
sdbusplus/async/stdexec/__detail/__upon_stopped.hpp
sdbusplus/async/stdexec/__detail/__utility.hpp
sdbusplus/async/stdexec/__detail/__variant.hpp
sdbusplus/async/stdexec/__detail/__when_all.hpp
sdbusplus/async/stdexec/__detail/__with_awaitable_senders.hpp
sdbusplus/async/stdexec/__detail/__write_env.hpp
sdbusplus/async/stdexec/any_sender_of.hpp
sdbusplus/async/stdexec/async_scope.hpp
sdbusplus/async/stdexec/at_coroutine_exit.hpp
sdbusplus/async/stdexec/commit.info
sdbusplus/async/stdexec/concepts.hpp
sdbusplus/async/stdexec/coroutine.hpp
sdbusplus/async/stdexec/env.hpp
sdbusplus/async/stdexec/execution.hpp
sdbusplus/async/stdexec/functional.hpp
sdbusplus/async/stdexec/inline_scheduler.hpp
sdbusplus/async/stdexec/sequence_senders.hpp
sdbusplus/async/stdexec/stop_token.hpp
sdbusplus/async/stdexec/task.hpp
3d00e14530-Jul-2024 Patrick Williams <patrick@stwcx.xyz>

stdexec: ignore unused parameter warning

Upstream stdexec continues to add unused parameter warnings
that are reported by GCC -Wall. Add pragmas to squelch them
so that we don't need to keep chasin

stdexec: ignore unused parameter warning

Upstream stdexec continues to add unused parameter warnings
that are reported by GCC -Wall. Add pragmas to squelch them
so that we don't need to keep chasing these.

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

show more ...

03b2c26c03-Jun-2024 Ed Tanous <etanous@nvidia.com>

Use asio object_server without boost::coroutine

We already support this flag in asio::connection and other places, where
it's used to avoid compatibility issues with boost coroutine v1, which
is a p

Use asio object_server without boost::coroutine

We already support this flag in asio::connection and other places, where
it's used to avoid compatibility issues with boost coroutine v1, which
is a package that isn't widely used, and requires explicitly built
libraries (coroutine and context).

This commit supports the same flag in ASIO object server, for things
like dbus-sensors, which doesn't make use of asio coroutines.

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

show more ...

3baa304517-Jun-2024 Manojkiran Eda <manojkiran.eda@gmail.com>

Fix spelling mistakes using codespell

This commit corrects various spelling mistakes throughout the
repository. The corrections were made automatically using `codespell`[1]
tool.

[1]: https://githu

Fix spelling mistakes using codespell

This commit corrects various spelling mistakes throughout the
repository. The corrections were made automatically using `codespell`[1]
tool.

[1]: https://github.com/codespell-project/codespell

Change-Id: Iab32afe9e86f7f4c18984ad2c7717d7cbfd422bb
Signed-off-by: Manojkiran Eda <manojkiran.eda@gmail.com>

show more ...

1a39b64f12-Apr-2024 Patrick Williams <patrick@stwcx.xyz>

message: handle vector<bool>

Attempting to create a vector of bools resulted in the following
compile error:
```
usr/include/sdbusplus/message/append.hpp:272:9: error: cannot bind non-const lvalue r

message: handle vector<bool>

Attempting to create a vector of bools resulted in the following
compile error:
```
usr/include/sdbusplus/message/append.hpp:272:9: error: cannot bind non-const lvalue reference of type 'std::_Bit_reference&' to an rvalue of type 'std::_Bit_iterator::reference'
```

Most range-for operations for containers operate on a reference to the
value in the container, but `vector<bool>` has a "proxy" due to the
bit-wise optimization required by the standard. Switching from `auto&`
to `auto&&` allows the proxy to be used (an r-value reference) while
also working for the non-proxy case (since `auto&&` will collapse to an
l-value reference).

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

show more ...

6e67588305-Apr-2024 Patrick Williams <patrick@stwcx.xyz>

stdexec: update to later commit

Later commits in stdexec have some compile issues. Update to the
latest one without compile issues, in order to see if a linker issue
reported by another developer i

stdexec: update to later commit

Later commits in stdexec have some compile issues. Update to the
latest one without compile issues, in order to see if a linker issue
reported by another developer is resolved.

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

show more ...

e12a23cc22-Feb-2024 Ed Tanous <ed@tanous.net>

Make code compile on clang-18

To do this requires fixing some minor warnings around templates.

stdexec uses variables of the form __foo to denote variables that aren't
used. This throws some warni

Make code compile on clang-18

To do this requires fixing some minor warnings around templates.

stdexec uses variables of the form __foo to denote variables that aren't
used. This throws some warnings when trying to compile with clang.

Update the meson file to ignore those warnings when we detect clang.

With this change, and clang-18, code now compiles.

Change-Id: I72bc0ab7a818b7913831749b6246f54e7b092e0b
Signed-off-by: Ed Tanous <ed@tanous.net>

show more ...

8723a54212-Feb-2024 Patrick Williams <patrick@stwcx.xyz>

stdexec: update to latest commit

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

c53fe51c06-Feb-2024 Patrick Williams <patrick@stwcx.xyz>

async: context: add request_name method

One area we did a poor job on in the older sync interfaces was signals.
Signals should only be emitted when a name is requested, but we didn't
have a way to t

async: context: add request_name method

One area we did a poor job on in the older sync interfaces was signals.
Signals should only be emitted when a name is requested, but we didn't
have a way to track that. Add a `request_name` method on the async
context so we can track if a name has been requested in the context (for
later use by signal enhancements).

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

show more ...

f2594aa530-Jan-2024 Andrew Jeffery <andrew@codeconstruct.com.au>

match: Add interfaces{Added,Removed}AtPath()

The signature of the InterfacesAdded and InterfacesRemoved signals is
as follows[1]:

```
org.freedesktop.DBus.ObjectManager.InterfacesAdded (OBJPATH obj

match: Add interfaces{Added,Removed}AtPath()

The signature of the InterfacesAdded and InterfacesRemoved signals is
as follows[1]:

```
org.freedesktop.DBus.ObjectManager.InterfacesAdded (OBJPATH object_path,
ARRAY of DICT_ENTRY<STRING,ARRAY of DICT_ENTRY<STRING,VARIANT>> interfaces_and_properties);
org.freedesktop.DBus.ObjectManager.InterfacesRemoved (OBJPATH object_path,
ARRAY<STRING> interfaces);
```

The object path of interest forms the first argument of the signal's
message body, which is distinct the path specified in
the signal's message header. However, the implementation of
sdbusplus::bus::match::rules::interfaces{Added,Removed}() match on the
header's object path. In the case of these signals, the header path is
set to the path of the ObjectManager instance that emitted the signal.
This generally results in a failure to deliver signals expected by the
callers.

Add new functions `interfacesAddedAtPath()` and
`interfacesRemovedAtPath()` that provide matches that are constrained
with `argNpath(0, p)`. These align with the signal signature specified
above. Use of `argNpath()`` allows the caller to specify whether they
wish to match signals from a specific object or a subtree of objects.

Callers of interfacesAdded() providing a path will be migrated on a
case-by-case basis.

[1] https://dbus.freedesktop.org/doc/dbus-specification.html#standard-interfaces

Change-Id: Ie2f5125d45eb2dfe500d181016ccc968dd856b77
Signed-off-by: Andrew Jeffery <andrew@codeconstruct.com.au>

show more ...

1234567891011