Commit Graph

599 Commits

Author SHA1 Message Date
Joost de Bruijn c3a336c18d Adding support for fractional seconds. 2017-05-05 19:15:41 -04:00
Sergey Nosenko 72abcb8e9f fix compare of foreign keys for autoupdate (#272)
* fix compare of foreign keys for autoupdate

use mysql table name in case it is not equal model name

* fix column name lookup for fk definition

* fix ADD CONSTRAINT for multiple fk

if more the one foreign key added ADD CONSTRAINT
must be separated with comma but not with space as applySqlChanges do.

* fix duplicate foreign key creation on autoupdate

* fix entity name selection

* change join to toString as requested

* fix removing dropped keys

* fix linter issues

* add test case with columnName in foreign key

and isActual check after autoupdate

* uncommit accitenally commited test case
2017-05-05 19:13:23 -04:00
Diana Lau 204242663e Merge pull request #276 from monsty/patch-1
Update README.md
2017-05-05 10:11:31 -04:00
Antoine LA 41e5811481 Update README.md 2017-05-04 16:48:46 +02:00
Kevin Delisle 57e76e6fc9 4.1.0
* Tests for datetime types (Kevin Delisle)
 * Add new type DateString to fromColumnValue (Buck Bito)
 * Remove String manipulations of Date objects (Buck Bito)
 * Properties with mysql custom "columnName" don't get autoupdated (#273) (Sergey Nosenko)
 * Revert PR #257 (#266) (Sakib Hasan)
 * Fix async.each in migration (#262) (Benjamin Schuster-Boeckler)
 * refactor date, timestamp and datetime data types handling (#257) (Sergey Nosenko)
 * Fix too many connection error (#261) (Sakib Hasan)
2017-05-02 18:35:55 -04:00
Kevin Delisle 3fa5306970 Merge pull request #271 from bbito/bb-fresh-master
Remove String manipulations of Date objects
2017-05-02 18:23:52 -04:00
Kevin Delisle 31a7728dd0 Tests for datetime types 2017-05-02 17:46:21 -04:00
Buck Bito cee6303454 Add new type DateString to fromColumnValue
To sync with loopback-datasource-juggler #1356
which introduces new Type: DateString
2017-05-01 19:38:41 -04:00
Buck Bito d0a88ef045 Remove String manipulations of Date objects
This commit contains all previous work after rebase went badly
RE: Pull Request requested by @kjdelisle regarding #149 following my
proposed solution "A" at #149 (comment).
As mentioned in the post linked above, this change allows the
underlying mysqljs/mysql module to handle Date object serialization
and removes the forced conversion of Dates to UTC Strings.
An opt-out fallback to forced coercion to UTC is included,
which was modeled after #265 from @darknos .

Old, squashed commits:
d0ea1d926eae04d0355109c87eef4eeec173f887
Legacy UTC date processing fallback credit: @darknos

a59dad7d7bd945895fb410a963cf5932b6a20f9e
Remove orphaned string functions

e8fdbdcfd4092f3d9e018f688d14def3e3ca9856
Incorporate @darknos expanded check for zero dates

abd4e0a7e9122f857974678a6b6ad87a19988f6f
Remove DATE manipulations in from/toColumnValue
2017-04-28 16:13:15 -04:00
Sergey Nosenko ea33f557ab Properties with mysql custom "columnName" don't get autoupdated (#273)
* #250 fix column escaping for autoupdate

* Fix lint error
2017-04-27 17:31:20 -04:00
Sakib Hasan 345492e5b2 Revert PR #257 (#266) 2017-04-24 16:19:33 -04:00
Benjamin Schuster-Boeckler 70f0acadd4 Fix async.each in migration (#262) 2017-04-18 12:48:55 -04:00
Sergey Nosenko f2f0dac69d refactor date, timestamp and datetime data types handling (#257)
* refactor date, timestamp, datetime data-type

* reverse datatypes.test.js changes

* checking property.mysql.dataType

along with property.dataType for timestamp fields

* Fix PR linter

* moved test cases all under one test file

remove unnecessary test cases, unify setup procedures

* Fix sql mode before migration

Set sql mode to allow zero's on timestamp
Clean up code

* remove test cases with strings and DATE field type

* code cleanup as requested

* add accidentally deleted assert.ok(found)

* fix timeZone to timezone case in README.md

* Update readme with date type info
2017-04-18 10:13:46 -04:00
Sakib Hasan aa15ee553a Fix too many connection error (#261)
Disconnect db instance on TX test which makes multiple pool connection
2017-04-17 16:16:59 -04:00
Kevin Delisle f9ab75c1d9 4.0.0
* Replicate new issue_template from loopback (Siddhi Pai)
 * Replicate issue_template from loopback repo (Siddhi Pai)
 * fix linting problems (juanra)
 * Extract functions to base connector (ssh24)
 * Refactor alter table (ssh24)
 * Typo on README (#236) (Ctibor Laky)
 * Return if column is generated or not (#198) (Christiaan Westerbeek)
 * Upgrade to loopback-connector@4.x (Loay)
 * Refactor migration methods (ssh24)
 * Refactor Discovery Methods (Loay)
 * Remove old TODO and commented out code (Matthew Dickinson)
 * Fix autoupdate to create foreign keys after tables (Matthew Dickinson)
 * Add logging for errors encountered in discovery (Matthew Dickinson)
 * Update signature for alterTable (Matthew Dickinson)
 * Limit foreign key creation current connector (Matthew Dickinson)
 * Fix linting error (Matthew Dickinson)
 * Added test to validate foreign key handling (Matthew Dickinson)
 * Update foreign key creation table name handling (Matthew Dickinson)
 * Update alterTable to actually drop constraints (Matthew Dickinson)
 * Add rough handling for automatic foreign keys (Matthew Dickinson)
 * remove line not needed (#237) (ivy ho)
 * Update LB-connector version (Loay)
2017-03-31 17:36:48 -04:00
siddhipai 3b2854045a Merge pull request #240 from strongloop/replicate-issue-template
Replicate issue_template from loopback repo
2017-03-28 14:53:41 -07:00
Siddhi Pai e1502baf31 Replicate new issue_template from loopback 2017-03-22 17:09:40 -04:00
Siddhi Pai 0c677e59e3 Replicate issue_template from loopback repo 2017-03-22 17:09:40 -04:00
Sakib Hasan f550caae0e Merge pull request #227 from juanramb/fix-blob
Fix wrong values in mysql after saving buffer fields
2017-03-21 07:08:44 -04:00
juanra a8e22c5bff fix linting problems 2017-03-21 10:45:24 +01:00
Sakib Hasan 2fc14154c7 Merge pull request #252 from strongloop/fix/refactor-fns
Extract functions to base connector
2017-03-20 11:36:18 -04:00
ssh24 dc1e0d8050 Extract functions to base connector
move getAddModifyColumns and getDropColumns to base
2017-03-20 10:34:47 -04:00
Sakib Hasan e81de01aa6 Merge pull request #251 from strongloop/refactor-alter-table
Refactor alter table
2017-03-17 17:42:30 -04:00
ssh24 a02047b643 Refactor alter table
Include fk with autoupdate/migrate

Some tests are failing due to timeout, looking into it
should check actuality of dataSource fails, looking into it

Fix actuality of ds test

Fix autoupdate test timeout

Fix requested changes

Fix to checkOnly for isActual
2017-03-17 17:21:10 -04:00
Ctibor Laky 04665277b7 Typo on README (#236)
* typo
2017-03-10 06:50:59 -05:00
Christiaan Westerbeek b67b57970f Return if column is generated or not (#198)
* Return if column is generated or not

Related to
https://github.com/strongloop/loopback-datasource-juggler/issues/899

* add pk for testgen table

* Fixe the double quotes around generated

as requested by @loay

* Fix commit linter

Block must not be padded by blank lines padded-blocks

* Code fixes to follow guide

* Should fix the tests failing

Test failing on the tableName (incorrect case)
2017-03-08 18:56:27 -05:00
Loay fa0e5b46c6 Merge pull request #249 from strongloop/feature/upgrade-to-connector-4.x
Upgrade to loopback-connector@4.x
2017-03-06 19:22:14 -05:00
Loay 44bc9a99cb Upgrade to loopback-connector@4.x 2017-03-06 19:09:42 -05:00
Sadman Sakib Hasan 9f1affdad3 Merge pull request #243 from strongloop/refactor-mysql-migration
Refactor mysql migration
2017-03-02 13:18:21 -08:00
ssh24 ab644d9fea Refactor migration methods
Fix timeout error on tests

Signed-off-by: Sakib Hasan <sshasan10@hotmail.com>

add showFields and showIndexes functions

Extract getTableStatus

Extract columnDataType to base connector
2017-03-02 15:49:30 -05:00
Loay 030f8f9dc1 Merge pull request #241 from strongloop/refactor-discovery
Refactor Discovery Methods
2017-02-28 16:18:23 -05:00
Loay 820bf03400 Refactor Discovery Methods 2017-02-28 16:06:51 -05:00
Sadman Sakib Hasan 692c07bd51 Merge pull request #193 from matthewdickinson/foreign_key_migration
Foreign key migration
2017-02-20 16:19:00 -08:00
Matthew Dickinson 6848b72e22 Remove old TODO and commented out code 2017-02-18 21:10:04 -05:00
Matthew Dickinson 5ba6687c7c Fix autoupdate to create foreign keys after tables
Updated the autoupdate function so that it collects foreign key
statements and runs them once all tables have been updated.
This prevents foreign keys being created before referenced tables.
2017-02-17 11:25:19 -05:00
Matthew Dickinson 24c6b77a6f Add logging for errors encountered in discovery 2017-02-17 11:25:19 -05:00
Matthew Dickinson 0b04d461e4 Update signature for alterTable
Since alterTable is semi-public, the method now checks the arugments to
make sure that it still supports the old signature that doesn't include
actualFks
2017-02-17 11:25:19 -05:00
Matthew Dickinson d461d07f34 Limit foreign key creation current connector
Updated fk generation to make sure that it doesn't try to create
foreign keys linking to another DB/connector
2017-02-17 11:25:19 -05:00
Matthew Dickinson 4d20fa7746 Fix linting error 2017-02-17 11:25:19 -05:00
Matthew Dickinson 04287f6a77 Added test to validate foreign key handling 2017-02-17 11:25:19 -05:00
Matthew Dickinson 940032f4dd Update foreign key creation table name handling 2017-02-17 11:25:19 -05:00
Matthew Dickinson 782959cf20 Update alterTable to actually drop constraints 2017-02-17 11:25:19 -05:00
Matthew Dickinson 1324333ffd Add rough handling for automatic foreign keys
This handles basic creating/dropping of FKs based on model relations
2017-02-17 11:25:19 -05:00
ivy ho 39d67fa1f9 remove line not needed (#237)
remove the line that does not look good in github but okay for loopack.io
confirming with rand that that can be removed
2017-02-09 09:37:45 -08:00
Loay d27ab084a6 Merge pull request #235 from strongloop/lc-version3
Update LB-connector version
2017-01-26 11:13:04 -05:00
Loay da0807faf6 Update LB-connector version 2017-01-26 10:48:36 -05:00
Miroslav Bajtoš 0fe22653e3 3.0.0
* Follow mysql recommendations for handling booleans (Carl Fürstenberg)
 * Fix readme glitch (#231) (Rand McKinney)
 * Update readme w info from docs (#229) (Rand McKinney)
 * Fix expected column name when autoupdate (muhammad hasan)
 * Update paid support URL (Siddhi Pai)
 * Fix CI Failures (Loay Gewily)
 * Drop support for Node v0.10 and v0.12 (Siddhi Pai)
 * Start the development of the next major version (Siddhi Pai)
 * Update README with correct doc links, etc (Amir Jafarian)
2017-01-13 15:46:04 +01:00
Simon Ho 6ac3a56062 Merge pull request #232 from strongloop/azatoth-change_discovery_boolean
Follow mysql recommendations for handling booleans
2017-01-11 21:00:31 -08:00
Carl Fürstenberg 5383c4c0ff Follow mysql recommendations for handling booleans
Per http://dev.mysql.com/doc/refman/5.7/en/numeric-type-overview.html
`BOOL` and `BOOLEAN` is alias for `TINYINT(1)` thus we should make
sure discover can handle as such.

Introducing three flags:

* treatCHAR1AsString
  default false - treats CHAR(1) as a String instead of a Boolean
* treatBIT1AsBit
  default true - treats BIT(1) as a Boolean instead of a Binary
* treatTINYINT1AsTinyInt
  default true - treats TINYINT(1) as a Boolean instead of a Number

The default handling for CHAR(1) is legacy backward compability due to
custom to use a CHAR(1) to store 'Y', 'N', '0', '1', etc...
2017-01-11 19:44:50 -08:00
Rand McKinney 160e8dae72 Fix readme glitch (#231)
* Update README.md

* Update README.md
2017-01-11 16:06:55 -08:00