Skip to content

Commit 2a14639

Browse files
committed
Small cleanup
1 parent 93fab79 commit 2a14639

File tree

7 files changed

+31
-51
lines changed

7 files changed

+31
-51
lines changed

key-value/key-value-aio/src/key_value/aio/stores/elasticsearch/store.py

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,6 @@
1111
AlwaysHashStrategy,
1212
HashFragmentMode,
1313
HybridSanitizationStrategy,
14-
PassthroughStrategy,
1514
SanitizationStrategy,
1615
)
1716
from key_value.shared.utils.sanitize import (
@@ -245,8 +244,8 @@ def __init__(
245244

246245
super().__init__(
247246
default_collection=default_collection,
248-
collection_sanitization_strategy=collection_sanitization_strategy or PassthroughStrategy(),
249-
key_sanitization_strategy=key_sanitization_strategy or PassthroughStrategy(),
247+
collection_sanitization_strategy=collection_sanitization_strategy,
248+
key_sanitization_strategy=key_sanitization_strategy,
250249
)
251250

252251
@override

key-value/key-value-aio/src/key_value/aio/stores/keyring/store.py

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22

33
from key_value.shared.utils.compound import compound_key
44
from key_value.shared.utils.managed_entry import ManagedEntry
5-
from key_value.shared.utils.sanitization import HybridSanitizationStrategy, PassthroughStrategy, SanitizationStrategy
5+
from key_value.shared.utils.sanitization import HybridSanitizationStrategy, SanitizationStrategy
66
from key_value.shared.utils.sanitize import ALPHANUMERIC_CHARACTERS
77
from typing_extensions import override
88

@@ -77,8 +77,8 @@ def __init__(
7777

7878
super().__init__(
7979
default_collection=default_collection,
80-
collection_sanitization_strategy=collection_sanitization_strategy or PassthroughStrategy(),
81-
key_sanitization_strategy=key_sanitization_strategy or PassthroughStrategy(),
80+
collection_sanitization_strategy=collection_sanitization_strategy,
81+
key_sanitization_strategy=key_sanitization_strategy,
8282
)
8383

8484
@override

key-value/key-value-aio/src/key_value/aio/stores/memcached/store.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33

44
from key_value.shared.utils.compound import compound_key
55
from key_value.shared.utils.managed_entry import ManagedEntry
6-
from key_value.shared.utils.sanitization import HashExcessLengthStrategy, PassthroughStrategy, SanitizationStrategy
6+
from key_value.shared.utils.sanitization import HashExcessLengthStrategy, SanitizationStrategy
77
from typing_extensions import override
88

99
from key_value.aio.stores.base import BaseContextManagerStore, BaseDestroyStore, BaseStore
@@ -70,7 +70,7 @@ def __init__(
7070

7171
super().__init__(
7272
default_collection=default_collection,
73-
key_sanitization_strategy=key_sanitization_strategy or PassthroughStrategy(),
73+
key_sanitization_strategy=key_sanitization_strategy,
7474
)
7575

7676
@override

key-value/key-value-aio/src/key_value/aio/stores/windows_registry/store.py

Lines changed: 9 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
from winreg import HKEY_CURRENT_USER, HKEY_LOCAL_MACHINE
55

66
from key_value.shared.utils.managed_entry import ManagedEntry
7-
from key_value.shared.utils.sanitization import HybridSanitizationStrategy, PassthroughStrategy, SanitizationStrategy
7+
from key_value.shared.utils.sanitization import HybridSanitizationStrategy, SanitizationStrategy
88
from key_value.shared.utils.sanitize import ALPHANUMERIC_CHARACTERS
99
from typing_extensions import override
1010

@@ -21,18 +21,9 @@
2121
DEFAULT_REGISTRY_PATH = "Software\\py-key-value"
2222
DEFAULT_HIVE = "HKEY_CURRENT_USER"
2323

24-
MAX_KEY_LENGTH = 96
2524
MAX_COLLECTION_LENGTH = 96
2625

2726

28-
class WindowsRegistryV1KeySanitizationStrategy(HybridSanitizationStrategy):
29-
def __init__(self) -> None:
30-
super().__init__(
31-
max_length=MAX_KEY_LENGTH,
32-
allowed_characters=ALPHANUMERIC_CHARACTERS,
33-
)
34-
35-
3627
class WindowsRegistryV1CollectionSanitizationStrategy(HybridSanitizationStrategy):
3728
def __init__(self) -> None:
3829
super().__init__(
@@ -45,16 +36,17 @@ class WindowsRegistryStore(BaseStore):
4536
"""Windows Registry-based key-value store.
4637
4738
This store uses the Windows Registry to persist key-value pairs. Each entry is stored
48-
as a string value in the registry under HKEY_CURRENT_USER\\Software\\{root}\\{collection}\\{key}.
39+
as a string value in the registry under HKEY_CURRENT_USER\\Software\\{root}\\{collection}
40+
with the key being a registry reg_sz value named `{key}`.
4941
50-
This store has specific restrictions on what is allowed in keys and collections. Keys and collections are not sanitized
42+
This store has specific restrictions on what is allowed in collections. Collections are not sanitized
5143
by default which may result in errors when using the store.
5244
53-
To avoid issues, you may want to consider leveraging the `WindowsRegistryV1KeySanitizationStrategy` and
54-
`WindowsRegistryV1CollectionSanitizationStrategy` strategies.
45+
To avoid issues, you may want to consider leveraging the `WindowsRegistryV1CollectionSanitizationStrategy`.
5546
5647
Note: TTL is not natively supported by Windows Registry, so TTL information is stored
57-
within the JSON payload and checked at retrieval time.
48+
within the JSON payload and checked at retrieval time. The store does not currently cull
49+
expired entries.
5850
"""
5951

6052
def __init__(
@@ -80,8 +72,8 @@ def __init__(
8072

8173
super().__init__(
8274
default_collection=default_collection,
83-
key_sanitization_strategy=key_sanitization_strategy or PassthroughStrategy(),
84-
collection_sanitization_strategy=collection_sanitization_strategy or PassthroughStrategy(),
75+
key_sanitization_strategy=key_sanitization_strategy,
76+
collection_sanitization_strategy=collection_sanitization_strategy,
8577
)
8678

8779
def _get_registry_path(self, *, collection: str) -> str:

key-value/key-value-sync/src/key_value/sync/code_gen/stores/elasticsearch/store.py

Lines changed: 3 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -10,13 +10,7 @@
1010
from elastic_transport import SerializationError as ElasticsearchSerializationError
1111
from key_value.shared.errors import DeserializationError, SerializationError
1212
from key_value.shared.utils.managed_entry import ManagedEntry
13-
from key_value.shared.utils.sanitization import (
14-
AlwaysHashStrategy,
15-
HashFragmentMode,
16-
HybridSanitizationStrategy,
17-
PassthroughStrategy,
18-
SanitizationStrategy,
19-
)
13+
from key_value.shared.utils.sanitization import AlwaysHashStrategy, HashFragmentMode, HybridSanitizationStrategy, SanitizationStrategy
2014
from key_value.shared.utils.sanitize import ALPHANUMERIC_CHARACTERS, LOWERCASE_ALPHABET, NUMBERS, UPPERCASE_ALPHABET
2115
from key_value.shared.utils.serialization import SerializationAdapter
2216
from key_value.shared.utils.time_to_live import now_as_epoch
@@ -224,8 +218,8 @@ def __init__(
224218

225219
super().__init__(
226220
default_collection=default_collection,
227-
collection_sanitization_strategy=collection_sanitization_strategy or PassthroughStrategy(),
228-
key_sanitization_strategy=key_sanitization_strategy or PassthroughStrategy(),
221+
collection_sanitization_strategy=collection_sanitization_strategy,
222+
key_sanitization_strategy=key_sanitization_strategy,
229223
)
230224

231225
@override

key-value/key-value-sync/src/key_value/sync/code_gen/stores/keyring/store.py

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55

66
from key_value.shared.utils.compound import compound_key
77
from key_value.shared.utils.managed_entry import ManagedEntry
8-
from key_value.shared.utils.sanitization import HybridSanitizationStrategy, PassthroughStrategy, SanitizationStrategy
8+
from key_value.shared.utils.sanitization import HybridSanitizationStrategy, SanitizationStrategy
99
from key_value.shared.utils.sanitize import ALPHANUMERIC_CHARACTERS
1010
from typing_extensions import override
1111

@@ -76,8 +76,8 @@ def __init__(
7676

7777
super().__init__(
7878
default_collection=default_collection,
79-
collection_sanitization_strategy=collection_sanitization_strategy or PassthroughStrategy(),
80-
key_sanitization_strategy=key_sanitization_strategy or PassthroughStrategy(),
79+
collection_sanitization_strategy=collection_sanitization_strategy,
80+
key_sanitization_strategy=key_sanitization_strategy,
8181
)
8282

8383
@override

key-value/key-value-sync/src/key_value/sync/code_gen/stores/windows_registry/store.py

Lines changed: 9 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@
77
from winreg import HKEY_CURRENT_USER, HKEY_LOCAL_MACHINE
88

99
from key_value.shared.utils.managed_entry import ManagedEntry
10-
from key_value.shared.utils.sanitization import HybridSanitizationStrategy, PassthroughStrategy, SanitizationStrategy
10+
from key_value.shared.utils.sanitization import HybridSanitizationStrategy, SanitizationStrategy
1111
from key_value.shared.utils.sanitize import ALPHANUMERIC_CHARACTERS
1212
from typing_extensions import override
1313

@@ -30,15 +30,9 @@
3030
DEFAULT_REGISTRY_PATH = "Software\\py-key-value"
3131
DEFAULT_HIVE = "HKEY_CURRENT_USER"
3232

33-
MAX_KEY_LENGTH = 96
3433
MAX_COLLECTION_LENGTH = 96
3534

3635

37-
class WindowsRegistryV1KeySanitizationStrategy(HybridSanitizationStrategy):
38-
def __init__(self) -> None:
39-
super().__init__(max_length=MAX_KEY_LENGTH, allowed_characters=ALPHANUMERIC_CHARACTERS)
40-
41-
4236
class WindowsRegistryV1CollectionSanitizationStrategy(HybridSanitizationStrategy):
4337
def __init__(self) -> None:
4438
super().__init__(max_length=MAX_COLLECTION_LENGTH, allowed_characters=ALPHANUMERIC_CHARACTERS)
@@ -48,16 +42,17 @@ class WindowsRegistryStore(BaseStore):
4842
"""Windows Registry-based key-value store.
4943
5044
This store uses the Windows Registry to persist key-value pairs. Each entry is stored
51-
as a string value in the registry under HKEY_CURRENT_USER\\Software\\{root}\\{collection}\\{key}.
45+
as a string value in the registry under HKEY_CURRENT_USER\\Software\\{root}\\{collection}
46+
with the key being a registry reg_sz value named `{key}`.
5247
53-
This store has specific restrictions on what is allowed in keys and collections. Keys and collections are not sanitized
48+
This store has specific restrictions on what is allowed in collections. Collections are not sanitized
5449
by default which may result in errors when using the store.
5550
56-
To avoid issues, you may want to consider leveraging the `WindowsRegistryV1KeySanitizationStrategy` and
57-
`WindowsRegistryV1CollectionSanitizationStrategy` strategies.
51+
To avoid issues, you may want to consider leveraging the `WindowsRegistryV1CollectionSanitizationStrategy`.
5852
5953
Note: TTL is not natively supported by Windows Registry, so TTL information is stored
60-
within the JSON payload and checked at retrieval time.
54+
within the JSON payload and checked at retrieval time. The store does not currently cull
55+
expired entries.
6156
"""
6257

6358
def __init__(
@@ -83,8 +78,8 @@ def __init__(
8378

8479
super().__init__(
8580
default_collection=default_collection,
86-
key_sanitization_strategy=key_sanitization_strategy or PassthroughStrategy(),
87-
collection_sanitization_strategy=collection_sanitization_strategy or PassthroughStrategy(),
81+
key_sanitization_strategy=key_sanitization_strategy,
82+
collection_sanitization_strategy=collection_sanitization_strategy,
8883
)
8984

9085
def _get_registry_path(self, *, collection: str) -> str:

0 commit comments

Comments
 (0)