gitbase

SQL interface to git repositories, written in Go. https://docs.sourced.tech/gitbase

APACHE-2.0 License

Stars
2.1K
Committers
31

Bot releases are hidden (Show)

gitbase - v0.20.0-rc3

Published by ajnavarro over 5 years ago

Breaking changes

  • Now relative paths are used as repository_id instead of folder name

Bugfixes

  • rule: fix squash rule with convert_dates
  • cmd/server/commands: use relative path as id instead of last part (#816)
  • handle backslashes correctly

New features

  • function: implement is_vendor function (#830)
gitbase - v0.20.0-rc2

Published by ajnavarro over 5 years ago

Bugfixes

  • vendor: upgrade go-mysql-server
gitbase - v0.20.0-rc1

Published by ajnavarro over 5 years ago

Known issues

Breaking changes

  • COUNT expression is returning now int64 instead of int32
  • uast_extract function now returns a JSON for pos instead of a custom format

Bugfixes

New features

Documentation

  • Now all relevant go-mysql-server documentation is directly accessible from gitbase docs instead of pointing to external links.
  • Docs: document in-memory joins in optimization docs https://github.com/src-d/gitbase/pull/742

Performance improvements

gitbase - v0.20.0-beta4

Published by ajnavarro over 5 years ago

Known issues

Bugfixes

New features

Performance improvements

gitbase - v0.20.0-beta3

Published by ajnavarro over 5 years ago

Known issues

  • Index creation is abnormally slow. We are working to improve that.

Bugfixes

  • Don't skip repositories for remotes table with more than 1 URL https://github.com/src-d/gitbase/pull/789
  • server: correctly set binary charset on blob fields
  • sql/parse: allow qualified table names on SHOW CREATE TABLE
  • plan: types in lowercase on SHOW CREATE TABLE

New features

  • sql/expression: new DATE function
  • sql: add support for intervals, DATE_SUB and DATE_ADD
  • sql: from_base64 and to_base64 functions
  • sql: add SLEEP function

Documentation

  • Now all relevant go-mysql-server documentation is directly accessible from gitbase docs instead of pointing to external links.

Performance improvements

  • sql/index/pilosa: parallelize index creation
gitbase - v0.20.0-beta2

Published by ajnavarro over 5 years ago

Bugfixing

gitbase - v0.20.0-beta1

Published by ajnavarro over 5 years ago

Breaking changes

  • COUNT expression is returning now int64 instead of int32
  • uast_extract function now returns a JSON for pos instead of a custom format

Bugfixes

New features

Documentation

Performance improvements

gitbase - v0.19.0

Published by ajnavarro over 5 years ago

Breaking changes

  • The way commits are iterated now changed. The new functionality is similar to git log --all command. It is ~3 times faster, but we are ignoring orphan commits (as git does).
  • 0.18.0 indexes are not compatible with this new version.

Bugfixes

New features

  • Update Bblfsh and Enry dependencies https://github.com/src-d/gitbase/pull/707
  • cli: add --log-level option
  • Adds a new optional feature behind EXPERIMENTAL_IN_MEMORY_JOIN environment variable to activate in-memory inner joins, which are faster but less memory efficient.
  • Index checksum. If the index does not match the previous checksum, they're not used. That is, if the repositories changed. NOTE: indexes created prior to this version will not work.
  • e2e tests against built binary.

Documentation

  • Add security section

Performance improvements

  • Perf: Traverse commit history instead of reading the packfile
gitbase - v0.19.0-rc2

Published by ajnavarro over 5 years ago

Bugfixing

  • Fix KILL QUERY command
gitbase - v0.19.0-rc1

Published by ajnavarro over 5 years ago

Bugfixing

New features

Documentation

  • Add security section
gitbase - v0.19.0-beta4

Published by ajnavarro over 5 years ago

Breaking changes

  • The way commits are iterated now changed. The new functionality is similar to git log --all command. It is ~3 times faster, but we are ignoring orphan commits (as git does).

Performance improvements

  • Perf: Traverse commit history instead of reading the packfile
gitbase - v0.19.0-beta3

Published by ajnavarro over 5 years ago

Bugfixing

New features

  • cli: add --log-level option
  • Adds a new optional feature behind EXPERIMENTAL_IN_MEMORY_JOIN environment variable to activate in-memory inner joins, which are faster but less memory efficient.
gitbase - v0.19.0-inmemjoin

Published by erizocosmico over 5 years ago

Do not use this release, it's an experimental release

New features

  • Adds a new optional feature behind EXPERIMENTAL_IN_MEMORY_JOIN environment variable to activate in-memory inner joins, which are faster but less memory efficient.
gitbase - v0.19.0-beta2

Published by erizocosmico over 5 years ago

Bugfixes

  • Problem combining some OR filters with AND filters in non-squashed tables.
gitbase - v0.19.0-beta1

Published by erizocosmico over 5 years ago

New features

  • Index checksum. If the index does not match the previous checksum, they're not used. That is, if the repositories changed. NOTE: indexes created prior to this version will not work.
  • e2e tests against built binary.

Bugfixes

  • Solved a problem causing subqueries to cancel the main query.
gitbase - v0.18.0

Published by ajnavarro almost 6 years ago

Bugfixing

  • Replace one regex by pool of regex matchers to avoid panics on machines with a lot of cores.
  • *: fix query cancellation
  • Fix uast_extract panic.
  • Add explicit error when ON clause is missed on JOIN
  • Add error for subqueries as expressions (not supported)
  • Fix on filtered lookups using pilosa in
  • server: make gitbase the current database (#593)
  • sql/(plan, parse): fix show table status behavior
  • SQL: process list now shows client addres

New features

  • Show pushed down properties to tables in explain
  • Initialize global open tracing
  • multi-stage docker file
  • add warns to session on uast functions
  • function: implement NOW function
  • Follow symlinks on repository loading phase
  • IFNULL function
  • NULLIF function
  • MID and SUBSTR functions
  • TRIM, LTRIM, RTRIM functions
  • REVERSE, REPEAT, REPLACE functions
  • Upgrade MySQL + tableau support + auth interface.
  • function: make max bblfsh blob size configurable
  • *: make UAST functions fail on connection errors
  • function: log bblfsh errors on UAST instead of returning them
  • add information_schema db.
  • cli/server: use new auth interface
  • Add Trim, Ltrim, Rtrim
  • sql: add information_schema.schemata table
  • RPAD, LPAD
  • Add WarningCount to sql.Session interface
  • Add support for information_schema.columns
  • sql, function: add weekday and dayofweek
  • Implement DATABASE() function.
  • sql, function: add concat_ws
  • Add support for DEFAULT
  • sql: collect warnings and errors in the session
  • sql: function, added soundex
  • Add ln, log, log2, log10
  • sql/(parse,expression): implement unary minus
  • sql: support more timestamp formats
  • Implement group by index
  • feature: Power and Sqrt
  • modify uast functions and session to make use of bblfsh/client-go.v3
  • sql/(parse,expression): implement unary minus
  • sql: support more timestamp formats
  • sql: implement SHOW CREATE DATABASE statement
  • *: implement LOCK and UNLOCK of tables
  • *: add information_schema db with files and column_statistics tables
  • function: add CONNECTION_ID UDF
  • function: implement JSON_EXTRACT UDF
  • sql: expression: function: Add CEIL, CEILING, FLOOR
  • sql: expression: function: Add ROUND()
  • sql: plan: Add SHOW CREATE TABLE
  • Implementation of COALESCE function.
  • sql: implement SHOW FIELDS statement
  • sql: implement LIKE expression
  • sql: expression: function: Add LOWER, UPPER
  • sql/parse: strip comments from queries

Performance improvements

  • Remove duplicate filters in squashed ref_commits
  • Do not iterate all references in squashed ref_commits
  • Update go-git version to 4.8.1
  • analyzer: add rule to prune unnecessary columns
  • Update Dockerfile to reduce image size
  • sql/analyzer: add rule to avoid unnecessary casts
  • update to [email protected]
  • sql: add timing info to span traces

Documentation

  • Upgrade bblfshd version in docs.
  • docs: add explanation about using explain to assess performance issues
  • docs: add example of how to use show processlist
  • examples: added repository_ids in non-natural joins
  • docs: add missing supported expressions
  • docs: reflect changes introduced by UAST v2 in the documentation
  • docs: add supported clients
gitbase - v0.18.0-beta.3

Published by ajnavarro almost 6 years ago

Bugfixing

  • Fix uast_extract panic.
  • Add explicit error when ON clause is missed on JOIN
  • Add error for subqueries as expressions (not supported)
  • Fix on filtered lookups using pilosa indexes.

New features

  • Follow symlinks on repository loading phase
  • IFNULL function
  • NULLIF function
  • MID and SUBSTR functions
  • TRIM, LTRIM, RTRIM functions
  • REVERSE, REPEAT, REPLACE functions
gitbase - v0.18.0-beta.2

Published by ajnavarro almost 6 years ago

Bugfixing

  • server: make gitbase the current database (#593)
  • sql/(plan, parse): fix show table status behavior
  • SQL: process list now shows client address

New features

  • Upgrade MySQL + tableau support + auth interface.
  • function: make max bblfsh blob size configurable
  • *: make UAST functions fail on connection errors
  • function: log bblfsh errors on UAST instead of returning them
  • add information_schema db.
  • cli/server: use new auth interface
  • Add Trim, Ltrim, Rtrim
  • sql: add information_schema.schemata table
  • RPAD, LPAD
  • Add WarningCount to sql.Session interface
  • Add support for information_schema.columns
  • sql, function: add weekday and dayofweek
  • Implement DATABASE() function.
  • sql, function: add concat_ws
  • Add support for DEFAULT
  • sql: collect warnings and errors in the session
  • sql: function, added soundex
  • Add ln, log, log2, log10
  • sql/(parse,expression): implement unary minus
  • sql: support more timestamp formats
  • Implement group by index
  • feature: Power and Sqrt

Performance improvements

  • Update Dockerfile to reduce image size
  • sql/analyzer: add rule to avoid unnecessary casts
  • update to [email protected]

Documentation

  • docs: add example of how to use show processlist
  • examples: added repository_ids in non-natural joins
  • docs: add missing supported expressions
gitbase - v0.18.0-beta.1

Published by ajnavarro almost 6 years ago

Breaking changes

  • Old queries using UAST functions might not be compatible after upgrade bblfsh to latest v3 client version. Some Xpath queries changed.

New features

  • modify uast functions and session to make use of bblfsh/client-go.v3
  • sql/(parse,expression): implement unary minus
  • sql: support more timestamp formats
  • sql: implement SHOW CREATE DATABASE statement
  • *: implement LOCK and UNLOCK of tables
  • *: add information_schema db with files and column_statistics tables
  • function: add CONNECTION_ID UDF
  • function: implement JSON_EXTRACT UDF
  • sql: expression: function: Add CEIL, CEILING, FLOOR
  • sql: expression: function: Add ROUND()
  • sql: plan: Add SHOW CREATE TABLE
  • Implementation of COALESCE function.
  • sql: implement SHOW FIELDS statement
  • sql: implement LIKE expression
  • sql: expression: function: Add LOWER, UPPER
  • sql/parse: strip comments from queries

Performance improvements

  • sql: add timing info to span traces

Documentation

  • docs: reflect changes introduced by UAST v2 in the documentation
  • docs: add supported clients
gitbase - v0.17.1

Published by jbeardly almost 6 years ago

Bugfixing

  • Fix error using indexes