Update#1
Open
ONL wants to merge 989 commits into
Open
Conversation
0a9ec58 to
b8169d9
Compare
Simulate gestures but is not enough. Ref: https://chromium.googlesource.com/chromium/src/+/5b3168e8f8c4487320c654dd761622b89d548514. Use chromium 125 for testing. Added pip dependency caching. I had to set CI to run on ubuntu-22.04, on ubuntu-24.04 the workaround did not work. Related to #902
Restructured the documentation in a way that allows it to be included in the Unified Documentation of OpenWISP. For more information see openwisp/openwisp-docs#107.
Updates the requirements on [pytest-django](https://github.com/pytest-dev/pytest-django) to permit the latest version. - [Release notes](https://github.com/pytest-dev/pytest-django/releases) - [Changelog](https://github.com/pytest-dev/pytest-django/blob/main/docs/changelog.rst) - [Commits](pytest-dev/pytest-django@v4.5.2...v4.8.0) --- updated-dependencies: - dependency-name: pytest-django dependency-type: direct:production ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Federico Capoano <f.capoano@openwisp.io>
Updates the requirements on [djangorestframework-gis](https://github.com/openwisp/django-rest-framework-gis) to permit the latest version. - [Release notes](https://github.com/openwisp/django-rest-framework-gis/releases) - [Changelog](https://github.com/openwisp/django-rest-framework-gis/blob/master/CHANGES.rst) - [Commits](openwisp/django-rest-framework-gis@v0.18.0...v1.0.0) --- updated-dependencies: - dependency-name: djangorestframework-gis dependency-type: direct:production ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Federico Capoano <f.capoano@openwisp.io>
[skip ci]
Updates the requirements on [django-reversion](https://github.com/etianen/django-reversion) to permit the latest version. - [Release notes](https://github.com/etianen/django-reversion/releases) - [Changelog](https://github.com/etianen/django-reversion/blob/master/CHANGELOG.rst) - [Commits](etianen/django-reversion@v5.0.12...v5.1.0) --- updated-dependencies: - dependency-name: django-reversion dependency-type: direct:production ... Signed-off-by: dependabot[bot] <support@github.com>
Updates the requirements on [pytest-asyncio](https://github.com/pytest-dev/pytest-asyncio) to permit the latest version. - [Release notes](https://github.com/pytest-dev/pytest-asyncio/releases) - [Commits](pytest-dev/pytest-asyncio@v0.23.8...v0.24.0) --- updated-dependencies: - dependency-name: pytest-asyncio dependency-type: direct:production ... Signed-off-by: dependabot[bot] <support@github.com>
Updates the requirements on [djangorestframework-gis](https://github.com/openwisp/django-rest-framework-gis) to permit the latest version. - [Release notes](https://github.com/openwisp/django-rest-framework-gis/releases) - [Changelog](https://github.com/openwisp/django-rest-framework-gis/blob/master/CHANGES.rst) - [Commits](openwisp/django-rest-framework-gis@v1.0.0...v1.1.0) --- updated-dependencies: - dependency-name: djangorestframework-gis dependency-type: direct:production ... Signed-off-by: dependabot[bot] <support@github.com>
For select fields, with predefined values in the corresponding JSON schema, when a value is saved other than the default, the field will be empty after saving in the Device config editor. This happens only, in combination of the lib select2. The cause of the issue is, that the jsonschema-ui.js version does use a deprecated way to initialize select2 inputs. This commit will fix this issue by updating the way of initializing the inputs. Fixes #910 Signed-off-by: Konrad Kreitmair <kkreitmair@tdt.de>
Co-authored-by: Alexandre Vincent <alexandre.vincent@stellar.tc>
Fixes an issue with extensibility affecting the "delete confirmation" page of DeviceAdmin. Making the `delete_confirmation_template` attribute explicit allows apps extending openwisp-controller to retain the functionality which would otherwise be lost.
…iles Some CSS colors couldn't be swapped for openwisp-utils variables, which is ok for now, new vars have been defined for those cases. --------- Co-authored-by: Piyush Bafna <130243298+piyushdev04@users.noreply.github.com> Co-authored-by: Federico Capoano <f.capoano@openwisp.io>
Updates the requirements on [django-reversion](https://github.com/etianen/django-reversion) to permit the latest version. - [Release notes](https://github.com/etianen/django-reversion/releases) - [Changelog](https://github.com/etianen/django-reversion/blob/master/CHANGELOG.rst) - [Commits](etianen/django-reversion@v6.0.0...v6.1.0) --- updated-dependencies: - dependency-name: django-reversion dependency-version: 6.1.0 dependency-type: direct:production ... Signed-off-by: dependabot[bot] <support@github.com>
…1061 Replaced jsonfield package's JSONField with Django's built-in JSONField across all models to use the modern, maintained Django implementation. DeviceGroupAdmin.search_fields contains the meta_data JSONField column; on PostgreSQL jsonb does not support the ILIKE operator that admin search relies on, so the column is cast to text in get_search_results. Admin preview parsing now tolerates non-JSON strings in JSONField form input by falling back to the raw value, letting the model validation produce a proper 400 response instead of a 500 on json.JSONDecodeError. The new replace_jsonfield migrations for config and sample_config are renamed to slot into the current migration graph (0062_whoisinfo / 0008_whoisinfo_organizationconfigsettings_whois_enabled). Closes #1061
Closes #1223 --------- Co-authored-by: Federico Capoano <f.capoano@openwisp.io>
Updates the requirements on [django-import-export](https://github.com/django-import-export/django-import-export) to permit the latest version. - [Release notes](https://github.com/django-import-export/django-import-export/releases) - [Changelog](https://github.com/django-import-export/django-import-export/blob/main/docs/changelog.rst) - [Commits](django-import-export/django-import-export@4.3.14...4.4.1) --- updated-dependencies: - dependency-name: django-import-export dependency-version: 4.4.0 dependency-type: direct:production ... Signed-off-by: dependabot[bot] <support@github.com>
Fixes #682 --------- Co-authored-by: Arya Tayshete <avtayshete_b21@et.vjti.ac.in> Co-authored-by: Federico Capoano <f.capoano@openwisp.io>
…1370 Historical migrations were updated to use models.TextField instead of models.JSONField for fields originally backed by the third-party jsonfield library. The original jsonfield.fields.JSONField inherited from TextField and stored values as PostgreSQL text. Replacing historical migration definitions with models.JSONField caused Django to interpret the migration transition as JSONField -> JSONField, resulting in a no-op migration and preventing PostgreSQL columns from being converted to jsonb. By preserving the historical field semantics as TextField, Django can correctly detect the transition from text -> jsonb and generate the required ALTER COLUMN ... TYPE jsonb migration SQL during upgrades. Closes #1370
Moved `disconnect()` from `else` to `finally` so the SSH connection is always cleaned up when `update_config()` raises an exception. [backport 1.2] Co-authored-by: Kartik <kartikbhartiya613@gmail.com>
Update the changelog bot trigger so PR titles marked with [change!] run the reusable changelog workflow.
…nGeo Remove the ValidatedModelSerializer workaround that called full_clean and save with keyword arguments. Fix VPN CA change handling and floorplan PUT test. Add sample_users migration from upstream.
Replaced endpoint-specific DRF paginator classes with the shared OpenWispPagination implementation where equivalent settings were already in use. This change reduces duplication and keeps pagination behavior consistent across modules.
Updates the requirements on [responses](https://github.com/getsentry/responses) to permit the latest version. - [Release notes](https://github.com/getsentry/responses/releases) - [Changelog](https://github.com/getsentry/responses/blob/master/CHANGES) - [Commits](getsentry/responses@0.26.0...0.26.1) --- updated-dependencies: - dependency-name: responses dependency-version: 0.26.1 dependency-type: direct:production ... Signed-off-by: dependabot[bot] <support@github.com>
Updates the requirements on [paramiko](https://github.com/paramiko/paramiko) to permit the latest version. - [Commits](paramiko/paramiko@4.0.0...5.0.0) --- updated-dependencies: - dependency-name: paramiko dependency-version: 5.0.0 dependency-type: direct:production ... Signed-off-by: dependabot[bot] <support@github.com>
Updates the requirements on [djangorestframework-gis](https://github.com/openwisp/django-rest-framework-gis) to permit the latest version. - [Release notes](https://github.com/openwisp/django-rest-framework-gis/releases) - [Changelog](https://github.com/openwisp/django-rest-framework-gis/blob/master/CHANGES.rst) - [Commits](openwisp/django-rest-framework-gis@v1.2.0...1.2.1) --- updated-dependencies: - dependency-name: djangorestframework-gis dependency-version: 1.2.1 dependency-type: direct:production ... Signed-off-by: dependabot[bot] <support@github.com>
Fixed several race conditions and shared-state issues which were causing intermittent CI failures. Background command and connection tasks now avoid saving deleted rows in a way that could resurrect objects or trigger foreign key errors during concurrent deletions. Command execution also skips commands that were deleted after being scheduled. VPN client creation now reconciles against the current set of VPN templates, making template switches idempotent across multiple m2m_changed cycles. Test sessions now use a dedicated Redis cache so cache.clear() on the default cache cannot invalidate authenticated sessions from parallel tests. Estimated location query-count tests now warm the organization geo settings cache before assertions, avoiding nondeterministic extra queries.
This change introduces a generic enforcement of the deactivated device state across OpenWISP Controller. When a device is deactivated, it is treated as non-operational. This means no new configuration, management, or connectivity operations will target it. However, controller state, security, and cleanup processes will continue to run to maintain system consistency. Specifically, device registration and re-registration are blocked for deactivated devices. Any workflow that would implicitly restore configuration state or make a deactivated device appear operational again is also blocked. Automatic template assignment and propagation from groups will not run for deactivated configurations. Active management traffic such as remote command execution is blocked. Configuration pushes and reachability checks are allowed only during the transitional state of deactivation. Once a configuration is fully deactivated, no further controller-initiated communication will occur. State-only and cleanup operations, like certificate revocation and cache invalidation, remain allowed. Closes #1338
The connection task test patched all Logger.info calls, so Celery's eager task success log could become the final mocked call and fail the assertion when the test was reused by extended apps. Patch only the connection task logger to keep the assertion focused on the application log emitted by update_config.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
No description provided.