typeorm 0.3.11-dev.efb4168 → 0.3.11-dev.fc3b4f8

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 (99) hide show
  1. package/README.md +2 -2
  2. package/browser/driver/aurora-mysql/AuroraMysqlQueryRunner.js +21 -4
  3. package/browser/driver/aurora-mysql/AuroraMysqlQueryRunner.js.map +1 -1
  4. package/browser/driver/better-sqlite3/BetterSqlite3QueryRunner.js +0 -6
  5. package/browser/driver/better-sqlite3/BetterSqlite3QueryRunner.js.map +1 -1
  6. package/browser/driver/react-native/ReactNativeQueryRunner.js +4 -4
  7. package/browser/driver/react-native/ReactNativeQueryRunner.js.map +1 -1
  8. package/browser/driver/sqlite-abstract/AbstractSqliteDriver.js +6 -0
  9. package/browser/driver/sqlite-abstract/AbstractSqliteDriver.js.map +1 -1
  10. package/browser/find-options/FindOperatorType.d.ts +1 -1
  11. package/browser/find-options/FindOperatorType.js.map +1 -1
  12. package/browser/find-options/FindOptionsOrder.d.ts +1 -1
  13. package/browser/find-options/FindOptionsOrder.js.map +1 -1
  14. package/browser/find-options/FindOptionsRelations.d.ts +1 -1
  15. package/browser/find-options/FindOptionsRelations.js.map +1 -1
  16. package/browser/find-options/FindOptionsSelect.d.ts +1 -1
  17. package/browser/find-options/FindOptionsSelect.js.map +1 -1
  18. package/browser/find-options/FindOptionsWhere.d.ts +2 -2
  19. package/browser/find-options/FindOptionsWhere.js.map +1 -1
  20. package/browser/find-options/operator/And.d.ts +2 -0
  21. package/browser/find-options/operator/And.js +6 -0
  22. package/browser/find-options/operator/And.js.map +1 -0
  23. package/browser/find-options/operator/Any.d.ts +1 -1
  24. package/browser/find-options/operator/Any.js.map +1 -1
  25. package/browser/find-options/operator/ArrayContainedBy.d.ts +1 -1
  26. package/browser/find-options/operator/ArrayContainedBy.js.map +1 -1
  27. package/browser/find-options/operator/ArrayContains.d.ts +1 -1
  28. package/browser/find-options/operator/ArrayContains.js.map +1 -1
  29. package/browser/find-options/operator/ArrayOverlap.d.ts +1 -1
  30. package/browser/find-options/operator/ArrayOverlap.js.map +1 -1
  31. package/browser/find-options/operator/In.d.ts +1 -1
  32. package/browser/find-options/operator/In.js.map +1 -1
  33. package/browser/index.d.ts +1 -0
  34. package/browser/index.js +1 -0
  35. package/browser/index.js.map +1 -1
  36. package/browser/persistence/tree/MaterializedPathSubjectExecutor.d.ts +1 -0
  37. package/browser/persistence/tree/MaterializedPathSubjectExecutor.js +19 -4
  38. package/browser/persistence/tree/MaterializedPathSubjectExecutor.js.map +1 -1
  39. package/browser/query-builder/QueryBuilder.js +9 -0
  40. package/browser/query-builder/QueryBuilder.js.map +1 -1
  41. package/browser/query-builder/RelationLoader.js +1 -0
  42. package/browser/query-builder/RelationLoader.js.map +1 -1
  43. package/browser/query-builder/WhereClause.d.ts +1 -1
  44. package/browser/query-builder/WhereClause.js.map +1 -1
  45. package/browser/util/OrmUtils.js +2 -1
  46. package/browser/util/OrmUtils.js.map +1 -1
  47. package/browser/util/TreeRepositoryUtils.js +16 -6
  48. package/browser/util/TreeRepositoryUtils.js.map +1 -1
  49. package/commands/MigrationRevertCommand.js +1 -0
  50. package/commands/MigrationRevertCommand.js.map +1 -1
  51. package/driver/aurora-mysql/AuroraMysqlQueryRunner.js +21 -4
  52. package/driver/aurora-mysql/AuroraMysqlQueryRunner.js.map +1 -1
  53. package/driver/better-sqlite3/BetterSqlite3QueryRunner.js +0 -6
  54. package/driver/better-sqlite3/BetterSqlite3QueryRunner.js.map +1 -1
  55. package/driver/react-native/ReactNativeQueryRunner.js +4 -4
  56. package/driver/react-native/ReactNativeQueryRunner.js.map +1 -1
  57. package/driver/sqlite-abstract/AbstractSqliteDriver.js +6 -0
  58. package/driver/sqlite-abstract/AbstractSqliteDriver.js.map +1 -1
  59. package/find-options/FindOperatorType.d.ts +1 -1
  60. package/find-options/FindOperatorType.js.map +1 -1
  61. package/find-options/FindOptionsOrder.d.ts +1 -1
  62. package/find-options/FindOptionsOrder.js.map +1 -1
  63. package/find-options/FindOptionsRelations.d.ts +1 -1
  64. package/find-options/FindOptionsRelations.js.map +1 -1
  65. package/find-options/FindOptionsSelect.d.ts +1 -1
  66. package/find-options/FindOptionsSelect.js.map +1 -1
  67. package/find-options/FindOptionsWhere.d.ts +2 -2
  68. package/find-options/FindOptionsWhere.js.map +1 -1
  69. package/find-options/operator/And.d.ts +2 -0
  70. package/find-options/operator/And.js +10 -0
  71. package/find-options/operator/And.js.map +1 -0
  72. package/find-options/operator/Any.d.ts +1 -1
  73. package/find-options/operator/Any.js.map +1 -1
  74. package/find-options/operator/ArrayContainedBy.d.ts +1 -1
  75. package/find-options/operator/ArrayContainedBy.js.map +1 -1
  76. package/find-options/operator/ArrayContains.d.ts +1 -1
  77. package/find-options/operator/ArrayContains.js.map +1 -1
  78. package/find-options/operator/ArrayOverlap.d.ts +1 -1
  79. package/find-options/operator/ArrayOverlap.js.map +1 -1
  80. package/find-options/operator/In.d.ts +1 -1
  81. package/find-options/operator/In.js.map +1 -1
  82. package/index.d.ts +1 -0
  83. package/index.js +1 -0
  84. package/index.js.map +1 -1
  85. package/index.mjs +2 -0
  86. package/package.json +1 -1
  87. package/persistence/tree/MaterializedPathSubjectExecutor.d.ts +1 -0
  88. package/persistence/tree/MaterializedPathSubjectExecutor.js +19 -4
  89. package/persistence/tree/MaterializedPathSubjectExecutor.js.map +1 -1
  90. package/query-builder/QueryBuilder.js +9 -0
  91. package/query-builder/QueryBuilder.js.map +1 -1
  92. package/query-builder/RelationLoader.js +1 -0
  93. package/query-builder/RelationLoader.js.map +1 -1
  94. package/query-builder/WhereClause.d.ts +1 -1
  95. package/query-builder/WhereClause.js.map +1 -1
  96. package/util/OrmUtils.js +2 -1
  97. package/util/OrmUtils.js.map +1 -1
  98. package/util/TreeRepositoryUtils.js +16 -6
  99. package/util/TreeRepositoryUtils.js.map +1 -1
