Starling update to version 2.7?

Is there any chance to update Starling OpenFL to version 2.7?

Original changelog:



The best way would be to use a tool like WinMerge or Meld and compare Starling 2.6 and 2.7 to find the differences, then look to apply them to the Haxe version. It could be done commit-by-commit, though trying to do it wholesale in one commit (with the help of a diff tool) is probably the most productive route

1 Like


If nobody is working on this I’ll probably have a look at it, not sure when though :sweat_smile:

1 Like

Good news) Thx!
Starling 2.6 brings very useful ButtonBehavior class.

P.S. I think it will be very useful for OpenFL too.

It will be useful… for people using Starling in OpenFL :slight_smile:

I have no idea how many people do that, but I use Starling and still plan to use it for a while (I mostly use Feathers for UI though) plus this will be a good thing for potential as3 users that would like to switch to OpenFL

I’ll follow singmajesty’s advice and have a look with winmerge to get an idea of how much work is involved


I think Starling need own version of new OpenFL ChildAccess class
It is not difficult to create an analogue for Starling.

And there is pull request with fixing deprecation warnings.

Seems it can be nice update for Starling after 4 years)

1 Like

Thanks, if you have more links like this pull request please share !

I don’t know about adding features that are not part of the original Starling… I’m all for it but my knowledge of the open source culture is not that great : is it ok to do so ?

The philosophy of open source encourages forking and making changes to fit your needs. This sort of thing is definitely not frowned upon.


That’s good to know, thanks Josh.

I guess it’s fine as long as the changes don’t “break” anything and are pretty much optionnal or invisible enhancements.

Of course on my own fork I feel free to do whatever I want, but here it would be an update to the “official” openFL Starling, hence my question :slight_smile:

Since ChildAccess is an enhancement specifically for Haxe that shouldn’t conflict with anything from the original Starling, I think that it’s fine.

I believe I’m done with the initial 2.7 update, for anyone interested it’s here GitHub - MatseFR/starling at v2.7

I’m gonna have a look at the differences between the 2.7 release and the current code on as3 starling, I think there have been additionnal commits.

Then I’ll look into the ChildAccess thing


I fixed a few issues on 2.7 branch (DisplacementMapFilter looking weird, Color.interpolate returning weird values)
I’m also done with the changes from 2.7 to the current as3 Starling Github, I created another branch : GitHub - MatseFR/starling at current-as3-starling

warning : I didn’t do the changes on AssetManager for mimeType detection (lazy + not comfortable tackling those as I’m unfamiliar with Haxe XML)

1 Like

You can use this as a start point - ChildAccess.hx — Яндекс.Диск

ChildAccess class for Starling here starling/ChildAccess.hx at current-as3-starling · MatseFR/starling · GitHub

I grouped properties and methods for each class or my head would explode :sweat_smile:

I put it in starling.extensions so it’s clear it’s not part of the original lib

There was a small update to TextField too, some stuff I missed in the previous updates.

1 Like

Wow, cool! Using Starling extensively, will definitely give updated version a try. Thanks for updating it!

BTW: there was a problem that leads to crashes on MacOs. Problem is specific to Haxe code generation, not starling itself: MacOs monteray: app crashes - #2 by Ilja_Razinkov
seems it is the same in your updated version (needs to be fixed), i can make a pull request if needed

1 Like

Thanks for the heads up ! I committed your fix (use an Array and use resize(0) instead of .length = 0)

Starling is great, it deserves a bit more exposure :slight_smile:

I’m not sure what more needs to be done now : I updated the source code and the haxelib.json file… what’s next ?

1 Like

Starling is great, it deserves a bit more exposure

Totally agree :slight_smile:

I’m not sure what more needs to be done now : I updated the source code and the haxelib.json file… what’s next ?

Probably do haxelib register && submit ( Using Haxelib - Haxelib Documentation ) with the name like starling-hx (for example). Or get in touch with singmajesty / tbyrne / p.j.shand (contributors, mentioned here: ) for making update to current starling haxelib.

Starling work great as is already, seems Air dev is also slowed down, so hopefully there will be no need for serious changes in future (anyway willing try to help since i’m using it and have no plans to switch).

Open a pull request?

I’ve been doing this on my github but the idea was to end up with a pull request to the openFL github :slight_smile:

That being said, I think the situation on openFL starling has problems : for example the pull request that fixes the issue should have been merged long ago. It kinda feels like a ghost ship right now (no offense intended)

I don’t know how it works but I think we would need someone with an actual interest in Starling to have access to the levers on openFL-starling’s github. At least being able to merge pull requests.

Yeah, looks fine. Merged.

1 Like