taskflow 5.5.0__tar.gz → 5.6.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.
- {taskflow-5.5.0 → taskflow-5.6.0}/ChangeLog +7 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/PKG-INFO +1 -1
- taskflow-5.6.0/releasenotes/notes/bug-2056656-871b67ddbc8cfc92.yaml +7 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/jobs/backends/impl_redis.py +1 -5
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/tests/unit/jobs/test_redis_job.py +4 -4
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow.egg-info/PKG-INFO +1 -1
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow.egg-info/SOURCES.txt +1 -0
- taskflow-5.6.0/taskflow.egg-info/pbr.json +1 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/tox.ini +1 -1
- taskflow-5.5.0/taskflow.egg-info/pbr.json +0 -1
- {taskflow-5.5.0 → taskflow-5.6.0}/.coveragerc +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/.mailmap +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/.pre-commit-config.yaml +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/.stestr.conf +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/.zuul.yaml +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/AUTHORS +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/CONTRIBUTING.rst +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/LICENSE +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/README.rst +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/bindep.txt +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/doc/diagrams/area_of_influence.graffle.tgz +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/doc/diagrams/core.graffle.tgz +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/doc/diagrams/jobboard.graffle.tgz +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/doc/diagrams/tasks.graffle.tgz +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/doc/diagrams/worker-engine.graffle.tgz +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/doc/requirements.txt +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/doc/source/conf.py +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/doc/source/index.rst +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/doc/source/templates/layout.html +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/doc/source/user/arguments_and_results.rst +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/doc/source/user/atoms.rst +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/doc/source/user/conductors.rst +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/doc/source/user/engines.rst +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/doc/source/user/examples.rst +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/doc/source/user/exceptions.rst +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/doc/source/user/history.rst +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/doc/source/user/img/area_of_influence.svg +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/doc/source/user/img/conductor.png +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/doc/source/user/img/conductor_cycle.png +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/doc/source/user/img/distributed_flow_rpc.png +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/doc/source/user/img/engine_states.svg +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/doc/source/user/img/flow_states.svg +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/doc/source/user/img/job_states.svg +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/doc/source/user/img/jobboard.png +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/doc/source/user/img/mandelbrot.png +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/doc/source/user/img/retry_states.svg +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/doc/source/user/img/task_states.svg +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/doc/source/user/img/tasks.png +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/doc/source/user/img/wbe_request_states.svg +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/doc/source/user/img/worker-engine.svg +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/doc/source/user/index.rst +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/doc/source/user/inputs_and_outputs.rst +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/doc/source/user/jobs.rst +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/doc/source/user/notifications.rst +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/doc/source/user/patterns.rst +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/doc/source/user/persistence.rst +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/doc/source/user/resumption.rst +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/doc/source/user/shelf.rst +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/doc/source/user/states.rst +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/doc/source/user/types.rst +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/doc/source/user/utils.rst +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/doc/source/user/workers.rst +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/pylintrc +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/releasenotes/notes/.placeholder +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/releasenotes/notes/add-sentinel-redis-support-9fd16e2a5dd5c0c9.yaml +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/releasenotes/notes/drop-python-2-7-73d3113c69d724d6.yaml +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/releasenotes/notes/fix-endless-loop-on-storage-error-dd4467f0bbc66abf.yaml +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/releasenotes/notes/fix-endless-loop-on-storage-failures-b98b30f0c34d25e1.yaml +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/releasenotes/notes/fix-storage-failure-handling-5c115d92daa0eb82.yaml +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/releasenotes/notes/fix-zookeeper-option-parsing-f9d37fbc39af47f4.yaml +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/releasenotes/notes/redis-username-df0eb33869db09a2.yaml +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/releasenotes/notes/remove-strict-redis-f2a5a924b314de41.yaml +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/releasenotes/notes/sentinel-fallbacks-6fe2ab0d68959cdf.yaml +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/releasenotes/notes/sentinel-ssl-399c56ed7067d282.yaml +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/releasenotes/notes/sentinel-use-redis-creds-63f58b12ad46a2b5.yaml +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/releasenotes/notes/zookeeper-ssl-support-b9abf24a39096b62.yaml +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/releasenotes/source/2023.1.rst +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/releasenotes/source/2023.2.rst +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/releasenotes/source/_static/.placeholder +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/releasenotes/source/_templates/.placeholder +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/releasenotes/source/conf.py +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/releasenotes/source/index.rst +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/releasenotes/source/ocata.rst +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/releasenotes/source/pike.rst +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/releasenotes/source/queens.rst +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/releasenotes/source/rocky.rst +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/releasenotes/source/stein.rst +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/releasenotes/source/train.rst +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/releasenotes/source/unreleased.rst +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/releasenotes/source/ussuri.rst +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/releasenotes/source/victoria.rst +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/requirements.txt +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/run_tests.sh +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/setup.cfg +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/setup.py +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/__init__.py +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/atom.py +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/conductors/__init__.py +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/conductors/backends/__init__.py +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/conductors/backends/impl_blocking.py +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/conductors/backends/impl_executor.py +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/conductors/backends/impl_nonblocking.py +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/conductors/base.py +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/contrib/__init__.py +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/deciders.py +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/engines/__init__.py +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/engines/action_engine/__init__.py +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/engines/action_engine/actions/__init__.py +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/engines/action_engine/actions/base.py +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/engines/action_engine/actions/retry.py +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/engines/action_engine/actions/task.py +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/engines/action_engine/builder.py +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/engines/action_engine/compiler.py +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/engines/action_engine/completer.py +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/engines/action_engine/deciders.py +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/engines/action_engine/engine.py +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/engines/action_engine/executor.py +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/engines/action_engine/process_executor.py +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/engines/action_engine/runtime.py +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/engines/action_engine/scheduler.py +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/engines/action_engine/scopes.py +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/engines/action_engine/selector.py +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/engines/action_engine/traversal.py +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/engines/base.py +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/engines/helpers.py +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/engines/worker_based/__init__.py +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/engines/worker_based/dispatcher.py +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/engines/worker_based/endpoint.py +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/engines/worker_based/engine.py +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/engines/worker_based/executor.py +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/engines/worker_based/protocol.py +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/engines/worker_based/proxy.py +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/engines/worker_based/server.py +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/engines/worker_based/types.py +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/engines/worker_based/worker.py +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/examples/99_bottles.py +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/examples/alphabet_soup.py +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/examples/build_a_car.py +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/examples/buildsystem.py +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/examples/calculate_in_parallel.py +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/examples/calculate_linear.py +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/examples/create_parallel_volume.py +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/examples/delayed_return.py +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/examples/distance_calculator.py +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/examples/dump_memory_backend.py +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/examples/echo_listener.py +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/examples/example_utils.py +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/examples/fake_billing.py +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/examples/graph_flow.py +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/examples/hello_world.py +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/examples/jobboard_produce_consume_colors.py +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/examples/parallel_table_multiply.py +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/examples/persistence_example.py +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/examples/pseudo_scoping.out.txt +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/examples/pseudo_scoping.py +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/examples/resume_from_backend.out.txt +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/examples/resume_from_backend.py +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/examples/resume_many_flows/my_flows.py +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/examples/resume_many_flows/resume_all.py +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/examples/resume_many_flows/run_flow.py +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/examples/resume_many_flows.out.txt +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/examples/resume_many_flows.py +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/examples/resume_vm_boot.py +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/examples/resume_volume_create.py +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/examples/retry_flow.out.txt +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/examples/retry_flow.py +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/examples/reverting_linear.out.txt +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/examples/reverting_linear.py +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/examples/run_by_iter.out.txt +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/examples/run_by_iter.py +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/examples/run_by_iter_enumerate.out.txt +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/examples/run_by_iter_enumerate.py +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/examples/share_engine_thread.py +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/examples/simple_linear.out.txt +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/examples/simple_linear.py +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/examples/simple_linear_listening.out.txt +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/examples/simple_linear_listening.py +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/examples/simple_linear_pass.out.txt +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/examples/simple_linear_pass.py +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/examples/simple_map_reduce.py +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/examples/switch_graph_flow.py +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/examples/timing_listener.py +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/examples/tox_conductor.py +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/examples/wbe_event_sender.py +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/examples/wbe_mandelbrot.out.txt +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/examples/wbe_mandelbrot.py +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/examples/wbe_simple_linear.out.txt +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/examples/wbe_simple_linear.py +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/examples/wrapped_exception.py +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/exceptions.py +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/flow.py +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/formatters.py +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/jobs/__init__.py +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/jobs/backends/__init__.py +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/jobs/backends/impl_zookeeper.py +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/jobs/base.py +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/listeners/__init__.py +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/listeners/base.py +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/listeners/capturing.py +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/listeners/claims.py +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/listeners/logging.py +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/listeners/printing.py +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/listeners/timing.py +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/logging.py +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/patterns/__init__.py +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/patterns/graph_flow.py +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/patterns/linear_flow.py +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/patterns/unordered_flow.py +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/persistence/__init__.py +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/persistence/backends/__init__.py +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/persistence/backends/impl_dir.py +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/persistence/backends/impl_memory.py +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/persistence/backends/impl_sqlalchemy.py +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/persistence/backends/impl_zookeeper.py +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/persistence/backends/sqlalchemy/__init__.py +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/persistence/backends/sqlalchemy/alembic/README +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/persistence/backends/sqlalchemy/alembic/alembic.ini +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/persistence/backends/sqlalchemy/alembic/env.py +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/persistence/backends/sqlalchemy/alembic/script.py.mako +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/persistence/backends/sqlalchemy/alembic/versions/0bc3e1a3c135_set_result_meduimtext_type.py +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/persistence/backends/sqlalchemy/alembic/versions/14b227d79a87_add_intention_column.py +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/persistence/backends/sqlalchemy/alembic/versions/1c783c0c2875_replace_exception_an.py +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/persistence/backends/sqlalchemy/alembic/versions/1cea328f0f65_initial_logbook_deta.py +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/persistence/backends/sqlalchemy/alembic/versions/2ad4984f2864_switch_postgres_to_json_native.py +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/persistence/backends/sqlalchemy/alembic/versions/3162c0f3f8e4_add_revert_results_and_revert_failure_.py +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/persistence/backends/sqlalchemy/alembic/versions/40fc8c914bd2_fix_atomdetails_failure_size.py +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/persistence/backends/sqlalchemy/alembic/versions/589dccdf2b6e_rename_taskdetails_to_atomdetails.py +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/persistence/backends/sqlalchemy/alembic/versions/6df9422fcb43_fix_flowdetails_meta_size.py +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/persistence/backends/sqlalchemy/alembic/versions/84d6e888850_add_task_detail_type.py +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/persistence/backends/sqlalchemy/alembic/versions/README +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/persistence/backends/sqlalchemy/migration.py +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/persistence/backends/sqlalchemy/tables.py +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/persistence/base.py +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/persistence/models.py +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/persistence/path_based.py +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/retry.py +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/states.py +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/storage.py +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/task.py +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/test.py +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/tests/__init__.py +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/tests/fixtures.py +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/tests/test_examples.py +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/tests/unit/__init__.py +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/tests/unit/action_engine/__init__.py +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/tests/unit/action_engine/test_builder.py +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/tests/unit/action_engine/test_compile.py +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/tests/unit/action_engine/test_creation.py +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/tests/unit/action_engine/test_process_executor.py +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/tests/unit/action_engine/test_scoping.py +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/tests/unit/jobs/__init__.py +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/tests/unit/jobs/base.py +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/tests/unit/jobs/test_entrypoint.py +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/tests/unit/jobs/test_zk_job.py +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/tests/unit/patterns/__init__.py +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/tests/unit/patterns/test_graph_flow.py +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/tests/unit/patterns/test_linear_flow.py +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/tests/unit/patterns/test_unordered_flow.py +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/tests/unit/persistence/__init__.py +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/tests/unit/persistence/base.py +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/tests/unit/persistence/test_dir_persistence.py +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/tests/unit/persistence/test_memory_persistence.py +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/tests/unit/persistence/test_sql_persistence.py +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/tests/unit/persistence/test_zk_persistence.py +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/tests/unit/test_arguments_passing.py +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/tests/unit/test_check_transition.py +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/tests/unit/test_conductors.py +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/tests/unit/test_deciders.py +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/tests/unit/test_engine_helpers.py +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/tests/unit/test_engines.py +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/tests/unit/test_exceptions.py +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/tests/unit/test_failure.py +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/tests/unit/test_flow_dependencies.py +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/tests/unit/test_formatters.py +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/tests/unit/test_functor_task.py +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/tests/unit/test_listeners.py +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/tests/unit/test_mapfunctor_task.py +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/tests/unit/test_notifier.py +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/tests/unit/test_progress.py +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/tests/unit/test_reducefunctor_task.py +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/tests/unit/test_retries.py +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/tests/unit/test_states.py +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/tests/unit/test_storage.py +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/tests/unit/test_suspend.py +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/tests/unit/test_task.py +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/tests/unit/test_types.py +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/tests/unit/test_utils.py +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/tests/unit/test_utils_async_utils.py +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/tests/unit/test_utils_binary.py +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/tests/unit/test_utils_iter_utils.py +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/tests/unit/test_utils_kazoo_utils.py +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/tests/unit/test_utils_threading_utils.py +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/tests/unit/worker_based/__init__.py +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/tests/unit/worker_based/test_creation.py +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/tests/unit/worker_based/test_dispatcher.py +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/tests/unit/worker_based/test_endpoint.py +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/tests/unit/worker_based/test_executor.py +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/tests/unit/worker_based/test_message_pump.py +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/tests/unit/worker_based/test_pipeline.py +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/tests/unit/worker_based/test_protocol.py +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/tests/unit/worker_based/test_proxy.py +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/tests/unit/worker_based/test_server.py +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/tests/unit/worker_based/test_types.py +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/tests/unit/worker_based/test_worker.py +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/tests/utils.py +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/types/__init__.py +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/types/entity.py +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/types/failure.py +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/types/graph.py +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/types/latch.py +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/types/notifier.py +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/types/sets.py +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/types/timing.py +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/types/tree.py +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/utils/__init__.py +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/utils/async_utils.py +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/utils/banner.py +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/utils/eventlet_utils.py +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/utils/iter_utils.py +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/utils/kazoo_utils.py +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/utils/kombu_utils.py +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/utils/misc.py +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/utils/persistence_utils.py +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/utils/redis_utils.py +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/utils/schema_utils.py +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/utils/threading_utils.py +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow/version.py +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow.egg-info/dependency_links.txt +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow.egg-info/entry_points.txt +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow.egg-info/not-zip-safe +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow.egg-info/requires.txt +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/taskflow.egg-info/top_level.txt +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/test-requirements.txt +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/tools/clear_zk.sh +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/tools/env_builder.sh +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/tools/pretty_tox.sh +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/tools/schema_generator.py +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/tools/speed_test.py +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/tools/state_graph.py +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/tools/subunit_trace.py +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/tools/test-setup.sh +0 -0
- {taskflow-5.5.0 → taskflow-5.6.0}/tools/update_states.sh +0 -0
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
---
|
|
2
|
+
fixes:
|
|
3
|
+
- |
|
|
4
|
+
Redis job board driver no longer uses ``username`` and ``password`` for
|
|
5
|
+
its connections to Redis Sentinel, to restore the previous behavior which
|
|
6
|
+
was already used by some deployment tools. Add credential to
|
|
7
|
+
``sentinel_kwargs`` to enable authentication for Redis Sentinel.
|
|
@@ -584,12 +584,8 @@ return cmsgpack.pack(result)
|
|
|
584
584
|
sentinels = [(client_conf.pop('host'), client_conf.pop('port'))]
|
|
585
585
|
for fallback in conf.get('sentinel_fallbacks', []):
|
|
586
586
|
sentinels.append(cls._parse_sentinel(fallback))
|
|
587
|
-
sentinel_kwargs = conf.get('sentinel_kwargs', {})
|
|
588
|
-
for key in ('username', 'password', 'socket_timeout'):
|
|
589
|
-
if key in conf:
|
|
590
|
-
sentinel_kwargs.setdefault(key, conf[key])
|
|
591
587
|
s = sentinel.Sentinel(sentinels,
|
|
592
|
-
sentinel_kwargs=sentinel_kwargs,
|
|
588
|
+
sentinel_kwargs=conf.get('sentinel_kwargs'),
|
|
593
589
|
**client_conf)
|
|
594
590
|
return s.master_for(conf['sentinel'])
|
|
595
591
|
else:
|
|
@@ -128,7 +128,7 @@ class RedisJobboardTest(test.TestCase, base.BoardTestMixin):
|
|
|
128
128
|
'namespace': 'test',
|
|
129
129
|
'sentinel': 'mymaster',
|
|
130
130
|
'sentinel_kwargs': {
|
|
131
|
-
'username': '
|
|
131
|
+
'username': 'default',
|
|
132
132
|
'password': 'senitelsecret'
|
|
133
133
|
}}
|
|
134
134
|
with mock.patch('redis.sentinel.Sentinel') as mock_sentinel:
|
|
@@ -140,7 +140,7 @@ class RedisJobboardTest(test.TestCase, base.BoardTestMixin):
|
|
|
140
140
|
mock_sentinel.assert_called_once_with(
|
|
141
141
|
[('127.0.0.1', 26379)],
|
|
142
142
|
sentinel_kwargs={
|
|
143
|
-
'username': '
|
|
143
|
+
'username': 'default',
|
|
144
144
|
'password': 'senitelsecret'
|
|
145
145
|
},
|
|
146
146
|
**test_conf)
|
|
@@ -179,6 +179,7 @@ class RedisJobboardTest(test.TestCase, base.BoardTestMixin):
|
|
|
179
179
|
'password': 'secret',
|
|
180
180
|
'namespace': 'test',
|
|
181
181
|
'sentinel': 'mymaster',
|
|
182
|
+
'sentinel_kwargs': {'password': 'senitelsecret'},
|
|
182
183
|
'ssl': True,
|
|
183
184
|
'ssl_ca_certs': '/etc/ssl/certs'}
|
|
184
185
|
with mock.patch('redis.sentinel.Sentinel') as mock_sentinel:
|
|
@@ -191,7 +192,6 @@ class RedisJobboardTest(test.TestCase, base.BoardTestMixin):
|
|
|
191
192
|
}
|
|
192
193
|
mock_sentinel.assert_called_once_with(
|
|
193
194
|
[('127.0.0.1', 26379)],
|
|
194
|
-
sentinel_kwargs={
|
|
195
|
-
'username': 'default', 'password': 'secret'},
|
|
195
|
+
sentinel_kwargs={'password': 'senitelsecret'},
|
|
196
196
|
**test_conf)
|
|
197
197
|
mock_sentinel().master_for.assert_called_once_with('mymaster')
|
|
@@ -60,6 +60,7 @@ doc/source/user/img/wbe_request_states.svg
|
|
|
60
60
|
doc/source/user/img/worker-engine.svg
|
|
61
61
|
releasenotes/notes/.placeholder
|
|
62
62
|
releasenotes/notes/add-sentinel-redis-support-9fd16e2a5dd5c0c9.yaml
|
|
63
|
+
releasenotes/notes/bug-2056656-871b67ddbc8cfc92.yaml
|
|
63
64
|
releasenotes/notes/drop-python-2-7-73d3113c69d724d6.yaml
|
|
64
65
|
releasenotes/notes/fix-endless-loop-on-storage-error-dd4467f0bbc66abf.yaml
|
|
65
66
|
releasenotes/notes/fix-endless-loop-on-storage-failures-b98b30f0c34d25e1.yaml
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"git_version": "39440b74", "is_release": true}
|
|
@@ -9,7 +9,7 @@ setenv =
|
|
|
9
9
|
# We need to install a bit more than just `test' because those drivers have
|
|
10
10
|
# custom tests that we always run
|
|
11
11
|
deps =
|
|
12
|
-
-c{env:TOX_CONSTRAINTS_FILE:https://releases.openstack.org/constraints/upper/
|
|
12
|
+
-c{env:TOX_CONSTRAINTS_FILE:https://releases.openstack.org/constraints/upper/2024.1}
|
|
13
13
|
-r{toxinidir}/test-requirements.txt
|
|
14
14
|
-r{toxinidir}/requirements.txt
|
|
15
15
|
commands =
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"git_version": "b389cb5e", "is_release": true}
|
|
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
|
|
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
|
{taskflow-5.5.0 → taskflow-5.6.0}/releasenotes/notes/remove-strict-redis-f2a5a924b314de41.yaml
RENAMED
|
File without changes
|
{taskflow-5.5.0 → taskflow-5.6.0}/releasenotes/notes/sentinel-fallbacks-6fe2ab0d68959cdf.yaml
RENAMED
|
File without changes
|
|
File without changes
|
{taskflow-5.5.0 → taskflow-5.6.0}/releasenotes/notes/sentinel-use-redis-creds-63f58b12ad46a2b5.yaml
RENAMED
|
File without changes
|
{taskflow-5.5.0 → taskflow-5.6.0}/releasenotes/notes/zookeeper-ssl-support-b9abf24a39096b62.yaml
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
|
|
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
|
|
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
|