Skip to content

Releases: doug-martin/goqu

v7.3.0

12 Jul 04:05
40b44d0
Compare
Choose a tag to compare
  • [ADDED] UPDATE and INSERT should use struct Field name if db tag is not specified #57
  • [CHANGE] Changed goqu.Database to accept a SQLDatabase interface to allow using goqu.Database with other libraries such as sqlx #95

v7.2.0

12 Jul 00:33
3d12ff0
Compare
Choose a tag to compare
  • [FIXED] Sqlite3 does not accept SELECT * UNION (SELECT *) #79
  • [FIXED] Where(Ex{}) causes panics [mysql] #49
  • [ADDED] Support for OrderPrepend #61
  • [DOCS] Added new section about loading a dialect and using it to build SQL #44

v7.1.0

11 Jul 03:29
d7ee44f
Compare
Choose a tag to compare
  • [FIXED] Embedded pointers with property names that duplicate parent struct properties. #23
  • [FIXED] Can't scan values using []byte or []string #90
    • When a slice that is *sql.RawBytes, *[]byte or sql.Scanner no errors will be returned.

v7.0.1

09 Jul 04:20
4cc9fa7
Compare
Choose a tag to compare
  • Fix issue where structs with pointer fields where not set properly #86 and #89 - @efureev

v7.0.0

09 Jul 01:33
b25badd
Compare
Choose a tag to compare

Linting

  • Add linting checks and fixed errors
    • Renamed all snake_case variables to be camelCase.
    • Fixed examples to always map to a defined method
  • Renamed adapters to dialect to more closely match their intended purpose.

API Changes

  • Updated all sql generations methods to from Sql to SQL
    • ToSql -> ToSQL
    • ToInsertSql -> ToInsertSQL
    • ToUpdateSql -> ToUpdateSQL
    • ToDeleteSql -> ToDeleteSQL
    • ToTruncateSql -> ToTruncateSQL
  • Abstracted out dialect_options from the adapter to make the dialect self contained.
    • This also removed the dataset<->adapter co dependency making the dialect self contained.
  • Refactored the goqu.I method.
    • Added new goqu.S, goqu.T and goqu.C methods to clarify why type of identifier you are using.
    • goqu.I should only be used when you have a qualified identifier (e.g. `goqu.I("my_schema.my_table.my_col")
  • Added new goqu.Dialect method to make using goqu as an SQL builder easier.

Internal Changes

  • Pulled expressions into their own package
    • Broke up expressions.go into multiple files to make working with and defining them easier.
    • Moved the user facing methods into the main goqu to keep the same API as before.
  • Added more examples
  • Moved non-user facing structs and interfaces to internal modules to clean up API.
  • Increased test coverage.

v6.1.0

09 Jun 15:13
be19636
Compare
Choose a tag to compare

v6.0.0

07 Jun 22:59
c3f0755
Compare
Choose a tag to compare
  • Updated go support to 1.10, 1.11 and 1.12
  • Change testify dependency from c2fo/testify back to stretchr/testify.
  • Add support for "FOR UPDATE" and "SKIP LOCKED" #62 - @btubbs
  • Changed to use go modules

v5.0.0

10 Sep 00:56
6803bc2
Compare
Choose a tag to compare
  • Drop go 1.6 support, supported versions are 1.8, 1.9 and latest
  • Add context support #64 - @cmoad

v4.2.0

27 Dec 16:45
cd495d7
Compare
Choose a tag to compare
  • Add support for ON CONFLICT when using a dataset #55 - @bobrnor

v4.1.0

12 Jun 16:03
Compare
Choose a tag to compare
  • Support for defining WITH clauses for Common Table Expressions (CTE) #39 - @Oscil8