Skip to content

Latest commit

 

History

History
929 lines (721 loc) · 80.5 KB

CHANGELOG.md

File metadata and controls

929 lines (721 loc) · 80.5 KB

Change Log

0.27.2 (November 25, 2024)

Bug Fixes

  • Fix support for working with XML files on shared folders. See #1033.
  • Fix interaction between <xi:include> and <?xml-model> PI. See #1021.
  • Support xsi:type overrides when resolving content model. See eclipse-lemminx/lemminx#1647.

Build

  • Fix binary build for Alpine linux. See #1015.
  • Switch from GraalVM to GraalVM Community for native image build. See #1035.
  • Fix builds on MacOS ARM64 with Java 8 (Temurin). See #1646.

0.27.1 (May 31, 2024)

Build

  • Use the appropriate Github Actions runner for MacOS Intel architecture. See #1001.
  • Use the correct extension version in download URL for binary server. See #999.

0.27.0 (May 27, 2024)

Enhancements

  • Setting to specify which attributes should be treated as filepaths for the purpose of editor features. See #945.
  • Align XML attributes when formatting. See #272.
  • Provide a Progress support API for LemMinX extension. See eclipse/lemminx#1562.
  • Reduce size of completion items by implementing itemDefaults for CompletionList. See eclipse/lemminx#1561.

Bug Fixes

  • OpenQuoteExpected error for ATTLIST breaks DTD validation. See #943.
  • Error range for src-annotation. See eclipse/lemminx#1276.
  • XML support crashes when workspace folders are empty. See #940.
  • "Surround" Commands are not shown in the Command Palette. See #923.
  • XInclude cannot be activated with binary mode. See #922.
  • Error when booting extension on Mac Silicon. See #974.
  • Update @redhat-developer/vscode-redhat-telemetry to 0.8.0. See #995.
  • Clarify source of indentation in documentation. See #902.

Build

  • Update GH Actions release workflow, and automate pre-releases. See #933.
  • Add support for LemMinX binary natively on MacOS aarch64. See #898.
  • Add support for Alpine Linux. See #986.
  • Update to Node 18. See #928.

0.26.1 (July 12, 2023)

Bug Fixes

  • Ensure binary mode supports Linux distributions using an older version of glibc. See #916.

0.26.0 (July 10, 2023)

Bug Fixes

  • xml.foldings.includeClosingTagInFold has no effect in binary mode. See #1523.
  • Fix regression in "Auto indent" setting of XML/XSD files. See #899.

0.25.0 (April 19, 2023)

Bug Fixes

  • Multiple xml(DownloadProblem) errors when referencing missing schema in file association. See #878.
  • Do not attempt to validate files that use the git:// protocol. See #861.
  • XML attribute associated to wrong type from XSD.. See #524.
  • Don't include .github and .gitignore in the packaged extension. See #891.
  • Update required VS Code version to ^1.67.0. See #872.
  • Comments throws off the cvc-complex-type.2.3 diagnostic range. See eclipse/lemminx#1495.
  • RNG attribute completion doesn't generate the proper prefix if the namespace is not declared. See eclipse/lemminx#1489.
  • Partial formatting yields wrong indentation depth. See eclipse/lemminx#1485.
  • NullPointerException in documentColor. See eclipse/lemminx#1473.
  • Adjust error range for RelaxNG "not allowed yet" when there is choice. See eclipse/lemminx#1459.

Other

  • Report aggregated telemetry on which grammar files and grammar binding strategies are used. See #885.

0.24.0 (January 31, 2023)

Enhancements

  • Completion, definition, references, diagnostics, highlight, code lens, rename, linked editing support for XML references. See #855.
  • Code action to add missing required elements with RelaxNG. See lemminx#1418.
  • Improve the RelaxNG schema validation. See lemminx#1425.
  • Code action to generate RelaxNG RNG file. See lemminx#1405.
  • Support indentation for XML contributed languages. See #862.
  • Visually represent colors in XML documents where possible. See #853.

Bug Fixes

  • "Insert element" code actions don't add close tags when auto close tag is disabled. See lemminx#1458.
  • Improve "Insert only required expected elements" by taking care of choice. See lemminx#1448.
  • Linked editing breaks start tag when closing tag manually. See lemminx#1456.
  • Ignore linked editing range when there are no referenced node to update. See lemminx#1453.
  • Formatting selection fails with root element with mixed content. See lemminx#1414.
  • SAXParseException in the language server trace when editing an .rng file. See lemminx#1441.
  • Ensure attributes on the first line are wrapped correctly. See lemminx#1439.
  • Fix comment formatting with xml.format.maxLineWidth. See #851.
  • Permit binding to a schema from an empty document. See #819.
  • RelaxNG validation with XInclude / File association report DOCTYPE error. See #845.
  • DocumentLink support for xi:include/@href. See lemminx#1401.
  • Binary server doesn't show "element missing child" warning in broken RelaxNG. See lemminx#1460.
  • Refactor "Register catalog" code lens to be in catalog package. See lemminx#1417.

Build

  • Move to vscode-languageclient 8.0.1. See #711.
  • Publish a generic vsix for all other platforms. See #865.
  • React to vsce renaming to @vscode/vsce. See #857, #858.
  • Use commit SHA-1 for pinning untrusted GitHub actions to a version. See #864.

Documentation

  • Fix lint.yaml build status badge. See #852.

0.23.0 (December 15, 2022)

Enhancements

  • Codelens, completion, definition, documentLink, highlighting, references, rename support in RelaxNG file. See #834.
  • Provide ability to contribute to vscode-xml with a custom language. See #589.
  • Fill remote URL with "Bind to grammar / schema". See #808.
  • Surround selection with XML element. See #794.
  • Enable the experimental formatter by default and add xml.format.legacy setting to retain previous formatter. See #823.
  • Add validation support for XInclude. See #175.
  • Support max line length setting. See #350.
  • Add codelens and command to register/unregister catalog. See #572.
  • Set lemminx logfile fallback to global storage. See #814.
  • Combine startup & server.initialized telemetry events. See #818.
  • Provide the capability to bind RelaxNG schema. See #807.
  • Support files.trimTrailingWhitespace setting with experimental formatter. See #800.
  • Remove xml.format.preserveEmptyContent setting for experimental formatter. See lemminx#1346.
  • Improve text content formatting for experimental formatter. See lemminx#1331.

Performance

  • Improve formatting performance with xml.format.grammarAwareFormatting setting. See lemminx#1368.

Bug Fixes

  • RelaxNG schema validation not working when DOCTYPE declaration missing with file association. See #831.
  • XSD based Autocompletion for substitutionGroup. See #825.
  • Applying XML completion generates invalid XML content. See #815.
  • Add MEI, TEI, SVG as keywords. See #811.
  • Add support for SVG files. See #805.
  • Referenced RelaxNG schema not found via XML catalog when using xml-model. See #804.
  • Generate and bind schema doesn't work with experimental formatter. See #802.
  • Fix unexpected behavior of xml.format.preservedNewlines with experimental formatter. See #797.
  • Format CDATA sections without adding new lines. See #585.
  • Generate grammar fails on first attempt with experimental formatter. See lemminx#1382.
  • Add tests for xml.format.grammarAwareFormatting setting and restore mixed content behavior. See lemminx#1364.
  • Prevent exception in DomElementFormatter.formatEndTagElement(). See lemminx#1361.
  • NPE in CodeLens with empty XML file. See lemminx#1396.
  • Autoclose tag generates an unexpected >. See lemminx#1221.

Build

  • Update vscode-redhat-telemetry to 0.5.2. See #812.
  • Fix issues reported by npm-audit. See #775, #799, and #828.

Other

  • Add link to blog for 0.22.0 release. See #826.
  • Update xml.format.joinContentLines settings documentation. See #817.

0.22.0 (October 20, 2022)

Enhancements

  • Support for Relax NG. See lemminx#237.
  • Support xml.format.closingBracketNewLine setting with experimental formatter. See lemminx#1247.
  • Support xml.format.xsiSchemaLocationSplit setting with experimental formatter. See lemminx#1246.
  • Support xml.format.spaceBeforeEmptyCloseTag setting with experimental formatter. See lemminx#1245.
  • Support xml.format.joinContentLines setting with experimental formatter. See lemminx#1244.
  • Support xml.format.joinCommentLines setting with experimental formatter. See lemminx#1243.
  • Support xml.format.preserveEmptyContent setting with experimental formatter. See lemminx#1242.
  • Support xml.format.joinCDATALines setting with experimental formatter. See lemminx#1241.
  • Support xml.format.preservedNewlines setting with experimental formatter. See lemminx#1240.
  • Support xml.format.enforceQuoteStyle setting with experimental formatter. See lemminx#1239.
  • Support xml.format.emptyElements setting with experimental formatter. See lemminx#1238.
  • Set xml.format.xsiSchemaLocationSplit as onPair by default. See #749.
  • Set xml.format.preserveAttributeLineBreaks to true by default. See #748.
  • Provide comment formatting for experimental formatter. See lemminx#1259.
  • Suppress validation kinds based on file pattern. See #774.
  • Report only XML syntax error for *.exsd files. See #782.
  • Place relevant information on the first line of error messages. See lemminx#1145.
  • Validate uri of XML catalog. See lemminx#823.
  • Improve error message for download error. See #763.
  • CodeAction for cvc-complex-type.2.4.b: insert all expected vs. insert all possible. See lemminx#1255.
  • Do not complete paths in attr unless beginning of value looks like a path. See lemminx#1293.
  • Add command Restart Language Server. See #539.
  • Use the HTTP proxy configuration for HTTPS as well. See lemminx#1253.
  • Add usesOnlineServices tag. See #701.
  • Replace find-java-home with jdk-utils. See #627.

Bug Fixes

  • Autocompletion of attribute values won't display documentation. See #736.
  • Annotations found in base complex type not shown on hover. See lemminx#1268.
  • Format is wrong with multiple line content. See #600.
  • Format CDATA sections without adding new lines. See [lemminx#1193](https://github.com/eclipseEnable dependabot/lemminx/issues/1193).
  • Formatting with xml.format.emptyElements: expand chokes on malformed XML. See lemminx#650.
  • Fix format problem with multiple root elements. See #634.

Build

  • Make sure that 'vsce' is installed in nodes that use it. See #789.
  • Explicitly set 'main' as target branch for cloning of lemminx repo. See #750.
  • Unit tests should not store data in the .lemminx folder under the user's home directory. See lemminx#1265.
  • Set up linting for vscode-xml. See #438.
  • Remove darwin-arm64 platform from generic publishing call. See #734.
  • Server binaries for "osx-x86_64" are not found. See #729.
  • Update badges, add "installs" badge. See #767 and #766.
  • Bump terser from 5.6.1 to 5.14.2. See #741.

Other

  • Fix typo with foldings settings. See #771.
  • Added documentation for XML: Restart Language Server. See #743.

0.21.0 (June 30, 2022)

Enhancements

Performance

Bug Fixes

  • externalXmlSettings.xmlFileAssociations not used in getXMLSettings. See #698.
  • DOCTYPE entities interfering with hover annotation display of tags / attributes. See lemminx#1212.
  • Incorrect error range for cvc-identity-constraint.4.1. See lemminx#1210.
  • Resolve uri as system with XML catalog. See lemminx#1199.
  • Added permission check and window error message for LemMinx binary. See #695.
  • After a tag is collapsed, the content of the entire tag cannot be deleted. See #690.

Build

  • Use platform specific .vsix files, and package the lemminx binary into the .vsix. See #593.
  • Fix native image build on Windows builders. See #721.
  • Add LemMinX binary artifacts to release tab only on new changes. See #706.
  • Automatically publish latest snapshot build on Release page. See #656.

Other

  • Add DCO information to CONTRIBUTING.md. See #723.

0.20.0 (March 29, 2022)

Enhancements

  • Improve DTD/XSD security with regard to remote resources. See #671.
  • Closing tags should be included in the code folding range. See lemminx#1178.

Bug Fixes

  • NPE on xsd datatype autocompletion in binary mode. See lemminx#1189.
  • Completion for prefix of attribute name. See lemminx#1133.

Other

  • Add support to download binaries from GitHub Releases. See #685.
  • Fix GraalVM Native Image Builds on Jenkins. See #681.
  • Update GraalVM version used in binary verification builds to x.y.z. See lemminx#1158.

0.19.1 (February 15, 2022)

Bug Fixes

  • Fix endless diagnostic publishing when validation is disabled. See lemminx#1175.

0.19.0 (February 14, 2022)

Enhancements

  • Basic support for parameter entities. See lemminx#1167.
  • Support for document link DTD entity SYSTEM. See lemminx#1165.

Bug Fixes

  • Bad SYSTEM for DTD DocType and Entity breaks the XML validation. See #647.
  • Prevent suspicious directory traversal. See lemminx#1171.
  • Limit resource downloads to http, https and ftp and prevent insecure redirects. See lemminx#1174.
  • Bump follow-redirects from 1.14.7 to 1.14.8. See #647.

Build

  • Eliminate need for downloading just-released binary checksums. See #650.

0.18.3 (February 2, 2022)

Enhancements

  • Support more customization for attribute elements in document symbols protocol. See #633.
  • Add 'telemetry' tag to redhat.telemetry.enabled preference. See #643.

Bug Fixes

Others

  • Use curl instead of wget to be consistent with usage. See #639.

0.18.2 (December 14, 2021)

Enhancements

  • Improve xsd-based quick-fix suggestions. See #618.

Bug Fixes

  • Reduce Telemetry volume for server.document.open. See #620.
  • Renaming Tags with namespaces duplicates namespace. See #621.
  • Add note in binary requirements for Linux distros lacking libc. See #619.

0.18.1 (3 November, 2021)

Enhancements

  • File association pattern validation. See #586.
  • Binding grammar/schema with file associations. See #573.
  • Report schema identifier of XML document through telemetry event. See eclipse/lemminx#1105.

Bug Fixes

  • Handle potentially undefined workspace uri. See #606.
  • Fix issue preventing relative symbolic links from being correctly resolved. See #601.
  • Aggregate errors in xsd:import|include@schemaLocation for referenced grammar which have errors. See #596.
  • Disable external entities when using SAX parser. See eclipse/lemminx#1104.
  • Fix recommended tsl-problem-matcher id. See #608.

Others

  • Update vscode-redhat-telemetry to 0.4.2. See #595.
  • Compress documentation image/gif space. See #568.

0.18.0 (August 10, 2021)

Enhancements

  • Added CodeLens that displays referenced grammars at the top of an XML file. See #569.
  • Added CodeAction to bind an XML document to an existing schema. See #515.
  • If the workspace is not trusted, "Resolve external entities" is set to false. See #537.
  • Command to bind an XML document to an existing schema. See #514.
  • Collect telemetry data about text documents that are opened: file extension, grammar binding strategy, grammar resolving strategy. See eclipse/lemminx#1066.
  • Improved documentation. See #543, #546, #550, #560, #561, #562, #567.

Bug Fixes

  • Fixed stackoverflow and resource leak when calculating folding ranges. See #538.
  • Aligned tag closing bracket with attribute when splitAttributes and closingBracketNewLine are enabled. See #516.
  • Fixed src-import.3.1 error range. See eclipse/lemminx#1075.
  • Fixed src-import.3.2 error range. See eclipse/lemminx#1069.
  • Adding closing bracket (>) in attribute quotation marks causes repeated auto-complete of the closing tag. See #547.
  • Wrong minimal engine 1.37.0 mentioned instead of 1.52.0. See #554.
  • Prevent XML language server from restarting when it crashes due to running out of memory. See #527.

0.17.0 (June 28, 2021)

Enhancements

  • Added closingBracketNewLine formatting option. See #508.
  • Support workspace trust. See #506.
  • Optimize images size. See #497.
  • Better handling of failed binary downloads. See #492.
  • Update to vscode language client 7. See #478.
  • Bind XSD, DTD with CodeLens. See #395.
  • Added Auto Rename Tag. See #130.
  • Promote features of vscode-xml in documentation. See #475.
  • Upgrade @redhat-developer/vscode-redhat-telemetry to 0.1.1. See #504.
  • Support for textDocument/selectionRange. See eclipse/lemminx#1021.

Bug Fixes

  • Error in show reference request when using binary. See #513.
  • Adapt .vscodeignore to the new path matching strategy. See #510.
  • Fixed internal documentation parent directory link support. See #499.
  • Automatically closing tags in multi-cursor mode only closes one tag. See #225.
  • Bump browserslist from 4.16.3 to 4.16.6 to fix security vulnerability. See #482.
  • Fixed 'Go To References' in binary. See eclipse/lemminx#1059.
  • CodeLens does not work in binary. See eclipse/lemminx#1046.
  • Error while saving file to cache on Windows OS (PosixFileAttributeView not supported). See eclipse/lemminx#734.
  • Extension doesn't start when running in vscode < 1.55. See #520.
  • Language server remains running after VS Code stops. See #530.

0.16.1 (May 18, 2021)

Enhancements

  • Improve the error range for unterminated elements, and use relatedInformation to show the expected close tag placement. See eclipse/lemminx#963.
  • Add setting xml.completion.autoCloseRemovesContent to prevent auto self-closing feature from deleting content. See #440.
  • Rename telemetry events. See #453.
  • Output the language server error stream during development. See eclipse/lemminx#1019.
  • Build and distribute a static binary for Linux. See #457.

Bug Fixes

  • Fix xml.validation.noGrammar setting. See #467.
  • Fix XML 1.1 support in the binary server. See eclipse/lemminx#1027.
  • Fix revalidation commands in the binary server. See eclipse/lemminx#1031.
  • Do not override user's files.trimTrailingWhitespace in XML files. See #299.
  • Use the default npm registry in package-lock.json. See #465.
  • Fix range formatting in the binary server. See eclipse/lemminx#1035.
  • Mitigate Billion Laughs vulnerability. See #476.

0.16.0 (April 13, 2021)

Enhancements

  • Add a progress bar to the binary server download. See #433.
  • Collect Telemetry data. See #415.
  • License change from EPL-1.0 to EPL-2.0. See #392.
  • Configure language server proxy based on ahttp.proxyHost and http.proxyAuthorization. See #416.

Bug Fixes

  • Wait for the language server to stop before exiting. See #437.
  • Use User-Agent: LemMinX when downloading schemas to prevent HTTP 403 when using Java 8. See #429.
  • Fix rename not completing when using the binary. See #424.
  • Fix a regression where the vscode-xml API was not returned when calling extension.ts -> activate(). See #418.
  • Fix URL for extensions. See #413.
  • Notify the user when the language server fails to start. See #409.
  • Fix NPE when hovering on a malformed document. See eclipse/lemminx#984.
  • trimTrailingWhitespace option is not respected by textDocument/formatting. See eclipse/lemminx#827.
  • Fix auto close tags in XSLT files. See #446

0.15.0 (2 February, 2021)

Enhancements

  • Run a binary executable version of the language server to avoid Java requirement. See #316.
  • Add new formatting setting xml.format.splitAttributesIndentSize. See #386.
  • Disable XSD validation when xsi:schemaLocation doesn't declare the namespace for the document element root. See #390.
  • Manage namespaces / prefix validation with a setting. See #391.
  • Add documentation for debugging external LemMinX extensions. See #380.
  • XML catalog schema is now built-in. See #375.

Bug Fixes

  • Don't add trailing space to processing instructions. See #372.
  • LemMinX no longer crashes if a LemMinX extension class cannot be created. See eclipse/lemminx#967.
  • Single < no longer has code action to close with />. See #373.
  • Catch errors from any participants. See eclipse/lemminx#946.
  • Avoid sending duplicate client/registerCapability for workspace/executeCommand. See eclipse/lemminx#937.
  • Use kill -0 instead of ps -p in ParentProcessWatcher. See eclipse/lemminx#936.
  • Prevent ClassCastException when generating document links for XML catalogs. See eclipse/lemminx#932.
  • Register org.eclipse.lsp4j.FileEvent for reflection. See eclipse/lemminx#979.
  • Prevent URLs in uri attributes in catalogs from raising exceptions. See eclipse/lemminx#977.
  • Update find-java-home to improve automatic locating of Java. See #374.
  • Fix broken example XML document in the documentation. See #394.
  • Fix link to Extensions.md page from README.md. See #379.
  • Fix link to Extensions.md page from Preferences.md. See #401.

0.14.0 (10 November, 2020)

Enhancements

  • Allow globs in xml.javaExtensions. See #324.
  • Add links to the wiki in the settings. See #322.
  • Support file path variables in xml.fileAssociations. See #307.
  • Command to reload remote schema. See #284.
  • Customize symbols in the outline. See #220.
  • Publish releases to open-vsx.org. See #287.
  • Add documentation for xml.symbols.showReferencedGrammar setting. See #335.
  • Embed docs in vscode-xml. See #326.
  • Add LemMinX extensions via vscode user settings. See #251.
  • Outline should display referenced DTD / XSD from the current XML. See lemminx#892.
  • XML catalog nextCatalog/@catalog documentLink support. See lemminx#845.
  • Format for xsi:schemaLocation. See lemminx#825.
  • Document links in catalog's <system uri="..." />. See lemminx#220.

Bug Fixes

  • Formatting comments which have no end should not generate -->. See #347.
  • Completion & hover based on XSD with elementFormDefault="unqualified" doesn't work. See #311.
  • Don't send invalid catalog notifications for paths with file schemes. See #289.
  • EntityNotDeclared quick fix doesn't use the proper indentation settings. See #267.
  • XSD with targetNamespace cannot be used with xml.fileAssociations. See #223.
  • xml.fileAssociations does not work with DTD files. See #184.
  • Remove 'Configuration' from XML preferences category name. See #341.
  • Avoid duplication of documentation between extension and wiki. See #331.
  • Stop the XMLServerLauncher process when the extension is deactivated. See #303.
  • Update dependencies to fix security vulnerabilities. See #300.
  • When associating a DTD through <?xml-model...?>, DTD-related errors should be aggregated. See lemminx#918.
  • Can't use XML catalog with XSD files that have <xs:include />. See lemminx#914.
  • Empty log file string crashes the server. See lemminx#904.
  • Incorrect diagnostic error range for MSG_SPACE_REQUIRED_BEFORE_ELEMENT_TYPE_IN_ELEMENTDECL. See lemminx#902.
  • CodeAction which raises an Exception prevents other CodeActions from being generated. See lemminx#900.
  • Symbols Max Items Computed doesn't work for 0. See lemminx#898.
  • Code Action for </ with no matching open tag doesn't fix content. See lemminx#889.
  • Incorrect error range for cvc-complex-type.2.3. See lemminx#885.
  • Code Action to close root element closing tag inserts wrong closing tag. See lemminx#878.
  • Improve ETagRequired error range. See lemminx#876.
  • Improve error range for ETagUnterminated . See lemminx#875.
  • Error range for empty element cvc-datatype-valid.1.2.3. See lemminx#871.
  • Incorrect error range for cvc-datatype-valid.1.2.3. See lemminx#864.
  • StringIndexOutOfBoundsException in EntityNotDeclaredCodeAction.getEntityName. See lemminx#862.
  • Infinite loop inside LSPMessageFormatter for some cases. See lemminx#856.
  • XML validation should aggregate DTD errors in doctype. See lemminx#853.
  • DTD hyperlink with XML catalog and PUBLIC declaration doesn't work. See lemminx#850.
  • XML completion based on DTD with XML catalog and PUBLIC declaration doesn't work. See lemminx#849.
  • DTD validation doesn't work with XML catalog and PUBLIC declaration. See lemminx#847.
  • Null Pointer Exception in catalog extension. See lemminx#833.
  • XML validation should aggregate XSD errors where is referenced. See lemminx#768.
  • completionRequest.getReplaceRange() is erroneous in text that contains /. See lemminx#723.

0.13.0 (July 6, 2020)

Enhancements

  • Formatting support for trim trailing whitespace. See #250.
  • Warning message when one of the xml.catalogs paths cannot be found. See #217.
  • Grammar generator: generate a grammar from an XML document. See lemminx#778.
  • Bind XML document with no grammar constraints to generated XSD / DTD. See lemminx#151.
  • Quick fix to create missing xsi:noNamespaceSchemaLocation and generate XSD that adheres to current XML document. See lemminx#702.
  • Highlight the XSD file name in xsi:schemaLocation when reporting an invalid or missing XSD file. See lemminx#782.
  • Add support for textDocument/documentLink for xsi:schemaLocation. See lemminx#666.
  • Sort snippets. See lemminx#692.
  • New snippet to generate a catalog. See lemminx#708.
  • New snippets for xml-stylesheet. See lemminx#728.

Bug Fixes

  • Missing xml-model reference generates multiple similar warnings. See #795.
  • Fix line break being incorrectly added when preserveAttrLineBreaks is true. See #780.
  • Fix cases where spaces in file paths weren't accounted for. See lemminx#749.
  • Fix documentation "information" typo. See lemminx#812.

0.12.0 (June 10, 2020)

Enhancements

  • Add xml.format.preserveAttributeLineBreaks setting. See #271
  • Missing Java now links to adoptopenjdk.net, for Mac Users. See #270
  • Don't return hover when there's no documentation. See #258
  • Improve formatting for processing instructions. See #240
  • Provide xml.symbols.maxItemsComputed setting for outline. See #237
  • Formatter expand/collapse/ignore empty XML tags. See #219
  • Completion for xsd:enumeration inside of text node. See #218
  • Formatting of newlines at EOF. See #196
  • Disable cdata autocompletion when typing period. See #179
  • Provide more server/build info on startup. See lemminx#755
  • Add support for textDocument/documentLink for xs:import/schemaLocation. See lemminx#733
  • Add support for textDocument/documentLink for xml-model/href. See lemminx#712
  • Find definition for external declared entity. See lemminx#706
  • Snippet to generate xml-model. See lemminx#699
  • XML Completion based on DTD/XML Schema by using xml-model . See lemminx#698
  • Validate XML with DTD/XML Schema by using xml-model. See lemminx#697
  • Create hyperlink to DTD source on hover. See lemminx#693
  • Add support for textDocument/documentLink for xs:include/schemaLocation. See #689
  • Validate XML with DTD/XML Schema by using xml-model. See lemminx#688
  • Remove spacing when formatting processing instruction. See lemminx#670
  • Hover for referenced entities. See lemminx#663
  • Completion for external declared entity. See lemminx#660
  • Insert final newline depending on lsp4j formatting settings. See lemminx#649
  • Hyperlink to open declared DTD files. See lemminx#641
  • Manage snippet registry to write snippet in JSON. Adds new snippets. See lemminx#640
  • Separate xsd:documentation and xsd:appinfo contents on hover and completion. See lemminx#630
  • Find definition for locally declared entity. See lemminx#625
  • CodeActions for RootElementTypeMustMatchDoctypedecl. See lemminx#561
  • CodeAction for EntityNotDeclared. See lemminx#532
  • Completion for locally declared entity. See lemminx#520

Bug Fixes

  • Don't set the -noverify flag on startup. See #259
  • XML entities declared in a DTD are marked undeclared after XML file change. See #234
  • Formatting breaks attributes containing quotes. See #182
  • Too many logs after completion, hover with XML that contains DTD subset. See lemminx#750
  • Fix collection of external entities depending on line ending. See lemminx#744
  • No entity completion for externally declared SYSTEM and PUBLIC entities. See lemminx#742
  • Entity documentation has no value for entities declared with SYSTEM OR PUBLIC. See lemminx#741
  • Error while loading DOCTYPE subset : java.lang.NullPointerException. See lemminx#739
  • NPE in ContentModelCompletionParticipant.addCompletionItem. See lemminx#720
  • NPE in XMLCompletions collectAttributeNameSuggestions(). See lemminx#719
  • Support advanced characters for entity name. See lemminx#718
  • Fix error range TargetNamespace.1. See lemminx#704
  • Fix error range TargetNamespace.2. See lemminx#703
  • Fix cache result of external grammar info. See lemminx#696
  • Read the cached XSD, DTD grammar file with lazy mode. See lemminx#687
  • NPE with Codelens in empty XSD file. See lemminx#684
  • Range formatting inserts <null> when formatting inside DOCTYPE element. See lemminx#682
  • NPE in ContentModelCodeActionParticipant.doCodeAction#L47. See lemminx#671
  • Fix error range for SemicolonRequiredInReference. See lemminx#664
  • Don't generate end element on apply completion if it exists. See lemminx#651
  • Quickfix to close open tag doesn't deal with attributes. See lemminx#646
  • NPE with TypeDefinition. See lemminx#629
  • MSG_ATTRIBUTE_NOT_DECLARED must highlight attribute name instead of attribute value. See lemminx#623

Build

  • Fix debug mode detection. See #266
  • Make it easier to start XML language server with suspend. See #257

0.11.0 (March 25, 2020)

Enhancements

Bug Fixes

  • Enumeration documentation is not displayed. See lemminx#233
  • XSD download fails in recent versions. See #226
  • Gracefully handle cancelled xml/closeTag requests. See #149
  • NPE when typing <?. See lemminx#614
  • NPE when document contains an empty tag. See lemminx#613
  • In Maven , all known XML elements from schema are suggested as completion. See lemminx#612
  • UTF-16 not supported. See lemminx#611

0.10.1 (December 15, 2019)

Bug Fixes

  • Temporarily removed experimental simultaneously editing of start/end tags causing editing issues in all of VS Code. See #211.

0.10.0 (December 13, 2019)

Enhancements

  • (Experimental) Ability to edit start/end tag simultaneously under xml.mirrorCursorOnMatchingTag preference. Can be toggled on/off on Windows/Linux through ctrl+shift+f2 and on Mac cmd+shift+f2. See #130.
  • Allows File Associations to be used without Workspace. See #202.
  • CodeAction for missing root end tag. See #lsp4xml/595.
  • DTD hover/completion support for documentation. See #lsp4xml/592.
  • CodeAction for similar looking element names if it doesn't match the schema. See #lsp4xml/591.
  • Navigation and intellisense for xs:include-ed types. See #lsp4xml/579.
  • Contribute to completion, hover .. with external JAR. See #193.
  • Added documentation on how to contribute extensions to the XML LS. See #197.

Bug Fixes

  • xs:import code action was inserting inside the tag name. See #lsp4xml/593.
  • Prolog attribute completion was providing invalid values. See #lsp4xml/587.
  • getCurrentAttribute method was not returning the correct attribute name. See #lsp4xml/584.
  • Hover was not returning all hover responses. See #lsp4xml/582.
  • cvc-pattern error range fix. See #lsp4xml/580.

0.9.1 (October 17, 2019)

Bug Fixes

  • XSD: IntelliSense and element substitutions. See #186
  • Completion doesn't use file cache for included XML schema. See lsp4xml#570
  • Prevent from NPE validation with schemaLocaton and "schema.reference.4" error. See lsp4xml#569

Performance

  • Improve performance and memory for validation by caching XML Schema / DTD. See lsp4xml#534

Others

  • Reject download of resource which are not in the cache folder. See lsp4xml#567
  • Add xml.validation.disallowDocTypeDecl & xml.validation.resolveExternalEntities settings. See #187
  • Added maven info. See #148

0.9.0 (September 10, 2019)

Enhancements

  • Add support for textDocument/documentHighlight for DTD. See lsp4xml#545
  • Ability to rename a complexType/@name inside XML Schema. See lsp4xml#454
  • Add support for textDocument/codeLens for XML DTD. See lsp4xml#252
  • Add support for textDocument/references for DTD. See lsp4xml#234
  • Add support for textDocument/definition for DTD. See lsp4xml#233
  • JDK changes (xml.java.home or java.home) should be detected. See #150

Bug Fixes

  • Fix error range for cvc-datatype-valid-1-2-1. See lsp4xml#323
  • Support completion with xs:any. See #177
  • Cache completion based on XML Schema/DTD. See #172
  • Fixes issue with error messages not showing. See lsp4xml#557
  • Validation Error Message Fails on Certain Cases. See lsp4xml#553
  • Error range for RootElementTypeMustMatchDoctypedecl. See lsp4xml#537

0.8.0 (July 23, 2019)

Enhancements

  • Markdown support for completion and hover documentation. See #32
  • Add completion for comment and #region. See lsp4xml#54
  • Add completion for CDATA block. See #168
  • Find definition for start/end tag element. See lsp4xml#535
  • Show relevant XML completion options based on XML Schema. See lsp4xm#347
  • Improve XSD source information for XML completion. See lsp4xm#529
  • Add support for textDocument/documentHighlight for XML Schema types. See lsp4xm#470
  • Add support for textDocument/completion for xs:element/@name / xs:extension/@base. See lsp4xm#451
  • Add support for selective outline enablement per file. See lsp4xm#427
  • Parse .ent and .mod files as DTD files. See lsp4xm#380
  • Add support for textDocument/typeDefinition from XML to XMLSchema/DTD. See lsp4xm#371
  • Add support for textDocument/definition for XML Schema. See lsp4xm#148
  • Add support for textDocument/references for XML Schema types. See lsp4xm#58
  • Add support for textDocument/codelens for XML Schema types. See lsp4xm#55
  • Add support for clickableXSD CodeLens. See lsp4xm#490
  • Active editor cannot provide outline information. See #166
  • Add XML support for unsaved XML, XSD and XSL files. See #156
  • Trigger textDocument/didSave if an XSD file was changed externally from a different editor. See #132
  • Improved XML validation when XSD files are saved. See lsp4xm#506

Bug Fixes

  • Hover markup response ignored the hover client capability. See lsp4xm#525
  • Completion capability was lost in specific scenarios. See lsp4xm#522
  • Fixed NPE in textDocument/definition in XSD files. See lsp4xm#488
  • Fix test with markdown on Windows OS. See lsp4xm#487
  • Fixed case sensitivity problems for element and attribute names. See lsp4xm#433
  • Selection formatting ignores attribute indentation preference. See lsp4xm#429
  • Fixed error range for src-import.1.2. See lsp4xm#499
  • Fixed error range for s4s-elt-invalid-content.3. See lsp4xm#496
  • Fixed error range for EntityNotDeclared. See lsp4xm#518
  • Fixed error range for cvc-pattern-valid. See lsp4xm#477
  • Fixed error range for AttributePrefixUnbound. See lsp4xm#476
  • Fixed error range for EmptyTargetNamespace. See lsp4xm#472
  • Fixed error range for ct-props-correct.3. See lsp4xm#467
  • Fixed error range for sch-props-correct.2. See lsp4xm#462
  • Fixed error range for s4s-elt-must-match.2. See lsp4xm#458
  • Fixed error range for ct-props-correct.3. See lsp4xm#455
  • Fixed error range for src-ct.1. See lsp4xm#453
  • Fixed error range for duplicate attribute. See lsp4xm#452
  • Fixed error range for p-props-correct.2.1. See lsp4xm#436
  • Fixed error range for cos-all-limited.2. See lsp4xm#428
  • Fixed error range for src-element.3. See lsp4xm#420
  • Documents with an Internal Subset DOCTYPE had stopped trying to bind. See lsp4xm#379
  • XML did not validate when bounded DTD file was not found. See #167
  • Unexpected indentation after empty element and attribute. See #159
  • Formatter inserts spaces in empty lines. See lsp4xm#157
  • Plugin is not recognized as a XML formatter. See #154
  • Fixed discrepancy in completion between prefixed and default namespaces. See #87

Performance

  • Improve XML Scanner performance. See lsp4xm#444
  • Use CompletableFuture to load DOMDocument. See lsp4xm#439
  • Feedback from memory. See lsp4xm#438
  • Improve performance of TextDocument update (in async) with TreeLineTracker. See lsp4xm#426
  • Test Large Files for Performance. See lsp4xm#48

0.7.0 (June 11, 2019)

Enhancements

  • Display Java runtime used to launch the server (See Output view). See lsp4xml#415.
  • Added xml.symbols.enabled preference, to enable/disable Document Symbols. See #151.
  • Added xml.java.home preference, to set the Java path. See #145.
  • File completion in attribute value. See lsp4xml#345.
  • Support for JRE's. See #152.
  • Validation when editing an XML Schema. See lsp4xml#190.
  • Added XML Prolog completion in DTD files. See lsp4xml#267.
  • Ability to rename a namespace/namespace renaming improvements. See lsp4xml#366.
  • Startup time for SVG DTD file completion was too slow. See lsp4xml#397.
  • Mark element source coming from XML Schema/DTD for completion. See lsp4xml#210.
  • Added Webpack support. See #122.

Bug Fixes

  • Memory usage improvements. See lsp4xml#389.
  • Fix completion source crash on Windows OS. See lsp4xml#408.
  • Fix error range for ETagRequired. See lsp4xml#387.
  • Fix error range for cos-all-limited.2. See lsp4xml#407.
  • Document Symbols only returns the 1st ATTLIST value. See lsp4xml#265.
  • Completion in SVG DTD file proposed duplicate completions. See #141.
  • Indentation wasn't working properly on a certain case. See #137.
  • Fix excessive autoclose calls. See #153.
  • Fixed formatting range issues. See lsp4xml#76.

0.6.0 (May 22, 2019)

Enhancements

  • Attribute completion for both xsi:schemaLocation and xsi:noNamespaceSchemaLocation are independent of each other. See #129.
  • Upgraded to lsp4j version 0.7.1. See lsp4xml#370.
  • Preference xml.format.preservedNewLines to preserve new lines on format. See #133.

Bug Fixes

  • Fixed error range for cvc-complex-type.2.4.f. See lsp4xml#368.
  • Fixed error range for SchemaLocation warning. See lsp4xml#343.
  • Fixed error range for MarkupEntityMismatch. See lsp4xml#367.
  • Missing schema would generate too many/redundant warnings. See lsp4xml#336.
  • Self-closing tag did not remove end tag if tag name contained uppercase characters. See lsp4xml#354.
  • Placing a / in an attribute value triggered autoclosing. See #126.
  • Fixed 4 vulnerable npm dependencies. See #139.

0.5.1 (April 08, 2019)

Bug Fixes

  • Fixed incorrect expansion of the ~ directory on Windows, for xml.server.workDir. See #125.

0.5.0 (April 05, 2019)

Enhancements

  • More detailed completion for prolog. See lsp4xml#155.
  • Added completion for xmlns attribute. See lsp4xml#208.
  • Have value completion for xmlns:xsi. See lsp4xml#326.
  • Disabled ParentProcessWatcher on Windows. See #116.
  • Autoclose self-closing tags. See #113.
  • Don't autoclose tag if the closing tag already exists. See #113.
  • Changing the content of an XML Schema triggers validation. See lsp4xml#213.
  • Preference xml.server.workDir to set schema cache folder. See lsp4xml#222.
  • Code action to close missing quotes for attributes. See lsp4xml#137.
  • Hover for attribute value documentation from XSD's. See lsp4xml#12.
  • Autocompletion for xsi:nil values. See lsp4xml#247.

Bug Fixes

  • textDocument/publishDiagnostics failed with message: Illegal argument: line must be non-negative. See lsp4xml#157.
  • XSI completion item messages were incorrect. See lsp4xml#296.
  • Removed trailing whitespace from normalized strings on format. See lsp4xml#300.
  • Formatting an attribute without value loses data. See lsp4xml#294.
  • Fixed error range of cvc-type.3.1.2. See lsp4xml#318.
  • Fixed error range of ETagUnterminated. See lsp4xml#317.
  • Fixed error range of cvc-elt.3.2.1. See lsp4xml#321.
  • Multiple 'insert required attribute' code actions shown when multiple attributes are missing. See lsp4xml#209.
  • Self closing tag causes NPE in cvc_complex_type_2_1CodeAction.doCodeAction. See lsp4xml#339.
  • Formatting removes xml-stylesheet processing instruction attributes. See #115.
  • Prevent rejected Promise during tag autoclose call. See #117.

0.4.0 (March 07, 2019)

Enhancements

  • Modified schema validation messages. See #91.
  • Preference xml.format.quotations to set single vs double quotes for attribute values on format. See lsp4xml#263.
  • Preference xml.format.preserveEmptyContent to preserve a whitespace value in an element's content. See #96.
  • Compatibility with OSGi and p2. See lsp4xml#288.

Bug Fixes

  • Fixed memory leak of file handles. See #108.
  • XSI completion item messages were incorrect. See lsp4xml#296.
  • Removed trailing whitespace from normalized strings on format. See lsp4xml#300.
  • Format of attribute without value loses data. See lsp4xml#294.

0.3.0 (January 28, 2019)

Enhancements

  • Added ability to format DTD/DOCTYPE content. See lsp4xml#268.
  • Added outline for DTD elements. See lsp4xml#226.
  • XML completion based on internal DTD. See lsp4xml#251.
  • Add xml.validation.noGrammar preference, to indicate document won't be validated. See #89.
  • Provide automatic completion/validation in catalog files. See #204.
  • Hover for XSI attributes. See lsp4xml#164.
  • Show attribute value completion based on XML Schema/DTD. See lsp4xml#242.
  • Added xml.format.spaceBeforeEmptyCloseTag preference to insert whitespace before closing empty end-tag. See #84.
  • Completion for XSI attributes. See lsp4xml#163.
  • Changing the content of catalog.xml refreshes the catalogs and triggers validation. See lsp4xml#212.
  • Added preference to enable/disable validation xml.validation.enabled and xml.validation.schema. See #100.
  • XML completion based on external DTD. See lsp4xml#106.
  • Completion for DTD <!ELEMENT, <!ATTRIBUTE, ... . See lsp4xml#232.

Bug Fixes

  • Formatting unclosed tag would be in wrong location. See lsp4xml#269.
  • Infinite loop when < was typed into an empty DTD file. See lsp4xml#266.
  • Formatting malformed xml removed content. See #227.
  • Misplace diagnostic for cvc-elt.3.1. See #241.
  • Adjust range for DTD validation errors. See #88.
  • XML Schema completion prefix did not work in some cases. See lsp4xml#214.
  • Problems with npm run build-server on Windows. See #86.
  • XML catalog support apparently not working. See #78.
  • Formatting removes DOCTYPE's public declaration. See lsp4xml#250.
  • Adjust range error for internal DTD declaration. See lsp4xml#225.
  • Don't add sibling element when completion items is filled with grammar. See lsp4xml#211.
  • Validation needs additional <uri> catalog entry. See lsp4xml#217.
  • Support rootUri for XML catalog configuration. See lsp4xml#206.
  • CacheResourcesManager keeps trying to download unavailable resources. See lsp4xml#201.

0.2.0 (November 8, 2018)

Enhancements

  • Prolog completion on first line, by typing: <?xml... . See #85.
  • Documentation on hover for schema defined attributes. See #146.
  • Faster schema loading. See #159.
  • Autocompletion for XSD's. See #111.
  • Expose server VM arguments in preferences (can configure proxy). See #169.
  • Auto closing tags preference handled with conflicting preference. See #62.
  • Auto indentation when hitting enter inside an element. See #52.
  • Document Link support added. See #56.
  • Support for XSL. See #189.
  • Support for completion requests from empty character. See #112.

Bug Fixes

  • Formatting splitAttributes indentation fix. See #59.
  • XML content fully preserved on format xml.format.joinContentLines. See #152.
  • Node completion was not working in nested elements. See #66.
  • End tag completion on empty character. See #23.
  • Formatting was removing DTD content. See #198.
  • Code action to insert attribute snippet was incorrect. See #185.
  • Completion for XSD was cached too aggressively. See #194.
  • Hover doesnt work when xs:annotation is declared in type. See #182.
  • Incomplete autocompletion for xsl documents. See #165.
  • Validation of non-empty nodes required to be empty shows misplaced diagnostics. See #147.
  • Validation of empty required node shows misplaced diagnostics. See #145.
  • File association should support relative path for systemId. See #142.
  • Code completion is sometimes "one off". See #80.
  • DTD validation problems not refreshing correctly. See #79.
  • No validation when referencing a schema in the same directory. See #144