package/README.md CHANGED
@@ -1000,7 +1000,7 @@ Let's change our photo's `@OneToOne` decorator a bit:
1000
1000
 
1001
1001
  ```javascript
1002
1002
  export class Photo {
1003
- /// ... other columns
1003
+ // ... other columns
1004
1004
 
1005
1005
  @OneToOne(() => PhotoMetadata, (metadata) => metadata.photo, {
1006
1006
  cascade: true,
@@ -1155,7 +1155,7 @@ Now let's add the inverse side of our relation to the `Photo` class:
1155
1155
 
1156
1156
  ```javascript
1157
1157
  export class Photo {
1158
- /// ... other columns
1158
+ // ... other columns
1159
1159
 
1160
1160
  @ManyToMany(() => Album, (album) => album.photos)
1161
1161
  albums: Album[]
@@ -1223,6 +1223,11 @@ export class AuroraMysqlQueryRunner extends BaseQueryRunner {
1223
1223
  const tableColumn = new TableColumn();
1224
1224
  tableColumn.name = dbColumn["COLUMN_NAME"];
1225
1225
  tableColumn.type = dbColumn["DATA_TYPE"].toLowerCase();
1226
+ // Unsigned columns are handled differently when it comes to width.
1227
+ // Hence, we need to set the unsigned attribute before we check the width.
1228
+ tableColumn.unsigned = tableColumn.zerofill
1229
+ ? true
1230
+ : dbColumn["COLUMN_TYPE"].indexOf("unsigned") !== -1;
1226
1231
  if (this.driver.withWidthColumnTypes.indexOf(tableColumn.type) !== -1) {
1227
1232
  const width = dbColumn["COLUMN_TYPE"].substring(dbColumn["COLUMN_TYPE"].indexOf("(") + 1, dbColumn["COLUMN_TYPE"].indexOf(")"));
1228
1233
  tableColumn.width =
@@ -1269,9 +1274,6 @@ export class AuroraMysqlQueryRunner extends BaseQueryRunner {
1269
1274
  });
1270
1275
  tableColumn.zerofill =
1271
1276
  dbColumn["COLUMN_TYPE"].indexOf("zerofill") !== -1;
1272
- tableColumn.unsigned = tableColumn.zerofill
1273
- ? true
1274
- : dbColumn["COLUMN_TYPE"].indexOf("unsigned") !== -1;
1275
1277
  tableColumn.isGenerated =
1276
1278
  dbColumn["EXTRA"].indexOf("auto_increment") !== -1;
1277
1279
  if (tableColumn.isGenerated)
@@ -1673,7 +1675,22 @@ export class AuroraMysqlQueryRunner extends BaseQueryRunner {
1673
1675
  this.connection.driver.dataTypeDefaults[column.type] &&
1674
1676
  this.connection.driver.dataTypeDefaults[column.type].width;
1675
1677
  if (defaultWidthForType) {
1676
- return defaultWidthForType === width;
1678
+ // In MariaDB & MySQL 5.7, the default widths of certain numeric types are 1 less than
1679
+ // the usual defaults when the column is unsigned.
1680
+ // This also applies to Aurora MySQL.
1681
+ const typesWithReducedUnsignedDefault = [
1682
+ "int",
1683
+ "tinyint",
1684
+ "smallint",
1685
+ "mediumint",
1686
+ ];
1687
+ const needsAdjustment = typesWithReducedUnsignedDefault.indexOf(column.type) !== -1;
1688
+ if (column.unsigned && needsAdjustment) {
1689
+ return defaultWidthForType - 1 === width;
1690
+ }
1691
+ else {
1692
+ return defaultWidthForType === width;
1693
+ }
1677
1694
  }
1678
1695
  return false;
1679
1696
  }