diff --git a/CHANGELOG.rst b/CHANGELOG.rst index cd40e1c492..9c29fae57d 100644 --- a/CHANGELOG.rst +++ b/CHANGELOG.rst @@ -144,6 +144,12 @@ Changed * Update ``pyyaml`` dependency to the latest stable version (5.4). #5207 +* Update various dependencies to latest stable versions (``bcrypt``, ``appscheduler``, ``pytz``, + ``python-dateutil``, ``psutil``, ``passlib``, ``gunicorn``, ``flex``, ``cryptography``. + ``eventlet``, ``greenlet``, ``webob`` , ``mongoengine``, ``pymongo``, ``requests``). #5215 + + Contributed by @Kami. + Improvements ~~~~~~~~~~~~ diff --git a/fixed-requirements.txt b/fixed-requirements.txt index fe0b881b1d..7fd4b72cd3 100644 --- a/fixed-requirements.txt +++ b/fixed-requirements.txt @@ -1,43 +1,43 @@ # Packages versions fixed for the whole st2 stack # Note: amqp is used by kombu amqp==2.5.2 -apscheduler==3.6.3 +apscheduler==3.7.0 # requests 2.23 requires chardet < 3.1.0 chardet<3.1.0 # NOTE: 2.0 version breaks pymongo work with hosts dnspython>=1.16.0,<2.0.0 -cryptography==3.3.2 +cryptography==3.4.7 # Note: 0.20.0 removed select.poll() on which some of our code and libraries we # depend on rely -eventlet==0.25.1 -flex==6.14.0 +eventlet==0.30.2 +flex==6.14.1 gitpython==2.1.15 # Note: greenlet is used by eventlet -greenlet==0.4.15 -gunicorn==19.9.0 +greenlet==1.0.0 +gunicorn==20.1.0 jsonpath-rw==1.4.0 jsonschema==2.6.0 kombu==4.6.6 lockfile==0.12.2 -mongoengine==0.18.2 +mongoengine==0.23.0 networkx==1.11 # NOTE: Recent version substantially affect the performance and add big import time overhead # See https://github.com/StackStorm/st2/issues/4160#issuecomment-394386433 for details oslo.config>=1.12.1,<1.13 oslo.utils<5.0,>=4.0.0 paramiko==2.7.2 -passlib==1.7.1 +passlib==1.7.4 prance==0.9.0 prompt-toolkit==1.0.15 pyinotify==0.9.6; platform_system=="Linux" -pymongo==3.10.0 +pymongo==3.11.3 python-editor==1.0.4 python-gnupg==0.4.5 python-keyczar==0.716 -pytz==2019.1 +pytz==2021.1 pywinrm==0.3.0 pyyaml==5.4 -requests[security]==2.23.0 +requests[security]==2.25.1 retrying==1.3.3 routes==2.4.1 semver==2.9.0 @@ -49,17 +49,17 @@ tooz==2.8.0 # Note: virtualenv embeds wheels for pip, wheel, and setuptools. So pinning virtualenv pins those as well. # virtualenv==20.4.0 (<21) has pip==20.3.3 wheel==0.36.2 setuptools==51.3.3 virtualenv==20.4.0 -webob==1.8.5 +webob==1.8.7 zake==0.2.2 # test requirements below -bcrypt==3.1.7 +bcrypt==3.2.0 jinja2==2.11.3 -mock==2.0.0 +mock==4.0.3 more-itertools==5.0.0 nose-timer==0.7.5 nose-parallel==0.3.1 -psutil==5.6.6 -python-dateutil==2.8.0 +psutil==5.8.0 +python-dateutil==2.8.1 python-statsd==2.1.0 prometheus_client==0.1.1 ujson==1.35 diff --git a/requirements.txt b/requirements.txt index de82a2f670..aa346668e6 100644 --- a/requirements.txt +++ b/requirements.txt @@ -7,29 +7,29 @@ # update the component requirements.txt RandomWords amqp==2.5.2 -apscheduler==3.6.3 +apscheduler==3.7.0 argcomplete -bcrypt==3.1.7 +bcrypt==3.2.0 chardet<3.1.0 -cryptography==3.3.2 +cryptography==3.4.7 dnspython>=1.16.0,<2.0.0 -eventlet==0.25.1 -flex==6.14.0 +eventlet==0.30.2 +flex==6.14.1 git+https://github.com/StackStorm/logshipper.git@stackstorm_patched#egg=logshipper git+https://github.com/StackStorm/orquesta.git@v1.3.0#egg=orquesta git+https://github.com/StackStorm/st2-auth-backend-flat-file.git@master#egg=st2-auth-backend-flat-file git+https://github.com/StackStorm/st2-auth-ldap.git@master#egg=st2-auth-ldap git+https://github.com/StackStorm/st2-rbac-backend.git@master#egg=st2-rbac-backend gitpython==2.1.15 -greenlet==0.4.15 -gunicorn==19.9.0 +greenlet==1.0.0 +gunicorn==20.1.0 jinja2==2.11.3 jsonpath-rw==1.4.0 jsonschema==2.6.0 kombu==4.6.6 lockfile==0.12.2 -mock==2.0.0 -mongoengine==0.18.2 +mock==4.0.3 +mongoengine==0.23.0 more-itertools==5.0.0 networkx==1.11 nose @@ -39,22 +39,22 @@ orjson==3.5.1 oslo.config>=1.12.1,<1.13 oslo.utils<5.0,>=4.0.0 paramiko==2.7.2 -passlib==1.7.1 +passlib==1.7.4 prettytable prompt-toolkit==1.0.15 -psutil==5.6.6 +psutil==5.8.0 pyinotify==0.9.6; platform_system=="Linux" -pymongo==3.10.0 +pymongo==3.11.3 pyrabbit -python-dateutil==2.8.0 +python-dateutil==2.8.1 python-editor==1.0.4 python-json-logger python-statsd==2.1.0 -pytz==2019.1 +pytz==2021.1 pywinrm==0.3.0 pyyaml==5.4 rednose -requests[security]==2.23.0 +requests[security]==2.25.1 retrying==1.3.3 routes==2.4.1 semver==2.9.0 @@ -65,7 +65,7 @@ stevedore==1.30.1 tooz==2.8.0 udatetime==0.0.16 unittest2 -webob==1.8.5 +webob==1.8.7 webtest zake==0.2.2 zipp>=0.5,<=1.0.0 diff --git a/st2actions/requirements.txt b/st2actions/requirements.txt index 49d891660c..f8ab2a2b4a 100644 --- a/st2actions/requirements.txt +++ b/st2actions/requirements.txt @@ -5,9 +5,9 @@ # If you want to update depdencies for a single component, modify the # in-requirements.txt for that component and then run 'make requirements' to # update the component requirements.txt -apscheduler==3.6.3 +apscheduler==3.7.0 chardet<3.1.0 -eventlet==0.25.1 +eventlet==0.30.2 git+https://github.com/StackStorm/logshipper.git@stackstorm_patched#egg=logshipper gitpython==2.1.15 jinja2==2.11.3 @@ -16,8 +16,8 @@ lockfile==0.12.2 oslo.config>=1.12.1,<1.13 oslo.utils<5.0,>=4.0.0 pyinotify==0.9.6; platform_system=="Linux" -python-dateutil==2.8.0 +python-dateutil==2.8.1 python-json-logger pyyaml==5.4 -requests[security]==2.23.0 +requests[security]==2.25.1 six==1.13.0 diff --git a/st2api/requirements.txt b/st2api/requirements.txt index 0b0789e9c0..09b9fc1353 100644 --- a/st2api/requirements.txt +++ b/st2api/requirements.txt @@ -5,13 +5,13 @@ # If you want to update depdencies for a single component, modify the # in-requirements.txt for that component and then run 'make requirements' to # update the component requirements.txt -eventlet==0.25.1 -gunicorn==19.9.0 +eventlet==0.30.2 +gunicorn==20.1.0 jsonschema==2.6.0 kombu==4.6.6 -mongoengine==0.18.2 +mongoengine==0.23.0 oslo.config>=1.12.1,<1.13 oslo.utils<5.0,>=4.0.0 -pymongo==3.10.0 +pymongo==3.11.3 simplejson six==1.13.0 diff --git a/st2api/st2api/controllers/v1/actionexecutions.py b/st2api/st2api/controllers/v1/actionexecutions.py index 1c2ea1a6e1..f471889fb7 100644 --- a/st2api/st2api/controllers/v1/actionexecutions.py +++ b/st2api/st2api/controllers/v1/actionexecutions.py @@ -108,7 +108,7 @@ def _handle_schedule_execution( :type liveaction: :class:`LiveActionAPI` """ if not requester_user: - requester_user = UserDB(cfg.CONF.system_user.user) + requester_user = UserDB(name=cfg.CONF.system_user.user) # Assert action ref is valid action_ref = liveaction_api.action @@ -799,7 +799,7 @@ def put(self, id, liveaction_api, requester_user, show_secrets=False): """ if not requester_user: - requester_user = UserDB(cfg.CONF.system_user.user) + requester_user = UserDB(name=cfg.CONF.system_user.user) from_model_kwargs = { "mask_secrets": self._get_mask_secrets( @@ -929,7 +929,7 @@ def delete(self, id, requester_user, show_secrets=False): """ if not requester_user: - requester_user = UserDB(cfg.CONF.system_user.user) + requester_user = UserDB(name=cfg.CONF.system_user.user) from_model_kwargs = { "mask_secrets": self._get_mask_secrets( diff --git a/st2api/st2api/controllers/v1/aliasexecution.py b/st2api/st2api/controllers/v1/aliasexecution.py index ecbea2028e..4e0f780896 100644 --- a/st2api/st2api/controllers/v1/aliasexecution.py +++ b/st2api/st2api/controllers/v1/aliasexecution.py @@ -118,7 +118,7 @@ def _post(self, payload, requester_user, show_secrets=False, match_multiple=Fals return if not requester_user: - requester_user = UserDB(cfg.CONF.system_user.user) + requester_user = UserDB(name=cfg.CONF.system_user.user) format_str = payload.format or "" command = payload.command or "" diff --git a/st2api/st2api/controllers/v1/keyvalue.py b/st2api/st2api/controllers/v1/keyvalue.py index 8cbef93ddd..2349e76b43 100644 --- a/st2api/st2api/controllers/v1/keyvalue.py +++ b/st2api/st2api/controllers/v1/keyvalue.py @@ -78,7 +78,7 @@ def get_one( scope = FULL_USER_SCOPE if not requester_user: - requester_user = UserDB(cfg.CONF.system_user.user) + requester_user = UserDB(name=cfg.CONF.system_user.user) scope = get_datastore_full_scope(scope) self._validate_scope(scope=scope) @@ -156,7 +156,7 @@ def get_all( scope = FULL_USER_SCOPE if not requester_user: - requester_user = UserDB(cfg.CONF.system_user.user) + requester_user = UserDB(name=cfg.CONF.system_user.user) scope = get_datastore_full_scope(scope) @@ -284,7 +284,7 @@ def put(self, kvp, name, requester_user, scope=FULL_SYSTEM_SCOPE): scope = FULL_SYSTEM_SCOPE if not requester_user: - requester_user = UserDB(cfg.CONF.system_user.user) + requester_user = UserDB(name=cfg.CONF.system_user.user) scope = getattr(kvp, "scope", scope) scope = get_datastore_full_scope(scope) @@ -362,7 +362,7 @@ def delete(self, name, requester_user, scope=FULL_SYSTEM_SCOPE, user=None): scope = FULL_SYSTEM_SCOPE if not requester_user: - requester_user = UserDB(cfg.CONF.system_user.user) + requester_user = UserDB(name=cfg.CONF.system_user.user) scope = get_datastore_full_scope(scope) self._validate_scope(scope=scope) diff --git a/st2api/st2api/controllers/v1/packs.py b/st2api/st2api/controllers/v1/packs.py index 75da16e5e5..5b05ae268b 100644 --- a/st2api/st2api/controllers/v1/packs.py +++ b/st2api/st2api/controllers/v1/packs.py @@ -104,7 +104,7 @@ def post(self, pack_install_request, requester_user=None): parameters["skip_dependencies"] = True if not requester_user: - requester_user = UserDB(cfg.CONF.system_user.user) + requester_user = UserDB(name=cfg.CONF.system_user.user) new_liveaction_api = LiveActionCreateAPI( action="packs.install", parameters=parameters, user=requester_user.name @@ -127,7 +127,7 @@ def post(self, pack_uninstall_request, ref_or_id=None, requester_user=None): parameters = {"packs": pack_uninstall_request.packs} if not requester_user: - requester_user = UserDB(cfg.CONF.system_user.user) + requester_user = UserDB(name=cfg.CONF.system_user.user) new_liveaction_api = LiveActionCreateAPI( action="packs.uninstall", parameters=parameters, user=requester_user.name diff --git a/st2api/st2api/controllers/v1/rules.py b/st2api/st2api/controllers/v1/rules.py index 89f9e63531..1119e0d5cc 100644 --- a/st2api/st2api/controllers/v1/rules.py +++ b/st2api/st2api/controllers/v1/rules.py @@ -130,7 +130,7 @@ def post(self, rule, requester_user): ) if not requester_user: - requester_user = UserDB(cfg.CONF.system_user.user) + requester_user = UserDB(name=cfg.CONF.system_user.user) # Validate that the authenticated user is admin if user query param is provided user = requester_user.name @@ -195,7 +195,7 @@ def put(self, rule, rule_ref_or_id, requester_user): ) if not requester_user: - requester_user = UserDB(cfg.CONF.system_user.user) + requester_user = UserDB(name=cfg.CONF.system_user.user) # Validate that the authenticated user is admin if user query param is provided user = requester_user.name rbac_utils.assert_user_is_admin_if_user_query_param_is_provided( diff --git a/st2api/tests/unit/controllers/v1/test_executions.py b/st2api/tests/unit/controllers/v1/test_executions.py index beb6b8a529..2f9803281f 100644 --- a/st2api/tests/unit/controllers/v1/test_executions.py +++ b/st2api/tests/unit/controllers/v1/test_executions.py @@ -1651,7 +1651,7 @@ def test_get_single_attribute_success(self): resp = self.app.get("/v1/executions/%s/attribute/trigger_instance" % (exec_id)) self.assertEqual(resp.status_int, 200) - self.assertEqual(resp.json, None) + self.assertEqual(resp.json, {}) data = {} data["status"] = action_constants.LIVEACTION_STATUS_SUCCEEDED diff --git a/st2api/tests/unit/controllers/v1/test_executions_auth.py b/st2api/tests/unit/controllers/v1/test_executions_auth.py index f1045a7d54..9f3842d4d5 100644 --- a/st2api/tests/unit/controllers/v1/test_executions_auth.py +++ b/st2api/tests/unit/controllers/v1/test_executions_auth.py @@ -119,6 +119,10 @@ def mock_get_token(*args, **kwargs): return USR_TOKEN +def mock_get_by_name(name): + return UserDB(name=name) + + @mock.patch.object(PoolPublisher, "publish", mock.MagicMock()) class ActionExecutionControllerTestCaseAuthEnabled(FunctionalTest): @@ -126,7 +130,7 @@ class ActionExecutionControllerTestCaseAuthEnabled(FunctionalTest): @classmethod @mock.patch.object(Token, "get", mock.MagicMock(side_effect=mock_get_token)) - @mock.patch.object(User, "get_by_name", mock.MagicMock(side_effect=UserDB)) + @mock.patch.object(User, "get_by_name", mock_get_by_name) @mock.patch.object( action_validator, "validate_action", mock.MagicMock(return_value=True) ) diff --git a/st2auth/requirements.txt b/st2auth/requirements.txt index bf086b6b83..6b6016bcb6 100644 --- a/st2auth/requirements.txt +++ b/st2auth/requirements.txt @@ -5,13 +5,13 @@ # If you want to update depdencies for a single component, modify the # in-requirements.txt for that component and then run 'make requirements' to # update the component requirements.txt -bcrypt==3.1.7 -eventlet==0.25.1 +bcrypt==3.2.0 +eventlet==0.30.2 git+https://github.com/StackStorm/st2-auth-backend-flat-file.git@master#egg=st2-auth-backend-flat-file git+https://github.com/StackStorm/st2-auth-ldap.git@master#egg=st2-auth-ldap -gunicorn==19.9.0 +gunicorn==20.1.0 oslo.config>=1.12.1,<1.13 -passlib==1.7.1 -pymongo==3.10.0 +passlib==1.7.4 +pymongo==3.11.3 six==1.13.0 stevedore==1.30.1 diff --git a/st2client/requirements.txt b/st2client/requirements.txt index dadb8f6b19..ab436c7878 100644 --- a/st2client/requirements.txt +++ b/st2client/requirements.txt @@ -7,18 +7,18 @@ # update the component requirements.txt argcomplete chardet<3.1.0 -cryptography==3.3.2 +cryptography==3.4.7 jsonpath-rw==1.4.0 jsonschema==2.6.0 more-itertools==5.0.0 orjson==3.5.1 prettytable prompt-toolkit==1.0.15 -python-dateutil==2.8.0 +python-dateutil==2.8.1 python-editor==1.0.4 -pytz==2019.1 +pytz==2021.1 pyyaml==5.4 -requests[security]==2.23.0 +requests[security]==2.25.1 six==1.13.0 sseclient-py==1.7 zipp>=0.5,<=1.0.0 diff --git a/st2common/requirements.txt b/st2common/requirements.txt index 67993ed05b..7cb83042a2 100644 --- a/st2common/requirements.txt +++ b/st2common/requirements.txt @@ -6,36 +6,36 @@ # in-requirements.txt for that component and then run 'make requirements' to # update the component requirements.txt amqp==2.5.2 -apscheduler==3.6.3 +apscheduler==3.7.0 chardet<3.1.0 -cryptography==3.3.2 +cryptography==3.4.7 dnspython>=1.16.0,<2.0.0 -eventlet==0.25.1 -flex==6.14.0 +eventlet==0.30.2 +flex==6.14.1 git+https://github.com/StackStorm/orquesta.git@v1.3.0#egg=orquesta git+https://github.com/StackStorm/st2-rbac-backend.git@master#egg=st2-rbac-backend gitpython==2.1.15 -greenlet==0.4.15 +greenlet==1.0.0 jinja2==2.11.3 jsonpath-rw==1.4.0 jsonschema==2.6.0 kombu==4.6.6 lockfile==0.12.2 -mongoengine==0.18.2 +mongoengine==0.23.0 networkx==1.11 orjson==3.5.1 oslo.config>=1.12.1,<1.13 paramiko==2.7.2 -pymongo==3.10.0 -python-dateutil==2.8.0 +pymongo==3.11.3 +python-dateutil==2.8.1 python-statsd==2.1.0 pyyaml==5.4 -requests[security]==2.23.0 +requests[security]==2.25.1 retrying==1.3.3 routes==2.4.1 semver==2.9.0 six==1.13.0 tooz==2.8.0 udatetime==0.0.16 -webob==1.8.5 +webob==1.8.7 zake==0.2.2 diff --git a/st2common/st2common/exceptions/workflow.py b/st2common/st2common/exceptions/workflow.py index 2a346819be..370030c6ec 100644 --- a/st2common/st2common/exceptions/workflow.py +++ b/st2common/st2common/exceptions/workflow.py @@ -30,7 +30,7 @@ def retry_on_connection_errors(exc): LOG.warning("Determining if exception %s should be retried.", type(exc)) retrying = isinstance(exc, tooz.coordination.ToozConnectionError) or isinstance( - exc, mongoengine.connection.MongoEngineConnectionError + exc, mongoengine.connection.ConnectionFailure ) if retrying: diff --git a/st2common/st2common/garbage_collection/inquiries.py b/st2common/st2common/garbage_collection/inquiries.py index ad95126b21..2381472a73 100644 --- a/st2common/st2common/garbage_collection/inquiries.py +++ b/st2common/st2common/garbage_collection/inquiries.py @@ -90,7 +90,7 @@ def purge_inquiries(logger): # Request that root workflow resumes root_liveaction = action_service.get_root_liveaction(liveaction_db) action_service.request_resume( - root_liveaction, UserDB(cfg.CONF.system_user.user) + root_liveaction, UserDB(name=cfg.CONF.system_user.user) ) logger.info('Marked %s ttl-expired Inquiries as "timed out".' % (gc_count)) diff --git a/st2common/st2common/models/utils/profiling.py b/st2common/st2common/models/utils/profiling.py index 47add2adc3..55d6b486c7 100644 --- a/st2common/st2common/models/utils/profiling.py +++ b/st2common/st2common/models/utils/profiling.py @@ -83,7 +83,7 @@ def log_query_and_profile_data_for_queryset(queryset): # Note: We need to clone the queryset when using explain because explain advances the cursor # internally which changes the function result cloned_queryset = queryset.clone() - explain_info = cloned_queryset.explain(format=True) + explain_info = cloned_queryset.explain() if mongo_query is not None and collection_name is not None: mongo_shell_query = construct_mongo_shell_query( diff --git a/st2common/st2common/persistence/db_init.py b/st2common/st2common/persistence/db_init.py index 678ca71ccd..ed6d080423 100644 --- a/st2common/st2common/persistence/db_init.py +++ b/st2common/st2common/persistence/db_init.py @@ -34,9 +34,7 @@ def _retry_if_connection_error(error): # Ideally, a special execption or atleast some exception code. # If this does become an issue look for "Cannot connect to database" at the # start of error msg. - is_connection_error = isinstance( - error, mongoengine.connection.MongoEngineConnectionError - ) + is_connection_error = isinstance(error, mongoengine.connection.ConnectionFailure) if is_connection_error: LOG.warn("Retry on ConnectionError - %s", error) return is_connection_error diff --git a/st2common/st2common/services/inquiry.py b/st2common/st2common/services/inquiry.py index a8026c8ab1..1301a62c4b 100644 --- a/st2common/st2common/services/inquiry.py +++ b/st2common/st2common/services/inquiry.py @@ -61,7 +61,7 @@ def check_inquiry(inquiry): def check_permission(inquiry, requester): # Normalize user object. user_db = ( - auth_db_models.UserDB(requester) + auth_db_models.UserDB(name=requester) if isinstance(requester, six.string_types) else requester ) diff --git a/st2common/tests/unit/services/test_workflow_service_retries.py b/st2common/tests/unit/services/test_workflow_service_retries.py index baa79c6954..f39315a308 100644 --- a/st2common/tests/unit/services/test_workflow_service_retries.py +++ b/st2common/tests/unit/services/test_workflow_service_retries.py @@ -196,8 +196,8 @@ def test_retries_exhausted_from_coordinator_connection_error(self): "update_task_state", mock.MagicMock( side_effect=[ - mongoengine.connection.MongoEngineConnectionError(), - mongoengine.connection.MongoEngineConnectionError(), + mongoengine.connection.ConnectionFailure(), + mongoengine.connection.ConnectionFailure(), None, ] ), @@ -227,7 +227,7 @@ def test_recover_from_database_connection_error(self): @mock.patch.object( wf_svc, "update_task_state", - mock.MagicMock(side_effect=mongoengine.connection.MongoEngineConnectionError()), + mock.MagicMock(side_effect=mongoengine.connection.ConnectionFailure()), ) def test_retries_exhausted_from_database_connection_error(self): wf_meta = self.get_wf_fixture_meta_data(TEST_PACK_PATH, "sequential.yaml") @@ -248,7 +248,7 @@ def test_retries_exhausted_from_database_connection_error(self): # The connection error should raise if retries are exhaused. self.assertRaises( - mongoengine.connection.MongoEngineConnectionError, + mongoengine.connection.ConnectionFailure, wf_svc.handle_action_execution_completion, tk1_ac_ex_db, ) diff --git a/st2common/tests/unit/test_exceptions_workflow.py b/st2common/tests/unit/test_exceptions_workflow.py index a9fbcc549f..fbb6dbd1fe 100644 --- a/st2common/tests/unit/test_exceptions_workflow.py +++ b/st2common/tests/unit/test_exceptions_workflow.py @@ -42,7 +42,7 @@ def test_retry_on_connection_errors(self): exc = coordination.ToozConnectionError("foobar") self.assertTrue(wf_exc.retry_on_connection_errors(exc)) - exc = mongoengine.connection.MongoEngineConnectionError() + exc = mongoengine.connection.ConnectionFailure() self.assertTrue(wf_exc.retry_on_connection_errors(exc)) def test_do_not_retry_on_connection_errors(self): diff --git a/st2exporter/requirements.txt b/st2exporter/requirements.txt index c54ceb64f3..a713318929 100644 --- a/st2exporter/requirements.txt +++ b/st2exporter/requirements.txt @@ -5,7 +5,7 @@ # If you want to update depdencies for a single component, modify the # in-requirements.txt for that component and then run 'make requirements' to # update the component requirements.txt -eventlet==0.25.1 +eventlet==0.30.2 kombu==4.6.6 oslo.config>=1.12.1,<1.13 six==1.13.0 diff --git a/st2reactor/requirements.txt b/st2reactor/requirements.txt index 9587a1b4bc..851c811ad9 100644 --- a/st2reactor/requirements.txt +++ b/st2reactor/requirements.txt @@ -5,11 +5,11 @@ # If you want to update depdencies for a single component, modify the # in-requirements.txt for that component and then run 'make requirements' to # update the component requirements.txt -apscheduler==3.6.3 -eventlet==0.25.1 +apscheduler==3.7.0 +eventlet==0.30.2 jsonpath-rw==1.4.0 jsonschema==2.6.0 kombu==4.6.6 oslo.config>=1.12.1,<1.13 -python-dateutil==2.8.0 +python-dateutil==2.8.1 six==1.13.0 diff --git a/st2reactor/tests/integration/test_sensor_watcher.py b/st2reactor/tests/integration/test_sensor_watcher.py index 6caee09c7f..2c062aee41 100644 --- a/st2reactor/tests/integration/test_sensor_watcher.py +++ b/st2reactor/tests/integration/test_sensor_watcher.py @@ -15,7 +15,8 @@ from __future__ import absolute_import -from monotonic import monotonic +from time import monotonic + from pyrabbit.api import Client from st2common.util import concurrency diff --git a/st2stream/requirements.txt b/st2stream/requirements.txt index 1e6bea91e5..d41dc6d252 100644 --- a/st2stream/requirements.txt +++ b/st2stream/requirements.txt @@ -5,12 +5,12 @@ # If you want to update depdencies for a single component, modify the # in-requirements.txt for that component and then run 'make requirements' to # update the component requirements.txt -eventlet==0.25.1 -gunicorn==19.9.0 +eventlet==0.30.2 +gunicorn==20.1.0 jsonschema==2.6.0 kombu==4.6.6 -mongoengine==0.18.2 +mongoengine==0.23.0 oslo.config>=1.12.1,<1.13 oslo.utils<5.0,>=4.0.0 -pymongo==3.10.0 +pymongo==3.11.3 six==1.13.0 diff --git a/st2tests/requirements.txt b/st2tests/requirements.txt index ab8092f93e..239f75626e 100644 --- a/st2tests/requirements.txt +++ b/st2tests/requirements.txt @@ -6,11 +6,11 @@ # in-requirements.txt for that component and then run 'make requirements' to # update the component requirements.txt RandomWords -mock==2.0.0 +mock==4.0.3 nose nose-parallel==0.3.1 nose-timer==0.7.5 -psutil==5.6.6 +psutil==5.8.0 pyrabbit rednose unittest2 diff --git a/test-requirements-py27.txt b/test-requirements-py27.txt deleted file mode 100644 index e761f37185..0000000000 --- a/test-requirements-py27.txt +++ /dev/null @@ -1,35 +0,0 @@ -# NOTE: codecov only supports coverage==4.5.2 -coverage==4.5.2 -pep8==1.7.1 -st2flake8==0.1.0 -astroid==1.6.5 -pylint==1.9.4 -pylint-plugin-utils>=0.4 -bandit==1.5.1 -ipython<6.0.0 -mock==3.0.5 -nose>=1.3.7 -tabulate -unittest2 -sphinx==1.7.9 -sphinx-autobuild -# nosetests enhancements -rednose -nose-timer==0.7.5 -# splitting tests run on a separate CI machines -nose-parallel==0.3.1 -# Required by st2client tests -pyyaml==5.4 -RandomWords -gunicorn==19.9.0 -psutil==5.6.6 -webtest==2.0.25 -rstcheck>=3.3.1,<3.4 -tox==3.14.1 -pyrabbit -# Since StackStorm v2.8.0 we now use cryptography instead of keyczar, but we still have some tests -# which utilize keyczar and ensure new cryptography code is fully compatible with keyczar code -# (those tests only run under Python 2.7 since keyczar doesn't support Python 3.x). -# See https://github.com/StackStorm/st2/pull/4165 -python-keyczar -pip-tools # For pip-compile, to check for version conflicts diff --git a/test-requirements.txt b/test-requirements.txt index 1ea72295cc..f137b4d1e1 100644 --- a/test-requirements.txt +++ b/test-requirements.txt @@ -2,15 +2,15 @@ coverage==4.5.2 pep8==1.7.1 st2flake8==0.1.0 -astroid==2.4.2 -pylint==2.6.0 +astroid==2.5.2 +pylint==2.7.4 pylint-plugin-utils>=0.4 black==20.8b1 pre-commit==2.1.0 -bandit==1.5.1 +bandit==1.7.0 ipython<6.0.0 isort>=4.2.5 -mock==3.0.5 +mock==3.0.3 nose>=1.3.7 tabulate unittest2 @@ -18,17 +18,17 @@ sphinx==1.7.9 sphinx-autobuild # nosetests enhancements rednose -nose-timer==0.7.5 +nose-timer==1.0.1 # splitting tests run on a separate CI machines -nose-parallel==0.3.1 +nose-parallel==0.4.0 # Required by st2client tests pyyaml==5.4 RandomWords gunicorn==19.9.0 psutil==5.6.6 -webtest==2.0.25 +webtest==2.0.35 rstcheck>=3.3.1,<3.4 -tox==3.14.1 +tox==3.23.0 pyrabbit # pip-tools provides pip-compile: to check for version conflicts # pip-tools 5.3 needs pip<20.3 @@ -38,6 +38,6 @@ pip-tools>=5.4,<6.1 pytest==5.4.3 pytest-benchmark==3.2.3 # zstandard is used for micro benchmarks -zstandard==0.15.1 +zstandard==0.15.2 # ujson is used for micro benchmarks ujson==1.35