• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

openwisp / openwisp-controller / 23672556336
99%
master: 99%

Build:
Build:
LAST BUILD BRANCH: fix/1221-vpn-peer-cache-desync
DEFAULT BRANCH: master
Ran 28 Mar 2026 12:09AM UTC
Jobs 1
Files 120
Run time 1min
Badge
Embed ▾
README BADGES
x

If you need to use a raster PNG badge, change the '.svg' to '.png' in the link

Markdown

Textile

RDoc

HTML

Rst

27 Mar 2026 11:58PM UTC coverage: 98.61% (+0.02%) from 98.595%
23672556336

push

github

nemesifier
[fix] Fixed duplicate template entries in Device admin

Bug:
The JS logic in relevant_templates.js assumed that the last
`ul.sortedm2m-items` element belonged to the empty inline form used by
Django admin formsets. This assumption breaks when the user does not
have permission to add Config objects: in that case the
ConfigInlineAdmin does not render the empty form.

As a result, both selectors ended up referencing the same list and the
script appended template elements twice to the same `sortedm2m` list,
causing duplicate entries and issues when saving the form.

Fix:
Select the empty form container explicitly using `#config-empty
ul.sortedm2m-items` instead of relying on the last occurrence of
`ul.sortedm2m-items`. This ensures the logic works correctly regardless
of whether the empty inline form is rendered.

[backport 1.2]

(cherry picked from commit b73e83ad2)

6526 of 6618 relevant lines covered (98.61%)

11.83 hits per line

Jobs
ID Job ID Ran Files Coverage
1 python- - 23672556336.1 28 Mar 2026 12:09AM UTC 120
98.61
GitHub Action Run
Source Files on build 23672556336
  • Tree
  • List 120
  • Changed 1
  • Source Changed 0
  • Coverage Changed 1
Coverage ∆ File Lines Relevant Covered Missed Hits/Line
  • Back to Repo
  • Github Actions Build #23672556336
  • 7c269011 on github
  • Prev Build on 1.2 (#23668082676)
  • Next Build on 1.2 (#23690612653)
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc