Skip to content
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

prepare 8.1.3 release #207

Merged
merged 559 commits into from
May 3, 2023
Merged
Show file tree
Hide file tree
Changes from 1 commit
Commits
Show all changes
559 commits
Select commit Hold shift + click to select a range
7745881
Revert "add type hints to some of the public facing api."
apache-hb Sep 28, 2020
43b4c31
Ehaisley/ch86857/type hints (#138)
apache-hb Oct 15, 2020
58b5bc3
remove all current deprecations (#139)
apache-hb Oct 27, 2020
b35ec6e
remove global set_sdk_key, make SDK key required in Config (#140)
eli-darkly Oct 27, 2020
5e3e5c5
Merge branch '6.x' of github.com:launchdarkly/python-server-sdk-private
eli-darkly Oct 28, 2020
3b904f3
merge from public after release
LaunchDarklyCI Oct 28, 2020
eb65618
Merge branch 'master' of github.com:launchdarkly/python-server-sdk
eli-darkly Oct 28, 2020
ebd092d
Merge branch 'master' of github.com:launchdarkly/python-server-sdk
eli-darkly Nov 25, 2020
528dc22
merge from public after release
LaunchDarklyCI Nov 26, 2020
e5f6450
Removed the guides link
bwoskow-ld Feb 3, 2021
4d2e999
Pinning mypy and running it against different python versions (#141)
bwoskow-ld Feb 5, 2021
1cc83f5
fix time zone mishandling that could make event debugging not work (#…
eli-darkly Feb 19, 2021
dc955d3
merge from public after release
LaunchDarklyCI Feb 19, 2021
5fa5966
fix 6.x build (#143)
eli-darkly Feb 23, 2021
c9d6ec6
fix time zone mishandling that could make event debugging not work (6…
eli-darkly Feb 23, 2021
f9ce3b9
prepare 6.13.3 release (#154)
LaunchDarklyCI Feb 23, 2021
953c126
Releasing version 6.13.3
LaunchDarklyCI Feb 23, 2021
faec38d
merge from public after release
LaunchDarklyCI Feb 23, 2021
b740df9
Merge branch '6.x'
eli-darkly Feb 24, 2021
532a01b
[ch99756] Add alias events (#145)
hroederld Mar 11, 2021
35227bf
merge from public after release
LaunchDarklyCI Mar 12, 2021
8c327d0
add support for experiment rollouts
robertjneal Apr 29, 2021
31c1c21
fix unit test
robertjneal Apr 29, 2021
f52ab39
address PR comments
robertjneal May 6, 2021
15f9a97
Merge pull request #146 from launchdarkly/rneal/ch101662/add-support-…
robertjneal May 11, 2021
741a076
merge from public after release
LaunchDarklyCI Jun 17, 2021
527f366
use Releaser v2 config
eli-darkly Sep 21, 2021
d2528ed
Use newer docker images (#147)
bwoskow-ld Sep 22, 2021
8852138
Merge pull request #148 from launchdarkly/eb/ch118712/releaser-v2
eli-darkly Sep 23, 2021
666e5f0
Updates docs URLs
ember-stevens Sep 24, 2021
1db3507
Merge pull request #149 from launchdarkly/emberstevens/sc-118589/url-…
ember-stevens Sep 27, 2021
3286623
Add support for 3.10 (#150)
keelerm84 Oct 6, 2021
3a64bf6
started work on FlagBuilder in as part of test data source implementa…
charukiewicz Nov 22, 2021
dd7561e
finished FlagBuilder implementation and added FlagRuleBuilder impleme…
charukiewicz Nov 23, 2021
b3bd9b4
added initial TestData interface and updated tests to not rely on tes…
charukiewicz Nov 24, 2021
bd87ace
started data source implementation
charukiewicz Nov 30, 2021
fb4aeaf
changed FlagBuilder to public class; changed FlagBuilder attributes t…
charukiewicz Nov 30, 2021
eaa8b04
Merge branch 'cc/sc-130602/test-data-flag-builder' into cc/sc-130602/…
charukiewicz Nov 30, 2021
633669a
(big segments 1) add public config/interface types
eli-darkly Nov 30, 2021
3f624ba
added implementation of test data source
charukiewicz Nov 30, 2021
4ee49e0
docstring
eli-darkly Nov 30, 2021
06a62d3
formatting
eli-darkly Nov 30, 2021
8eb95e1
ensure property doesn't return None
eli-darkly Nov 30, 2021
be01431
(big segments 2) implement evaluation, refactor eval logic & modules
eli-darkly Dec 1, 2021
7fc6fed
linting
eli-darkly Dec 1, 2021
3812412
(big segments 3) implement big segment status tracking, wire up compo…
eli-darkly Dec 2, 2021
b5d9616
typing fixes
eli-darkly Dec 2, 2021
5e75442
typing fixes
eli-darkly Dec 2, 2021
104b7ef
Merge pull request #152 from launchdarkly/eb/sc-132580/big-seg-1-types
eli-darkly Dec 2, 2021
43c01c2
Merge pull request #154 from launchdarkly/eb/sc-132580/big-seg-2-impl
eli-darkly Dec 2, 2021
7439e1f
implement SSE contract tests
eli-darkly Dec 2, 2021
e67d915
fix CI
eli-darkly Dec 2, 2021
38d15c9
fix CI again
eli-darkly Dec 2, 2021
fb93d87
fix CI
eli-darkly Dec 2, 2021
2cd71a6
disable SSE tests in Python 3.5
eli-darkly Dec 2, 2021
aa24aac
make test service port configurable
eli-darkly Dec 2, 2021
9414b33
better SSE implementation that fixes linefeed and multi-byte char issues
eli-darkly Dec 3, 2021
3588db7
fix constructor parameters in test service
eli-darkly Dec 3, 2021
8efc7bf
comment
eli-darkly Dec 3, 2021
7fdd3b3
test improvements
eli-darkly Dec 3, 2021
707fbcb
Merge pull request #155 from launchdarkly/eb/sc-132580/big-seg-3-impl
eli-darkly Dec 3, 2021
e76aef1
rm obsolete default config logic
eli-darkly Dec 3, 2021
fd1e067
Merge pull request #157 from launchdarkly/eb/sc-133195+sc-133324/bett…
eli-darkly Dec 3, 2021
7c986d6
Merge pull request #156 from launchdarkly/eb/sc-125613/sse-contract-t…
eli-darkly Dec 3, 2021
9073e54
merge from public after release
Dec 4, 2021
6657474
(big segments 4) implement big segment stores in Redis+DynamoDB, refa…
eli-darkly Dec 6, 2021
c567777
converted ldclient.integrations module from file to directory; starte…
charukiewicz Dec 6, 2021
3156801
removed setup/teardown functions leftover from test scaffold
charukiewicz Dec 6, 2021
fa7d0f5
Merge pull request #151 from launchdarkly/cc/sc-130602/test-data-flag…
charukiewicz Dec 7, 2021
8abe007
added TestData, FlagBuilder, and FlagRuleBuilder documentation; minor…
charukiewicz Dec 7, 2021
9dd064e
removed warning supression from TestData tests
charukiewicz Dec 7, 2021
86e4038
fix big segments user hash algorithm to use SHA256
eli-darkly Dec 8, 2021
7e8da3d
Merge branch 'master' into big-segments
eli-darkly Dec 8, 2021
a73c4c1
Merge branch 'big-segments' into eb/sc-132580/big-seg-sha256
eli-darkly Dec 8, 2021
9a4981e
update mypy version
eli-darkly Dec 8, 2021
4fbf338
Merge pull request #161 from launchdarkly/eb/sc-134071/mypy-version
eli-darkly Dec 8, 2021
30c3974
Merge branch 'master' into test-data
eli-darkly Dec 8, 2021
c0481f5
Merge branch 'master' into big-segments
eli-darkly Dec 8, 2021
f7d58c0
Merge branch 'big-segments' into eb/sc-132580/big-seg-sha256
eli-darkly Dec 8, 2021
8d56a51
updates to tests and related bug fixes
charukiewicz Dec 8, 2021
a16e744
Merge branch 'test-data' into cc/sc-130602/test-data-datasource
eli-darkly Dec 9, 2021
4cff3b1
Merge branch 'cc/sc-130602/test-data-datasource' into cc/sc-130602/te…
eli-darkly Dec 9, 2021
ecbe95d
always cache Big Segment query result even if it's None
eli-darkly Dec 9, 2021
489f1e7
fix test assertion
eli-darkly Dec 9, 2021
c524e7e
lint
eli-darkly Dec 9, 2021
f8e95bf
fix big segment ref format
eli-darkly Dec 9, 2021
c1d6548
fix big segments cache TTL being set to wrong value
eli-darkly Dec 9, 2021
8f9795e
Merge pull request #160 from launchdarkly/eb/sc-132580/big-seg-sha256
eli-darkly Dec 9, 2021
5f9b501
Merge pull request #162 from launchdarkly/eb/sc-132580/big-seg-cache-…
eli-darkly Dec 9, 2021
0bc07d0
Merge pull request #153 from launchdarkly/cc/sc-130602/test-data-data…
charukiewicz Dec 9, 2021
d593ade
fixed structure of fallthrough variation in result of FlagBuilder.bui…
charukiewicz Dec 9, 2021
b07015d
Merge branch 'cc/sc-130602/test-data-docs' of github.com:launchdarkly…
charukiewicz Dec 9, 2021
45f1e23
moved __test__ attribute into TestData class definition to prevent my…
charukiewicz Dec 9, 2021
5f12700
minor doc comment fix
eli-darkly Dec 10, 2021
5970c04
merge from public after release
Dec 10, 2021
ac75a6d
Merge branch 'master' of github.com:launchdarkly/python-server-sdk
eli-darkly Dec 10, 2021
f06bcae
Merge branch 'master' into test-data
eli-darkly Dec 11, 2021
b5a1342
Merge branch 'test-data' into cc/sc-130602/test-data-docs
eli-darkly Dec 11, 2021
3b1d740
Apply suggestions related to Sphinx docstring formatting from code re…
charukiewicz Dec 13, 2021
f40c7a0
Merge pull request #159 from launchdarkly/cc/sc-130602/test-data-docs
charukiewicz Dec 29, 2021
3baa843
fixed errors in the implementation of FlagBuilder's fallthrough_varia…
charukiewicz Jan 14, 2022
9d49fef
added missing value_for_all_users() method to FlagBuilder class
charukiewicz Jan 24, 2022
d235047
Fix operator parsing errors (#169)
keelerm84 Jan 27, 2022
8171136
identify should not emit event if user key is empty (#164)
keelerm84 Jan 27, 2022
5c1ce47
secondary should be treated as built-in attribute (#168)
keelerm84 Jan 27, 2022
926f94f
URIs should have trailing slashes trimmed (#165)
keelerm84 Jan 27, 2022
387d7ba
all_flags_state should always include flag version (#166)
keelerm84 Jan 27, 2022
515a05e
output event should not include a null prereqOf key (#167)
keelerm84 Jan 27, 2022
de66bc7
Merge pull request #163 from launchdarkly/cc/sc-130602/test-data-bool…
charukiewicz Feb 2, 2022
e22d5ee
Account for traffic allocation on all flags (#171)
keelerm84 Feb 3, 2022
3e1613e
Add SDK contract tests (#170)
keelerm84 Feb 3, 2022
26f7ec9
Merge branch 'master' of github.com:launchdarkly/python-server-sdk
eli-darkly Feb 14, 2022
a8b1404
Merge branch 'master' into test-data
eli-darkly Feb 14, 2022
175697b
misc fixes to test data docs + add type hints
eli-darkly Feb 14, 2022
787c715
more type hints
eli-darkly Feb 14, 2022
65e733d
remove some methods from the public test_data API
eli-darkly Feb 14, 2022
23f066c
can't use "x|y" shortcut in typehints in older Pythons; use Union
eli-darkly Feb 14, 2022
063752a
fix misc type mistakes because I forgot to run the linter
eli-darkly Feb 14, 2022
cd39e1c
Merge pull request #172 from launchdarkly/eb/sc-130602/test-data-docs…
eli-darkly Feb 14, 2022
db63930
Merge branch 'test-data' into eb/sc-130602/test-data-private-methods
eli-darkly Feb 14, 2022
3be9135
Merge pull request #173 from launchdarkly/eb/sc-130602/test-data-priv…
eli-darkly Feb 14, 2022
941b858
merge from public after release
Feb 14, 2022
4f6f6cf
update CONTRIBUTING.md and provide make targets
eli-darkly Feb 14, 2022
8ba0eeb
Merge branch 'test-data'
eli-darkly Feb 15, 2022
85bf5a2
Merge pull request #174 from launchdarkly/eb/sc-132599/coding-guidelines
eli-darkly Feb 16, 2022
394982f
merge from public after release
Feb 16, 2022
9c152c3
fixed a bug with flag rule clause builder internals; added unit test …
charukiewicz Mar 15, 2022
2d5744b
added ready argument to _TestDataSource class and indicated ready upo…
charukiewicz Mar 15, 2022
1f21ca5
Update contract tests to latest flask version (#176)
keelerm84 Mar 16, 2022
fb9494b
Merge branch 'master' into cc/sc-130602/test-data-flag-rule-builder-o…
charukiewicz Mar 16, 2022
dc35497
Merge pull request #175 from launchdarkly/cc/sc-130602/test-data-flag…
charukiewicz Mar 16, 2022
fd06213
Merge branch 'master' into private-master
keelerm84 Apr 19, 2022
58d8af7
Adds link to Relay Proxy docs
ember-stevens Apr 19, 2022
5c5a3e8
Handle explicit None values in test payload (#179)
keelerm84 Apr 20, 2022
c984111
Fix "unhandled response" error in test harness (#180)
keelerm84 Apr 20, 2022
0ce9153
Exclude booleans when getting bucketable value (#181)
keelerm84 Apr 20, 2022
ac7fa2e
merge from public after release
Apr 22, 2022
b354bb3
Merge pull request #177 from launchdarkly/emberstevens/sc-150321/stan…
ember-stevens Apr 28, 2022
443e0a6
master -> main (#182)
keelerm84 May 6, 2022
d3eb286
Loosen restriction on expiringdict (#183)
keelerm84 Jun 15, 2022
4ad2f11
Merge branch 'main' into private-main
keelerm84 Jun 15, 2022
b56b52d
merge from public after release
Jun 16, 2022
0b70f67
Fix mypy type checking (#184)
keelerm84 Jun 22, 2022
d42e600
Add support for extra Redis connection parameters (#185)
keelerm84 Jun 29, 2022
a499f2d
merge from public after release
Jul 1, 2022
707dd6f
Include wheel artifact when publishing package (#186)
keelerm84 Sep 23, 2022
1c37c15
merge from public after release
Sep 29, 2022
435e5a0
remove warn-level logging done for every Big Segments query
eli-darkly Dec 9, 2022
228123a
skip tests that use a self-signed TLS cert in Python 3.7
eli-darkly Dec 9, 2022
e265272
Merge branch 'eb/sc-180055/https-tests' into eb/sc-180058/warn-logging
eli-darkly Dec 9, 2022
09d8b96
(U2C 1) drop EOL Python versions (#189)
eli-darkly Dec 9, 2022
d068fdb
(U2C 2) remove alias event functionality (#187)
eli-darkly Dec 9, 2022
8f9c22a
(U2C 3) remove inline users in events (#188)
eli-darkly Dec 9, 2022
fb544cd
(U2C 4) remove deprecated things (#192)
eli-darkly Dec 9, 2022
6e1b477
Merge pull request #191 from launchdarkly/eb/sc-180055/https-tests
eli-darkly Dec 9, 2022
a9525e0
remove warn-level logging done for every Big Segments query (#190)
eli-darkly Dec 9, 2022
4f7f169
Merge branch 'main' into 8.0
eli-darkly Dec 9, 2022
e9daa49
implement context model
eli-darkly Dec 9, 2022
f3933c1
fix exports
eli-darkly Dec 9, 2022
ae66589
specify exports
eli-darkly Dec 9, 2022
e54e5e7
add copy constructor
eli-darkly Dec 9, 2022
3757a4a
minimal changes for SDK methods & evaluator to accept Context
eli-darkly Dec 9, 2022
f49f33c
update tests, add subscript method
eli-darkly Dec 9, 2022
980ace0
lint
eli-darkly Dec 9, 2022
cbb491c
in type hints, must use Dict[A, B] rather than dict[A, B] for Python …
eli-darkly Dec 9, 2022
67f18ae
support context kind in clauses + enable v2 contract tests
eli-darkly Dec 10, 2022
e925cdd
misc fixes
eli-darkly Dec 10, 2022
69ebd7e
Merge branch 'eb/sc-180147/context-1' into eb/sc-180147/context-2-client
eli-darkly Dec 10, 2022
0ccecc2
misc fixes
eli-darkly Dec 10, 2022
4885b18
Merge branch 'eb/sc-180147/context-2-client' into eb/sc-180187/eval-1…
eli-darkly Dec 10, 2022
16e0efd
support contextTargets
eli-darkly Dec 10, 2022
38d885e
support contextKind in rollouts/experiments
eli-darkly Dec 10, 2022
9a1f932
support includedContexts/excludedContexts in segment
eli-darkly Dec 10, 2022
213f656
comment copyedit
eli-darkly Dec 12, 2022
b07a8e4
comment fixes
eli-darkly Dec 12, 2022
51e626d
rm unused
eli-darkly Dec 12, 2022
1a6ed30
fix create_multi to support flattening
eli-darkly Dec 12, 2022
6e716c7
lint
eli-darkly Dec 12, 2022
7c2357c
Merge branch 'eb/sc-180147/context-1' into eb/sc-180147/context-2-client
eli-darkly Dec 12, 2022
e69640a
Merge pull request #194 from launchdarkly/eb/sc-180147/context-2-client
eli-darkly Dec 12, 2022
7ae9528
use custom classes for flag/segment data model
eli-darkly Dec 13, 2022
2b01775
use store adapter for safety
eli-darkly Dec 13, 2022
329e33d
misc cleanup
eli-darkly Dec 13, 2022
e0f414c
misc fixes for persistent stores
eli-darkly Dec 13, 2022
e4a478c
more database store fixes
eli-darkly Dec 13, 2022
ea414b6
Merge pull request #193 from launchdarkly/eb/sc-180147/context-1
eli-darkly Dec 13, 2022
dca671f
Merge pull request #195 from launchdarkly/eb/sc-180187/eval-1-clause
eli-darkly Dec 13, 2022
2bf0828
Merge pull request #196 from launchdarkly/eb/sc-180187/eval-2-targets
eli-darkly Dec 13, 2022
65f50c6
Merge pull request #197 from launchdarkly/eb/sc-180187/eval-3-bucketing
eli-darkly Dec 13, 2022
56d1c6f
support attribute reference lookups in evaluations
eli-darkly Dec 13, 2022
396e914
pass logger from client
eli-darkly Dec 13, 2022
364e2eb
Merge pull request #198 from launchdarkly/eb/sc-180187/eval-4-segment…
eli-darkly Dec 20, 2022
5cc102f
Merge pull request #199 from launchdarkly/eb/sc-180417/model-classes
eli-darkly Dec 20, 2022
82ffbae
Merge pull request #200 from launchdarkly/eb/sc-180187/eval-5-attr-ref
eli-darkly Dec 20, 2022
4f8b435
context kind logic for big segments + enable big segment contract tests
eli-darkly Dec 21, 2022
ed76551
formatting fixes + test cleanup
eli-darkly Dec 21, 2022
4a53780
prerequisite cycle detection
eli-darkly Dec 21, 2022
2f2363c
segment recursion
eli-darkly Dec 21, 2022
8e0108d
define custom classes for event data
eli-darkly Dec 21, 2022
b5ba0cb
add module init file
eli-darkly Dec 21, 2022
39e3ad1
linting
eli-darkly Dec 21, 2022
700e5f7
Merge pull request #201 from launchdarkly/eb/sc-180187/eval-6-big-seg…
eli-darkly Dec 21, 2022
a6b9f05
fix prereq stack logic
eli-darkly Dec 21, 2022
bce65f0
Merge pull request #202 from launchdarkly/eb/sc-180515/prereq-cycle
eli-darkly Dec 21, 2022
f808ae5
Merge pull request #203 from launchdarkly/eb/sc-180516/segment-recursion
eli-darkly Dec 21, 2022
35bd2d3
Merge pull request #204 from launchdarkly/eb/sc-181468/event-types
eli-darkly Dec 21, 2022
42af25a
(U2C 17) U2C changes for events, not including private attributes (#205)
eli-darkly Dec 21, 2022
56f4492
private attribute redaction
eli-darkly Dec 21, 2022
b7a0ba4
Merge pull request #206 from launchdarkly/eb/sc-180514/events-2-private
eli-darkly Dec 21, 2022
49cd88a
move a lot of code out of top-level modules
eli-darkly Dec 22, 2022
66afd97
TestData changes for contexts
eli-darkly Dec 23, 2022
b4044a6
Merge pull request #207 from launchdarkly/eb/sc-181476/move-impl
eli-darkly Dec 23, 2022
52297a3
Merge pull request #208 from launchdarkly/eb/sc-180517/test-data-u2c
eli-darkly Dec 23, 2022
afef6a4
general doc comment fixes for 8.0
eli-darkly Dec 23, 2022
db889df
U2C configuration updates
eli-darkly Dec 24, 2022
1804f17
Merge pull request #209 from launchdarkly/eb/sc-181675/doc-comments
eli-darkly Dec 28, 2022
37f2264
Merge pull request #210 from launchdarkly/eb/sc-181704/config-updates
eli-darkly Dec 28, 2022
a0ced67
update release metadata
eli-darkly Dec 28, 2022
404dea2
Merge branch '8.0'
eli-darkly Dec 28, 2022
0fe3f30
store flag/segment target lists as sets
eli-darkly Dec 28, 2022
62c81f4
fix type hint
eli-darkly Dec 28, 2022
bef4110
preprocess clause values for time/regex/semver operators
eli-darkly Dec 28, 2022
c8ace12
Merge pull request #211 from launchdarkly/eb/sc-181822/preprocess-tar…
eli-darkly Dec 29, 2022
48fac41
fix type checking for matches operator
eli-darkly Dec 29, 2022
f52b82c
Merge pull request #212 from launchdarkly/eb/sc-181822/preprocess-values
eli-darkly Dec 29, 2022
7b7eee4
merge from public after release
Dec 30, 2022
9b60963
Add application info support (#214)
keelerm84 Jan 17, 2023
885eeb9
Add application info support (#214) (#215)
keelerm84 Jan 20, 2023
60049c8
Upgrade pip to fix failing CI build (#216)
keelerm84 Jan 30, 2023
c06f80f
prepare 7.6.0 release (#192)
LaunchDarklyReleaseBot Jan 31, 2023
18f62be
Releasing version 7.6.0
Jan 31, 2023
2389298
merge from public after release
Jan 31, 2023
c6072bf
Merge branch '7.x' into merge-7.x-forward
keelerm84 Jan 31, 2023
c115f5c
Merge branch 'main' into private-main
keelerm84 Jan 31, 2023
76c4d96
Fix double spaces in changelog (#217)
keelerm84 Feb 6, 2023
f219621
Merge branch '7.x'
keelerm84 Feb 6, 2023
966f75e
Fix unsafe access to flag's trackEvents field (#218)
keelerm84 Feb 6, 2023
0121ddb
prepare 7.6.1 release (#195)
LaunchDarklyReleaseBot Feb 7, 2023
88eca59
Releasing version 7.6.1
Feb 7, 2023
9f377c9
merge from public after release
Feb 7, 2023
a6664c5
Merge branch '7.x'
keelerm84 Feb 7, 2023
13b5d98
Merge branch 'main' into private-main
keelerm84 Feb 10, 2023
e99c188
docs: Fix sphinx documentation failures (#219)
keelerm84 Feb 17, 2023
eee1bb2
Fix documentation generation (#197) (#220)
keelerm84 Mar 10, 2023
5e261b5
Merge branch 'main' of github.com:launchdarkly/python-server-sdk
louis-launchdarkly Mar 23, 2023
2da73b5
Merge branch 'main' of github.com:launchdarkly/python-server-sdk
louis-launchdarkly Apr 11, 2023
0f4c004
fix: Restrict urllib to <2.0.0 (#202)
prpnmac Apr 28, 2023
5b87977
merge from public after release
May 1, 2023
37287c0
ci: Generate coverage as part of standard CI (#222)
keelerm84 May 2, 2023
89297cb
Merge branch 'main' into private-main
keelerm84 May 3, 2023
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Prev Previous commit
Next Next commit
store flag/segment target lists as sets
  • Loading branch information
eli-darkly committed Dec 28, 2022
commit 0fe3f307ba050e0cfbdeb8d745453281e18831a4
6 changes: 3 additions & 3 deletions ldclient/impl/model/feature_flag.py
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
from typing import Any, List, Optional
from typing import Any, List, Optional, Set

from ldclient.impl.model.clause import Clause
from ldclient.impl.model.entity import *
Expand Down Expand Up @@ -27,7 +27,7 @@ class Target:
def __init__(self, data: dict):
self._context_kind = opt_str(data, 'contextKind')
self._variation = req_int(data, 'variation')
self._values = req_str_list(data, 'values')
self._values = set(req_str_list(data, 'values'))

@property
def context_kind(self) -> Optional[str]:
Expand All @@ -38,7 +38,7 @@ def variation(self) -> int:
return self._variation

@property
def values(self) -> List[str]:
def values(self) -> Set[str]:
return self._values


Expand Down
14 changes: 7 additions & 7 deletions ldclient/impl/model/segment.py
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
from typing import Any, List, Optional
from typing import Any, List, Optional, Set

from ldclient.impl.model.attribute_ref import AttributeRef, opt_attr_ref_with_opt_context_kind
from ldclient.impl.model.clause import Clause
Expand All @@ -10,14 +10,14 @@ class SegmentTarget:

def __init__(self, data: dict, logger = None):
self._context_kind = opt_str(data, 'contextKind')
self._values = req_str_list(data, 'values')
self._values = set(req_str_list(data, 'values'))

@property
def context_kind(self) -> Optional[str]:
return self._context_kind

@property
def values(self) -> List[str]:
def values(self) -> Set[str]:
return self._values


Expand Down Expand Up @@ -63,8 +63,8 @@ def __init__(self, data: dict):
self._deleted = opt_bool(data, 'deleted')
if self._deleted:
return
self._included = opt_str_list(data, 'included')
self._excluded = opt_str_list(data, 'excluded')
self._included = set(opt_str_list(data, 'included'))
self._excluded = set(opt_str_list(data, 'excluded'))
self._included_contexts = list(SegmentTarget(item) for item in opt_dict_list(data, 'includedContexts'))
self._excluded_contexts = list(SegmentTarget(item) for item in opt_dict_list(data, 'excludedContexts'))
self._rules = list(SegmentRule(item) for item in opt_dict_list(data, 'rules'))
Expand All @@ -86,11 +86,11 @@ def deleted(self) -> bool:
return self._deleted

@property
def included(self) -> List[str]:
def included(self) -> Set[str]:
return self._included

@property
def excluded(self) -> List[str]:
def excluded(self) -> Set[str]:
return self._excluded

@property
Expand Down