diff --git a/.copier-answers.yml b/.copier-answers.yml index c448ae64f5..e407699190 100644 --- a/.copier-answers.yml +++ b/.copier-answers.yml @@ -1,5 +1,5 @@ # Do NOT update manually; changes here will be overwritten by Copier -_commit: v1.19 +_commit: v1.21.1 _src_path: gh:oca/oca-addons-repo-template additional_ruff_rules: [] ci: GitHub diff --git a/.github/workflows/stale.yml b/.github/workflows/stale.yml index 1693a1253b..fa17fcd4e8 100644 --- a/.github/workflows/stale.yml +++ b/.github/workflows/stale.yml @@ -9,7 +9,7 @@ jobs: runs-on: ubuntu-latest steps: - name: Stale PRs and issues policy - uses: actions/stale@v4 + uses: actions/stale@v9 with: repo-token: ${{ secrets.GITHUB_TOKEN }} # General settings. @@ -48,7 +48,7 @@ jobs: # * Issues that are pending more information # * Except Issues marked as "no stale" - name: Needs more information stale issues policy - uses: actions/stale@v4 + uses: actions/stale@v9 with: repo-token: ${{ secrets.GITHUB_TOKEN }} ascending: true diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index 36c22a87b3..03c1acbbcf 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -63,7 +63,9 @@ jobs: run: oca_init_test_database - name: Run tests run: oca_run_tests - - uses: codecov/codecov-action@v1 + - uses: codecov/codecov-action@v4 + with: + token: ${{ secrets.CODECOV_TOKEN }} - name: Update .pot files run: oca_export_and_push_pot https://x-access-token:${{ secrets.GIT_PUSH_TOKEN }}@github.com/${{ github.repository }} if: ${{ matrix.makepot == 'true' && github.event_name == 'push' && github.repository_owner == 'OCA' }} diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml index 36afb0ac62..ed5ef84211 100644 --- a/.pre-commit-config.yaml +++ b/.pre-commit-config.yaml @@ -16,6 +16,8 @@ exclude: | readme/.*\.(rst|md)$| # Ignore build and dist directories in addons /build/|/dist/| + # Ignore test files in addons + /tests/samples/.*| # You don't usually want a bot to modify your legal texts (LICENSE.*|COPYING.*) default_language_version: @@ -41,7 +43,7 @@ repos: hooks: - id: whool-init - repo: https://github.com/oca/maintainer-tools - rev: f71041f22b8cd68cf7c77b73a14ca8d8cd190a60 + rev: 9a170331575a265c092ee6b24b845ec508e8ef75 hooks: # update the NOT INSTALLABLE ADDONS section above - id: oca-update-pre-commit-excluded-addons @@ -110,7 +112,7 @@ repos: args: [--fix, --exit-non-zero-on-fix] - id: ruff-format - repo: https://github.com/OCA/pylint-odoo - rev: v8.0.19 + rev: v9.0.4 hooks: - id: pylint_odoo name: pylint with optional checks diff --git a/.ruff.toml b/.ruff.toml index 634db8e79b..0240c75f6a 100644 --- a/.ruff.toml +++ b/.ruff.toml @@ -6,6 +6,7 @@ fix = true extend-select = [ "B", "C90", + "E501", # line too long (default 88) "I", # isort "UP", # pyupgrade ] diff --git a/README.md b/README.md index fcfa3c23f5..b5150a22a5 100644 --- a/README.md +++ b/README.md @@ -21,11 +21,11 @@ Available addons ---------------- addon | version | maintainers | summary --- | --- | --- | --- -[queue_job](queue_job/) | 17.0.1.0.1 | [![guewen](https://github.com/guewen.png?size=30px)](https://github.com/guewen) | Job Queue +[queue_job](queue_job/) | 17.0.1.0.2 | [![guewen](https://github.com/guewen.png?size=30px)](https://github.com/guewen) | Job Queue [queue_job_cron](queue_job_cron/) | 17.0.1.0.0 | | Scheduled Actions as Queue Jobs [queue_job_cron_jobrunner](queue_job_cron_jobrunner/) | 17.0.1.0.0 | [![ivantodorovich](https://github.com/ivantodorovich.png?size=30px)](https://github.com/ivantodorovich) | Run jobs without a dedicated JobRunner [queue_job_subscribe](queue_job_subscribe/) | 17.0.1.0.0 | | Control which users are subscribed to queue job notifications -[test_queue_job](test_queue_job/) | 17.0.1.0.0 | | Queue Job Tests +[test_queue_job](test_queue_job/) | 17.0.1.0.1 | | Queue Job Tests [//]: # (end addons) diff --git a/queue_job/README.rst b/queue_job/README.rst index 128a3aee34..745269c5fd 100644 --- a/queue_job/README.rst +++ b/queue_job/README.rst @@ -7,7 +7,7 @@ Job Queue !! This file is generated by oca-gen-addon-readme !! !! changes will be overwritten. !! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! - !! source digest: sha256:58e189fe2cad642dc9523fc9283f41a4c110ec12f216a4d4e70babce7ffee13e + !! source digest: sha256:d0febcfe31d0d48afbdc26c7ddc7af80382fe628d4168d86d68bbf151f885358 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! .. |badge1| image:: https://img.shields.io/badge/maturity-Mature-brightgreen.png diff --git a/queue_job/__manifest__.py b/queue_job/__manifest__.py index 429e414c3d..0daada1821 100644 --- a/queue_job/__manifest__.py +++ b/queue_job/__manifest__.py @@ -2,7 +2,7 @@ { "name": "Job Queue", - "version": "17.0.1.0.1", + "version": "17.0.1.0.2", "author": "Camptocamp,ACSONE SA/NV,Odoo Community Association (OCA)", "website": "https://github.com/OCA/queue", "license": "LGPL-3", diff --git a/queue_job/static/description/index.html b/queue_job/static/description/index.html index bc13a496af..d600d3bcfb 100644 --- a/queue_job/static/description/index.html +++ b/queue_job/static/description/index.html @@ -366,7 +366,7 @@

