-
Notifications
You must be signed in to change notification settings - Fork 21
Create generator integration tests and fix generation issues #70
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Merged
Conversation
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
19016eb
to
d771bb6
Compare
da382b6
to
7874486
Compare
I am having issues with the checks not being triggered :( |
d2b6d7f
to
8e3ae8b
Compare
d40accd
to
7ba2ac5
Compare
This simplifies the generated code using the GLib.Marshaller helpers with a new IGeneratable for array strings. It fixes a segfault that was using the mearshaller string free helper instead of the array one. It fixes a leak of `in` string arrays. Only treat count paramaters that are annotated as such This prevent all parameters starting with n_ to be treated like array count parameters and only those that are annotated as such Fix method with single array length param for several arrays
Source: https://github.com/GLibSharp/bindinator Commit: 60c72b6601b4372af5d5c7775cda906cdbce2cb4 bindinator is a very simple project that is only used by GtkSharp and having it a subproject makes the maintenance harder and it's not possible to use it with subprojects due to a cyclic dependency: gtk-sharp -> bindinator -> gtk-sharp
Use the correct path separator on Windows to split GI_TYPELIB_PATH dirs
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.
The bindings generator does already a good job but it still has issues in several areas:
The goal is to create a proper test suite with integration and unit tests that will help us fix all of the binding generation issues.
This merge request focuses in creating the initial scaffolding for the test suite and attack the first problem of the generator: all the generated code must compile correctly.
The test suite will use the Regress library from gobject-introspection since it provides a broad coverage of all possible uses cases: https://gitlab.gnome.org/GNOME/gobject-introspection/-/tree/main/tests/scanner
The
Regress-1.0.gir
is processed with bindinate to generate the GAPI xml that is feed into the code generator.The test suite will start with 2 integration tests:
Current Status
With this merge request we have gone from:
To:
Next Steps