Status Report: March 2019

Hi folks,

This month, I spent some time fixing Refactor->Rename… issues — specifically when constructors are renamed along with classes. This doesn’t happen all of the time, but when invoked from certain references, rather than the class name itself. Issue 785 documents the issue. There is a secondary issue that the action is disabled (and menu items grayed out) when it should be perfectly valid. I haven’t finished that, but I have made significant progress in terms of understanding why this happens and am now building a Haxe-specific solution, rather than relying on the default Java solution.

I also spent a significant amount of time refactoring the formatting engine because the new changes to the tab settings UI exposed a number of issues and I’ve been testing more scenarios, which also exposed some issues. Things are much better now and I think I’ve finished, except that I haven’t written the unit tests. That always brings some surprises so we will see how that goes. Look for it soon.

Another long-running task that I’ve been working on has been UI changes for STD library settings and toolkit detection. I could just have released the UI change a few months ago. However, I decided to wrap that up with the changes which locate the installed toolkit and detects versions, so that we know what language features are available to the compiler. (To know whether things like arrow functions (lambdas), property settings, new keywords, and the like are available using specific toolkit versions.) Progress this month has been in the realm of locating and running the compiler and tools to get the specific versions.

What I worked on for our sponsors:

1) Type annotation cleanup: All of last months changes are merged.
2) Refactor->Rename…

What I worked on for the Community:

1) Add Haxe-specific tab settings page.
– Rewrote the formatting rule engine.
– Added new rules for a lot of previously ignored situations.
2) Progress on the new UI for standard library locations.

Community Contributions:

None this month

Next month:

1) Finish tab settings pane.
2) Finish Refactor->Rename changes
3) Fix debugging C++ projects when build with Lime. (Currently looks like
an hxcpp issue.)
4) Add safeguards so that project rebuilds won’t erase directories outside
of the project tree.
4) Time for another release!
6) Continue UI for standard library locations.
7) Haxe 4 features?

Be good, everybody!