[EDIT: We found a significant performance issue in 1.0.1, so we’ve released a 1.0.2 version that fixes it. Have fun!]
We have released an update to the IntelliJ-Haxe plugin. This is a small release, mostly to fix some incompatibilities that had crept in — and to support IDEA 2018.1.
I have to apologize to @mayakwd who put a lot of effort into what I simply termed as “refactored imports” in the previous release notes. As he pointed out, there were a number of important changes that developers will want to be aware of. (They are now enumerated as the first five entries in the 1.0.0 notes.)
1.0.1 (HaxeFoundation release)
- Updated change notes for 1.0.0 (enumerated several important import changes).
- Add Haxe Sdk setup validation.
- Use SDK classpath as well as sourcepath to find the standard library. (Issue #774)
- Better error handling when haxelibs are installed incorrectly. (Issue #780)
- 2017.3 and 2018.1 builds. (Issues #719, #789)
- Workaround debugger crash. (Issue #792)
- Fix typo in haxelib metadata parser, which was keeping library sub-tree source directories from being found.
1.0.0 (HaxeFoundation release)
- Import of static fields/methods.
- Imports alias hinting support.
- Proper wildcard import resolution.
- Import optimizer now works properly.
- Proper module scoping for resolving.
- Add $trace to the list of built-ins to recognize.
- Semantic Annotation: Infer missing function types from code blocks.
- Semantic Annotation: Support arrow functions.
- Semantic Annotation: Add local variable type checking.
- Properly detect function types when used in type parameters (generics).
- Fix Flash “Run” target to launch the file that the compile process creates.
- Non-OpenFL projects now use a better algorithm to determine output directories and files.
- Add source directories to classpath during compiler completions. (More completions, fewer errors.)
- Use non-haxe-logo version of icons when completions are not provided by the compiler.
- Compatibility fix for non-IDEA products: stop logging to stderr! (Issue #724)
- Improved Enum parsing; added generalized algebraic data types support.
- Add true Map literal support. (No longer parsed as Array.)
- Added visibility detection rules (e.g. @NoCompletion) regarding language docs.
- Fixes to error message parsing (no longer account info messages to JetBrains installation directory).
- Split ‘lime test’ into ‘lime update; lime build’ and ‘lime run’, for Make and Run/Debug tasks.
- Add folding support:
- For documentation comments (/** */).
- For comment regions. (// region Name … // end region) (Issue #529)
- Braces for classes, methods, etc.
- For imports and usings.
- For compiler conditionals (#if, etc.)
- Fixed a number of NPEs in the ProjectUpdater.
- Add enums from the current file completion suggestion lists.
- Fixed the resolution order for imports vs. package. (Issue #741)
- Fixed inability to resolve enum parameter symbols at case statement. (Issue #351)
- Dropped support for IDEA versions 14 and 15.
- Internal: Began refactoring the resolver. New models are introduced.
- Changed “static variable override” to a weak warning, instead of a regular warning.
- Imports handling has been refactored.
- Allow @:meta without parens.
- Properly parse variable declarations in return statements. (Issue #329)
- Fixed parsing of ‘throw’ statements within a ternary expression. (Issue #704)
- Allow all string literal forms as field identifiers in structures. (Issue #662)