Open
Conversation
3fd7c5d to
a90a4bd
Compare
Signed-off-by: vaggelisd <daniasevangelos@gmail.com>
a90a4bd to
8df9c29
Compare
Collaborator
Author
|
The DuckDB test failure is preexisting |
Signed-off-by: vaggelisd <daniasevangelos@gmail.com>
45dbbbc to
264240e
Compare
Signed-off-by: vaggelisd <daniasevangelos@gmail.com>
7e212c0 to
9b9261d
Compare
georgesittas
approved these changes
Mar 18, 2026
Signed-off-by: vaggelisd <daniasevangelos@gmail.com>
5bca319 to
c65b310
Compare
tobymao
approved these changes
Mar 18, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary of Changes
pyproject.tomlsqlglot[rs]~=28.10.1→sqlglot~=30.0.1[rs]extra removed (replaced bysqlglot)sqlmesh/,tests/,web/exp.Expression→exp.Exprin all type hints, isinstance checks, and type casts. Class definitions remain asexp.Expressionsubclassesexp.Expras the new base class;Expressionis now a subclass. Functions likeexp.alias_(),exp.func(),parse_one()returnExpr, causing mypy errors when assigned toExpression-typed variables. Custom expression classes must still inheritExpressionsinceExprdoesn't support constructor argumentssqlmesh/core/schema_diff.py,tests/core/integration/utils.pyexp.DataType.Type→exp.DTypein type annotationsDataType.Typeenum is no longer recognized as a valid type by mypy;exp.DTypeis the v30 aliassqlmesh/core/dialect.pyAthenaTrinoParser, updatedself.expression()callsexpression()now takes pre-constructed objectssqlmesh/utils/jinja.pyExpressionfromsqlglot.expressionsinstead ofsqlglotsqlglot.expressionsis now a package; top-level re-export changedsqlmesh/core/model/kind.pymeta["sql"]in_time_data_type_validatorDataType.buildnow preserves the parsed expression directly. Our_parse_typesextension setsmeta["sql"], which the pydantic encoder prioritizes over dialect-aware renderingsqlmesh/core/model/meta.pyINTno longer auto-maps toBIGINTduringDataType.build; roundtripping through dialect SQL restores canonical form for stable data hashessqlmesh/utils/metaprogramming.py_resolve_import_module()to walk module hierarchy for re-exportsto_table.__module__is nowsqlglot.expressions.buildersbut it's re-exported fromsqlglot.expressions; generated import statements must use the public modulesqlmesh/core/context_diff.pysqlglotctoIGNORED_PACKAGESsqlglotc(C extension); dependency detection was picking it up as a user requirementtests/core/test_macros.pyARRAY_GENERATE_RANGEarithmetic(DATEDIFF(...) + 1 - 1) + 1toDATEDIFF(...) + 1tests/core/test_config.pyColumnclass now reports__module__assqlglot.expressions.coreinstead ofsqlglot.expressions