tree_haver 4.0.0 → 4.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 6a3704393a089cd839f41b5bd1b84c159bfef219ea41ba993c73266c00183004
4
- data.tar.gz: 149a7ff9f6812c0173b17e6a0646d802843da9bce67e6c29054b422e98bb867e
3
+ metadata.gz: 872ceb8aab416345826221f841d8cc79037a4d270fd9b556ef57cbcf9d702f7a
4
+ data.tar.gz: edcb75fd0ddb051e6be4ad9c1eed410b2aa3cd14f0595bc8fd20679c07f1eed7
5
5
  SHA512:
6
- metadata.gz: 03dc62871eac66744c11ca4adbcad33913d52bb9e1134175bdae549faf339ff6206fb4e98087441ffe74a3cba8f2f49684649f8591442e8a38ed74ce8ada50f8
7
- data.tar.gz: ef5413e0bb4e2b147fe9e97d560a71994b4324f9e26837752783b27d59fa935da5890c9b1b1a193f2867164f349d522a42e5ec009fabff3b07786d35fdddd928
6
+ metadata.gz: 00fbca360e93a8cd116e83c35678e3d3e6010c744984ef230a24d82b82e964687202b46aa30d39b5c04606e8581ed06158a63c71a30b6c59f6ab0f0566f99277
7
+ data.tar.gz: a261ba76e4ee22673ba34c4c599b8567913146d7fd3eb96c5fd854c9b8c2efda13afeb6e2c37a69a0a810b37e3bdf65697a7e9a55849e7fa6b9464c8cd40940f
checksums.yaml.gz.sig CHANGED
Binary file
data/CHANGELOG.md CHANGED
@@ -30,6 +30,20 @@ Please file a bug if you notice a violation of semantic versioning.
30
30
 
31
31
  ### Security
32
32
 
33
+ ## [4.0.1] - 2026-01-08
34
+
35
+ - TAG: [v4.0.1][4.0.1t]
36
+ - COVERAGE: 95.31% -- 2032/2132 lines in 28 files
37
+ - BRANCH COVERAGE: 84.10% -- 804/956 branches in 28 files
38
+ - 95.48% documented
39
+
40
+ ### Fixed
41
+
42
+ - **FFI Backend**: Implemented `has_error?` method on `TreeHaver::Backends::FFI::Node`
43
+ - Previously was a stub that always returned `false`, causing parse errors to go undetected
44
+ - Now properly calls `ts_node_has_error` FFI function to detect syntax errors in parsed trees
45
+ - This fixes error detection on JRuby when using the FFI backend with tree-sitter grammars
46
+
33
47
  ## [4.0.0] - 2026-01-08
34
48
 
35
49
  - TAG: [v4.0.0][4.0.0t]
