@deterministic-code/migraters 0.0.2 → 0.0.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (645) hide show
  1. package/README.md +149 -1
  2. package/bundle.yaml +20 -28
  3. package/cli.yaml +24 -12
  4. package/csharp/Abstractions/IConnectionResolver.cs +6 -0
  5. package/csharp/Abstractions/IMigrateCommand.cs +7 -0
  6. package/csharp/Abstractions/IMigrater.cs +20 -0
  7. package/csharp/Abstractions/ISqlDialect.cs +23 -0
  8. package/csharp/Abstractions/ISqlDialectFactory.cs +7 -0
  9. package/csharp/Abstractions/SqlDialect.cs +78 -0
  10. package/csharp/Abstractions/SqlDialectFactory.cs +24 -0
  11. package/csharp/Dialects/Mysql/MigrateMysql.csproj +14 -0
  12. package/csharp/Dialects/Mysql/MysqlCreateDatabase.cs +21 -0
  13. package/csharp/Dialects/Mysql/MysqlDialect.cs +44 -0
  14. package/csharp/Dialects/Mysql/bin/Debug/net9.0/MigrateCore.dll +0 -0
  15. package/csharp/Dialects/Mysql/bin/Debug/net9.0/MigrateCore.pdb +0 -0
  16. package/csharp/Dialects/Mysql/bin/Debug/net9.0/MigrateMysql.deps.json +213 -0
  17. package/csharp/Dialects/Mysql/bin/Debug/net9.0/MigrateMysql.dll +0 -0
  18. package/csharp/Dialects/Mysql/bin/Debug/net9.0/MigrateMysql.pdb +0 -0
  19. package/csharp/Dialects/Mysql/bin/Debug/net9.0/cli.yaml +276 -0
  20. package/{dist → csharp/Dialects/Mysql/bin/Debug/net9.0}/templates/help/down.txt +3 -5
  21. package/csharp/Dialects/Mysql/bin/Debug/net9.0/templates/help/init.txt +15 -0
  22. package/{dist → csharp/Dialects/Mysql/bin/Debug/net9.0}/templates/help/setup.txt +4 -0
  23. package/csharp/Dialects/Mysql/bin/Debug/net9.0/templates/messages/down/confirm-prompt.txt +1 -0
  24. package/csharp/Dialects/Mysql/bin/Debug/net9.0/templates/messages/down/confirm-token-mismatch.txt +1 -0
  25. package/csharp/Dialects/Mysql/bin/Debug/net9.0/templates/messages/down/confirm-tty-required.txt +1 -0
  26. package/{dist → csharp/Dialects/Mysql/bin/Debug/net9.0}/templates/messages/down/destructive-header.txt +0 -1
  27. package/csharp/Dialects/Mysql/obj/Debug/net9.0/.NETCoreApp,Version=v9.0.AssemblyAttributes.cs +4 -0
  28. package/csharp/Dialects/Mysql/obj/Debug/net9.0/MigrateM.E580FE7A.Up2Date +0 -0
  29. package/csharp/Dialects/Mysql/obj/Debug/net9.0/MigrateMysql.AssemblyInfo.cs +22 -0
  30. package/csharp/Dialects/Mysql/obj/Debug/net9.0/MigrateMysql.AssemblyInfoInputs.cache +1 -0
  31. package/csharp/Dialects/Mysql/obj/Debug/net9.0/MigrateMysql.GeneratedMSBuildEditorConfig.editorconfig +18 -0
  32. package/csharp/Dialects/Mysql/obj/Debug/net9.0/MigrateMysql.GlobalUsings.g.cs +8 -0
  33. package/csharp/Dialects/Mysql/obj/Debug/net9.0/MigrateMysql.assets.cache +0 -0
  34. package/csharp/Dialects/Mysql/obj/Debug/net9.0/MigrateMysql.csproj.AssemblyReference.cache +0 -0
  35. package/csharp/Dialects/Mysql/obj/Debug/net9.0/MigrateMysql.csproj.CoreCompileInputs.cache +1 -0
  36. package/csharp/Dialects/Mysql/obj/Debug/net9.0/MigrateMysql.csproj.FileListAbsolute.txt +63 -0
  37. package/csharp/Dialects/Mysql/obj/Debug/net9.0/MigrateMysql.dll +0 -0
  38. package/csharp/Dialects/Mysql/obj/Debug/net9.0/MigrateMysql.pdb +0 -0
  39. package/csharp/Dialects/Mysql/obj/Debug/net9.0/MigrateMysql.sourcelink.json +1 -0
  40. package/csharp/Dialects/Mysql/obj/Debug/net9.0/ref/MigrateMysql.dll +0 -0
  41. package/csharp/Dialects/Mysql/obj/Debug/net9.0/refint/MigrateMysql.dll +0 -0
  42. package/csharp/Dialects/Mysql/obj/MigrateMysql.csproj.nuget.dgspec.json +172 -0
  43. package/csharp/Dialects/Mysql/obj/MigrateMysql.csproj.nuget.g.props +15 -0
  44. package/csharp/Dialects/Mysql/obj/MigrateMysql.csproj.nuget.g.targets +6 -0
  45. package/csharp/Dialects/Mysql/obj/project.assets.json +5081 -0
  46. package/csharp/Dialects/Mysql/obj/project.nuget.cache +94 -0
  47. package/csharp/Dialects/Oracle/MigrateOracle.csproj +14 -0
  48. package/csharp/Dialects/Oracle/OracleDialect.cs +30 -0
  49. package/csharp/Dialects/Oracle/bin/Debug/net9.0/MigrateCore.dll +0 -0
  50. package/csharp/Dialects/Oracle/bin/Debug/net9.0/MigrateCore.pdb +0 -0
  51. package/csharp/Dialects/Oracle/bin/Debug/net9.0/MigrateOracle.deps.json +343 -0
  52. package/csharp/Dialects/Oracle/bin/Debug/net9.0/MigrateOracle.dll +0 -0
  53. package/csharp/Dialects/Oracle/bin/Debug/net9.0/MigrateOracle.pdb +0 -0
  54. package/csharp/Dialects/Oracle/bin/Debug/net9.0/cli.yaml +276 -0
  55. package/csharp/Dialects/Oracle/bin/Debug/net9.0/templates/help/create.txt +16 -0
  56. package/csharp/Dialects/Oracle/bin/Debug/net9.0/templates/help/down.txt +40 -0
  57. package/csharp/Dialects/Oracle/bin/Debug/net9.0/templates/help/init.txt +15 -0
  58. package/csharp/Dialects/Oracle/bin/Debug/net9.0/templates/help/setup.txt +45 -0
  59. package/csharp/Dialects/Oracle/bin/Debug/net9.0/templates/help/up.txt +43 -0
  60. package/csharp/Dialects/Oracle/bin/Debug/net9.0/templates/messages/checksum-drift-line.txt +1 -0
  61. package/csharp/Dialects/Oracle/bin/Debug/net9.0/templates/messages/checksum-drift.txt +11 -0
  62. package/csharp/Dialects/Oracle/bin/Debug/net9.0/templates/messages/down/confirm-mismatch.txt +1 -0
  63. package/csharp/Dialects/Oracle/bin/Debug/net9.0/templates/messages/down/confirm-prompt.txt +1 -0
  64. package/csharp/Dialects/Oracle/bin/Debug/net9.0/templates/messages/down/confirm-stdin-failed.txt +1 -0
  65. package/csharp/Dialects/Oracle/bin/Debug/net9.0/templates/messages/down/confirm-token-mismatch.txt +1 -0
  66. package/csharp/Dialects/Oracle/bin/Debug/net9.0/templates/messages/down/confirm-tty-required.txt +1 -0
  67. package/csharp/Dialects/Oracle/bin/Debug/net9.0/templates/messages/down/destructive-header.txt +2 -0
  68. package/csharp/Dialects/Oracle/bin/Debug/net9.0/templates/messages/errors/invalid-name.txt +1 -0
  69. package/csharp/Dialects/Oracle/bin/Debug/net9.0/templates/messages/errors/migrate-path-not-dir.txt +1 -0
  70. package/csharp/Dialects/Oracle/bin/Debug/net9.0/templates/messages/errors/missing-connection.txt +1 -0
  71. package/csharp/Dialects/Oracle/bin/Debug/net9.0/templates/messages/errors/missing-name-hint.txt +1 -0
  72. package/csharp/Dialects/Oracle/bin/Debug/net9.0/templates/messages/errors/missing-name.txt +1 -0
  73. package/csharp/Dialects/Oracle/bin/Debug/net9.0/templates/messages/errors/missing-provider-hint.txt +1 -0
  74. package/csharp/Dialects/Oracle/bin/Debug/net9.0/templates/messages/errors/missing-provider.txt +1 -0
  75. package/csharp/Dialects/Oracle/bin/Debug/net9.0/templates/messages/errors/missing-value-for-flag.txt +1 -0
  76. package/csharp/Dialects/Oracle/bin/Debug/net9.0/templates/messages/errors/rollback-no-down-sibling.txt +1 -0
  77. package/csharp/Dialects/Oracle/bin/Debug/net9.0/templates/messages/errors/rollback-no-rollback-sibling.txt +1 -0
  78. package/csharp/Dialects/Oracle/bin/Debug/net9.0/templates/messages/errors/rollback-not-in-path.txt +1 -0
  79. package/csharp/Dialects/Oracle/bin/Debug/net9.0/templates/messages/errors/sqlite-prerequisite.txt +1 -0
  80. package/csharp/Dialects/Oracle/bin/Debug/net9.0/templates/messages/errors/unknown-arg.txt +1 -0
  81. package/csharp/Dialects/Oracle/bin/Debug/net9.0/templates/messages/errors/unsupported-provider.txt +1 -0
  82. package/csharp/Dialects/Oracle/bin/Debug/net9.0/templates/messages/setup-complete.txt +9 -0
  83. package/csharp/Dialects/Oracle/bin/Debug/net9.0/templates/messages/status/applied.txt +1 -0
  84. package/csharp/Dialects/Oracle/bin/Debug/net9.0/templates/messages/status/created.txt +1 -0
  85. package/csharp/Dialects/Oracle/bin/Debug/net9.0/templates/messages/status/no-more-pending.txt +1 -0
  86. package/csharp/Dialects/Oracle/bin/Debug/net9.0/templates/messages/status/no-pending.txt +1 -0
  87. package/csharp/Dialects/Oracle/bin/Debug/net9.0/templates/messages/status/no-rollback.txt +1 -0
  88. package/csharp/Dialects/Oracle/bin/Debug/net9.0/templates/messages/status/rolled-back.txt +1 -0
  89. package/csharp/Dialects/Oracle/bin/Debug/net9.0/templates/scaffold/down.sql +1 -0
  90. package/csharp/Dialects/Oracle/bin/Debug/net9.0/templates/scaffold/up.sql +1 -0
  91. package/csharp/Dialects/Oracle/bin/Debug/net9.0/templates/sql/mysql/migrate_logs.sql +11 -0
  92. package/csharp/Dialects/Oracle/bin/Debug/net9.0/templates/sql/mysql/migrates.sql +7 -0
  93. package/csharp/Dialects/Oracle/bin/Debug/net9.0/templates/sql/oracle/migrate_logs.sql +14 -0
  94. package/csharp/Dialects/Oracle/bin/Debug/net9.0/templates/sql/oracle/migrates.sql +10 -0
  95. package/csharp/Dialects/Oracle/bin/Debug/net9.0/templates/sql/postgres/migrate_logs.sql +11 -0
  96. package/csharp/Dialects/Oracle/bin/Debug/net9.0/templates/sql/postgres/migrates.sql +7 -0
  97. package/csharp/Dialects/Oracle/bin/Debug/net9.0/templates/sql/sqlite/migrate_logs.sql +11 -0
  98. package/csharp/Dialects/Oracle/bin/Debug/net9.0/templates/sql/sqlite/migrates.sql +7 -0
  99. package/csharp/Dialects/Oracle/bin/Debug/net9.0/templates/sql/sqlserver/migrate_logs.sql +12 -0
  100. package/csharp/Dialects/Oracle/bin/Debug/net9.0/templates/sql/sqlserver/migrates.sql +8 -0
  101. package/csharp/Dialects/Oracle/obj/Debug/net9.0/.NETCoreApp,Version=v9.0.AssemblyAttributes.cs +4 -0
  102. package/csharp/Dialects/Oracle/obj/Debug/net9.0/MigrateO.BD46121C.Up2Date +0 -0
  103. package/csharp/Dialects/Oracle/obj/Debug/net9.0/MigrateOracle.AssemblyInfo.cs +22 -0
  104. package/csharp/Dialects/Oracle/obj/Debug/net9.0/MigrateOracle.AssemblyInfoInputs.cache +1 -0
  105. package/csharp/Dialects/Oracle/obj/Debug/net9.0/MigrateOracle.GeneratedMSBuildEditorConfig.editorconfig +18 -0
  106. package/csharp/Dialects/Oracle/obj/Debug/net9.0/MigrateOracle.GlobalUsings.g.cs +8 -0
  107. package/csharp/Dialects/Oracle/obj/Debug/net9.0/MigrateOracle.assets.cache +0 -0
  108. package/csharp/Dialects/Oracle/obj/Debug/net9.0/MigrateOracle.csproj.AssemblyReference.cache +0 -0
  109. package/csharp/Dialects/Oracle/obj/Debug/net9.0/MigrateOracle.csproj.CoreCompileInputs.cache +1 -0
  110. package/csharp/Dialects/Oracle/obj/Debug/net9.0/MigrateOracle.csproj.FileListAbsolute.txt +63 -0
  111. package/csharp/Dialects/Oracle/obj/Debug/net9.0/MigrateOracle.dll +0 -0
  112. package/csharp/Dialects/Oracle/obj/Debug/net9.0/MigrateOracle.pdb +0 -0
  113. package/csharp/Dialects/Oracle/obj/Debug/net9.0/MigrateOracle.sourcelink.json +1 -0
  114. package/csharp/Dialects/Oracle/obj/Debug/net9.0/ref/MigrateOracle.dll +0 -0
  115. package/csharp/Dialects/Oracle/obj/Debug/net9.0/refint/MigrateOracle.dll +0 -0
  116. package/csharp/Dialects/Oracle/obj/MigrateOracle.csproj.nuget.dgspec.json +172 -0
  117. package/csharp/Dialects/Oracle/obj/MigrateOracle.csproj.nuget.g.props +15 -0
  118. package/csharp/Dialects/Oracle/obj/MigrateOracle.csproj.nuget.g.targets +2 -0
  119. package/csharp/Dialects/Oracle/obj/project.assets.json +5414 -0
  120. package/csharp/Dialects/Oracle/obj/project.nuget.cache +101 -0
  121. package/csharp/Dialects/Postgres/MigratePostgres.csproj +14 -0
  122. package/csharp/Dialects/Postgres/PostgresCreateDatabase.cs +31 -0
  123. package/csharp/Dialects/Postgres/PostgresDialect.cs +43 -0
  124. package/csharp/Dialects/Postgres/bin/Debug/net9.0/MigrateCore.dll +0 -0
  125. package/csharp/Dialects/Postgres/bin/Debug/net9.0/MigrateCore.pdb +0 -0
  126. package/csharp/Dialects/Postgres/bin/Debug/net9.0/MigratePostgres.deps.json +212 -0
  127. package/csharp/Dialects/Postgres/bin/Debug/net9.0/MigratePostgres.dll +0 -0
  128. package/csharp/Dialects/Postgres/bin/Debug/net9.0/MigratePostgres.pdb +0 -0
  129. package/csharp/Dialects/Postgres/bin/Debug/net9.0/cli.yaml +276 -0
  130. package/csharp/Dialects/Postgres/bin/Debug/net9.0/templates/help/create.txt +16 -0
  131. package/csharp/Dialects/Postgres/bin/Debug/net9.0/templates/help/down.txt +40 -0
  132. package/csharp/Dialects/Postgres/bin/Debug/net9.0/templates/help/init.txt +15 -0
  133. package/csharp/Dialects/Postgres/bin/Debug/net9.0/templates/help/setup.txt +45 -0
  134. package/csharp/Dialects/Postgres/bin/Debug/net9.0/templates/help/up.txt +43 -0
  135. package/csharp/Dialects/Postgres/bin/Debug/net9.0/templates/messages/checksum-drift-line.txt +1 -0
  136. package/csharp/Dialects/Postgres/bin/Debug/net9.0/templates/messages/checksum-drift.txt +11 -0
  137. package/csharp/Dialects/Postgres/bin/Debug/net9.0/templates/messages/down/confirm-mismatch.txt +1 -0
  138. package/csharp/Dialects/Postgres/bin/Debug/net9.0/templates/messages/down/confirm-prompt.txt +1 -0
  139. package/csharp/Dialects/Postgres/bin/Debug/net9.0/templates/messages/down/confirm-stdin-failed.txt +1 -0
  140. package/csharp/Dialects/Postgres/bin/Debug/net9.0/templates/messages/down/confirm-token-mismatch.txt +1 -0
  141. package/csharp/Dialects/Postgres/bin/Debug/net9.0/templates/messages/down/confirm-tty-required.txt +1 -0
  142. package/csharp/Dialects/Postgres/bin/Debug/net9.0/templates/messages/down/destructive-header.txt +2 -0
  143. package/csharp/Dialects/Postgres/bin/Debug/net9.0/templates/messages/errors/invalid-name.txt +1 -0
  144. package/csharp/Dialects/Postgres/bin/Debug/net9.0/templates/messages/errors/migrate-path-not-dir.txt +1 -0
  145. package/csharp/Dialects/Postgres/bin/Debug/net9.0/templates/messages/errors/missing-connection.txt +1 -0
  146. package/csharp/Dialects/Postgres/bin/Debug/net9.0/templates/messages/errors/missing-name-hint.txt +1 -0
  147. package/csharp/Dialects/Postgres/bin/Debug/net9.0/templates/messages/errors/missing-name.txt +1 -0
  148. package/csharp/Dialects/Postgres/bin/Debug/net9.0/templates/messages/errors/missing-provider-hint.txt +1 -0
  149. package/csharp/Dialects/Postgres/bin/Debug/net9.0/templates/messages/errors/missing-provider.txt +1 -0
  150. package/csharp/Dialects/Postgres/bin/Debug/net9.0/templates/messages/errors/missing-value-for-flag.txt +1 -0
  151. package/csharp/Dialects/Postgres/bin/Debug/net9.0/templates/messages/errors/rollback-no-down-sibling.txt +1 -0
  152. package/csharp/Dialects/Postgres/bin/Debug/net9.0/templates/messages/errors/rollback-no-rollback-sibling.txt +1 -0
  153. package/csharp/Dialects/Postgres/bin/Debug/net9.0/templates/messages/errors/rollback-not-in-path.txt +1 -0
  154. package/csharp/Dialects/Postgres/bin/Debug/net9.0/templates/messages/errors/sqlite-prerequisite.txt +1 -0
  155. package/csharp/Dialects/Postgres/bin/Debug/net9.0/templates/messages/errors/unknown-arg.txt +1 -0
  156. package/csharp/Dialects/Postgres/bin/Debug/net9.0/templates/messages/errors/unsupported-provider.txt +1 -0
  157. package/csharp/Dialects/Postgres/bin/Debug/net9.0/templates/messages/setup-complete.txt +9 -0
  158. package/csharp/Dialects/Postgres/bin/Debug/net9.0/templates/messages/status/applied.txt +1 -0
  159. package/csharp/Dialects/Postgres/bin/Debug/net9.0/templates/messages/status/created.txt +1 -0
  160. package/csharp/Dialects/Postgres/bin/Debug/net9.0/templates/messages/status/no-more-pending.txt +1 -0
  161. package/csharp/Dialects/Postgres/bin/Debug/net9.0/templates/messages/status/no-pending.txt +1 -0
  162. package/csharp/Dialects/Postgres/bin/Debug/net9.0/templates/messages/status/no-rollback.txt +1 -0
  163. package/csharp/Dialects/Postgres/bin/Debug/net9.0/templates/messages/status/rolled-back.txt +1 -0
  164. package/csharp/Dialects/Postgres/bin/Debug/net9.0/templates/scaffold/down.sql +1 -0
  165. package/csharp/Dialects/Postgres/bin/Debug/net9.0/templates/scaffold/up.sql +1 -0
  166. package/csharp/Dialects/Postgres/bin/Debug/net9.0/templates/sql/mysql/migrate_logs.sql +11 -0
  167. package/csharp/Dialects/Postgres/bin/Debug/net9.0/templates/sql/mysql/migrates.sql +7 -0
  168. package/csharp/Dialects/Postgres/bin/Debug/net9.0/templates/sql/oracle/migrate_logs.sql +14 -0
  169. package/csharp/Dialects/Postgres/bin/Debug/net9.0/templates/sql/oracle/migrates.sql +10 -0
  170. package/csharp/Dialects/Postgres/bin/Debug/net9.0/templates/sql/postgres/migrate_logs.sql +11 -0
  171. package/csharp/Dialects/Postgres/bin/Debug/net9.0/templates/sql/postgres/migrates.sql +7 -0
  172. package/csharp/Dialects/Postgres/bin/Debug/net9.0/templates/sql/sqlite/migrate_logs.sql +11 -0
  173. package/csharp/Dialects/Postgres/bin/Debug/net9.0/templates/sql/sqlite/migrates.sql +7 -0
  174. package/csharp/Dialects/Postgres/bin/Debug/net9.0/templates/sql/sqlserver/migrate_logs.sql +12 -0
  175. package/csharp/Dialects/Postgres/bin/Debug/net9.0/templates/sql/sqlserver/migrates.sql +8 -0
  176. package/csharp/Dialects/Postgres/obj/Debug/net9.0/.NETCoreApp,Version=v9.0.AssemblyAttributes.cs +4 -0
  177. package/csharp/Dialects/Postgres/obj/Debug/net9.0/MigrateP.DF842641.Up2Date +0 -0
  178. package/csharp/Dialects/Postgres/obj/Debug/net9.0/MigratePostgres.AssemblyInfo.cs +22 -0
  179. package/csharp/Dialects/Postgres/obj/Debug/net9.0/MigratePostgres.AssemblyInfoInputs.cache +1 -0
  180. package/csharp/Dialects/Postgres/obj/Debug/net9.0/MigratePostgres.GeneratedMSBuildEditorConfig.editorconfig +18 -0
  181. package/csharp/Dialects/Postgres/obj/Debug/net9.0/MigratePostgres.GlobalUsings.g.cs +8 -0
  182. package/csharp/Dialects/Postgres/obj/Debug/net9.0/MigratePostgres.assets.cache +0 -0
  183. package/csharp/Dialects/Postgres/obj/Debug/net9.0/MigratePostgres.csproj.AssemblyReference.cache +0 -0
  184. package/csharp/Dialects/Postgres/obj/Debug/net9.0/MigratePostgres.csproj.CoreCompileInputs.cache +1 -0
  185. package/csharp/Dialects/Postgres/obj/Debug/net9.0/MigratePostgres.csproj.FileListAbsolute.txt +63 -0
  186. package/csharp/Dialects/Postgres/obj/Debug/net9.0/MigratePostgres.dll +0 -0
  187. package/csharp/Dialects/Postgres/obj/Debug/net9.0/MigratePostgres.pdb +0 -0
  188. package/csharp/Dialects/Postgres/obj/Debug/net9.0/MigratePostgres.sourcelink.json +1 -0
  189. package/csharp/Dialects/Postgres/obj/Debug/net9.0/ref/MigratePostgres.dll +0 -0
  190. package/csharp/Dialects/Postgres/obj/Debug/net9.0/refint/MigratePostgres.dll +0 -0
  191. package/csharp/Dialects/Postgres/obj/MigratePostgres.csproj.nuget.dgspec.json +172 -0
  192. package/csharp/Dialects/Postgres/obj/MigratePostgres.csproj.nuget.g.props +15 -0
  193. package/csharp/Dialects/Postgres/obj/MigratePostgres.csproj.nuget.g.targets +6 -0
  194. package/csharp/Dialects/Postgres/obj/project.assets.json +5068 -0
  195. package/csharp/Dialects/Postgres/obj/project.nuget.cache +94 -0
  196. package/csharp/Dialects/SqlServer/MigrateSqlServer.csproj +14 -0
  197. package/csharp/Dialects/SqlServer/SqlServerCreateDatabase.cs +21 -0
  198. package/csharp/Dialects/SqlServer/SqlServerDialect.cs +21 -0
  199. package/csharp/Dialects/SqlServer/bin/Debug/net9.0/MigrateCore.dll +0 -0
  200. package/csharp/Dialects/SqlServer/bin/Debug/net9.0/MigrateCore.pdb +0 -0
  201. package/csharp/Dialects/SqlServer/bin/Debug/net9.0/MigrateSqlServer.deps.json +727 -0
  202. package/csharp/Dialects/SqlServer/bin/Debug/net9.0/MigrateSqlServer.dll +0 -0
  203. package/csharp/Dialects/SqlServer/bin/Debug/net9.0/MigrateSqlServer.pdb +0 -0
  204. package/csharp/Dialects/SqlServer/bin/Debug/net9.0/cli.yaml +276 -0
  205. package/csharp/Dialects/SqlServer/bin/Debug/net9.0/templates/help/create.txt +16 -0
  206. package/csharp/Dialects/SqlServer/bin/Debug/net9.0/templates/help/down.txt +40 -0
  207. package/csharp/Dialects/SqlServer/bin/Debug/net9.0/templates/help/init.txt +15 -0
  208. package/csharp/Dialects/SqlServer/bin/Debug/net9.0/templates/help/setup.txt +45 -0
  209. package/csharp/Dialects/SqlServer/bin/Debug/net9.0/templates/help/up.txt +43 -0
  210. package/csharp/Dialects/SqlServer/bin/Debug/net9.0/templates/messages/checksum-drift-line.txt +1 -0
  211. package/csharp/Dialects/SqlServer/bin/Debug/net9.0/templates/messages/checksum-drift.txt +11 -0
  212. package/csharp/Dialects/SqlServer/bin/Debug/net9.0/templates/messages/down/confirm-mismatch.txt +1 -0
  213. package/csharp/Dialects/SqlServer/bin/Debug/net9.0/templates/messages/down/confirm-prompt.txt +1 -0
  214. package/csharp/Dialects/SqlServer/bin/Debug/net9.0/templates/messages/down/confirm-stdin-failed.txt +1 -0
  215. package/csharp/Dialects/SqlServer/bin/Debug/net9.0/templates/messages/down/confirm-token-mismatch.txt +1 -0
  216. package/csharp/Dialects/SqlServer/bin/Debug/net9.0/templates/messages/down/confirm-tty-required.txt +1 -0
  217. package/csharp/Dialects/SqlServer/bin/Debug/net9.0/templates/messages/down/destructive-header.txt +2 -0
  218. package/csharp/Dialects/SqlServer/bin/Debug/net9.0/templates/messages/errors/invalid-name.txt +1 -0
  219. package/csharp/Dialects/SqlServer/bin/Debug/net9.0/templates/messages/errors/migrate-path-not-dir.txt +1 -0
  220. package/csharp/Dialects/SqlServer/bin/Debug/net9.0/templates/messages/errors/missing-connection.txt +1 -0
  221. package/csharp/Dialects/SqlServer/bin/Debug/net9.0/templates/messages/errors/missing-name-hint.txt +1 -0
  222. package/csharp/Dialects/SqlServer/bin/Debug/net9.0/templates/messages/errors/missing-name.txt +1 -0
  223. package/csharp/Dialects/SqlServer/bin/Debug/net9.0/templates/messages/errors/missing-provider-hint.txt +1 -0
  224. package/csharp/Dialects/SqlServer/bin/Debug/net9.0/templates/messages/errors/missing-provider.txt +1 -0
  225. package/csharp/Dialects/SqlServer/bin/Debug/net9.0/templates/messages/errors/missing-value-for-flag.txt +1 -0
  226. package/csharp/Dialects/SqlServer/bin/Debug/net9.0/templates/messages/errors/rollback-no-down-sibling.txt +1 -0
  227. package/csharp/Dialects/SqlServer/bin/Debug/net9.0/templates/messages/errors/rollback-no-rollback-sibling.txt +1 -0
  228. package/csharp/Dialects/SqlServer/bin/Debug/net9.0/templates/messages/errors/rollback-not-in-path.txt +1 -0
  229. package/csharp/Dialects/SqlServer/bin/Debug/net9.0/templates/messages/errors/sqlite-prerequisite.txt +1 -0
  230. package/csharp/Dialects/SqlServer/bin/Debug/net9.0/templates/messages/errors/unknown-arg.txt +1 -0
  231. package/csharp/Dialects/SqlServer/bin/Debug/net9.0/templates/messages/errors/unsupported-provider.txt +1 -0
  232. package/csharp/Dialects/SqlServer/bin/Debug/net9.0/templates/messages/setup-complete.txt +9 -0
  233. package/csharp/Dialects/SqlServer/bin/Debug/net9.0/templates/messages/status/applied.txt +1 -0
  234. package/csharp/Dialects/SqlServer/bin/Debug/net9.0/templates/messages/status/created.txt +1 -0
  235. package/csharp/Dialects/SqlServer/bin/Debug/net9.0/templates/messages/status/no-more-pending.txt +1 -0
  236. package/csharp/Dialects/SqlServer/bin/Debug/net9.0/templates/messages/status/no-pending.txt +1 -0
  237. package/csharp/Dialects/SqlServer/bin/Debug/net9.0/templates/messages/status/no-rollback.txt +1 -0
  238. package/csharp/Dialects/SqlServer/bin/Debug/net9.0/templates/messages/status/rolled-back.txt +1 -0
  239. package/csharp/Dialects/SqlServer/bin/Debug/net9.0/templates/scaffold/down.sql +1 -0
  240. package/csharp/Dialects/SqlServer/bin/Debug/net9.0/templates/scaffold/up.sql +1 -0
  241. package/csharp/Dialects/SqlServer/bin/Debug/net9.0/templates/sql/mysql/migrate_logs.sql +11 -0
  242. package/csharp/Dialects/SqlServer/bin/Debug/net9.0/templates/sql/mysql/migrates.sql +7 -0
  243. package/csharp/Dialects/SqlServer/bin/Debug/net9.0/templates/sql/oracle/migrate_logs.sql +14 -0
  244. package/csharp/Dialects/SqlServer/bin/Debug/net9.0/templates/sql/oracle/migrates.sql +10 -0
  245. package/csharp/Dialects/SqlServer/bin/Debug/net9.0/templates/sql/postgres/migrate_logs.sql +11 -0
  246. package/csharp/Dialects/SqlServer/bin/Debug/net9.0/templates/sql/postgres/migrates.sql +7 -0
  247. package/csharp/Dialects/SqlServer/bin/Debug/net9.0/templates/sql/sqlite/migrate_logs.sql +11 -0
  248. package/csharp/Dialects/SqlServer/bin/Debug/net9.0/templates/sql/sqlite/migrates.sql +7 -0
  249. package/csharp/Dialects/SqlServer/bin/Debug/net9.0/templates/sql/sqlserver/migrate_logs.sql +12 -0
  250. package/csharp/Dialects/SqlServer/bin/Debug/net9.0/templates/sql/sqlserver/migrates.sql +8 -0
  251. package/csharp/Dialects/SqlServer/obj/Debug/net9.0/.NETCoreApp,Version=v9.0.AssemblyAttributes.cs +4 -0
  252. package/csharp/Dialects/SqlServer/obj/Debug/net9.0/MigrateS.6604771C.Up2Date +0 -0
  253. package/csharp/Dialects/SqlServer/obj/Debug/net9.0/MigrateSqlServer.AssemblyInfo.cs +22 -0
  254. package/csharp/Dialects/SqlServer/obj/Debug/net9.0/MigrateSqlServer.AssemblyInfoInputs.cache +1 -0
  255. package/csharp/Dialects/SqlServer/obj/Debug/net9.0/MigrateSqlServer.GeneratedMSBuildEditorConfig.editorconfig +18 -0
  256. package/csharp/Dialects/SqlServer/obj/Debug/net9.0/MigrateSqlServer.GlobalUsings.g.cs +8 -0
  257. package/csharp/Dialects/SqlServer/obj/Debug/net9.0/MigrateSqlServer.assets.cache +0 -0
  258. package/csharp/Dialects/SqlServer/obj/Debug/net9.0/MigrateSqlServer.csproj.AssemblyReference.cache +0 -0
  259. package/csharp/Dialects/SqlServer/obj/Debug/net9.0/MigrateSqlServer.csproj.CoreCompileInputs.cache +1 -0
  260. package/csharp/Dialects/SqlServer/obj/Debug/net9.0/MigrateSqlServer.csproj.FileListAbsolute.txt +63 -0
  261. package/csharp/Dialects/SqlServer/obj/Debug/net9.0/MigrateSqlServer.dll +0 -0
  262. package/csharp/Dialects/SqlServer/obj/Debug/net9.0/MigrateSqlServer.pdb +0 -0
  263. package/csharp/Dialects/SqlServer/obj/Debug/net9.0/MigrateSqlServer.sourcelink.json +1 -0
  264. package/csharp/Dialects/SqlServer/obj/Debug/net9.0/ref/MigrateSqlServer.dll +0 -0
  265. package/csharp/Dialects/SqlServer/obj/Debug/net9.0/refint/MigrateSqlServer.dll +0 -0
  266. package/csharp/Dialects/SqlServer/obj/MigrateSqlServer.csproj.nuget.dgspec.json +172 -0
  267. package/csharp/Dialects/SqlServer/obj/MigrateSqlServer.csproj.nuget.g.props +15 -0
  268. package/csharp/Dialects/SqlServer/obj/MigrateSqlServer.csproj.nuget.g.targets +7 -0
  269. package/csharp/Dialects/SqlServer/obj/project.assets.json +6391 -0
  270. package/csharp/Dialects/SqlServer/obj/project.nuget.cache +122 -0
  271. package/csharp/Dialects/Sqlite/MigrateSqlite.csproj +14 -0
  272. package/csharp/Dialects/Sqlite/SqliteDialect.cs +77 -0
  273. package/csharp/Dialects/Sqlite/bin/Debug/net9.0/MigrateCore.dll +0 -0
  274. package/csharp/Dialects/Sqlite/bin/Debug/net9.0/MigrateCore.pdb +0 -0
  275. package/csharp/Dialects/Sqlite/bin/Debug/net9.0/MigrateSqlite.deps.json +376 -0
  276. package/csharp/Dialects/Sqlite/bin/Debug/net9.0/MigrateSqlite.dll +0 -0
  277. package/csharp/Dialects/Sqlite/bin/Debug/net9.0/MigrateSqlite.pdb +0 -0
  278. package/csharp/Dialects/Sqlite/bin/Debug/net9.0/cli.yaml +276 -0
  279. package/csharp/Dialects/Sqlite/bin/Debug/net9.0/templates/help/create.txt +16 -0
  280. package/csharp/Dialects/Sqlite/bin/Debug/net9.0/templates/help/down.txt +40 -0
  281. package/csharp/Dialects/Sqlite/bin/Debug/net9.0/templates/help/init.txt +15 -0
  282. package/csharp/Dialects/Sqlite/bin/Debug/net9.0/templates/help/setup.txt +45 -0
  283. package/csharp/Dialects/Sqlite/bin/Debug/net9.0/templates/help/up.txt +43 -0
  284. package/csharp/Dialects/Sqlite/bin/Debug/net9.0/templates/messages/checksum-drift-line.txt +1 -0
  285. package/csharp/Dialects/Sqlite/bin/Debug/net9.0/templates/messages/checksum-drift.txt +11 -0
  286. package/csharp/Dialects/Sqlite/bin/Debug/net9.0/templates/messages/down/confirm-mismatch.txt +1 -0
  287. package/csharp/Dialects/Sqlite/bin/Debug/net9.0/templates/messages/down/confirm-prompt.txt +1 -0
  288. package/csharp/Dialects/Sqlite/bin/Debug/net9.0/templates/messages/down/confirm-stdin-failed.txt +1 -0
  289. package/csharp/Dialects/Sqlite/bin/Debug/net9.0/templates/messages/down/confirm-token-mismatch.txt +1 -0
  290. package/csharp/Dialects/Sqlite/bin/Debug/net9.0/templates/messages/down/confirm-tty-required.txt +1 -0
  291. package/csharp/Dialects/Sqlite/bin/Debug/net9.0/templates/messages/down/destructive-header.txt +2 -0
  292. package/csharp/Dialects/Sqlite/bin/Debug/net9.0/templates/messages/errors/invalid-name.txt +1 -0
  293. package/csharp/Dialects/Sqlite/bin/Debug/net9.0/templates/messages/errors/migrate-path-not-dir.txt +1 -0
  294. package/csharp/Dialects/Sqlite/bin/Debug/net9.0/templates/messages/errors/missing-connection.txt +1 -0
  295. package/csharp/Dialects/Sqlite/bin/Debug/net9.0/templates/messages/errors/missing-name-hint.txt +1 -0
  296. package/csharp/Dialects/Sqlite/bin/Debug/net9.0/templates/messages/errors/missing-name.txt +1 -0
  297. package/csharp/Dialects/Sqlite/bin/Debug/net9.0/templates/messages/errors/missing-provider-hint.txt +1 -0
  298. package/csharp/Dialects/Sqlite/bin/Debug/net9.0/templates/messages/errors/missing-provider.txt +1 -0
  299. package/csharp/Dialects/Sqlite/bin/Debug/net9.0/templates/messages/errors/missing-value-for-flag.txt +1 -0
  300. package/csharp/Dialects/Sqlite/bin/Debug/net9.0/templates/messages/errors/rollback-no-down-sibling.txt +1 -0
  301. package/csharp/Dialects/Sqlite/bin/Debug/net9.0/templates/messages/errors/rollback-no-rollback-sibling.txt +1 -0
  302. package/csharp/Dialects/Sqlite/bin/Debug/net9.0/templates/messages/errors/rollback-not-in-path.txt +1 -0
  303. package/csharp/Dialects/Sqlite/bin/Debug/net9.0/templates/messages/errors/sqlite-prerequisite.txt +1 -0
  304. package/csharp/Dialects/Sqlite/bin/Debug/net9.0/templates/messages/errors/unknown-arg.txt +1 -0
  305. package/csharp/Dialects/Sqlite/bin/Debug/net9.0/templates/messages/errors/unsupported-provider.txt +1 -0
  306. package/csharp/Dialects/Sqlite/bin/Debug/net9.0/templates/messages/setup-complete.txt +9 -0
  307. package/csharp/Dialects/Sqlite/bin/Debug/net9.0/templates/messages/status/applied.txt +1 -0
  308. package/csharp/Dialects/Sqlite/bin/Debug/net9.0/templates/messages/status/created.txt +1 -0
  309. package/csharp/Dialects/Sqlite/bin/Debug/net9.0/templates/messages/status/no-more-pending.txt +1 -0
  310. package/csharp/Dialects/Sqlite/bin/Debug/net9.0/templates/messages/status/no-pending.txt +1 -0
  311. package/csharp/Dialects/Sqlite/bin/Debug/net9.0/templates/messages/status/no-rollback.txt +1 -0
  312. package/csharp/Dialects/Sqlite/bin/Debug/net9.0/templates/messages/status/rolled-back.txt +1 -0
  313. package/csharp/Dialects/Sqlite/bin/Debug/net9.0/templates/scaffold/down.sql +1 -0
  314. package/csharp/Dialects/Sqlite/bin/Debug/net9.0/templates/scaffold/up.sql +1 -0
  315. package/csharp/Dialects/Sqlite/bin/Debug/net9.0/templates/sql/mysql/migrate_logs.sql +11 -0
  316. package/csharp/Dialects/Sqlite/bin/Debug/net9.0/templates/sql/mysql/migrates.sql +7 -0
  317. package/csharp/Dialects/Sqlite/bin/Debug/net9.0/templates/sql/oracle/migrate_logs.sql +14 -0
  318. package/csharp/Dialects/Sqlite/bin/Debug/net9.0/templates/sql/oracle/migrates.sql +10 -0
  319. package/csharp/Dialects/Sqlite/bin/Debug/net9.0/templates/sql/postgres/migrate_logs.sql +11 -0
  320. package/csharp/Dialects/Sqlite/bin/Debug/net9.0/templates/sql/postgres/migrates.sql +7 -0
  321. package/csharp/Dialects/Sqlite/bin/Debug/net9.0/templates/sql/sqlite/migrate_logs.sql +11 -0
  322. package/csharp/Dialects/Sqlite/bin/Debug/net9.0/templates/sql/sqlite/migrates.sql +7 -0
  323. package/csharp/Dialects/Sqlite/bin/Debug/net9.0/templates/sql/sqlserver/migrate_logs.sql +12 -0
  324. package/csharp/Dialects/Sqlite/bin/Debug/net9.0/templates/sql/sqlserver/migrates.sql +8 -0
  325. package/csharp/Dialects/Sqlite/obj/Debug/net9.0/.NETCoreApp,Version=v9.0.AssemblyAttributes.cs +4 -0
  326. package/csharp/Dialects/Sqlite/obj/Debug/net9.0/MigrateS.4867C581.Up2Date +0 -0
  327. package/csharp/Dialects/Sqlite/obj/Debug/net9.0/MigrateSqlite.AssemblyInfo.cs +22 -0
  328. package/csharp/Dialects/Sqlite/obj/Debug/net9.0/MigrateSqlite.AssemblyInfoInputs.cache +1 -0
  329. package/csharp/Dialects/Sqlite/obj/Debug/net9.0/MigrateSqlite.GeneratedMSBuildEditorConfig.editorconfig +18 -0
  330. package/csharp/Dialects/Sqlite/obj/Debug/net9.0/MigrateSqlite.GlobalUsings.g.cs +8 -0
  331. package/csharp/Dialects/Sqlite/obj/Debug/net9.0/MigrateSqlite.assets.cache +0 -0
  332. package/csharp/Dialects/Sqlite/obj/Debug/net9.0/MigrateSqlite.csproj.AssemblyReference.cache +0 -0
  333. package/csharp/Dialects/Sqlite/obj/Debug/net9.0/MigrateSqlite.csproj.CoreCompileInputs.cache +1 -0
  334. package/csharp/Dialects/Sqlite/obj/Debug/net9.0/MigrateSqlite.csproj.FileListAbsolute.txt +63 -0
  335. package/csharp/Dialects/Sqlite/obj/Debug/net9.0/MigrateSqlite.dll +0 -0
  336. package/csharp/Dialects/Sqlite/obj/Debug/net9.0/MigrateSqlite.pdb +0 -0
  337. package/csharp/Dialects/Sqlite/obj/Debug/net9.0/MigrateSqlite.sourcelink.json +1 -0
  338. package/csharp/Dialects/Sqlite/obj/Debug/net9.0/ref/MigrateSqlite.dll +0 -0
  339. package/csharp/Dialects/Sqlite/obj/Debug/net9.0/refint/MigrateSqlite.dll +0 -0
  340. package/csharp/Dialects/Sqlite/obj/MigrateSqlite.csproj.nuget.dgspec.json +172 -0
  341. package/csharp/Dialects/Sqlite/obj/MigrateSqlite.csproj.nuget.g.props +15 -0
  342. package/csharp/Dialects/Sqlite/obj/MigrateSqlite.csproj.nuget.g.targets +6 -0
  343. package/csharp/Dialects/Sqlite/obj/project.assets.json +5263 -0
  344. package/csharp/Dialects/Sqlite/obj/project.nuget.cache +99 -0
  345. package/csharp/GlobalUsings.cs +6 -0
  346. package/csharp/Infrastructure/Checksum.cs +18 -0
  347. package/csharp/Infrastructure/CliSpec.cs +228 -0
  348. package/csharp/Infrastructure/ConnectionResolver.cs +9 -0
  349. package/csharp/Infrastructure/ConnectionStringUrl.cs +47 -0
  350. package/csharp/Infrastructure/CreateDatabase.cs +7 -0
  351. package/csharp/Infrastructure/DbExecute.cs +81 -0
  352. package/csharp/Infrastructure/HelpTemplates.cs +47 -0
  353. package/csharp/Infrastructure/MigrateCli.cs +159 -0
  354. package/csharp/Infrastructure/MigrateLog.cs +54 -0
  355. package/csharp/Infrastructure/Migrater.cs +157 -0
  356. package/csharp/Infrastructure/Migrations.cs +105 -0
  357. package/csharp/Infrastructure/SqlTemplates.cs +10 -0
  358. package/csharp/MigrateCreate.cs +114 -0
  359. package/csharp/MigrateDown.cs +147 -0
  360. package/csharp/MigrateRunner.Core.csproj +66 -0
  361. package/csharp/MigrateRunner.csproj +63 -0
  362. package/csharp/MigrateRunnerServices.cs +55 -0
  363. package/csharp/MigrateSetup.cs +145 -0
  364. package/csharp/MigrateUp.cs +122 -0
  365. package/csharp/Program.cs +40 -0
  366. package/{dist → orchestrator/dist}/cli-spec.d.ts +1 -1
  367. package/{dist → orchestrator/dist}/cli-spec.js +10 -2
  368. package/orchestrator/dist/config.d.ts +13 -0
  369. package/orchestrator/dist/config.js +48 -0
  370. package/orchestrator/dist/dialects.d.ts +2 -0
  371. package/orchestrator/dist/dialects.js +25 -0
  372. package/orchestrator/dist/dispatch.d.ts +9 -0
  373. package/orchestrator/dist/dispatch.js +36 -0
  374. package/{dist → orchestrator/dist}/help.d.ts +0 -1
  375. package/orchestrator/dist/help.js +36 -0
  376. package/orchestrator/dist/languages.d.ts +4 -0
  377. package/orchestrator/dist/languages.js +12 -0
  378. package/orchestrator/dist/manifests.d.ts +8 -0
  379. package/orchestrator/dist/manifests.js +53 -0
  380. package/orchestrator/dist/migrate-create.js +3 -0
  381. package/orchestrator/dist/migrate-down.js +3 -0
  382. package/orchestrator/dist/migrate-init.js +37 -0
  383. package/orchestrator/dist/migrate-setup.js +3 -0
  384. package/orchestrator/dist/migrate-up.js +3 -0
  385. package/orchestrator/dist/parse-init.d.ts +12 -0
  386. package/orchestrator/dist/parse-init.js +56 -0
  387. package/orchestrator/dist/repo.d.ts +2 -0
  388. package/orchestrator/dist/repo.js +19 -0
  389. package/orchestrator/dist/run-init.d.ts +2 -0
  390. package/orchestrator/dist/run-init.js +66 -0
  391. package/orchestrator/dist/run.d.ts +3 -0
  392. package/orchestrator/dist/run.js +16 -0
  393. package/orchestrator/prepare.js +21 -0
  394. package/orchestrator/tsconfig.json +19 -0
  395. package/package.json +49 -62
  396. package/rust/Cargo.lock +393 -0
  397. package/rust/Cargo.toml +29 -0
  398. package/rust/api/Cargo.toml +8 -0
  399. package/rust/api/src/lib.rs +231 -0
  400. package/rust/dialects/mysql/Cargo.toml +11 -0
  401. package/rust/dialects/mysql/src/lib.rs +231 -0
  402. package/rust/dialects/oracle/Cargo.toml +11 -0
  403. package/rust/dialects/oracle/src/lib.rs +245 -0
  404. package/rust/dialects/postgres/Cargo.toml +11 -0
  405. package/rust/dialects/postgres/src/lib.rs +235 -0
  406. package/rust/dialects/sqlite/Cargo.toml +11 -0
  407. package/rust/dialects/sqlite/src/lib.rs +286 -0
  408. package/rust/dialects/sqlserver/Cargo.toml +12 -0
  409. package/rust/dialects/sqlserver/src/lib.rs +235 -0
  410. package/rust/rustfmt.toml +2 -0
  411. package/rust/src/abstractions/factory.rs +17 -0
  412. package/rust/src/abstractions/mod.rs +5 -0
  413. package/rust/src/abstractions/sql_dialect.rs +1 -0
  414. package/rust/src/argv.rs +15 -0
  415. package/rust/src/attached_dialects.rs +2 -0
  416. package/rust/src/bin/migrate_create.rs +97 -0
  417. package/rust/src/bin/migrate_down.rs +151 -0
  418. package/rust/src/bin/migrate_setup.rs +153 -0
  419. package/rust/src/bin/migrate_up.rs +126 -0
  420. package/rust/src/checksum.rs +55 -0
  421. package/rust/src/cli_spec.rs +249 -0
  422. package/rust/src/dialects/mod.rs +4 -0
  423. package/rust/src/help.rs +10 -0
  424. package/rust/src/infrastructure/connection_resolver.rs +8 -0
  425. package/rust/src/infrastructure/create_database.rs +15 -0
  426. package/rust/src/infrastructure/mod.rs +9 -0
  427. package/rust/src/infrastructure/pool.rs +79 -0
  428. package/rust/src/infrastructure/split_on_go.rs +48 -0
  429. package/rust/src/lib.rs +115 -0
  430. package/rust/src/messages.rs +102 -0
  431. package/rust/src/migrater.rs +224 -0
  432. package/rust/src/migrations.rs +151 -0
  433. package/rust/src/provider.rs +57 -0
  434. package/shared/templates/help/create.txt +16 -0
  435. package/shared/templates/help/down.txt +40 -0
  436. package/shared/templates/help/init.txt +15 -0
  437. package/shared/templates/help/setup.txt +45 -0
  438. package/shared/templates/help/up.txt +43 -0
  439. package/shared/templates/messages/checksum-drift-line.txt +1 -0
  440. package/shared/templates/messages/checksum-drift.txt +11 -0
  441. package/shared/templates/messages/down/confirm-mismatch.txt +1 -0
  442. package/shared/templates/messages/down/confirm-prompt.txt +1 -0
  443. package/shared/templates/messages/down/confirm-stdin-failed.txt +1 -0
  444. package/shared/templates/messages/down/confirm-token-mismatch.txt +1 -0
  445. package/shared/templates/messages/down/confirm-tty-required.txt +1 -0
  446. package/shared/templates/messages/down/destructive-header.txt +2 -0
  447. package/shared/templates/messages/errors/invalid-name.txt +1 -0
  448. package/shared/templates/messages/errors/migrate-path-not-dir.txt +1 -0
  449. package/shared/templates/messages/errors/missing-connection.txt +1 -0
  450. package/shared/templates/messages/errors/missing-name-hint.txt +1 -0
  451. package/shared/templates/messages/errors/missing-name.txt +1 -0
  452. package/shared/templates/messages/errors/missing-provider-hint.txt +1 -0
  453. package/shared/templates/messages/errors/missing-provider.txt +1 -0
  454. package/shared/templates/messages/errors/missing-value-for-flag.txt +1 -0
  455. package/shared/templates/messages/errors/rollback-no-down-sibling.txt +1 -0
  456. package/shared/templates/messages/errors/rollback-no-rollback-sibling.txt +1 -0
  457. package/shared/templates/messages/errors/rollback-not-in-path.txt +1 -0
  458. package/shared/templates/messages/errors/sqlite-prerequisite.txt +1 -0
  459. package/shared/templates/messages/errors/unknown-arg.txt +1 -0
  460. package/shared/templates/messages/errors/unsupported-provider.txt +1 -0
  461. package/shared/templates/messages/setup-complete.txt +9 -0
  462. package/shared/templates/messages/status/applied.txt +1 -0
  463. package/shared/templates/messages/status/created.txt +1 -0
  464. package/shared/templates/messages/status/no-more-pending.txt +1 -0
  465. package/shared/templates/messages/status/no-pending.txt +1 -0
  466. package/shared/templates/messages/status/no-rollback.txt +1 -0
  467. package/shared/templates/messages/status/rolled-back.txt +1 -0
  468. package/shared/templates/scaffold/down.sql +1 -0
  469. package/shared/templates/scaffold/up.sql +1 -0
  470. package/shared/templates/sql/mysql/migrate_logs.sql +11 -0
  471. package/shared/templates/sql/mysql/migrates.sql +7 -0
  472. package/shared/templates/sql/oracle/migrate_logs.sql +14 -0
  473. package/shared/templates/sql/oracle/migrates.sql +10 -0
  474. package/shared/templates/sql/postgres/migrate_logs.sql +11 -0
  475. package/shared/templates/sql/postgres/migrates.sql +7 -0
  476. package/shared/templates/sql/sqlite/migrate_logs.sql +11 -0
  477. package/shared/templates/sql/sqlite/migrates.sql +7 -0
  478. package/shared/templates/sql/sqlserver/migrate_logs.sql +12 -0
  479. package/shared/templates/sql/sqlserver/migrates.sql +8 -0
  480. package/typescript/bundle.yaml +254 -0
  481. package/typescript/dialects/mysql/package.json +12 -0
  482. package/typescript/dialects/mysql/src/index.ts +4 -0
  483. package/typescript/dialects/mysql/src/mysql-dialect.test.ts +99 -0
  484. package/typescript/dialects/mysql/src/mysql-dialect.ts +75 -0
  485. package/typescript/dialects/oracle/package.json +13 -0
  486. package/typescript/dialects/oracle/src/index.ts +4 -0
  487. package/typescript/dialects/oracle/src/oracle-dialect.test.ts +118 -0
  488. package/typescript/dialects/oracle/src/oracle-dialect.ts +91 -0
  489. package/typescript/dialects/postgres/package.json +13 -0
  490. package/typescript/dialects/postgres/src/index.ts +4 -0
  491. package/typescript/dialects/postgres/src/postgres-dialect.test.ts +98 -0
  492. package/typescript/dialects/postgres/src/postgres-dialect.ts +82 -0
  493. package/typescript/dialects/sqlite/package.json +13 -0
  494. package/typescript/dialects/sqlite/src/index.ts +4 -0
  495. package/typescript/dialects/sqlite/src/sqlite-dialect.rollback.test.ts +30 -0
  496. package/typescript/dialects/sqlite/src/sqlite-dialect.test.ts +77 -0
  497. package/typescript/dialects/sqlite/src/sqlite-dialect.ts +96 -0
  498. package/typescript/dialects/sqlserver/package.json +13 -0
  499. package/typescript/dialects/sqlserver/src/index.ts +4 -0
  500. package/typescript/dialects/sqlserver/src/sqlserver-dialect.test.ts +109 -0
  501. package/typescript/dialects/sqlserver/src/sqlserver-dialect.ts +103 -0
  502. package/typescript/package.json +46 -0
  503. package/typescript/src/abstractions/migrater.ts +13 -0
  504. package/typescript/src/abstractions/sql-dialect-base.ts +38 -0
  505. package/typescript/src/abstractions/sql-dialect-factory.ts +29 -0
  506. package/typescript/src/abstractions/sql-dialect.ts +18 -0
  507. package/typescript/src/bin/migrate-create.ts +80 -0
  508. package/typescript/src/bin/migrate-down.ts +141 -0
  509. package/typescript/src/bin/migrate-setup.ts +106 -0
  510. package/typescript/src/bin/migrate-up.ts +111 -0
  511. package/typescript/src/cli-contract.ts +25 -0
  512. package/typescript/src/cli-spec.ts +73 -0
  513. package/typescript/src/cli.ts +52 -0
  514. package/typescript/src/create-database.test.ts +18 -0
  515. package/typescript/src/create-database.ts +7 -0
  516. package/typescript/src/create-sequence.ts +17 -0
  517. package/typescript/src/datasource-migrate.ts +314 -0
  518. package/typescript/src/generate-help.test.ts +33 -0
  519. package/typescript/src/generate-help.ts +173 -0
  520. package/typescript/src/help.test.ts +48 -0
  521. package/typescript/src/help.ts +12 -0
  522. package/typescript/src/index.ts +23 -0
  523. package/typescript/src/infrastructure/connection-resolver.ts +18 -0
  524. package/typescript/src/infrastructure/default-factory.test.ts +30 -0
  525. package/typescript/src/infrastructure/default-factory.ts +41 -0
  526. package/typescript/src/infrastructure/interop-default.test.ts +9 -0
  527. package/typescript/src/infrastructure/interop-default.ts +2 -0
  528. package/typescript/src/infrastructure/message-templates.ts +30 -0
  529. package/typescript/src/infrastructure/mysql-text-protocol.ts +7 -0
  530. package/typescript/src/infrastructure/split-on-go.ts +19 -0
  531. package/typescript/src/infrastructure/sql-templates.ts +10 -0
  532. package/typescript/src/infrastructure/templates-root.ts +16 -0
  533. package/typescript/src/init-select.test.ts +34 -0
  534. package/typescript/src/init-select.ts +77 -0
  535. package/typescript/src/migrater.ts +92 -0
  536. package/{dist/migration-client.d.ts → typescript/src/migration-client.ts} +12 -12
  537. package/typescript/src/path-exists.ts +10 -0
  538. package/typescript/src/setup-sql.test.ts +16 -0
  539. package/typescript/src/sql.ts +17 -0
  540. package/typescript/tsconfig.build.json +20 -0
  541. package/dist/abstractions/migrater.d.ts +0 -28
  542. package/dist/abstractions/migrater.js +0 -1
  543. package/dist/abstractions/sql-dialect-base.d.ts +0 -16
  544. package/dist/abstractions/sql-dialect-base.js +0 -19
  545. package/dist/abstractions/sql-dialect-factory.d.ts +0 -8
  546. package/dist/abstractions/sql-dialect-factory.js +0 -22
  547. package/dist/abstractions/sql-dialect.d.ts +0 -16
  548. package/dist/abstractions/sql-dialect.js +0 -1
  549. package/dist/bin/migrate-create.js +0 -71
  550. package/dist/bin/migrate-down.js +0 -135
  551. package/dist/bin/migrate-init.js +0 -77
  552. package/dist/bin/migrate-setup.js +0 -87
  553. package/dist/bin/migrate-up.js +0 -97
  554. package/dist/cli-contract.d.ts +0 -6
  555. package/dist/cli-contract.js +0 -19
  556. package/dist/cli.d.ts +0 -9
  557. package/dist/cli.js +0 -41
  558. package/dist/create-sequence.d.ts +0 -4
  559. package/dist/create-sequence.js +0 -16
  560. package/dist/datasource-migrate.d.ts +0 -31
  561. package/dist/datasource-migrate.js +0 -206
  562. package/dist/dialects/mysql-dialect.d.ts +0 -12
  563. package/dist/dialects/mysql-dialect.js +0 -56
  564. package/dist/dialects/oracle-dialect.d.ts +0 -18
  565. package/dist/dialects/oracle-dialect.js +0 -76
  566. package/dist/dialects/postgres-dialect.d.ts +0 -11
  567. package/dist/dialects/postgres-dialect.js +0 -58
  568. package/dist/dialects/sqlite-dialect.d.ts +0 -13
  569. package/dist/dialects/sqlite-dialect.js +0 -96
  570. package/dist/dialects/sqlserver-dialect.d.ts +0 -12
  571. package/dist/dialects/sqlserver-dialect.js +0 -73
  572. package/dist/help.js +0 -10
  573. package/dist/index.d.ts +0 -7
  574. package/dist/index.js +0 -6
  575. package/dist/infrastructure/connection-resolver.d.ts +0 -7
  576. package/dist/infrastructure/connection-resolver.js +0 -19
  577. package/dist/infrastructure/default-factory.d.ts +0 -4
  578. package/dist/infrastructure/default-factory.js +0 -15
  579. package/dist/infrastructure/interop-default.d.ts +0 -3
  580. package/dist/infrastructure/interop-default.js +0 -1
  581. package/dist/infrastructure/message-templates.d.ts +0 -3
  582. package/dist/infrastructure/message-templates.js +0 -18
  583. package/dist/infrastructure/split-on-go.d.ts +0 -2
  584. package/dist/infrastructure/split-on-go.js +0 -20
  585. package/dist/infrastructure/sql-templates.d.ts +0 -2
  586. package/dist/infrastructure/sql-templates.js +0 -4
  587. package/dist/infrastructure/templates-root.d.ts +0 -2
  588. package/dist/infrastructure/templates-root.js +0 -11
  589. package/dist/init-select.d.ts +0 -12
  590. package/dist/init-select.js +0 -52
  591. package/dist/migrater.d.ts +0 -12
  592. package/dist/migrater.js +0 -84
  593. package/dist/migration-client.js +0 -1
  594. package/dist/path-exists.d.ts +0 -1
  595. package/dist/path-exists.js +0 -10
  596. package/dist/sql.d.ts +0 -3
  597. package/dist/sql.js +0 -15
  598. package/dist/templates/help/init.txt +0 -13
  599. package/dist/templates/messages/down/confirm-prompt.txt +0 -1
  600. package/dist/templates/messages/down/confirm-token-mismatch.txt +0 -1
  601. package/dist/templates/messages/down/confirm-tty-required.txt +0 -1
  602. /package/{dist → csharp/Dialects/Mysql/bin/Debug/net9.0}/templates/help/create.txt +0 -0
  603. /package/{dist → csharp/Dialects/Mysql/bin/Debug/net9.0}/templates/help/up.txt +0 -0
  604. /package/{dist → csharp/Dialects/Mysql/bin/Debug/net9.0}/templates/messages/checksum-drift-line.txt +0 -0
  605. /package/{dist → csharp/Dialects/Mysql/bin/Debug/net9.0}/templates/messages/checksum-drift.txt +0 -0
  606. /package/{dist → csharp/Dialects/Mysql/bin/Debug/net9.0}/templates/messages/down/confirm-mismatch.txt +0 -0
  607. /package/{dist → csharp/Dialects/Mysql/bin/Debug/net9.0}/templates/messages/down/confirm-stdin-failed.txt +0 -0
  608. /package/{dist → csharp/Dialects/Mysql/bin/Debug/net9.0}/templates/messages/errors/invalid-name.txt +0 -0
  609. /package/{dist → csharp/Dialects/Mysql/bin/Debug/net9.0}/templates/messages/errors/migrate-path-not-dir.txt +0 -0
  610. /package/{dist → csharp/Dialects/Mysql/bin/Debug/net9.0}/templates/messages/errors/missing-connection.txt +0 -0
  611. /package/{dist → csharp/Dialects/Mysql/bin/Debug/net9.0}/templates/messages/errors/missing-name-hint.txt +0 -0
  612. /package/{dist → csharp/Dialects/Mysql/bin/Debug/net9.0}/templates/messages/errors/missing-name.txt +0 -0
  613. /package/{dist → csharp/Dialects/Mysql/bin/Debug/net9.0}/templates/messages/errors/missing-provider-hint.txt +0 -0
  614. /package/{dist → csharp/Dialects/Mysql/bin/Debug/net9.0}/templates/messages/errors/missing-provider.txt +0 -0
  615. /package/{dist → csharp/Dialects/Mysql/bin/Debug/net9.0}/templates/messages/errors/missing-value-for-flag.txt +0 -0
  616. /package/{dist → csharp/Dialects/Mysql/bin/Debug/net9.0}/templates/messages/errors/rollback-no-down-sibling.txt +0 -0
  617. /package/{dist → csharp/Dialects/Mysql/bin/Debug/net9.0}/templates/messages/errors/rollback-no-rollback-sibling.txt +0 -0
  618. /package/{dist → csharp/Dialects/Mysql/bin/Debug/net9.0}/templates/messages/errors/rollback-not-in-path.txt +0 -0
  619. /package/{dist → csharp/Dialects/Mysql/bin/Debug/net9.0}/templates/messages/errors/sqlite-prerequisite.txt +0 -0
  620. /package/{dist → csharp/Dialects/Mysql/bin/Debug/net9.0}/templates/messages/errors/unknown-arg.txt +0 -0
  621. /package/{dist → csharp/Dialects/Mysql/bin/Debug/net9.0}/templates/messages/errors/unsupported-provider.txt +0 -0
  622. /package/{dist → csharp/Dialects/Mysql/bin/Debug/net9.0}/templates/messages/setup-complete.txt +0 -0
  623. /package/{dist → csharp/Dialects/Mysql/bin/Debug/net9.0}/templates/messages/status/applied.txt +0 -0
  624. /package/{dist → csharp/Dialects/Mysql/bin/Debug/net9.0}/templates/messages/status/created.txt +0 -0
  625. /package/{dist → csharp/Dialects/Mysql/bin/Debug/net9.0}/templates/messages/status/no-more-pending.txt +0 -0
  626. /package/{dist → csharp/Dialects/Mysql/bin/Debug/net9.0}/templates/messages/status/no-pending.txt +0 -0
  627. /package/{dist → csharp/Dialects/Mysql/bin/Debug/net9.0}/templates/messages/status/no-rollback.txt +0 -0
  628. /package/{dist → csharp/Dialects/Mysql/bin/Debug/net9.0}/templates/messages/status/rolled-back.txt +0 -0
  629. /package/{dist → csharp/Dialects/Mysql/bin/Debug/net9.0}/templates/scaffold/down.sql +0 -0
  630. /package/{dist → csharp/Dialects/Mysql/bin/Debug/net9.0}/templates/scaffold/up.sql +0 -0
  631. /package/{dist → csharp/Dialects/Mysql/bin/Debug/net9.0}/templates/sql/mysql/migrate_logs.sql +0 -0
  632. /package/{dist → csharp/Dialects/Mysql/bin/Debug/net9.0}/templates/sql/mysql/migrates.sql +0 -0
  633. /package/{dist → csharp/Dialects/Mysql/bin/Debug/net9.0}/templates/sql/oracle/migrate_logs.sql +0 -0
  634. /package/{dist → csharp/Dialects/Mysql/bin/Debug/net9.0}/templates/sql/oracle/migrates.sql +0 -0
  635. /package/{dist → csharp/Dialects/Mysql/bin/Debug/net9.0}/templates/sql/postgres/migrate_logs.sql +0 -0
  636. /package/{dist → csharp/Dialects/Mysql/bin/Debug/net9.0}/templates/sql/postgres/migrates.sql +0 -0
  637. /package/{dist → csharp/Dialects/Mysql/bin/Debug/net9.0}/templates/sql/sqlite/migrate_logs.sql +0 -0
  638. /package/{dist → csharp/Dialects/Mysql/bin/Debug/net9.0}/templates/sql/sqlite/migrates.sql +0 -0
  639. /package/{dist → csharp/Dialects/Mysql/bin/Debug/net9.0}/templates/sql/sqlserver/migrate_logs.sql +0 -0
  640. /package/{dist → csharp/Dialects/Mysql/bin/Debug/net9.0}/templates/sql/sqlserver/migrates.sql +0 -0
  641. /package/{dist/bin → orchestrator/dist}/migrate-create.d.ts +0 -0
  642. /package/{dist/bin → orchestrator/dist}/migrate-down.d.ts +0 -0
  643. /package/{dist/bin → orchestrator/dist}/migrate-init.d.ts +0 -0
  644. /package/{dist/bin → orchestrator/dist}/migrate-setup.d.ts +0 -0
  645. /package/{dist/bin → orchestrator/dist}/migrate-up.d.ts +0 -0
