Skip to content
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

Attempting to instrument lime hits several problems #24

Open
47rooks opened this issue Jun 4, 2024 · 0 comments
Open

Attempting to instrument lime hits several problems #24

47rooks opened this issue Jun 4, 2024 · 0 comments

Comments

@47rooks
Copy link

47rooks commented Jun 4, 2024

Testing with flixel and the openfl/lime stack it uses.

Libs in installed:
flixel-demos: [3.1.0]
flixel-tools: [1.5.1]
flixel: [5.6.2]
hxcpp: [4.3.2]
instrument: [git]
lime: [8.1.2]
openfl: [9.3.3]
safety: [1.1.2]

Haxe version 4.3.3

Only lime is really interesting here. In order to catch where the application exit (when you click the X window close button) so the profiler could shutdown properly I added lime to the instrumented packages, The exit call is in lime.system.System line 212 in this version, and is called when you hit X. But trying this exposed other problems instrumenting in lime in general so logging this issue.

My project.xml includes the following. The flixel excludes are an attempt to reduce the performance impact of instrumentation on the game speed.

<haxeflag
	name="--macro"
	value='instrument.Instrumentation.profiling(["", "flixel", "lime"], ["source","MY_PROJECT_DIR/.haxelib/flixel/5,6,2", "MY_PROJECT_DIR/.haxelib/lime/8,1,2"],[ "flixel.animation", "flixel.effects", "flixel.input", "flixel.math", "flixel.path","flixel.sound", "flixel.graphics.frames", "flixel.text", "flixel.tile", "flixel.tweens","flixel.ui", "flixel.util"])' />
   <haxeflag
	name="-D" value="profiler-console-hierarchy-reporter" />

Note you can list the package as lime.system rather than just lime but the result is the same.
Run lime build hl and you get

lime build hl
Instrumenting..........................................................................................................................................................................................................  
MY_PROJECT_DIR/.haxelib/lime/8,1,2/src/lime/utils/AssetLibrary.hx:172: lines 172-182 : lime.text.Font should be lime.utils.Bytes
export/hl/haxe/ApplicationMain.hx:153: characters 5-36 : ... Called from macro here
MY_PROJECT_DIR/.haxelib/lime/8,1,2/src/lime/utils/Float32Array.hx:135: characters 10-35 : Could not determine type for parameter T_subarray
MY_PROJECT_DIR/.haxelib/lime/8,1,2/src/lime/utils/Int32Array.hx:133: characters 10-35 : Could not determine type for parameter T_subarray
MY_PROJECT_DIR/.haxelib/lime/8,1,2/src/lime/utils/UInt32Array.hx:133: characters 10-35 : Could not determine type for parameter T_subarray
MY_PROJECT_DIR/.haxelib/lime/8,1,2/src/lime/utils/UInt8Array.hx:131: characters 10-35 : Could not determine type for parameter T_subarray
MY_PROJECT_DIR/.haxelib/lime/8,1,2/src/lime/utils/UInt16Array.hx:133: characters 10-35 : Could not determine type for parameter T_subarray
MY_PROJECT_DIR/.haxelib/lime/8,1,2/src/lime/utils/AssetLibrary.hx:376: lines 376-386 : error: lime.text.Font should be lime.utils.Bytes
MY_PROJECT_DIR/.haxelib/lime/8,1,2/src/lime/utils/AssetLibrary.hx:376: lines 376-386 : ... have: lime.app.Future<lime.text.Font>
MY_PROJECT_DIR/.haxelib/lime/8,1,2/src/lime/utils/AssetLibrary.hx:376: lines 376-386 : ... want: lime.app.Future<lime.utils.Bytes>
MY_PROJECT_DIR/.haxelib/lime/8,1,2/src/lime/graphics/OpenGLES3RenderContext.hx:4106: characters 9-81 : Variables of type Void are not allowed
MY_PROJECT_DIR/.haxelib/lime/8,1,2/src/lime/graphics/OpenGLES3RenderContext.hx:4276: characters 9-54 : Variables of type Void are not allowed
MY_PROJECT_DIR/.haxelib/lime/8,1,2/src/lime/graphics/OpenGLES3RenderContext.hx:4316: characters 9-54 : Variables of type Void are not allowed
MY_PROJECT_DIR/.haxelib/lime/8,1,2/src/lime/graphics/OpenGLES3RenderContext.hx:4326: characters 9-55 : Variables of type Void are not allowed
MY_PROJECT_DIR/.haxelib/lime/8,1,2/src/lime/utils/UInt8ClampedArray.hx:143: characters 10-35 : Could not determine type for parameter T_subarray
MY_PROJECT_DIR/.haxelib/lime/8,1,2/src/lime/utils/Int8Array.hx:131: characters 10-35 : Could not determine type for parameter T_subarray
MY_PROJECT_DIR/.haxelib/lime/8,1,2/src/lime/utils/Float64Array.hx:133: characters 10-35 : Could not determine type for parameter T_subarray
MY_PROJECT_DIR/.haxelib/lime/8,1,2/src/lime/utils/Int16Array.hx:133: characters 10-35 : Could not determine type for parameter T_subarray
@47rooks 47rooks changed the title Attempting to instrument lime his several problems Attempting to instrument lime hits several problems Jun 4, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant