-
Notifications
You must be signed in to change notification settings - Fork 76
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
Add RefCounted.unref() to manage lifetime of RefCounted objects #375
base: main
Are you sure you want to change the base?
Commits on Feb 16, 2024
-
Add RefCounted.unref() to manage lifetime of RefCounted objects
This calls new extension function mem_release() to decrement reference count and actually delete object when it goes to 0.
Configuration menu - View commit details
-
Copy full SHA for fca8210 - Browse repository at this point
Copy the full SHA fca8210View commit details -
Configuration menu - View commit details
-
Copy full SHA for ba8815d - Browse repository at this point
Copy the full SHA ba8815dView commit details -
Configuration menu - View commit details
-
Copy full SHA for a512d32 - Browse repository at this point
Copy the full SHA a512d32View commit details -
Use object_destroy when reference count goes to 0
This already existed in the extension functions. Rename system library to libgodot_system, for use by target SwiftGodotTestability.
Configuration menu - View commit details
-
Copy full SHA for 951a729 - Browse repository at this point
Copy the full SHA 951a729View commit details -
On macOS use .binaryTarget(name: "libgodot_binary") and reference with libgodot_dependency. On other platforms use .systemLibrary(name: "libgodot_system") and reference with libgodot_dependency.
Configuration menu - View commit details
-
Copy full SHA for 30adc24 - Browse repository at this point
Copy the full SHA 30adc24View commit details -
Remove use of autoreleasepool, which isn't cross platform
Use local blocks instead to ensure memory is cleaned up.
Configuration menu - View commit details
-
Copy full SHA for 3396852 - Browse repository at this point
Copy the full SHA 3396852View commit details -
Configuration menu - View commit details
-
Copy full SHA for f316ecf - Browse repository at this point
Copy the full SHA f316ecfView commit details -
Configuration menu - View commit details
-
Copy full SHA for 463c15e - Browse repository at this point
Copy the full SHA 463c15eView commit details -
Make SwiftGodotTestability available on all platforms
Change libgodot target dependencies to "libgodot_tests" on macOS.
Configuration menu - View commit details
-
Copy full SHA for 4050f34 - Browse repository at this point
Copy the full SHA 4050f34View commit details -
Make .run() / .stop() public so callable from LinuxMain.swift
Add --verbose flag to arguments array.
Configuration menu - View commit details
-
Copy full SHA for dfd9cb6 - Browse repository at this point
Copy the full SHA dfd9cb6View commit details -
Configuration menu - View commit details
-
Copy full SHA for 3c94928 - Browse repository at this point
Copy the full SHA 3c94928View commit details -
Add additional extension functions
displayserver_set_runloop sets up a callback to give time to the main runloop. main_iteration calls Main::iteration() to give time to the Godot main loop.
Configuration menu - View commit details
-
Copy full SHA for faf30f5 - Browse repository at this point
Copy the full SHA faf30f5View commit details -
Add RunLoop extension to set up display server runloop callback
Also starts a timer that calls Main::iteration() while runloop has control. This is needed for when XCTest blocks the runloop until test expectations are finished.
Configuration menu - View commit details
-
Copy full SHA for 8154ef8 - Browse repository at this point
Copy the full SHA 8154ef8View commit details -
Call RunLoop.install() to install runloop callbacks
Add additional runtime states.
Configuration menu - View commit details
-
Copy full SHA for d4863c4 - Browse repository at this point
Copy the full SHA d4863c4View commit details -
Configuration menu - View commit details
-
Copy full SHA for 60e49e2 - Browse repository at this point
Copy the full SHA 60e49e2View commit details -
Configuration menu - View commit details
-
Copy full SHA for 90d5f9d - Browse repository at this point
Copy the full SHA 90d5f9dView commit details -
Conform to the XCTRuntime protocol
This ensures all tests are run from inside a live Godot engine. Simplify GodotTestCase Avoids the need to use platform-specific XCTest details to arrange for a GodotEngine to be running during tests.
Configuration menu - View commit details
-
Copy full SHA for b6b0e08 - Browse repository at this point
Copy the full SHA b6b0e08View commit details -
Configuration menu - View commit details
-
Copy full SHA for c49b0f0 - Browse repository at this point
Copy the full SHA c49b0f0View commit details