Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
59 commits
Select commit Hold shift + click to select a range
068850e
Snowflake: parse CREATE OR REPLACE ROLE
sabir-akhadov-localstack Jun 23, 2026
a541ba8
Snowflake: parse CREATE/ALTER/DROP ROW ACCESS POLICY
sabir-akhadov-localstack Jun 23, 2026
98cc684
Snowflake: parse CREATE / DROP DATABASE ROLE
sabir-akhadov-localstack Jun 23, 2026
3fd1798
Snowflake: parse CREATE USER options without '=' separator
sabir-akhadov-localstack Jun 23, 2026
84c7e3c
Snowflake: always double quotes in EscapeQuotedString
hovaesco Jun 22, 2026
49b5093
Snowflake: parse CREATE DATABASE ROLE and qualified class create priv…
sabir-akhadov-localstack Jun 23, 2026
3cc0375
Snowflake: parse RLIKE/REGEXP infix form with NULL right operand
sabir-akhadov-localstack Jun 23, 2026
af8b716
Snowflake: parse CREATE / DROP ICEBERG TABLE
hovaesco Jun 23, 2026
ba170b1
Snowflake: parse SHOW PROCEDURES [LIKE]
sabir-akhadov-localstack Jun 24, 2026
fc77629
Snowflake: parse SHOW [TERSE] SEQUENCES [LIKE/IN ...]
sabir-akhadov-localstack Jun 24, 2026
abdb91a
Snowflake: parse SHOW [TERSE] PRIMARY/IMPORTED/EXPORTED KEYS
sabir-akhadov-localstack Jun 24, 2026
8d240b2
Snowflake: FILE_FORMAT = <name> shorthand in COPY INTO
Jun 22, 2026
6d1428e
Snowflake: test FILE_FORMAT = <name> shorthand; fix pre-existing rustfmt
Jun 22, 2026
18e99b5
Snowflake: parse ALL/FUTURE … IN DATABASE grant targets, STAGE/FILE F…
sabir-akhadov-localstack Jun 25, 2026
fcc476e
Snowflake: parse SHOW CONNECTIONS and SHOW SHARES [LIKE]
sabir-akhadov-localstack Jun 25, 2026
2df6479
Snowflake: parse multi-column ALTER TABLE ADD COLUMN
hovaesco Jun 26, 2026
8bab6fc
Snowflake: accept dollar-quoted text as a literal string
hovaesco Jun 29, 2026
2540681
Snowflake: parse ALTER TABLE ALTER COLUMN ... COMMENT
hovaesco Jun 29, 2026
17388b9
Snowflake: accept unquoted OAUTH_ALLOWED_SCOPES with colons (e.g. PRI…
hovaesco Jun 29, 2026
6b2da6b
Snowflake: don't require BASE_LOCATION for ICEBERG tables bound to an…
hovaesco Jun 29, 2026
5a99f8a
Snowflake: parse Python-UDF properties (runtime_version/handler/packa…
sabir-akhadov-localstack Jul 2, 2026
df342d6
Snowflake: parse SHOW PROCEDURES / SHOW FUNCTIONS [LIKE] IN <scope>
sabir-akhadov-localstack Jul 2, 2026
9ae984b
Snowflake: accept a placeholder in COPY INTO stage-name position
sabir-akhadov-localstack Jul 4, 2026
3f8a0ed
Snowflake: parse CREATE/ALTER/DROP TAG and SHOW TAGS
sabir-akhadov-localstack Jul 4, 2026
7044d97
Snowflake: parse ALTER <object> SET/UNSET TAG
sabir-akhadov-localstack Jul 5, 2026
cd6fd0d
Snowflake: don't consume statement terminator in parse_copy_into
sabir-akhadov-localstack Jul 4, 2026
448678e
Snowflake: parse PUT/GET file statements inside scripting bodies
sabir-akhadov-localstack Jul 5, 2026
b762150
Snowflake: parse ALTER SCHEMA SET/UNSET TAG
sabir-akhadov-localstack Jul 5, 2026
33afa1c
Snowflake: parse type-less column list in CREATE TABLE ... AS
sabir-akhadov-localstack Jul 7, 2026
afc556f
Snowflake: accept and discard HYBRID table modifier
sabir-akhadov-localstack Jul 7, 2026
3aad77c
Snowflake: parse CREATE OR REPLACE SEQUENCE
sabir-akhadov-localstack Jul 7, 2026
81db47f
Snowflake: parse CREATE SEQUENCE START/INCREMENT '=' form and ORDER/N…
sabir-akhadov-localstack Jul 7, 2026
e739dd1
Snowflake: parse TRANSIENT DYNAMIC, bare TARGET_LAG=DOWNSTREAM, INITI…
sabir-akhadov-localstack Jul 7, 2026
e561165
Snowflake: parse DROP/DESC/SHOW DYNAMIC TABLE, carrying dynamic-ness …
sabir-akhadov-localstack Jul 7, 2026
38667da
Snowflake: parse ALTER DYNAMIC TABLE SET/UNSET/RENAME/CLUSTER natively
sabir-akhadov-localstack Jul 7, 2026
281699d
Snowflake: make CHANGES AT/BEFORE bound optional
sabir-akhadov-localstack Jul 9, 2026
cc25e59
Snowflake: parse CREATE [OR REPLACE] STREAM [IF NOT EXISTS] <name> ON…
sabir-akhadov-localstack Jul 9, 2026
a6a00a8
Snowflake: parse SHOW STREAMS / DESCRIBE STREAM / ALTER STREAM COMMENT
sabir-akhadov-localstack Jul 9, 2026
c7af4d6
Snowflake: parse table-level STAGE_FILE_FORMAT on CREATE TABLE
sabir-akhadov-localstack Jul 10, 2026
60d7744
Snowflake: lower COPY FILE_FORMAT=() to the TOK_CONSTANT_LIST format-…
sabir-akhadov-localstack Jul 10, 2026
3e9ee9f
Snowflake: stop stage name identifier at comma for comma-join
Jul 10, 2026
c1dcee9
Snowflake tests: match new ShowObjects.dynamic field in SHOW OBJECTS …
Jul 10, 2026
ec7bd5c
Snowflake: roll back to general select-item for extended COPY data-lo…
Jul 10, 2026
988cd0a
Snowflake: accept single-quoted procedure body (AS '...')
sabir-akhadov-localstack Jul 14, 2026
36b0974
Snowflake: accept bare column ALTER ... COMMENT continuation (COLUMN …
hovaesco Jul 15, 2026
1c814f3
Snowflake: accept :placeholder as SELECT ... INTO target
sabir-akhadov-localstack Jul 20, 2026
9f387b7
Snowflake: parse DESCRIBE / ALTER / TRUNCATE MATERIALIZED VIEW
claude Jul 21, 2026
2c5d82f
Snowflake: parse CREATE/ALTER/DROP/DESCRIBE/SHOW STORAGE INTEGRATION
Jul 22, 2026
2b9fdc4
Snowflake: parse FETCH INTO, CALL INTO, ALTER PROCEDURE, WITH AS PROC…
sabir-akhadov-localstack Jul 22, 2026
f611954
Snowflake: parse LIKE/ILIKE ANY/ALL multi-pattern lists
hovaesco Jul 22, 2026
592894c
Snowflake: parse inline stage args in COPY INTO transformation subquery
Jul 23, 2026
0cb6820
Snowflake: parse CREATE STREAM ON VIEW; add StreamSourceKind discrimi…
hovaesco Jul 24, 2026
0e5e26e
Snowflake: parse informational constraint properties (ENABLE/VALIDATE…
hovaesco Jul 27, 2026
ae2fd4a
Add ColumnDef::clear_constraint_characteristics
hovaesco Jul 27, 2026
b5e11f2
Snowflake: parse masking policy statement family
sabir-akhadov-localstack Jul 29, 2026
4238599
Snowflake: decode octal/hex/unicode string-literal escapes
Jul 29, 2026
acb6baa
Snowflake: parse ALTER TAG SET/UNSET MASKING POLICY
sabir-akhadov-localstack Jul 30, 2026
cbd33aa
Snowflake: parse DESC TABLE <name> TYPE = { COLUMNS | STAGE }
hovaesco Jul 30, 2026
b40e584
Snowflake: parse UNDROP <TABLE|DYNAMIC TABLE|SCHEMA|DATABASE|VIEW> <n…
sabir-akhadov-localstack Jul 30, 2026
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 4 additions & 1 deletion src/ast/dcl.rs
Original file line number Diff line number Diff line change
Expand Up @@ -311,6 +311,8 @@ impl fmt::Display for SecondaryRoles {
pub struct CreateRole {
/// Role names to create.
pub names: Vec<ObjectName>,
/// Whether `OR REPLACE` was specified.
pub or_replace: bool,
/// Whether `IF NOT EXISTS` was specified.
pub if_not_exists: bool,
// Postgres
Expand Down Expand Up @@ -353,7 +355,8 @@ impl fmt::Display for CreateRole {
fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result {
write!(
f,
"CREATE ROLE {if_not_exists}{names}{superuser}{create_db}{create_role}{inherit}{login}{replication}{bypassrls}",
"CREATE {or_replace}ROLE {if_not_exists}{names}{superuser}{create_db}{create_role}{inherit}{login}{replication}{bypassrls}",
or_replace = if self.or_replace { "OR REPLACE " } else { "" },
if_not_exists = if self.if_not_exists { "IF NOT EXISTS " } else { "" },
names = display_separated(&self.names, ", "),
superuser = match self.superuser {
Expand Down
Loading
Loading