1.0.0 (HaxeFoundation release)
- 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)
0.11.2: (Haxe Foundation Release)
- Parsing fixes:
- Expressions inside of type parameters.
- Make sequential operators cause syntax errors.
- Allow anonymous local function declarations.
- External function declarations with simple bodies getting 'Unexpected semicolon' messages.
- Custom meta-data with empy parentheis.
- Named nested (local) function declarations.
- Prototype functions in abstract types.
- Allow @arrayAccess
- Array access where the name is parenthesized.
- Allow @final on property declarations.
- Allow and recover from variable declarations that don't require a semicolon (e.g. preceded by a block).
- Allow trailing comma inside of an object literal.
- Allow trailing comma at the end of an array literal.
- Block statements when used as an initializer.
- Fix NPE when haxelib.json was missing from a library.
- Fix an exception when the Haxe SDK is set up incorrectly.
- Added Adobe AIR target
- Refactor haxelib library dependency detection and project update.
- For FindUsages, ask whether to search for base class/interface usages.
- Fix bug with environment variables not being passed through to forked processes in some cases. (Issue #659)
- Add haxelib and neko directories to (the start of) the Path before forking a process.
- Better tracking of settings changes.
- Better parsing of HXML/lime (or "haxelib run lime") output.
- Fix IndexOutOfBoundsException when checking for static extensions and static member methods have no parameters. (Issue #652)
- Better parser recovery for "extends" and "implements" statements. (Issue #137)
- Fixed identifier resolving for dot-references defined in "type params." (Issue#674)
- Fixed parameter count resolution for anonymous functions. (Partially closes issue #521.)
- Add neko and haxelib directories to the PATH/Path environment variable when running plugin commands (affects lime, etc.).
- Better cache coherency for completions.
- Improved hxml parsing.
- Added mechanism to track project and module settings changes.
- Improve locating files when traversing the stack frames during debugging.
0.11.1: (community release)
- Check for and halt type resolution when a cyclical/recursive definition is found.
- Address some freezes by delaying use of indices until indexing is complete.
- Speed haxelib syncing (and stop unnecessary re-indexing). (Regression)
- Fix freezes by fixing some multi-threading issues and other exceptions being thrown.
- Speed up parsing of arrow functions.
- Add Haxe-specific double-click selection logic for strings and comments. (Issue #212)
- Reroute debugging informational errors to the status bar instead of modal dialogs.
- Fix compilation halting on "- Link" informational messages.
- Add neko and haxelib directories to the path when building projects (for all platforms; used to be OSX-only).
- Fix multi-platform build issues (for the plugin, particularly affects Windows builds).
0.11.0: (community release)
- Support IDEA 2017.1
- Add parsing support for "Arrow Functions."
- Better recovery of parsing errors in function parameter lists.
- Fixed exceptions occurring when adding libraries, so auto-adding will work again.
- Delay using project indexes until scanning is complete.
- Proper resolution of constructors ('new').
- Display parameter tip text when creating new object instantiations.
- Better parsing of shift-and-assign operators.
- Now correctly resolves variables declared in 'for' statements when the iterated type is parameterized. (Issue #528)
- Resolve chained classes with type parameters (generics).
- Correct completion with EitherType<>. (Issue#512).
- Parse @:const type parameters without error. Also allow constants as type parameters.
- Added navigation to getter/setter methods from property accessors.
- Annotate strings with incorrect quotes and add quick-fix intention to convert them.
- Note optional arguments with a ? when displaying methods.
- Improved method signature check.
- Added searching of implementation declared by superclasses.
- Properly parse and evaluate compiler conditionals (#if...#else...#end)
- Resolve array access with types other than "Array."
- Better 'Main class' chooser for the 'Project Settings->Haxe Compiler' dialog.
- Fix property getter/setter quick-fixes.
- Add location data, if known, to compiler completion error messages.
- Display available completions even when the compiler reports an error.
- Fixed incomplete results from a compiler run.
- Better logic for removing duplicate entries from completion lists.
- Better code completion using the compiler -- OFF BY DEFAULT! Turn on in File->Project Structure...
- Fix parsing of all compiler conditionals. (#417, #121, partly #115, and others)
- Fix parsing of one-liner conditional compilation style (issue #417, #121, partly #115)
- Support for `@:require` haxe_ver comparing (issue #418)
- Support for `@:require` and `@:jsRequire` with multiple arguments
- Better handling of closing parens, brackets, quotes. (Issues #545, 546)
- Fix parsing when an anonymous function call is defined and immediately executed. (Issue #544)
- Fix library name parsing issues for haxelibs using non-standard paths.
- Resolve URLs properly when adding haxelibs.
- Updated Haxe logo bitmaps.
0.10.1: (community release)
- Use Java's file library for detecting symlinks instead of IDEA's.
- Formatting: Prevent excess linefeed between doctyp and function.
- Fix completion for for loop variables. (issue #511)
- Support for IDEA up through 2016.3.
- Updated parsing for hxcpp 3.3 compiler error output.
- Add support for type check syntax (expr : type). (issue #510)
- Fixed cursor not indented in class body after var or function declaration. (issue #492, case 1)
- Highlight "in" and "as" as keywords when they appear in import statements.
- Highlight "in" as a keyword when it appears in a for statement. (issue #501)
- Add support for string literals as the keys in structures. (issue #498)
- Support @:native annotation for functions and variables. (issue #490)
- Stop using the classpath to auto-add external libraries to projects. (issues #477 #100)
- Fix re-ordering imports in certain situations. (issue #494)
- Fix 'never' setter. (issue #486)
- Change class paths for external libraries on OSX.
- Fixed creating classes in TEST source roots
- Fixed debug Flash on Haxe-compiler target
- Fixed crash on MACRO_CLASS_LIST assert
- @:deprecated support (issue #459, #473)
- Alias imports support (issue #466)
- Imports optimization: reordering added (issue #471)
- Fixed typedef multiple extensions highlighting
0.9.10: (community release)
- Better packages resolving
- Fix catch parameter declaration (issue #419)
- Fix inherited type in field initializer (issue #412)
- Delete single-class file in one operation from Project View (issue #424)
- Fix interface properties accessor check annotation (issue #411)
- Error highlighting added for variable redefinition (issue #431)
- Fix generic sub-type resolving when import just type-module (issue #435)
- Extensions: using variants and resolving for children and implementations of base class or interface added (issue #433)
- Fix typedef generic params resolving (issue #304)
- General "@:enum abstract" support (issues #427, #428, #429)
- Fix import / using statements class name completion (issue #286)
- Incorrect “public” modifier when override methods fixed (issue #439)
- Incorrect field access modifier after action generate set/get methods. Can't use action generate set/get methods for static fields. (TiVo Issue #442)
- Fix use scope for var declarations (issue #235)
- Find usages import filtering (issue #426)
- Completion for word `super`: handle `super` word like `this` word (issue #87)
- Fix forwarding abstract fields completion and resolving. (issue #447, #108)
- Navigate to symbols (issue #340)
- Fix incorrect error annotation in extended class for static fields and methods with same names like in base class. (issue #449)
- Fix method local variables and arguments completion. (issue #455)
0.9.9: (community release)
- IDEA v15 compatibility. (IDEA 13 compatiblity removed.)
- v15 Project Structure and Module settings dialogs work. (TiVo Issue #380)
- HXML: Fix `Editor/Colors & Fonts/HXML` tab (name & preview)
- HXML: highlighting for included `.hxml` file
- Fix unhandled exceptions while parsing numeric constants
- Fix typedef types not resolved variants for completion list
- Fix error annotation when implements `extern interface`
- Fix extending anonymous types. (TiVo Issue #353)
- Error annotation if type extends itself. (TiVo Issue #377)
- Fix qualified name resolving for ancillary types declaration (multiple types inside .hx file)
- Fix resolving variables having names identical to type names except for case. (TiVo Issues #405, #234)
- Fix incorrect package resolution. (TiVo Issues #95, #176)
- Fix base fields resolving for extended anonymous types (TiVo Issue #408)
- Prevent recursion due to extending self for classes and typedefs.
- Using file with multiple helper classes typedefs (for example `haxe.macro.Tools`) (TiVo Issue #128)
- Allow short assignment syntax for generics. (TiVo Issue #388)
- Fixed expected package name to no longer reference the system root. (TiVo Issue #387)
- Save and restore OpenFL arguments on the Haxe Module settings dialog. (TiVo Issue #74)
- Fixed repainting issue for OpenFL dialog when selecting compiler types. (TiVo Issue #44)
- Fixed error parsing for Windows platforms.
0.9.8: (community release)
- Version 14.1.5 and 14.1.6 compatibility.
- Fix up some expressions to ignore non-error messages.
- Fix comment alignment for single-line comments.(Issue #295)
0.9.7: (community release)
- Fix the watch pane when debugging: typing and completion now work.
- Load files using canonical names so that sym-linked files use the same buffer as the original file.
- Use full package name when determining file to open when debugging.
- Attempt to follow the classpath to determine which file to open when multiple files have the same package names.
- Use implicit classpath entries during classpath operations. (e.g. haxe/std)
- Remove "statics of XXX" from the debugger variable window pane. (The Haxe debugger at http://github.com/tivo/hxcpp-debugger has been updated to show statics as part of the object tree for objects in view.
- Remove error embellishments before displaying errors in the debugger variable pane.
0.9.6: (community release)
- Fix debugger trying to populate all variables when stopped at a breakpoint.
- Suppress display of back-end generated intermediate variables when debugging.
- Fix NPE when editing files outside of a project.
0.9.5: (community release)
- Add new typing support for type checking and completion. (Thanks to Carlos Ballesteros!) (Issues #288,#291,#308,#317)
- Support static extensions in completion. (Again, Thanks, Carlos!)
- Fix debugger getting stuck "collecting data" for some variables (particularly, "this"). (Issue #325)
- Better compiler error highlighting. (Issue #180 redux.)
- Fix Cut/Copy/Paste buffer inconsistencies (Issue #196)
- Add generics support. (First level only, chained sequences remain incomplete.)
- Allow object literals as return statements. (Issue #278)
- Fix NPE during annotation, causing annotation to stop. (Issue #316)
0.9.4: (community release)
- Fix compile error highlighting in the output pane and jumping to source location when an error is clicked upon (Issues #129, #160, #180).
- Fix debugger execution under IDEA 14 and 14.1.
- Fix move package
- Fix MoveFile showing "unimplemented" message. (Issues #222, #88)
- Fix copy/paste clipboard functionality.
- Show completion for all static members (Issue #262).
- All unit tests enabled and passing for IDEA versions 13.1, 14.0, and 14.1.1.
- Fix rename not updating all usages (Issue #222)
- Fix parameter info tool tips and code tips.
- Command line ant builds (of the plugin) for automated testing.
- Fix parsing 'new' in ternary expressions (Issue #229).
- Better handling of comments.
- Fix member visibility scoping issues with extern and private keywords.
- Stop generating 'public' and 'private' modifiers when generating getter/setters.
- Stop treating interfaces and extern class declarations identically.
- Disallow multiple variables being declared in one statement for class fields.
- Print compiler commands to the message pane along with command output.
- Fix hang when using the OpenFL compiler for variable and method completion.
- Use correct completion contributor for OpenFL project configurations.
- Fix parsing failures for certain cases of "@meta" and "@:pos" (Issue #81).
- Fix unresolved type error if using full class path without importing the class (Issue #39).
- Resolve extern enum values via qualified name.
- Resolve classes within the same package but defined in a different module (Issue #168).
- Hopefully fix compiler based auto-complete performance problems (Issue #230).
- Fix Plugin wrongly accepting comma separated fields that the compiler wont (Issue #83).
- Fix rare ClassCastException when re-opening projects.
- Fix NotNullExceptions when getting field types for dynamic fields.
0.9.3: (community release)
- Fix local variable name suggestions to not clash with existing class fields.
- Fix Introduce Variable refactoring to find all occurrences of the selected expression.
- No longer block Java (and other) tests from running when Haxe plugin is installed. (Issue #166)
- Resolve static function imports for import with in keyword. ("import String.fromCharCode in f;") (Issue #191)
- Give extern fields public visibility: 'function a()' will be treated as 'public function a()' and will appear in completions.
- Fix (un)comment multiple lines of code feature. (Issue #209)
- Support 'as' keyword in import statements.
- Implemented Refactoring: Pull Members Up/Push Members Down
- Support extern interfaces. (Issue #202)
- Fix visibility determination for methods. (Better completions)
- Check for duplicate imports when copy/pasting.
- Fix resolving classes that appear inside of an import file with a different name than the class itself. Fixes goto declaration as well.
- Fix colorizing identifiers (variable names) in code.
- Fix Issue 162: "call(new x(), new x());" parse failure.
- (Re)Allow "new" for extern and prototype function declarations.
- Fixed IDEA freeze when XML is edited
- Implemented Refactoring: Extract Superclass
- Implemented Refactoring: Extract Interface
- Implemented Refactoring: Push Members Down
- Fixed OutOfBoundsException when resolving names.
- Fix most unit tests.
0.9.2: (community release, IDEA 14 only)
- Fixed: HaxeReferenceCopyPasteProcessor issue preventing from using copy paste clipboard functionality
0.9: (community release)
- Release ID change only
0.8.1.1.TiVo.4: (community version, TiVo Release 4)
- Class Hierarchy view panels implemented. (Menu->Navigate->Type Hierarchy, et al)
- Better handling of import files.
- Better handling of Haxe language parsing, including many Haxe 3 features.
- Automatic detection and use of installed haxe libraries (using the 'haxelib' command).
- Better completion (Ctrl-space) using the Haxe compiler -- OpenFL projects only.
- Refactorings:
- Pull up members from class to super-class
- Pull up members from class to interface
- Split into declaration and assignment
- Optimize imports
-
0.8.1.1.TiVo.ClassHierarchy.16: (community version, TiVo RC5)
- Refactoring: Pull up members from class to super-class
- Refactoring: Pull up members from class to interface
- Launch Haxe/Neko tests (Patch #131)
-
0.8.1.1.TiVo.ClassHierarchy.15: (community version, TiVo RC4)
- Fixed issue 37 (Parser doesn't recover after new A)
- Fixed issue 95 (Local and class variable names resolving to similar package names)
- Fixed issue 132 (incorrect processing of duplicate imports)
- Fixed issue 134 (incorrect reformat of object and array children)
- Fixed reference resolution for expressions in parenthesis - otherwise, code assist does not work for those.
- Fixed: launching test with neko, overriding haxe build parameters for test run configuration, filtering test result output, compilation path of non test build, line number for ErrorFilter; and removed hard-coded path for ErrorFilter
-
0.8.1.1.TiVo.ClassHierarchy.14: (community version, TiVo RC3)
- Fixed NPE causing the structure view to not populate, resulting from an errant merge.
-
0.8.1.1.TiVo.ClassHierarchy.13: (community version, TiVo RC2)
- Resolve 'convenience' imports that do not export a class named similarly to the file. (TiVo Issue #55)
- Update unbalanced preprocessor token highlighting and detection.
- Improve indentation of comments and preprocessor macros.
- Update for Grammar-Kit 1.2.0.1
- Fixed syntax rules (BNF) for constructors and external functions.
- Fixed syntax rules (BNF) for code blocks; removed them from being valid syntax everywhere an expression can appear.
- Fixed syntax rules (BNF) to allow meta tags on typedefs.
-
0.8.1.1.TiVo.ClassHierarchy.12: (community version, TiVo RC1+Fixes)
- Auto-indent when adding curly brackets now works correctly. Fixes github tivo/intellij-haxe Issue #119. (Thanks, Jérémy!)
- Fix IDE hang on completion for Haxe compiler completions.
- Fix auto-adding new import statements above package declaration and/or comments.
- Fix NPE when manually adding new import statements.
- Put debugging dialogs on the UI thread.
- Fix ArrayOutOfBounds exception when initializing haxelib cache.
-
0.8.1.1.TiVo.ClassHierarchy.11: (community version, TiVo RC1)
- Fix NPE when colorizing.
-
0.8.1.1.TiVo.ClassHierarchy.10: (community version, TiVo WIP)
- Added timeout to long-running call hierarchy searches.
-
0.8.1.1.TiVo.ClassHierarchy.9: (community version, TiVo WIP)
- Fixed Haxe command-line debugger integration for OpenFL projects that are targetting C++ native runtime environments.
- Fixed method hierarchy runtime exceptions, and auto-scrolling to source.
- Fixed type hierarchy auto-scrolling to source.
- Enhanced run & debug output to be color-coded for improved readability.
- Fixed find-usages regression.
-
0.8.1.1.TiVo.ClassHierarchy.8: (community version, TiVo WIP)
- More load-time optimizations using new 'haxelib list-path' command.
- Add package and file names to Type hierarchy window. (File names only display if the file name differs from the type name.)
- Fixed supertypes list in the combo view of the Type hierarchy window.
- Allow block statements everywhere.
- Allow array literals to have additional comma [1,]
- Moving a file from one package to another no longer displays "Unimplemented" and now moves the file, however references are not yet updated. Issue #88 -- still unresolved.
- Updated unit tests. Issues: #71, #68.
- Fix formatting for ">=", which is used be to reformatted to "> =". Issue
- Fix logic for HaxeIfSurrounder.java /testIf test case/
-
0.8.1.1.TiVo.ClassHierarchy.7: (community version, TiVo WIP)
- Repaired resolving references to classes and variables.
-
0.8.1.1.TiVo.ClassHierarchy.6: (community version, TiVo WIP)
- Further optimized load time for large projects.
- Run haxelib->Project/SDK/Module library dependency synchronization in the background.
- HXML completion: add parameters for compiler argument to presentable text of completion item
- Completion from Haxe compiler: parse function parameters and return type to generate completion item with parameters and return type
- Completion from Haxe compiler: format data from compiler replace "<" to "<" and ">" to ">"
- HaxeReferenceImpl.java getVariants(completion): Handle case when "var d:Array = []; d.|" when d is not resolved
- Add description to completion recived from Haxe compiler: HaxeMetaTagsCompletionContributor.java HXMLDefineCompletionContributor.java HXMLCompilerArgumentsCompletionContributor.java
- Preliminary Haxe compiler completion support (OpenFL only)
-
0.8.1.1.TiVo.ClassHierarchy.5: (community version, TiVo WIP)
- Decreased time to load large projects considerably. Note that project loading is still on the UI thread, so it may appear to lock up for a short period of time. For very large projects, 90 seconds is not out of the ordinary.
- HXML completion: Provide available libraries list
- HXML completion: show installed haxelibs(also installed libs removed from available haxelibs list)
- Fix meta tag parsing issues
- HaxeMetaTagsCompletionContributor provides completion for meta tags
- Project Xml(NME, OpenFL project project) completion: show available and installed haxelibs
- SplitIntoDeclarationAndAssignment intention action
-
0.8.1.1.TiVo.ClassHierarchy.4: (community version, TiVo WIP)
- Merged with version 0.8.1.1.TiVo.2 from the TiVo/master branch.
- Class Hierarchy partial implementation.
- SuperTypes work. Sub-types work within the same module.
- All recent changes from github.com/Jetbrains/intellij-haxe/master
- Support typedef optional parameters
- Support optional function types
- Eat compile-time conditional statements only (prevent eating conditional body as it was before)
- Fix multiple metas issue on class
- Highlight compile-time conditional statements if they don't have matching closing statements
- Remove "from" and "to" from keywords, instead highlight them only if they used in abstract declaration
- Prevent suggesting imports for using statements
- Resolve references that have full path to type/field
- Support function types, anonymous types as abstract type
- Automatically add and remove dependencies when project gets opened
- Remove ">=" and ">>=" tokens from lexer, instead parse ('>' '=') to avoid issues(HaxeFoundation#42)
- Support "inline" declaration attribute on local functions
- Suggest to import class on code paste
- Support macro expressions(including ECheckType)
- Lots more... TODO: Get a complete list of updates.
The following sub-releases are included:
0.8.1.1.TiVo.2: (TiVo version)
- openFL path can now be retrieved from an .iml file
0.8.1.1: (community version)
- "Find usages in project" fixed.
- Allowed @:final on methods and fields.
- Re-implemented hxcpp debugger support to work with Haxe v3 built-in debugger
0.8.1: (community version)
- Remove com.intellij.modules.java from dependencies list to make plugin work in PHPStorm(and other IntelliJ IDEA platform-based IDEs)
0.8: (community version)
- Migration to new IntelliJ IDEA 13.1 API
- HXML syntax highlighting
- HXML completion
- Parser support for different types of imports
- Parser support for @:jsRequire and more parser fixes
0.7.2: (community version)
- New version number
- basic hxml support
- @:jsRequire meta support
- Haxe grammar: @:jsRequire and macro support
- templates naming fix ("create new class/enum/interface" issue)
- new/get/set/never keywords, get/set identifiers are valid, jar build
0.7.1:
- Bug fixes for 13.1.1
0.7:
- Bug fixes
0.6.9:
- Neko target for OpenFL
- Bug fixes
0.6.5:
- OpenFL support
0.6.4:
- Optimize imports
0.6.3:
- Parser improvements
0.6.2:
- Bug fixes
0.6.1:
- Haxe 3 support
0.6:
- Folding
0.5.8:
- Bug fixes
0.5.6:
- NME support improvements
- HXCPP debugger improvements
0.5.5:
- Bug fixes
0.5.4:
- New Compiler Mode
0.5.2:
- Bug fixes
0.5.1:
- Bug fixes
0.5:
- HXCPP Debugging
- Bug fixes
0.4.7:
- Introduce Variable Refactoring
- Using Completion
- Bug fixes
0.4.6:
- Conditional Compilation Support
- Bug fixes
0.4.5:
- Live Templates
- Surround With Action
- Smart completion
- Goto Test Action
0.4.4:
- Bug fixes
- EReg support
0.4.3:
- Bug fixes
- Structure view
0.4.1:
- Bug fixes
- Unresolved type inspection
0.4:
- NME Support
- Override/Implement method action
- Generate getter/setter action
- Parameter info action
0.3:
- Type resolving improvements
- Goto Implementation(s) action
- Goto Super Method action
- Move refactoring
0.2.3:
- Completion fixes
0.2.2:
- Type resolving improvements
- Rename refactoring
- NMML scheme
- HXML support
0.2.1:
- Type resolving improvements
- Documentation support
- New color settings
0.2:
- Jump to declaration of local, std symbol or class
- Reference completion
- Class completion
- Color settings
- Code formatter
- Go to Class
- Icons for Haxe files
- Search for usages
- Highlight symbol occurencies
- Debugger for Flash target ("Flash/Flex Support" plugin required)
0.1:
- Haxe module and SDK
- Parsing Haxe files
- Keyword completion
- Compile Haxe files and run in Neko VM