Releases: chaisql/chai
Releases · chaisql/chai
v0.10.0
v0.9.0
SQL
- Drop Duration type #212 @asdine
- Expose the
__genji_indexes
table #214 @tzzed - Add
ALTER TABLE ... ADD FIELD ...
#96 @tdakkota - Prevent creating a table if constraints are incoherent #222 @tdakkota
- Add
LIKE
operator #241 @tdakkota - Add
SELECT DISTINCT
#264 @tdakkota - fix:
IN
operator behavior with parentheses #207 @tdakkota - fix: Panic when parsing large integers #256 @goku321
- fix: Ignore currently unsupported regex operators #252 @tie
- fix: Panic on
SELECT
withLIMIT
min(0)
/max(0)
#257 @goku321 - fix: Panic when running GROUP BY on array values #208 @asdine
Core
- Implement driver.DriverContext and driver.Connector interfaces in sql/driver #213 @tie
- Add support for context.Context #206 #224 @tie @asdine
- Slightly more efficient conversion from JSON to document #270 @asdine
- Add support for embedded structs to
document.NewFromStruct
#225 @tzzed - Numbers are stored as double by default, unless a field constraint is specified during table creation #312 @asdine (:warning: Breaking change)
- fix: CI tests with nested modules #232 @tie
- fix: badgerengine benchmarks #209 @tie
- fix: Be more forgiving when scanning null values in StructScan #211 @tie
- fix: Badger tests on Windows #288 @tie
- ci: Add support for fuzzing #253 @tie
CLI
- Respect
NO_COLOR
andNO_HISTORY
environment variables #215 @tie - Add
.dump
command #181 @tzzed - Add
version
command #184 @cvhariharan - Add support for
exit
andhelp
commands without leading dot #180 @Amirhossein2000 - fix: Autocompletion panic when there is no suggestion #178 @tdakkota
- fix: Panic on genji version when compiled in GOPATH mode #261 @tdemin
v0.8.1
v0.8.0
SQL
- Add
BEGIN
,ROLLBACK
, andCOMMIT
statements #78 - Add support for paths in
UPDATE
statement #84 - Add
GROUP BY
clause #6 - Add
COUNT
aggregator #5 - Add
MIN
aggregator #165 - Add
MAX
aggregator #166 - Add
SUM
aggregator #4
Core
- Add codec system #177
- Remove introduction text when reading from STDIN #179
- Improved how values are indexed #194
- Indexes created on field who has a typed constraint are now typed #195
- Add support for array and document indexes #199
- Removed
encoding/json
dependency and use jsonparser instead #203
CLI
Bug fixes
v0.7.1
v0.7.0
SQL
- Add
REINDEX
statement #72 - Add
ALTER TABLE ... RENAME TO ...
statement #95 - Add new
__genji_tables
table #152 - Allow referencing current document in expression #147
Core
- Removed fixed size integers #130
- Renamed
float64
type todouble
#130 - Integers are now converted to double prior to comparison and indexing #146
- Encode documents using MessagePack #117
- Move
badgerengine
into its own module #140 - Replaced
memoryengine
with custom implementation #139 - Store table information in memory #142
- Add support for
time.Time
indocument.StructScan
CLI
- Add
.help
command #160 - Add
.indexes
command #100 - Add table suggestions after FROM keyword #159
- Ignore input with whitespace only #106
Bug fixes
- Prevent primary key overlap with concurrent inserts #74
- Fix behavior of ValueBuffer#Copy #111
- Fix
UPDATE ... SET
clause setting the wrong array indexes #91 - Fix display of field names with backquotes #64
- Arithmetic operators return null for incompatible types #105
- Fix parentheses behavior #131
- Fix
CAST
behavior #138 - Remove transaction promotion #150
v0.6.0
v0.5.0
v0.4.0
Core
- Support for Documents
- Functions for translating structs and maps into documents
- Renamed references to Record to Document
- Moved database logic to
database
package
SQL
- Insert documents using document notation
- Select sub fields
- Support for
ORDER BY
- Support for field constraints
Misc
- Removed code generation temporarily
- Improved shell auto completion
v0.3.0
Changelog
Core
- New
(db/tx).QueryRecord
method to query a single record - New
db.SQLDB
method that wraps the db into adatabase/sql
db - New
tx.ListTables
method - New
tx.ReIndex
method - New
tx.ReIndexAll
method - New index implementation
- Moved package
recordutil
torecord
- New
record.Scan
method
SQL
- Support
key()
function to return the primary key - Support specifying primary key of any type during a CREATE TABLE statement
- Generate autoincrementing default key instead of uuid
- Support multiple wildcards, fields and functions in SELECT statement
- Support
!=
operator - Support
==
operator as an alias for=
- Better support for NULL
- Parsed integers are converted to the smallest int size that fits
- Double quoted strings are now treated exclusively as identifiers
- Where expression containing only the primary key will benefit from a primary key optimization
- Float32 numbers no longer supported
Engines
- Open a BoltDB database without referencing the engine
- Badger now has its own module
- Upgrade Badger to v2
- Renamed
engine/memory
toengine/memoryengine
- Renamed
engine/bolt
toengine/boltengine
- Renamed
engine/badger
toengine/badgerengine
Command-line tool
- Code generation moved under
genji generate
command - Struct fields are lowercased by default
- Support for struct tag
genji:"pk"
removed - Struct tags are now used to rename a field
- New SQL shell
- Store history under
$HOME/.genji_history
database/sql
- Registers as a driver at startup
- Support
record.Scanner
as a scan target