Skip to content

Commit 4fbc6d6

Browse files
authored
[Cosmos] Partition key not optional (#34306)
* partition key not optional * Use typing alias * PartitionKey is not optional * Updated PartitionKeyType * Fix pylint
1 parent 4392d12 commit 4fbc6d6

File tree

7 files changed

+14
-12
lines changed

7 files changed

+14
-12
lines changed

sdk/cosmos/azure-cosmos/azure/cosmos/_cosmos_client_connection.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -69,7 +69,7 @@
6969
from ._cosmos_http_logging_policy import CosmosHttpLoggingPolicy
7070
from ._range_partition_resolver import RangePartitionResolver
7171

72-
PartitionKeyType = Union[str, int, float, bool, List[Union[str, int, float, bool]], Type[NonePartitionKeyValue]]
72+
PartitionKeyType = Union[str, int, float, bool, Sequence[Union[str, int, float, bool, None]], Type[NonePartitionKeyValue]] # pylint: disable=line-too-long
7373

7474

7575
class CredentialDict(TypedDict, total=False):

sdk/cosmos/azure-cosmos/azure/cosmos/aio/_container.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -54,7 +54,7 @@
5454
# pylint: disable=protected-access, too-many-lines
5555
# pylint: disable=missing-client-constructor-parameter-credential,missing-client-constructor-parameter-kwargs
5656

57-
PartitionKeyType = Union[str, int, float, bool, List[Union[str, int, float, bool]], Type[NonePartitionKeyValue]]
57+
PartitionKeyType = Union[str, int, float, bool, Sequence[Union[str, int, float, bool, None]], Type[NonePartitionKeyValue]] # pylint: disable=line-too-long
5858

5959

6060
class ContainerProxy:

sdk/cosmos/azure-cosmos/azure/cosmos/aio/_cosmos_client_connection_async.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -72,7 +72,7 @@
7272
from .._range_partition_resolver import RangePartitionResolver
7373

7474

75-
PartitionKeyType = Union[str, int, float, bool, List[Union[str, int, float, bool]], Type[NonePartitionKeyValue]]
75+
PartitionKeyType = Union[str, int, float, bool, Sequence[Union[str, int, float, bool, None]], Type[NonePartitionKeyValue]] # pylint: disable=line-too-long
7676
class CredentialDict(TypedDict, total=False):
7777
masterKey: str
7878
resourceTokens: Mapping[str, Any]

sdk/cosmos/azure-cosmos/azure/cosmos/aio/_database.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -160,7 +160,7 @@ async def read(
160160
async def create_container(
161161
self,
162162
id: str,
163-
partition_key: Optional[PartitionKey],
163+
partition_key: PartitionKey,
164164
*,
165165
indexing_policy: Optional[Dict[str, str]] = None,
166166
default_ttl: Optional[int] = None,
@@ -265,7 +265,7 @@ async def create_container(
265265
@distributed_trace_async
266266
async def create_container_if_not_exists(
267267
self,
268-
id: str, # pylint: disable=redefined-builtin
268+
id: str,
269269
partition_key: PartitionKey,
270270
**kwargs: Any
271271
) -> ContainerProxy:

sdk/cosmos/azure-cosmos/azure/cosmos/aio/_scripts.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@
2424
# pylint: disable=protected-access
2525
# pylint: disable=missing-client-constructor-parameter-credential,missing-client-constructor-parameter-kwargs
2626

27-
from typing import Any, Dict, List, Mapping, Union, Optional, Type, TYPE_CHECKING
27+
from typing import Any, Dict, List, Mapping, Union, Optional, Type, Sequence, TYPE_CHECKING
2828

2929
from azure.core.async_paging import AsyncItemPaged
3030
from azure.core.tracing.decorator_async import distributed_trace_async
@@ -39,7 +39,7 @@
3939
from ._container import ContainerProxy
4040

4141

42-
PartitionKeyType = Union[str, int, float, bool, List[Union[str, int, float, bool]], Type[NonePartitionKeyValue]]
42+
PartitionKeyType = Union[str, int, float, bool, Sequence[Union[str, int, float, bool, None]], Type[NonePartitionKeyValue]] # pylint: disable=line-too-long
4343

4444

4545
class ScriptsProxy:

sdk/cosmos/azure-cosmos/azure/cosmos/container.py

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -55,7 +55,7 @@
5555
# pylint: disable=too-many-lines
5656
# pylint: disable=missing-client-constructor-parameter-credential,missing-client-constructor-parameter-kwargs
5757

58-
PartitionKeyType = Union[str, int, float, bool, List[Union[str, int, float, bool]], Type[NonePartitionKeyValue]]
58+
PartitionKeyType = Union[str, int, float, bool, Sequence[Union[str, int, float, bool, None]], Type[NonePartitionKeyValue]] # pylint: disable=line-too-long
5959

6060

6161
class ContainerProxy: # pylint: disable=too-many-public-methods
@@ -822,7 +822,7 @@ def execute_item_batch(
822822
def delete_item( # pylint:disable=docstring-missing-param
823823
self,
824824
item: Union[Mapping[str, Any], str],
825-
partition_key: Optional[PartitionKeyType],
825+
partition_key: PartitionKeyType,
826826
populate_query_metrics: Optional[bool] = None,
827827
pre_trigger_include: Optional[str] = None,
828828
post_trigger_include: Optional[str] = None,
@@ -1040,7 +1040,7 @@ def query_conflicts(
10401040
def get_conflict(
10411041
self,
10421042
conflict: Union[str, Mapping[str, Any]],
1043-
partition_key: Optional[PartitionKeyType],
1043+
partition_key: PartitionKeyType,
10441044
**kwargs: Any
10451045
) -> Dict[str, Any]:
10461046
"""Get the conflict identified by `conflict`.

sdk/cosmos/azure-cosmos/azure/cosmos/scripts.py

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@
2222
"""Create, read, update and delete and execute scripts in the Azure Cosmos DB SQL API service.
2323
"""
2424

25-
from typing import Any, Dict, List, Mapping, Union, Optional
25+
from typing import Any, Dict, List, Mapping, Union, Optional, Type, Sequence
2626

2727
from azure.core.paging import ItemPaged
2828
from azure.core.tracing.decorator import distributed_trace
@@ -34,6 +34,8 @@
3434
# pylint: disable=protected-access
3535
# pylint: disable=missing-client-constructor-parameter-credential,missing-client-constructor-parameter-kwargs
3636

37+
PartitionKeyType = Union[str, int, float, bool, Sequence[Union[str, int, float, bool, None]], Type[NonePartitionKeyValue]] # pylint: disable=line-too-long
38+
3739

3840
class ScriptType:
3941
StoredProcedure = "sprocs"
@@ -191,7 +193,7 @@ def delete_stored_procedure(self, sproc: Union[str, Mapping[str, Any]], **kwargs
191193
def execute_stored_procedure(
192194
self,
193195
sproc: Union[str, Mapping[str, Any]],
194-
partition_key: Optional[Union[str, bool, int, float, List[Union[str, bool, int, float]]]] = None,
196+
partition_key: Optional[PartitionKeyType] = None,
195197
params: Optional[List[Dict[str, Any]]] = None,
196198
enable_script_logging: Optional[bool] = None,
197199
**kwargs: Any

0 commit comments

Comments
 (0)