Skip to content

C/C++: client publishing support #287

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

Merged
merged 23 commits into from
Mar 19, 2025

Conversation

jtbandes
Copy link
Member

@jtbandes jtbandes commented Mar 14, 2025

Changelog

C/C++: added callbacks for client advertise, publish, and unadvertise

Docs

None

Description

Depends on #286

Ran into some annoyances with exposing the capability flags with cbindgen...let me know if you have any better ideas!

Copy link

linear bot commented Mar 14, 2025

Base automatically changed from jacob/client-channel-callback to main March 14, 2025 22:05
@jtbandes jtbandes marked this pull request as ready for review March 17, 2025 23:09
@jtbandes jtbandes requested review from eloff, bryfox and gasmith March 17, 2025 23:09
Copy link
Contributor

@gasmith gasmith left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'm probably not the most qualified person to review the C++, but this change looks good to me.

Copy link
Contributor

@eloff eloff left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good, left some comments that don't need to be addressed

const char *FOXGLOVE_NONNULL encoding;
const char *FOXGLOVE_NONNULL schema_name;
const char *schema_encoding;
const void *schema;
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Do people use void * in C instead of byte * ?

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

As far as I know C doesn't have a byte type (only C++ has std::byte) - so yes. As one example, memcpy is

void *memcpy(void *restrict dst, const void *restrict src, size_t n);

@jtbandes jtbandes merged commit 61e514c into main Mar 19, 2025
38 checks passed
@jtbandes jtbandes deleted the jacob/fg-10762-cc-client-publishing-support branch March 19, 2025 17:02
jtbandes added a commit that referenced this pull request Mar 20, 2025
### Changelog
None

### Docs

None

### Description

I meant to include this in #287, but forgot to actually push the last
commit before merging...
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Development

Successfully merging this pull request may close these issues.

3 participants