MassUpdateCodeMigrationBase.DoMassUpdateAsync runs each batch in its own transaction on SQL Server too: the batch
query wasn't attached to the transaction, which SqlClient requires.
The updateQuery documentation of DoMassUpdateAsync asked for WHERE id >= @id, which selects the last
processed row again on every step and never ends: the condition is WHERE id > @id, as in the example.
Breaking: dropped net8.0 and the netstandard2.0, netstandard2.1, netcoreapp3.1, net6.0 and net7.0 targets. Supported targets are net9.0 and net10.0: stay on 5.x for older runtimes.
Breaking: package renamed from Curiosity.Migrations.Utils to Curiosus.Migrations.Utils and now published by the curiosus-dev organization. Namespaces, assemblies and types were renamed accordingly (Curiosity* → Curiosus*): replace Curiosity with Curiosus in your code to migrate.