Release notes

View the up to date information of the product enhancements, bug fixes and new features added with each release.

v5.34.4

Enhancements

  • Style guide
    • Added a new collection of LGBTQIA+-inclusive rules for all English dialects. The updated rules will suggest gender-neutral language, such as “her spouse” or “his spouse” instead of “her wife” or “his husband”. The rule category name is WSC_LGBTQIA_INCLUSIVE_LANGUAGE.
    • Added a new action “upload” to the style guide API that allows uploading CSV files with multiple rules.
  • [On-premise] Application server. Increased default number of worker threads to 16 to improve performance.

Other

  • Demo pages. Enhanced WProofreader SDK demo pages with a quick demo tour to show the main aspects of the WProofreader interface and how to effectively use the demo.
  • [Cloud] Grammar engine. Rollback of the 3rd grammar engine, LanguageTool v6.4 to v6.3 due to potential issues with CPU utilization under load.

Bug fixes

  • [WP-5725] AI engine-only configuration for English doesn’t catch dialect differences
  • [WP-5771] AppServer: “enforce_ai” parameter overrides default check kit [On-premise]

v5.34.3

Enhancements

  • WProofreader core v3.15.5524
    • Added an experimental “checkInNonEditableElements” option that enables text checking in non-editable elements. It can only be used with the ‘init’ and ‘autoCreate’ initialization methods (it doesn’t work with ‘autoSearch’). Disabled by default. More information and other options are available here.
    • Disabled checking in code and formula blocks of Quill WYSIWYG editor.
    • [On-premise] Removed “Report incorrect” action if the database isn’t configured.
    • AI writing assistant. Improved text formatting in suggested completions by adding new lines for readability.
    • Updated WProofreader SDK JavaScript NPM package with basic TypeScript support. The package includes the type definition file (.d.ts) for the WProofreader core methods and additional NPM package methods, covering initialization, configuration, and instance management.
  • Spelling engine. Extended English spelling dictionaries with 21 correct words previously unrecognized by the spelling engine and terms reported by clients (e.g., redshift, nuclease).
  • Other
    • WProofreader Helm Chart. Updated to version 1.0.0, including enhanced README documentation on recommended resources, limits, and scaling for Kubernetes pods. Learn more about the updates.

Bug fixes

  • [WP-5741] Spelling: Word “testin” isn’t recognized as a misspelling in American English (en_US) and Canadian English (en_CA)
  • [WP-5662] WProofreader core / AI writing assistant. User text selection is lost after opening assistant dialog [Gmail]

v5.32.0

Enhancements

  • Named entity recognition (NER). Implemented a new functionality for seamless identification of entities such as names, locations and organizations. This functionality ensures that named entities are correctly identified and not flagged as misspellings.
    • Available for English, Spanish, German languages and their dialects.
    • Enabled by default for English, while for Spanish and German, it’s in a disabled state.
    • [On-premise] In the on-premise package, the NER functionality is added as a separate NERModel tag with “Enabled”, “Path”, ”ProbabilityThreshold” settings inside the respective language configuration of the AppServerX.xml file. Using “Enabled” attribute the feature can be enabled or disabled.
    • [On-premise] Adding NER affects minimal hardware requirements. If any of the English, Spanish, German languages is chosen to install, an appropriate NER model will be automatically downloaded. Each NER model requires around ~350 MB.
  • Spelling & grammar engine
    • The AI-powered engine is enabled for the following language configurations:
      • American English (en_US) and New Zealand English (en_NZ). The AI-powered configuration is enabled by default for all clients using the cloud service. It can’t be disabled in WProofreader SDK using the “enforceAI:false” parameter.  
      • Mexican Spanish (es_MX). The AI-powered configuration isn’t enabled by default but can be turned on by using the “enforceAI:true” parameter or “enforce_ai=true” for API requests.
      • [On-premise] If Spanish, German and/or English AI language models are selected to install, the AI-powered engine will be added to the language configuration along with the algorithmic spelling and grammar engines. But this can be updated manually in the AppServerX.xml file. 
    • 3rd party grammar engine. Updated vulnerable versions of Jetty/Netty libraries shipped with LanguageTool package. 