@@ -951,7 +965,9 @@ Despite the major version bump to 3.0.0 (following semver due to the breaking `L
951
965
 
952
966
  - Initial release
953
967
 
954
- [Unreleased]: https://github.com/kettle-rb/tree_haver/compare/v4.0.0...HEAD
968
+ [Unreleased]: https://github.com/kettle-rb/tree_haver/compare/v4.0.1...HEAD
969
+ [4.0.1]: https://github.com/kettle-rb/tree_haver/compare/v4.0.0...v4.0.1
970
+ [4.0.1t]: https://github.com/kettle-rb/tree_haver/releases/tag/v4.0.1
955
971
  [4.0.0]: https://github.com/kettle-rb/tree_haver/compare/v3.2.6...v4.0.0
956
972
  [4.0.0t]: https://github.com/kettle-rb/tree_haver/releases/tag/v4.0.0
957
973
  [3.2.6]: https://github.com/kettle-rb/tree_haver/compare/v3.2.5...v3.2.6
data/README.md CHANGED
@@ -2182,7 +2182,7 @@ Thanks for RTFM. ☺️
2182
2182
  [📌gitmoji]: https://gitmoji.dev
2183
2183
  [📌gitmoji-img]: https://img.shields.io/badge/gitmoji_commits-%20%F0%9F%98%9C%20%F0%9F%98%8D-34495e.svg?style=flat-square
2184
2184
  [🧮kloc]: https://www.youtube.com/watch?v=dQw4w9WgXcQ
2185
- [🧮kloc-img]: https://img.shields.io/badge/KLOC-2.131-FFDD67.svg?style=for-the-badge&logo=YouTube&logoColor=blue
2185
+ [🧮kloc-img]: https://img.shields.io/badge/KLOC-2.132-FFDD67.svg?style=for-the-badge&logo=YouTube&logoColor=blue
2186
2186
  [🔐security]: SECURITY.md
2187
2187
  [🔐security-img]: https://img.shields.io/badge/security-policy-259D6C.svg?style=flat
2188
2188
  [📄copyright-notice-explainer]: https://opensource.stackexchange.com/questions/5778/why-do-licenses-such-as-the-mit-license-specify-a-single-year
@@ -273,6 +273,7 @@ module TreeHaver
273
273
  attach_function(:ts_node_end_point, [:ts_node], :ts_point)
274
274
  attach_function(:ts_node_is_null, [:ts_node], :bool)
275
275
  attach_function(:ts_node_is_named, [:ts_node], :bool)
276
+ attach_function(:ts_node_has_error, [:ts_node], :bool)
276
277
 
277
278
  # Only mark as fully loaded after all attach_function calls succeed
278
279
  @loaded = true
@@ -695,10 +696,12 @@ module TreeHaver
695
696
 
696
697
  # Check if node has error
697
698
  #
698
- # @return [Boolean]
699
+ # Returns true if this node or any of its descendants have a syntax error.
700
+ # This is the FFI equivalent of tree-sitter's ts_node_has_error.
701
+ #
702
+ # @return [Boolean] true if node subtree contains errors
699
703
  def has_error?
700
- # Would need ts_node_has_error implementation
701
- false
704
+ Native.ts_node_has_error(@val)
702
705
  end
703
706
 
704
707
  # Iterate over child nodes
@@ -10,7 +10,7 @@ module TreeHaver
10
10
  # Current version of the tree_haver gem
11
11
  #
12
12
  # @return [String] the version string
13
- VERSION = "4.0.0"
13
+ VERSION = "4.0.1"
14
14
  end
15
15
 
16
16
  # Traditional location for VERSION constant
data.tar.gz.sig CHANGED
Binary file
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: tree_haver
3
3
  version: !ruby/object:Gem::Version
4
- version: 4.0.0
4
+ version: 4.0.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Peter H. Boling
@@ -298,10 +298,10 @@ licenses:
298
298
  - MIT
299
299
  metadata:
300
300
  homepage_uri: https://tree-haver.galtzo.com/
301
- source_code_uri: https://github.com/kettle-rb/tree_haver/tree/v4.0.0
302
- changelog_uri: https://github.com/kettle-rb/tree_haver/blob/v4.0.0/CHANGELOG.md
301
+ source_code_uri: https://github.com/kettle-rb/tree_haver/tree/v4.0.1
302
+ changelog_uri: https://github.com/kettle-rb/tree_haver/blob/v4.0.1/CHANGELOG.md
303
303
  bug_tracker_uri: https://github.com/kettle-rb/tree_haver/issues
304
- documentation_uri: https://www.rubydoc.info/gems/tree_haver/4.0.0
304
+ documentation_uri: https://www.rubydoc.info/gems/tree_haver/4.0.1
305
305
  funding_uri: https://github.com/sponsors/pboling
306
306
  wiki_uri: https://github.com/kettle-rb/tree_haver/wiki
307
307
  news_uri: https://www.railsbling.com/tags/tree_haver
metadata.gz.sig CHANGED
Binary file