osbot-utils 1.67.0__tar.gz → 1.69.0__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/PKG-INFO +2 -2
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/README.md +1 -1
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/base_classes/Type_Safe.py +9 -2
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/utils/Http.py +22 -3
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/utils/Json.py +4 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/utils/Toml.py +9 -3
- osbot_utils-1.69.0/osbot_utils/version +1 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/pyproject.toml +1 -1
- osbot_utils-1.67.0/osbot_utils/version +0 -1
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/LICENSE +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/__init__.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/base_classes/Cache_Pickle.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/base_classes/Kwargs_To_Disk.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/base_classes/Kwargs_To_Self.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/base_classes/Type_Safe__List.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/base_classes/__init__.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/context_managers/__init__.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/context_managers/async_invoke.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/context_managers/capture_duration.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/context_managers/disable_root_loggers.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/context_managers/print_duration.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/decorators/__init__.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/decorators/classes/__init__.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/decorators/classes/singleton.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/decorators/lists/__init__.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/decorators/lists/filter_list.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/decorators/lists/group_by.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/decorators/lists/index_by.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/decorators/methods/__init__.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/decorators/methods/cache.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/decorators/methods/cache_on_function.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/decorators/methods/cache_on_self.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/decorators/methods/cache_on_tmp.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/decorators/methods/capture_exception.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/decorators/methods/capture_status.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/decorators/methods/catch.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/decorators/methods/context.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/decorators/methods/depreciated.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/decorators/methods/function_type_check.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/decorators/methods/obj_as_context.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/decorators/methods/remove_return_value.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/decorators/methods/required_fields.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/fluent/Fluent_Dict.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/fluent/Fluent_List.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/fluent/__init__.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/graphs/__init__.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/graphs/mermaid/Mermaid.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/graphs/mermaid/Mermaid__Edge.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/graphs/mermaid/Mermaid__Graph.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/graphs/mermaid/Mermaid__Node.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/graphs/mermaid/Mermaid__Renderer.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/graphs/mermaid/configs/Mermaid__Edge__Config.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/graphs/mermaid/configs/Mermaid__Node__Config.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/graphs/mermaid/configs/Mermaid__Render__Config.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/graphs/mermaid/examples/Mermaid_Examples__FlowChart.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/graphs/mermaid/models/Mermaid__Diagram_Direction.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/graphs/mermaid/models/Mermaid__Diagram__Type.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/graphs/mermaid/models/Mermaid__Node__Shape.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/graphs/mgraph/MGraph.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/graphs/mgraph/MGraph__Config.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/graphs/mgraph/MGraph__Data.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/graphs/mgraph/MGraph__Edge.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/graphs/mgraph/MGraph__Node.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/graphs/mgraph/MGraph__Random_Graphs.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/graphs/mgraph/MGraph__Serializer.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/graphs/mgraph/MGraphs.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/graphs/mgraph/__init__.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/helpers/CFormat.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/helpers/CPrint.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/helpers/Dependency_Manager.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/helpers/Dict_To_Attr.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/helpers/Hashicorp_Secrets.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/helpers/Local_Cache.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/helpers/Local_Caches.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/helpers/Print_Table.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/helpers/Python_Audit.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/helpers/Random_Guid.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/helpers/Random_Guid_Short.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/helpers/Random_Seed.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/helpers/Timestamp_Now.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/helpers/Type_Registry.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/helpers/Zip_Bytes.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/helpers/__init__.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/helpers/ast/Ast.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/helpers/ast/Ast_Base.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/helpers/ast/Ast_Data.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/helpers/ast/Ast_Load.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/helpers/ast/Ast_Merge.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/helpers/ast/Ast_Node.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/helpers/ast/Ast_Visit.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/helpers/ast/Call_Tree.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/helpers/ast/__init__.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/helpers/ast/nodes/Ast_Add.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/helpers/ast/nodes/Ast_Alias.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/helpers/ast/nodes/Ast_And.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/helpers/ast/nodes/Ast_Argument.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/helpers/ast/nodes/Ast_Arguments.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/helpers/ast/nodes/Ast_Assert.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/helpers/ast/nodes/Ast_Assign.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/helpers/ast/nodes/Ast_Attribute.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/helpers/ast/nodes/Ast_Aug_Assign.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/helpers/ast/nodes/Ast_Bin_Op.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/helpers/ast/nodes/Ast_Bool_Op.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/helpers/ast/nodes/Ast_Break.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/helpers/ast/nodes/Ast_Call.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/helpers/ast/nodes/Ast_Class_Def.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/helpers/ast/nodes/Ast_Compare.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/helpers/ast/nodes/Ast_Comprehension.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/helpers/ast/nodes/Ast_Constant.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/helpers/ast/nodes/Ast_Continue.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/helpers/ast/nodes/Ast_Dict.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/helpers/ast/nodes/Ast_Eq.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/helpers/ast/nodes/Ast_Except_Handler.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/helpers/ast/nodes/Ast_Expr.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/helpers/ast/nodes/Ast_For.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/helpers/ast/nodes/Ast_Function_Def.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/helpers/ast/nodes/Ast_Generator_Exp.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/helpers/ast/nodes/Ast_Gt.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/helpers/ast/nodes/Ast_GtE.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/helpers/ast/nodes/Ast_If.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/helpers/ast/nodes/Ast_If_Exp.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/helpers/ast/nodes/Ast_Import.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/helpers/ast/nodes/Ast_Import_From.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/helpers/ast/nodes/Ast_In.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/helpers/ast/nodes/Ast_Is.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/helpers/ast/nodes/Ast_Is_Not.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/helpers/ast/nodes/Ast_Keyword.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/helpers/ast/nodes/Ast_Lambda.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/helpers/ast/nodes/Ast_List.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/helpers/ast/nodes/Ast_List_Comp.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/helpers/ast/nodes/Ast_Load.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/helpers/ast/nodes/Ast_Lt.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/helpers/ast/nodes/Ast_LtE.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/helpers/ast/nodes/Ast_Mod.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/helpers/ast/nodes/Ast_Module.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/helpers/ast/nodes/Ast_Mult.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/helpers/ast/nodes/Ast_Name.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/helpers/ast/nodes/Ast_Not.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/helpers/ast/nodes/Ast_Not_Eq.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/helpers/ast/nodes/Ast_Not_In.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/helpers/ast/nodes/Ast_Or.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/helpers/ast/nodes/Ast_Pass.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/helpers/ast/nodes/Ast_Pow.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/helpers/ast/nodes/Ast_Raise.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/helpers/ast/nodes/Ast_Return.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/helpers/ast/nodes/Ast_Set.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/helpers/ast/nodes/Ast_Slice.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/helpers/ast/nodes/Ast_Starred.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/helpers/ast/nodes/Ast_Store.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/helpers/ast/nodes/Ast_Sub.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/helpers/ast/nodes/Ast_Subscript.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/helpers/ast/nodes/Ast_Try.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/helpers/ast/nodes/Ast_Tuple.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/helpers/ast/nodes/Ast_Unary_Op.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/helpers/ast/nodes/Ast_While.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/helpers/ast/nodes/Ast_With.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/helpers/ast/nodes/Ast_With_Item.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/helpers/ast/nodes/Ast_Yield.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/helpers/ast/nodes/__init__.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/helpers/cache_requests/Cache__Requests__Actions.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/helpers/cache_requests/Cache__Requests__Config.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/helpers/cache_requests/Cache__Requests__Data.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/helpers/cache_requests/Cache__Requests__Invoke.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/helpers/cache_requests/Cache__Requests__Row.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/helpers/cache_requests/Cache__Requests__Table.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/helpers/cache_requests/__init__.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/helpers/cache_requests/flows/flow__Cache__Requests.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/helpers/flows/Flow.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/helpers/flows/Flow__Events.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/helpers/flows/Task.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/helpers/flows/__init__.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/helpers/flows/decorators/__init__.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/helpers/flows/decorators/flow.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/helpers/flows/decorators/task.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/helpers/flows/models/Flow_Run__Config.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/helpers/flows/models/Flow_Run__Event.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/helpers/flows/models/Flow_Run__Event_Data.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/helpers/flows/models/Flow_Run__Event_Type.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/helpers/flows/models/__init__.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/helpers/html/Dict_To_Css.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/helpers/html/Dict_To_Html.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/helpers/html/Dict_To_Tags.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/helpers/html/Html_To_Dict.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/helpers/html/Html_To_Tag.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/helpers/html/Tag__Base.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/helpers/html/Tag__Body.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/helpers/html/Tag__Div.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/helpers/html/Tag__H.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/helpers/html/Tag__HR.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/helpers/html/Tag__Head.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/helpers/html/Tag__Html.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/helpers/html/Tag__Link.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/helpers/html/Tag__Style.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/helpers/html/__init__.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/helpers/pubsub/Event__Queue.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/helpers/pubsub/PubSub__Client.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/helpers/pubsub/PubSub__Room.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/helpers/pubsub/PubSub__Server.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/helpers/pubsub/PubSub__Sqlite.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/helpers/pubsub/__init__.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/helpers/pubsub/schemas/Schema__Event.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/helpers/pubsub/schemas/Schema__Event__Connect.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/helpers/pubsub/schemas/Schema__Event__Disconnect.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/helpers/pubsub/schemas/Schema__Event__Execute_Method.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/helpers/pubsub/schemas/Schema__Event__Join_Room.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/helpers/pubsub/schemas/Schema__Event__Leave_Room.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/helpers/pubsub/schemas/Schema__Event__Message.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/helpers/pubsub/schemas/Schema__PubSub__Client.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/helpers/pubsub/schemas/__init__.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/helpers/sqlite/Capture_Sqlite_Error.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/helpers/sqlite/Sqlite__Cursor.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/helpers/sqlite/Sqlite__Database.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/helpers/sqlite/Sqlite__Field.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/helpers/sqlite/Sqlite__Globals.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/helpers/sqlite/Sqlite__Table.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/helpers/sqlite/Sqlite__Table__Create.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/helpers/sqlite/Temp_Sqlite__Database__Disk.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/helpers/sqlite/Temp_Sqlite__Table.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/helpers/sqlite/__init__.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/helpers/sqlite/cache/Schema__Table__Requests.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/helpers/sqlite/cache/Sqlite__Cache__Requests.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/helpers/sqlite/cache/Sqlite__Cache__Requests__Patch.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/helpers/sqlite/cache/Sqlite__Cache__Requests__Sqlite.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/helpers/sqlite/cache/Sqlite__Cache__Requests__Table.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/helpers/sqlite/cache/Sqlite__DB__Requests.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/helpers/sqlite/cache/TestCase__Sqlite__Cache__Requests.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/helpers/sqlite/cache/__init__.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/helpers/sqlite/domains/Sqlite__DB.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/helpers/sqlite/domains/Sqlite__DB__Files.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/helpers/sqlite/domains/Sqlite__DB__Graph.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/helpers/sqlite/domains/Sqlite__DB__Json.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/helpers/sqlite/domains/Sqlite__DB__Local.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/helpers/sqlite/domains/__init__.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/helpers/sqlite/domains/schemas/__init__.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/helpers/sqlite/models/Sqlite__Field__Type.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/helpers/sqlite/models/__init__.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/helpers/sqlite/sample_data/Sqlite__Sample_Data__Chinook.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/helpers/sqlite/sample_data/__init__.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/helpers/sqlite/sql_builder/SQL_Builder.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/helpers/sqlite/sql_builder/SQL_Builder__Select.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/helpers/sqlite/sql_builder/__init__.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/helpers/sqlite/tables/Sqlite__Table__Config.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/helpers/sqlite/tables/Sqlite__Table__Edges.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/helpers/sqlite/tables/Sqlite__Table__Files.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/helpers/sqlite/tables/Sqlite__Table__Nodes.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/helpers/sqlite/tables/__init__.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/helpers/ssh/SCP.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/helpers/ssh/SSH.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/helpers/ssh/SSH__Cache__Requests.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/helpers/ssh/SSH__Execute.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/helpers/ssh/SSH__Health_Check.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/helpers/ssh/SSH__Linux.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/helpers/ssh/SSH__Linux__Amazon.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/helpers/ssh/SSH__Python.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/helpers/ssh/TestCase__SSH.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/helpers/ssh/__init__.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/helpers/trace/Trace_Call.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/helpers/trace/Trace_Call__Config.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/helpers/trace/Trace_Call__Graph.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/helpers/trace/Trace_Call__Handler.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/helpers/trace/Trace_Call__Print_Lines.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/helpers/trace/Trace_Call__Print_Traces.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/helpers/trace/Trace_Call__Stack.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/helpers/trace/Trace_Call__Stack_Node.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/helpers/trace/Trace_Call__Stats.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/helpers/trace/Trace_Call__View_Model.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/helpers/trace/Trace_Files.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/helpers/trace/__init__.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/testing/Catch.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/testing/Custom_Handler_For_Http_Tests.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/testing/Duration.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/testing/Hook_Method.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/testing/Log_To_Queue.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/testing/Log_To_String.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/testing/Logging.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/testing/Patch_Print.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/testing/Profiler.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/testing/Pytest.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/testing/Stderr.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/testing/Stdout.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/testing/Temp_Env_Vars.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/testing/Temp_File.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/testing/Temp_Folder.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/testing/Temp_Sys_Path.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/testing/Temp_Web_Server.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/testing/Temp_Zip.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/testing/Temp_Zip_In_Memory.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/testing/Unit_Test.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/testing/Unzip_File.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/testing/__init__.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/utils/Assert.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/utils/Call_Stack.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/utils/Csv.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/utils/Dev.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/utils/Env.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/utils/Exceptions.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/utils/Files.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/utils/Functions.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/utils/Int.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/utils/Json_Cache.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/utils/Lists.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/utils/Misc.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/utils/Objects.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/utils/Png.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/utils/Process.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/utils/Python_Logger.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/utils/Regex.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/utils/Status.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/utils/Str.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/utils/Threads.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/utils/Version.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/utils/Zip.py +0 -0
- {osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/utils/__init__.py +0 -0
@@ -1,6 +1,6 @@
|
|
1
1
|
Metadata-Version: 2.1
|
2
2
|
Name: osbot_utils
|
3
|
-
Version: 1.
|
3
|
+
Version: 1.69.0
|
4
4
|
Summary: OWASP Security Bot - Utils
|
5
5
|
Home-page: https://github.com/owasp-sbot/OSBot-Utils
|
6
6
|
License: MIT
|
@@ -23,7 +23,7 @@ Description-Content-Type: text/markdown
|
|
23
23
|
|
24
24
|
Powerful Python util methods and classes that simplify common apis and tasks.
|
25
25
|
|
26
|
-

|
27
27
|
[](https://codecov.io/gh/owasp-sbot/OSBot-Utils)
|
28
28
|
|
29
29
|
|
@@ -2,7 +2,7 @@
|
|
2
2
|
|
3
3
|
Powerful Python util methods and classes that simplify common apis and tasks.
|
4
4
|
|
5
|
-

|
6
6
|
[](https://codecov.io/gh/owasp-sbot/OSBot-Utils)
|
7
7
|
|
8
8
|
|
@@ -14,9 +14,9 @@ from osbot_utils.helpers.Random_Guid import Random_Guid
|
|
14
14
|
from osbot_utils.helpers.Random_Guid_Short import Random_Guid_Short
|
15
15
|
from osbot_utils.helpers.Timestamp_Now import Timestamp_Now
|
16
16
|
from osbot_utils.utils.Dev import pprint
|
17
|
-
from osbot_utils.utils.Json import json_parse
|
17
|
+
from osbot_utils.utils.Json import json_parse, json_to_bytes, json_to_gz
|
18
18
|
from osbot_utils.utils.Misc import list_set
|
19
|
-
from osbot_utils.utils.Objects
|
19
|
+
from osbot_utils.utils.Objects import default_value, value_type_matches_obj_annotation_for_attr, \
|
20
20
|
raise_exception_on_obj_type_annotation_mismatch, obj_is_attribute_annotation_of_type, enum_from_value, \
|
21
21
|
obj_is_type_union_compatible, value_type_matches_obj_annotation_for_union_attr, \
|
22
22
|
convert_dict_to_value_from_obj_annotation, dict_to_obj, convert_to_value_from_obj_annotation
|
@@ -230,9 +230,16 @@ class Type_Safe:
|
|
230
230
|
# global methods added to any class that base classes this
|
231
231
|
# todo: see if there should be a prefix on these methods, to make it easier to spot them
|
232
232
|
# of if these are actually that useful that they should be added like this
|
233
|
+
def bytes(self):
|
234
|
+
return json_to_bytes(self.json())
|
235
|
+
|
236
|
+
def bytes_gz(self):
|
237
|
+
return json_to_gz(self.json())
|
238
|
+
|
233
239
|
def json(self):
|
234
240
|
return self.serialize_to_dict()
|
235
241
|
|
242
|
+
|
236
243
|
def merge_with(self, target):
|
237
244
|
original_attrs = {k: v for k, v in self.__dict__.items() if k not in target.__dict__} # Store the original attributes of self that should be retained.
|
238
245
|
self.__dict__ = target.__dict__ # Set the target's __dict__ to self, now self and target share the same __dict__.
|
@@ -4,9 +4,10 @@ import re
|
|
4
4
|
import socket
|
5
5
|
import ssl
|
6
6
|
import unicodedata
|
7
|
-
from
|
8
|
-
from
|
9
|
-
from
|
7
|
+
from http.cookies import SimpleCookie
|
8
|
+
from time import sleep
|
9
|
+
from urllib.parse import quote, urljoin, urlparse, urlunparse
|
10
|
+
from urllib.request import Request, urlopen
|
10
11
|
|
11
12
|
from osbot_utils.utils.Str import html_decode
|
12
13
|
|
@@ -78,6 +79,24 @@ def http_request(url, data=None, headers=None, method='GET', encoding ='utf-8',
|
|
78
79
|
return result.decode(encoding)
|
79
80
|
return result
|
80
81
|
|
82
|
+
|
83
|
+
def parse_cookies(cookie_header, include_empty=True):
|
84
|
+
cookie = SimpleCookie()
|
85
|
+
cookie.load(cookie_header)
|
86
|
+
parsed_cookies = {}
|
87
|
+
for key, morsel in cookie.items():
|
88
|
+
cookie_attrs = {"value": morsel.value}
|
89
|
+
for attr, value in morsel.items():
|
90
|
+
if attr.lower() in ["secure", "httponly"]:
|
91
|
+
cookie_attrs[attr] = (value == True)
|
92
|
+
else:
|
93
|
+
if value or include_empty:
|
94
|
+
cookie_attrs[attr] = value.strip(', ') # we need to strip for the cases when there are multiple cookies split by , (as seen in FastAPI Test Client)
|
95
|
+
parsed_cookies[key] = cookie_attrs
|
96
|
+
|
97
|
+
return parsed_cookies
|
98
|
+
|
99
|
+
|
81
100
|
def port_is_not_open(port, host='0.0.0.0', timeout=1.0):
|
82
101
|
return port_is_open(port, host,timeout) is False
|
83
102
|
|
@@ -5,6 +5,8 @@ from osbot_utils.utils.Misc import str_lines, str_md5, str_sha256
|
|
5
5
|
from osbot_utils.utils.Files import file_create_gz, file_create, load_file_gz, file_contents, file_lines, file_lines_gz
|
6
6
|
from osbot_utils.utils.Zip import str_to_gz, gz_to_str
|
7
7
|
|
8
|
+
def bytes_to_json_loads(data):
|
9
|
+
return json.loads(data.decode())
|
8
10
|
|
9
11
|
def json_dumps(python_object, indent=4, pretty=True, sort_keys=False, default=str, raise_exception=False):
|
10
12
|
if python_object:
|
@@ -135,6 +137,7 @@ class Json:
|
|
135
137
|
def json_save_tmp_file(python_object, pretty=True):
|
136
138
|
return Json.save_file(python_object=python_object, pretty=pretty, path=None)
|
137
139
|
|
140
|
+
bytes_to_json = bytes_to_json_loads
|
138
141
|
file_create_json = Json.save_file_pretty
|
139
142
|
file_contents_json = Json.load_file
|
140
143
|
|
@@ -158,6 +161,7 @@ json_md5 = Json.md5
|
|
158
161
|
json_lines_loads = Json.loads_json_lines
|
159
162
|
json_parse = Json.loads
|
160
163
|
json_lines_parse = Json.loads_json_lines
|
164
|
+
json_to_bytes = json_dumps_to_bytes
|
161
165
|
json_to_str = json_dumps
|
162
166
|
json_round_trip = Json.round_trip
|
163
167
|
json_save = Json.save_file
|
@@ -1,6 +1,6 @@
|
|
1
1
|
import sys
|
2
|
-
|
3
|
-
from osbot_utils.utils.
|
2
|
+
from osbot_utils.utils.Files import file_create, file_contents
|
3
|
+
from osbot_utils.utils.Objects import dict_to_obj
|
4
4
|
|
5
5
|
if sys.version_info >= (3, 11):
|
6
6
|
import tomllib
|
@@ -43,5 +43,11 @@ def toml_to_dict(str_toml):
|
|
43
43
|
raise NotImplementedError("TOML parsing is not supported in Python versions earlier than 3.11")
|
44
44
|
return tomllib.loads(str_toml)
|
45
45
|
|
46
|
+
def toml_obj_from_file(toml_file):
|
47
|
+
data = toml_dict_from_file(toml_file)
|
48
|
+
return dict_to_obj(data)
|
49
|
+
|
46
50
|
json_load_file = toml_dict_from_file
|
47
|
-
toml_file_load = toml_dict_from_file
|
51
|
+
toml_file_load = toml_dict_from_file
|
52
|
+
toml_load = toml_dict_from_file
|
53
|
+
toml_load_obj = toml_obj_from_file
|
@@ -0,0 +1 @@
|
|
1
|
+
v1.69.0
|
@@ -1 +0,0 @@
|
|
1
|
-
v1.67.0
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/context_managers/disable_root_loggers.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/decorators/methods/cache_on_function.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
{osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/decorators/methods/capture_exception.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/decorators/methods/function_type_check.py
RENAMED
File without changes
|
File without changes
|
{osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/decorators/methods/remove_return_value.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/graphs/mermaid/models/Mermaid__Node__Shape.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/graphs/mgraph/MGraph__Random_Graphs.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/helpers/ast/nodes/Ast_Comprehension.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/helpers/ast/nodes/Ast_Except_Handler.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/helpers/ast/nodes/Ast_Generator_Exp.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/helpers/cache_requests/Cache__Requests__Row.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/helpers/flows/models/Flow_Run__Config.py
RENAMED
File without changes
|
{osbot_utils-1.67.0 → osbot_utils-1.69.0}/osbot_utils/helpers/flows/models/Flow_Run__Event.py
RENAMED
File without changes
|