:orphan:

######################
HOOPS Publish 2025.1.0
######################

Technology Update
=================

Third-Party Libraries Updates
-----------------------------

Below third-party libraries have been updated:

================== ==================== 
*Library*          *New Version*
================== ====================
libexpat           2.6.2
================== ====================

For more information about package content, see :doc:`/distributing`.

API Changes
===========

Removal of ``HOOPS_LICENSE``
----------------------------

As of **HOOPS Publish 2025.1.0**, the automatic inclusion of the *hoops_license.h* header file from HOOPS Publish headers has been removed.
This change, first introduced as a deprecation in **2024.7.0**, is now mandatory and in full effect.

.. rubric:: Key Changes

* The ``HOOPS_LICENSE`` macro is no longer automatically defined unless *hoops_license.h* is explicitely included.
* Developers are required to explicitly include *hoops_license.h*, manually define the ``HOOPS_LICENSE`` macro, or pass the license key directly in their code when initializing HOOPS Publish via the function :cpp:func:`A3DLicPutUnifiedLicense`.

To initialize HOOPS Publish correctly, the :cpp:func:`A3DLicPutUnifiedLicense` function expects a C-string value containing your licence information.
You may either directly pass this value in paramater or explicitely include *hoops_license.h* to get access to the ``HOOPS_LICENSE`` macro.

For more details, please refer to our :doc:`/guide/start/initiaizing` guide and our :doc:`/tutorials/environment-setup` tutorial.

Deprecations and Removals
-------------------------

The deprecated symbols have been renamed and moved to the new ``A3DPDFDeprecated.h`` header.

APIs involved with the module TableToPDF have been removed. 
As a replacement, **HOOPS Publish now provides a built-in API for table management**.
The API consists in :cpp:func:`A3DPDFTableCreateFromDesc` function that, used along with :cpp:func:`A3DPDFPageInsertTable` allows you to easily insert tables into your document.

See the :doc:`/api/group__a3d__pdf__tablefromapi__module` reference for more information.


Package Changes
===============

.. rubric:: DLL name change (Unix)

On Unix platforms, the name of HOOPS Publish library files has changed to conform better to usual naming standards:

* **GNU/Linux**: ``libA3DLIBS-25.1.0.so`` is changed to ``libA3DLIBS.so.25.1.0``.
  ``libA3DLIBS.so`` is still provided and is now a symlink to the new file name.
* **macOS**: ``libA3DLIBS-25.1.0.dylib`` is changed to ``libA3DLIBS.25.1.0.dylib``.
  ``libA3DLIBS.dylib`` is still provided and is now a symlink to the new file name.

For more information about package files, see :doc:`/distributing`.

.. rubric:: New DLL for Evaluators

A new DLL called *a3dttd.dll* has been introduced in the HOOPS Publish package.
This DLL is a pre-requisite to initalize HOOPS Publish with a trial license.
The DLL is not required while initializing HOOPS Publish with long term perpetual license.
The DLL is used to collect telemetry data useful for improving user experience.
More information can be found `here <https://techsoft3d.atlassian.net/wiki/x/RgJJ0>`__.


