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

|
26
26
|
[](https://codecov.io/gh/owasp-sbot/OSBot-Utils)
|
27
27
|
|
28
28
|
|
@@ -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
|
|
@@ -11,7 +11,7 @@ from osbot_utils.helpers.trace.Trace_Call__View_Model import Trace_Call__V
|
|
11
11
|
|
12
12
|
|
13
13
|
def trace_calls(title = None , print_traces = True , show_locals = False, source_code = False ,
|
14
|
-
ignore = None , include = None , show_path = False, duration_bigger_than = 0 ,
|
14
|
+
ignore = None , include = None , show_path = False, duration_bigger_than = 0 , trace_depth=0,
|
15
15
|
max_string = None , show_types = False, show_duration = False ,# show_caller = False , # todo: add back when show_caller is working again
|
16
16
|
show_class = False, contains = None , show_internals = False, enabled = True ,
|
17
17
|
extra_data = False, show_lines = False, print_lines = False, show_types_padding = None , duration_padding=None):
|
@@ -30,7 +30,8 @@ def trace_calls(title = None , print_traces = True , show_locals = Fa
|
|
30
30
|
capture_extra_data=extra_data,
|
31
31
|
print_padding_parent_info= show_types_padding, print_padding_duration=duration_padding,
|
32
32
|
print_lines_on_exit=print_lines, trace_enabled=enabled,
|
33
|
-
trace_capture_lines=show_lines or print_lines
|
33
|
+
trace_capture_lines=show_lines or print_lines,
|
34
|
+
trace_up_to_depth=trace_depth)
|
34
35
|
|
35
36
|
config = (Trace_Call__Config().update_from_kwargs (**config_kwargs))
|
36
37
|
|
@@ -168,7 +168,7 @@ class Trace_Call__Handler(Kwargs_To_Self):
|
|
168
168
|
capture = False
|
169
169
|
|
170
170
|
for item in self.config.trace_ignore_start_with: # Check if the module should be ignored
|
171
|
-
if module.startswith(item):
|
171
|
+
if module.startswith(item) or func_name.startswith(item):
|
172
172
|
capture = False
|
173
173
|
break
|
174
174
|
return capture
|
@@ -0,0 +1,20 @@
|
|
1
|
+
import os
|
2
|
+
|
3
|
+
from osbot_utils.base_classes.Type_Safe import Type_Safe
|
4
|
+
|
5
|
+
|
6
|
+
class Temp_Env_Vars(Type_Safe):
|
7
|
+
env_vars : dict
|
8
|
+
original_env_vars: dict
|
9
|
+
|
10
|
+
def __enter__(self):
|
11
|
+
for key, value in self.env_vars.items():
|
12
|
+
self.original_env_vars[key] = os.environ.get(key) # Backup original environment variables and set new ones
|
13
|
+
os.environ[key] = value
|
14
|
+
|
15
|
+
def __exit__(self, exc_type, exc_value, traceback):
|
16
|
+
for key in self.env_vars: # Restore original environment variables
|
17
|
+
if self.original_env_vars[key] is None:
|
18
|
+
del os.environ[key]
|
19
|
+
else:
|
20
|
+
os.environ[key] = self.original_env_vars[key]
|
@@ -4,17 +4,23 @@ from osbot_utils.utils.Misc import random_filename
|
|
4
4
|
|
5
5
|
|
6
6
|
class Temp_File:
|
7
|
-
def __init__(self, contents='...', extension='tmp',file_name=None, ):
|
7
|
+
def __init__(self, contents='...', extension='tmp',file_name=None, return_file_path=False, create_file=True):
|
8
8
|
self.tmp_file = file_name or random_filename(extension)
|
9
9
|
self.tmp_folder = None
|
10
10
|
self.file_path = None
|
11
11
|
self.original_contents = contents
|
12
|
+
self.return_file_path = return_file_path
|
13
|
+
self.create_file = create_file
|
12
14
|
|
13
15
|
def __enter__(self):
|
14
16
|
self.tmp_folder = Files.temp_folder(prefix='temp_folder_')
|
15
17
|
self.file_path = Files.path_combine(self.tmp_folder, self.tmp_file)
|
16
|
-
|
17
|
-
|
18
|
+
if self.create_file:
|
19
|
+
file_create(self.file_path, self.original_contents)
|
20
|
+
if self.return_file_path:
|
21
|
+
return self.file_path
|
22
|
+
else:
|
23
|
+
return self
|
18
24
|
|
19
25
|
def __exit__(self, type, value, traceback):
|
20
26
|
file_delete (self.file_path)
|
@@ -82,7 +82,7 @@ def in_python_debugger():
|
|
82
82
|
return True
|
83
83
|
return False
|
84
84
|
|
85
|
-
def load_dotenv(dotenv_path=None, override=False):
|
85
|
+
def load_dotenv(dotenv_path=None, override=False): # todo: add detection when we have already loaded the .env (so that we don't load it again)
|
86
86
|
if dotenv_path: # If a specific dotenv path is provided, load from it
|
87
87
|
env_load_from_file(dotenv_path, override)
|
88
88
|
else:
|
@@ -211,7 +211,7 @@ def obj_base_classes_names(obj, show_module=False):
|
|
211
211
|
names.append(base.__name__)
|
212
212
|
return names
|
213
213
|
|
214
|
-
def obj_data(target, name_width=30, value_width=100, show_private=False, show_internals=False, show_value_class=False, show_methods=False, only_show_methods=False):
|
214
|
+
def obj_data(target, convert_value_to_str=True, name_width=30, value_width=100, show_private=False, show_internals=False, show_value_class=False, show_methods=False, only_show_methods=False):
|
215
215
|
result = {}
|
216
216
|
if show_internals:
|
217
217
|
show_private = True # show_private will skip all internals, so need to make sure it is True
|
@@ -226,11 +226,12 @@ def obj_data(target, name_width=30, value_width=100, show_private=False, show_in
|
|
226
226
|
continue
|
227
227
|
if only_show_methods:
|
228
228
|
value = inspect.signature(value)
|
229
|
-
if value
|
230
|
-
|
231
|
-
|
232
|
-
|
233
|
-
|
229
|
+
if value is not None and type(value) not in [bool, int, float]:
|
230
|
+
if convert_value_to_str:
|
231
|
+
value = str(value).encode('unicode_escape').decode("utf-8")
|
232
|
+
value = str_unicode_escape(value)
|
233
|
+
value = str_max_width(value, value_width)
|
234
|
+
name = str_max_width(name, name_width) # todo: look at the side effects of running this for all (at the moment if we do that we break the test_cache_on_self test)
|
234
235
|
result[name] = value
|
235
236
|
return result
|
236
237
|
|
@@ -99,7 +99,8 @@ class Python_Logger(Type_Safe):
|
|
99
99
|
def setup(self, logger_name=None, log_level=None,add_console_logger=False, add_memory_logger=True):
|
100
100
|
if logger_name:
|
101
101
|
self.logger_name = logger_name
|
102
|
-
self.logger
|
102
|
+
if self.logger is None:
|
103
|
+
self.logger = logging.getLogger(self.logger_name)
|
103
104
|
self.setup_log_methods()
|
104
105
|
self.set_log_level(log_level)
|
105
106
|
if add_console_logger:
|
@@ -1,5 +1,7 @@
|
|
1
1
|
import sys
|
2
2
|
|
3
|
+
from osbot_utils.utils.Files import file_create, file_contents
|
4
|
+
|
3
5
|
if sys.version_info >= (3, 11):
|
4
6
|
import tomllib
|
5
7
|
else:
|
@@ -27,7 +29,19 @@ def dict_to_toml(data, indent_level=0):
|
|
27
29
|
|
28
30
|
return toml_str
|
29
31
|
|
30
|
-
def
|
32
|
+
def toml_dict_to_file(toml_file, data):
|
33
|
+
str_toml = dict_to_toml(data)
|
34
|
+
return file_create(toml_file, str_toml)
|
35
|
+
|
36
|
+
def toml_dict_from_file(toml_file):
|
37
|
+
str_toml = file_contents(toml_file)
|
38
|
+
return toml_to_dict(str_toml)
|
39
|
+
|
40
|
+
|
41
|
+
def toml_to_dict(str_toml):
|
31
42
|
if tomllib is None:
|
32
43
|
raise NotImplementedError("TOML parsing is not supported in Python versions earlier than 3.11")
|
33
|
-
return tomllib.loads(
|
44
|
+
return tomllib.loads(str_toml)
|
45
|
+
|
46
|
+
|
47
|
+
toml_file_load = toml_dict_from_file
|
@@ -0,0 +1 @@
|
|
1
|
+
v1.25.0
|
@@ -1 +0,0 @@
|
|
1
|
-
v1.23.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.23.0 → osbot_utils-1.25.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
|
{osbot_utils-1.23.0 → osbot_utils-1.25.0}/osbot_utils/decorators/methods/cache_on_function.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
{osbot_utils-1.23.0 → osbot_utils-1.25.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.23.0 → osbot_utils-1.25.0}/osbot_utils/decorators/methods/function_type_check.py
RENAMED
File without changes
|
File without changes
|
{osbot_utils-1.23.0 → osbot_utils-1.25.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.23.0 → osbot_utils-1.25.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.23.0 → osbot_utils-1.25.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
|
{osbot_utils-1.23.0 → osbot_utils-1.25.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.23.0 → osbot_utils-1.25.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.23.0 → osbot_utils-1.25.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.23.0 → osbot_utils-1.25.0}/osbot_utils/helpers/cache_requests/Cache__Requests__Row.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|