> For the complete documentation index, see [llms.txt](https://docs.apryse.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.apryse.com/web/changelogs/webviewer-server/server-changelog-2023.md).

# WebViewer Server 2023 Changelog

World's #1 PDF SDK Library for Web, Mobile, Server, Desktop

### 2.1.9 - December 6th

* Updated Apryse SDK to version 10.6
* Updated Tomcat to 10.1.16
* Updates for the Apryse CAD module
* General version updates for various libraries
* \[Windows] The installer is now signed with an extended validation certificate and should no longer be flagged as dangerous

### 2.1.8 - October 25th

* Updated Apryse SDK to version 10.5
* Updated Tomcat to 10.1.15
* Fixes an issue causing XRefs in CAD documents to not work as expected
* \[Windows] Updates LibreOffice in the to deal with webp vulnerabilities

### 2.1.7 - September 13th

* Updated Apryse SDK to version 10.4
* Updated Tomcat to 10.1.13
* If the internal server worker experiences a crash, it no longer marks all running files as causing it. Instead, it only marks the file belonging to the thread that specifically failed. This prevents false positive file rejections from the server.

### 2.1.6 - August 2nd

* Updated Apryse SDK to version 10.3
* Updated Tomcat to 10.1.11
* Now use the same conversion tooling as the Core SDK for HTML based files.
* Removed Node.js and all associated tooling from the image and converted the health check to python.
* Corrected issue where consumption licenses could prevent WebViewer Server from becoming healthy.

### 2.1.5 - June 21st

* Updated Apryse SDK to version 10.2
* Updated Tomcat to 10.1.10
* Fixed issues with submitting XFDF to GetPDF
* Fixed issues doing PDFA conversions via GetPDF
* Lowered log retention time and fixed issues where logs were not being deleted.
* Corrected problem that caused white bars to be shown on image conversions sometimes.

### 2.1.4 - May 24th

* Included a hotfix to deal with issues converting EML, MSG and LibreOffice formats.

### 2.1.3 - May 10th

* Upgraded Apryse SDK to version 10.1
* Moved Docker OpenJDK to [Amazon Corretto](https://aws.amazon.com/corretto/?filtered-posts.sort-by=item.additionalFields.createdDate\&filtered-posts.sort-order=desc)
* The health checking API has been changed. Previously the `/blackbox/HealthCheck` API returned failure when the server was overloaded, now only returns failure when server is non functional.

It will now check every 30 seconds if the server is capable of performing very minor document work on a local file.

* [/blackbox/GetPerfInfo](/web/webviewer-server/wv-server-usage.md#GetPerfInfo) can be used if you wish to respond to overloaded queues on the server
* The `/blackbox/alive` API is now deprecated and returns the same value as `/blackbox/HealthCheck`
* Added [TRN\_RUNNING\_PORT\_NUM](/web/webviewer-server/wv-server-config.md#changing-the-bound-port) option for usage when manually changing the bound port in Tomcat.
* Fixed issues caused by TRN\_ENABLE\_SESSION\_CACHING when uploading files directly to the server
* Fixed various errors that could rise when providing incorrect input to the AuxUpload API
* Added AutoCAD options support to WebViewer for usage with WebViewer Server, for more info refer to this [guide](/web/webviewer-server/wv-server-config.md#cad-convert-options)
* Retooled rasterizer options to not be globally settable, they may now only be loaded as documented [here](/web/webviewer-server/wv-server-config.md#rasterizer-options)
* Updated Tomcat to 10.8.1

### 2.1.2r1 - April 5th

* Fixed issue with PNG/JPG files not converting if license lacked Advanced Imaging

### 2.1.2 - March 29th

* Updated Tomcat to 10.1.7
* [Updated core libraries to 10.0](https://github.com/iKettles/apryse-gitbook/tree/main/core/guides/release-notes.md)
* Updated all internal libraries
* Added [TRN\_DISABLE\_JSESSION](/web/webviewer-server/wv-server-config.md#disable-jsession) option
* Added [TRN\_HTML2PDF\_TIMEOUT](/web/webviewer-server/wv-server-config.md#html2pdf-timeout) option
* Added [CacheCheck](/web/webviewer-server/wv-server-usage.md#CacheCheck) API
* Fix issues with improper character replacement on paths in networked drives
* Corrected issue with file uploads and extensions incorrectly mangling the file names.
* Unbounded number of maximum simultaineous HTML2PDF conversions (was previously limited to 1)
* \[WV-Loadbalancer] Added ulimit specifier to HAProxy compose file.

### 2.1.1 - February 17th

* Updated Tomcat to 10.1.5
* [Updated core libraries to 9.5](https://github.com/iKettles/apryse-gitbook/tree/main/core/guides/release-notes.md)
* Added support for all available msoffice convert options passed through WebViewer to WebViewer Server
* Updated Docker Node to version 18
* Fixed issue where key licensing could cause a crash in high stress environments
* Fix for incorrect filenames when documents are directly uploaded to the server
* Fix issues with improper character replacement on paths in networked drives


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://docs.apryse.com/web/changelogs/webviewer-server/server-changelog-2023.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
