Skip to content

Update#1

Open
ONL wants to merge 989 commits into
ONL:masterfrom
openwisp:master
Open

Update#1
ONL wants to merge 989 commits into
ONL:masterfrom
openwisp:master

Conversation

@ONL

@ONL ONL commented Oct 1, 2021

Copy link
Copy Markdown
Owner

No description provided.

nemesifier and others added 23 commits August 2, 2024 22:46
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>
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>
asmodehn and others added 30 commits May 8, 2026 11:33
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.
…evices #1325

Fixes #1325

---------

Co-authored-by: Gagan Deep <pandafy.dev@gmail.com>
Co-authored-by: Federico Capoano <f.capoano@openwisp.io>
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.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.