Releases: JSQLParser/JSqlParser
Releases · JSQLParser/JSqlParser
jsqlparser-5.0
What's Changed
Changes and new Features
- feat: Salesforce SOQL
INCLUDES
andEXCLUDES
operators by @lucarota in #1985 - Add module info by @bowbahdoe in #1998
- Add missing java.sql require by @bowbahdoe in #1999
- feat: Capture expression name part delimiters by @mountaincrab in #2001
- fix: set
stringValue
inDoubleValue.setValue
by @Qnzvna in #2009 - support custom DeParser by @redkale in #2013
- feat: Allow OUTER keyword as function parameter name by @mountaincrab in #2021
New Contributors
- @lucarota made their first contribution in #1985
- @bowbahdoe made their first contribution in #1998
- @mountaincrab made their first contribution in #2001
- @Qnzvna made their first contribution in #2009
- @redkale made their first contribution in #2013
Full Changelog: jsqlparser-4.9...jsqlparser-5.0
jsqlparser-4.9
What's Changed
Changes and new Features
- feat: support any number/order of merge operations by @davidjgoss in #1938
- feat: Build with Automatic-Module-Name for compatibility with the Java module system. by @broneill in #1941
- fix: ExpressionVisitor.visit(AllTableColumns) method isn't being called. by @broneill in #1942
- feat: support keyword "only" for postgresql by @SheldonKubor in #1952
- feat: support Informix keywords "with no log" by @SheldonKubor in #1953
- support oracle alter table truncate partition by @SheldonKubor in #1954
- fix: issue1875 by @SheldonKubor in #1957
- fix: tables not find in parentheses join sql. by @Hanchers in #1956
- fix: Fixes parsing failing for ALTER MODIFY queries not containing datatype by @Tanish0019 in #1961
- feat: add additional CREATE VIEW modifiers by @davidjgoss in #1964
- Guard Values against null/empty values by @pingpingy1 in #1965
- fix: make analytic expression visitor null-safe by @davidjgoss in #1944
- Handle select in ExpressionVisitorAdapter by @sivaraam in #1972
New Contributors
- @broneill made their first contribution in #1941
- @SheldonKubor made their first contribution in #1952
- @Hanchers made their first contribution in #1956
- @Tanish0019 made their first contribution in #1961
- @pingpingy1 made their first contribution in #1965
Full Changelog: jsqlparser-4.8...jsqlparser-4.9
jsqlparser-4.8
What's Changed
Changes and new Features
- feat:support clickhouse global keyword in IN Expression by @herbert2008 in #1794
- add support for index hints in Update statement for MySQL by @joeqiao1984 in #1662
- added support for T-SQL left and right joins (= and =) by @nbauma109 in #738
- Unit tests support multi-os and higher versions of jdk by @human-user in #1886
- feat: add support for snowflake merge statements by @davidjgoss in #1887
- Fix typo in migration.rst by @esabol in #1888
- feat: Add support for
REFRESH MATERIALIZED VIEW
by @jxnu-liguobin in #1911 - feat: Add support comment in
create view
for MySQL and MariaDb by @jxnu-liguobin in #1913 - Fix conflict by @jxnu-liguobin in #1915
- Fix: Support Drop Key by @jxnu-liguobin in #1917
- Fix: mysql and mariadb can use
index type
beforeON
by @jxnu-liguobin in #1918 - Fix: [MySQL] Add
COMMENT
forALTER ADD
by @jxnu-liguobin in #1919 - feat: Support
RENAME INDEX
for MySQL,RENAME CONSTRAINT
for PostgreSQL by @jxnu-liguobin in #1920 - feat: [MySQL] Support
TABLE STATEMENT
by @jxnu-liguobin in #1921 - feat: Support
FOR SHARE
by @jxnu-liguobin in #1922 - feat: support mysql with rollup by @jxnu-liguobin in #1923
- Fix: ALTER INDEX COMMENT by @jxnu-liguobin in #1932
- Fix: DESC and EXPLAIN by @jxnu-liguobin in #1933
- Fix: mysql comment with
=
by @jxnu-liguobin in #1936
New Contributors
- @herbert2008 made their first contribution in #1794
- @joeqiao1984 made their first contribution in #1662
- @nbauma109 made their first contribution in #738
- @human-user made their first contribution in #1886
- @davidjgoss made their first contribution in #1887
- @esabol made their first contribution in #1888
- @jxnu-liguobin made their first contribution in #1911
Full Changelog: jsqlparser-4.7...jsqlparser-4.8
jsqlparser-4.7
New API
This is an API breaking release! Please see the migration guide: https://jsqlparser.github.io/JSqlParser/migration.html
Detailed Change Log: https://jsqlparser.github.io/JSqlParser/changelog.html
What's Changed
Changes and new Features
- Assorted Fixes #6 by @manticore-projects in #1740
- ignoring unnecessarily generated surefire report by @optimizing-ci-builds in #1748
- Assorted Fixes #7 by @manticore-projects in #1745
- Refactor Parenthesed SelectBody and FromItem by @manticore-projects in #1754
- Ignoring unnecessarily generated by pmd plugin by @optimizing-ci-builds in #1763
- Ignoring unnecessarily generated jacoco report by @optimizing-ci-builds in #1762
- Fix #1758: Use long for Feature.timeOut by @zaza in #1759
- JSQLParser 5.0 by @manticore-projects in #1778
- Assorted Fixes #8 by @manticore-projects in #1807
- Backslash Quotation of Single-Quote
'\\''
by @manticore-projects in #1813 - feat: add support for INTERPRET function parsing by @matteosist in #1816
- Update Gradle JavaCC parser to latest version (3.0.0) by @zbynek in #1843
- Fixing a problem with an OP_CONCAT in WhenExpression by @amigalev in #1837
New Contributors
- @optimizing-ci-builds made their first contribution in #1748
- @matteosist made their first contribution in #1816
- @zbynek made their first contribution in #1843
- @amigalev made their first contribution in #1837
Full Changelog: jsqlparser-4.6...jsqlparser-4.7
jsqlparser-4.6
What's Changed
Changes and new Features
- Using own Feature - constant for "delete with returning" #1597 by @gitmotte in #1598
- fix Issues: #1524 support hive alter sql : ALTER TABLE name ADD COLUMNS (col type,col2 type.....) by @Zhumin-lv-wn in #1605
- Fixes PR #1524 support hive alter sql by @manticore-projects in #1609
- Closes #1604, added simple OVERLAPS support by @d2a-raudenaerde in #1611
- Support timestamptz dateliteral by @tpoll in #1621
- fix: add missing public Getter by @manticore-projects in #1632
- Support BigQuery SAFE_CAST (#1622) by @dequn in #1634
- Bump h2 from 1.4.200 to 2.1.210 by @dependabot in #1639
- Assorted fixes by @manticore-projects in #1646
- Support for SKIP LOCKED tokens on SELECT FOR UPDATE statements by @lucasdillmann in #1649
- Enhanced Keywords by @manticore-projects in #1382
- Keywords2: Update whitelisted Keywords by @manticore-projects in #1653
- Fix parsing statements with multidimensional array PR2 by @manticore-projects in #1665
- Assorted fixes by @manticore-projects in #1666
- Fixed download war script in the renderRR task by @haha1903 in #1659
- Assorted Fixes #4 by @manticore-projects in #1676
- Fix #1686: add support for creating views with "IF NOT EXISTS" clause by @zaza in #1690
- Support DROP MATERIALIZED VIEW statements by @zaza in #1711
- Assorted Fixes #5 by @manticore-projects in #1715
- Sphinx Website by @manticore-projects in #1624
- Added support for SHOW INDEX from table by @jayant-kumar-yadav in #1704
- Issue1673 case within brackets by @manticore-projects in #1675
- Oracle Alternative Quoting by @manticore-projects in #1722
New Contributors
- @Zhumin-lv-wn made their first contribution in #1605
- @tpoll made their first contribution in #1621
- @dequn made their first contribution in #1634
- @lucasdillmann made their first contribution in #1649
- @haha1903 made their first contribution in #1659
- @zaza made their first contribution in #1690
- @jayant-kumar-yadav made their first contribution in #1704
Full Changelog: jsqlparser-4.5...jsqlparser-4.6
jsqlparser-4.5
- UnsupportedStatement support instead of throwing Exceptions
- support for RETURNING clause of a DELETE statement
- Add support for
... ALTER COLUMN ... DROP DEFAULT
INSERT
supportsSetOperations
(e. g.INSERT INTO ... SELECT ... FROM ... UNION SELECT ... FROM ...
), thoseSetOperations
are used both forSELECT
andVALUES
clauses (API change) in order to simplify the Grammar(WITH ... SELECT ...)
statements within brackets are now supported- Postgres
NATURAL { INNER | LEFT | RIGHT } JOIN
support - extended support for Hive dialect
GROUPING SETS
- support for Postgresql drop function
- support table option character set and index options
- support Postgresql optional TABLE in TRUNCATE
- support for
ANALYZE mytable
- PostgreSQL
INSERT INTO ... ON CONFLICT ... DO ...
statements - implement Parser Timeout Feature, e. g.
CCJSqlParserUtil.parse(sqlStr, parser -> parser.withTimeOut(60000));
- extended support Postgres'
Extract( field FROM source)
wherefield
is a String instead of a Keyword - support for
DROP column IF EXISTS
What's Changed
Changes and new Features
- Performance Improvements by @manticore-projects in #1439
- Update bug_report.md by @manticore-projects in #1512
- Unsupported statement by @manticore-projects in #1519
- fixs #1520 by @chiangcho in #1521
- #1527 DELETE ... RETURNING ... by @manticore-projects in #1528
- Add support for
... ALTER COLUMN ... DROP DEFAULT
by @manticore-projects in #1532 - #1516 rename without column keyword by @manticore-projects in #1533
- INSERT with SetOperations by @manticore-projects in #1531
- Allow isolation keywords as column name and aliases by @tomershay in #1534
- compound statement tests by @rathboma in #1545
- Postgres NATURAL LEFT/RIGHT joins by @manticore-projects in #1560
- Add support for Hive dialect GROUPING SETS. by @qzchenwl in #1539
- add support for postgres drop function statement by @rrrship in #1557
- Add test for LikeExpression.setEscape and LikeExpression.getStringExpression by @lacinoire in #1568
- Support table option character set and index options by @luoffei in #1586
- Closes #1583:: Implement Postgresql optional TABLE in TRUNCATE by @d2a-raudenaerde in #1585
- Closes #1579. Added ANALYZE support. by @d2a-raudenaerde in #1587
- Extended support Postgres' Extract( field FROM source) by @manticore-projects in #1591
- Configurable Parser Timeout via Feature by @manticore-projects in #1592
- PostgreSQL INSERT ... ON CONFLICT Issue #1551 by @manticore-projects in #1552
- add support for drop column if exists by @rrrship in #1594
- @rathboma made their first contribution in #1545
- @qzchenwl made their first contribution in #1539
- @rrrship made their first contribution in #1557
- @lacinoire made their first contribution in #1568
- @luoffei made their first contribution in #1586
- @d2a-raudenaerde made their first contribution in #1585
New Contributors
Full Changelog: jsqlparser-4.4...jsqlparser-4.5
JSqlParser 4.4
- support for timestamp with local time zone
- improved support for quoted identifiers in casts
- support for top with ties
- support for operators <-> and <#>
- improvement of test methods
- validation bugfixes
- Json function Improvements and Bugfix #1506
jsqlparser-4.3
- moved to JUnit 5 as a test framework
- added IGNORE NULLS to window functions
- Postgres compliant ALTER TABLE schema.oldTableName RENAME TO newTableName
- added use of * or mytable.* as a function parameter
- enhanced support for ddl drop of indexes
- support alias for Unpivot statement
- support for limit and offset expressions
- support for special JSON_OBJECT function parsing
- allow ComplexExpressions for CASE expression (preview)
- support MYSQL modifiers for DELETE / UPDATE
- support for Postgres Dollar quotation:
$$mystring$$ - support for expression in escaping of a like expression: LIKE ? ESCAPE ?
- support for CREATE OR REPLACE TABLE
- support for multi column unpivot
- support for RESTART in Postgres ALTER SEQUENCE
- improved support of IGNORE NULLS in window functions
- upgraded some maven plugin versions
JSqlParser 4.2
- API change: Support
SELECT ...
without aFROM
clause, makingSELECT 1, 2
andSELECT *
parsable statements (before those failed) - API change: Support complex
UPDATE
sets (using multipleSubQuery
orValueList
or Single Values, in combination) - Support nested
CASE
expressions with complex expression arguments - API change: Support
JOIN
with multiple trailingON
Expressions (JOIN ... JOIN ... ON ... ON ...
) - Support Oracle Hierarchical
CONNECT_BY_ROOT
Operator - Support Transact-SQL
IF ... ELSE ...
Statement Control Flows. - Allow optional parameters for the
ALTER TABLE ...
statement (e.g.ALTER TABLE ... MOVE TABLESPACE ...
) - Support Oracle
ALTER SYSTEM ...
statement - Support Oracle Named Function Parameters
Func( param1 => arg1, ...
- Add Gradle build
- Allow
JdbcParameter
orJdbcNamedParameter
for MySQL FullTextSearch - Allow
Cast
intoRow
Constructor - Support Oracle
RENAME ... TO ...
statement - Support Oracle
PURGE
statement - Support JSON functions
JSON_OBJECT()
,JSON_ARRAY()
,JSON_OBJECTAGG()
,JSON_ARRAYAGG()
- API change: merge ALL and ANY expressions class
- Allow DB2 compliant
CURRENT DATE
in addition toCURRENT_DATE
(without underscore)
jsqlparser-4.1
- RESET statement
- SET LOCAL|SESSION
- support for nested
WITH
CTEs - support for with (cte) for delete, update and merge
- introduce a max depth to allow parsing complex expression lists without performance loss (thx to @manticore-projects)
- allow all functions to have complex expressions as parameters (thx to @manticore-projects)
- API change FunctionWithCondParams production removed
- API change in ValuesStatement: the expression list is now hold as a ItemList and not as a List
- support for parser modification within parseExpression and parseCondExpression
- support for table schema for foreign keys
- support for Oracle hints on insert, update and merge
- support for merge insert where clause
- allow in as schema name
- allow skip, algorithm as column name
- support for functions in an interval expression
- subArray support arr[1:3]
- first support for tuples as simple expression SELECT myfunc((f1, f2))
- support for array constructors array[[1, 2], [id1, id2]]
- added support for NOT in MySqls REGEXP clause
- added support for WITH mytble as ( .. ) INSERT INTO ...
- added support for H2 casewhen function with conditional parameters