-
-
Notifications
You must be signed in to change notification settings - Fork 7
Update demo projects and remove macOS x86 (Intel) from CI #15
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
Conversation
Bromeon
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks! Nice change to f32 🙂
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Our nightly CI doesn't run this example, otherwise this would have caused failed runs. We need to fix this...
In another place I made the same change because CI broke: 44ee5f3
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
hmm, that's very weird – from what I see it is being compiled and run 🤔
Compiling godot v0.4.4 (https://github.com/godot-rust/gdext.git?branch=master#5d4e1a62)
Compiling rand v0.8.5
Compiling rand v0.9.2
Compiling dodge-the-creeps v0.1.0 (/home/runner/work/demo-projects/demo-projects/dodge-the-creeps/rust)
Compiling net-pong v1.0.0 (/home/runner/work/demo-projects/demo-projects/net-pong/rust)
Compiling hot-reload v0.1.0 (/home/runner/work/demo-projects/demo-projects/hot-reload/rust)
Compiling squash-the-creeps v0.1.0 (/home/runner/work/demo-projects/demo-projects/squash-the-creeps/rust)
Finished `release` profile [optimized] target(s) in 2m 52s
Also net-pong was failing since godot dependency was being built with register-docs 🙃
[1] /lib/x86_64-linux-gnu/libc.so.6(+0x42520) [0x7f5e42842520] (??:0)
[2] HashMap<String, DocData::ClassDoc, HashMapHasherDefault, HashMapComparatorDefault<String, void>, DefaultTypedAllocator<HashMapElement<String, DocData::ClassDoc> > >::operator[](String const&) (/home/runner/work/godot4-nightly/godot4-nightly/core/templates/hash_map.h:561)
[3] DocTools::generate(BitField<DocTools::GenerateFlags>) (/home/runner/work/godot4-nightly/godot4-nightly/editor/doc/doc_tools.cpp:443)
[4] EditorHelp::_gen_extensions_docs() (/home/runner/work/godot4-nightly/godot4-nightly/editor/doc/editor_help.cpp:3098)
[5] void call_with_variant_args_static<>(void (*)(), Variant const**, Callable::CallError&, IndexSequence<>) (/home/runner/work/godot4-nightly/godot4-nightly/core/variant/binder_common.h:699)
[6] void call_with_variant_args_static<>(void (*)(), Variant const**, int, Callable::CallError&) (/home/runner/work/godot4-nightly/godot4-nightly/core/variant/binder_common.h:765)
[7] CallableCustomStaticMethodPointer<void>::call(Variant const**, int, Variant&, Callable::CallError&) const (/home/runner/work/godot4-nightly/godot4-nightly/core/object/callable_method_pointer.h:249)
[8] Callable::callp(Variant const**, int, Variant&, Callable::CallError&) const (/home/runner/work/godot4-nightly/godot4-nightly/core/variant/callable.cpp:57)
[9] CallQueue::_call_function(Callable const&, Variant const*, int, bool) (/home/runner/work/godot4-nightly/godot4-nightly/core/object/message_queue.cpp:221)
[10] CallQueue::flush() (/home/runner/work/godot4-nightly/godot4-nightly/core/object/message_queue.cpp:270)
[11] Main::cleanup(bool) (/home/runner/work/godot4-nightly/godot4-nightly/main/main.cpp:5085)
[12] /home/runner/work/_temp/godot_bin/godot.linuxbsd.editor.dev.x86_64(main+0x264) [0x55ebcf1316bc] (/home/runner/work/godot4-nightly/godot4-nightly/platform/linuxbsd/godot_linuxbsd.cpp:127)
[13] /lib/x86_64-linux-gnu/libc.so.6(+0x29d90) [0x7f5e42829d90] (??:0)
[14] /lib/x86_64-linux-gnu/libc.so.6(__libc_start_main+0x80) [0x7f5e42829e40] (??:0)
[15] /home/runner/work/_temp/godot_bin/godot.linuxbsd.editor.dev.x86_64(_start+0x25) [0x55ebcf111e55] (??:?)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This line is already fixed in master:
| pivot.set_basis(Basis::looking_at(-direction)); |
I think this PR just targets an older commit, that's why it's not really "fixing" this part.
net-pong/rust/src/ball.rs
Outdated
| // so each player sees the motion as smooth and not jerky. | ||
| let direction = self.direction; | ||
| let translation = direction * (self.speed * delta) as f32; | ||
| let translation = direction * (self.speed * delta); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
| let translation = direction * (self.speed * delta); | |
| let translation = direction * self.speed * delta; |
- Update demo projects after recent changes in API (`Basis::looking_at`) - Make sure that all demos use same feature set, so they will behave consistently while sharing dependencies after being built in bulk (for example in the CI). - Remove runners for macOS x86 (Intel) architecture which are being phased out by GitHub.
00847b7 to
72648de
Compare
Bromeon
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks a lot!
Regarding the dependencies, I just downloaded current master (44ee5f3) and ran cargo build. It compiles some crates twice due to subtly different way of depending...
Compile...
❯ cargo build
Compiling gdextension-api v0.3.0 (https://github.com/godot-rust/godot4-prebuilt?branch=release-v0.3#f70baca7)
Compiling proc-macro2 v1.0.103
Compiling unicode-ident v1.0.22
Compiling quote v1.0.42
Compiling regex-syntax v0.8.8
Compiling nanoserde-derive v0.2.1
Compiling libc v0.2.178
Compiling heck v0.5.0
Compiling godot-bindings v0.4.4 (https://github.com/godot-rust/gdext.git#5d4e1a62)
Compiling godot-bindings v0.4.4 (https://github.com/godot-rust/gdext.git?branch=master#5d4e1a62)
Compiling cfg-if v1.0.4
Compiling unicode-id v0.3.6
Compiling zerocopy v0.8.31
Compiling glam v0.30.9
Compiling markdown v1.0.0-alpha.23
Compiling getrandom v0.3.4
Compiling godot-cell v0.4.4 (https://github.com/godot-rust/gdext.git#5d4e1a62)
Compiling godot-cell v0.4.4 (https://github.com/godot-rust/gdext.git?branch=master#5d4e1a62)
Compiling nanoserde v0.2.1
Compiling litrs v1.0.0
Compiling venial v0.6.1
Compiling godot-codegen v0.4.4 (https://github.com/godot-rust/gdext.git#5d4e1a62)
Compiling godot-codegen v0.4.4 (https://github.com/godot-rust/gdext.git?branch=master#5d4e1a62)
Compiling godot-macros v0.4.4 (https://github.com/godot-rust/gdext.git#5d4e1a62)
Compiling godot-macros v0.4.4 (https://github.com/godot-rust/gdext.git?branch=master#5d4e1a62)
Compiling getrandom v0.2.16
Compiling rand_core v0.9.3
Compiling rand_core v0.6.4
Compiling ppv-lite86 v0.2.21
Compiling regex-automata v0.4.13
Compiling rand_chacha v0.9.0
Compiling rand_chacha v0.3.1
Compiling rand v0.8.5
Compiling rand v0.9.2
Compiling regex v1.12.2
Compiling godot-ffi v0.4.4 (https://github.com/godot-rust/gdext.git?branch=master#5d4e1a62)
Compiling godot-core v0.4.4 (https://github.com/godot-rust/gdext.git?branch=master#5d4e1a62)
Compiling godot-ffi v0.4.4 (https://github.com/godot-rust/gdext.git#5d4e1a62)
Compiling godot-core v0.4.4 (https://github.com/godot-rust/gdext.git#5d4e1a62)
Compiling godot v0.4.4 (https://github.com/godot-rust/gdext.git#5d4e1a62)
Compiling godot v0.4.4 (https://github.com/godot-rust/gdext.git?branch=master#5d4e1a62)
Compiling dodge-the-creeps v0.1.0 (/home/jan/other/rust/demo-projects-anew/dodge-the-creeps/rust)
Compiling net-pong v1.0.0 (/home/jan/other/rust/demo-projects-anew/net-pong/rust)
Compiling hot-reload v0.1.0 (/home/jan/other/rust/demo-projects-anew/hot-reload/rust)
Compiling squash-the-creeps v0.1.0 (/home/jan/other/rust/demo-projects-anew/squash-the-creeps/rust)
Finished `dev` profile [unoptimized + debuginfo] target(s) in 38.36sOne way would be to use workspace dependencies, but that somewhat defeats the self-containedness of examples. Maybe we better manually align them. We could even do a CI smoke test like printing cargo build output, and see if godot v appears more than once...
Is there a chance that something can remain cached? I don't think a cargo update should change anything?
Update demo projects and remove macOS x86 (Intel) from CI
|
Actually, let me try a few more things this evening while |
|
Log: ================================================================
handle_crash: Program crashed with signal 11
Engine version: Godot Engine v4.6.beta.custom_build (1cf31805370716ce8160ddc1394b9820249a21f7)
Dumping the backtrace. Please include this when reporting the bug on: https://github.com/godotengine/godot/issues
[1] /lib/x86_64-linux-gnu/libc.so.6(+0x42520) [0x7f0008642520] (??:0)
[2] HashMap<String, DocData::ClassDoc, HashMapHasherDefault, HashMapComparatorDefault<String, void>, DefaultTypedAllocator<HashMapElement<String, DocData::ClassDoc> > >::operator[](String const&) (/home/runner/work/godot4-nightly/godot4-nightly/core/templates/hash_map.h:561)
[3] DocTools::generate(BitField<DocTools::GenerateFlags>) (/home/runner/work/godot4-nightly/godot4-nightly/editor/doc/doc_tools.cpp:443)
[4] EditorHelp::_gen_extensions_docs() (/home/runner/work/godot4-nightly/godot4-nightly/editor/doc/editor_help.cpp:3098)
[5] void call_with_variant_args_static<>(void (*)(), Variant const**, Callable::CallError&, IndexSequence<>) (/home/runner/work/godot4-nightly/godot4-nightly/core/variant/binder_common.h:699)
[6] void call_with_variant_args_static<>(void (*)(), Variant const**, int, Callable::CallError&) (/home/runner/work/godot4-nightly/godot4-nightly/core/variant/binder_common.h:765)
[7] CallableCustomStaticMethodPointer<void>::call(Variant const**, int, Variant&, Callable::CallError&) const (/home/runner/work/godot4-nightly/godot4-nightly/core/object/callable_method_pointer.h:249)
[8] Callable::callp(Variant const**, int, Variant&, Callable::CallError&) const (/home/runner/work/godot4-nightly/godot4-nightly/core/variant/callable.cpp:57)
[9] CallQueue::_call_function(Callable const&, Variant const*, int, bool) (/home/runner/work/godot4-nightly/godot4-nightly/core/object/message_queue.cpp:221)
[10] CallQueue::flush() (/home/runner/work/godot4-nightly/godot4-nightly/core/object/message_queue.cpp:270)
[11] Main::cleanup(bool) (/home/runner/work/godot4-nightly/godot4-nightly/main/main.cpp:5088)
[12] /home/runner/work/_temp/godot_bin/godot.linuxbsd.editor.dev.x86_64(main+0x264) [0x561985daa73e] (/home/runner/work/godot4-nightly/godot4-nightly/platform/linuxbsd/godot_linuxbsd.cpp:127)
[13] /lib/x86_64-linux-gnu/libc.so.6(+0x29d90) [0x7f0008629d90] (??:0)
[14] /lib/x86_64-linux-gnu/libc.so.6(__libc_start_main+0x80) [0x7f0008629e40] (??:0)
[15] /home/runner/work/_temp/godot_bin/godot.linuxbsd.editor.dev.x86_64(_start+0x25) [0x561985d8ae55] (??:?)
-- END OF C++ BACKTRACE --
================================================================
timeout: the monitored command dumped core
./.github/other/check-example.sh: line 38: 3311 Aborted timeout "$EDITOR_TIMEOUT"s "$GODOT4_BIN" -e --headless --path "$dir" --quit
`` |
Basis::looking_at)