Bug fixes

  • [WP-5163] WProofreader core: Misleading error message when language code is not available
  • [WP-5230] WProofreader core/Google Docs: Highlighted error are merged into one and are not divided into parts
  • [WP-5152] AI German: Post-processing adds excessive spaces in suggestions with quotes
  • [WP-5242] AI English: Post-processing provides broken suggestions for numbers with commas
  • [WP-5166] [On-premise] WProofreader SDK demos: Error when working with enforceAI if model isn’t installed
  • [WP-5195] [On-premise] Web server is not configured properly after installation
  • [WP-5193] [On-premise] Linux installer/Docker: Abort build if language files were not downloaded
  • [WP-5245] Spelling autocorrect: 400 error when American English (en_US) language is not enabled
  • [WP-5253] Autocomplete parameter is set to “true” if respective model is not installed
  • [WP-5258] [On-premise] AppServerX.xml: Incorrect left-to-right (LTR) mode is used for Urdu (ur_PK) language
  • [WP-5228] English medical dictionaries: Incorrect word ‘Helicobactor’ is present in dictionaries

v5.31.0

Enhancements

  • WProofreader core v3.10.5196
    • Added functionality to accept autocomplete suggestions using the “Tab” key, in addition to the “Right arrow” key.
    • Introduced a boolean “cache” option to reduce requests to the backend, disabled by default. Particularly beneficial for Google Docs integration by avoiding repeated checks of already verified text. This cache resets after 24 hours.
    • Published a new NPM package – WProofreader SDK JavaScript. Simplifies integration into JavaScript frameworks like Vue.js, React.js, and Angular. Includes demo samples for integrating WProofreader into popular editors (CKEditor 4, TinyMCE, Quill, Froala).
  • Autocomplete suggestions
    • Implemented filters to exclude irrelevant suggestions with inappropriate punctuation or repeated words.
  • Spelling & grammar engines
    • The AI-powered engine is enabled for the following language configurations:
      • British English (en_GB), Canadian English (en_CA) and Australian English (en_AU). The AI-powered configuration is enabled by default for all clients using the cloud service. It can’t be disabled in WProofreader SDK using the “enforceAI:false” parameter.  
      • German (de_DE) and Spanish (es_ES). The AI-powered configuration isn’t enabled by default but can be turned on by using the “enforceAI:true” parameter or “enforce_ai=true” for API requests.
      • [On-premise] English, German, Spanish AI language models will be offered to be installed during the installation if corresponding language codes are selected: “en_US”, “en_GB”, “en_CA”, “en_AU”, “es_ES”, “de_DE”. In this case, the AI-powered engine will be added to the language configuration along with the algorithmic spelling and grammar engines. But this can be updated manually in the AppServerX.xml file. 
    • Updated 3rd party engine, LanguageTool, to version 6.2.0. Added and improved grammar rules for the following languages: Catalan, Dutch, English, French, German, Portuguese, Spanish, Ukrainian, Galician, Belarusian, Esperanto, Arabic, and Russian.
    • Updated the sources of the Hunspell dictionaries for the next languages:
    • Allowed rules list for grammar and style guide engines. This feature allows enabling the specific rules and rule categories, complementing the disabled rules list introduced in previous versions. To utilize this, the desired rules should be specified in the “allowedRules.json” file within the /WebSpellChecker/AppServer directory. And further enabled by setting the “UseAllowedRules” tag to “true” for a specific language in the corresponding section of the AppServerX.xml file.
  • [On-premise] Updated Windows installer
    • The Windows installer has been updated to mirror the Linux installation approach. This includes adding two steps: selecting desired languages and AI language models for installation. Language IDs, such as “en_US” for American English, need to be specified during installation. Depending on the selected languages, AI language models for enhanced text correction and assistance, available for English, German, and Spanish, are then offered as subsequent steps.
  • [On-premise] ARM architecture support (Linux)
    • A separate installation package is now available for applications on servers with ARM architecture running Linux-based OS, expanding compatibility.
    • Docker configurations and build steps have been updated to ensure proper image creation for ARM architecture servers. These updates consider the unique requirements of the environment where the image is built. For more detailed information and step-by-step guidance, refer to the updated README.

Bug fixes

  • [WP-5119] WProofreader core: Disconnecting of dictionary works incorrectly with several editable fields
  • [WP-5088] WProofreader core: “Ignore all” doesn’t work properly with several editable fields
  • [WP-4216] AI English doesn’t respect spelling ignore options
  • [WP-5105] AI engine doesn’t respect medical or legal terms
  • [WP-5150] Windows installer: “Activate license” checkbox is checked for re-installation

v5.30.0

Enhancements

  • Spelling & grammar engine
  • Service security. [Cloud] Enabled support of TLS 1.3 for all service requests.
  • WProofreader core v3.9.5107
    • Improved Google Docs integration. Added support for RTL mode and minor bug fixes.

Bug fixes

  • [WP-4965] WProofreader core: Pop-up menu opens in the wrong place after drag- and- drop action in Google Docs
  • [WP-5020] WProofreader core: disableOptionsStorage has no effect on options under General section
  • [WP-4954] WProofreader core: .wsc-generaloptions__list does not have global ARIA attribute [Accessibility]
  • [WP-4990] Spelling: Words “install”, ”installs” are reported as incorrect in English
  • [WP-4953] Licensing: Misleading message about license absence when it expired
  • [WP-4960] Custom dictionary: Words from the dictionary are marked as misspelled if duplicated in dialect files

Breaking changes [On-premise]

  • Application Server (AppServer)
    • AppServerX.xml configuration file: Deprecated “SpellCheck” and “GrammarCheck” parameters and introduced new ones named by engine types respectively in AppServer.X.xml. Each new engine tag contains arguments such as “Enabled”, “Priority” and “Locale”. Spell check type engines contain additional sub-tags for dictionaries and settings. Style guide functionality as well added as a separate tag to “CheckKit” with arguments such as “Enabled”, “Priority” and “Locale”.
    • Deprecated the AI-based language codes: AI-based English (en_AI), German (de_AI) and Spanish (es_AI). These language codes were made up as a temporary solution until the full adoption of the AI engines under the hood. If installed and configured properly, the enhanced text correction with the AI engine can be enabled using the special parameter: “enforceAI:true” in the WProofreader configuration or “enforce_ai=true” for API. Also, there is an option to make changes to the language configuration in the AppServerX.xml configuration file (not recommended).
    • Updated location for the external resources such as language dictionaries for Hunspell spelling engine.
    • Renamed service directory on Linux from “/var/lib/wsc” to: “/var/lib/WebSpellChecker” and on Windows respectively: “C:\ProgramData\WebSpellChecker”.
  • Updated Linux installer
    • Added two new steps: select languages and AI language models to be installed. Now IDs of the desired languages need to be specified during the installation (e.g. “en_US” for American English). The AI language models for comprehensive text correction and assistance will be offered as the next steps depending on the selected languages. The AI language models are available for English, German and Spanish.
    • Renamed the installation directory from “/opt/WSC” to “/opt/WebSpellChecker”.
    • Updated “languages_to_install.pl” script mirror changes in the main installer to allow clients install additional languages on top of the ones installed initially, including AI language models.
  • Updated Docker configurations
    • Updated application installation parameters in Dockerfile:
      • “LANGUAGES_TO_INSTALL” is deprecated.
      • Added new “LANGUAGES” and “AI_MODELS” parameters that specify which languages and AI language models to be installed respectively. The models are offered for English, Spanish and German.
    • Updated the language configuration of the default Docker image.
      • Installed languages: American English, British English, Canadian and Australian English. In the Dockerfile: “LANGUAGES=en_US,en_GB,en_CA,en_AU”.
      • Installed AI language modes: English AI language model, English autocomplete model. In the Dockerfile: “AI_MODELS=1,2”.

v5.27.3

Bug fixes

  • [WP-4675] Korean correct words are unrecognized and underlined as misspellings

v5.27.2

Enhancements

AppServer

v5.27.1

Enhancements

Bug fixes

  • [WP-4640] User dictionary API: Incorrect error message on ‘addword’ with unsupported characters
  • [WP-4641] Custom dictionary API: Words followed by Windows carriage return are ignored
  • [WP-4614] AppServer: ‘compileCustDict’ parameter doesn’t work*

* ‘compileCustDict’ parameter that was used for compilation of global custom dictionaries is deprecated. File compilation is no longer needed, just plain text files with appropriate formatting. 

v5.27.0

Enhancements

  • Language engines:
    • Updated language resources for the Hunspell spell check engine: British English, French, Indonesian, Dutch, Polish, Ukrainian, Mexican Spanish, Danish, German, Swiss German, Bulgarian, Czech, Chilean Spanish.
    • Slovenian language code was changed from sl_SL to sl_SI. This change affected the 2nd part of the locale ID with the country code. It’s SI (Slovenia). The old language code will still work for the existing clients. However, it’s recommended to make changes in the configuration and migrate to the correct language code.
    • Prioritized grammar type suggestions if the spelling engine gives “No suggestions”. In other cases, spelling suggestions will supersede.
    • [On-premise] Updated the structure of the folders/directories with resources such as language files and additional wordlists.
  • User-level custom dictionary. Conducted a complete refactoring of user custom dictionary functionality including its HTTP API command “user_dictionary”. Its behavior and validation mechanisms now are adapted to a company-level or global custom dictionary. 
    • Input validation for newly added words and dictionary name. For example, words with special characters, punctuation marks or spaces can no longer be added to the dictionary. 
    • Updated error messages to be more precise and clear. Validated error codes returned for API responses.
    • Restricted input to a single word for addword and deleteword actions with word parameter. In upcoming releases, wordlist parameter will be added for actions with many words. 
  • WProofreader core:
    • Added UI localization for Indonesian language “id”. It can be enabled by adding the “localization: id” option to the config script.
    • Updated Spanish localization “es” for “Autocomplete suggestions” to ”Texto predictivo”.
  • Other:

Bug fixes

  • [WP-4593] Spelling: The word ”pay” is flagged as a misspelling in AmE
  • [WP-4543] Spelling: Capitalized forms of British words are present in the AmE dictionary (e.g. Colour, Fibre, Paediatric, Aesthetic)
  • [WP-4495] WProofreader core: isUserDictionaryExist method doesn’t corresponds its name
  • [WP-4564] User dictionary HTTP API: Incorrect status code when “word” isn’t deleted
  • [WP-4603] User dictionary HTTP API: Action to delete non-existent dictionary returns 200 OK
  • [WP-4539] HTTP API: Invalid encoded URI returns BAD URI syntax
  • [WP-4396] Specific words can’t be deleted using exclude functionality

v5.26.3

Enhancement

AppServer

  • Updated Hunspell spell check engine to version 1.7.1.
  • Updated POCO C++ library to version 1.11.5.

Bug fixes

  • [WP-4557] HTTP API: The same check requests with enabled custom dictionary for American and British English returns different suggestions [Cloud product version]
  • [WP-4566] HTTP API: Сheck request with custom_dictionary parameter returns error related to unsupported language Id [Cloud product version]*

*This fix will be applied on December 27, 2022 once the involved component is updated.

v5.26.2

Hot fix release for the issue with AI requests that randomly lead to the application crash.

v5.26.1

Note! We had to roll back the ICU changes made in v5.26.0 due to the issues that led to the application crashes causing 5xx errors. This change is applied in both cloud and on-premise product versions.

  • Replaced sentence tokenization mechanism. The old custom sentence tokenization mechanism was replaced with the ICU word break iterator tool to improve processing of words that contain dots (abbreviations), hyphens, apostrophes, special symbols, shortening with one dot, possessions, etc. This approach is implemented for all languages that are based on the Hunspell spelling check engine.

Bug fixes

  • [WP-4180] Spelling check engine: Incorrect processing of words with trailing hyphens in German