BREAKING
- QueryUtils: Turn on strictDateDetection by default (6150975)
- compat: Drop support for ACF 2016 (54b65c0)
- SchemaBuilder: Separate UUID and GUID to reduce confusion (b6024f1)
- QueryBuilder: Automatic where scoping with OR clauses in when callbacks (0d6292d)
- QueryUtils: Improve numeric sqltype detection (74649bd)
- QueryBuilder: Add pagination collectors to qb (4b2d85f)
- MSSQLGrammar: Rename MSSQLGrammar to SqlServerGrammar (ea94494)
- QueryBuilder: Rename callback to query for subSelect (87b27f5)
- QueryBuilder: Expand closure and builder argument options (e002d94)
- QueryBuilder: Add defaultValue and optional exception to value (ec23bb7)
- ModuleConfig: Use full setting for WireBox mapping (1e14099)
- QueryBuilder: Remove variadic parameter support (8690fcf)
- *: refactor: Drop support for ACF 11 and Lucee 4.5 (9dbeaf3)
- SchemaBuilder: Use uniqueidentifier for MSSQL uuid() (1b2d456)
build
- travis: Use openjdk for builds
(061e9d0)
chore
- QueryBuilder: Back out of using native
returntype
s (63a1599)
- tests: Update tests for new
autoDeriveNumericType
default
(0341edb)
- CI: Do not fail fast in CI test runs
(250626f)
- ci: Update setup-java action to latest
(91456bf)
- CI: Update GHA to avoid deprecated output syntax (#236) (8d757e2)
- BaseGrammar: Update announceInterception calls for ColdBox 7 (6f45d1f)
- Release: Fix artifact commit process during release
(2c7d3eb)
- CI: Remove ColdBox as a test dependency
(9fa95ca)
- CI: Test with full null support (98b0df9)
- SchemaBuilder: Add types to SchemaBuilder classes (57e9c7d)
- CI: Swap to main branch
(6c94e46)
- Utils: Remove injection for QueryUtils (bac94a5)
- CI: Fix reference to version number in subsequent step
(7199c25)
- CI: Publish docs to S3
(82dbfde)
- CI: Use commandbox-docbox to generate API docs
(0747b13)
- CI: Update workflow for API docs
(7e28504)
- CI: Migrate Travis to GitHub Actions
(ce5457a)
- Format: Format with cfformat
(77af3ee)
- format: Always use lf for new lines (707a288)
- CI: Testing coldbox@be makes no sense as it's all unit tests
(8b335da)
- CI: Add coldbox@be testing
(e14af28)
- BaseGrammar: Inline null services
(4ccad99)
- QueryBuilder: Fix tests on ACF 2016 due to @default metadata. (29b31d0)
- formatting: Use cfformat for automatic formatting (119e434)
- build: Skip cleanup of working directory before uploading APIDocs
(1c2d0d3)
- build: Commit apidocs to Ortus artifacts
(636af8b)
- tests: Add code coverage with FusionReactor
(6e6600f)
- README: Remove unused all-contributors information
(e84addd)
- APIDocs: Don't nest API docs
(dc6bde8)
- cleanup: Remove node (unused test runner)
(ee51a59)
- README: Remove emoji until ForgeBox can handle it again
(70f2d45)
- Changelog: Fix Changelog to rerun build
(2b6aaa3)
- ci: Fix flakey gpg keys
(51d8c27)
- ci: Test on adobe@2018
(d928b4b)
- README: Update references to elpete to coldbox-modules
(bc7c99c)
- build: Enable commandbox-semantic-release
(0fe689f)
- box.json: Update references to coldbox-modules repo
(7eb1a31)
- build: Update Travis CI release process
(e743833)
docs
- QueryBuilder: Add missing docblocks
(e6327d1)
- box.json: Remove extra period in description (87347c7)
errors
- schema: Better error message when passing in a TableIndex to create column
(f91a3f7)
feat
- BaseGrammar: Support
returning
in UPDATE and DELETE statements (42f9c4b)
- QueryBuilder: Add ability to inline bindings when calling
toSQL
anddump
(379d1e7)
- QueryUtils: Turn on
autoDeriveNumericType
by default (295798b)
- QueryBuilder: Add a way to return all rows when a certain maxRows is passed to paginate (79c4114)
- QueryBuilder: Add a shortcut
sumRaw
method (ee86423)
- SchemaBuilder: Add dropIndex method (efd1ca7)
- SQLCommenter: Add SQLCommenter support for ColdBox (396814a)
- SQLite: Add SQLite Grammar (5e48709)
- QueryBuilder: Add columnList helper function (cd03ee5)
- QueryBuilder: Add helper for CONCAT function (febe28a)
- QueryBuilder: Add firstOrFail (f6d92cb)
- QueryUtils: Auto derive the correct numeric sql types (#231) (c638925)
- ModuleConfig: Allow defaultOptions to be set in
moduleSettings
(a98fb6c)
- Locks: Add skip locked feature to lockForUpdate
(eea76c6)
- QueryBuilder: Make columns optional for insertUsing
(3ff0f1f)
- QueryBuilder: Add insertIgnore
(6238626)
- SqlServerGrammar: Allow deleting unmatched source records in upsert (cc9c106)
- QueryBuilder: Allow using a source callback or QueryBuilder in upserts
(ac2d959)
- QueryBuilder: Add insertUsing to use queries to insert into tables
(47a2c64)
- QueryBuilder: Allow updates with subselects (af82f71)
- QueryBuilder: Allow JOINS in UPDATE statements (0a89175)
- QueryBuilder: Allow expressions in
value
andvalues
(60d131e)
- QueryBuilder: Add an upsert method (13debdd)
- SchemaBuilder: Add default options to constructor (355c28a)
- QueryBuilder: Add support for whereNotLike
(b7deb9a)
- QueryUtils: Automatically add
scale
to bindings when needed (0a92cea)
- SchemaBuilder: Add computed / virtual column support (1531fed)
- QueryBuilder: Add a reset method (f39089b)
- Locks: Add locking helpers to qb (b986211)
- CI: Adjust fetch depth for tests and release actions (c901892)
- QueryBuilder: Add a new simplePaginate method (2c533e6)
- QueryUtils: Introduce a setting to specify the default numeric sql type (8f102c9)
- QueryBuilder: Add a dump command to aid in debugging a query while chaining (6fe518c)
- QueryUtils: Introduce optional strict date detection (827f2e8)
- QueryBuilder: Add reselect methods (81d987d)
- QueryBuilder: Add a reorder method (69d6c5d)
- QueryBuilder: Expose nested where functions (71ca350)
- SchemaBuilder: Add support for MONEY and SMALLMONEY data types (24aadec)
- BaseGrammar: Add executionTime to the data output, including interceptors
(25d66d7)
- Select: selectRaw now can take an array of expressions (d5b00af)
- Orders: Add a clearOrders method (507dfdb)
- Joins: Optionally prevent duplicate joins from being added (40212ff)
- QueryBuilder: Enhance order by's with more direction options (c767ac8)
- SqlServerGrammar: Add a parameterLimit public property (155cd3c)
- QueryBuilder: Add a parentQuery option (f84de76)
- QueryBuilder: Fully-qualified columns can be used in
value
andvalues
(e4c16b8)
- QueryBuilder: Add orderByRaw method (67a9222)
- SchemaBuilder: Add methods to manage views (1ef8f82)
- QueryUtils: Preserve column case and order in conversion (00cd691)
- QueryBuilder: Generate SQL strings with bindings (2c84afb)
- QueryBuilder: Distinct can now be toggled off (7255fa3)
- SchemaBuilder: Add more column types (c9c4678)
- MSSQLGrammar: Remove default constraint when dropping columns
(88bfe81)
- SchemaBuilder: Add renameTable alias for rename
(e2c796e)
- OracleGrammar: Add dropAllObjects and migrate fresh support
(7fe3429)
- MSSQLGrammar: Add support for dropAllObjects and migrate fresh
(719e264)
- QueryBuilder: Add database chunking (2a20ba4)
- QueryBuilder: Use addUpdate to progressively add columns to update (65ad791)
- QueryBuilder: Add whereLike method (ec12a2a)
- QueryBuilder: Allow default options to be configured (34db905)
- QueryBuilder: Allow raw values in inserts (bae3435)
- QueryBuilder: Add a performant clone method
(f1b367a)
- QueryBuilder: Allow raw values in updates (5f287b9)
- Subselect: Allow passing query objects to subselect (d2fb971)
- QueryBuilder: Use array returntype where available
(2c45627)
- QueryBuilder: Add a columnFormatter option (984da75)
- QueryBuilder: Add returning functionality for compatible grammars (7b12b02)
- SchemaBuilder: Add unicode text functions (1a5207e)
- Logging: Add debug logging for query sql and bindings. (2928feb)
- QueryBuilder: Add support for Common Table Expressions (3e10da6)
- QueryBuilder: Derived and Sub Tables (b3f0461)
- QueryBuilder: Unions (59028a8)
- SchemaBuilder: Allow an optional schema to hasTable and hasColumn (9bfcd45)
- QueryBuilder: Add andWhere method for more readable chains. (309f4d8)
- AutoDiscover: Allow for runtime discovery (700948a)
- ModuleConfig: Auto discover grammar by default. (b2347ae)
- Grammar: Added official support for MSSQL, Oracle, and Postgres. (#34) (733dae3)
- SchemaBuilder: Add dropAllObjects action. (#31) (c3e23b5)
fix
- QueryUtils: Use varchar for clob when converting to a CFML query (be1a1bc)
- QueryUtils: Handle more obscure numeric SQL types
(415255e)
- QueryUtils: Add millisecond accuracy to inline bindings
(4e29fb2)
- QueryBuilder: Separate
having
bindings fromwhere
bindings
(7661752)
- SqlServerGrammar: Fix raw table name parsing in update queries.
(0ba008b)
- QueryBuilder: Fix truncating text in nested wheres inside joins
(047a9fe)
- QueryBuilder: Fix out of order bindings in
joinSub
(e766aba)
- PostgresGrammar: Switch from table_catalog to table_schema when referencing schema (8243391)
- SQLCommenter: CommandBox-friendly injections
(ce2a118)
- QueryBuilder: Add support for from bindings (7086c9e)
- QueryBuilder: Make withReturnFormat a public method
(60747b8)
- SQLCommenter: Move coldbox namespace injection to the function body (b6248d4)
- QueryBuilder: Correctly apply native returntypes after
newQuery
andwithReturnFormat
(20416c3)
- QueryBuilder: Fix losing
defaultOptions
when callingnewQuery
(4e713d4)
- QueryBuilder: Allow for native struct returntypes (a2e088d)
- SQLCommenter: Rename RouteInfoCommenter.cfc.cfc to RouteInfoCommenter.cfc (bf33c1a)
- ModuleConfig: Fix syntax errors
(516ed4d)
- QueryBuilder: Allow an optional datasource to be passed to columnList
(808c992)
- SQLCommenter: Make parseCommentString a public method
(6b80419)
- ModuleConfig: Make overriding the sqlCommenter settings easier
(3b707fa)
- QueryBuilder: Allow insertUsing to use CTE's
(cdefad2)
- BaseGrammar: Don't add DISTINCT to aggregate queries when the column is *
(4528759)
- PostgresGrammar: Fix upsert UPDATE SET bug (1e7b272)
- QueryBuilder: Make aggregates work with union queries (98fcc76)
- SqlServerGrammar: HOLDLOCK and READPAST are mutually exclusive
(557b805)
- BaseGrammar: Detect column aliases in raw statements (727f777)
- OracleGrammar: Don't uppercase quoted aliases in Oracle (5b54d1d)
- QueryBuilder: Fix for aliases in update statements (f72ea0c)
- QueryBuilder: Don't sort columns for insertUsing
(3f9b15f)
- QueryBuilder: Add subquery bindings in insert and upsert statements
(7ea072f)
- QueryBuilder: Maintain column order when using source in upsert
(c44e626)
- OracleGrammar: Fix for Oracle returning custom column types
(c07ff33)
- QueryBuilder: Explicit arguments scoping (b5c1070)
- QueryBuilder: Fix wheres with joins in update statements
(fb98478)
- Null: Fixes for full null support (963d79e)
- QueryBuilder: Merge statements in SQL Server need a terminating semicolon (32b5dec)
- QueryUtils: Add better null handling to inferSqlType
(1f11650)
- QueryBuilder: Correctly format columns being updated
(a32bfb5)
- Expressions: Better Expression support in HAVING (7b1096f)
- Aggregates: Use default values via COALESCE (ab181e2)
- Aggregates: Provide default values for sum and count if no records are returned (4ce89ac)
- Aggregates: Allow any value to be returned from withAggregate (5323e39)
- Pagination: Handle group by and havings in pagination queries (4a4428f)
- QueryBuilder: Correctly wrap CTE expressions (f55a224)
- OracleGrammar: Fix typo for argumentCollection
(dce8e15)
- OracleGrammar: Only use batch insert syntax when needed (9707f03)
- QueryBuilder: Distinct and Aggregate queries compile correctly
(0479eec)
- QueryBuilder: Pass options to exists call in updateOrInsert
(f07d97e)
- Aggregates: Correctly return aggregate values (50f315a)
- QueryBuilder: Account for raw expressions when generating mementos for comparison (1dc0096)
- QueryBuilder: Fix limit on simplePaginate
(cd1840c)
- tests: Better scope test method names for ACF 2020 compatibility
(c2d7a0d)
- QueryBuilder: Use html as the default dump format
(043ddb5)
- QueryUtils: Use strictDateDetection setting in constructor
(76ae59f)
- QueryBuilder: Allow for bindings in orderByRaw
(5a97a7f)
- QueryBuilder: Ignore select bindings for aggregate queries
(8a3a181)
- BaseGrammer: Allow spaces in table aliases. (b06d690)
- SqlServerGrammar: Split FLOAT and DECIMAL column types (82da682)
- QueryBuilder: Clear order by bindings when calling clearOrders
(f1e941a)
- QueryBuilder: Add bindings from orderBySub expressions
(77213a6)
- OracleGrammar: Correcly wrap all subqueries and aliases (3e9210f)
- MySQLGrammar: Allow nullable timestamps in MySQL (ceb96a1)
- QueryBuilder: Return 0 on null aggregates
(ee10a67)
- QueryBuilder: Match type hints to documentation for join functions (a23a1b6)
- QueryUtils: Handle numeric checks with Secure Profile enabled (a849525)
- QueryBuilder: Allow raw statements in basic where clauses
(18200ec)
- QueryBuilder: Added options structure to count() method call in paginate (99201fb)
- QueryBuilder: Allow for space-delimited sort directions (5530679)
- QueryBuilder: Add helpful message when trying to use a closure with 'from'
(a8e7bb4)
- QueryBuilder: 'value' and 'values' now work with column formatters
(da60695)
- QueryBuilder: Correctly format RETURNING clauses (977edcf)
- QueryUtils: Handle multi-word columns in queryRemoveColumns
(69d3058)
- QueryBuilder: Fix incorrect structAppend overwrites
(ad770d2)
- OracleGrammar: Remove elvis operator due to ACF compatibility issues
(e4b27b8)
- PostgresGrammar: Update enum tests for Postgres
(c50b00b)
- PostgresGrammar: Fix wrapping of enum types
(2d65e08)
- QueryBuilder: Compat fix for ACF 2018 and listLast parsing
(d30c8cd)
- SchemaBuilder: Include current_timestamp default for timestamps
(9f9a6c9)
- QueryBuilder: Ignore table qualifiers for insert and update
(466d791)
- JoinClause: Prevent duplicate joins when using closure syntax
(8f5028a)
- BaseGrammar: Fix a case where a column was not wrapped correctly
(e4fcff4)
- QueryBuilder: Avoid duplicate due to Hibernate bugs (ec429ba)
- QueryBuilder: Upgrade cbpaginator to fix maxrows discrepency (085c8a6)
- BaseGrammar: Fix using column formatters with updates and inserts
(e4fb585)
- QueryBuilder: Fix using with query param structs
(07c9b72)
- QueryBuilder: Ignore orders in aggregate queries
(39e1338)
- BaseGrammar: Improve column wrapping with trimming (d98a5cb)
- QueryBuilder: Prefer the parent query over magic methods (f9fd8d1)
- Pagination: Allow passing query options in to paginate
(cdecfb3)
- QueryBuilder: Fix for inserting null values directly
(1de27a6)
- formatting: Futher fixes with cfformat
(b4d74b3)
- QueryBuilder: Add a type to the onMissingMethod exception (90d1093)
- MySQLGrammar: Use single quote for column comment (7304202)
- QueryBuilder: Accept lambdas where closures are allowed. (f88809b)
- QueryBuilder: Better whitespace splitting for select lists
(6f771e3)
- QueryUtils: Fix array normalization to handle non-string inputs (01613c4)
- QueryBuilder: Trim select columns string before applying
(d6cbf36)
- QueryBuilder: Fix cbpaginator instantiation path
(9a8f03a)
- QueryBuilder: Fix typo in docblock
(97c8785)
- QueryBuilder: Fix docblock name
(79b96c6)
- QueryBuilder: Pass paginationCollector and defaultOptions to newQuery
(bccbc40)
- QueryBuilder: Explicitly set andWhere methods to use the 'and' combinator
(adce834)
- QueryBuilder: Allow any custom function for where
(fb01927)
- SchemaBuilder: Allow raw in alter statements
(2202828)
- QueryBuilder: Allow closures to be used with leftJoin and rightJoin (e7ddf2f)
- Utils: Preserve column casing when removing columns
(433df5d)
- namespaces: Fix for ACF 11 namespaces
(784855c)
- OracleGrammar: Fix for removing generated columns from insert and updates
(f4ab485)
- QueryBuilder: Make operator and combinator checks case-insensitive (a90b944)
- PostgresGrammar: Only drop tables in the current schema
(0866f9a)
- PostgresGrammar: Use correct detection of tables in schemas
(10408a1)
- QueryBuilder: Revery using array returntype where available (d4fea1d)
- QueryBuilder: Correctly keep where bindings for updateOrInsert (fa9fab6)
- BaseGrammar: Fix for when the query object is null (efb3917)
- SchemaBuilder: Default values respect column types (ae2fc4b)
- SchemaBuilder: Wrap enum values in single quotes
(89b58c4)
- QueryBuilder: Add missing
andWhere
methods
(7273ce4)
- SchemaBuilder: Fix incorrect column name for hasTable and hasColumn (292bc2a)
- SchemaBuilder: Update UUID length to 36 characters (2569f82)
- MSSQLGrammar: Replace NTEXT with NVARCHAR(MAX) (936b01d)
- QueryBuilder: Fix JoinClause return value (5d113c7)
- Column: Explicitly name default constraint for MSSQL (288bd66)
- PostgresGrammar: Fix typo in getAllTableNames
(91caf6a)
- SchemaBuilder: Fix dropping foreign keys in MySQL
(8895447)
- ModuleConfig: Fix logic for determining CommandBox vs ColdBox environment
(5c66466)
- ModuleConfig: Add PostgresGrammar alias to WireBox
(eca03f0)
- QueryBuilder: Preserve returnFormat when creating a new builder
(4538947)
- MySQLGrammar: Default to CURRENT_TIMESTAMP for timestamp columns (#32) (680750a)
other
- *: v9.2.0 (1e031b2)
- *: chore: trigger build
(5c0a6e3)
- *: chore: trigger build
(f5cd009)
- *: v9.0.0-beta.3
(420f8b1)
- *: v9.0.0-beta.2
(dded0a1)
- *: v9.0.0-beta.1
(bbf1d67)
- *: Apply cfformat changes
(e59f0ad)
- *: Apply cfformat changes
(aefbf88)
- *: chore: trigger build
(4a8bbdb)
- *: v8.7.0-beta.2
(62705cd)
- *: v8.7.0-beta.1
(13feb20)
- *: Add support for mediumtext & longtext types (#144) (001344d)
- *: fix: Format with cfformat
(dc2a9b6)
- *: fix: Update gitignore to account for folder paths
(382c16b)
- *: chore: Adjust ignore files
(e5702ed)
- *: chore: Use forgeboxStorage (191c732)
- *: fix(QueryUtils): Account for null values when checking for numeric values (42f2eb4)
- *: refactor: Remove unneeded clearExcept argument
(0b90157)
- *: added
last()
(5b0fe28)
- *: Update references from Builder to QueryBuilder (632e697)
- *: Updated API Docs
(8325db5)
- *: 5.0.2 (c8cab5d)
- *: 5.0.1 (75def91)
- *: 5.0.0 (d944eb7)
- *: Add @tonyjunkes as a contributor
(1adbbba)
- *: Updated API Docs
(e0ebc41)
- *: 5.0.0 (dbcaf8a)
- *: Updated API Docs
(dbc7eb5)
- *: 4.1.0 (b014875)
- *: renameConstraint can take TableIndex instances as well as strings to rename a constraint
(4e9476d)
- *: Greatly simplify drop column
(3fd4c39)
- *: Add rename index
(296cc43)
- *: Rename removeConstraint to dropConstraint
(4cfbaff)
- *: Allowing adding multiple constraints in the same alter call
(1d60df4)
- *: Organize code
(543eaa9)
- *: Add doc blocks for table constraint methods
(10fe437)
- *: Alphabetize the table constraint methods
(06e5d1c)
- *: Add docblocks to TableIndex
(60c7538)
- *: Change default onUpdate and onDelete actions to NO ACTION.
(3a8d7a5)
- *: Add docblocks to Column
(ad71086)
- *: Remove hasPrecision file and do it manually for a cleaner Column class.
(e5fc961)
- *: Streamline uuid type to be just CHAR(35)
(683cd36)
- *: Refactor all the integers to have the same signature
(28d5b81)
- *: Add docblocks to SchemaBuilder
(64cecd5)
- *: Rename build to execute
(cc09aaa)
- *: Add missing semicolon
(d1d0066)
- *: CommandBox / ColdBox cross-compatibility updates
(7d06660)
- *: Fix typo in the sql method call
(c2295d6)
- *: Finish up foreign key dsl
(4cf869a)
- *: Fix foreign key dynamic names
(7b0f9f0)
- *: Add primary key dsl
(25ba4e7)
- *: Fix spacing in basic indexes and enum lists
(4c2cf71)
- *: Make index names more globally unique.
(b7b6636)
- *: Fix primary index names to include table names if no override provided
(d63a4ae)
- *: Add basic table index support
(f247e15)
- *: Remove constraints by name or index object
(dffee36)
- *: Add unique constraing for columns and tables. (61306e0)
- *: Add hasTable and hasColumn support for MySQL and Oracle
(2c4e5d0)
- *: Add test for multiple table changes at once.
(cf65e11)
- *: Enable adding columns to an existing table
(a54eb86)
- *: Add modifyColumn syntax
(1d64624)
- *: Add raw method for SQL escape hatch
(d77a729)
- *: Rename columns (0bb926e)
- *: Add rename tables functionality
(daa13fa)
- *: Add drop multiple columns (f7a7fce)
- *: Organize code a bit
(d6170a3)
- *: Drop a column from an existing table (f8940bc)
- *: Add dropIfExists support (8b175c7)
- *: Add drop table command (b77781a)
- *: Refactor order of arguments in create (3ee5dca)
- *: Rename Grammar to BaseGrammar (1bd2dcb)
- *: Add indexes for morphs and nullableMorphs
(5de9ee3)
- *: Convert schema builder to allow for multiple sql statements.
(c9c6405)
- *: Add work in progress nullable implementation. (735a03a)
- *: Add column modifiers — comment, default, nullable, unsigned
(25fbade)
- *: Add uuid type
(f35e1f1)
- *: Add big, medium, small, and tiny integer and increments variants.
(2bb379d)
- *: Add medium and long text types
(35b7d83)
- *: Add json type (alias to TEXT)
(6403d3f)
- *: Add float type
(86cc974)
- *: Add enum type.
(e2f17ab)
- *: Add decimal type
(aa13c72)
- *: Add bit type
(48d0044)
- *: Have boolean be it's own type so different grammars can interpolate it differently.
(c909f9f)
- *: Add date, datetime, time, and timestamp types.
(857bdcf)
- *: Add char and string types
(5732161)
- *: Add integer, unsignedInteger, increments, and text types
(fb76853)
- *: Add more column types for schema builder (3f80002)
- *: Initial Schema Buidler implementation (8a299f6)
- *: Rename Grammar to BaseGrammar to fit the rest of the documentation.
(365e32a)
- *: Update README.md (872355e)
- *: Add codesponsor.io banner
(a54966a)
- *: Updated API Docs
(a992557)
- *: 4.0.1 (b479473)
- *: Update with new docs link (f1c04c6)
- *: Fixed a bug where calling
toSQL
would modify the builder object. (c00ecef)
- *: Fix for insert bindings including other binding types as well
(c84ec6c)
- *: Add @BluewaterSolutions as a contributor
(92dd7ad)
- *: Fix exists method to work across engines (17afdfa)
- *: Normalize line endings and trim whitespace at the end of lines
(bf4ecc7)
- *: Allow lists to be passed in to
whereIn
(d0cc901)
- *: Updated API Docs
(bf83436)
- *: 4.0.0 (ca7049f)
- *: Fix bug when checking for a "*" column and it was actually an Expression. (2edaf30)
- *: Add
subSelect
method (79343a0)
- *: Add returnObject parameter to assist in returning the generated keys from insert statements
(dc5242f)
- *: Add preQBExecute and postQBExecute interception points. (0c964e5)
- *: BREAKING CHANGE: Have first return a struct instead of an array. (4b46fce)
- *: Add profiling test tooling
(25286fd)
- *: Updated API Docs
(aa9db53)
- *: 3.0.0 (993b0c3)
- *: Remove list detection since it isn't used in the builder and is causing issues
(73f16d2)
- *: add MIT License (6409438)
- *: Stylistic fix on the badges
(a04e631)
- *: Add @timmaybrown as a contributor
(584f785)
- *: Add @murphydan as a contributor
(2bf3566)
- *: Add @aliaspooryorik as a contributor
(caf9065)
- *: Add @elpete as a contributor
(bb7b8bb)
- *: Merge branch 'development'
(e3a27f6)
- *: Updated API Docs
(b9e04f5)
- *: 2.1.0 (8dbddd9)
- *: A couple minor stylistic changes. (80f14e2)
- *: Update Builder.cfc (b77a87b)
- *: issue #8 - additional tests for rawExpressions in the array, removed lists as a valid value for array value and refactored validDirections array to be an instance variable aptly named to match the other naming conventions.
(8704ff4)
- *: First stab at implementing the various requirements for issue #8 to accept an array or list as the column argument's value. The array can accept a variety of value formats that can be intermingled if desired. All scenarios will inherit eithe the default direction or the supplied value for the direction argument.
(e0b9b63)
- *: Cache CommandBox for Travis builds
(5eb4561)
- *: Add new API Docs
(2c1f19b)
- *: 2.0.4 (3414ea7)
- *: Return result from Oracle grammar when record count is 0
(b8a13cd)
- *: Updated API Docs
(c50d061)
- *: 2.0.3 (8634e5c)
- *: Updated API Docs
(a6df8a3)
- *: 2.0.2 (f0886b6)
- *: Add new API Docs package scripts
(c8555ec)
- *: Updated API Docs
(95c2d93)
- *: Nest the apidocs in a different docs site for future better looking docs
(9a8e1fa)
- *: 2.0.1 (6bd958d)
- *: Add more files to the box ignore
(e233853)
- *: Add docs to the ignore for box install
(29017aa)
- *: Move to the docs folder since that is what GitHub pages looks for.
(7c94266)
- *: 2.0.0 (e1710bf)
- *: Add API Docs (fa2edae)
- *: Finish API docs for QB!!!!!
(f145d9a)
- *: 1.6.2 (c6508bb)
- *: Add a check to only try to remove the QB_RN column when records actually exist in the query.
(4d10905)
- *: A fun refactor using closures of aggregates. Added docblocks to the new
with
methods.
(9b946c4)
- *: Add docblocks for bindings
(ef1970d)
- *: Add docblocks for insert, update, and delete
(bbd7c6a)
- *: Add new tap method for inspecting a query in process without interrupting chaining.
(f9b7432)
- *: Use util check instead of raw
isInstanceOf
(6388bfd)
- *: Better name
forPage
arguments
(0037cdd)
- *: Add docblocks for where clauses and groups/havings/orders/limits
(c396c98)
- *: Add docblocks for joins
(f580f0a)
- *: Add more to the API docs
(0d5dd74)
- *: Fix WireBox mapping for newly required returnFormat
(61d8a14)
- *: Add missing semicolons
(0493b4a)
- *: Deprecate
returningArrays
in favor ofreturnFormat
(f52e25a)
- *: Add
selectRaw
helper method.
Aliastable
for `from.
(20da7ea)
- *: Set up bdd with ColdBox Elixir
(dc5cf18)
- *: Add testbox runner and npm package script for tests
(7a3ae71)
- *: 1.6.1 (068d8a0)
- *: Minor formatting changes (73f0856)
- *: get tests to pass on ACF11
(aadb1f8)
- *: Use queryExecute instead of Query() for query of query
(e2c8cb2)
- *: 1.6.0 (6db8522)
- *: Parse column and table aliases without AS in them
(9d04a89)
- *: 1.5.0 (6937d35)
- *: Add first MSSQL-specific grammar
(89b9c84)
- *: 1.4.0 (b11ea7f)
- *: Fix failing test setup from adding return format
(301d013)
- *: Provide custom oracle mass insert compilation
(d567830)
- *: Fix return results failing on insert, update, and deletes
(61ca2b1)
- *: Allow passing options in to insert, update, and delete queries
(c45fdcd)
- *: 1.3.0 (8258998)
- *: Allow a closure to influence return results.
(7a633bb)
- *: 1.2.4 (9ddea67)
- *: Fix bug with oracle limits, offsets, and Query of Queries
(58189fc)
- *: 1.2.3 (b54ff1b)
- *: Fix limit and offset for Oracle and remove generated QB_RN column
(44849ff)
- *: 1.2.2 (d36c7ba)
- *: Update README formatting
(a0a3177)
- *: Use
toBeWithCase
for SQL statement checks. Add a test about uppercasing Oracle wrapped values.
(e14da32)
- *: Apply the table prefix to the table alias as well.
(e5c6c4b)
- *: 1.2.1 (44752d1)
- *: Quick fixes for Oracle grammar. Still needs tests
(74e14f7)
- *: Merge branch 'development' (e4146cb)
- *: 1.2.0 (a077807)
- *: Add OracleGrammar WireBox mapping in ModuleConfig
(a4499a9)
- *: Add section on specifying defaultGrammar
(cdc0776)
- *: Update readme with correct Travis badges
(d9fce51)
- *: Add Oracle grammar support with limit and offset
(9bea030)
- *: Move MySQL Grammar tests to their own file
(d4a6856)
- *: 1.2.0 (a33d937)
- *: Add OracleGrammar WireBox mapping in ModuleConfig
(5c202f0)
- *: Add section on specifying defaultGrammar
(c6dcbd5)
- *: Update readme with correct Travis badges
(84a937d)
- *: Add Oracle grammar support with limit and offset
(c9bab7b)
- *: Move MySQL Grammar tests to their own file
(746d190)
- *: 1.1.2 (511a567)
- *: Fix two functions to return any to allow for query or array return results
(b70b968)
- *: 1.1.1 (00ac2b0)
- *: Add MySQLGrammar binding
(bbd2717)
- *: 1.1.0 (fb82230)
- *: Add initial MySQL Grammar support
(77b636c)
- *: Adding mappings for WireBox.
(8771321)
- *: Remove Oracle Grammar to be implemented at a later time.
(8fcb297)
- *: Add fix for negative values in forPage
(10c77ce)
- *: Add forPage helper to help with pagination.
(658af5b)
- *: Add missing semicolon for ACF
(da77797)
- *: Add havings clause
(f1e3f67)
- *: Use accessor instead of direct variables access.
(6f54077)
- *: Default to returning arrays of structs over queries.
(1dd330b)
- *: Refactor runQuery to run.
(789a6c1)
- *: Allow passing a single column or an array of columns to get to execute the query with those columns once.
(338f82c)
- *: Add value and exist helper query methods.
(34f7ddc)
- *: Implement count, max, min, and sum aggregate methods.
(3217de2)
- *: Default selecting “*” if nothing is passed in to select()
(c542425)
- *: Implement retrieval shortcuts — first, find, get
(4440e23)
- *: Verify raw statements work in select fields
(9907bab)
- *: Minor formatting adjustments
(971489e)
- *: Minor formatting changes
(1f41186)
- *: Remove unused interface
(ee85fc7)
- *: Remove inject helpers. We'll manage that in the ModuleConfig.cfc
(71b5e5c)
- *: Update references to qb and correct version
(cb1ffdd)
- *: Remove ACF 10 support because I want to use member functions.
(0b634bd)
- *: Add import statements for CF11.
(ef23bf1)
- *: Fixes for Adobe engines.
(64c19c7)
- *: Update Travis script
(3249f98)
- *: Add updateOrInsert helper
(c30ad18)
- *: Add exists
(c678cf2)
- *: Add limit and offset
(e606102)
- *: Update readme from Quick to qb
(e585a88)
- *: Rename Quick to qb. (29b34af)
- *: Remove the need to return a query in a when callback.
(657d47c)
- *: Insert, Updates, and Deletes! Oh my!
(e19dae3)
- *: Remove unneeded dependency
(0452b44)
- *: Clean up tests and all tests passing!
(6e75e61)
- *: Implement group bys
(73f961d)
- *: Implement when callbacks
(ed65e09)
- *: Refactor to addBindings
(7ca0d5e)
- *: Implement joins
(f41bca0)
- *: Finish implementing where in. All wheres are done!
(4d734b3)
- *: Implement between statements
(26f937b)
- *: Implement null checks
(9f86158)
- *: Refactor to generated getters and setters.
(04f80f7)
- *: Implement where exists
(d4174e3)
- *: Implement table prefixes
(edf8f66)
- *: Finish basic wheres
(160f68d)
- *: Implement select methods
(baa72a2)
- *: Reformat according to new style guidelines
(fadb882)
- *: Add sublime project file
(9e1cd9c)
- *: Round out failing tests. Time to start implementing
(bb54d35)
- *: Add more failing query/grammar tests
(0d874c5)
- *: Add a bunch of failing tests for builder+grammar interaction
(532ffdb)
- *: Update to the latest Travis CI multi-engine file
(52c647c)
- *: Add comments about ACF10 making life sad.
(bc482d1)
- *: Clarify that PLATFORM is really an ENGINE
(cc328fb)
- *: Add Travis build badge to README.
(0856b69)
- *: Remove unneeded files now that the testing script is inline.
(1ce41ba)
- *: Move script in to travis.yml file.
(18c1f2e)
- *: Add a sleep call to make sure the server has time to spin up.
(96c4cf5)
- *: Specify required CFML versions.
(cce8483)
- *: Major refactoring to support ACF10
(3abeb67)
- *: Specify that Lucee 5 is a snapshot version.
(cfd0d23)
- *: Switch to the latest version of CommandBox for multi-server options.
(cefa79d)
- *: Add test result properties file to gitignore
(a19ea45)
- *: Add a gitkeep file to the tests results path so tests can run on Travis.
(5687ae0)
- *: Try to add travis support for multiple cf engines.
(2833375)
- *: Add README
(369e3c7)
- *: Move the list and array inferSqlType tests to the right block.
(917f132)
- *: Infer the sql type of lists and arrays based on if all the members share the same sql type; otherwise, default to CF_SQL_VARCHAR.
(7ae2548)
- *: Added orWhere{Column} dynamic method matching.
(b221bcd)
- *: Add whereIn and whereNotIn helper methods.
(118db23)
- *: Return the Builder to continue chaining on dynamic where methods.
(202127a)
- *: Add list functionality to the QueryUtils
extractBinding
(80dc5b0)
- *: Wrap the parameters in an "IN" or "NOT IN" clause.
(c69cae3)
- *: Simplify the operator list
(4ae3cf1)
- *: Upper case operators in SQL strings.
(d7ba404)
- *: Unify exception types for invalid operators and combinators
(c4b9d68)
- *: Don't open the browser automatically on server start. (Use
gulp watch
instead for BrowserSync.) :-)
(623517f)
- *: Refactor to Wirebox injection.
(54bc5e0)
- *: Infer the cfsqltype on bindings.
(3f53bd5)
- *: Refactor to new QueryUtils file for shared functionality.
(426e72d)
- *: Refactor bindings to use structs instead of values in preparation for cfsqltypes.
(90fc19c)
- *: Also allow the shortcut where syntax for the on method.
(c67bd66)
- *: Allow the shortcut where statement in joins.
(28fc828)
- *: Add join query bindings.
(ad911fa)
- *: Fix the SQL compilation order.
(ccbc273)
- *: Allow default settings with user overrides in the ModuleConfig.
(f2d2441)
- *: Fixes for new Quick module mapping.
(1caa4bc)
- *: Add box scripts to workflow
(23409ce)
- *: 0.1.1 (ad26504)
- *: Fix for mappings to work correctly in modules.
(7502394)
- *: Allow the join closure to be passed in as the second positional argument.
(9efbe5b)
- *: Work on Join clauses
(fb25c48)
- *: Implement joins
(c1f3228)
- *: Enable distinct flag.
Clean up duplication in tests.
Move src/ to models/
(7a83500)
- *: Set up BrowserSync with ColdBox Elixir
(8109613)
- *: Always upper case the combinator.
(b4b8e2b)
- *: Validate combinators
(e3bd0fe)
- *: Compile where statements
(e403216)
- *: Simple query execution
(a2b1090)
- *: Allow specifying the combinator (AND or OR)
.
(eb3d6e0)
- *: Add where values to the SQL bindings array.
(8dc4a47)
- *: Use ColdBox Elixir
(9925fe6)
- *: Run tests through CommandBox
(a2c350f)
- *: Just dump everything we'd been working on.
(9ff2c6c)
- *: Initial commit
(00d24a6)
perf
- QueryBuilder: Use native returntype where possible (ACF 2021+)
(3e7529d)
- QueryBuilder: arrayEach is slow compared to merging arrays (6f9a3e7)
- QueryBuilder: Use count to determine exists instead of the full query
(d51ecf4)
- BaseGrammar: Remove the need for duplicate or structCopy calls
(89ea9fc)
- SchemaBuilder: Replace duplicate() with structCopy() (d0237c8)
- SchemaBuilder: Removed case of isInstanceOf because it is slow (2d65d03)
- QueryBuilder: Remove isInstanceOf for performance benefits (33fe75c)
- QueryBuilder: Replace normalizeToArray with simpler Array check (d54bcce)
- BaseGrammar: Avoid isInstanceOf in wrapColumn (15042ce)