-
-
Notifications
You must be signed in to change notification settings - Fork 6.7k
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
Goutte feat gdscript3 #20122
Closed
Closed
Goutte feat gdscript3 #20122
Conversation
This file contains 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
This does not really work yet, but it's a start. Results are not denormalized, no support for enums nor datetimes, and thousands of other features are missing. I still don't know how we are going to denormalize JSON+LD without writing a whole GDScript lib for it…
I've also provided the small python script I used to generate the list.
Whilst I'm racking my brains trying to figure out integration testing…
(plain ol' godot object) One: I don't know how they work under-the-hood. Two: I'm very confused over-the-hood. Tri: We do not need them.
I know I'm making a lot of commits for not much, but now I'm opening the sample files with Godot as well, and doing unholy things with filesystems, so I'm not taking any chances. It's all going to be squashed anyway. :)
It works ! I can now write integration tests in GDScript. The real work starts now. /spend 25h
The test suite is now past its first hurdle, the 415 HTTP status code, and went straight into an unexpected error 500. I suspect the server does not like me trying to set the pet id at 0, because that's what we're trying to do right now. Godot is crashing a lot, mostly because I don't know how to make Callable.NOOP and my current solution hints at optional on_success and on_failure, yet if we omit them the engine will ragequit.
Now we'll get a nice error when we forget to set a required property. The demo is now able to: - connect - create a user - login as that user - create a pet
This makes our usage of `class_name` a little more acceptable.
This will crutch namespacing well enough for most uses.
- minLength - maxLength - minItems - maxItems - minimum - maximum - pattern (no flags)
We also support serializing to application/x-www-form-urlencoded now. Next up: DateTimes !
There's no timezone support in Godot for DateTimes.
Those are Arrays, not custom collection objects.
We don't need no factories nor singletons ; config is enough.
…gure features We can now generate a client for an OAS server running ApiPlatform (PHP).
(but I can't find the `description` template handler)
Too late to amend >.<
dangsarnit
There's still a lot of holes, TODOs and FIXMEs.
The inline response objects are still not supported.
{{#if defaultValue}} evaluates to true for null if we call super here.
Now we pass the config and the client via the constructor. This reduces the area of the public surface a bit, for the better I think. This commit also cleans up the class name shenanigans.
… addon Since there is no singleton in the generated client, the addon need not be enabled in the project configuration to be usable. The --headless mode is broken for now, as things changed in Godot 4 since the beta.
We used the latest stable GUT, but a feature we're going to need was merged today, so we'll need to update it either to master or to the next release at some point.
…lbacks /spent 6d since the beginning
Also moving core templates to their own subdir, for clarity. /spend 10m
Hire me while I'm available ! :D I'd rather code than make a CV.
Also adding some more assertions, and using our own OAS file now. /spend 3h
/spend 1h
Contributed by @jchu231
…erator into Goutte-feat-gdscript3
5 tasks
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.
PR checklist
Commit all changed files.
This is important, as CI jobs will verify all generator outputs of your HEAD commit as it would merge with master.
These must match the expectations made by your contribution.
You may regenerate an individual generator by passing the relevant config(s) as an argument to the script, for example
./bin/generate-samples.sh bin/configs/java*
.IMPORTANT: Do NOT purge/delete any folders/files (e.g. tests) when regenerating the samples as manually written tests may be removed.
master
(upcoming7.x.0
minor release - breaking changes with fallbacks),8.0.x
(breaking changes without fallbacks)