@@ -658,6 +658,15 @@ <h2><a class="toc-backref" href="#toc-entry-1">Changelog</a></h2>
658658</ div >
659659</ div >
660660< div class ="section " id ="section-1 ">
661+ < h1 > 19.0.2.0.7</ h1 >
662+ < ul class ="simple ">
663+ < li > Bulk membership creation using raw SQL INSERT ON CONFLICT DO NOTHING
664+ for program and cycle memberships</ li >
665+ < li > Replace per-record ORM creates in < tt class ="docutils literal "> _import_registrants</ tt > and
666+ < tt class ="docutils literal "> _add_beneficiaries</ tt > with bulk SQL path</ li >
667+ </ ul >
668+ </ div >
669+ < div class ="section " id ="section-2 ">
661670< h1 > 19.0.2.0.6</ h1 >
662671< ul class ="simple ">
663672< li > Remove unused entitlement_base_model.py (dead code, never imported)</ li >
@@ -666,34 +675,34 @@ <h1>19.0.2.0.6</h1>
666675payment, and fund tests (172 → 492 tests)</ li >
667676</ ul >
668677</ div >
669- < div class ="section " id ="section-2 ">
678+ < div class ="section " id ="section-3 ">
670679< h1 > 19.0.2.0.5</ h1 >
671680< ul class ="simple ">
672681< li > Batch create entitlements and payments instead of one-by-one ORM
673682creates</ li >
674683</ ul >
675684</ div >
676- < div class ="section " id ="section-3 ">
685+ < div class ="section " id ="section-4 ">
677686< h1 > 19.0.2.0.4</ h1 >
678687< ul class ="simple ">
679688< li > Fetch fund balance once per approval batch instead of per entitlement</ li >
680689</ ul >
681690</ div >
682- < div class ="section " id ="section-4 ">
691+ < div class ="section " id ="section-5 ">
683692< h1 > 19.0.2.0.3</ h1 >
684693< ul class ="simple ">
685694< li > Replace cycle computed fields (total_amount, entitlements_count,
686695approval flags) with SQL aggregation queries</ li >
687696</ ul >
688697</ div >
689- < div class ="section " id ="section-5 ">
698+ < div class ="section " id ="section-6 ">
690699< h1 > 19.0.2.0.2</ h1 >
691700< ul class ="simple ">
692701< li > Add composite indexes for frequent query patterns on entitlements and
693702program memberships</ li >
694703</ ul >
695704</ div >
696- < div class ="section " id ="section-6 ">
705+ < div class ="section " id ="section-7 ">
697706< h1 > 19.0.2.0.1</ h1 >
698707< ul class ="simple ">
699708< li > Replace Python-level uniqueness checks with SQL UNIQUE constraints for
@@ -702,7 +711,7 @@ <h1>19.0.2.0.1</h1>
702711constraint creation</ li >
703712</ ul >
704713</ div >
705- < div class ="section " id ="section-7 ">
714+ < div class ="section " id ="section-8 ">
706715< h1 > 19.0.2.0.0</ h1 >
707716< ul class ="simple ">
708717< li > Initial migration to OpenSPP2</ li >
0 commit comments