@@ -0,0 +1,99 @@
1
+ {
2
+ "version": 2,
3
+ "dgSpecHash": "yuH6ajsCysY=",
4
+ "success": true,
5
+ "projectFilePath": "/Users/ryan/Projects/migraters/csharp/Dialects/Sqlite/MigrateSqlite.csproj",
6
+ "expectedPackageFiles": [
7
+ "/var/folders/qz/brt3bj8d6r9920chymvn8ccr0000gn/T/cursor-sandbox-cache/8fcaff215c746e0253f5b4003da604f3/nuget/dotnetenv/3.2.0/dotnetenv.3.2.0.nupkg.sha512",
8
+ "/var/folders/qz/brt3bj8d6r9920chymvn8ccr0000gn/T/cursor-sandbox-cache/8fcaff215c746e0253f5b4003da604f3/nuget/microsoft.data.sqlite/9.0.0/microsoft.data.sqlite.9.0.0.nupkg.sha512",
9
+ "/var/folders/qz/brt3bj8d6r9920chymvn8ccr0000gn/T/cursor-sandbox-cache/8fcaff215c746e0253f5b4003da604f3/nuget/microsoft.data.sqlite.core/9.0.0/microsoft.data.sqlite.core.9.0.0.nupkg.sha512",
10
+ "/var/folders/qz/brt3bj8d6r9920chymvn8ccr0000gn/T/cursor-sandbox-cache/8fcaff215c746e0253f5b4003da604f3/nuget/microsoft.extensions.configuration/1.1.2/microsoft.extensions.configuration.1.1.2.nupkg.sha512",
11
+ "/var/folders/qz/brt3bj8d6r9920chymvn8ccr0000gn/T/cursor-sandbox-cache/8fcaff215c746e0253f5b4003da604f3/nuget/microsoft.extensions.configuration.abstractions/1.1.2/microsoft.extensions.configuration.abstractions.1.1.2.nupkg.sha512",
12
+ "/var/folders/qz/brt3bj8d6r9920chymvn8ccr0000gn/T/cursor-sandbox-cache/8fcaff215c746e0253f5b4003da604f3/nuget/microsoft.extensions.dependencyinjection/9.0.0/microsoft.extensions.dependencyinjection.9.0.0.nupkg.sha512",
13
+ "/var/folders/qz/brt3bj8d6r9920chymvn8ccr0000gn/T/cursor-sandbox-cache/8fcaff215c746e0253f5b4003da604f3/nuget/microsoft.extensions.dependencyinjection.abstractions/9.0.0/microsoft.extensions.dependencyinjection.abstractions.9.0.0.nupkg.sha512",
14
+ "/var/folders/qz/brt3bj8d6r9920chymvn8ccr0000gn/T/cursor-sandbox-cache/8fcaff215c746e0253f5b4003da604f3/nuget/microsoft.extensions.primitives/1.1.1/microsoft.extensions.primitives.1.1.1.nupkg.sha512",
15
+ "/var/folders/qz/brt3bj8d6r9920chymvn8ccr0000gn/T/cursor-sandbox-cache/8fcaff215c746e0253f5b4003da604f3/nuget/microsoft.netcore.platforms/1.1.0/microsoft.netcore.platforms.1.1.0.nupkg.sha512",
16
+ "/var/folders/qz/brt3bj8d6r9920chymvn8ccr0000gn/T/cursor-sandbox-cache/8fcaff215c746e0253f5b4003da604f3/nuget/microsoft.netcore.targets/1.1.0/microsoft.netcore.targets.1.1.0.nupkg.sha512",
17
+ "/var/folders/qz/brt3bj8d6r9920chymvn8ccr0000gn/T/cursor-sandbox-cache/8fcaff215c746e0253f5b4003da604f3/nuget/microsoft.win32.primitives/4.3.0/microsoft.win32.primitives.4.3.0.nupkg.sha512",
18
+ "/var/folders/qz/brt3bj8d6r9920chymvn8ccr0000gn/T/cursor-sandbox-cache/8fcaff215c746e0253f5b4003da604f3/nuget/netstandard.library/1.6.1/netstandard.library.1.6.1.nupkg.sha512",
19
+ "/var/folders/qz/brt3bj8d6r9920chymvn8ccr0000gn/T/cursor-sandbox-cache/8fcaff215c746e0253f5b4003da604f3/nuget/runtime.debian.8-x64.runtime.native.system.security.cryptography.openssl/4.3.0/runtime.debian.8-x64.runtime.native.system.security.cryptography.openssl.4.3.0.nupkg.sha512",
20
+ "/var/folders/qz/brt3bj8d6r9920chymvn8ccr0000gn/T/cursor-sandbox-cache/8fcaff215c746e0253f5b4003da604f3/nuget/runtime.fedora.23-x64.runtime.native.system.security.cryptography.openssl/4.3.0/runtime.fedora.23-x64.runtime.native.system.security.cryptography.openssl.4.3.0.nupkg.sha512",
21
+ "/var/folders/qz/brt3bj8d6r9920chymvn8ccr0000gn/T/cursor-sandbox-cache/8fcaff215c746e0253f5b4003da604f3/nuget/runtime.fedora.24-x64.runtime.native.system.security.cryptography.openssl/4.3.0/runtime.fedora.24-x64.runtime.native.system.security.cryptography.openssl.4.3.0.nupkg.sha512",
22
+ "/var/folders/qz/brt3bj8d6r9920chymvn8ccr0000gn/T/cursor-sandbox-cache/8fcaff215c746e0253f5b4003da604f3/nuget/runtime.native.system/4.3.0/runtime.native.system.4.3.0.nupkg.sha512",
23
+ "/var/folders/qz/brt3bj8d6r9920chymvn8ccr0000gn/T/cursor-sandbox-cache/8fcaff215c746e0253f5b4003da604f3/nuget/runtime.native.system.io.compression/4.3.0/runtime.native.system.io.compression.4.3.0.nupkg.sha512",
24
+ "/var/folders/qz/brt3bj8d6r9920chymvn8ccr0000gn/T/cursor-sandbox-cache/8fcaff215c746e0253f5b4003da604f3/nuget/runtime.native.system.net.http/4.3.0/runtime.native.system.net.http.4.3.0.nupkg.sha512",
25
+ "/var/folders/qz/brt3bj8d6r9920chymvn8ccr0000gn/T/cursor-sandbox-cache/8fcaff215c746e0253f5b4003da604f3/nuget/runtime.native.system.security.cryptography.apple/4.3.0/runtime.native.system.security.cryptography.apple.4.3.0.nupkg.sha512",
26
+ "/var/folders/qz/brt3bj8d6r9920chymvn8ccr0000gn/T/cursor-sandbox-cache/8fcaff215c746e0253f5b4003da604f3/nuget/runtime.native.system.security.cryptography.openssl/4.3.0/runtime.native.system.security.cryptography.openssl.4.3.0.nupkg.sha512",
27
+ "/var/folders/qz/brt3bj8d6r9920chymvn8ccr0000gn/T/cursor-sandbox-cache/8fcaff215c746e0253f5b4003da604f3/nuget/runtime.opensuse.13.2-x64.runtime.native.system.security.cryptography.openssl/4.3.0/runtime.opensuse.13.2-x64.runtime.native.system.security.cryptography.openssl.4.3.0.nupkg.sha512",
28
+ "/var/folders/qz/brt3bj8d6r9920chymvn8ccr0000gn/T/cursor-sandbox-cache/8fcaff215c746e0253f5b4003da604f3/nuget/runtime.opensuse.42.1-x64.runtime.native.system.security.cryptography.openssl/4.3.0/runtime.opensuse.42.1-x64.runtime.native.system.security.cryptography.openssl.4.3.0.nupkg.sha512",
29
+ "/var/folders/qz/brt3bj8d6r9920chymvn8ccr0000gn/T/cursor-sandbox-cache/8fcaff215c746e0253f5b4003da604f3/nuget/runtime.osx.10.10-x64.runtime.native.system.security.cryptography.apple/4.3.0/runtime.osx.10.10-x64.runtime.native.system.security.cryptography.apple.4.3.0.nupkg.sha512",
30
+ "/var/folders/qz/brt3bj8d6r9920chymvn8ccr0000gn/T/cursor-sandbox-cache/8fcaff215c746e0253f5b4003da604f3/nuget/runtime.osx.10.10-x64.runtime.native.system.security.cryptography.openssl/4.3.0/runtime.osx.10.10-x64.runtime.native.system.security.cryptography.openssl.4.3.0.nupkg.sha512",
31
+ "/var/folders/qz/brt3bj8d6r9920chymvn8ccr0000gn/T/cursor-sandbox-cache/8fcaff215c746e0253f5b4003da604f3/nuget/runtime.rhel.7-x64.runtime.native.system.security.cryptography.openssl/4.3.0/runtime.rhel.7-x64.runtime.native.system.security.cryptography.openssl.4.3.0.nupkg.sha512",
32
+ "/var/folders/qz/brt3bj8d6r9920chymvn8ccr0000gn/T/cursor-sandbox-cache/8fcaff215c746e0253f5b4003da604f3/nuget/runtime.ubuntu.14.04-x64.runtime.native.system.security.cryptography.openssl/4.3.0/runtime.ubuntu.14.04-x64.runtime.native.system.security.cryptography.openssl.4.3.0.nupkg.sha512",
33
+ "/var/folders/qz/brt3bj8d6r9920chymvn8ccr0000gn/T/cursor-sandbox-cache/8fcaff215c746e0253f5b4003da604f3/nuget/runtime.ubuntu.16.04-x64.runtime.native.system.security.cryptography.openssl/4.3.0/runtime.ubuntu.16.04-x64.runtime.native.system.security.cryptography.openssl.4.3.0.nupkg.sha512",
34
+ "/var/folders/qz/brt3bj8d6r9920chymvn8ccr0000gn/T/cursor-sandbox-cache/8fcaff215c746e0253f5b4003da604f3/nuget/runtime.ubuntu.16.10-x64.runtime.native.system.security.cryptography.openssl/4.3.0/runtime.ubuntu.16.10-x64.runtime.native.system.security.cryptography.openssl.4.3.0.nupkg.sha512",
35
+ "/var/folders/qz/brt3bj8d6r9920chymvn8ccr0000gn/T/cursor-sandbox-cache/8fcaff215c746e0253f5b4003da604f3/nuget/sqlitepclraw.bundle_e_sqlite3/2.1.10/sqlitepclraw.bundle_e_sqlite3.2.1.10.nupkg.sha512",
36
+ "/var/folders/qz/brt3bj8d6r9920chymvn8ccr0000gn/T/cursor-sandbox-cache/8fcaff215c746e0253f5b4003da604f3/nuget/sqlitepclraw.core/2.1.10/sqlitepclraw.core.2.1.10.nupkg.sha512",
37
+ "/var/folders/qz/brt3bj8d6r9920chymvn8ccr0000gn/T/cursor-sandbox-cache/8fcaff215c746e0253f5b4003da604f3/nuget/sqlitepclraw.lib.e_sqlite3/2.1.10/sqlitepclraw.lib.e_sqlite3.2.1.10.nupkg.sha512",
38
+ "/var/folders/qz/brt3bj8d6r9920chymvn8ccr0000gn/T/cursor-sandbox-cache/8fcaff215c746e0253f5b4003da604f3/nuget/sqlitepclraw.provider.e_sqlite3/2.1.10/sqlitepclraw.provider.e_sqlite3.2.1.10.nupkg.sha512",
39
+ "/var/folders/qz/brt3bj8d6r9920chymvn8ccr0000gn/T/cursor-sandbox-cache/8fcaff215c746e0253f5b4003da604f3/nuget/superpower/3.0.0/superpower.3.0.0.nupkg.sha512",
40
+ "/var/folders/qz/brt3bj8d6r9920chymvn8ccr0000gn/T/cursor-sandbox-cache/8fcaff215c746e0253f5b4003da604f3/nuget/system.appcontext/4.3.0/system.appcontext.4.3.0.nupkg.sha512",
41
+ "/var/folders/qz/brt3bj8d6r9920chymvn8ccr0000gn/T/cursor-sandbox-cache/8fcaff215c746e0253f5b4003da604f3/nuget/system.buffers/4.3.0/system.buffers.4.3.0.nupkg.sha512",
42
+ "/var/folders/qz/brt3bj8d6r9920chymvn8ccr0000gn/T/cursor-sandbox-cache/8fcaff215c746e0253f5b4003da604f3/nuget/system.collections/4.3.0/system.collections.4.3.0.nupkg.sha512",
43
+ "/var/folders/qz/brt3bj8d6r9920chymvn8ccr0000gn/T/cursor-sandbox-cache/8fcaff215c746e0253f5b4003da604f3/nuget/system.collections.concurrent/4.3.0/system.collections.concurrent.4.3.0.nupkg.sha512",
44
+ "/var/folders/qz/brt3bj8d6r9920chymvn8ccr0000gn/T/cursor-sandbox-cache/8fcaff215c746e0253f5b4003da604f3/nuget/system.console/4.3.0/system.console.4.3.0.nupkg.sha512",
45
+ "/var/folders/qz/brt3bj8d6r9920chymvn8ccr0000gn/T/cursor-sandbox-cache/8fcaff215c746e0253f5b4003da604f3/nuget/system.diagnostics.debug/4.3.0/system.diagnostics.debug.4.3.0.nupkg.sha512",
46
+ "/var/folders/qz/brt3bj8d6r9920chymvn8ccr0000gn/T/cursor-sandbox-cache/8fcaff215c746e0253f5b4003da604f3/nuget/system.diagnostics.diagnosticsource/4.3.0/system.diagnostics.diagnosticsource.4.3.0.nupkg.sha512",
47
+ "/var/folders/qz/brt3bj8d6r9920chymvn8ccr0000gn/T/cursor-sandbox-cache/8fcaff215c746e0253f5b4003da604f3/nuget/system.diagnostics.tools/4.3.0/system.diagnostics.tools.4.3.0.nupkg.sha512",
48
+ "/var/folders/qz/brt3bj8d6r9920chymvn8ccr0000gn/T/cursor-sandbox-cache/8fcaff215c746e0253f5b4003da604f3/nuget/system.diagnostics.tracing/4.3.0/system.diagnostics.tracing.4.3.0.nupkg.sha512",
49
+ "/var/folders/qz/brt3bj8d6r9920chymvn8ccr0000gn/T/cursor-sandbox-cache/8fcaff215c746e0253f5b4003da604f3/nuget/system.globalization/4.3.0/system.globalization.4.3.0.nupkg.sha512",
50
+ "/var/folders/qz/brt3bj8d6r9920chymvn8ccr0000gn/T/cursor-sandbox-cache/8fcaff215c746e0253f5b4003da604f3/nuget/system.globalization.calendars/4.3.0/system.globalization.calendars.4.3.0.nupkg.sha512",
51
+ "/var/folders/qz/brt3bj8d6r9920chymvn8ccr0000gn/T/cursor-sandbox-cache/8fcaff215c746e0253f5b4003da604f3/nuget/system.globalization.extensions/4.3.0/system.globalization.extensions.4.3.0.nupkg.sha512",
52
+ "/var/folders/qz/brt3bj8d6r9920chymvn8ccr0000gn/T/cursor-sandbox-cache/8fcaff215c746e0253f5b4003da604f3/nuget/system.io/4.3.0/system.io.4.3.0.nupkg.sha512",
53
+ "/var/folders/qz/brt3bj8d6r9920chymvn8ccr0000gn/T/cursor-sandbox-cache/8fcaff215c746e0253f5b4003da604f3/nuget/system.io.compression/4.3.0/system.io.compression.4.3.0.nupkg.sha512",
54
+ "/var/folders/qz/brt3bj8d6r9920chymvn8ccr0000gn/T/cursor-sandbox-cache/8fcaff215c746e0253f5b4003da604f3/nuget/system.io.compression.zipfile/4.3.0/system.io.compression.zipfile.4.3.0.nupkg.sha512",
55
+ "/var/folders/qz/brt3bj8d6r9920chymvn8ccr0000gn/T/cursor-sandbox-cache/8fcaff215c746e0253f5b4003da604f3/nuget/system.io.filesystem/4.3.0/system.io.filesystem.4.3.0.nupkg.sha512",
56
+ "/var/folders/qz/brt3bj8d6r9920chymvn8ccr0000gn/T/cursor-sandbox-cache/8fcaff215c746e0253f5b4003da604f3/nuget/system.io.filesystem.primitives/4.3.0/system.io.filesystem.primitives.4.3.0.nupkg.sha512",
57
+ "/var/folders/qz/brt3bj8d6r9920chymvn8ccr0000gn/T/cursor-sandbox-cache/8fcaff215c746e0253f5b4003da604f3/nuget/system.linq/4.3.0/system.linq.4.3.0.nupkg.sha512",
58
+ "/var/folders/qz/brt3bj8d6r9920chymvn8ccr0000gn/T/cursor-sandbox-cache/8fcaff215c746e0253f5b4003da604f3/nuget/system.linq.expressions/4.3.0/system.linq.expressions.4.3.0.nupkg.sha512",
59
+ "/var/folders/qz/brt3bj8d6r9920chymvn8ccr0000gn/T/cursor-sandbox-cache/8fcaff215c746e0253f5b4003da604f3/nuget/system.memory/4.5.3/system.memory.4.5.3.nupkg.sha512",
60
+ "/var/folders/qz/brt3bj8d6r9920chymvn8ccr0000gn/T/cursor-sandbox-cache/8fcaff215c746e0253f5b4003da604f3/nuget/system.net.http/4.3.0/system.net.http.4.3.0.nupkg.sha512",
61
+ "/var/folders/qz/brt3bj8d6r9920chymvn8ccr0000gn/T/cursor-sandbox-cache/8fcaff215c746e0253f5b4003da604f3/nuget/system.net.primitives/4.3.0/system.net.primitives.4.3.0.nupkg.sha512",
62
+ "/var/folders/qz/brt3bj8d6r9920chymvn8ccr0000gn/T/cursor-sandbox-cache/8fcaff215c746e0253f5b4003da604f3/nuget/system.net.sockets/4.3.0/system.net.sockets.4.3.0.nupkg.sha512",
63
+ "/var/folders/qz/brt3bj8d6r9920chymvn8ccr0000gn/T/cursor-sandbox-cache/8fcaff215c746e0253f5b4003da604f3/nuget/system.objectmodel/4.3.0/system.objectmodel.4.3.0.nupkg.sha512",
64
+ "/var/folders/qz/brt3bj8d6r9920chymvn8ccr0000gn/T/cursor-sandbox-cache/8fcaff215c746e0253f5b4003da604f3/nuget/system.reflection/4.3.0/system.reflection.4.3.0.nupkg.sha512",
65
+ "/var/folders/qz/brt3bj8d6r9920chymvn8ccr0000gn/T/cursor-sandbox-cache/8fcaff215c746e0253f5b4003da604f3/nuget/system.reflection.emit/4.3.0/system.reflection.emit.4.3.0.nupkg.sha512",
66
+ "/var/folders/qz/brt3bj8d6r9920chymvn8ccr0000gn/T/cursor-sandbox-cache/8fcaff215c746e0253f5b4003da604f3/nuget/system.reflection.emit.ilgeneration/4.3.0/system.reflection.emit.ilgeneration.4.3.0.nupkg.sha512",
67
+ "/var/folders/qz/brt3bj8d6r9920chymvn8ccr0000gn/T/cursor-sandbox-cache/8fcaff215c746e0253f5b4003da604f3/nuget/system.reflection.emit.lightweight/4.3.0/system.reflection.emit.lightweight.4.3.0.nupkg.sha512",
68
+ "/var/folders/qz/brt3bj8d6r9920chymvn8ccr0000gn/T/cursor-sandbox-cache/8fcaff215c746e0253f5b4003da604f3/nuget/system.reflection.extensions/4.3.0/system.reflection.extensions.4.3.0.nupkg.sha512",
69
+ "/var/folders/qz/brt3bj8d6r9920chymvn8ccr0000gn/T/cursor-sandbox-cache/8fcaff215c746e0253f5b4003da604f3/nuget/system.reflection.primitives/4.3.0/system.reflection.primitives.4.3.0.nupkg.sha512",
70
+ "/var/folders/qz/brt3bj8d6r9920chymvn8ccr0000gn/T/cursor-sandbox-cache/8fcaff215c746e0253f5b4003da604f3/nuget/system.reflection.typeextensions/4.3.0/system.reflection.typeextensions.4.3.0.nupkg.sha512",
71
+ "/var/folders/qz/brt3bj8d6r9920chymvn8ccr0000gn/T/cursor-sandbox-cache/8fcaff215c746e0253f5b4003da604f3/nuget/system.resources.resourcemanager/4.3.0/system.resources.resourcemanager.4.3.0.nupkg.sha512",
72
+ "/var/folders/qz/brt3bj8d6r9920chymvn8ccr0000gn/T/cursor-sandbox-cache/8fcaff215c746e0253f5b4003da604f3/nuget/system.runtime/4.3.0/system.runtime.4.3.0.nupkg.sha512",
73
+ "/var/folders/qz/brt3bj8d6r9920chymvn8ccr0000gn/T/cursor-sandbox-cache/8fcaff215c746e0253f5b4003da604f3/nuget/system.runtime.compilerservices.unsafe/4.3.0/system.runtime.compilerservices.unsafe.4.3.0.nupkg.sha512",
74
+ "/var/folders/qz/brt3bj8d6r9920chymvn8ccr0000gn/T/cursor-sandbox-cache/8fcaff215c746e0253f5b4003da604f3/nuget/system.runtime.extensions/4.3.0/system.runtime.extensions.4.3.0.nupkg.sha512",
75
+ "/var/folders/qz/brt3bj8d6r9920chymvn8ccr0000gn/T/cursor-sandbox-cache/8fcaff215c746e0253f5b4003da604f3/nuget/system.runtime.handles/4.3.0/system.runtime.handles.4.3.0.nupkg.sha512",
76
+ "/var/folders/qz/brt3bj8d6r9920chymvn8ccr0000gn/T/cursor-sandbox-cache/8fcaff215c746e0253f5b4003da604f3/nuget/system.runtime.interopservices/4.3.0/system.runtime.interopservices.4.3.0.nupkg.sha512",
77
+ "/var/folders/qz/brt3bj8d6r9920chymvn8ccr0000gn/T/cursor-sandbox-cache/8fcaff215c746e0253f5b4003da604f3/nuget/system.runtime.interopservices.runtimeinformation/4.3.0/system.runtime.interopservices.runtimeinformation.4.3.0.nupkg.sha512",
78
+ "/var/folders/qz/brt3bj8d6r9920chymvn8ccr0000gn/T/cursor-sandbox-cache/8fcaff215c746e0253f5b4003da604f3/nuget/system.runtime.numerics/4.3.0/system.runtime.numerics.4.3.0.nupkg.sha512",
79
+ "/var/folders/qz/brt3bj8d6r9920chymvn8ccr0000gn/T/cursor-sandbox-cache/8fcaff215c746e0253f5b4003da604f3/nuget/system.security.cryptography.algorithms/4.3.0/system.security.cryptography.algorithms.4.3.0.nupkg.sha512",
80
+ "/var/folders/qz/brt3bj8d6r9920chymvn8ccr0000gn/T/cursor-sandbox-cache/8fcaff215c746e0253f5b4003da604f3/nuget/system.security.cryptography.cng/4.3.0/system.security.cryptography.cng.4.3.0.nupkg.sha512",
81
+ "/var/folders/qz/brt3bj8d6r9920chymvn8ccr0000gn/T/cursor-sandbox-cache/8fcaff215c746e0253f5b4003da604f3/nuget/system.security.cryptography.csp/4.3.0/system.security.cryptography.csp.4.3.0.nupkg.sha512",
82
+ "/var/folders/qz/brt3bj8d6r9920chymvn8ccr0000gn/T/cursor-sandbox-cache/8fcaff215c746e0253f5b4003da604f3/nuget/system.security.cryptography.encoding/4.3.0/system.security.cryptography.encoding.4.3.0.nupkg.sha512",
83
+ "/var/folders/qz/brt3bj8d6r9920chymvn8ccr0000gn/T/cursor-sandbox-cache/8fcaff215c746e0253f5b4003da604f3/nuget/system.security.cryptography.openssl/4.3.0/system.security.cryptography.openssl.4.3.0.nupkg.sha512",
84
+ "/var/folders/qz/brt3bj8d6r9920chymvn8ccr0000gn/T/cursor-sandbox-cache/8fcaff215c746e0253f5b4003da604f3/nuget/system.security.cryptography.primitives/4.3.0/system.security.cryptography.primitives.4.3.0.nupkg.sha512",
85
+ "/var/folders/qz/brt3bj8d6r9920chymvn8ccr0000gn/T/cursor-sandbox-cache/8fcaff215c746e0253f5b4003da604f3/nuget/system.security.cryptography.x509certificates/4.3.0/system.security.cryptography.x509certificates.4.3.0.nupkg.sha512",
86
+ "/var/folders/qz/brt3bj8d6r9920chymvn8ccr0000gn/T/cursor-sandbox-cache/8fcaff215c746e0253f5b4003da604f3/nuget/system.text.encoding/4.3.0/system.text.encoding.4.3.0.nupkg.sha512",
87
+ "/var/folders/qz/brt3bj8d6r9920chymvn8ccr0000gn/T/cursor-sandbox-cache/8fcaff215c746e0253f5b4003da604f3/nuget/system.text.encoding.extensions/4.3.0/system.text.encoding.extensions.4.3.0.nupkg.sha512",
88
+ "/var/folders/qz/brt3bj8d6r9920chymvn8ccr0000gn/T/cursor-sandbox-cache/8fcaff215c746e0253f5b4003da604f3/nuget/system.text.regularexpressions/4.3.0/system.text.regularexpressions.4.3.0.nupkg.sha512",
89
+ "/var/folders/qz/brt3bj8d6r9920chymvn8ccr0000gn/T/cursor-sandbox-cache/8fcaff215c746e0253f5b4003da604f3/nuget/system.threading/4.3.0/system.threading.4.3.0.nupkg.sha512",
90
+ "/var/folders/qz/brt3bj8d6r9920chymvn8ccr0000gn/T/cursor-sandbox-cache/8fcaff215c746e0253f5b4003da604f3/nuget/system.threading.tasks/4.3.0/system.threading.tasks.4.3.0.nupkg.sha512",
91
+ "/var/folders/qz/brt3bj8d6r9920chymvn8ccr0000gn/T/cursor-sandbox-cache/8fcaff215c746e0253f5b4003da604f3/nuget/system.threading.tasks.extensions/4.3.0/system.threading.tasks.extensions.4.3.0.nupkg.sha512",
92
+ "/var/folders/qz/brt3bj8d6r9920chymvn8ccr0000gn/T/cursor-sandbox-cache/8fcaff215c746e0253f5b4003da604f3/nuget/system.threading.timer/4.3.0/system.threading.timer.4.3.0.nupkg.sha512",
93
+ "/var/folders/qz/brt3bj8d6r9920chymvn8ccr0000gn/T/cursor-sandbox-cache/8fcaff215c746e0253f5b4003da604f3/nuget/system.xml.readerwriter/4.3.0/system.xml.readerwriter.4.3.0.nupkg.sha512",
94
+ "/var/folders/qz/brt3bj8d6r9920chymvn8ccr0000gn/T/cursor-sandbox-cache/8fcaff215c746e0253f5b4003da604f3/nuget/system.xml.xdocument/4.3.0/system.xml.xdocument.4.3.0.nupkg.sha512",
95
+ "/var/folders/qz/brt3bj8d6r9920chymvn8ccr0000gn/T/cursor-sandbox-cache/8fcaff215c746e0253f5b4003da604f3/nuget/microsoft.netcore.app.ref/9.0.17/microsoft.netcore.app.ref.9.0.17.nupkg.sha512",
96
+ "/var/folders/qz/brt3bj8d6r9920chymvn8ccr0000gn/T/cursor-sandbox-cache/8fcaff215c746e0253f5b4003da604f3/nuget/microsoft.aspnetcore.app.ref/9.0.17/microsoft.aspnetcore.app.ref.9.0.17.nupkg.sha512"
97
+ ],
98
+ "logs": []
99
+ }
@@ -0,0 +1,6 @@
1
+ global using System.Data.Common;
2
+ global using System.Globalization;
3
+ global using System.Text;
4
+ global using System.Text.RegularExpressions;
5
+ global using Deterministic.MigrateRunner;
6
+ global using Microsoft.Extensions.DependencyInjection;
@@ -0,0 +1,18 @@
1
+ using System.Security.Cryptography;
2
+
3
+ namespace Deterministic.MigrateRunner;
4
+
5
+ internal static class Checksum
6
+ {
7
+ private static readonly Regex LegacyHeader = new(
8
+ @"^(?://|--|#)\s+deterministic-content-hash:\s+[0-9a-f]{64}\s*\r?\n?",
9
+ RegexOptions.Compiled
10
+ );
11
+
12
+ public static string Hex(string sql)
13
+ {
14
+ var body = LegacyHeader.Replace(sql, "", 1);
15
+ var hash = SHA256.HashData(Encoding.UTF8.GetBytes(body));
16
+ return Convert.ToHexString(hash).ToLowerInvariant();
17
+ }
18
+ }
@@ -0,0 +1,228 @@
1
+ namespace Deterministic.MigrateRunner;
2
+
3
+ internal static class CliSpec
4
+ {
5
+ private readonly record struct Arg(string Flag, string? Placeholder, bool Required);
6
+
7
+ private readonly record struct Command(string Verb, Arg[] Args);
8
+
9
+ private sealed record Spec(
10
+ string Command,
11
+ string[] Providers,
12
+ string[] Languages,
13
+ IReadOnlyDictionary<string, string> ProviderAliases,
14
+ string EnvVarListSeparator,
15
+ Command[] Commands
16
+ );
17
+
18
+ private static readonly Spec Document = Parse(File.ReadAllText(SpecPath()));
19
+
20
+ internal static IReadOnlyList<string> Providers => Document.Providers;
21
+ internal static IReadOnlyDictionary<string, string> ProviderAliases => Document.ProviderAliases;
22
+ internal static string EnvVarListSeparator => Document.EnvVarListSeparator;
23
+
24
+ internal static string UsageLine(string verb)
25
+ {
26
+ var providers = string.Join('|', Document.Providers);
27
+ var languages = string.Join('|', Document.Languages);
28
+ var command = Document.Command.Replace("{verb}", verb, StringComparison.Ordinal);
29
+ var entry = Document.Commands.First(c => c.Verb == verb);
30
+ var args = string.Join(' ', entry.Args.Select(a => ArgUsage(a, providers, languages)));
31
+ return $"Usage: {command} {args}";
32
+ }
33
+
34
+ internal static string ProgramUsage() =>
35
+ string.Join('\n', Document.Commands.Select(c => UsageLine(c.Verb))) + "\n";
36
+
37
+ private static string ArgUsage(Arg arg, string providers, string languages)
38
+ {
39
+ var placeholder = arg.Placeholder switch
40
+ {
41
+ "providers" => providers,
42
+ "languages" => languages,
43
+ _ => arg.Placeholder,
44
+ };
45
+ var body = placeholder is null ? arg.Flag : $"{arg.Flag} <{placeholder}>";
46
+ return arg.Required ? body : $"[{body}]";
47
+ }
48
+
49
+ private static string SpecPath()
50
+ {
51
+ var nextToApp = Path.Combine(AppContext.BaseDirectory, "cli.yaml");
52
+ if (File.Exists(nextToApp))
53
+ return nextToApp;
54
+ return Path.Combine(AppContext.BaseDirectory, "templates", "cli.yaml");
55
+ }
56
+
57
+ private static Spec Parse(string raw)
58
+ {
59
+ var command = "migrate-{verb}";
60
+ var providers = new List<string>();
61
+ var languages = new List<string>();
62
+ var providerAliases = new Dictionary<string, string>(StringComparer.Ordinal);
63
+ var envVarListSeparator = " / ";
64
+ var commands = new List<Command>();
65
+ var inProviders = false;
66
+ var inLanguages = false;
67
+ var inAliases = false;
68
+ var inCommands = false;
69
+ string? currentVerb = null;
70
+ var currentArgs = new List<Arg>();
71
+ var inArgs = false;
72
+
73
+ void Flush()
74
+ {
75
+ if (currentVerb is null)
76
+ return;
77
+ commands.Add(new Command(currentVerb, [.. currentArgs]));
78
+ currentVerb = null;
79
+ currentArgs.Clear();
80
+ inArgs = false;
81
+ }
82
+
83
+ foreach (var rawLine in raw.Split('\n'))
84
+ {
85
+ var line = rawLine.TrimEnd('\r');
86
+ if (line.Length == 0 || line.StartsWith('#'))
87
+ continue;
88
+ if (line.Length > 0 && line[0] is not ' ' and not '-')
89
+ {
90
+ inProviders = false;
91
+ inLanguages = false;
92
+ inAliases = false;
93
+ if (!line.StartsWith("commands:", StringComparison.Ordinal))
94
+ {
95
+ inCommands = false;
96
+ Flush();
97
+ }
98
+ }
99
+ if (line.StartsWith("command:", StringComparison.Ordinal))
100
+ {
101
+ command = line.Split(':', 2)[1].Trim();
102
+ continue;
103
+ }
104
+ if (line.StartsWith("env_var_list_separator:", StringComparison.Ordinal))
105
+ {
106
+ envVarListSeparator = Unquote(line.Split(':', 2)[1]);
107
+ continue;
108
+ }
109
+ if (line.StartsWith("providers:", StringComparison.Ordinal))
110
+ {
111
+ inProviders = true;
112
+ continue;
113
+ }
114
+ if (line.StartsWith("languages:", StringComparison.Ordinal))
115
+ {
116
+ inLanguages = true;
117
+ continue;
118
+ }
119
+ if (line.StartsWith("provider_aliases:", StringComparison.Ordinal))
120
+ {
121
+ inAliases = true;
122
+ continue;
123
+ }
124
+ if (line.StartsWith("commands:", StringComparison.Ordinal))
125
+ {
126
+ inCommands = true;
127
+ continue;
128
+ }
129
+ if (inProviders)
130
+ {
131
+ var item = line.Trim();
132
+ if (item.StartsWith("- ", StringComparison.Ordinal))
133
+ providers.Add(item[2..].Trim());
134
+ continue;
135
+ }
136
+ if (inLanguages)
137
+ {
138
+ var item = line.Trim();
139
+ if (item.StartsWith("- ", StringComparison.Ordinal))
140
+ languages.Add(item[2..].Trim());
141
+ continue;
142
+ }
143
+ if (inAliases)
144
+ {
145
+ var aliasLine = line.Trim();
146
+ var colon = aliasLine.IndexOf(':');
147
+ if (colon > 0)
148
+ {
149
+ var alias = StripKey(aliasLine[..colon].Trim());
150
+ var canonical = aliasLine[(colon + 1)..].Trim();
151
+ if (alias.Length > 0 && canonical.Length > 0)
152
+ providerAliases[alias] = canonical;
153
+ }
154
+ continue;
155
+ }
156
+ if (!inCommands)
157
+ continue;
158
+ var trimmed = line.Trim();
159
+ if (trimmed.StartsWith("- verb:", StringComparison.Ordinal))
160
+ {
161
+ Flush();
162
+ currentVerb = trimmed["- verb:".Length..].Trim();
163
+ continue;
164
+ }
165
+ if (trimmed == "args:")
166
+ {
167
+ inArgs = true;
168
+ continue;
169
+ }
170
+ if (inArgs && trimmed.StartsWith("- {", StringComparison.Ordinal))
171
+ currentArgs.Add(ParseArg(trimmed));
172
+ else if (inArgs && trimmed.StartsWith("- flag:", StringComparison.Ordinal))
173
+ currentArgs.Add(new Arg(trimmed["- flag:".Length..].Trim(), null, false));
174
+ else if (inArgs && currentArgs.Count > 0)
175
+ {
176
+ var last = currentArgs[^1];
177
+ if (trimmed.StartsWith("placeholder:", StringComparison.Ordinal))
178
+ currentArgs[^1] = last with { Placeholder = trimmed["placeholder:".Length..].Trim() };
179
+ else if (trimmed.StartsWith("required:", StringComparison.Ordinal))
180
+ currentArgs[^1] = last with
181
+ {
182
+ Required = trimmed["required:".Length..].Trim() == "true",
183
+ };
184
+ }
185
+ }
186
+ Flush();
187
+ return new Spec(command, [.. providers], [.. languages], providerAliases, envVarListSeparator, [.. commands]);
188
+ }
189
+
190
+ internal static string StripKey(string raw) =>
191
+ string.Concat(raw.Where(c => c is not ' ' and not '_' and not '-')).ToLowerInvariant();
192
+
193
+ private static string Unquote(string value)
194
+ {
195
+ var v = value.Trim();
196
+ return v.Length >= 2 && v[0] == '"' && v[^1] == '"' ? v[1..^1] : v;
197
+ }
198
+
199
+ private static Arg ParseArg(string line)
200
+ {
201
+ var start = line.IndexOf('{');
202
+ var end = line.LastIndexOf('}');
203
+ var flag = "";
204
+ string? placeholder = null;
205
+ var required = false;
206
+ foreach (var part in line[(start + 1)..end].Split(','))
207
+ {
208
+ var kv = part.Split(':', 2);
209
+ if (kv.Length != 2)
210
+ continue;
211
+ var key = kv[0].Trim();
212
+ var value = kv[1].Trim();
213
+ switch (key)
214
+ {
215
+ case "flag":
216
+ flag = value;
217
+ break;
218
+ case "placeholder":
219
+ placeholder = value;
220
+ break;
221
+ case "required":
222
+ required = value == "true";
223
+ break;
224
+ }
225
+ }
226
+ return new Arg(flag, placeholder, required);
227
+ }
228
+ }
@@ -0,0 +1,9 @@
1
+ namespace Deterministic.MigrateRunner;
2
+
3
+ internal sealed class ConnectionResolver : IConnectionResolver
4
+ {
5
+ public string? FromEnvironment(ISqlDialect dialect) =>
6
+ dialect
7
+ .ConnectionEnvironmentVariables.Select(Environment.GetEnvironmentVariable)
8
+ .FirstOrDefault(v => !string.IsNullOrEmpty(v));
9
+ }
@@ -0,0 +1,47 @@
1
+ namespace Deterministic.MigrateRunner;
2
+
3
+ public static class ConnectionStringUrl
4
+ {
5
+ public static bool LooksLikeUrl(string connection, params string[] schemes) =>
6
+ schemes.Any(s => connection.StartsWith($"{s}://", StringComparison.OrdinalIgnoreCase));
7
+
8
+ public static (string? user, string? pass) SplitUserInfo(string userInfo) =>
9
+ string.IsNullOrEmpty(userInfo)
10
+ ? (null, null)
11
+ : userInfo.Split(':', 2) is [var u, var p]
12
+ ? (Uri.UnescapeDataString(u), Uri.UnescapeDataString(p))
13
+ : (Uri.UnescapeDataString(userInfo), null);
14
+
15
+ public static string TrimLeadingSlash(string path) => path.StartsWith('/') ? path[1..] : path;
16
+
17
+ public static IEnumerable<KeyValuePair<string, string>> ParseQuery(string query) =>
18
+ string.IsNullOrEmpty(query)
19
+ ? []
20
+ : (query.StartsWith('?') ? query[1..] : query)
21
+ .Split('&', StringSplitOptions.RemoveEmptyEntries)
22
+ .Select(part => part.Split('=', 2))
23
+ .Where(p => p[0].Length > 0)
24
+ .Select(p => new KeyValuePair<string, string>(
25
+ Uri.UnescapeDataString(p[0]),
26
+ Uri.UnescapeDataString(p.Length > 1 ? p[1] : "")
27
+ ));
28
+
29
+ public static string? TryUri(string connection, params string[] schemes) =>
30
+ LooksLikeUrl(connection, schemes) ? connection : null;
31
+
32
+ public static void ApplyUriParts(
33
+ Uri uri,
34
+ Action<string?, string?> setAuth,
35
+ Action<string> setDatabase,
36
+ Action<string, string> setQuery
37
+ )
38
+ {
39
+ var (user, pass) = SplitUserInfo(uri.UserInfo);
40
+ setAuth(user, pass);
41
+ var db = TrimLeadingSlash(uri.AbsolutePath);
42
+ if (!string.IsNullOrEmpty(db))
43
+ setDatabase(db);
44
+ foreach (var kv in ParseQuery(uri.Query))
45
+ setQuery(kv.Key, kv.Value);
46
+ }
47
+ }
@@ -0,0 +1,7 @@
1
+ namespace Deterministic.MigrateRunner;
2
+
3
+ internal static class CreateDatabase
4
+ {
5
+ public static Task RunAsync(ISqlDialect dialect, string connection) =>
6
+ dialect.CreateDatabaseIfMissingAsync(connection);
7
+ }
@@ -0,0 +1,81 @@
1
+ namespace Deterministic.MigrateRunner;
2
+
3
+ internal static class DbExecute
4
+ {
5
+ private static readonly Regex GoLine = new(
6
+ @"^\s*GO\s*$",
7
+ RegexOptions.IgnoreCase | RegexOptions.Compiled
8
+ );
9
+
10
+ public static async Task NonQueryAsync(DbConnection conn, DbTransaction? tx, string sql)
11
+ {
12
+ using var cmd = conn.CreateCommand();
13
+ cmd.CommandText = sql;
14
+ if (tx is not null)
15
+ cmd.Transaction = tx;
16
+ await cmd.ExecuteNonQueryAsync().ConfigureAwait(false);
17
+ }
18
+
19
+ public static async Task CatalogWriteAsync(
20
+ DbConnection conn,
21
+ DbTransaction? tx,
22
+ ISqlDialect dialect,
23
+ string sql,
24
+ params (string name, object value)[] parameters
25
+ )
26
+ {
27
+ using var cmd = conn.CreateCommand();
28
+ cmd.CommandText = sql;
29
+ if (tx is not null)
30
+ cmd.Transaction = tx;
31
+ foreach (var (name, value) in parameters)
32
+ dialect.AddParameter(cmd, name, value);
33
+ await cmd.ExecuteNonQueryAsync().ConfigureAwait(false);
34
+ }
35
+
36
+ public static async Task ApplyStatementsAsync(
37
+ DbConnection conn,
38
+ ISqlDialect dialect,
39
+ string sql,
40
+ Func<DbTransaction?, Task> catalogWrite
41
+ )
42
+ {
43
+ if (!dialect.UseTransaction)
44
+ {
45
+ foreach (var batch in SplitOnGo(sql))
46
+ await NonQueryAsync(conn, null, batch).ConfigureAwait(false);
47
+ await catalogWrite(null).ConfigureAwait(false);
48
+ return;
49
+ }
50
+
51
+ await using var tx = await conn.BeginTransactionAsync().ConfigureAwait(false);
52
+ foreach (var batch in SplitOnGo(sql))
53
+ await NonQueryAsync(conn, tx, batch).ConfigureAwait(false);
54
+ await catalogWrite(tx).ConfigureAwait(false);
55
+ await tx.CommitAsync().ConfigureAwait(false);
56
+ }
57
+
58
+ internal static List<string> SplitOnGo(string sql)
59
+ {
60
+ var batches = new List<string>();
61
+ var buf = new StringBuilder();
62
+ foreach (var line in sql.Replace("\r\n", "\n", StringComparison.Ordinal).Split('\n'))
63
+ {
64
+ if (GoLine.IsMatch(line))
65
+ {
66
+ var s = buf.ToString().Trim();
67
+ if (s.Length > 0)
68
+ batches.Add(s);
69
+ buf.Clear();
70
+ continue;
71
+ }
72
+ if (buf.Length > 0)
73
+ buf.Append('\n');
74
+ buf.Append(line);
75
+ }
76
+ var tail = buf.ToString().Trim();
77
+ if (tail.Length > 0)
78
+ batches.Add(tail);
79
+ return batches;
80
+ }
81
+ }
@@ -0,0 +1,47 @@
1
+ namespace Deterministic.MigrateRunner;
2
+
3
+ internal static class HelpTemplates
4
+ {
5
+ public static string ProgramUsage() => CliSpec.ProgramUsage();
6
+
7
+ public static string Read(string verb)
8
+ {
9
+ var command = ToCommand(verb);
10
+ var verbName = command.StartsWith("migrate-", StringComparison.Ordinal)
11
+ ? command["migrate-".Length..]
12
+ : command;
13
+ return Fill(
14
+ ReadRaw("help", verbName),
15
+ new Dictionary<string, string> { ["command"] = command, ["usage"] = CliSpec.UsageLine(verbName) }
16
+ );
17
+ }
18
+
19
+ public static string Message(string relativePath, IReadOnlyDictionary<string, string>? vars = null) =>
20
+ Fill(ReadRaw("messages", relativePath), vars);
21
+
22
+ public static string Scaffold(string name, IReadOnlyDictionary<string, string> vars) =>
23
+ Fill(
24
+ File.ReadAllText(
25
+ Path.Combine(AppContext.BaseDirectory, "templates", "scaffold", $"{name}.sql")
26
+ ),
27
+ vars
28
+ );
29
+
30
+ public static string Fill(string template, IReadOnlyDictionary<string, string>? vars)
31
+ {
32
+ if (vars is null || vars.Count == 0)
33
+ return template;
34
+ var result = template;
35
+ foreach (var (key, value) in vars)
36
+ result = result.Replace($"{{{{{key}}}}}", value, StringComparison.Ordinal);
37
+ return result;
38
+ }
39
+
40
+ private static string ToCommand(string verb) =>
41
+ verb.StartsWith("migrate-", StringComparison.Ordinal) ? verb : $"migrate-{verb}";
42
+
43
+ private static string ReadRaw(string category, string name) =>
44
+ File.ReadAllText(
45
+ Path.Combine(AppContext.BaseDirectory, "templates", category, $"{name}.txt")
46
+ );
47
+ }