Skip to content
This repository was archived by the owner on Dec 6, 2024. It is now read-only.

Commit c6a2d88

Browse files
authored
Bump c-sdk-common & add cmake project test for C++ projects (#218)
* Squashed 'c-sdk-common/' changes from 0b7ed7f2..2838fe5b 2838fe5b Make LDValue symbols visible (#25) fd393136 Add LDValue C++ bindings, use in tests (#23) ff6271bc Add valgrind memory leak checker to CI (#24) git-subtree-dir: c-sdk-common git-subtree-split: 2838fe5b2bfd7373a58009f79003ad147d1d1637 * Add cmake project test for C++ projects
1 parent e411447 commit c6a2d88

File tree

13 files changed

+764
-439
lines changed

13 files changed

+764
-439
lines changed

c-sdk-common/.circleci/config.yml

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,9 @@ workflows:
88
build_and_test_all:
99
jobs:
1010
- build-test-linux
11+
- build-test-linux-valgrind:
12+
requires:
13+
- build-test-linux
1114
- build-test-osx
1215
- build-test-windows
1316

@@ -27,6 +30,23 @@ jobs:
2730
name: Test
2831
command: cd build && GTEST_OUTPUT="xml:$(pwd)/.../reports/" make test
2932

33+
build-test-linux-valgrind:
34+
docker:
35+
- image: ldcircleci/ld-c-sdk-ubuntu # defined in sdks-ci-docker project
36+
steps:
37+
- checkout
38+
- run:
39+
name: Install prerequisites
40+
command: apt-get update -y && apt-get install -y git
41+
- run:
42+
name: Build
43+
command: mkdir -p build && cd build && cmake .. && make
44+
- run:
45+
name: Test with valgrind
46+
command: |
47+
cd build && make test
48+
valgrind --error-exitcode=100 --leak-check=full ./tests/google_tests
49+
3050
build-test-osx:
3151
macos:
3252
xcode: "12.5.1"

c-sdk-common/README.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,3 +5,8 @@ Shared components for `c-server-sdk`, and `c-client-sdk`. This repository is *pr
55
## Updating
66

77
A git subtree is not automatically updated. From either the `c-client-sdk` or `c-server-sdk` repository run: `git subtree pull --prefix c-sdk-common git@github.com:launchdarkly/c-sdk-common.git main --squash`.
8+
9+
## Headers
10+
11+
All headers live in the `include` directory. Experimental APIs that aren't intended for semver should
12+
live in the `include/launchdarkly/experimental` subdirectory.
Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
## Experimental
2+
3+
This directory serves as a home for experimental APIs, which may or may not graduate into the public
4+
`include` directory.
5+
6+
Headers in this directory may be added or removed at any time, and are not guaranteed to follow
7+
any semantic versioning constraints.
8+
9+
This means breaking changes may occur within any release.
10+
**Use at your own risk.**
11+
12+
Once an experimental API proves to be valuable and stable, it may be promoted to the public `include` directory.

0 commit comments

Comments
 (0)