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

tortoise / tortoise-orm / 33453480034
84%
master: 94%

Build:
Build:
LAST BUILD BRANCH: starlette-v1
DEFAULT BRANCH: master
Ran 01 Sep 2026 12:20AM UTC
Jobs 1
Files 134
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

01 Sep 2026 12:07AM UTC coverage: 84.472% (+0.01%) from 84.461%
33453480034

push

github

web-flow
fix(queryset): support DELETE/UPDATE with filters on related fields (#2269)

Filters on related fields add JOINs to the query, but JOINs are not valid in
DELETE/UPDATE statements on most backends, so e.g. on SQLite

    LogMessage.filter(device__name="test").delete()

produces

    DELETE FROM "logmessage" LEFT OUTER JOIN "device" ...
    sqlite3.OperationalError: near "LEFT": syntax error

and the UPDATE path renders a broken aliased FROM clause on top of that.

When filters add joins, target the primary key through a subquery instead:

    DELETE FROM "logmessage" WHERE "id" IN (
        SELECT "_t"."id" FROM (
            SELECT "logmessage"."id" FROM "logmessage" LEFT OUTER JOIN ...
        ) AS "_t"
    )

The derived-table wrapper keeps MySQL (ER_UPDATE_TABLE_USED) happy, and the
non-JOIN path stays untouched.

Fixes #283

Co-authored-by: Mohammad <llllxyz@users.noreply.github.com>

3193 of 4240 branches covered (75.31%)

Branch coverage included in aggregate %.

21 of 22 new or added lines in 1 file covered. (95.45%)

11604 of 13277 relevant lines covered (87.4%)

0.87 hits per line

Uncovered Changes

Lines Coverage ∆ File
1
95.38
-0.05% tortoise/queryset.py
Jobs
ID Job ID Ran Files Coverage
1 33453480034.1 01 Sep 2026 12:20AM UTC 134
84.47
GitHub Action Run
Source Files on build 33453480034
  • Tree
  • List 134
  • Changed 1
  • Source Changed 0
  • Coverage Changed 1
Coverage ∆ File Lines Relevant Covered Missed Hits/Line Branch Hits Branch Misses
  • Back to Repo
  • ffc946eb on github
  • Prev Build on develop (#32753792343)
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE TRIAL · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc