Bugfixes:
- fixed inline values trying to show out-of-scope values
- fixed JS broswer debugger not evaluating variable values
- fixed inline values showing for sharp conditions, type names and enum fields
Changes and Improvements:
- changed default of
haxe.disableInlineValue
to true - updated language-server-protocol lib
New Features:
- added support for InlineValueRequest which is used by VSCode during debugging to annotate lines with variable values
Bugfixes:
- fixed extract interface misplacing resolved type hint (#655)
- fixed null access on empty indentation config (via rename lib)
Changes and Improvements:
- updated to haxe-rename version 3.0.1
- updated to tokentree version 1.2.18
- updated language-server-protocol lib
- added non-lix / vshaxe-build based compilation option to vshaxe / haxe-languageserver
New Features:
- added Extract Type refactor module
- added Extract Interface refactor module (#649)
- added Extract Method refactor module (#632)
- added Extract Constructor Params refactor module as vars or finals
- added Rewrite Vars To Finals refactor module
- added Rewrite Finals to Vars refactor module
- added Wrap With Try…Catch refactor module
Bugfixes:
- fixed issue with hover range being null (#641)
Changes and Improvements:
Bugfixes:
- fixed multiple issues with rename symbol (#631)
- fixed issue with Haxe executable in path with spaces (#639)
- disabled completion popup after #if and #end (haxe-languageserver#132)
Changes and Improvements:
- updated to haxe-formatter version 1.17.1
- updated to haxe-rename version 2.2.3
- removed obsolete activationEvents from package.json
Bugfixes:
- fixed spawnSync throwing an exception when Haxe is run through a
.cmd
shell script on Windows (#635) - fixed exception on didChangeWatchedFiles event with server recording turned off (#636)
New Features:
- added support for new Json RPC based diagnostics introduced in 4.3.5 (#629)
- added option
useLegacyDiagnostics
to allow opt out of Json RPC - added syntax support for binary literals
- added support for child nodes in cache tree view (#626)
- added binary cache size to cache tree view
Changes and Improvements:
- replaced safe navigation macro uses with null-safe field access operator (haxe-languageserver#127 + haxe-languageserver#128)
Bugfixes:
- fixed dirty status of cache tree view
- fixed output channel taking focus
- fixed postfix trace emitting a second semicolon (haxe-languageserver#126)
- fixed async code actions (haxe-languageserver#120)
Changes and Improvements:
- added a problem matcher when using recent Haxe versions to align behavior (#614)
New Features:
- added
displayHost
setting to allow changing host ip address for completion server
Bugfixes:
Bugfixes:
- fixed version number and changelog
New Features:
- added
Fix All
command (#576, #586, haxe-languageserver#101). You can enable autofixes on save for simple compiler errors, like missing semicolons, see Fix All - added
-D message-reporting=pretty
mode support to build tasks (#587, haxe-languageserver#103, haxe-languageserver#107) - added quick fix for
modifier is not supported for module-level fields
(haxe-languageserver#92) - added
Extract to var in enclosing scope
action (haxe-languageserver#95), see example - added
Change final to var
quick fix (haxe-languageserver#96) - added update syntax code actions for null operators: (haxe-languageserver#97, haxe-languageserver#106), see examples
- added
Invert if
action (haxe-languageserver#108), see example - added
Add type hint
action (haxe-languageserver#115), see example - added missing comma generation for anon structs (haxe-languageserver#100)
- added unittests for code actions (haxe-languageserver#110)
- added
populateCacheFromDisplay
config (haxe-languageserver#111)
Changes and Improvements:
- improve
haxe.enableBraceBodyWrapping
setting (#588) - improve error message for
could not find identifier to rename
(#578) - code actions now support snippets in code generation (#585, haxe-languageserver#99).
- improve problems view: indent related information to show sub error depth (#105)
Bugfixes:
- fixes ANSI codes in haxe server output (haxe-languageserver#102, haxe-languageserver#104)
- fixes unicode offsets in actions (haxe-languageserver#98)
- fixes type generation in missing argument action (haxe-languageserver#109, haxe-languageserver#112)
- fixes file switching breaks completion before active code editor save (#591, haxe-languageserver#113)
- fixes null access in GotoDefinitionFeature (haxe-languageserver#94)
- fixes interface fields generation (haxe-languageserver#114)
- fixes server recording with no svn / git binaries in path (#590
New Features:
- added Show Output Channel command (#568)
- added "Add argument" code action for "Too many arguments" compiler diagnostic (haxe-languageserver#87)
- added notification for server-client commands (#573)
- added support for new Haxe 4.3 diagnostics with related information (haxe-languageserver#91)
- added quickfixes for parser error diagnostics (haxe-languageserver#93)
Changes and Improvements:
- added support for commented out imports when sorting imports (#574)
- added hint for haxe.renameSourceFolders setting (#578)
Bugfixes:
- fixed replace range for missing override code action (haxe-languageserver#88)
- fixed "[rename] error: could not find identifier to rename (haxe-languageserver#86)
- fixed hxml debug flag description (haxe-languageserver#85)
- fixed using
npm ci
for github workflows (haxe-languageserver#89) - fixed duplicate registration ids (#564)
New Features:
- added server communication recording (#566)
Changes and Improvements:
- updated to haxe-formatter version 1.14.6
- updated to tokentree version 1.2.8
- changed server/invalidate calls to occur only once per file between compilations (haxe-languageserver#84)
New Features:
- added module dependents to Haxe cache view (#563)
Changes and Improvements:
- updated to haxe-formatter version 1.14.4
- changed Haxe server view module list display to trees (#561, #562)
- changed the default value of
"editor.inlayHints.enabled"
to"off"
for Haxe files (#555)
Bugfixes:
- fixed offsets with surrogates pairs (haxe-languageserver#76)
- fixed some replace ranges with disabled auto-imports (haxe-languageserver[#77, #78])
- fixed type parameter snippet being triggered if there already is one (haxe-languageserver#79)
New Features:
- added inlay hints feature wiki/Inlay Hints
- added automatic selection of Haxe configuration based on file name (#544)
Changes and Improvements:
- updated haxeparser, tokentree and formatter libs to support inline markup
- added
haxe.renameSourceFolders
setting description - updated syntax to support numeric literal changes
Bugfixes:
- fixed find-in-folder in the dependencies panel for paths containing commas (#539)
Bugfixes:
- fixed Organize Imports losing a final newline when formatter configuration has
emptyLines.finalNewline
set tofalse
This version requires VSCode 1.67 or above.
New Features:
- added
Rename Symbol
action support for renaming variables, fields, types and packages (learn more on wiki/Rename-Symbol) 0xAARRGGBB
and0xRRGGBB
hex values will now be highlighted as colors in code. You can disable this feature with"[haxe]": {"editor.colorDecorators": false}
in yoursettings.json
(haxe-languageserver#59)- added
"haxe.enableBraceBodyWrapping"
option (#525, see this issue for example) - added VSHaxe release notes prompt after extension update (#528)
Changes and Improvements:
- toplevel completion will be smarter for modules with same name (#518)
{required fields...}
item is now before{all fields...}
for objects generation (haxe-languageserver#56)- improved positions for generated class fields (haxe-languageserver#62)
- improved sorting for deprecated types in completion (haxe-languageserver#66)
Bugfixes:
- fixed compilation server process might not terminate after closing workspace (#526)
- fixed type hint completion replace range (haxe-languageserver#60)
- fixed completion was triggered after
case:
(haxe-languageserver#61) - fixed signature hints for functions without documentation (haxe-languageserver#63)
- fixed Ctrl+Hover definition preview (haxe-languageserver#64)
Changes and Improvements:
- updated to haxe-formatter version 1.13.0
Bugfixes:
- fixed HashLink bytecode grammar file missing from releases (#490)
Bugfixes:
- fixed case-sensitive env variable merging on Windows (haxe-languageserver#52)
New Features:
- added
haxelibExecutable
to the extension API (#479)
Changes and Improvements:
- format unresolved identifier diagnostics the same as the corresponding Haxe error (#483)
Bugfixes:
- fixed env vars being lowercased on eval/Windows with compilation server (#482)
Changes and Improvements:
- improved missing field generation to sort them by declaration order
- updated to haxe-formatter version 1.12.0
Bugfixes:
- fixed missing abstract class fields being generated with
override
- fixed "implement missing fields" not working if a variable is one of them
- fixed
static
missing from variables generated with missing field quickfix - fixed missing field quickfix not working at module level
- fixed function arguments with default values being printed with
?
(#468)
New Features:
- added support for abstract classes (HXP-0012)
- added code actions to implement missing interface, abstract class and property fields (#205)
- added a code action to make a class with non-implemented fields
abstract
- added a code action to create non-existent fields (#232)
- added syntax highlighting for
overload
andabstract
modifiers - added syntax highlighting for
hlcode.txt
/ HashLink bytecode dump files (haxe-TmLanguage#51)
Changes and Improvements:
- added
..
to HXML file system completion - updated to haxe-formatter version 1.11.2
- improved goto definition performance when invoked through ctrl+click (#366)
Bugfixes:
- fixed HXML completion for libraries with dots in their name (#452)
- fixed organize imports cutting of trailing comments (haxe-formatter#628)
- fixed import sorting eating lines when formatting is turned off (haxe-formatter#632)
Bugfixes:
- fixed hover hints for compiler metadata
Bugfixes:
- fixed diagnostics-based code actions not working anymore
Bugfixes:
- fixed "Rename Symbol" not working correctly (#448)
Changes and Improvements:
- added syntax highlighting support for the
is
operator outside of parens (haxe#9672)
Bugfixes:
- fixed struct completion with optional functions (#449)
- fixed mid-word HXML completion with dashes (#450)
New Features:
- added support for completion and hover in HXML files (#28)
- added expected type completion for array, map and regex literals
- added a
listLibraries()
method to theHaxeInstallationProvider
extension API
Changes and Improvements:
- improved import code actions to only be marked as "preferred" if there's only one option
Changes and Improvements:
- improved error handling for conflicts with
"haxe.enableExtendedIndentation"
(#410)
Changes and Improvements:
- added support for
--java-lib-extern
to HXML syntax highlighting - updated to haxe-formatter version 1.11.0
Bugfixes:
- fixed some issues with completion provider disposal and deactivation
New Features:
- added support for
--jvm
to HXML syntax highlighting and the extension API (Haxe 4.1.1) - added initial support for module-level fields in snippets, hover and completion (HXP-0007)
- added
var
,final
andfunction
snippets within fields
Bugfixes:
- fixed postfix
switch
completion not working on enum abstracts since Haxe 4.1.0 (#436)
Changes and Improvements:
- include all overrides when invoking "Find References" on a method (requires Haxe 4.1)
Bugfixes:
- fixed toplevel completion not working with a
private final class
(#430) - fixed deprecated types not showing up in toplevel completion
Bugfixes:
- fixed text document cache getting out of sync in rare cases (#376)
Changes and Improvements:
- updated to haxe-formatter version 1.10.1
Bugfixes:
- fixed order of class paths not being preserved correctly in
getActiveConfiguration()
- fixed a race condition that could happen during language server startup
New Features:
- added
getActiveConfiguration()
to the extension API (#221)
Changes and Improvements:
- changed the required VSCode version to 1.42.0
- changed the default of
"editor.suggestSelection"
to"first"
in Haxe files (requires VSCode 1.44) - added a
HAXE_COMPLETION_SERVER
environment variable for tools like haxeshim - added support for more icons in workspace symbols (requires Haxe 4.1.0)
Bugfixes:
- fixed
import
andusing
being highlighted within words (haxe-TmLanguage[#49, #50]) - fixed function arguments sometimes being shown as optional when they're only nullable
- fixed only the type being shown in enum abstract value hover
- fixed language server startup not being triggered in rare cases
Bugfixes:
- fixed auto-imports with metadata and line comments (#414)
- fixed language mode of a file changing to Haxe not triggering language server startup
New Features:
- added support for "Go to Implementations" (requires haxe#9079)
- added a
"haxe.maxCompletionItems"
setting
Changes and Improvements:
- code lens now only show the subclass / -interface count when there are any
- improved the stability of code lens by reusing old results
- "This case is unused" diagnostics now gray out the code
- included the current Haxe executable in the "outdated Haxe version" notification (#390)
- extended the "outdated Haxe version" notification to Haxe 3
- improved override completion to respect
@:noCompletion
metadata (#398) - improved activation to avoid server and UI startup in non-Haxe projects
- improved Haxe communication to use a socket rather than stdio if possible (#217, #393)
- removed support for Haxe 4 preview builds earlier than 4.0.0-preview.4
Bugfixes:
- fixed
=>
in extractors not working with font ligatures in some themes - fixed code lens not working in some files (haxe#9092)
- fixed completion breaking on
@:optional
functions (#409) - fixed cpp/java/cs compilation with lix through build tasks and the caching build
- fixed optional structure fields not being printed with a
?
(#383)
New Features:
- added import/using sorting to "Organize Imports"
- added a "Sort imports/usings" source action
- added a code action to extract constants from string literals
- added auto indentation in
switch
and single lineif
/else
/ etc (#133, #399) - added auto indentation for
/** **/
doc comments - added a
"haxe.enableExtendedIndentation"
setting
Changes and Improvements:
- improved compatibility with Haxe 4.1.0 nightly builds
- updated to haxe-formatter version 1.9.2
Bugfixes:
- fixed eval-debugger sessions not properly stopping on stop
Changes and Improvements:
- updated the "outdated Haxe 4 preview" message for Haxe 4.0.0
Bugfixes:
- fixed an incompatibility with the Haxe 4.0.0 release
Bugfixes:
- fixed issues with range formatting of multiline comments and strings (#382)
Changes and Improvements:
- updated the "outdated Haxe 4 preview" message for Haxe 4.0.0-rc.5
Bugfixes:
- fixed some issues with HXML files that contain
--next
(#378)
Bugfixes:
- fixed an issue with whitespace handling in range formatting
Changes and Improvements:
- updated to haxe-formatter version 1.9.1
Bugfixes:
- fixed "Reveal In Explorer" in Haxe Dependencies on macOS (#379)
- fixed tokens being duplicated in some cases with range formatting (#381)
New Features:
- added support for "Format Selection" and
"editor.formatOnPaste"
Changes and Improvements:
- updated to haxe-formatter version 1.9.0
Bugfixes:
- fixed a hang when parsing macro reification in some situations (#360)
New Features:
- added fading out of inactive conditional compilation blocks (#271) *
- added hover hints in compiler conditionals *
- added a
"haxe.useLegacyCompletion"
setting *
* requires Haxe 4.0.0-rc.4
Changes and Improvements:
- diagnostics are now removed when the file they belong to is closed
- updated the Haxe cache view for changes in Haxe 4.0.0-rc.4
- updated the "outdated Haxe 4 preview" message for Haxe 4.0.0-rc.4
Bugfixes:
- fixed names in type snippets with
Module.platform.hx
Bugfixes:
- fixed keyword / snippet completion outside of functions
Changes and Improvements:
- added strike-through rendering for deprecation diagnostics (haxe#8632)
- improved completion performance by limiting the number of results (haxe#8642)
- improved error message for starting eval-debugger without a configuration (#370)
Changes and Improvements:
- changed the required VSCode version to 1.37.0
- updated icons for VSCode 1.37.0
Changes and Improvements:
- improved completion to detect deletion and creation of types (haxe#8451)
Bugfixes:
- fixed filtering in toplevel completion
- fixed type snippets appearing in import completion
Changes and Improvements:
- added manual links to metadata completion and hover (haxe#8350)
- added "Find in Folder..." to the context menu of folders in Haxe Dependencies
Bugfixes:
- fixed
macro
missing from modifier keyword completion
Bugfixes:
- fixed replace ranges of metadata completion
- fixed HXML highlighting with Haxe arguments as substrings (haxe-TmLanguage#44)
Bugfixes:
- fixed incorrect parameter highlighting in signature help in some cases (#352)
- fixed mid-word invocation of completion with Haxe 4.0.0-rc.3 (haxe#8438)
- fixed mid-word invocation of postfix completion (
expr.swit|
)
Changes and Improvements:
- updated to haxe-formatter version 1.8.0
- updated the "outdated Haxe 4 preview" message for Haxe 4.0.0-rc.3
Bugfixes:
- fixed "Internal" stack frames being clickable in eval debugging
New Features:
- added a
HaxeInstallationProvider
extension API - added a
source
toHaxeExecutableConfiguration
in the extension API - added automatic extension recommendations for lix, Lime and Kha projects
Bugfixes:
- fixed some "unhandled method" errors in the Haxe output channel on startup
Bugfixes:
- fixed highlighting of type names in
IntIterator
literals (haxe-TmLanguage#43) - fixed highlighting of
#if
conditions with capitalized defines
Bugfixes:
- fixed classpath parsing not working anymore
New Features:
- added a
"haxelib.executable"
setting (#227)
Changes and Improvements:
- updated to haxe-formatter version 1.7.1
- added "Show Error" / "Retry" buttons to the "Haxe has crashed 3 times" message
- added syntax highlighting support for
#if foo.bar
style conditionals (haxe#8353) - improved startup time by bundling and minifying vshaxe's JS binaries
- improved completion to auto-trigger again after inserting
<>
(haxe#8007) andinline
Bugfixes:
- fixed import generation with metadata and no existing imports (#347)
- fixed some issues with
--cwd
handling
Changes and Improvements:
- updated to haxe-formatter version 1.7.0
- changed the highlighting of
import
andusing
for more consistency with other languages - renamed the
"haxe.displayConfigurations"
setting to"haxe.configurations"
- renamed the
"haxe.selectDisplayConfiguration"
command to"haxe.selectConfiguration"
Bugfixes:
- fixed a regression with
--cwd
by using absolute paths in display requests again (#345)
Bugfixes:
- fixed a regression with empty line handling when generating imports
New Features:
- added a
Reveal Active File in Side Bar
command (#341) - added a
"haxe.codeGeneration.switch.parentheses"
setting (#336)
Changes and Improvements:
- improved completion to hide
@:deprecated
types (haxe#8178) - changed
switch
to be generated without parentheses by default (#336)
Bugfixes:
- fixed syntax highlighting in hover and completion with VSCode 1.34
- fixed some path / cwd issues by using relative paths for display requests (#248, #310)
- fixed import insertion in files with license headers (#325)
- fixed methods view not being able to show identical methods in the queue (#344)
- fixed performance issues caused by request cancellation not working (#344)
Bugfixes:
- fixed backwards compatibility with VSCode versions < 1.33
- fixed eval-debugger being incompatible with Lix (eval-debugger#6)
New Features:
- added a
"haxe.enableCompletionCacheWarning"
setting
Bugfixes:
- fixed postfix completion incorrectly triggering after
case
sometimes (#337)
New Features:
- added snippet completion for generating type, field and
package
boilerplate - added a large number of postfix completion items:
- forwards and backwards
while
loops trace
/print
/string
null
/not null
is
/type check
/unsafe cast
/safe cast
not
/else
onBool
return
- forwards and backwards
- added a
"haxe.postfixCompletion.level"
setting - added field modifier keywords to completion
Changes and Improvements:
- improved completion to trigger automatically after
$
in string interpolation - improved completion in doc comments (now falls back to word based suggestions)
- improved completion to disallow
(
as a commit character for metadata - improved performance with
"haxe.exclude"
(Haxe dev) - improved
"haxe.exclude"
to apply to classpath parsing / workspace symbols too (Haxe dev) - improved postfix completion to allow
switch
on non-enum types as well - moved all postfix completion items to the end of the completion list
- hide unused imports diagnostics if compiler errors exist to avoid false positives
- hide unresolved identifier diagnostics if parser errors exist to make them easier to spot
Bugfixes:
- fixed
:
not being auto-inserted afternull
/true
/false
patterns - fixed mid-word invocation of postfix completion (
expr.swit|
)
Changes and Improvements:
- added
var
andfinal
to postfix completion - improved postfix completion so that items don't always show on top
New Features:
- added support for the "Auto Fix" command and preferred code actions
- added an "Add override keyword" quick fix (Haxe 4+)
- added postfix
for
completion for any type with iterators (requires Haxe 4.0.0-rc.2) - added postfix
for
completion for anylength
/count
/size
fields
Changes and Improvements:
- updated to haxe-formatter version 1.6.0
- updated eval-debugger for Haxe 4.0.0-rc.2 (no longer works with rc.1)
- updated the "outdated Haxe 4 preview" message for Haxe 4.0.0-rc.2
- improved folding to support folding
case
anddefault
blocks - improved
for
loops generated by postfix completion by including a body - improved import quick fixes to offer both import styles when applicable
- removed support for signature-help based code generation (Haxe 3.4)
Bugfixes:
- fixed postfix
switch
completion onNull<Enum>
(requires Haxe 4.0.0-rc.2)
New Features:
- added document symbol / folding / formatting support in untitled files
- added a view to inspect Haxe's cache (requires latest Haxe dev)
- added an upgrade notification for old Haxe 4 preview builds
Changes and Improvements:
- updated to haxe-formatter version 1.5.1
- fixed compatibility with upcoming VSCode 1.32.0 (#317)
- improved HXML detection to ignore
extraParams.hxml
(#320) - improved the "cache build failed" warning to include a retry button
- included parser errors in diagnostics (requires latest Haxe dev) (#102)
- moved the Haxe Methods view to a separate Haxe Server view container
- replaced the
"haxe.enableMethodsView"
setting with"haxe.enableServerView"
Bugfixes:
- fixed tasks not working on Windows with a
haxe
folder next tohaxe.exe
- fixed icons of extern enum abstract values in completion
- fixed rename being permitted (and subsequently failing) on fields (#318)
- fixed missing dot paths in import completion when type is already imported
New Features:
- added debugging support for Haxe 4 macros and
--interp
scripts - added postfix
for
completion tohaxe.ds.Map
andhaxe.ds.List
- added support for markdown syntax highlighting in doc comments
Changes and Improvements:
- changed the required VSCode version to 1.31.0
- init project command: added a
launch.json
for macro /--interp
debugging
Bugfixes:
- fixed tasks no longer working in VSCode 1.30.x (vscode#67990)
Changes and Improvements:
- changed the required VSCode version to 1.30.0
- support the new
clear
option in"haxe.taskPresentation"
- updated to haxe-formatter version 1.4.0
Bugfixes:
- worked around tasks not working in VSCode 1.31.0 (vscode#67990)
Changes and Improvements:
- updated to haxe-formatter version 1.3.0
- disallowed using
(
as a commit character in pattern completion (#292)
Changes and Improvements:
- updated to haxe-formatter version 1.1.2
Changes and Improvements:
- really updated to haxe-formatter version 1.1.1 ^_^
Bugfixes:
- fixed tasks not working when vshaxe hasn't been activated yet (#296)
Changes and Improvements:
- updated to haxe-formatter version 1.1.1
- added syntax highlighting support for key-value iterators (HXP-0005)
- added expected argument info when hovering over call args (requires Haxe 4 preview 5)
- added more details to metadata docs in completion / hover (requires Haxe 4 preview 5)
- don't save auto-selected display configurations (#295)
- allowed using the "Organize Imports" command to remove unused imports
Changes and Improvements:
- updated to haxe-formatter version 1.1.0
- allowed auto-closing of brackets in single quote strings (#123)
- added syntax highlighting support for
final class
/interface
(haxe#7381)
New Features:
- added support for code formatting (using haxe-formatter)
Bugfixes:
- fixed highlighting of macro patterns
Changes and Improvements:
- improved document symbol ranges to include doc comments
New Features:
- added support for removing unused imports with
"editor.codeActionsOnSave"
- added support for triggering quick fixes from the problems view in VSCode 1.26
- added a folding marker for the imports / usings section in a module
- added folding markers for
#if
/#else
/#elseif
conditionals (#36) - added folding markers for multi-line string and array literals
Bugfixes:
- fixed static import completion with Haxe 4.0.0-preview.4 (#265)
- fixed document symbol ranges in files with Unicode characters
Changes and Improvements:
- improved folding of block comments (the final
**/
is now hidden too) - improved completion and document symbols to ignore locals named
_
- improved completion in nested patterns (requires haxe#7287)
- auto-trigger signature help in patterns (requires haxe#7326)
Bugfixes:
- fixed
Restart Language Sever
duplicating document symbols - fixed document symbols not using the operator icon in abstracts
New Features:
- added hierarchy support to document symbols for the outline view (#223)
Bugfixes:
- fixed several issues related to display argument provider initialization (#235)
Changes and Improvements:
- improved document symbols to work with conditional compilation
- improved document symbols to support Haxe 4 syntax (
enum abstract
,final
...) - removed arguments and type parameters from document symbols
- show a warning in case there's an error during "Building Cache..."
New Features:
- added support for fading out unused code
- added
"explorer.autoReveal"
support to the dependency explorer (#152) - added
"print"
options to the"haxe.displayServer"
setting (#240) - added a
"haxe.exclude"
setting to allow hiding dot paths from completion (#234) - added a request queue visualization to the Haxe Methods view (#241)
- added a
Debug Selected Configuration
command (#236) - added support for "Go to Type Definition" (requires haxe#7266)
Bugfixes:
- fixed auto-imports in override generation being duplicated (#257)
- fixed compilation through the server for HXML files with
--next
(#262) - fixed a crash in the dependency explorer when
haxelib
isn't available (#249) - fixed opening/closing folders in the dependency explorer not working properly
- fixed libraries in the dependency explorer being listed twice in rare cases (#263)
- fixed types in completion sometimes being sorted counter-intuitively
Changes and Improvements:
- changed the required VSCode version to 1.25.0
- improved completion to allow selecting metadata by typing
(
- improved completion to show the dot path for imported types as well
- improved expected type completion to work with
haxe.extern.EitherType
(#256) - improved the init project command to work without a workspace folder (#225)
- improved the Haxe Methods view to auto-select the most recently run method
- improved hover formatting to have a separator between definition and docs
- support the new
showReuseMessage
option in"haxe.taskPresentation"
- monomorphs in function args and returns are no longer printed (#244)
- changed the
haxe: active configuration
task to only require one config (#230)
Bugfixes:
- fixed disabling of auto-imports in
"haxe.codeGeneration"
settings
The following features, fixes and improvements require Haxe 4.0.0-preview.4:
New Features:
- added support for auto-imports in completion (#2)
- added structure field completion (#110)
- added keywords to completion (#148)
- added
for
,if
,int
andswitch
postfix completion - added "expected type completion" (to generate object literals and anon functions)
- added the origin of locals and fields to completion details and hover
- added support for override generation on
override |
(#92) - added support for goto definition on
override
(haxe#5718) - added a "Haxe Methods" tree view to visualize
--times
output - added a
"haxe.enableMethodsView"
setting (false
by default) - added
"imports"
settings to"haxe.codeGeneration"
- added
"functions.field"
settings to"haxe.codeGeneration"
- added syntax highlighting support for intersection types (HXP-0004)
- added syntax highlighting support for qualified metadata (haxe#3959)
- added syntax highlighting support for
var ?x:Int
syntax (haxe#6707) - added support for Haxe 4 style CLI arguments (haxe#6862)
Bugfixes:
- fixed all cases of completion being triggered after
:
on acase
(#112) - fixed inconsistent presentation of function types in hover (#144)
- fixed signature help not closing when moving outside of the brackets (#216)
- fixed import code actions not working in some places (haxe[#5950, #5951])
- fixed function generation not working with aliased function types (#103)
Changes and Improvements:
- improved workspace symbols performance / avoid hangs on open (haxe#7056)
- improved find references to include results from modules that are not compiled (#96)
- improved completion to show results with the expected type first (haxe#6750)
- improved completion to filter results after
implements
,extends
,>
andnew
(haxe#7029) - improved completion by sorting variables by distance (haxe#7069)
- improved completion to make use of more different / accurate icons
- improved completion to auto-insert tokens where it makes sense
- improved completion to auto-insert enum constructor arguments in patterns
- improved completion to allow selecting functions by typing
(
- improved completion performance by using VSCode's file watcher for cache invalidation
- improved syntax highlighting for imports (wildcard imports, static imports...)
- hover hints and completion now include default values (haxe[#5538, #7147])
- hover hints and completion now show the full declaration for fields and locals
- removed dot paths from imported types in hover hints and completion
- removed support for generating functions with a code action (now uses regular completion)
These changes work with any Haxe version vshaxe is compatible with:
New Features:
- added a
"haxe.enableSignatureHelpDocumentation"
setting (#197) - added Haxe and HXML highlighting in fenced markdown code blocks
Bugfixes:
- fixed several small highlighting issues (haxe-TmLanguage[#40, #41])
- fixed files sometimes being opened twice with different cases on Windows
- fixed the treatment of missing properties in
"haxe.codeGeneration"
Changes and Improvements:
- improved completion to trigger automatically after certain keywords (e.g.
import
) - changed hover hints to use Haxe 4's new function type syntax (HXP-0003)
New Features:
- added a
haxe: active configuration
task if there's at least two configurations - added the ability to specify labels for items in
"haxe.displayConfigurations"
- added a
haxeCompletionProivder
context key (can be used in keyboard shortcuts)
Bugfixes:
- fixed some dependencies missing from the dependency explorer
- fixed compilation server socket not listening on
localhost
(lime-vscode-extension#35) - fixed some issues with argument name generation
- fixed missing diagnostics for Haxe errors without positions (#220)
- fixed "initializing completion" not being removed on language server crashes
- fixed const type param regex literals not being highlighted (haxe-TmLanguage#37)
- fixed language server not exiting properly in some cases (haxe-languageserver#34)
Changes and Improvements:
- added syntax highlighting support for
enum abstract
(haxe#6982) - removed packages from function declarations in hover hints for better readability
- renamed
std
tohaxe
in the dependency explorer
New Features:
- added a
$haxe-absolute
problem matcher for errors with absolute paths (#23) - added a
$haxe-error
problem matcher to add Haxe errors without positions to Problems (#214) - added a
$haxe-trace
problem matcher to add traces to Problems (#139) - added a
"haxe.taskPresentation"
setting (#185) - added
problemMatchers
andtaskPresentation
to the extension API
Bugfixes:
- fixed rename errors not being shown in VSCode (#213)
- fixed some issues that could lead to hangs when compiling through the server
- fixed broken highlighting with functions in enum constructor calls (haxe-TmLanguage#36)
- fixed most cases of completion being triggered after
case
/default
(#112)
Changes and Improvements:
- improved highlighting of escape sequences in strings (haxe-TmLanguage#35)
- clarified the source of problems with
[tasks]
and[diagnostics]
labels (#132) - changed task generation to use the additional problem matchers
Bugfixes:
- don't include unused
vscode-textmate
in the vshaxe extension package
New Features:
- added support for file icon themes in the dependency explorer (#146)
- added a context menu to items in the dependency explorer
- added support for
"haxe.displayPort": "auto"
- enabled by default (#191) - added a
"haxe.enableCompilationServer"
setting - enabled by default (#184) - added support for markdown-formatted documentation in signature help
- added
displayPort
andenableCompilationServer
to the extension API - added highlighting for Haxe 4's new function type syntax (HXP-0003)
- added code folding support for different region marker styles (#202)
Bugfixes:
- fixed the dependency explorer's
std
version missing with Haxe 4 - fixed the dependency explorer's
std
version not updating on"haxe.executable"
changes - fixed the dependency explorer's "Collapse All" button (#212)
- fixed dependency explorer duplicating folders of some
haxelib dev
libs (#156) - fixed highlighting of nested function types in parameters (haxe-TmLanguage#29)
- fixed arrow functions being highlighted in strings (haxe-TmLanguage#33)
- fixed highlighting of capture variables with
var
(haxe-TmLanguage#34) - fixed overloaded methods showing multiple times in completion
- fixed
"haxe.enableCodeLens"
changes not triggering an update (#95) - fixed exit code of clients connecting to
"haxe.displayPort"
always being 0 (haxe#6431)
Changes and Improvements:
- changed the required VSCode version to 1.20.0
- the problems view is now opened after global diagnostics runs (#38)
- document symbols now use separate icons for enum members / operators / structs
- document symbols now show type parameters
- the dependency explorer now shows "dev" for
haxelib dev
libraries instead of the full path
Bugfixes:
- fixed excessive keyword highlighting in HXML files (#177)
Changes and Improvements:
- only show "Haxe Dependencies" in the explorer if vshaxe was activated in the workspace (#174)
- adapt to latest Haxe 4 (development branch) changes
Bugfixes:
- fixed compiler error code actions for indent lengths != 2 (#168)
- fixed completion in workspaces where the selected completion provider doesn't exist anymore
- fixed
package
statement insertion randomly not working (#172)
Changes and Improvements:
- added
final
keyword to syntax highlighting
Bugfixes:
- fixed the dependency explorer for local haxelib repos (#162)
- fixed some issues with Haxe executable handling (#163, #166)
Changes and Improvements:
- added missing compiler metadata identifiers to syntax highlighting
New Features:
- added a
"haxe.executable"
setting - added a task provider for top-level HXML files
- added support for using top-level HXML files as display configurations
- added an extension API enabling Haxe build tools to provide completion (#18)
- added a
Select Completion Provider
command
Bugfixes:
- fixed the dependency explorer for
haxelib dev
libs in the haxelib repo (#141) - fixed the dependency explorer with a relative
"haxe.executable"
path (#58) - fixed the dependency explorer with invalid classpaths
- fixed a minor anon function highlighting issue (haxe-TmLanguage#31)
- fixed renaming
expr
incase macro $expr:
(#142) - fixed a regression with duplicated Haxe output channels (#87)
- fixed line break handling in completion docs (#150)
Changes and Improvements:
- changed the required VSCode version to 1.14.0
- changed dependency explorer selection to open files permanently on double-click
- added support for
@event
JavaDoc tags in highlighting and completion - reduced Haxe server restarts to changes of relevant settings (#153)
- greatly simplified the
Initialize VS Code Project
command - deprecated
"haxe.displayServer"
's"haxePath"
/"env"
in favor of"haxe.executable"
New Features:
- added a "Haxe Dependencies" view to the explorer
- added support for renaming local variables and parameters (haxe-languageserver#32)
Bugfixes:
- fixed a minor string interpolation highlighting issue (haxe-TmLanguage#27)
- fixed catch variables not being listed in document symbols
- fixed diagnostics of deleted / renamed files not being removed (#132)
Changes and Improvements:
- changed the required VSCode version to 1.13.0
- allowed filtering by path in the display configuration picker
- init project command: replaced
-js
with--interp
(#124) - adjusted column index handling to support changes in Haxe 4 (#134)
Bugfixes:
- fixed Unicode character handling for completion with Haxe 4
- fixed filtering in metadata completion (#121)
Changes and Improvements:
- changed the required VSCode version to 1.12.0
- added a progress indicator for Completion Cache Initialization (#108)
- added a progress indicator for Global Diagnostics Checks
- made document symbols much more robust (haxe-languageserver#31)
New Features:
- added highlighting support for Haxe 4 arrow functions (HXP-0002)
- added a
useArrowSyntax
option for anonymous function generation - added a "Generate capture variables" code action
Bugfixes:
Bugfixes:
- fixed toplevel completion hanging in some cases (haxe-languageserver#23)
New Features:
- added a Haxe problem matcher (referenced with
"problemMatcher": "$haxe"
, VSCode 1.11.0+)
Changes and Improvements:
- use the Haxe problem matcher in "Init Project"
Bugfixes:
- fixed support for Haxe 4+ (development branch)
New Features:
- added a
Toggle Code Lens
command (#94)
Bugfixes:
- fixed several small highlighting issues (haxe-TmLanguage[#2, #5, #8, #14, #15, #17])
- fixed signature help sometimes not having argument names (haxe#6064)
- fixed argument name generation with anon structure types
Changes and Improvements:
- diagnostics now update when the active editor is changed
- init project command:
.hxml
files in local haxelib repos are now ignored (#93) - init project command: moved the comments in the generated
settings.json
toREADME.md
- init project command: added
-D analyzer-optimize
to the generatedbuild.hxml
- init project command: a quick pick selection is no longer required with only one
.hxml
file - init project command: use
version
2.0.0 intasks.json
(VSCode 1.10.0) - still attempt display requests without any
displayConfigurations
(#105)
Bugfixes:
- fixed diagnostics always being filtered if
diagnosticsPathFilter
is set
Bugfixes:
- properly handle cancelled requests in the language server (so dead requests don't pile up inside VS Code)
Changes and Improvements:
- no longer request diagnostics if
diagnosticsPathFilter
doesn't match
Bugfixes:
- fixed invalid argument name generation with type parameters (haxe-languageserver#28)
- fixed inconsistent icon usage in field and toplevel completion
- fixed diagnostics sometimes being reported for the wrong file
Changes and Improvements:
- smarter error handling (#20, haxe-languageserver#20)
- ignore hidden files in the "init project" command (#10)
- some minor highlighting improvements (haxe-TmLanguage#10)
- added a quick fix for "invalid package" diagnostics
- leading
*
characters are now removed from signature help docs
New Features:
- allow generation of anonymous functions in signature completion
- added a
"haxe.codeGeneration"
setting
Bugfixes:
- fixed regex highlighting in VSCode 1.9.0
- fixed highlighting of constructor references (
Class.new
) - fixed highlighting of package names with underscores
- fixed highlighting of comments after conditionals (haxe-TmLanguage#1)
- fixed indentation when writing a comment after
}
(#83) - fixed display requests being attempted with no display config
- fixed toplevel completion with whitespace after
:
(haxe-languageserver#22) - fixed some compiler errors not being highlighted by diagnostics (#62)
Changes and Improvements:
- improved handling of Haxe crashes, e.g. with invalid arguments (haxe-languageserver#20)
- support auto closing and surrounding brackets in hxml files (for
--macro
arguments)
Bugfixes:
- fixed highlighting of variables and single quoted strings in the upcoming VSCode 1.9.0
- fixed highlighting of identifiers starting with
var
/function
(#76) - fixed unfinished
package
/import
/using
statements breaking subsequent highlighting - fixed modifiers not being highlighted everywhere (e.g.
extends
in class reification) - fixed highlighting of metadata and const values in typedef type parameters
- fixed highlighting of method declarations with type parameters
- fixed invalid
settings.json
being generated with only one.hxml
file (#47) - fixed highlighting of conditionals with nested braces
- fixed quick fix saying "Remove import" for usings (#32)
- fixed comments and conditionals not being highlighted everywhere (#50)
- fixed leading dots in
Float
literals not being highlighted (e.g. in.52
) - fixed type names with leading underscores not being highlighted as such
Changes and Improvements:
- improved highlighting for macro reification
- improved highlighting for metadata
- improved highlighting for enums
- accessor methods in property declarations are now highlighted (
get_property
,set_property
) UPPER_CASE
identifiers are now highlighted as variables instead of class names- conditionals are now highlighted in a much more distinguishable gray-ish color
--macro
and-main
arguments are now highlighted as Haxe code in.hxml
files- the
is
operator is now highlighted as a keyword (#29) - untyped functions like
__js__
are now highlighted as keywords (#25) ...
inIntIterator
literals is now highlighted as an operator:
in type hints is now highlighted as an operator?
in ternaries is now highlighted as an operator- names of toplevel types are now colored differently in some themes (e.g. Monokai)
- parameter names are now highlighted differently in some themes (e.g. Monokai)
Bugfixes:
- fixed a highlighting-related crash when typing
static
before a field
New Features:
- added proper highlighting for string interpolation (#26)
- added proper highlighting for regex literals
- added proper highlighting for identifiers (method and variable names)
- added highlighting for JavaDoc-tags in block comments (
@param
,@return
etc)
Bugfixes:
- fixed diagnostics not working if project path contains a
'
(#64) - fixed the import insert position with file header comments (haxe-languageserver#27)
$type
is now highlighted as a keywordin
infor
-loops is now highlighted as a keyword- fixed
*
in imports being highlighted as a class name - fixed highlighting for negated conditionals (e.g.
#if !js
) - fixed highlighting of variable initialization expressions (#42)
Bugfixes:
- fixed parsing types of methods with 10+ arguments (haxe-languageserver#26)
New Features:
- added a
Run Global Diagnostics Check
command - added support for Code Lens (needs to be enabled with
"haxe.enableCodeLens"
) - added support for Workspace Symbols (
Ctrl+T
) - added a
"haxe.diagnosticsPathFilter"
setting (and limit diagnostics to the workspace by default) - added support for some "This code has no effect" diagnostics (and a "Remove" code action)
- added "Import" and "Change to" code actions (haxe-languageserver#13)
- added a "Remove all unused imports/usings" code action
- added support for compiler metadata completion (after
@:
) - added support for type hint completion (after
:
) - added support for anonymous struct completion (after
method({
) - added support for
--times
in field and toplevel completion - added JavaDoc parsing for formatting in Hover Hints
- utilize a completion cache to speed up completion significantly
- added a
"haxe.buildCompletionCache"
setting (true
by default) - added a
"haxe.displayPort"
setting for use with--connect
/ to build through the display server
Bugfixes:
- fixed keyboard focus being stolen by the Haxe output channel sometimes
- fixed display config dropdown in the status bar not showing right away (#37)
Changes and Improvements:
- improved code highlighting
- improved handling of unsupported Haxe versions (#16)