Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package ast-grep for openSUSE:Factory 
checked in at 2024-09-23 15:23:39
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/ast-grep (Old)
 and      /work/SRC/openSUSE:Factory/.ast-grep.new.29891 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "ast-grep"

Mon Sep 23 15:23:39 2024 rev:41 rq:1202545 version:0.27.3+0

Changes:
--------
--- /work/SRC/openSUSE:Factory/ast-grep/ast-grep.changes        2024-09-09 
14:46:06.830866319 +0200
+++ /work/SRC/openSUSE:Factory/.ast-grep.new.29891/ast-grep.changes     
2024-09-23 15:24:36.567378631 +0200
@@ -1,0 +2,17 @@
+Mon Sep 23 07:03:46 UTC 2024 - Michael Vetter <mvet...@suse.com>
+
+- Update to 0.27.3:
+  * feat: add prettified pattern debug 70d33b5
+  * fix(deps): update rust crate pyo3 to v0.22.3 683e398
+  * test: add test for CST a79f13f
+
+-------------------------------------------------------------------
+Mon Sep 23 07:03:15 UTC 2024 - Michael Vetter <mvet...@suse.com>
+
+- Update to 0.27.2:
+  * feat: add follow symbolic links option to CLI #1461
+  * fix(deps): update dependency @swc/core to v1.7.26 e0b437d
+  * fix(deps): update dependency @swc/core to v1.7.24 657bc4e
+  * chore(deps): update dependency typescript to v5.6.2 c55a404
+
+-------------------------------------------------------------------

Old:
----
  ast-grep-0.27.1+0.tar.zst

New:
----
  ast-grep-0.27.3+0.tar.zst

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ ast-grep.spec ++++++
--- /var/tmp/diff_new_pack.ubvDpN/_old  2024-09-23 15:24:37.383412368 +0200
+++ /var/tmp/diff_new_pack.ubvDpN/_new  2024-09-23 15:24:37.387412534 +0200
@@ -17,7 +17,7 @@
 
 
 Name:           ast-grep
-Version:        0.27.1+0
+Version:        0.27.3+0
 Release:        0
 Summary:        A CLI tool for code structural search, lint and rewriting
 License:        MIT

++++++ _service ++++++
--- /var/tmp/diff_new_pack.ubvDpN/_old  2024-09-23 15:24:37.439414684 +0200
+++ /var/tmp/diff_new_pack.ubvDpN/_new  2024-09-23 15:24:37.443414849 +0200
@@ -3,7 +3,7 @@
     <param name="url">https://github.com/ast-grep/ast-grep.git</param>
     <param name="versionformat">@PARENT_TAG@+@TAG_OFFSET@</param>
     <param name="scm">git</param>
-    <param name="revision">0.27.1</param>
+    <param name="revision">0.27.3</param>
     <param name="match-tag">*</param>
     <param name="versionrewrite-pattern">v(\d+\.\d+\.\d+)</param>
     <param name="versionrewrite-replacement">\1</param>

