* Package name : golang-github-launchdarkly-go-server-sdk
Version : 6.1.0-1
Upstream Author : LaunchDarkly
* URL : https://github.com/launchdarkly/go-server-sdk
* License : Apache-2.0
Programming Lang: Go
Description : LaunchDarkly Server-side SDK for Go
LaunchDarkly Server-side SDK for Go
.
Actions Status (https://github.com/launchdarkly/go-server-
sdk/actions/workflows/ci.yml)
.
LaunchDarkly overview
.
LaunchDarkly (https://www.launchdarkly.com) is a feature management
platform that serves over 100 billion feature flags daily to help teams
build better software, faster. Get started
(https://docs.launchdarkly.com/home/getting-started) using LaunchDarkly
today!
.
Supported Go versions
.
The SDK supports the 'latest' and 'penultimate' Go versions defined in
this file (/.github/variables/go-versions.env).
.
LaunchDarkly intends to keep those versions up-to-date with the Go
project's latest two releases, which represents a support period of
roughly 1 year. This policy is intended to match Go's official Release
Policy (https://go.dev/doc/devel/release): each major Go release is
supported until there are two newer major releases.
.
Additionally, a 'minimum' version is tested in CI but not officially
supported. This minimum version is found in go.mod (/go.mod). This
version may be bumped (/CONTRIBUTING.md#bumping-the-minimum-go-version) from
time to time as new Go features become available that are useful to the
SDK.
.
Getting started
.
Refer to the SDK documentation (https://docs.launchdarkly.com/sdk/server-
side/go#getting-started) for instructions on getting started with using
the SDK.
.
HTTPS proxy
.
There are two ways to specify the use of a proxy server. First, you can
do it programmatically: see ldcomponents.HTTPConfiguration().
.
Second, Go's standard HTTP library also provides built-in support for the
use of an HTTPS proxy via the HTTPS_PROXY environment variable. If this
environment variable is present, then the SDK will proxy all network
requests through the URL provided.
.
How to set the HTTPS_PROXY environment variable on Mac/Linux systems:
.
export HTTPS_PROXY=https://web-proxy.domain.com:8080
.
How to set the HTTPS_PROXY environment variable on Windows systems:
.
set HTTPS_PROXY=https://web-proxy.domain.com:8080
.
If your proxy requires authentication then you can prefix the URN with
your login information:
.
export HTTPS_PROXY=http://user:pass@web-proxy.domain.com:8080
.
or
.
set HTTPS_PROXY=http://user:pass@web-proxy.domain.com:8080
.
Database integrations
.
Feature flag data can be kept in a persistent store using a database
integration; LaunchDarkly provides integrations for several databases,
such as Redis, which are provided in separate packages. See the SDK
reference guide (https://docs.launchdarkly.com/sdk/concepts/data-stores)
for more information.
.
Integration with easyjson
.
The SDK frequently reads and writes JSON data when it communicates with
LaunchDarkly services or uses a persistent data store. By default, it
uses LaunchDarkly's open-source JSON library go-jsonstream
(https://github.com/launchdarkly/go-jsonstream), which is considerably
faster than Go's built-in encoding/json and does not depend on any third-
party code. However, the SDK can optionally integrate with the third-
party library easyjson (https://github.com/mailru/easyjson), which may
be even faster in some cases, without requiring any changes in your
code. To enable this, set the build tag launchdarkly_easyjson when you
run go build. The easyjson library is still under development and has
some potential compatibility issues; see its documentation for more
details.
.
If you do not set the launchdarkly_easyjson build tag, the SDK does not
use any code from easyjson.
.
Learn more
.
Read our documentation (http://docs.launchdarkly.com) for in-depth
instructions on configuring and using LaunchDarkly. You can also head
straight to the complete reference guide for this SDK
(http://docs.launchdarkly.com/docs/go-sdk-reference) or our code-generated
API documentation (https://pkg.go.dev/github.com/launchdarkly/go-server-
sdk/v7).
.
Testing
.
We run integration tests for all our SDKs using a centralized test
harness. This approach gives us the ability to test for consistency
across SDKs, as well as test networking behavior in a long-running
application. These tests cover each method in the SDK, and verify that
event sending, flag evaluation, stream reconnection, and other aspects
of the SDK all behave correctly.
.
Contributing
.
We encourage pull requests and other contributions from the community.
Check out our contributing guidelines (/CONTRIBUTING.md) for
instructions on how to contribute to this SDK.
.
About LaunchDarkly
.
* LaunchDarkly is a continuous delivery platform that provides feature
flags as a service and allows developers to iterate quickly and safely.
We allow you to easily flag your features and manage them from the
LaunchDarkly dashboard. With LaunchDarkly, you can:
* Roll out a new feature to a subset of your users (like a group of
users who opt-in to a beta tester group), gathering feedback and bug
reports from real-world use cases.
* Gradually roll out a feature to an increasing percentage of
users, and track the effect that the feature has on key metrics
(for instance, how likely is a user to complete a purchase if they
have feature A versus feature B?).
* Turn off a feature that you realize is causing performance
problems in production, without needing to re-deploy, or even
restart the application with a changed configuration file.
* Grant access to certain features based on user attributes, like
payment plan (eg: users on the ‘gold’ plan get access to more
features than users in the ‘silver’ plan). Disable parts of your
application to facilitate maintenance, without taking everything
offline.
* LaunchDarkly provides feature flag SDKs for a wide variety of
languages and technologies. Read our documentation
(https://docs.launchdarkly.com/sdk) for a complete list.
* Explore LaunchDarkly
* launchdarkly.com (https://www.launchdarkly.com/) for more
information
* docs.launchdarkly.com (https://docs.launchdarkly.com/) for our
documentation and SDK reference guides
* apidocs.launchdarkly.com (https://apidocs.launchdarkly.com/) for
our API documentation
* blog.launchdarkly.com (https://blog.launchdarkly.com/) for the
latest product updates
Needed by trufflehog (Debian Bug report logs - #1128347)