{"id":1880,"library":"sqlglotrs","title":"Deprecated: Rust-backed SQLGlot tokenizer","description":"SQLGlotrs was an optional Rust-backed tokenizer for the SQLGlot library, designed to accelerate SQL parsing performance. Introduced to provide significant speed improvements, it has since been deprecated. Users seeking performance enhancements should now use `sqlglot[c]`, which provides similar benefits through C extensions compiled with MyPyC.","status":"deprecated","version":"0.13.0","language":"en","source_language":"en","source_url":"https://github.com/tobymao/sqlglot","tags":["sql","parser","transpiler","deprecated","performance"],"install":[{"cmd":"pip install sqlglotrs","lang":"bash","label":"Original installation (DEPRECATED)"},{"cmd":"pip install \"sqlglot[c]\"","lang":"bash","label":"Recommended replacement for performance"}],"dependencies":[{"reason":"sqlglotrs was an optional tokenizer backend for the main sqlglot library.","package":"sqlglot"}],"imports":[{"note":"sqlglotrs primarily functioned as an internal tokenizer backend for the main `sqlglot` library. End-users would typically import functionalities directly from `sqlglot`, not `sqlglotrs`.","symbol":"parse_one","correct":"from sqlglot import parse_one"}],"quickstart":{"code":"from sqlglot import parse_one, exp\n\n# Example using the core sqlglot library functionality\nsql_query = \"SELECT a, b FROM my_table WHERE a > 10\"\nexpression_tree = parse_one(sql_query)\n\nprint(expression_tree.sql(dialect=\"mysql\"))\n\n# To get the performance benefits previously offered by sqlglotrs (now sqlglot[c]),\n# ensure sqlglot is installed with the '[c]' extra: pip install \"sqlglot[c]\"\n","lang":"python","description":"This quickstart demonstrates basic parsing and transpilation using the core `sqlglot` library. While `sqlglotrs` provided a faster tokenizer, its functionality was exposed through `sqlglot`'s API. For current performance benefits, install `sqlglot` with the `[c]` extra."},"warnings":[{"fix":"Migrate to using the `sqlglot[c]` extra for performance. Uninstall `sqlglotrs` and install `sqlglot` using `pip install \"sqlglot[c]\"`.","message":"The `sqlglotrs` package is deprecated and is no longer compatible with recent versions of `sqlglot`. Attempting to use `sqlglotrs` with modern `sqlglot` installations may lead to runtime errors or unexpected behavior.","severity":"breaking","affected_versions":"All versions of `sqlglotrs` with `sqlglot` versions > 20.3.0 which introduced `sqlglot[c]` as a replacement."},{"fix":"No new development or maintenance is expected. Users should transition to `sqlglot[c]` for continued performance benefits and compatibility with `sqlglot`.","message":"The `sqlglotrs` library is officially deprecated. Its PyPI summary explicitly states: 'Deprecated: use sqlglotc instead.'","severity":"deprecated","affected_versions":"All versions (0.x.x)"},{"fix":"Focus on the main `sqlglot` library and use `pip install \"sqlglot[c]\"` for enhanced performance. The performance benefits are integrated into `sqlglot` when the `[c]` extra is installed.","message":"Users often confuse `sqlglot`, `sqlglotrs`, and `sqlglotc`. `sqlglot` is the main Python SQL parsing library. `sqlglotrs` was an optional Rust-backed tokenizer for `sqlglot`, now replaced by `sqlglotc`, which provides C extensions for performance. Direct imports of `sqlglotrs` were generally not the intended usage.","severity":"gotcha","affected_versions":"All versions"}],"env_vars":null,"last_verified":"2026-04-09T00:00:00.000Z","next_check":"2026-07-08T00:00:00.000Z"}