Job Queue

!! This file is generated by oca-gen-addon-readme !! !! changes will be overwritten. !! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! -!! source digest: sha256:58e189fe2cad642dc9523fc9283f41a4c110ec12f216a4d4e70babce7ffee13e +!! source digest: sha256:d0febcfe31d0d48afbdc26c7ddc7af80382fe628d4168d86d68bbf151f885358 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! -->

Mature License: LGPL-3 OCA/queue Translate me on Weblate Try me on Runboat

This addon adds an integrated Job Queue to Odoo.

diff --git a/queue_job/tests/common.py b/queue_job/tests/common.py index 1f7638ed40..481a9f5d18 100644 --- a/queue_job/tests/common.py +++ b/queue_job/tests/common.py @@ -345,7 +345,7 @@ def trap_jobs(self): @contextmanager -def mock_with_delay(): +def mock_with_delay(): # pylint: disable=E501 """Context Manager mocking ``with_delay()`` DEPRECATED: use ``trap_jobs()'``. @@ -390,9 +390,9 @@ def test_export(self): self.assertDictEqual(delay_kwargs, {}) An example of the first kind of test: - https://github.com/camptocamp/connector-jira/blob/0ca4261b3920d5e8c2ae4bb0fc352ea3f6e9d2cd/connector_jira/tests/test_batch_timestamp_import.py#L43-L76 # noqa + https://github.com/camptocamp/connector-jira/blob/0ca4261b3920d5e8c2ae4bb0fc352ea3f6e9d2cd/connector_jira/tests/test_batch_timestamp_import.py#L43-L76 And the second kind: - https://github.com/camptocamp/connector-jira/blob/0ca4261b3920d5e8c2ae4bb0fc352ea3f6e9d2cd/connector_jira/tests/test_import_task.py#L34-L46 # noqa + https://github.com/camptocamp/connector-jira/blob/0ca4261b3920d5e8c2ae4bb0fc352ea3f6e9d2cd/connector_jira/tests/test_import_task.py#L34-L46 """ with mock.patch( diff --git a/queue_job/tests/test_model_job_channel.py b/queue_job/tests/test_model_job_channel.py index 317f044ccf..20ebbc0bfe 100644 --- a/queue_job/tests/test_model_job_channel.py +++ b/queue_job/tests/test_model_job_channel.py @@ -44,7 +44,7 @@ def test_channel_complete_name_uniq(self): # The context manager 'with self.assertRaises(IntegrityError)' purposefully # not uses here due to its 'flush_all()' method inside it and exception raises - # before the line 'self.env.flush_all()'. So, we are expecting an IntegrityError. + # before the line 'self.env.flush_all()'. So, we are expecting an IntegrityError try: self.env.flush_all() except IntegrityError as ex: diff --git a/test_queue_job/__manifest__.py b/test_queue_job/__manifest__.py index b35f1771ab..baa4e9cf06 100644 --- a/test_queue_job/__manifest__.py +++ b/test_queue_job/__manifest__.py @@ -3,7 +3,7 @@ { "name": "Queue Job Tests", - "version": "17.0.1.0.0", + "version": "17.0.1.0.1", "author": "Camptocamp,Odoo Community Association (OCA)", "license": "LGPL-3", "category": "Generic Modules", diff --git a/test_queue_job/tests/test_delay_mocks.py b/test_queue_job/tests/test_delay_mocks.py index e8f0ed4065..e9e071fd0a 100644 --- a/test_queue_job/tests/test_delay_mocks.py +++ b/test_queue_job/tests/test_delay_mocks.py @@ -143,8 +143,9 @@ def test_trap_jobs_on_with_delay_assert_model_enqueued_mismatch(self): "identity_key=, " "max_retries=1, priority=15\\) was not enqueued\\.\n" "Actual enqueued jobs:\n" - r" \* .testing_method\(1, foo=2\) with properties " - r"\(priority=15, max_retries=1, eta=15, description=Test, channel=root.test, " + r" \* .testing_method\(1, foo=2\) with " + r"properties \(priority=15, max_retries=1, eta=15, description=Test, " + r"channel=root.test, " r"identity_key=\)" ).format(record_id=recordset.id) with self.assertRaisesRegex(AssertionError, message): @@ -168,14 +169,14 @@ def test_trap_jobs_on_with_delay_assert_recordset_enqueued_mismatch(self): self.env["test.queue.job"].button_that_uses_with_delay() trap.assert_jobs_count(1) message = ( - rf"Job \.testing_method\(1, foo=2\) with " - r"properties \(channel=root\.test, description=Test, eta=15, " + rf"Job \.testing_method\(1, foo=2\)" + r" with properties \(channel=root\.test, description=Test, eta=15, " "identity_key=, " "max_retries=1, priority=15\\) was not enqueued\\.\n" "Actual enqueued jobs:\n" r" \* .testing_method\(1, foo=2\) with properties " - r"\(priority=15, max_retries=1, eta=15, description=Test, channel=root.test, " - r"identity_key=\)" + r"\(priority=15, max_retries=1, eta=15, description=Test, channel=root." + r"test, identity_key=\)" ) with self.assertRaisesRegex(AssertionError, message): trap.assert_enqueued_job( diff --git a/test_queue_job/tests/test_json_field.py b/test_queue_job/tests/test_json_field.py index d59d388341..bfe227bb10 100644 --- a/test_queue_job/tests/test_json_field.py +++ b/test_queue_job/tests/test_json_field.py @@ -11,7 +11,7 @@ class TestJsonField(common.TransactionCase): - # TODO: when migrating to 16.0, adapt the checks in queue_job/tests/test_json_field.py + # TODO: when migrating to 16.0, adapt checks in queue_job/tests/test_json_field.py # to verify the context keys are encoded and remove these def test_encoder_recordset_store_context(self): demo_user = self.env.ref("base.user_demo")