Skip to content

Release v1.2.2

Choose a tag to compare

@github-actions github-actions released this 13 Jun 16:58
· 49 commits to main since this release
a627dd1

What's Changed

  • refactor(version): single source of truth, drop hardcoded VERSION tuple (c98fef5)
  • test(v1.2.2): cover defensive branches to close patch-coverage gap (1f51229)
  • docs(changelog): add 1.2.2 release notes (87af4bf)
  • chore(release): bump version to 1.2.2 (c8b76a1)
  • fix(types): apply DjangoObjectType.get_queryset on DjangoListObjectField (completes #58) (dfdbbb0)
  • fix(docs): fix crashing version snippet, compat matrix over-claim, missing classifier (closes #67) (665230f)
  • fix(docs/ci/filtering): README 404, stale issue link, mypy drift, daphne cap, filter_fields None (closes #55) (24723e8)
  • fix(types): all_directives type mismatch + _fmap_cache through .only()-narrowing pass (closes #66) (bfd216c)
  • perf(optimizer): thread _fmap_cache through nested-list descent in _walk_filtered_prefetches (closes #57) (a7e99d7)
  • perf(optimizer): eliminate per-parent COUNT N+1 on empty window-sliced nested pages (closes #64) (e11f7a2)
  • fix(types): Meta-option hygiene — unknown options, include_fields, id KeyError, queryset (closes #65) (b1d18c8)
  • fix(converter): fold app_label into enum registry key + use parent_link for MTI guard (closes #52) (1a34940)
  • fix(nested): pk=0 upsert creates instead of updates + enum members in LIST not unwrapped to raw values (closes #51) (455feda)
  • fix(mutation): close nested-write integrity gaps — M2M bad-pk 500, reverse-FK child steal, reverse-O2O list, forward-FK list drop (closes #62) (1ef3811)
  • fix(playground): add session middleware to WebSocket ASGI stack, fix directive names and enum example (closes #54) (a028933)
  • fix(subscriptions): defer broadcasts via transaction.on_commit to suppress phantom notifications on rollback (closes #63) (fb63794)
  • fix(subscriptions): wrap sync ORM hooks and cache I/O in sync_to_async + guard disconnect AttributeError (closes #61) (e50d7a4)
  • fix(cache): multipart POST 500 + CSRF cookie replay under CACHE_ACTIVE (closes #53) (fd4985a)
  • fix(cache): version-counter correctness — on_commit bump, timeout=None, seed to 1 (closes #60) (dc19991)
  • fix(directives/pagination): wrap bad client input in GraphQLError (closes #50) (62414cc)
  • style: apply ruff format to pagination.py and test_pagination_ordering_security.py (2f39efd)
  • fix(pagination): validate ordering terms against concrete attnames (closes #59) (56c653a)
  • fix(types): invoke DjangoObjectType.get_queryset scoping hook (closes #58) (e02c46e)

Installation

pip install django-graphex==1.2.2

Full Changelog: v1.2.1...v1.2.2