++++++ ast-grep-0.27.1+0.tar.zst -> ast-grep-0.27.3+0.tar.zst ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/ast-grep-0.27.1+0/CHANGELOG.md 
new/ast-grep-0.27.3+0/CHANGELOG.md
--- old/ast-grep-0.27.1+0/CHANGELOG.md  2024-09-08 17:35:13.000000000 +0200
+++ new/ast-grep-0.27.3+0/CHANGELOG.md  2024-09-22 20:37:14.000000000 +0200
@@ -4,8 +4,25 @@
 
 Generated by [`auto-changelog`](https://github.com/CookPete/auto-changelog).
 
+#### [0.27.3](https://github.com/ast-grep/ast-grep/compare/0.27.2...0.27.3)
+
+- feat: add prettified pattern debug 
[`70d33b5`](https://github.com/ast-grep/ast-grep/commit/70d33b5d0efc2e55efe1fa8ea569e1d1e1115f68)
+- fix(deps): update rust crate pyo3 to v0.22.3 
[`683e398`](https://github.com/ast-grep/ast-grep/commit/683e398430820549ff5ac947766e829b0c1f7bc4)
+- test: add test for CST 
[`a79f13f`](https://github.com/ast-grep/ast-grep/commit/a79f13f857e8ec5dc890a1fd757893738ed8773e)
+
+#### [0.27.2](https://github.com/ast-grep/ast-grep/compare/0.27.1...0.27.2)
+
+> 14 September 2024
+
+- feat: add follow symbolic links option to CLI 
[`#1461`](https://github.com/ast-grep/ast-grep/issues/1461)
+- fix(deps): update dependency @swc/core to v1.7.26 
[`e0b437d`](https://github.com/ast-grep/ast-grep/commit/e0b437d3defa032d674b37fc375e21069b7d7c50)
+- fix(deps): update dependency @swc/core to v1.7.24 
[`657bc4e`](https://github.com/ast-grep/ast-grep/commit/657bc4e87ba0e290d51eed1a6214b1c6e5445a32)
+- chore(deps): update dependency typescript to v5.6.2 
[`c55a404`](https://github.com/ast-grep/ast-grep/commit/c55a4042e78fb4b626348fd4a06b8188d3e49f85)
+
 #### [0.27.1](https://github.com/ast-grep/ast-grep/compare/0.27.0...0.27.1)
 
+> 8 September 2024
+
 - fix:  create .gitkeep file in new dirs 
[`#1273`](https://github.com/ast-grep/ast-grep/issues/1273)
 - fix: fix unwrap error for unfound dir 
[`#1456`](https://github.com/ast-grep/ast-grep/issues/1456)
 - fix(deps): update dependency @swc/core to v1.7.23 
[`5fd4101`](https://github.com/ast-grep/ast-grep/commit/5fd410190717131f751de348493a8d09340a1960)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/ast-grep-0.27.1+0/Cargo.lock 
new/ast-grep-0.27.3+0/Cargo.lock
--- old/ast-grep-0.27.1+0/Cargo.lock    2024-09-08 17:35:13.000000000 +0200
+++ new/ast-grep-0.27.3+0/Cargo.lock    2024-09-22 20:37:14.000000000 +0200
@@ -92,9 +92,9 @@
 
 [[package]]
 name = "anyhow"
-version = "1.0.86"
+version = "1.0.89"
 source = "registry+https://github.com/rust-lang/crates.io-index";
-checksum = "b3d1d046238990b9cf5bcde22a3fb3584ee5cf65fb2765f454ed428c7a0063da"
+checksum = "86fdf8605db99b54d3cd748a44c6d04df638eb5dafb219b135d0149bd0db01f6"
 
 [[package]]
 name = "assert_cmd"
@@ -114,7 +114,7 @@
 
 [[package]]
 name = "ast-grep"
-version = "0.27.1"
+version = "0.27.3"
 dependencies = [
  "ansi_term",
  "anyhow",
@@ -145,7 +145,7 @@
 
 [[package]]
 name = "ast-grep-config"
-version = "0.27.1"
+version = "0.27.3"
 dependencies = [
  "anyhow",
  "ast-grep-core",
@@ -161,7 +161,7 @@
 
 [[package]]
 name = "ast-grep-core"
-version = "0.27.1"
+version = "0.27.3"
 dependencies = [
  "bit-set",
  "regex",
@@ -172,7 +172,7 @@
 
 [[package]]
 name = "ast-grep-dynamic"
-version = "0.27.1"
+version = "0.27.3"
 dependencies = [
  "ast-grep-core",
  "ignore",
@@ -184,7 +184,7 @@
 
 [[package]]
 name = "ast-grep-language"
-version = "0.27.1"
+version = "0.27.3"
 dependencies = [
  "ast-grep-core",
  "ignore",
@@ -217,12 +217,12 @@
 
 [[package]]
 name = "ast-grep-lsp"
-version = "0.27.1"
+version = "0.27.3"
 dependencies = [
  "ast-grep-config",
  "ast-grep-core",
  "ast-grep-language",
- "dashmap 6.0.1",
+ "dashmap 6.1.0",
  "serde",
  "serde_json",
  "tokio",
@@ -231,7 +231,7 @@
 
 [[package]]
 name = "ast-grep-napi"
-version = "0.27.1"
+version = "0.27.3"
 dependencies = [
  "ast-grep-config",
  "ast-grep-core",
@@ -250,7 +250,7 @@
 
 [[package]]
 name = "ast-grep-py"
-version = "0.27.1"
+version = "0.27.3"
 dependencies = [
  "anyhow",
  "ast-grep-config",
@@ -318,7 +318,7 @@
 
 [[package]]
 name = "benches"
-version = "0.27.1"
+version = "0.27.3"
 dependencies = [
  "ast-grep-config",
  "ast-grep-core",
@@ -429,9 +429,9 @@
 
 [[package]]
 name = "clap"
-version = "4.5.16"
+version = "4.5.18"
 source = "registry+https://github.com/rust-lang/crates.io-index";
-checksum = "ed6719fffa43d0d87e5fd8caeab59be1554fb028cd30edc88fc4369b17971019"
+checksum = "b0956a43b323ac1afaffc053ed5c4b7c1f1800bacd1683c353aabbb752515dd3"
 dependencies = [
  "clap_builder",
  "clap_derive",
@@ -439,9 +439,9 @@
 
 [[package]]
 name = "clap_builder"
-version = "4.5.15"
+version = "4.5.18"
 source = "registry+https://github.com/rust-lang/crates.io-index";
-checksum = "216aec2b177652e3846684cbfe25c9964d18ec45234f0f5da5157b207ed1aab6"
+checksum = "4d72166dd41634086d5803a47eb71ae740e61d84709c36f3c34110173db3961b"
 dependencies = [
  "anstream",
  "anstyle",
@@ -451,18 +451,18 @@
 
 [[package]]
 name = "clap_complete"
-version = "4.5.23"
+version = "4.5.29"
 source = "registry+https://github.com/rust-lang/crates.io-index";
-checksum = "531d7959c5bbb6e266cecdd0f20213639c3a5c3e4d615f97db87661745f781ff"
+checksum = "8937760c3f4c60871870b8c3ee5f9b30771f792a7045c48bcbba999d7d6b3b8e"
 dependencies = [
  "clap",
 ]
 
 [[package]]
 name = "clap_derive"
-version = "4.5.13"
+version = "4.5.18"
 source = "registry+https://github.com/rust-lang/crates.io-index";
-checksum = "501d359d5f3dcaf6ecdeee48833ae73ec6e42723a1e52419c79abf9507eec0a0"
+checksum = "4ac6a0c7b1a9e9a5186361f67dfa1b88213572f427fb9ab038efb2bd8c582dab"
 dependencies = [
  "heck",
  "proc-macro2",
@@ -634,9 +634,9 @@
 
 [[package]]
 name = "dashmap"
-version = "6.0.1"
+version = "6.1.0"
 source = "registry+https://github.com/rust-lang/crates.io-index";
-checksum = "804c8821570c3f8b70230c2ba75ffa5c0f9a4189b9a432b6656c536712acae28"
+checksum = "5041cc499144891f3790297212f32a74fb938e5136a14943f338ef9e0ae276cf"
 dependencies = [
  "cfg-if",
  "crossbeam-utils",
@@ -813,9 +813,9 @@
 
 [[package]]
 name = "globset"
-version = "0.4.14"
+version = "0.4.15"
 source = "registry+https://github.com/rust-lang/crates.io-index";
-checksum = "57da3b9b5b85bd66f31093f8c408b90a74431672542466497dcbdfdc02034be1"
+checksum = "15f1ce686646e7f1e19bf7d5533fe443a45dbfb990e00629110797578b42fb19"
 dependencies = [
  "aho-corasick",
  "bstr",
@@ -879,9 +879,9 @@
 
 [[package]]
 name = "ignore"
-version = "0.4.22"
+version = "0.4.23"
 source = "registry+https://github.com/rust-lang/crates.io-index";
-checksum = "b46810df39e66e925525d6e38ce1e7f6e1d208f72dc39757880fcb66e2c58af1"
+checksum = "6d89fd380afde86567dfba715db065673989d6253f42b88179abd3eae47bda4b"
 dependencies = [
  "crossbeam-deque",
  "globset",
@@ -895,9 +895,9 @@
 
 [[package]]
 name = "indexmap"
-version = "2.2.6"
+version = "2.5.0"
 source = "registry+https://github.com/rust-lang/crates.io-index";
-checksum = "168fb715dda47215e360912c096649d23d58bf392ac62f73919e831745e40f26"
+checksum = "68b900aa2f7301e21c36462b170ee99994de34dff39a4a6a528e80e7376d07e5"
 dependencies = [
  "equivalent",
  "hashbrown",
@@ -1069,9 +1069,9 @@
 
 [[package]]
 name = "napi"
-version = "2.16.9"
+version = "2.16.11"
 source = "registry+https://github.com/rust-lang/crates.io-index";
-checksum = "1277600d452e570cc83cf5f4e8efb389cc21e5cbefadcfba7239f4551e2e3e99"
+checksum = "53575dfa17f208dd1ce3a2da2da4659aae393b256a472f2738a8586a6c4107fd"
 dependencies = [
  "anyhow",
  "bitflags 2.5.0",
@@ -1091,9 +1091,9 @@
 
 [[package]]
 name = "napi-derive"
-version = "2.16.11"
+version = "2.16.12"
 source = "registry+https://github.com/rust-lang/crates.io-index";
-checksum = "150d87c4440b9f4815cb454918db498b5aae9a57aa743d20783fe75381181d01"
+checksum = "17435f7a00bfdab20b0c27d9c56f58f6499e418252253081bfff448099da31d1"
 dependencies = [
  "cfg-if",
  "convert_case",
@@ -1105,9 +1105,9 @@
 
 [[package]]
 name = "napi-derive-backend"
-version = "1.0.73"
+version = "1.0.74"
 source = "registry+https://github.com/rust-lang/crates.io-index";
-checksum = "0cd81b794fc1d6051acf8c4f3cb4f82833b0621272a232b4ff0cf3df1dbddb61"
+checksum = "967c485e00f0bf3b1bdbe510a38a4606919cf1d34d9a37ad41f25a81aa077abe"
 dependencies = [
  "convert_case",
  "once_cell",
@@ -1318,9 +1318,9 @@
 
 [[package]]
 name = "pyo3"
-version = "0.22.2"
+version = "0.22.3"
 source = "registry+https://github.com/rust-lang/crates.io-index";
-checksum = "831e8e819a138c36e212f3af3fd9eeffed6bf1510a805af35b0edee5ffa59433"
+checksum = "15ee168e30649f7f234c3d49ef5a7a6cbf5134289bc46c29ff3155fa3221c225"
 dependencies = [
  "anyhow",
  "cfg-if",
@@ -1337,9 +1337,9 @@
 
 [[package]]
 name = "pyo3-build-config"
-version = "0.22.2"
+version = "0.22.3"
 source = "registry+https://github.com/rust-lang/crates.io-index";
-checksum = "1e8730e591b14492a8945cdff32f089250b05f5accecf74aeddf9e8272ce1fa8"
+checksum = "e61cef80755fe9e46bb8a0b8f20752ca7676dcc07a5277d8b7768c6172e529b3"
 dependencies = [
  "once_cell",
  "target-lexicon",
@@ -1347,9 +1347,9 @@
 
 [[package]]
 name = "pyo3-ffi"
-version = "0.22.2"
+version = "0.22.3"
 source = "registry+https://github.com/rust-lang/crates.io-index";
-checksum = "5e97e919d2df92eb88ca80a037969f44e5e70356559654962cbb3316d00300c6"
+checksum = "67ce096073ec5405f5ee2b8b31f03a68e02aa10d5d4f565eca04acc41931fa1c"
 dependencies = [
  "libc",
  "pyo3-build-config",
@@ -1357,9 +1357,9 @@
 
 [[package]]
 name = "pyo3-macros"
-version = "0.22.2"
+version = "0.22.3"
 source = "registry+https://github.com/rust-lang/crates.io-index";
-checksum = "eb57983022ad41f9e683a599f2fd13c3664d7063a3ac5714cae4b7bee7d3f206"
+checksum = "2440c6d12bc8f3ae39f1e775266fa5122fd0c8891ce7520fa6048e683ad3de28"
 dependencies = [
  "proc-macro2",
  "pyo3-macros-backend",
@@ -1369,9 +1369,9 @@
 
 [[package]]
 name = "pyo3-macros-backend"
-version = "0.22.2"
+version = "0.22.3"
 source = "registry+https://github.com/rust-lang/crates.io-index";
-checksum = "ec480c0c51ddec81019531705acac51bcdbeae563557c982aa8263bb96880372"
+checksum = "1be962f0e06da8f8465729ea2cb71a416d2257dff56cbe40a70d3e62a93ae5d1"
 dependencies = [
  "heck",
  "proc-macro2",
@@ -1529,18 +1529,18 @@
 
 [[package]]
 name = "serde"
-version = "1.0.209"
+version = "1.0.210"
 source = "registry+https://github.com/rust-lang/crates.io-index";
-checksum = "99fce0ffe7310761ca6bf9faf5115afbc19688edd00171d81b1bb1b116c63e09"
+checksum = "c8e3592472072e6e22e0a54d5904d9febf8508f65fb8552499a1abc7d1078c3a"
 dependencies = [
  "serde_derive",
 ]
 
 [[package]]
 name = "serde_derive"
-version = "1.0.209"
+version = "1.0.210"
 source = "registry+https://github.com/rust-lang/crates.io-index";
-checksum = "a5831b979fd7b5439637af1752d535ff49f4860c0f341d1baeb6faf0f4242170"
+checksum = "243902eda00fad750862fc144cea25caca5e20d615af0a81bee94ca738f1df1f"
 dependencies = [
  "proc-macro2",
  "quote",
@@ -1560,9 +1560,9 @@
 
 [[package]]
 name = "serde_json"
-version = "1.0.127"
+version = "1.0.128"
 source = "registry+https://github.com/rust-lang/crates.io-index";
-checksum = "8043c06d9f82bd7271361ed64f415fe5e12a77fdb52e573e7f06a516dea329ad"
+checksum = "6ff5456707a1de34e7e37f2a6fd3d3f808c318259cbd01ab6377795054b483d8"
 dependencies = [
  "indexmap",
  "itoa",
@@ -1755,9 +1755,9 @@
 
 [[package]]
 name = "tokio"
-version = "1.39.3"
+version = "1.40.0"
 source = "registry+https://github.com/rust-lang/crates.io-index";
-checksum = "9babc99b9923bfa4804bd74722ff02c0381021eafa4db9949217e3be8e84fff5"
+checksum = "e2b070231665d27ad9ec9b8df639893f46727666c6767db40317fbe920a5d998"
 dependencies = [
  "backtrace",
  "bytes",
@@ -1785,9 +1785,9 @@
 
 [[package]]
 name = "toml_edit"
-version = "0.22.20"
+version = "0.22.21"
 source = "registry+https://github.com/rust-lang/crates.io-index";
-checksum = "583c44c02ad26b0c3f3066fe629275e50627026c51ac2e595cca4c230ce1ce1d"
+checksum = "3b072cee73c449a636ffd6f32bd8de3a9f7119139aff882f44943ce2986dc5cf"
 dependencies = [
  "indexmap",
  "toml_datetime",
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/ast-grep-0.27.1+0/Cargo.toml 
new/ast-grep-0.27.3+0/Cargo.toml
--- old/ast-grep-0.27.1+0/Cargo.toml    2024-09-08 17:35:13.000000000 +0200
+++ new/ast-grep-0.27.3+0/Cargo.toml    2024-09-22 20:37:14.000000000 +0200
@@ -11,7 +11,7 @@
 lto = true
 
 [workspace.package]
-version = "0.27.1"
+version = "0.27.3"
 authors = ["Herrington Darkholme 
<2883231+herringtondarkho...@users.noreply.github.com>"]
 edition = "2021"
 license = "MIT"
@@ -22,11 +22,11 @@
 readme = "README.md"
 
 [workspace.dependencies]
-ast-grep-core = { path = "crates/core", version = "0.27.1" }
-ast-grep-config = { path = "crates/config", version = "0.27.1" }
-ast-grep-dynamic = { path = "crates/dynamic", version = "0.27.1" }
-ast-grep-language = { path = "crates/language", version = "0.27.1" }
-ast-grep-lsp = { path = "crates/lsp", version = "0.27.1" }
+ast-grep-core = { path = "crates/core", version = "0.27.3" }
+ast-grep-config = { path = "crates/config", version = "0.27.3" }
+ast-grep-dynamic = { path = "crates/dynamic", version = "0.27.3" }
+ast-grep-language = { path = "crates/language", version = "0.27.3" }
+ast-grep-lsp = { path = "crates/lsp", version = "0.27.3" }
 
 bit-set = { version = "0.8.0" }
 ignore = { version = "0.4.22" }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/ast-grep-0.27.1+0/benches/package.json 
new/ast-grep-0.27.3+0/benches/package.json
--- old/ast-grep-0.27.1+0/benches/package.json  2024-09-08 17:35:13.000000000 
+0200
+++ new/ast-grep-0.27.3+0/benches/package.json  2024-09-22 20:37:14.000000000 
+0200
@@ -15,11 +15,11 @@
     "@babel/core": "7.25.2",
     "@babel/plugin-syntax-typescript": "7.25.4",
     "@oxidation-compiler/napi": "0.2.0",
-    "@swc/core": "1.7.23",
+    "@swc/core": "1.7.26",
     "benny": "3.7.1",
     "tree-sitter": "0.20.6",
     "tree-sitter-typescript": "0.21.2",
-    "typescript": "5.5.4"
+    "typescript": "5.6.2"
   },
   "devDependencies": {
     "@types/babel__core": "7.20.5",
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/ast-grep-0.27.1+0/benches/pnpm-lock.yaml 
new/ast-grep-0.27.3+0/benches/pnpm-lock.yaml
--- old/ast-grep-0.27.1+0/benches/pnpm-lock.yaml        2024-09-08 
17:35:13.000000000 +0200
+++ new/ast-grep-0.27.3+0/benches/pnpm-lock.yaml        2024-09-22 
20:37:14.000000000 +0200
@@ -18,8 +18,8 @@
     specifier: 0.2.0
     version: 0.2.0
   '@swc/core':
-    specifier: 1.7.23
-    version: 1.7.23
+    specifier: 1.7.26
+    version: 1.7.26
   benny:
     specifier: 3.7.1
     version: 3.7.1
@@ -30,8 +30,8 @@
     specifier: 0.21.2
     version: 0.21.2(tree-sitter@0.20.6)
   typescript:
-    specifier: 5.5.4
-    version: 5.5.4
+    specifier: 5.6.2
+    version: 5.6.2
 
 devDependencies:
   '@types/babel__core':
@@ -45,7 +45,7 @@
     version: 3.3.3
   ts-node:
     specifier: 10.9.2
-    version: 10.9.2(@swc/core@1.7.23)(@types/node@20.16.5)(typescript@5.5.4)
+    version: 10.9.2(@swc/core@1.7.26)(@types/node@20.16.5)(typescript@5.6.2)
 
 packages:
 
@@ -400,88 +400,88 @@
       '@oxidation-compiler/napi-win32-x64-msvc': 0.2.0
     dev: false
 
-  /@swc/core-darwin-arm64@1.7.23:
-    resolution: {integrity: 
sha512-yyOHPfti6yKlQulfVWMt7BVKst+SyEZYCWuQSGMn1KgmNCH/bYufRWfQXIhkGSj44ZkEepJmsJ8tDyIb4k5WyA==}
+  /@swc/core-darwin-arm64@1.7.26:
+    resolution: {integrity: 
sha512-FF3CRYTg6a7ZVW4yT9mesxoVVZTrcSWtmZhxKCYJX9brH4CS/7PRPjAKNk6kzWgWuRoglP7hkjQcd6EpMcZEAw==}
     engines: {node: '>=10'}
     cpu: [arm64]
     os: [darwin]
     requiresBuild: true
     optional: true
 
-  /@swc/core-darwin-x64@1.7.23:
-    resolution: {integrity: 
sha512-GzqHwQ0Y1VyjdI/bBKFX2GKm5HD3PIB6OhuAQtWZMTtEr2yIrlT0YK2T+XKh7oIg31JwxGBeQdBk3KTI7DARmQ==}
+  /@swc/core-darwin-x64@1.7.26:
+    resolution: {integrity: 
sha512-az3cibZdsay2HNKmc4bjf62QVukuiMRh5sfM5kHR/JMTrLyS6vSw7Ihs3UTkZjUxkLTT8ro54LI6sV6sUQUbLQ==}
     engines: {node: '>=10'}
     cpu: [x64]
     os: [darwin]
     requiresBuild: true
     optional: true
 
-  /@swc/core-linux-arm-gnueabihf@1.7.23:
-    resolution: {integrity: 
sha512-qwX4gB41OS6/OZkHcpTqLFGsdmvoZyffnJIlgB/kZKwH3lfeJWzv6vx57zXtNpM/t7GoQEe0VZUVdmNjxSxBZw==}
+  /@swc/core-linux-arm-gnueabihf@1.7.26:
+    resolution: {integrity: 
sha512-VYPFVJDO5zT5U3RpCdHE5v1gz4mmR8BfHecUZTmD2v1JeFY6fv9KArJUpjrHEEsjK/ucXkQFmJ0jaiWXmpOV9Q==}
     engines: {node: '>=10'}
     cpu: [arm]
     os: [linux]
     requiresBuild: true
     optional: true
 
-  /@swc/core-linux-arm64-gnu@1.7.23:
-    resolution: {integrity: 
sha512-TsrbUZdMaUwzI7+g/8rHPLWbntMKYSu5Bn5IBSqVKPeyqaXxNnlIUnWXgXcUcRAc+T+Y8ADfr7EiFz9iz5DuSA==}
+  /@swc/core-linux-arm64-gnu@1.7.26:
+    resolution: {integrity: 
sha512-YKevOV7abpjcAzXrhsl+W48Z9mZvgoVs2eP5nY+uoMAdP2b3GxC0Df1Co0I90o2lkzO4jYBpTMcZlmUXLdXn+Q==}
     engines: {node: '>=10'}
     cpu: [arm64]
     os: [linux]
     requiresBuild: true
     optional: true
 
-  /@swc/core-linux-arm64-musl@1.7.23:
-    resolution: {integrity: 
sha512-JEdtwdthazKq4PBz53KSubwwK8MvqODAihGSAzc8u3Unq4ojcvaS8b0CwLBeD+kTQ78HpxOXTt3DsFIxpgaCAA==}
+  /@swc/core-linux-arm64-musl@1.7.26:
+    resolution: {integrity: 
sha512-3w8iZICMkQQON0uIcvz7+Q1MPOW6hJ4O5ETjA0LSP/tuKqx30hIniCGOgPDnv3UTMruLUnQbtBwVCZTBKR3Rkg==}
     engines: {node: '>=10'}
     cpu: [arm64]
     os: [linux]
     requiresBuild: true
     optional: true
 
-  /@swc/core-linux-x64-gnu@1.7.23:
-    resolution: {integrity: 
sha512-V51gFPWaVAHbI1yg9ahsoya3aB4uawye3SZ5uQWgcP7wdCdiv60dw4F5nuPJf5Z1oXD3U/BslXuamv8Oh9vXqQ==}
+  /@swc/core-linux-x64-gnu@1.7.26:
+    resolution: {integrity: 
sha512-c+pp9Zkk2lqb06bNGkR2Looxrs7FtGDMA4/aHjZcCqATgp348hOKH5WPvNLBl+yPrISuWjbKDVn3NgAvfvpH4w==}
     engines: {node: '>=10'}
     cpu: [x64]
     os: [linux]
     requiresBuild: true
     optional: true
 
-  /@swc/core-linux-x64-musl@1.7.23:
-    resolution: {integrity: 
sha512-BBqQi4+UdeRqag3yM4IJjaHG4yc1o3l9ksENHToE0o/u2DT0FY5+K/DiYGZLC1JHbSFzNqRCYsa7DIzRtZ0A1A==}
+  /@swc/core-linux-x64-musl@1.7.26:
+    resolution: {integrity: 
sha512-PgtyfHBF6xG87dUSSdTJHwZ3/8vWZfNIXQV2GlwEpslrOkGqy+WaiiyE7Of7z9AvDILfBBBcJvJ/r8u980wAfQ==}
     engines: {node: '>=10'}
     cpu: [x64]
     os: [linux]
     requiresBuild: true
     optional: true
 
-  /@swc/core-win32-arm64-msvc@1.7.23:
-    resolution: {integrity: 
sha512-JPk6pvCKncL6bXG7p+NLZf8PWx4FakVvKNdwGeMrYunb+yk1IZf7qf9LJk8+GDGF5QviDXPs8opZrTrfsW80fA==}
+  /@swc/core-win32-arm64-msvc@1.7.26:
+    resolution: {integrity: 
sha512-9TNXPIJqFynlAOrRD6tUQjMq7KApSklK3R/tXgIxc7Qx+lWu8hlDQ/kVPLpU7PWvMMwC/3hKBW+p5f+Tms1hmA==}
     engines: {node: '>=10'}
     cpu: [arm64]
     os: [win32]
     requiresBuild: true
     optional: true
 
-  /@swc/core-win32-ia32-msvc@1.7.23:
-    resolution: {integrity: 
sha512-2Whxi8d+bLQBzJcQ5qYPHlk02YYVGsMVav0fWk+FnX2z1QRREIu1L1xvrpi7gBpjXp6BIU40ya8GiKeekNT2bg==}
+  /@swc/core-win32-ia32-msvc@1.7.26:
+    resolution: {integrity: 
sha512-9YngxNcG3177GYdsTum4V98Re+TlCeJEP4kEwEg9EagT5s3YejYdKwVAkAsJszzkXuyRDdnHUpYbTrPG6FiXrQ==}
     engines: {node: '>=10'}
     cpu: [ia32]
     os: [win32]
     requiresBuild: true
     optional: true
 
-  /@swc/core-win32-x64-msvc@1.7.23:
-    resolution: {integrity: 
sha512-82fARk4/yJ40kwWKY/gdKDisPdtgJE9jgpl/vkNG3alyJxrCzuNM7+CtiKoYbXLeqM8GQTS3wlvCaJu9oQ8dag==}
+  /@swc/core-win32-x64-msvc@1.7.26:
+    resolution: {integrity: 
sha512-VR+hzg9XqucgLjXxA13MtV5O3C0bK0ywtLIBw/+a+O+Oc6mxFWHtdUeXDbIi5AiPbn0fjgVJMqYnyjGyyX8u0w==}
     engines: {node: '>=10'}
     cpu: [x64]
     os: [win32]
     requiresBuild: true
     optional: true
 
-  /@swc/core@1.7.23:
-    resolution: {integrity: 
sha512-VDNkpDvDlreGh2E3tlDj8B3piiuLhhQA/7rIVZpiLUvG1YpucAa6N7iDXA7Gc/+Hah8spaCg/qvEaBkCmcIYCQ==}
+  /@swc/core@1.7.26:
+    resolution: {integrity: 
sha512-f5uYFf+TmMQyYIoxkn/evWhNGuUzC730dFwAKGwBVHHVoPyak1/GvJUm6i1SKl+2Hrj9oN0i3WSoWWZ4pgI8lw==}
     engines: {node: '>=10'}
     requiresBuild: true
     peerDependencies:
@@ -493,16 +493,16 @@
       '@swc/counter': 0.1.3
       '@swc/types': 0.1.12
     optionalDependencies:
-      '@swc/core-darwin-arm64': 1.7.23
-      '@swc/core-darwin-x64': 1.7.23
-      '@swc/core-linux-arm-gnueabihf': 1.7.23
-      '@swc/core-linux-arm64-gnu': 1.7.23
-      '@swc/core-linux-arm64-musl': 1.7.23
-      '@swc/core-linux-x64-gnu': 1.7.23
-      '@swc/core-linux-x64-musl': 1.7.23
-      '@swc/core-win32-arm64-msvc': 1.7.23
-      '@swc/core-win32-ia32-msvc': 1.7.23
-      '@swc/core-win32-x64-msvc': 1.7.23
+      '@swc/core-darwin-arm64': 1.7.26
+      '@swc/core-darwin-x64': 1.7.26
+      '@swc/core-linux-arm-gnueabihf': 1.7.26
+      '@swc/core-linux-arm64-gnu': 1.7.26
+      '@swc/core-linux-arm64-musl': 1.7.26
+      '@swc/core-linux-x64-gnu': 1.7.26
+      '@swc/core-linux-x64-musl': 1.7.26
+      '@swc/core-win32-arm64-msvc': 1.7.26
+      '@swc/core-win32-ia32-msvc': 1.7.26
+      '@swc/core-win32-x64-msvc': 1.7.26
 
   /@swc/counter@0.1.3:
     resolution: {integrity: 
sha512-e2BR4lsJkkRlKZ/qCHPw9ZaSxc0MVUd7gtbtaB7aMvHeJVYe8sOB8DBZkP2DtISHGSku9sCK6T6cnY0CtXrOCQ==}
@@ -1178,7 +1178,7 @@
       prebuild-install: 7.1.1
     dev: false
 
-  /ts-node@10.9.2(@swc/core@1.7.23)(@types/node@20.16.5)(typescript@5.5.4):
+  /ts-node@10.9.2(@swc/core@1.7.26)(@types/node@20.16.5)(typescript@5.6.2):
     resolution: {integrity: 
sha512-f0FFpIdcHgn8zcPSbf1dRevwt047YMnaiJM3u2w2RewrB+fob/zePZcrOyQoLMMO7aBIddLcQIEK5dYjkLnGrQ==}
     hasBin: true
     peerDependencies:
@@ -1193,7 +1193,7 @@
         optional: true
     dependencies:
       '@cspotcode/source-map-support': 0.8.1
-      '@swc/core': 1.7.23
+      '@swc/core': 1.7.26
       '@tsconfig/node10': 1.0.9
       '@tsconfig/node12': 1.0.11
       '@tsconfig/node14': 1.0.3
@@ -1205,7 +1205,7 @@
       create-require: 1.1.1
       diff: 4.0.2
       make-error: 1.3.6
-      typescript: 5.5.4
+      typescript: 5.6.2
       v8-compile-cache-lib: 3.0.1
       yn: 3.1.1
     dev: true
@@ -1221,8 +1221,8 @@
     engines: {node: '>=10'}
     dev: false
 
-  /typescript@5.5.4:
-    resolution: {integrity: 
sha512-Mtq29sKDAEYP7aljRgtPOpTvOfbwRWlS6dPRzwjdE+C0R4brX/GUyhHSecbHMFLNBLcJIPt9nl9yG5TZ1weH+Q==}
+  /typescript@5.6.2:
+    resolution: {integrity: 
sha512-NW8ByodCSNCwZeghjN3o+JX5OFH0Ojg6sadjEKY4huZ52TqbJTJnDo5+Tw98lSy63NZvi4n+ez5m2u5d4PkZyw==}
     engines: {node: '>=14.17'}
     hasBin: true
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/ast-grep-0.27.1+0/crates/cli/src/debug.rs 
new/ast-grep-0.27.3+0/crates/cli/src/debug.rs
--- old/ast-grep-0.27.1+0/crates/cli/src/debug.rs       2024-09-08 
17:35:13.000000000 +0200
+++ new/ast-grep-0.27.3+0/crates/cli/src/debug.rs       2024-09-22 
20:37:14.000000000 +0200
@@ -1,7 +1,7 @@
 use crate::lang::SgLang;
 use crate::print::ColorArg;
 use ansi_term::Style;
-use ast_grep_core::Pattern;
+use ast_grep_core::{language::TSLanguage, matcher::PatternNode, 
meta_var::MetaVariable, Pattern};
 use ast_grep_language::Language;
 use clap::ValueEnum;
 use tree_sitter as ts;
@@ -18,24 +18,28 @@
   Sexp,
 }
 impl DebugFormat {
-  pub fn debug_query(&self, pattern: &str, lang: SgLang, color: ColorArg) {
+  pub fn debug_query(&self, src: &str, pattern: &Pattern<SgLang>, lang: 
SgLang, color: ColorArg) {
     let colored = color.should_use_color();
     match self {
       DebugFormat::Pattern => {
-        let pattern = Pattern::try_new(pattern, lang).expect("pattern must be 
validated in run");
-        println!("Debug Pattern:\n{:?}", pattern);
+        let lang = lang.get_ts_language();
+        let mut ret = String::new();
+        let fmt = DumpFmt::named(colored);
+        dump_pattern(&pattern.node, &lang, &fmt, 0, &mut ret)
+          .expect("unexpected error in writing string");
+        println!("Debug Pattern:\n{}", ret);
       }
       DebugFormat::Sexp => {
-        let root = lang.ast_grep(pattern);
+        let root = lang.ast_grep(src);
         println!("Debug Sexp:\n{}", root.root().to_sexp());
       }
       DebugFormat::Ast => {
-        let root = lang.ast_grep(pattern);
+        let root = lang.ast_grep(src);
         let dumped = dump_node(root.root().get_ts_node());
         println!("Debug AST:\n{}", dumped.ast(colored));
       }
       DebugFormat::Cst => {
-        let root = lang.ast_grep(pattern);
+        let root = lang.ast_grep(src);
         let dumped = dump_node(root.root().get_ts_node());
         println!("Debug CST:\n{}", dumped.cst(colored));
       }
@@ -43,6 +47,51 @@
   }
 }
 
+fn dump_pattern(
+  pattern: &PatternNode,
+  lang: &TSLanguage,
+  style: &DumpFmt,
+  indent: usize,
+  ret: &mut String,
+) -> FmtResult {
+  write!(ret, "{}", "  ".repeat(indent))?;
+  match pattern {
+    PatternNode::MetaVar { meta_var } => {
+      let meta_var = match meta_var {
+        MetaVariable::Capture(name, _) => format!("${name}"),
+        MetaVariable::MultiCapture(name) => format!("$$${name}"),
+        MetaVariable::Multiple => "$$$".to_string(),
+        MetaVariable::Dropped(_) => "$_".to_string(),
+      };
+      let meta_var = style.kind_style.paint(meta_var);
+      writeln!(ret, "{} {meta_var}", style.field_style.paint("MetaVar"))?;
+    }
+    PatternNode::Terminal {
+      text,
+      kind_id,
+      is_named,
+    } => {
+      let lang = lang.get_ts_language();
+      if *is_named {
+        let kind = lang.node_kind_for_id(*kind_id).unwrap();
+        let kind = style.kind_style.paint(format!("{kind}"));
+        writeln!(ret, "{kind} {text}")?;
+      } else {
+        writeln!(ret, "{text}")?;
+      }
+    }
+    PatternNode::Internal { kind_id, children } => {
+      let kind = lang.node_kind_for_id(*kind_id).unwrap();
+      let kind = style.kind_style.paint(kind);
+      writeln!(ret, "{kind}")?;
+      for child in children {
+        dump_pattern(child, lang, style, indent + 1, ret)?;
+      }
+    }
+  }
+  Ok(())
+}
+
 pub struct DumpNode {
   field: Option<String>,
   kind: String,
@@ -77,7 +126,6 @@
   }
 }
 
-// TODO: add colorized output
 use std::fmt::{Result as FmtResult, Write};
 impl DumpNode {
   pub fn ast(&self, colored: bool) -> String {
@@ -178,3 +226,39 @@
     }
   }
 }
+
+#[cfg(test)]
+mod test {
+  use super::*;
+  use ast_grep_language::{TypeScript, C};
+  const DUMPED: &str = r#"
+program (0,0)-(0,11)
+  variable_declaration (0,0)-(0,11)
+    variable_declarator (0,4)-(0,11)
+      name: identifier (0,4)-(0,5)
+      value: number (0,8)-(0,11)"#;
+  #[test]
+  fn test_dump_node() {
+    let lang = SgLang::Builtin(TypeScript.into());
+    let root = lang.ast_grep("var a = 123");
+    let dumped = dump_node(root.root().get_ts_node());
+    assert_eq!(DUMPED.trim(), dumped.ast(false).trim());
+  }
+
+  const MISSING: &str = r#"
+translation_unit (0,0)-(0,9)
+  declaration (0,0)-(0,9)
+    type: primitive_type (0,0)-(0,3)
+    declarator: init_declarator (0,4)-(0,9)
+      declarator: identifier (0,4)-(0,5)
+      = (0,6)-(0,7)
+      value: number_literal (0,8)-(0,9)
+    MISSING ; (0,9)-(0,9)"#;
+  #[test]
+  fn test_missing_node() {
+    let lang = SgLang::Builtin(C.into());
+    let root = lang.ast_grep("int a = 1");
+    let dumped = dump_node(root.root().get_ts_node());
+    assert_eq!(MISSING.trim(), dumped.cst(false).trim());
+  }
+}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/ast-grep-0.27.1+0/crates/cli/src/lib.rs 
new/ast-grep-0.27.3+0/crates/cli/src/lib.rs
--- old/ast-grep-0.27.1+0/crates/cli/src/lib.rs 2024-09-08 17:35:13.000000000 
+0200
+++ new/ast-grep-0.27.3+0/crates/cli/src/lib.rs 2024-09-22 20:37:14.000000000 
+0200
@@ -182,6 +182,7 @@
     ok("run -p test --strictness relaxed");
     ok("run -p test --selector identifier"); // pattern + selector
     ok("run -p test --selector identifier -l js");
+    ok("run -p test --follow");
     error("run test");
     error("run --debug-query test"); // missing lang
     error("run -r Test dir");
@@ -206,6 +207,7 @@
     ok("scan -r test.yml --format github");
     ok("scan --format github");
     ok("scan --interactive");
+    ok("scan --follow");
     ok("scan -r test.yml -c test.yml --json dir"); // allow registering custom 
lang
     error("scan -i --json dir"); // conflict
     error("scan --report-style rich --json dir"); // conflict
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/ast-grep-0.27.1+0/crates/cli/src/run.rs 
new/ast-grep-0.27.3+0/crates/cli/src/run.rs
--- old/ast-grep-0.27.1+0/crates/cli/src/run.rs 2024-09-08 17:35:13.000000000 
+0200
+++ new/ast-grep-0.27.3+0/crates/cli/src/run.rs 2024-09-22 20:37:14.000000000 
+0200
@@ -264,6 +264,9 @@
   fn new(arg: RunArg, printer: Printer) -> Result<Self> {
     let lang = arg.lang.ok_or(anyhow::anyhow!(EC::LanguageNotSpecified))?;
     let pattern = arg.build_pattern(lang)?;
+    if let Some(format) = arg.debug_query {
+      format.debug_query(&arg.pattern, &pattern, lang, arg.output.color);
+    }
     let rewrite = if let Some(s) = &arg.rewrite {
       Some(Fixer::from_str(s, &lang).context(EC::ParsePattern)?)
     } else {
@@ -284,11 +287,6 @@
   fn consume_items(&self, items: Items<Self::Item>) -> Result<()> {
     let printer = &self.printer;
     printer.before_print()?;
-    let arg = &self.arg;
-    let lang = arg.lang.expect("must present");
-    if let Some(format) = arg.debug_query {
-      format.debug_query(&self.arg.pattern, lang, self.arg.output.color);
-    }
     let mut has_matches = false;
     for match_unit in items {
       match_one_file(printer, &match_unit, &self.rewrite)?;
@@ -373,6 +371,7 @@
       input: InputArgs {
         no_ignore: vec![],
         stdin: false,
+        follow: false,
         paths: vec![PathBuf::from(".")],
       },
       output: OutputArgs {
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/ast-grep-0.27.1+0/crates/cli/src/scan.rs 
new/ast-grep-0.27.3+0/crates/cli/src/scan.rs
--- old/ast-grep-0.27.1+0/crates/cli/src/scan.rs        2024-09-08 
17:35:13.000000000 +0200
+++ new/ast-grep-0.27.3+0/crates/cli/src/scan.rs        2024-09-22 
20:37:14.000000000 +0200
@@ -309,6 +309,7 @@
         no_ignore: vec![],
         paths: vec![PathBuf::from(".")],
         stdin: false,
+        follow: false,
       },
       output: OutputArgs {
         interactive: false,
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/ast-grep-0.27.1+0/crates/cli/src/utils.rs 
new/ast-grep-0.27.3+0/crates/cli/src/utils.rs
--- old/ast-grep-0.27.1+0/crates/cli/src/utils.rs       2024-09-08 
17:35:13.000000000 +0200
+++ new/ast-grep-0.27.3+0/crates/cli/src/utils.rs       2024-09-22 
20:37:14.000000000 +0200
@@ -318,6 +318,15 @@
   #[clap(value_parser, default_value = ".")]
   pub paths: Vec<PathBuf>,
 
+  /// Follow symbolic links.
+  ///
+  /// This flag instructs ast-grep to follow symbolic links while traversing
+  /// directories. This behavior is disabled by default. Note that ast-grep 
will
+  /// check for symbolic link loops and report errors if it finds one. 
ast-grep will
+  /// also report errors for broken links.
+  #[clap(long)]
+  pub follow: bool,
+
   /// Do not respect hidden file system or ignore files (.gitignore, .ignore, 
etc.).
   ///
   /// You can suppress multiple ignore files by passing `no-ignore` multiple 
times.
@@ -337,6 +346,7 @@
     NoIgnore::disregard(&self.no_ignore)
       .walk(&self.paths)
       .threads(threads)
+      .follow_links(self.follow)
       .build_parallel()
   }
 
@@ -345,6 +355,7 @@
     NoIgnore::disregard(&self.no_ignore)
       .walk(&self.paths)
       .threads(threads)
+      .follow_links(self.follow)
       .types(lang.augmented_file_type())
       .build_parallel()
   }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/ast-grep-0.27.1+0/crates/core/src/matcher/pattern.rs 
new/ast-grep-0.27.3+0/crates/core/src/matcher/pattern.rs
--- old/ast-grep-0.27.1+0/crates/core/src/matcher/pattern.rs    2024-09-08 
17:35:13.000000000 +0200
+++ new/ast-grep-0.27.3+0/crates/core/src/matcher/pattern.rs    2024-09-22 
20:37:14.000000000 +0200
@@ -260,6 +260,11 @@
     node: Node<'tree, D>,
     env: &mut Cow<MetaVarEnv<'tree, D>>,
   ) -> Option<Node<'tree, D>> {
+    if let Some(k) = self.root_kind {
+      if node.kind_id() != k {
+        return None;
+      }
+    }
     // do not pollute the env if pattern does not match
     let mut may_write = Cow::Borrowed(env.as_ref());
     let node = match_node_non_recursive(self, node, &mut may_write)?;
@@ -523,8 +528,8 @@
   fn test_bare_wildcard_in_context() {
     let pattern = Pattern::contextual("class A { $F }", "property_identifier", 
Tsx).expect("test");
     let cand = pattern_node("let b = 123");
-    // should it match?
-    assert!(pattern.find_node(cand.root()).is_some());
+    // it should not match
+    assert!(pattern.find_node(cand.root()).is_none());
   }
 
   #[test]
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/ast-grep-0.27.1+0/crates/napi/npm/darwin-arm64/package.json 
new/ast-grep-0.27.3+0/crates/napi/npm/darwin-arm64/package.json
--- old/ast-grep-0.27.1+0/crates/napi/npm/darwin-arm64/package.json     
2024-09-08 17:35:13.000000000 +0200
+++ new/ast-grep-0.27.3+0/crates/napi/npm/darwin-arm64/package.json     
2024-09-22 20:37:14.000000000 +0200
@@ -1,6 +1,6 @@
 {
   "name": "@ast-grep/napi-darwin-arm64",
-  "version": "0.27.1",
+  "version": "0.27.3",
   "os": [
     "darwin"
   ],
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/ast-grep-0.27.1+0/crates/napi/npm/darwin-x64/package.json 
new/ast-grep-0.27.3+0/crates/napi/npm/darwin-x64/package.json
--- old/ast-grep-0.27.1+0/crates/napi/npm/darwin-x64/package.json       
2024-09-08 17:35:13.000000000 +0200
+++ new/ast-grep-0.27.3+0/crates/napi/npm/darwin-x64/package.json       
2024-09-22 20:37:14.000000000 +0200
@@ -1,6 +1,6 @@
 {
   "name": "@ast-grep/napi-darwin-x64",
-  "version": "0.27.1",
+  "version": "0.27.3",
   "os": [
     "darwin"
   ],
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/ast-grep-0.27.1+0/crates/napi/npm/linux-arm64-gnu/package.json 
new/ast-grep-0.27.3+0/crates/napi/npm/linux-arm64-gnu/package.json
--- old/ast-grep-0.27.1+0/crates/napi/npm/linux-arm64-gnu/package.json  
2024-09-08 17:35:13.000000000 +0200
+++ new/ast-grep-0.27.3+0/crates/napi/npm/linux-arm64-gnu/package.json  
2024-09-22 20:37:14.000000000 +0200
@@ -1,6 +1,6 @@
 {
   "name": "@ast-grep/napi-linux-arm64-gnu",
-  "version": "0.27.1",
+  "version": "0.27.3",
   "os": [
     "linux"
   ],
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/ast-grep-0.27.1+0/crates/napi/npm/linux-arm64-musl/package.json 
new/ast-grep-0.27.3+0/crates/napi/npm/linux-arm64-musl/package.json
--- old/ast-grep-0.27.1+0/crates/napi/npm/linux-arm64-musl/package.json 
2024-09-08 17:35:13.000000000 +0200
+++ new/ast-grep-0.27.3+0/crates/napi/npm/linux-arm64-musl/package.json 
2024-09-22 20:37:14.000000000 +0200
@@ -1,6 +1,6 @@
 {
   "name": "@ast-grep/napi-linux-arm64-musl",
-  "version": "0.27.1",
+  "version": "0.27.3",
   "os": [
     "linux"
   ],
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/ast-grep-0.27.1+0/crates/napi/npm/linux-x64-gnu/package.json 
new/ast-grep-0.27.3+0/crates/napi/npm/linux-x64-gnu/package.json
--- old/ast-grep-0.27.1+0/crates/napi/npm/linux-x64-gnu/package.json    
2024-09-08 17:35:13.000000000 +0200
+++ new/ast-grep-0.27.3+0/crates/napi/npm/linux-x64-gnu/package.json    
2024-09-22 20:37:14.000000000 +0200
@@ -1,6 +1,6 @@
 {
   "name": "@ast-grep/napi-linux-x64-gnu",
-  "version": "0.27.1",
+  "version": "0.27.3",
   "os": [
     "linux"
   ],
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/ast-grep-0.27.1+0/crates/napi/npm/linux-x64-musl/package.json 
new/ast-grep-0.27.3+0/crates/napi/npm/linux-x64-musl/package.json
--- old/ast-grep-0.27.1+0/crates/napi/npm/linux-x64-musl/package.json   
2024-09-08 17:35:13.000000000 +0200
+++ new/ast-grep-0.27.3+0/crates/napi/npm/linux-x64-musl/package.json   
2024-09-22 20:37:14.000000000 +0200
@@ -1,6 +1,6 @@
 {
   "name": "@ast-grep/napi-linux-x64-musl",
-  "version": "0.27.1",
+  "version": "0.27.3",
   "os": [
     "linux"
   ],
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/ast-grep-0.27.1+0/crates/napi/npm/win32-arm64-msvc/package.json 
new/ast-grep-0.27.3+0/crates/napi/npm/win32-arm64-msvc/package.json
--- old/ast-grep-0.27.1+0/crates/napi/npm/win32-arm64-msvc/package.json 
2024-09-08 17:35:13.000000000 +0200
+++ new/ast-grep-0.27.3+0/crates/napi/npm/win32-arm64-msvc/package.json 
2024-09-22 20:37:14.000000000 +0200
@@ -1,6 +1,6 @@
 {
   "name": "@ast-grep/napi-win32-arm64-msvc",
-  "version": "0.27.1",
+  "version": "0.27.3",
   "os": [
     "win32"
   ],
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/ast-grep-0.27.1+0/crates/napi/npm/win32-ia32-msvc/package.json 
new/ast-grep-0.27.3+0/crates/napi/npm/win32-ia32-msvc/package.json
--- old/ast-grep-0.27.1+0/crates/napi/npm/win32-ia32-msvc/package.json  
2024-09-08 17:35:13.000000000 +0200
+++ new/ast-grep-0.27.3+0/crates/napi/npm/win32-ia32-msvc/package.json  
2024-09-22 20:37:14.000000000 +0200
@@ -1,6 +1,6 @@
 {
   "name": "@ast-grep/napi-win32-ia32-msvc",
-  "version": "0.27.1",
+  "version": "0.27.3",
   "os": [
     "win32"
   ],
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/ast-grep-0.27.1+0/crates/napi/npm/win32-x64-msvc/package.json 
new/ast-grep-0.27.3+0/crates/napi/npm/win32-x64-msvc/package.json
--- old/ast-grep-0.27.1+0/crates/napi/npm/win32-x64-msvc/package.json   
2024-09-08 17:35:13.000000000 +0200
+++ new/ast-grep-0.27.3+0/crates/napi/npm/win32-x64-msvc/package.json   
2024-09-22 20:37:14.000000000 +0200
@@ -1,6 +1,6 @@
 {
   "name": "@ast-grep/napi-win32-x64-msvc",
-  "version": "0.27.1",
+  "version": "0.27.3",
   "os": [
     "win32"
   ],
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/ast-grep-0.27.1+0/crates/napi/package.json 
new/ast-grep-0.27.3+0/crates/napi/package.json
--- old/ast-grep-0.27.1+0/crates/napi/package.json      2024-09-08 
17:35:13.000000000 +0200
+++ new/ast-grep-0.27.3+0/crates/napi/package.json      2024-09-22 
20:37:14.000000000 +0200
@@ -1,6 +1,6 @@
 {
   "name": "@ast-grep/napi",
-  "version": "0.27.1",
+  "version": "0.27.3",
   "description": "Search and Rewrite code at large scale using precise AST 
pattern",
   "homepage": "https://ast-grep.github.io";,
   "main": "index.js",
@@ -51,7 +51,7 @@
     "ava": "6.1.3",
     "chalk": "5.3.0",
     "ts-node": "10.9.2",
-    "typescript": "5.5.4"
+    "typescript": "5.6.2"
   },
   "ava": {
     "require": [
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/ast-grep-0.27.1+0/crates/napi/yarn.lock 
new/ast-grep-0.27.3+0/crates/napi/yarn.lock
--- old/ast-grep-0.27.1+0/crates/napi/yarn.lock 2024-09-08 17:35:13.000000000 
+0200
+++ new/ast-grep-0.27.3+0/crates/napi/yarn.lock 2024-09-22 20:37:14.000000000 
+0200
@@ -1154,10 +1154,10 @@
   resolved 
"https://registry.yarnpkg.com/type-fest/-/type-fest-0.13.1.tgz#0172cb5bce80b0bd542ea348db50c7e21834d934";
   integrity 
sha512-34R7HTnG0XIJcBSn5XhDd7nNFPRcXYRZrBB2O2jdKqYODldSzBAqzsWoZYYvduky73toYS/ESqxPvkDf/F0XMg==
 
-typescript@5.5.4:
-  version "5.5.4"
-  resolved 
"https://registry.yarnpkg.com/typescript/-/typescript-5.5.4.tgz#d9852d6c82bad2d2eda4fd74a5762a8f5909e9ba";
-  integrity 
sha512-Mtq29sKDAEYP7aljRgtPOpTvOfbwRWlS6dPRzwjdE+C0R4brX/GUyhHSecbHMFLNBLcJIPt9nl9yG5TZ1weH+Q==
+typescript@5.6.2:
+  version "5.6.2"
+  resolved 
"https://registry.yarnpkg.com/typescript/-/typescript-5.6.2.tgz#d1de67b6bef77c41823f822df8f0b3bcff60a5a0";
+  integrity 
sha512-NW8ByodCSNCwZeghjN3o+JX5OFH0Ojg6sadjEKY4huZ52TqbJTJnDo5+Tw98lSy63NZvi4n+ez5m2u5d4PkZyw==
 
 unicorn-magic@^0.1.0:
   version "0.1.0"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/ast-grep-0.27.1+0/crates/pyo3/pyproject.toml 
new/ast-grep-0.27.3+0/crates/pyo3/pyproject.toml
--- old/ast-grep-0.27.1+0/crates/pyo3/pyproject.toml    2024-09-08 
17:35:13.000000000 +0200
+++ new/ast-grep-0.27.3+0/crates/pyo3/pyproject.toml    2024-09-22 
20:37:14.000000000 +0200
@@ -5,7 +5,7 @@
 [project]
 name = "ast-grep-py"
 requires-python = ">=3.8"
-version = "0.27.1"
+version = "0.27.3"
 description = "Structural Search and Rewrite code at large scale using precise 
AST pattern."
 authors = [{ name = "Herrington Darkholme", email = 
"2883231+herringtondarkho...@users.noreply.github.com" }]
 maintainers = [{ name = "Herrington Darkholme", email = 
"2883231+herringtondarkho...@users.noreply.github.com" }]
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/ast-grep-0.27.1+0/npm/package.json 
new/ast-grep-0.27.3+0/npm/package.json
--- old/ast-grep-0.27.1+0/npm/package.json      2024-09-08 17:35:13.000000000 
+0200
+++ new/ast-grep-0.27.3+0/npm/package.json      2024-09-22 20:37:14.000000000 
+0200
@@ -1,6 +1,6 @@
 {
   "name": "@ast-grep/cli",
-  "version": "0.27.1",
+  "version": "0.27.3",
   "publishConfig": {
     "access": "public"
   },
@@ -29,13 +29,13 @@
     "postinstall": "node postinstall.js"
   },
   "optionalDependencies": {
-    "@ast-grep/cli-win32-arm64-msvc": "0.27.1",
-    "@ast-grep/cli-win32-ia32-msvc": "0.27.1",
-    "@ast-grep/cli-win32-x64-msvc": "0.27.1",
-    "@ast-grep/cli-darwin-arm64": "0.27.1",
-    "@ast-grep/cli-darwin-x64": "0.27.1",
-    "@ast-grep/cli-linux-arm64-gnu": "0.27.1",
-    "@ast-grep/cli-linux-x64-gnu": "0.27.1"
+    "@ast-grep/cli-win32-arm64-msvc": "0.27.3",
+    "@ast-grep/cli-win32-ia32-msvc": "0.27.3",
+    "@ast-grep/cli-win32-x64-msvc": "0.27.3",
+    "@ast-grep/cli-darwin-arm64": "0.27.3",
+    "@ast-grep/cli-darwin-x64": "0.27.3",
+    "@ast-grep/cli-linux-arm64-gnu": "0.27.3",
+    "@ast-grep/cli-linux-x64-gnu": "0.27.3"
   },
   "bin": {
     "sg": "sg",
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/ast-grep-0.27.1+0/npm/platforms/darwin-arm64/package.json 
new/ast-grep-0.27.3+0/npm/platforms/darwin-arm64/package.json
--- old/ast-grep-0.27.1+0/npm/platforms/darwin-arm64/package.json       
2024-09-08 17:35:13.000000000 +0200
+++ new/ast-grep-0.27.3+0/npm/platforms/darwin-arm64/package.json       
2024-09-22 20:37:14.000000000 +0200
@@ -1,6 +1,6 @@
 {
   "name": "@ast-grep/cli-darwin-arm64",
-  "version": "0.27.1",
+  "version": "0.27.3",
   "os": [
     "darwin"
   ],
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/ast-grep-0.27.1+0/npm/platforms/darwin-x64/package.json 
new/ast-grep-0.27.3+0/npm/platforms/darwin-x64/package.json
--- old/ast-grep-0.27.1+0/npm/platforms/darwin-x64/package.json 2024-09-08 
17:35:13.000000000 +0200
+++ new/ast-grep-0.27.3+0/npm/platforms/darwin-x64/package.json 2024-09-22 
20:37:14.000000000 +0200
@@ -1,6 +1,6 @@
 {
   "name": "@ast-grep/cli-darwin-x64",
-  "version": "0.27.1",
+  "version": "0.27.3",
   "os": [
     "darwin"
   ],
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/ast-grep-0.27.1+0/npm/platforms/linux-arm64-gnu/package.json 
new/ast-grep-0.27.3+0/npm/platforms/linux-arm64-gnu/package.json
--- old/ast-grep-0.27.1+0/npm/platforms/linux-arm64-gnu/package.json    
2024-09-08 17:35:13.000000000 +0200
+++ new/ast-grep-0.27.3+0/npm/platforms/linux-arm64-gnu/package.json    
2024-09-22 20:37:14.000000000 +0200
@@ -1,6 +1,6 @@
 {
   "name": "@ast-grep/cli-linux-arm64-gnu",
-  "version": "0.27.1",
+  "version": "0.27.3",
   "os": [
     "linux"
   ],
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/ast-grep-0.27.1+0/npm/platforms/linux-x64-gnu/package.json 
new/ast-grep-0.27.3+0/npm/platforms/linux-x64-gnu/package.json
--- old/ast-grep-0.27.1+0/npm/platforms/linux-x64-gnu/package.json      
2024-09-08 17:35:13.000000000 +0200
+++ new/ast-grep-0.27.3+0/npm/platforms/linux-x64-gnu/package.json      
2024-09-22 20:37:14.000000000 +0200
@@ -1,6 +1,6 @@
 {
   "name": "@ast-grep/cli-linux-x64-gnu",
-  "version": "0.27.1",
+  "version": "0.27.3",
   "os": [
     "linux"
   ],
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/ast-grep-0.27.1+0/npm/platforms/win32-arm64-msvc/package.json 
new/ast-grep-0.27.3+0/npm/platforms/win32-arm64-msvc/package.json
--- old/ast-grep-0.27.1+0/npm/platforms/win32-arm64-msvc/package.json   
2024-09-08 17:35:13.000000000 +0200
+++ new/ast-grep-0.27.3+0/npm/platforms/win32-arm64-msvc/package.json   
2024-09-22 20:37:14.000000000 +0200
@@ -1,6 +1,6 @@
 {
   "name": "@ast-grep/cli-win32-arm64-msvc",
-  "version": "0.27.1",
+  "version": "0.27.3",
   "os": [
     "win32"
   ],
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/ast-grep-0.27.1+0/npm/platforms/win32-ia32-msvc/package.json 
new/ast-grep-0.27.3+0/npm/platforms/win32-ia32-msvc/package.json
--- old/ast-grep-0.27.1+0/npm/platforms/win32-ia32-msvc/package.json    
2024-09-08 17:35:13.000000000 +0200
+++ new/ast-grep-0.27.3+0/npm/platforms/win32-ia32-msvc/package.json    
2024-09-22 20:37:14.000000000 +0200
@@ -1,6 +1,6 @@
 {
   "name": "@ast-grep/cli-win32-ia32-msvc",
-  "version": "0.27.1",
+  "version": "0.27.3",
   "os": [
     "win32"
   ],
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/ast-grep-0.27.1+0/npm/platforms/win32-x64-msvc/package.json 
new/ast-grep-0.27.3+0/npm/platforms/win32-x64-msvc/package.json
--- old/ast-grep-0.27.1+0/npm/platforms/win32-x64-msvc/package.json     
2024-09-08 17:35:13.000000000 +0200
+++ new/ast-grep-0.27.3+0/npm/platforms/win32-x64-msvc/package.json     
2024-09-22 20:37:14.000000000 +0200
@@ -1,6 +1,6 @@
 {
   "name": "@ast-grep/cli-win32-x64-msvc",
-  "version": "0.27.1",
+  "version": "0.27.3",
   "os": [
     "win32"
   ],
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/ast-grep-0.27.1+0/pyproject.toml 
new/ast-grep-0.27.3+0/pyproject.toml
--- old/ast-grep-0.27.1+0/pyproject.toml        2024-09-08 17:35:13.000000000 
+0200
+++ new/ast-grep-0.27.3+0/pyproject.toml        2024-09-22 20:37:14.000000000 
+0200
@@ -4,7 +4,7 @@
 
 [project]
 name = "ast-grep-cli"
-version = "0.27.1"
+version = "0.27.3"
 description = "Structural Search and Rewrite code at large scale using precise 
AST pattern."
 authors = [{ name = "Herrington Darkholme", email = 
"2883231+herringtondarkho...@users.noreply.github.com" }]
 maintainers = [{ name = "Herrington Darkholme", email = 
"2883231+herringtondarkho...@users.noreply.github.com" }]

++++++ vendor.tar.zst ++++++
/work/SRC/openSUSE:Factory/ast-grep/vendor.tar.zst 
/work/SRC/openSUSE:Factory/.ast-grep.new.29891/vendor.tar.zst differ: char 
254600, line 1032

Reply via email to