This repository was archived by the owner on Dec 6, 2024. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 7
prepare 2.7.2 release #56
Merged
Merged
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
…on test store creation
…tion -> replacementcollectionitem
* Fix AllFlagsState behavior when flag fails to evaluate Do not add invalid flags to the AllFlagsState object. Instead, skip them, like the AllFlags function. This commit also ports over the AllFlags unit tests to AllFlagsState. * Re-generate test harness suppressions file.
* Implement TestData data source integration Co-authored-by: Ben Levy <benjaminlevy007@gmail.com>
* Implement service-endpoints capability for contract tests * Add events/disabling/* to testharness-suppressions These are expected to fail, since the SDK in fact does not implement this feature.
…164) * Refactored EventProcessor's APIs for better clarity; made it an opaque struct; added documentation
* Implement disabling analytic events
LaunchDarkly services expect milliseconds in JSON to be representable by an integer. Right now that's not the case, since calls to timespec divide the nanosecond value by 1e6. Update the getUnixMilliseconds API to return whole numbers.
* Do not generate identify events for users with empty keys
* Remove new payload ID test from suppressions * Add new test failures from 1.6.0 contract test release
…172) * Update c-sdk-common subtree * Rename master->main in PR template
…169) * Use wall time instead of monotonic in EventProcessor EventProcessor was previously configured with a monotonic timestamp for lastUserKeyFlush when it was constructed. On Mac, this uses the system boot clock. This caused user keys to be incorrectly flushed the first time maybeMakeIndexEvent was called, since the expression "now [wall time] > [computations involving monotonic time]" always evaluates to true. Once the cache is cleared, lastUserKeyFlush is assigned to the wall time, which allows the logic to work correctly for subsequent maybeMakeIndexEvents, since now the time quantities are measured from the same domain. * Introducing the new LDTimestamp and LDTimer data types, making clear where wall time or monotonic time is used. * Remove suppression for redundant index event * Pin SDK test harness version so that fixing the suppressions is not a moving target
Unsigned int is not large enough to store millisecond precision timestamps! (Which right now, are about 1.6 trillion ms.)
* releaser: modify build.sh to output a 'file manifest' for comparison between builds This manifest can be used to compare a build to a previous build, in order to validate any assumptions about what headers and library files are installed by 'make install'. * circleci: stop using sourceforge mirror for downloading Windows pcre dependency The existing mirror disappeared. We can use sourceforge's download URL instead of a direct mirror, as long as the -UserAgent "NativeHost" flag is passed to the Invoke-WebRequest commandlet (otherwise it downloads a web page.)
* cmake: Fetch most 3rd party libraries via FetchContent, and delete sources from repo. * cmake: remove unused base64 lib * Update Release CircleCI image to ld-c-sdk-ubunut:3 to pull in newer cmake * Update README with basic CMake integration instructions
Building 3rd party dependencies as object libraries allows for their inclusion directly in the ldserverapi target sources. This will produce a single release artifact as was previously the case before the 2.7.0 release, which started linking the 3rd party dependencies as static libraries. Linking against 3rd party dependencies as static libs "works" only for external projects that use this project's CMake targets; it doesn't work if the static lib release artifact is directly consumed. This is because target_link_libraries, when used on a static target with static dependency, does not actually "link" the file, but only forms a logical link on the CMake target. This change physically includes the 3rd party dependencies directly into ldserverapi's source as was previously the case.
….h (#187) Extract the SDK's version (set by Releaser) into the cmake variable PROJECT_VERSION. The configuration step now writes out the variable as a status message. This is setting the stage for future changes to write a package config file containing this version.
* Allow for unrecognized patch paths in SSE events The SDK treats patch paths that aren't for '/segments/' or '/flags/' as an error. They should instead be ignored to allow for future expansion of the spec. This commit introduces a new ParsePathStatus status code for the LDi_parsePath function, allowing callers to discriminate between a failure to parse the path, vs a failure because the path was recognised. * Update unit tests to allow for unrecognized paths in patch data
kinyoklion
approved these changes
Jul 7, 2022
Sign up for free
to subscribe to this conversation on GitHub.
Already have an account?
Sign in.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
[2.7.2] - 2022-07-07
Added:
Fixed: