11import logging
22import typing
3- from collections .abc import Awaitable , Sequence
3+ from collections .abc import Awaitable , Mapping , Sequence
44from dataclasses import dataclass
55from itertools import chain
66
@@ -345,11 +345,11 @@ def get_object_value(
345345 self ,
346346 flag_key : str ,
347347 default_value : typing .Union [
348- Sequence [FlagValueType ], typing . Mapping [str , FlagValueType ]
348+ Sequence [FlagValueType ], Mapping [str , FlagValueType ]
349349 ],
350350 evaluation_context : typing .Optional [EvaluationContext ] = None ,
351351 flag_evaluation_options : typing .Optional [FlagEvaluationOptions ] = None ,
352- ) -> typing .Union [Sequence [FlagValueType ], typing . Mapping [str , FlagValueType ]]:
352+ ) -> typing .Union [Sequence [FlagValueType ], Mapping [str , FlagValueType ]]:
353353 return self .get_object_details (
354354 flag_key ,
355355 default_value ,
@@ -361,11 +361,11 @@ async def get_object_value_async(
361361 self ,
362362 flag_key : str ,
363363 default_value : typing .Union [
364- Sequence [FlagValueType ], typing . Mapping [str , FlagValueType ]
364+ Sequence [FlagValueType ], Mapping [str , FlagValueType ]
365365 ],
366366 evaluation_context : typing .Optional [EvaluationContext ] = None ,
367367 flag_evaluation_options : typing .Optional [FlagEvaluationOptions ] = None ,
368- ) -> typing .Union [Sequence [FlagValueType ], typing . Mapping [str , FlagValueType ]]:
368+ ) -> typing .Union [Sequence [FlagValueType ], Mapping [str , FlagValueType ]]:
369369 details = await self .get_object_details_async (
370370 flag_key ,
371371 default_value ,
@@ -378,12 +378,12 @@ def get_object_details(
378378 self ,
379379 flag_key : str ,
380380 default_value : typing .Union [
381- Sequence [FlagValueType ], typing . Mapping [str , FlagValueType ]
381+ Sequence [FlagValueType ], Mapping [str , FlagValueType ]
382382 ],
383383 evaluation_context : typing .Optional [EvaluationContext ] = None ,
384384 flag_evaluation_options : typing .Optional [FlagEvaluationOptions ] = None ,
385385 ) -> FlagEvaluationDetails [
386- typing .Union [Sequence [FlagValueType ], typing . Mapping [str , FlagValueType ]]
386+ typing .Union [Sequence [FlagValueType ], Mapping [str , FlagValueType ]]
387387 ]:
388388 return self .evaluate_flag_details (
389389 FlagType .OBJECT ,
@@ -397,12 +397,12 @@ async def get_object_details_async(
397397 self ,
398398 flag_key : str ,
399399 default_value : typing .Union [
400- Sequence [FlagValueType ], typing . Mapping [str , FlagValueType ]
400+ Sequence [FlagValueType ], Mapping [str , FlagValueType ]
401401 ],
402402 evaluation_context : typing .Optional [EvaluationContext ] = None ,
403403 flag_evaluation_options : typing .Optional [FlagEvaluationOptions ] = None ,
404404 ) -> FlagEvaluationDetails [
405- typing .Union [Sequence [FlagValueType ], typing . Mapping [str , FlagValueType ]]
405+ typing .Union [Sequence [FlagValueType ], Mapping [str , FlagValueType ]]
406406 ]:
407407 return await self .evaluate_flag_details_async (
408408 FlagType .OBJECT ,
@@ -472,7 +472,7 @@ def _establish_hooks_and_provider(
472472 )
473473 ]
474474 # after, error, finally: Provider, Invocation, Client, API
475- reversed_merged_hooks_and_context = merged_hooks_and_context [:]
475+ reversed_merged_hooks_and_context = merged_hooks_and_context . copy ()
476476 reversed_merged_hooks_and_context .reverse ()
477477
478478 return (
@@ -567,10 +567,10 @@ async def evaluate_flag_details_async(
567567 self ,
568568 flag_type : FlagType ,
569569 flag_key : str ,
570- default_value : typing . Mapping [str , "FlagValueType" ],
570+ default_value : Mapping [str , "FlagValueType" ],
571571 evaluation_context : typing .Optional [EvaluationContext ] = None ,
572572 flag_evaluation_options : typing .Optional [FlagEvaluationOptions ] = None ,
573- ) -> FlagEvaluationDetails [typing . Mapping [str , "FlagValueType" ]]: ...
573+ ) -> FlagEvaluationDetails [Mapping [str , "FlagValueType" ]]: ...
574574
575575 async def evaluate_flag_details_async (
576576 self ,
@@ -743,10 +743,10 @@ def evaluate_flag_details(
743743 self ,
744744 flag_type : FlagType ,
745745 flag_key : str ,
746- default_value : typing . Mapping [str , "FlagValueType" ],
746+ default_value : Mapping [str , "FlagValueType" ],
747747 evaluation_context : typing .Optional [EvaluationContext ] = None ,
748748 flag_evaluation_options : typing .Optional [FlagEvaluationOptions ] = None ,
749- ) -> FlagEvaluationDetails [typing . Mapping [str , "FlagValueType" ]]: ...
749+ ) -> FlagEvaluationDetails [Mapping [str , "FlagValueType" ]]: ...
750750
751751 def evaluate_flag_details (
752752 self ,
@@ -874,9 +874,7 @@ async def _create_provider_evaluation_async(
874874 default_value : FlagValueType ,
875875 evaluation_context : typing .Optional [EvaluationContext ] = None ,
876876 ) -> FlagEvaluationDetails [FlagValueType ]:
877- get_details_callables_async : typing .Mapping [
878- FlagType , ResolveDetailsCallableAsync
879- ] = {
877+ get_details_callables_async : Mapping [FlagType , ResolveDetailsCallableAsync ] = {
880878 FlagType .BOOLEAN : provider .resolve_boolean_details_async ,
881879 FlagType .INTEGER : provider .resolve_integer_details_async ,
882880 FlagType .FLOAT : provider .resolve_float_details_async ,
@@ -931,7 +929,7 @@ def _create_provider_evaluation(
931929 :return: a FlagEvaluationDetails object with the fully evaluated flag from a
932930 provider
933931 """
934- get_details_callables : typing . Mapping [FlagType , ResolveDetailsCallable ] = {
932+ get_details_callables : Mapping [FlagType , ResolveDetailsCallable ] = {
935933 FlagType .BOOLEAN : provider .resolve_boolean_details ,
936934 FlagType .INTEGER : provider .resolve_integer_details ,
937935 FlagType .FLOAT : provider .resolve_float_details ,
@@ -986,9 +984,9 @@ def _typecheck_flag_value(
986984 FlagType .FLOAT : float ,
987985 FlagType .INTEGER : int ,
988986 }
989- _type = type_map .get (flag_type )
990- if not _type :
987+ py_type = type_map .get (flag_type )
988+ if not py_type :
991989 return GeneralError (error_message = "Unknown flag type" )
992- if not isinstance (value , _type ):
993- return TypeMismatchError (f"Expected type { _type } but got { type (value )} " )
990+ if not isinstance (value , py_type ):
991+ return TypeMismatchError (f"Expected type { py_type } but got { type (value )} " )
994992 return None
0 commit comments