Skip to content

Merge v0.8.x branch into v0.9.x - #348

Open
bjester wants to merge 26 commits into
learningequality:release-v0.9.xfrom
bjester:merge-release-v0.8.x
Open

Merge v0.8.x branch into v0.9.x#348
bjester wants to merge 26 commits into
learningequality:release-v0.9.xfrom
bjester:merge-release-v0.8.x

Conversation

@bjester

@bjester bjester commented Jul 28, 2026

Copy link
Copy Markdown
Member

Summary

Merges the branches and resolves merge conflicts:

	both modified:   morango/__init__.py
	both modified:   morango/sync/session.py
	both modified:   morango/sync/syncsession.py
	deleted by us:   setup.py
	both modified:   tests/testapp/tests/sync/test_session.py
	both modified:   tests/testapp/tests/test_api.py

Also updated the migration history for conflicting migration nodes

bjester and others added 26 commits May 1, 2026 10:50
Ensure dirty-bit is updated when calling save on a syncable model with `update_fields`
…se_were_british

Remove multiprocessing fallback for key generation. Stay in process.
Add deferrable FK utility, test case, and migration
Additional retry protection throughout sync pipeline
…tion-perf

Improve buffer serialization performance by performing bulk counter lookup
…rry-fields

Scoped field updates and context initialization issue
@bjester
bjester requested a review from rtibblesbot July 28, 2026 20:09
@rtibblesbot

rtibblesbot commented Jul 28, 2026

Copy link
Copy Markdown
Contributor

🔵 Review posted

Last updated: 2026-07-28 21:03 UTC

@rtibblesbot rtibblesbot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

PR #348 — merge of release-v0.8.x into release-v0.9.x. The merge is clean and the 0.8.12–0.8.15 work (idempotent buffer push, opt-in retries, update_fields scoping, dirty-bit fix) carries over faithfully.

One blocking issue, in the migration-history resolution: renaming 0004_self_ref_order0005_self_ref_order silently nulls out Store._self_ref_order on any database that already applied the old name. I reproduced it locally and verified a fix — details inline.

Remaining findings are suggestions around the new retry plumbing, the swallowed DatabaseError in the FK-deferrable migration, and the unbounded model_uuid__in queries.

CI: all unit tests (3.9–3.13, postgres, SQLite matrix) and linting pass. The one red check, Check if author is contributor, fails in the shared call-pull-request-target.yml workflow — repo/app-token infrastructure, not this diff.

No UI files changed, so visual verification and manual QA do not apply.


@rtibblesbot's comments are generated by an LLM, and should be evaluated accordingly

How was this generated?

Ran a phased review pipeline over the pull request diff:

  • Classified the diff to select review passes (core, frontend, backend) and whether manual QA was required
  • Core review pass checked correctness, design, architecture, testing, completeness, and DRY/SRP/Rule-of-Three principles
  • Specialized frontend/backend review passes applied framework-specific lenses where those files changed
  • For UI changes: manual QA and an accessibility audit against a live dev server, when available
  • Checked CI status and linked issue acceptance criteria
  • Synthesized one review from those passes and chose the verdict from the findings, CI status, and QA evidence

Comment thread morango/migrations/0005_self_ref_order.py
Comment thread morango/deferrable_foreign_keys.py
Comment thread morango/deferrable_foreign_keys.py
Comment thread morango/api/serializers.py
Comment thread morango/sync/session.py
Comment thread morango/sync/session.py
Comment thread morango/sync/session.py
Comment thread morango/sync/syncsession.py
Comment thread morango/models/core.py
Comment thread morango/sync/utils.py
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.

3 participants