I understand the overall concept of the Haxe programming language and OpenFL, but I'm having a lot of trouble understanding the purpose of these various libraries and how they relate to each other and which ones are deprecated.
I've read that lime-tools
is deprecated and became aether
. I've read that aether
is deprecated and became lime-tools
. And I've read that both are deprecated and became lime
. Upon writing this I've now also read that aether
has been reintroduced.
I also don't understand the difference between lime
and openfl
itself as the commands seem to be identical; do they have different processes in accomplishing the same thing?
This has been an issue I've returned to a number of times in my attempt to get up to speed on the current state of Haxe development.
lime-tools
and aether
are both deprecated as of the 2.0.5 version of lime
.
Originally lime-tools
was called haxe-tools
because the project format could be used for any development in Haxe. The Haxe Foundation suggested that it be changed because it wasn't an "officially" supported tool and thus lime-tools
was created. It was kept separate from lime
in hopes that it could still be used by someone not using lime
or openfl
.
During the development of lime
2.0 there was still discussion on whether to keep the tools separate or integrate them directly into lime
. The decision was made to keep the tools generic enough for any Haxe development so lime-tools
was renamed aether
in the idea that the new name would be considered separate from lime
. For a few releases aether
was required to test/build lime
and openfl
projects until Joshua Granick (the primary maintainer of openfl
and lime
) decided to merge the tools with lime
to simplify the installation process.
So as it currently stands lime
contains all of the code from lime-tools
and aether
. You should use lime <command> <target>
from a terminal to build/test/etc a project. lime
also contains code to create an OpenGL context, handle input, and play audio. openfl
is simply the layer on top of lime
that acts as a replacement API for Flash and is now completely written in Haxe.