From 5667da11482e8eba95d6531667d24ac48158b595 Mon Sep 17 00:00:00 2001 From: Daniel Mursa Date: Thu, 27 Nov 2025 14:25:56 +0100 Subject: [PATCH 1/2] :arrow_up: Upgrade dependencies - commonground-api-common==2.10.5 - django==5.2.8 - mozilla-django-oidc-db==1.1.1 - open-api-framework==0.13.2 - notifications-api-common==0.10.0 --- CHANGELOG.rst | 7 +++++++ docs/conf.py | 6 ++++++ docs/installation/config.rst | 2 +- requirements/base.txt | 14 ++++++++------ requirements/ci.txt | 11 ++++++----- requirements/dev.txt | 11 ++++++----- 6 files changed, 34 insertions(+), 17 deletions(-) diff --git a/CHANGELOG.rst b/CHANGELOG.rst index cde42507..51163f07 100644 --- a/CHANGELOG.rst +++ b/CHANGELOG.rst @@ -303,6 +303,13 @@ Change history * DB_POOL_RECONNECT_TIMEOUT * DB_POOL_NUM_WORKERS +.. warning:: + + **Experimental:** — connection pooling is *not yet recommended for production use*. + It may not behave as expected when running uWSGI with multiple processes or threads. + Use this feature cautiously and test thoroughly before deployment. + See the :ref:`documentation ` for details. + * [:objects-api:`566`] Add DB_CONN_MAX_AGE environment variable (see `documentation for environment variables for database `_) 3.0.3 (2025-04-03) diff --git a/docs/conf.py b/docs/conf.py index b9d86e97..85d2040c 100644 --- a/docs/conf.py +++ b/docs/conf.py @@ -133,10 +133,16 @@ ), } +oaf_version = _version("open-api-framework") django_structlog_version = _version("django-structlog") + intersphinx_mapping = { "django-structlog": ( f"https://django-structlog.readthedocs.io/en/{django_structlog_version}", None, ), + "oaf": ( + f"https://open-api-framework.readthedocs.io/en/{oaf_version}/", + None, + ), } diff --git a/docs/installation/config.rst b/docs/installation/config.rst index c62ba443..2e1e09a2 100644 --- a/docs/installation/config.rst +++ b/docs/installation/config.rst @@ -32,7 +32,7 @@ Database * ``DB_HOST``: hostname of the PostgreSQL database. Defaults to ``db`` for the docker environment, otherwise defaults to ``localhost``. * ``DB_PORT``: port number of the database. Defaults to: ``5432``. * ``DB_CONN_MAX_AGE``: The lifetime of a database connection, as an integer of seconds. Use 0 to close database connections at the end of each request — Django’s historical behavior. This setting is ignored if connection pooling is used. Defaults to: ``60``. -* ``DB_POOL_ENABLED``: Whether to use connection pooling. Defaults to: ``False``. +* ``DB_POOL_ENABLED``: **Experimental:** Whether to use connection pooling. This feature is not yet recommended for production use. See the documentation for details: https://open-api-framework.readthedocs.io/en/latest/connection_pooling.html. Defaults to: ``False``. * ``DB_POOL_MIN_SIZE``: The minimum number of connection the pool will hold. The pool will actively try to create new connections if some are lost (closed, broken) and will try to never go below min_size. Defaults to: ``4``. * ``DB_POOL_MAX_SIZE``: The maximum number of connections the pool will hold. If None, or equal to min_size, the pool will not grow or shrink. If larger than min_size, the pool can grow if more than min_size connections are requested at the same time and will shrink back after the extra connections have been unused for more than max_idle seconds. Defaults to: ``None``. * ``DB_POOL_TIMEOUT``: The default maximum time in seconds that a client can wait to receive a connection from the pool (using connection() or getconn()). Note that these methods allow to override the timeout default. Defaults to: ``30``. diff --git a/requirements/base.txt b/requirements/base.txt index e348a858..d59e91c7 100644 --- a/requirements/base.txt +++ b/requirements/base.txt @@ -60,7 +60,7 @@ click-plugins==1.1.1 # via celery click-repl==0.3.0 # via celery -commonground-api-common==2.10.1 +commonground-api-common==2.10.5 # via # -r requirements/base.in # open-api-framework @@ -71,7 +71,7 @@ cryptography==44.0.1 # mozilla-django-oidc # pyopenssl # webauthn -django==5.2.7 +django==5.2.8 # via # commonground-api-common # django-admin-index @@ -259,15 +259,15 @@ maykin-common==0.11.0 # via -r requirements/base.in mozilla-django-oidc==4.0.0 # via mozilla-django-oidc-db -mozilla-django-oidc-db==1.1.0 +mozilla-django-oidc-db==1.1.1 # via # -r requirements/base.in # open-api-framework -notifications-api-common==0.7.3 +notifications-api-common==0.10.0 # via # -r requirements/base.in # commonground-api-common -open-api-framework==0.13.1 +open-api-framework==0.13.2 # via -r requirements/base.in opentelemetry-api==1.38.0 # via @@ -410,7 +410,9 @@ ruamel-yaml-clib==0.2.12 semantic-version==2.10.0 # via django-upgrade-check sentry-sdk==2.12.0 - # via open-api-framework + # via + # commonground-api-common + # open-api-framework six==1.16.0 # via # bleach diff --git a/requirements/ci.txt b/requirements/ci.txt index 757cf185..a734bc9e 100644 --- a/requirements/ci.txt +++ b/requirements/ci.txt @@ -111,7 +111,7 @@ click-repl==0.3.0 # celery codecov==2.1.13 # via -r requirements/test-tools.in -commonground-api-common==2.10.1 +commonground-api-common==2.10.5 # via # -c requirements/base.txt # -r requirements/base.txt @@ -132,7 +132,7 @@ cryptography==44.0.1 # webauthn cssselect==1.1.0 # via pyquery -django==5.2.7 +django==5.2.8 # via # -c requirements/base.txt # -r requirements/base.txt @@ -475,19 +475,19 @@ mozilla-django-oidc==4.0.0 # -c requirements/base.txt # -r requirements/base.txt # mozilla-django-oidc-db -mozilla-django-oidc-db==1.1.0 +mozilla-django-oidc-db==1.1.1 # via # -c requirements/base.txt # -r requirements/base.txt # open-api-framework multidict==6.0.5 # via yarl -notifications-api-common==0.7.3 +notifications-api-common==0.10.0 # via # -c requirements/base.txt # -r requirements/base.txt # commonground-api-common -open-api-framework==0.13.1 +open-api-framework==0.13.2 # via # -c requirements/base.txt # -r requirements/base.txt @@ -771,6 +771,7 @@ sentry-sdk==2.12.0 # via # -c requirements/base.txt # -r requirements/base.txt + # commonground-api-common # open-api-framework six==1.16.0 # via diff --git a/requirements/dev.txt b/requirements/dev.txt index c8c28ff6..31c77624 100644 --- a/requirements/dev.txt +++ b/requirements/dev.txt @@ -139,7 +139,7 @@ codecov==2.1.13 # via # -c requirements/ci.txt # -r requirements/ci.txt -commonground-api-common==2.10.1 +commonground-api-common==2.10.5 # via # -c requirements/ci.txt # -r requirements/ci.txt @@ -169,7 +169,7 @@ cssselect==1.1.0 # pyquery distlib==0.3.9 # via virtualenv -django==5.2.7 +django==5.2.8 # via # -c requirements/ci.txt # -r requirements/ci.txt @@ -565,7 +565,7 @@ mozilla-django-oidc==4.0.0 # -c requirements/ci.txt # -r requirements/ci.txt # mozilla-django-oidc-db -mozilla-django-oidc-db==1.1.0 +mozilla-django-oidc-db==1.1.1 # via # -c requirements/ci.txt # -r requirements/ci.txt @@ -577,12 +577,12 @@ multidict==6.0.5 # yarl nodeenv==1.9.1 # via pre-commit -notifications-api-common==0.7.3 +notifications-api-common==0.10.0 # via # -c requirements/ci.txt # -r requirements/ci.txt # commonground-api-common -open-api-framework==0.13.1 +open-api-framework==0.13.2 # via # -c requirements/ci.txt # -r requirements/ci.txt @@ -912,6 +912,7 @@ sentry-sdk==2.12.0 # via # -c requirements/ci.txt # -r requirements/ci.txt + # commonground-api-common # open-api-framework setuptools==78.1.1 # via pip-tools From f48f29628da0d592bb6f8ddb037e11705e9ae68f Mon Sep 17 00:00:00 2001 From: Daniel Mursa Date: Mon, 1 Dec 2025 11:54:43 +0100 Subject: [PATCH 2/2] :bookmark: Release 3.5.0 --- CHANGELOG.rst | 64 ++++++++++++++++++++++++++++++++++++++--- README.NL.rst | 7 +++-- README.rst | 7 +++-- docs/admin/object.rst | 28 +++++++++--------- docs/api/index.rst | 4 +-- docs/conf.py | 4 +++ package-lock.json | 39 ++++++++----------------- package.json | 2 +- publiccode.yaml | 4 +-- pyproject.toml | 2 +- src/objects/__init__.py | 2 +- 11 files changed, 107 insertions(+), 56 deletions(-) diff --git a/CHANGELOG.rst b/CHANGELOG.rst index 51163f07..0c5c2e44 100644 --- a/CHANGELOG.rst +++ b/CHANGELOG.rst @@ -2,14 +2,14 @@ Change history ============== -3.5.0 (TBD) ------------ +3.5.0 (2025-12-01) +------------------ .. warning:: Changes to format of ``setup_configuration`` data for OpenID connect - In this release, ``mozilla-django-oidc-db`` has been updated to version 1.1.0, which requires the new data format. + In this release, ``mozilla-django-oidc-db`` has been updated to version 1.1.1, which requires the new data format. The old format is deprecated and will be removed in future releases. The new configuration must be used, as it splits the previous solo model configuration into ``OIDCProvider`` and ``OIDCClient`` @@ -33,6 +33,62 @@ Change history For detailed configuration, see :ref:`Admin OIDC Configuration Step `. Make sure to check which fields are marked as ``DEPRECATED`` and replace them with the fields that are mentioned as replacements. +**New features** + +* [:open-api-framework:`152`] Add OpenTelemetry (``OTel``) for collecting and exporting application metrics. + + * Metrics now exposed include: + + - HTTP request durations. + - Number of active requests. + - Number of users, logins, logouts, failed logins, and account lockouts. + - **CRUD** operations for the ``/objects`` endpoint. + + * All metrics are exported using the **OpenTelemetry standard**, enabling seamless integration with existing monitoring and visualization platforms. + +.. note:: + + The OpenTelemetry SDK is **enabled by default**. + + If you do not have an endpoint to send system telemetry to, update your deployment to **disable it** by setting the environment variable: + + .. code-block:: bash + + OTEL_SDK_DISABLED=true + + If this is not done, warnings will be emitted to the container logs. The application will continue to function normally. + + All available metrics and details can be found in the :ref:`Observability documentation `. + +* [:open-api-framework:`188`] Add CSV option to ``dump_data.sh`` script (see :ref:`scripts` for more information) +* [:objects-api:`621`] Improve admin search bar for JSON data using key-value patterns, see :ref:`admin_objects_search` + +**Bugfixes** + +* [:commonground-api-common:`134`] Fix exceptions in API endpoints not forwarded to Sentry when ``DEBUG=False`` + +**Maintenance** + +* [:open-api-framework:`191`] ``nodejs`` to v24 +* [:open-api-workflows:`31`] ``codeql`` to v4 +* [:open-api-framework:`188`] Update docker backend image to ``python:3.12-slim-trixie`` and frontend image to ``node:24-trixie-slim`` +* Upgrade python dependencies + + * [:open-api-framework:`171`] ``open-api-framework`` to 0.13.2 + * ``commonground-api-common`` to 2.10.5 + * ``notifications-api-common`` to 0.9.0 + * ``django-setup-configuration`` to 0.11.0 + * ``mozilla-django-oidc-db`` to 1.1.1 + * ``maykin-common`` to 0.11.0 + * ``django`` to 5.2.8 + * ``uwsgi`` to 2.0.31 + * ``pip`` to 25.3 + +**Documentation** + +* [:objects-api:`689`] Fix resource reference in notification documentation. +* [:objects-api:`694`] Add minimum postgres database requirements to documentation. + 3.4.0 (2025-10-28) ------------------ @@ -61,7 +117,7 @@ Change history **Project maintenance** -* [:open-api-framework:`163`] Integrate django-common to make uses of shared views/templates +* [:open-api-framework:`163`] Integrate ``maykin-common`` to make uses of shared views/templates * [:objects-api:`663`] Upload performance tests results to bencher * [:open-api-workflows:`30`] Run API Design Rules linter on OpenAPI specification in CI diff --git a/README.NL.rst b/README.NL.rst index 649b30fa..43622d54 100644 --- a/README.NL.rst +++ b/README.NL.rst @@ -2,7 +2,7 @@ Objecten API ============ -:Version: 3.4.0 +:Version: 3.5.0 :Source: https://github.com/maykinmedia/objecttypes-api :Keywords: objecten, assets, zaakobjecten @@ -38,7 +38,10 @@ Applicatie versie Release datum API specificatie ================= ============== ============================= latest n/a `ReDoc `_, `Swagger `_, - (`verschillen `_) + (`verschillen `_) +3.5.0 2025-12-01 `ReDoc `_, + `Swagger `_ + (`verschillen `_) 3.4.0 2025-10-28 `ReDoc `_, `Swagger `_ (`verschillen `_) diff --git a/README.rst b/README.rst index 5a6701a6..0f665787 100644 --- a/README.rst +++ b/README.rst @@ -2,7 +2,7 @@ Objects API =========== -:Version: 3.4.0 +:Version: 3.5.0 :Source: https://github.com/maykinmedia/objects-api :Keywords: objects, assets, zaakobjecten @@ -36,7 +36,10 @@ Application version Release date API specification =================== ============== ============================= latest n/a `ReDoc `_, `Swagger `_, - (`diff `_) + (`diff `_) +3.5.0 2025-12-01 `ReDoc `_, + `Swagger `_ + (`diff `_) 3.4.0 2025-10-28 `ReDoc `_, `Swagger `_ (`diff `_) diff --git a/docs/admin/object.rst b/docs/admin/object.rst index 2712e0b2..253444e4 100644 --- a/docs/admin/object.rst +++ b/docs/admin/object.rst @@ -65,6 +65,7 @@ corrected in the "Correction" field of the next record. In the Objects API you always see one record, which contains data of a certain time (by default the latest one). However in the admin interface you can see all the records created for the object. +.. _admin_objects_search: Search objects in the admin --------------------------- @@ -77,22 +78,21 @@ You can search by **UUID** or inside object data using the format: Operators: -- ``exact`` - exact match -- ``icontains`` - case insensitive substring match -- ``gt`` - greater than -- ``gte`` - greater than or equal to -- ``lt`` - less than +- ``exact`` - exact match +- ``icontains`` - case insensitive substring match +- ``gt`` - greater than +- ``gte`` - greater than or equal to +- ``lt`` - less than - ``lte`` - less than or equal to Examples: -- ``0233da1f-32c1-4e7d-9896-2eecc7d24288`` - searching directly by object UUID -- ``id__exact__1`` -- ``naam__icontains__boom`` -- ``date__gt__2025-01-01`` -- ``date__gte__2025-06-15`` -- ``date__lt__2025-12-31`` -- ``date__lte__2025-06-15`` -- ``location__city__exact__Amsterdam`` +- ``0233da1f-32c1-4e7d-9896-2eecc7d24288`` - searching directly by object UUID +- ``id__exact__1`` +- ``naam__icontains__boom`` +- ``date__gt__2025-01-01`` +- ``date__gte__2025-06-15`` +- ``date__lt__2025-12-31`` +- ``date__lte__2025-06-15`` +- ``location__city__exact__Amsterdam`` - ``location__region__icontains__Noord`` - diff --git a/docs/api/index.rst b/docs/api/index.rst index 64eb677a..e15f18f3 100644 --- a/docs/api/index.rst +++ b/docs/api/index.rst @@ -15,8 +15,8 @@ API Specification version(s) `Swagger `__ ) `Objects API`_ 2.5.0 ( - `Redoc `__, - `Swagger `__ + `Redoc `__, + `Swagger `__ ) ====================== ========================================== diff --git a/docs/conf.py b/docs/conf.py index 85d2040c..aed42e4f 100644 --- a/docs/conf.py +++ b/docs/conf.py @@ -119,6 +119,10 @@ extlinks = { "objects-api": ("https://github.com/maykinmedia/objects-api/issues/%s", "#%s"), + "commonground-api-common": ( + "https://github.com/maykinmedia/commonground-api-common/issues/%s", + "#%s", + ), "open-api-framework": ( "https://github.com/maykinmedia/open-api-framework/issues/%s", "#%s", diff --git a/package-lock.json b/package-lock.json index 1c963615..817a69de 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "objects", - "version": "3.4.0", + "version": "3.5.0", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "objects", - "version": "3.4.0", + "version": "3.5.0", "license": "UNLICENSED", "dependencies": { "@fortawesome/fontawesome-free": "^7.0.0", @@ -80,7 +80,6 @@ "integrity": "sha512-e7jT4DxYvIDLk1ZHmU/m/mB19rex9sv0c2ftBtjSBv+kVM/902eh0fINUzD7UwLLNR+jU585GxUJ8/EBfAM5fw==", "dev": true, "license": "MIT", - "peer": true, "dependencies": { "@babel/code-frame": "^7.27.1", "@babel/generator": "^7.28.5", @@ -2822,7 +2821,6 @@ "integrity": "sha512-NZyJarBfL7nWwIq+FDL6Zp/yHEhePMNnnJ0y3qfieCrmNvYct8uvtiV41UvlSe6apAfk0fY1FbWx+NwfmpvtTg==", "dev": true, "license": "MIT", - "peer": true, "bin": { "acorn": "bin/acorn" }, @@ -2849,7 +2847,6 @@ "integrity": "sha512-B/gBuNg5SiMTrPkC+A2+cW0RszwxYmn6VYxB/inlBStS5nx6xHIt/ehKRhIMhqusl7a8LjQoZnjCs5vhwxOQ1g==", "dev": true, "license": "MIT", - "peer": true, "dependencies": { "fast-deep-equal": "^3.1.3", "fast-uri": "^3.0.1", @@ -3293,7 +3290,6 @@ } ], "license": "MIT", - "peer": true, "dependencies": { "baseline-browser-mapping": "^2.8.19", "caniuse-lite": "^1.0.30001751", @@ -6039,11 +6035,10 @@ "license": "MIT" }, "node_modules/js-yaml": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz", - "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==", + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.1.tgz", + "integrity": "sha512-qQKT4zQxXl8lLwBtHMWwaTcGfFOZviOJet3Oy/xmGk2gZH677CJM9EvtfdSkgWcATZhj/55JZ0rmy3myCT5lsA==", "dev": true, - "license": "MIT", "dependencies": { "argparse": "^2.0.1" }, @@ -6107,7 +6102,6 @@ "integrity": "sha512-LrtUxbdvt1gOpo3gxG+VAJlJAEMhbWlM4YrFQgql98FwF7+K8K12LYO4hnDdUkNjeztYrOXEMqgTajSWgmtI/w==", "dev": true, "license": "MIT", - "peer": true, "dependencies": { "@colors/colors": "1.5.0", "body-parser": "^1.19.0", @@ -6935,11 +6929,10 @@ "license": "MIT" }, "node_modules/mocha/node_modules/glob": { - "version": "10.4.5", - "resolved": "https://registry.npmjs.org/glob/-/glob-10.4.5.tgz", - "integrity": "sha512-7Bv8RF0k6xjo7d4A/PxYLbUCfb6c+Vpd2/mB2yRDlew7Jb5hEXiCD9ibfO7wpk8i4sevK6DFny9h7EYbM3/sHg==", + "version": "10.5.0", + "resolved": "https://registry.npmjs.org/glob/-/glob-10.5.0.tgz", + "integrity": "sha512-DfXN8DfhJ7NH3Oe7cFmu3NCu1wKbkReJ8TorzSAFbSKrlNaQSKfIzqYqVY8zlbs2NLBbWpRiU52GX2PbaBVNkg==", "dev": true, - "license": "ISC", "dependencies": { "foreground-child": "^3.1.0", "jackspeak": "^3.1.2", @@ -7131,11 +7124,10 @@ "optional": true }, "node_modules/node-forge": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/node-forge/-/node-forge-1.3.1.tgz", - "integrity": "sha512-dPEtOeMvF9VMcYV/1Wb8CPoVAXtp6MKMlcbAt4ddqmGqUJ6fQZFXkNZNkNlfevtNkGtaSoXf/vNNNSvgrdXwtA==", + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/node-forge/-/node-forge-1.3.2.tgz", + "integrity": "sha512-6xKiQ+cph9KImrRh0VsjH2d8/GXA4FIMlgU4B757iI1ApvcyA9VlouP0yZJha01V+huImO+kKMU7ih+2+E14fw==", "dev": true, - "license": "(BSD-3-Clause OR GPL-2.0)", "engines": { "node": ">= 6.13.0" } @@ -7574,7 +7566,6 @@ } ], "license": "MIT", - "peer": true, "dependencies": { "nanoid": "^3.3.11", "picocolors": "^1.1.1", @@ -8273,7 +8264,6 @@ "resolved": "https://registry.npmjs.org/react/-/react-19.2.0.tgz", "integrity": "sha512-tmbWg6W31tQLeB5cdIBOicJDJRR2KzXsV7uSK9iNfLWQ5bIZfxuPEHp7M8wiHyHnn0DD1i7w3Zmin0FtkrwoCQ==", "license": "MIT", - "peer": true, "engines": { "node": ">=0.10.0" } @@ -8592,7 +8582,6 @@ "resolved": "https://registry.npmjs.org/sass/-/sass-1.93.2.tgz", "integrity": "sha512-t+YPtOQHpGW1QWsh1CHQ5cPIr9lbbGZLZnbihP/D/qZj/yuV68m8qarcV17nvkOX81BCrvzAlq2klCQFZghyTg==", "license": "MIT", - "peer": true, "dependencies": { "chokidar": "^4.0.0", "immutable": "^5.0.2", @@ -9682,8 +9671,7 @@ "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.8.1.tgz", "integrity": "sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w==", "dev": true, - "license": "0BSD", - "peer": true + "license": "0BSD" }, "node_modules/type-detect": { "version": "4.0.8", @@ -9892,7 +9880,6 @@ "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", "dev": true, "license": "MIT", - "peer": true, "dependencies": { "fast-deep-equal": "^3.1.1", "fast-json-stable-stringify": "^2.0.0", @@ -10035,7 +10022,6 @@ "integrity": "sha512-7h/weGm9d/ywQ6qzJ+Xy+r9n/3qgp/thalBbpOi5i223dPXKi04IBtqPN9nTd+jBc7QKfvDbaBnFipYp4sJAUQ==", "dev": true, "license": "MIT", - "peer": true, "dependencies": { "@types/eslint-scope": "^3.7.7", "@types/estree": "^1.0.8", @@ -10085,7 +10071,6 @@ "integrity": "sha512-MfwFQ6SfwinsUVi0rNJm7rHZ31GyTcpVE5pgVA3hwFRb7COD4TzjUUwhGWKfO50+xdc2MQPuEBBJoqIMGt3JDw==", "dev": true, "license": "MIT", - "peer": true, "dependencies": { "@discoveryjs/json-ext": "^0.6.1", "@webpack-cli/configtest": "^3.0.1", diff --git a/package.json b/package.json index e08f4a9e..c5af588d 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "objects", - "version": "3.4.0", + "version": "3.5.0", "description": "objects project", "main": "src/objects/static/bundles/objects-js.js", "directories": { diff --git a/publiccode.yaml b/publiccode.yaml index 860129e4..98a77409 100644 --- a/publiccode.yaml +++ b/publiccode.yaml @@ -7,8 +7,8 @@ publiccodeYmlVersion: '0.2' name: Objects API url: 'http://github.com/maykinmedia/objects-api.git' softwareType: standalone/backend -softwareVersion: 3.4.0 -releaseDate: '2025-10-28' +softwareVersion: 3.5.0 +releaseDate: '2025-12-01' logo: 'https://github.com/maykinmedia/objects-api/blob/master/docs/logo.png' platforms: - web diff --git a/pyproject.toml b/pyproject.toml index 32dfd4c0..709790e7 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -6,7 +6,7 @@ requires-python = "== 3.12" [tool.bumpversion] commit = false tag = false -current_version = "3.4.0" +current_version = "3.5.0" pre_commit_hooks = [ "npm i", # ensure that package-lock.json is updated ] diff --git a/src/objects/__init__.py b/src/objects/__init__.py index 9bd20bfc..79f89845 100644 --- a/src/objects/__init__.py +++ b/src/objects/__init__.py @@ -1,6 +1,6 @@ from .celery import app as celery_app __all__ = ("celery_app",) -__version__ = "3.4.0" +__version__ = "3.5.0" __author__ = "Maykin Media" __homepage__ = "https://github.com/maykinmedia/objects-api"