Conversation
The old Data_Wrap_Struct/Data_Get_Struct API has been deprecated for a long time. This updates all bindings to use TypedData_Wrap_Struct/TypedData_Get_Struct with proper rb_data_type_t definitions. Key fixes during the conversion: - Reader expand returns nodes wrapped with rxml_node_unmanaged_data_type (no mark, no free) since these transient nodes are freed on the next read - Removed stale Check_Type(*, T_DATA) guards that reject TypedData objects - Set parent type links so type hierarchy checks pass (e.g. Attr -> Node, AttrDecl -> Attr, HTMLParser::Context -> Parser::Context) - Added alloc function for HTMLParser::Context so it wraps with the correct type
- Update error message expectation for unbound namespace (TypedData reports type name instead of generic "Data") - Remove platform-specific branches for parser error messages that now match across platforms with newer libxml2 - Fix reader encoding test to expect ISO_8859_1 on all platforms - Normalize c14n result file line endings to LF - Make docbook enabled test platform-independent
- Use assert_match for error messages that vary across libxml2 versions - Remove platform-specific branches for parser error messages - Skip NOIMPLIED test on libxml2 2.14+ where behavior changed - Skip schema URI test when HTTP support is not available - Make feature flag tests build-independent
- test_bad_xml: error message and code differ between libxml2 <2.12 and >=2.12 - test_string_encoding: reader encoding returns NONE on <2.12, ISO_8859_1 on >=2.12
- Add rdoc to gemspec since it was removed from default gems in Ruby 4.0 - Use Gem::Version checks for libxml2 version-dependent test assertions
6099d93 to
0d07de8
Compare
c76f37c to
748eee6
Compare
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.
No description provided.