changeset 1011:84032b16e616

merge
author Alain Mazy <am@osimis.io>
date Thu, 04 Jan 2024 10:56:29 +0100
parents 62ac15a772f8 (current diff) b7835da59750 (diff)
children 34f30ddc0dec
files
diffstat 14 files changed, 187 insertions(+), 148 deletions(-) [+]
line wrap: on
line diff
--- a/Sphinx/source/developers/repositories.rst	Thu Jan 04 10:56:13 2024 +0100
+++ b/Sphinx/source/developers/repositories.rst	Thu Jan 04 10:56:29 2024 +0100
@@ -162,7 +162,7 @@
 * Your code **must follow the C++03 standard** (C++11 is not accepted
   for maximum cross-platform compatibility on older platforms).
 
-* The continuous integration servers of Osimis check that Orthanc
+* The continuous integration servers at UCLouvain check that Orthanc
   properly compiles on Ubuntu 16.04, on `Linux Standard Base systems
   <https://refspecs.linuxfoundation.org/lsb.shtml>`__ using the `LSB
   SDB 5.0.0
--- a/Sphinx/source/faq/crash.rst	Thu Jan 04 10:56:13 2024 +0100
+++ b/Sphinx/source/faq/crash.rst	Thu Jan 04 10:56:29 2024 +0100
@@ -55,52 +55,58 @@
 
 .. highlight:: bash
 
-The Orthanc project provides precompiled debug binaries that can be
-run on almost any recent GNU/Linux system (generated thanks to the
-`LSB - Linux Standard Base SDK
+The Orthanc project provides precompiled binaries with debug symbols
+for the mainline that can run on almost any recent GNU/Linux system
+(generated thanks to the `LSB - Linux Standard Base SDK
 <https://en.wikipedia.org/wiki/Linux_Standard_Base>`__). This allows
 to generate a backtrace (the famous "core dumped" message) that can be
 analyzed by any developer of Orthanc. Assuming that the :ref:`plugin
 above <segfault-plugin>` is available as the ``crash.cpp`` file, here
 is a sample debug session::
 
-  $ wget https://lsb.orthanc-server.com/orthanc/debug/1.12.2/Orthanc
+  $ wget https://orthanc.uclouvain.be/downloads/linux-standard-base/orthanc/mainline-debug/Orthanc
   $ chmod +x ./Orthanc
-  $ gcc -fPIC -shared ./crash.cpp -I ~/orthanc/Plugins/Include -o crash.so
+  $ g++ -fPIC -shared ./crash.cpp -I ~/orthanc/OrthancServer/Plugins/Include -o crash.so
   $ ulimit -c unlimited
-  $ echo '{ "Plugins" : ["crash.so"] }' > Configuration.json
+  $ echo '{ "Plugins" : ["./crash.so"] }' > Configuration.json
   $ rm -f core ; ./Orthanc Configuration.json
-  W0427 15:43:24.215783 main.cpp:1436] Orthanc version: 1.12.2
-  W0427 15:43:24.215910 main.cpp:1279] Performance warning: Non-release build, runtime debug assertions are turned on
-  W0427 15:43:24.217585 OrthancConfiguration.cpp:61] Reading the configuration from: "Configuration.json"
-  W0427 15:43:24.254733 main.cpp:700] Loading plugin(s) from: crash.so
-  W0427 15:43:24.254866 PluginsManager.cpp:269] Registering plugin 'crash' (version 0.0)
+  W0103 18:05:01.661466             MAIN main.cpp:2041] Orthanc version: mainline (20240103T170440)
+  W0103 18:05:01.661583             MAIN main.cpp:1775] Performance warning: Non-release build, runtime debug assertions are turned on
+  W0103 18:05:01.661800             MAIN OrthancConfiguration.cpp:57] Reading the configuration from: "Configuration.json"
+  W0103 18:05:01.864783             MAIN main.cpp:912] Loading plugin(s) from: ./crash.so
+  W0103 18:05:01.864883             MAIN PluginsManager.cpp:261] Registering plugin 'crash' (version 0.0)
   Segmentation fault (core dumped)
 
 
 .. highlight:: text
 
 This session creates a file called ``core`` in the current working
-directory.  You can analyze it by running ``gdb`` as follows::
+directory. If you don't see this file, it probably means that your
+GNU/Linux distribution customizes the name of core files (this is for
+instance the case of Ubuntu 22.04 that sends core files to
+``apport``). You can temporarily disable this behavior by typing::
 
-  $ gdb -c ./core ./Orthanc
+  $ echo core | sudo tee /proc/sys/kernel/core_pattern
+
+
+You can then analyze the ``core`` file by running ``gdb`` as follows::
+
+  $ gdb -c ./core.424217 ./Orthanc
   (gdb) bt
-  #0  0x00007f7b1aa3d739 in OrthancPluginInitialize () from crash.so
-  #1  0x00000000008632f0 in Orthanc::CallInitialize (plugin=..., context=...)
-  at /home/jodogne/BuildBotWorker/Orthanc_1_5_6_-_LSB_Debug/build/Plugins/Engine/PluginsManager.cpp:98
-  #2  0x0000000000864496 in Orthanc::PluginsManager::RegisterPlugin (this=0x4314f90, path="crash.so")
-  at /home/jodogne/BuildBotWorker/Orthanc_1_5_6_-_LSB_Debug/build/Plugins/Engine/PluginsManager.cpp:272
-  ...
+  #0  0x00007f5943308111 in OrthancPluginInitialize () from ./crash.so
+  #1  0x00000000005e1cbc in Orthanc::CallInitialize (plugin=..., context=...)
+      at /home/jodogne/BuildBotWorker/Orthanc_mainline_-_LSB_Debug/build/OrthancServer/Plugins/Engine/PluginsManager.cpp:87
+  #2  0x00000000005e2f14 in Orthanc::PluginsManager::RegisterPlugin (this=0x2edc220, path="./crash.so")
+      at /home/jodogne/BuildBotWorker/Orthanc_mainline_-_LSB_Debug/build/OrthancServer/Plugins/Engine/PluginsManager.cpp:264
 
 If you are unable to analyze such a backtrace by yourself, feel free
 to post your ``core`` file on the `Orthanc Users discussion forum
-<https://discourse.orthanc-server.org>`__.
+<https://discourse.orthanc-server.org>`__. Do not forget to indicate
+the content of
+`<https://orthanc.uclouvain.be/downloads/linux-standard-base/orthanc/mainline-debug/revision.txt>`__
+so that we can find the version of Orthanc that generated the core
+file.
+
 
 **Important:** The Orthanc developers will only be able to analyze the
 ``core`` files generated by our own precompiled binaries!
-
-
-Docker
-------
-
-To be written.
--- a/Sphinx/source/faq/debugging.rst	Thu Jan 04 10:56:13 2024 +0100
+++ b/Sphinx/source/faq/debugging.rst	Thu Jan 04 10:56:29 2024 +0100
@@ -30,7 +30,7 @@
 setting ``-DCMAKE_BUILD_TYPE=Debug`` when invoking CMake.
 
 Then, learn how to use the debugger that is best suited to your
-platform (e.g. Microsoft Visual Studio, gdb or Xcode).
+platform (e.g. Microsoft Visual Studio, gdb, cgdb, or Xcode).
 
 
 GNU/Linux system using gdb
@@ -38,45 +38,65 @@
 
 .. highlight:: bash
 
-The Orthanc project provides precompiled debug binaries that can be
-run on almost any recent GNU/Linux system (generated thanks to the
-`LSB - Linux Standard Base SDK
+The Orthanc project provides precompiled binaries with debug symbols
+for the mainline that can run on almost any recent GNU/Linux system
+(generated thanks to the `LSB - Linux Standard Base SDK
 <https://en.wikipedia.org/wiki/Linux_Standard_Base>`__). This allows
 to debug Orthanc without compiling from sources. Here is a sample
-debug session::
+debug session to analyze an error that comes from an invalid
+:ref:`configuration file <configuration>`::
 
-  $ wget https://lsb.orthanc-server.com/orthanc/debug/1.12.2/Orthanc
+  $ wget https://orthanc.uclouvain.be/downloads/linux-standard-base/orthanc/mainline-debug/Orthanc
+  $ echo 'nope' > invalid.json
   $ chmod +x ./Orthanc
-  $ gdb ./Orthanc Configuration.json
+  $ gdb --args ./Orthanc invalid.json
   (gdb) catch throw
   Catchpoint 1 (throw)
   (gdb) run
-  W0513 15:24:42.374349 main.cpp:1436] Orthanc version: 1.12.2
-  ---> Reproduce your error case <---
-  Thread 15 "Orthanc" hit Catchpoint 1 (exception thrown), 0x00007ffff6de68bd in __cxa_throw () from /usr/lib/x86_64-linux-gnu/libstdc++.so.6
+  Starting program: /tmp/i/Orthanc invalid.json
+  [Thread debugging using libthread_db enabled]
+  Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
+  W0103 18:25:01.540600             MAIN main.cpp:2041] Orthanc version: mainline (20240103T170440)
+  W0103 18:25:01.540636             MAIN main.cpp:1775] Performance warning: Non-release build, runtime debug assertions are turned on
+  W0103 18:25:01.540702             MAIN OrthancConfiguration.cpp:57] Reading the configuration from: "invalid.json"
+  E0103 18:25:01.540823             MAIN OrthancException.cpp:61] Cannot parse a JSON document: The configuration file does not follow the JSON syntax: invalid.json
+
+  Catchpoint 1 (exception thrown), 0x00007ffff7cae4a1 in __cxa_throw () from /lib/x86_64-linux-gnu/libstdc++.so.6
   (gdb) backtrace
-  #0  0x00007ffff6de68bd in __cxa_throw ()
-     from /usr/lib/x86_64-linux-gnu/libstdc++.so.6
-  ...
+  #0  0x00007ffff7cae4a1 in __cxa_throw () from /lib/x86_64-linux-gnu/libstdc++.so.6
+  #1  0x0000000000473745 in Orthanc::AddFileToConfiguration (target=..., path=...)
+      at /home/jodogne/BuildBotWorker/Orthanc_mainline_-_LSB_Debug/build/OrthancServer/Sources/OrthancConfiguration.cpp:72
+  #2  0x0000000000473e98 in Orthanc::ReadConfiguration (target=..., configurationFile=0x7fffffffe302 "invalid.json")
+      at /home/jodogne/BuildBotWorker/Orthanc_mainline_-_LSB_Debug/build/OrthancServer/Sources/OrthancConfiguration.cpp:149
+  [...]
 
 If you are unable to analyze such a backtrace by yourself, feel free
 to post your backtrace on the `Orthanc Users discussion forum
-<https://discourse.orthanc-server.org>`__.
+<https://discourse.orthanc-server.org>`__. Do not forget to indicate
+the content of
+`<https://orthanc.uclouvain.be/downloads/linux-standard-base/orthanc/mainline-debug/revision.txt>`__
+so that we can find the version of Orthanc that generated the core
+file.
 
-**Plugins:** Besides the Orthanc core, debug binaries of the official
-plugins precompiled using the LSB are also available at the following
-locations:
+If you want to read the source code of the backtrace, it is highly
+suggested to use ``cgdb`` with its ``set substitute-path`` command.
+First read the content of the `revision.txt file
+<https://orthanc.uclouvain.be/downloads/linux-standard-base/orthanc/mainline-debug/revision.txt>`__
+to identify the revision of Orthanc. Then, you can type::
 
-* `Orthanc core <https://lsb.orthanc-server.com/orthanc/debug/>`__
-* `DICOMweb plugin <https://lsb.orthanc-server.com/plugin-dicom-web/debug/>`__
-* `MySQL plugin <https://lsb.orthanc-server.com/plugin-mysql/debug/>`__
-* `Orthanc Web viewer <https://lsb.orthanc-server.com/plugin-webviewer/debug/>`__
-* `PostgreSQL plugin <https://lsb.orthanc-server.com/plugin-postgresql/debug/>`__
-* `Transfers accelerator plugin <https://lsb.orthanc-server.com/plugin-transfers/debug/>`__
-* `Whole-slide imaging <https://lsb.orthanc-server.com/whole-slide-imaging/debug/>`__
+  $ hg clone -r 723251b2b71e https://orthanc.uclouvain.be/hg/orthanc/
+  $ cgdb --args ./Orthanc invalid.json
+  (gdb) set substitute-path /home/jodogne/BuildBotWorker/Orthanc_mainline_-_LSB_Debug/build/ ./orthanc/
+  (gdb) catch throw
+  (gdb) run
+  (gdb) frame 2
+
   
+Plugins
+.......
 
-Docker
-------
+Besides the Orthanc core, debug LSB binaries are also available for
+most official plugins at the following location:
+`<https://orthanc.uclouvain.be/downloads/linux-standard-base/index.html>`__
 
-To be written.
+These binaries are identified as ``mainline-debug/``.
--- a/Sphinx/source/faq/log.rst	Thu Jan 04 10:56:13 2024 +0100
+++ b/Sphinx/source/faq/log.rst	Thu Jan 04 10:56:29 2024 +0100
@@ -41,10 +41,10 @@
 to logging. Check out the :ref:`full manpage <manpage>`.
   
 However, if you use packaged versions of Orthanc that starts the
-server in background (such as GNU/Linux packages or the Windows
-installers by Osimis), you will have to manually start Orthanc. The
-sections below explain how to achieve this goal with the officially
-supported packages.
+server in background (such as GNU/Linux packages or the `Windows
+installers <https://www.orthanc-server.com/download-windows.php>`__),
+you will have to manually start Orthanc. The sections below explain
+how to achieve this goal with the officially supported packages.
 
 
 With Orthanc Explorer 2 installed
@@ -66,7 +66,8 @@
 ^^^^^^^^^^^^^
 
 
-if you used the official installer by Osimis:
+if you used the `official Windows installers
+<https://www.orthanc-server.com/download-windows.php>`__:
 
 1. Stop the Orthanc service. The actual process depends on your
    version of Windows.
@@ -177,4 +178,4 @@
 
 * Starting from Orthanc 1.12.2, Orthanc is logging the thread name in the
   logs.  If you need to revert back to the previous format, add the 
-  ``--logs-no-thread`` command line option at startup.
\ No newline at end of file
+  ``--logs-no-thread`` command line option at startup.
--- a/Sphinx/source/faq/scalability.rst	Thu Jan 04 10:56:13 2024 +0100
+++ b/Sphinx/source/faq/scalability.rst	Thu Jan 04 10:56:29 2024 +0100
@@ -63,8 +63,10 @@
 
 * Make sure that :ref:`run-time debug assertions <troubleshooting>`
   are turned off. A warning will show in the logs if this is not the
-  case. Note that all pre-built binaries provided by Osimis are
-  correctly configured in that respect.
+  case. Note that all `pre-compiled binaries
+  <https://orthanc.uclouvain.be/downloads/index.html>`__ provided by
+  the Orthanc project are correctly configured in that respect, except
+  if they are explicitly tagged as "debug".
 
 * We suggest to use the default filesystem storage area. Of course,
   make sure that the filesystem is properly backed up, and that
@@ -337,6 +339,10 @@
     the ``/jobs`` route will return only the jobs of the responding
     Orthanc.
 
+  - Similarly, each Orthanc instance maintains its own :ref:`status
+    for the resources it has received <stable-resources>`. Thus, the
+    ``IsStable`` information is local to each Orthanc instance.
+
   - The ``/modalities`` or the ``/peers`` are also private to each
     instance of Orthanc in the cluster, as soon as the respective
     options ``DicomModalitiesInDatabase`` and
@@ -345,11 +351,11 @@
   If you need to use such primitives in your application, you have
   three possibilities: (1) Introduce a distinguished Orthanc server
   that is responsible to take care of all the jobs (including
-  modalities and peers), (2) create an :ref:`Orthanc plugin <plugins>`
-  (e.g. using :ref:`Python <python-plugin>` or :ref:`Java
-  <java-plugin>`) that queries all the Orthanc in the cluster and that
-  aggregates all of their answers, or (3) do the same using a
-  higher-level framework (such as Node.js).
+  modalities and peers) and/or to receive all the DICOM instances, (2)
+  create an :ref:`Orthanc plugin <plugins>` (e.g. using :ref:`Python
+  <python-plugin>` or :ref:`Java <java-plugin>`) that queries all the
+  Orthanc in the cluster and that aggregates all of their answers,
+  or (3) do the same using a higher-level framework (such as Node.js).
     
 
 Latency
--- a/Sphinx/source/faq/troubleshooting.rst	Thu Jan 04 10:56:13 2024 +0100
+++ b/Sphinx/source/faq/troubleshooting.rst	Thu Jan 04 10:56:29 2024 +0100
@@ -199,14 +199,14 @@
   elsewhere on Internet).
 
 * If **Orthanc crashes when handling one large DICOM file**, this most
-  probably indicates a memory allocation error. Indeed, the `official
-  Windows binaries
-  <https://www.orthanc-server.com/download-windows.php>`__ are compiled
-  using a 32bit compiler. As a consequence, Orthanc only has access to
-  less than 4GB of RAM. If this is an important limitation for you,
-  precompiled command-line versions of Orthanc for Windows 64bit are
-  available courtesy of `Osimis
-  <https://www.osimis.io/en/download.html>`__.
+  probably indicates a memory allocation error. Indeed, some
+  precompiled `official Windows binaries
+  <https://orthanc.uclouvain.be/downloads/windows-32/orthanc/index.html>`__
+  are compiled using a 32bit compiler. As a consequence, Orthanc only
+  has access to less than 4GB of RAM. If this is an important
+  limitation for you, precompiled command-line versions of Orthanc for
+  Windows 64bit are `also available
+  <https://orthanc.uclouvain.be/downloads/windows-64/orthanc/index.html>`__.
 
 * Avoid installing Orthanc, its database or its storage area in
   folders whose names contain **spaces or special characters**.
--- a/Sphinx/source/plugins/authorization.rst	Thu Jan 04 10:56:13 2024 +0100
+++ b/Sphinx/source/plugins/authorization.rst	Thu Jan 04 10:56:29 2024 +0100
@@ -6,12 +6,17 @@
 
 .. contents::
 
-This **official plugin by Osimis** extends Orthanc with an advanced
+This **official plugin** extends Orthanc with an advanced
 authorization mechanism. For each incoming REST request to some URI,
 the plugin will query a Web service to know whether the access is
 granted to the user. If access is not granted, the HTTP status code is
 set to ``403`` (Forbidden).
 
+**Status:** This plugin was `deprecated
+<https://discourse.orthanc-server.org/t/advanced-authorization-plugin-vs-remote-access/1859/5?u=jodogne>`__
+between 2020 and 2022, but its active development has been resumed
+since May 2022.
+
 
 How to get it ?
 ---------------
@@ -398,12 +403,13 @@
 Integration with the Orthanc Explorer
 -------------------------------------
 
-Starting from Orthanc 1.5.8, you can pass authorization tokens in the url
-search params when opening the Orthanc explorer i.e. 
-http://localhost:8042/app/explorer.html?token=1234.  This token will be 
-included as an HTTP header in every request sent to the Orthanc Rest API.  
-It will also be included in the url search params when opening the Orthanc 
-or Osimis viewer.  
+Starting from Orthanc 1.5.8, you can pass authorization tokens in the
+url search params when opening the Orthanc explorer, i.e.
+``http://localhost:8042/app/explorer.html?token=1234``.  This token
+will be included as an HTTP header in every request sent to the
+Orthanc Rest API. It will also be included in the URL search params
+when opening the Orthanc or :ref:`Osimis Web viewer
+<osimis_webviewer>`.
 
 Only 3 tokens name will be recognized and forwarded: ``token``, ``auth-token``
 and ``authorization``.
--- a/Sphinx/source/plugins/odbc.rst	Thu Jan 04 10:56:13 2024 +0100
+++ b/Sphinx/source/plugins/odbc.rst	Thu Jan 04 10:56:29 2024 +0100
@@ -138,10 +138,9 @@
 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
 
 Pre-compiled binaries for Microsoft Windows 32bit `are also available
-<https://orthanc.uclouvain.be/downloads/windows-32/orthanc-odbc/index.html>`__. A
-package for `Apple's Mac OS X
-<https://www.osimis.io/en/download.html>`__ is available courtesy of
-`Osimis <https://www.osimis.io/>`__.
+<https://orthanc.uclouvain.be/downloads/windows-32/orthanc-odbc/index.html>`__,
+as well as for `Apple macOS
+<https://orthanc.uclouvain.be/downloads/macos/orthanc-odbc/index.html>`__.
 
 
 .. _odbc-ubuntu1604:
--- a/Sphinx/source/plugins/transfers.rst	Thu Jan 04 10:56:13 2024 +0100
+++ b/Sphinx/source/plugins/transfers.rst	Thu Jan 04 10:56:29 2024 +0100
@@ -6,7 +6,7 @@
 
 .. contents::
 
-Osimis provides a `transfers accelerator plugin
+The Orthanc project provides a `transfers accelerator plugin
 <https://orthanc.uclouvain.be/hg/orthanc-transfers/file/default>`__ whose
 purpose is to speed up the transfers of DICOM instances over networks
 (with respect to the native DICOM protocol or to the built-in
--- a/Sphinx/source/plugins/worklists-plugin.rst	Thu Jan 04 10:56:13 2024 +0100
+++ b/Sphinx/source/plugins/worklists-plugin.rst	Thu Jan 04 10:56:29 2024 +0100
@@ -92,7 +92,7 @@
   for Microsoft Windows)::
   
     "Plugins" : [
-      "OsimisWebViewer.dll",
+      "StoneWebViewer.dll",
       "ModalityWorklists.dll"   // On GNU/Linux, use libModalityWorklists.so
     ],
 
--- a/Sphinx/source/users/configuration.rst	Thu Jan 04 10:56:13 2024 +0100
+++ b/Sphinx/source/users/configuration.rst	Thu Jan 04 10:56:29 2024 +0100
@@ -55,15 +55,16 @@
 backslashes (i.e. ``\``) should be either escaped by doubling them (as
 in ``\\``), or replaced by forward slashes (as in ``/``).
 
-**Remark 2:** When installing Orthanc using the Windows installer by
-Osimis, you won't be able to edit your files unless you start your
-editor with ``Run as administrator``. We recommend to edit your
-configuration file with an editor such as `Notepad++
-<https://notepad-plus-plus.org/>`_.  It shall warn you that this file
-can be edited only by an admin, and will suggest you to restart
-Notepad++ as an admin such that you'll be able to save it.
+**Remark 2:** When installing Orthanc using the `official Windows
+installers <https://www.orthanc-server.com/download-windows.php>`__,
+you won't be able to edit your files unless you start your editor with
+``Run as administrator``. We recommend to edit your configuration file
+with an editor such as `Notepad++ <https://notepad-plus-plus.org/>`_.
+It shall warn you that this file can be edited only by an admin, and
+will suggest you to restart Notepad++ as an admin such that you'll be
+able to save it.
 
-**Remark 3:** The Windows installers by Osimis provide a `Windows
+**Remark 3:** The official Windows installers include a `Windows
 service <https://en.wikipedia.org/wiki/Windows_service>`__ that
 automatically starts Orthanc during the startup of Microsoft
 Windows. You can control the parameters of the service by typing
--- a/Sphinx/source/users/docker.rst	Thu Jan 04 10:56:13 2024 +0100
+++ b/Sphinx/source/users/docker.rst	Thu Jan 04 10:56:29 2024 +0100
@@ -75,13 +75,13 @@
 If more stability is required, you can select the official release of
 Orthanc to be run::
 
-  $ docker run -p 4242:4242 -p 8042:8042 --rm jodogne/orthanc:1.12.1
+  $ docker run -p 4242:4242 -p 8042:8042 --rm jodogne/orthanc:1.12.2
 
 Passing additional command-line options (e.g. to make Orthanc verbose)
 can be done as follows (note the ``/etc/orthanc`` option that is
 required for Orthanc to find its configuration files)::
 
-  $ docker run -p 4242:4242 -p 8042:8042 --rm jodogne/orthanc:1.12.1 /etc/orthanc --verbose
+  $ docker run -p 4242:4242 -p 8042:8042 --rm jodogne/orthanc:1.12.2 /etc/orthanc --verbose
 
 
 Usage, with plugins enabled
@@ -97,7 +97,7 @@
 
 Or you can also start a specific version of Orthanc for more stability::
 
-  $ docker run -p 4242:4242 -p 8042:8042 --rm jodogne/orthanc-plugins:1.12.1
+  $ docker run -p 4242:4242 -p 8042:8042 --rm jodogne/orthanc-plugins:1.12.2
 
 If you have an interest in the :ref:`Python plugin <python-plugin>`,
 you can use the ``orthanc-python`` image. The latter image is a
@@ -105,7 +105,7 @@
 Python 3.7 interpreter. Here is how to start this image::
 
   $ docker run -p 4242:4242 -p 8042:8042 --rm jodogne/orthanc-python
-  $ docker run -p 4242:4242 -p 8042:8042 --rm jodogne/orthanc-python:1.12.1
+  $ docker run -p 4242:4242 -p 8042:8042 --rm jodogne/orthanc-python:1.12.2
   
 
 Fine-tuning the configuration
@@ -119,12 +119,12 @@
 
 You can generate a custom configuration file for Orthanc as follows::
 
-  $ docker run --rm --entrypoint=cat jodogne/orthanc:1.12.1 /etc/orthanc/orthanc.json > /tmp/orthanc.json
+  $ docker run --rm --entrypoint=cat jodogne/orthanc:1.12.2 /etc/orthanc/orthanc.json > /tmp/orthanc.json
 
 Then, edit the just-generated file ``/tmp/orthanc.json`` and restart
 Orthanc with your updated configuration::
 
-  $ docker run -p 4242:4242 -p 8042:8042 --rm -v /tmp/orthanc.json:/etc/orthanc/orthanc.json:ro jodogne/orthanc:1.12.1
+  $ docker run -p 4242:4242 -p 8042:8042 --rm -v /tmp/orthanc.json:/etc/orthanc/orthanc.json:ro jodogne/orthanc:1.12.2
 
 *Remark:* These Docker images automatically set the environment
 variable ``MALLOC_ARENA_MAX`` to ``5`` in order to :ref:`control
@@ -157,7 +157,7 @@
   version: '3.1'  # Secrets are only available since this version of Docker Compose
   services:
     orthanc:
-      image: jodogne/orthanc-plugins:1.12.1
+      image: jodogne/orthanc-plugins:1.12.2
       command: /run/secrets/  # Path to the configuration files (stored as secrets)
       ports:
         - 4242:4242
@@ -206,7 +206,7 @@
 container to some path in the filesystem of your Linux host, e.g.::
 
   $ mkdir /tmp/orthanc-db
-  $ docker run -p 4242:4242 -p 8042:8042 --rm -v /tmp/orthanc-db/:/var/lib/orthanc/db/ jodogne/orthanc:1.12.1
+  $ docker run -p 4242:4242 -p 8042:8042 --rm -v /tmp/orthanc-db/:/var/lib/orthanc/db/ jodogne/orthanc:1.12.2
 
 
 Whole-slide imaging support
@@ -216,13 +216,13 @@
 whole-slide imaging (WSI) <wsi>`. For instance, the following command
 will start the WSI viewer plugin transparently together with Orthanc::
 
-  $ docker run -p 4242:4242 -p 8042:8042 --rm --name orthanc-wsi jodogne/orthanc-plugins:1.12.1
+  $ docker run -p 4242:4242 -p 8042:8042 --rm --name orthanc-wsi jodogne/orthanc-plugins:1.12.2
 
 Note that we gave the name ``orthanc-wsi`` to this new Docker
 container. Then, the Dicomizer command-line tool can be invoked as
 follows::
 
-  $ docker run -t -i --rm --link=orthanc-wsi:orthanc --entrypoint=OrthancWSIDicomizer -v /tmp/Source.tif:/tmp/Source.tif:ro jodogne/orthanc-plugins:1.12.1 --username=orthanc --password=orthanc --orthanc=http://orthanc:8042/ /tmp/Source.tif
+  $ docker run -t -i --rm --link=orthanc-wsi:orthanc --entrypoint=OrthancWSIDicomizer -v /tmp/Source.tif:/tmp/Source.tif:ro jodogne/orthanc-plugins:1.12.2 --username=orthanc --password=orthanc --orthanc=http://orthanc:8042/ /tmp/Source.tif
 
 This command needs a few explanations:
 
@@ -250,7 +250,7 @@
 instruct the Dicomizer to use `OpenSlide <https://openslide.org/>`__
 to decode it by adding the ``--openslide`` option::
 
-  $ docker run -t -i --rm --link=orthanc-wsi:orthanc --entrypoint=OrthancWSIDicomizer -v /tmp/Source.svs:/tmp/Source.svs:ro jodogne/orthanc-plugins:1.12.1 --username=orthanc --password=orthanc --orthanc=http://orthanc:8042/ --openslide=libopenslide.so /tmp/Source.svs
+  $ docker run -t -i --rm --link=orthanc-wsi:orthanc --entrypoint=OrthancWSIDicomizer -v /tmp/Source.svs:/tmp/Source.svs:ro jodogne/orthanc-plugins:1.12.2 --username=orthanc --password=orthanc --orthanc=http://orthanc:8042/ --openslide=libopenslide.so /tmp/Source.svs
 
 
 PostgreSQL and Orthanc inside Docker
@@ -271,7 +271,7 @@
 
   $ docker inspect --format '{{ .NetworkSettings.IPAddress }}' some-postgres
   $ docker inspect --format '{{ .NetworkSettings.Ports }}' some-postgres
-  $ docker run --rm --entrypoint=cat jodogne/orthanc-plugins:1.12.1 /etc/orthanc/orthanc.json > /tmp/orthanc.json
+  $ docker run --rm --entrypoint=cat jodogne/orthanc-plugins:1.12.2 /etc/orthanc/orthanc.json > /tmp/orthanc.json
 
 .. highlight:: text
 
@@ -292,7 +292,7 @@
 
 Finally, you can start Orthanc::
 
-  $ docker run -p 4242:4242 -p 8042:8042 --rm -v /tmp/orthanc.json:/etc/orthanc/orthanc.json:ro jodogne/orthanc-plugins:1.12.1
+  $ docker run -p 4242:4242 -p 8042:8042 --rm -v /tmp/orthanc.json:/etc/orthanc/orthanc.json:ro jodogne/orthanc-plugins:1.12.2
 
 
 Debugging
@@ -303,28 +303,5 @@
 For debugging purpose, you can start an interactive bash session as
 follows::
 
-  $ docker run -i -t --rm --entrypoint=bash jodogne/orthanc:1.12.1
-  $ docker run -i -t --rm --entrypoint=bash jodogne/orthanc-plugins:1.12.1
-
-For developers and power users, the images ``jodogne/orthanc-debug``
-contain the Orthanc core compiled in debug mode (i.e. with runtime
-assertions enabled, and including debugging symbols). A ``gdb``
-command-line session can be started as follows::
-
-  $ docker run -i -t --rm --entrypoint=bash --network=host --cap-add=SYS_PTRACE -p 4242:4242 -p 8042:8042 jodogne/orthanc-debug
-  # gdb --args Orthanc /etc/orthanc/ --verbose
-
-Exceptions can be automatically caught by launching ``gdb`` as follows::
-
-  # gdb --ex 'catch t' --ex r --ex bt --args ./Orthanc /etc/orthanc/ --verbose
- 
-Note that:
-
-* The plugins are not available in this image yet.
-
-* The Orthanc source code can be found in folder ``/root/orthanc``.
-
-* The build artifacts can be found in folder ``/root/orthanc/Build``.
-
-* This command launches the mainline version. To start a released version,
-  use e.g. ``jodogne/orthanc-debug:1.12.1``.
+  $ docker run -i -t --rm --entrypoint=bash jodogne/orthanc:1.12.2
+  $ docker run -i -t --rm --entrypoint=bash jodogne/orthanc-plugins:1.12.2
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/Sphinx/source/users/docker.rst.BAK	Thu Jan 04 10:56:29 2024 +0100
@@ -0,0 +1,23 @@
+
+For developers and power users, the images ``jodogne/orthanc-debug``
+contain the Orthanc core compiled in debug mode (i.e. with runtime
+assertions enabled, and including debugging symbols). A ``gdb``
+command-line session can be started as follows::
+
+  $ docker run -i -t --rm --entrypoint=bash --network=host --cap-add=SYS_PTRACE -p 4242:4242 -p 8042:8042 jodogne/orthanc-debug
+  # gdb --args Orthanc /etc/orthanc/ --verbose
+
+Exceptions can be automatically caught by launching ``gdb`` as follows::
+
+  # gdb --ex 'catch t' --ex r --ex bt --args ./Orthanc /etc/orthanc/ --verbose
+ 
+Note that:
+
+* The plugins are not available in this image yet.
+
+* The Orthanc source code can be found in folder ``/root/orthanc``.
+
+* The build artifacts can be found in folder ``/root/orthanc/Build``.
+
+* This command launches the mainline version. To start a released version,
+  use e.g. ``jodogne/orthanc-debug:1.12.2``.
--- a/Sphinx/source/users/support.rst	Thu Jan 04 10:56:13 2024 +0100
+++ b/Sphinx/source/users/support.rst	Thu Jan 04 10:56:29 2024 +0100
@@ -52,8 +52,8 @@
 
 Importantly, for all the features that are pending in the ``TODO``
 file, if you are a company, please consider `buying professional
-services <https://osimis.io/en/orthanc-support-contract>`__ in order to get
-the feature implemented faster.
+services <http://orthanc.team/>`__ in order to get the feature
+implemented faster.
    
    
 .. _support-mwe:
@@ -112,15 +112,16 @@
 support!
 
 In addition, please note that the original author of Orthanc
-(Sébastien Jodogne), as a free software advocate, will only personally
-deal with issues that are reproducible on recent GNU/Linux
-distributions (typically, on Ubuntu 18.04 LTS or through Docker).
+(`Sébastien Jodogne <https://info.ucl.ac.be/~sjodogne/>`__), as a free
+software advocate, will only personally deal with issues that are
+reproducible on recent GNU/Linux distributions (typically, on Ubuntu
+18.04 LTS or through Docker).
 
 
 .. _support-minquality:
 
 Required minimal quality of a message in the Orthanc Users discussion forum
---------------------------------------------------------
+---------------------------------------------------------------------------
 
 While posting a message on the `Orthanc Users discussion forum
 <https://discourse.orthanc-server.org>`__, you should not be surprised if 
@@ -166,15 +167,14 @@
 
 2. If you need an **additional feature implemented in Orthanc**, and
    if you are ready to pay, get in touch with the `Orthanc Team
-   <https://orthanc.team>`__ or with `Osimis
-   <mailto:orthanc-support@osimis.io>`__, the commercial partners of
-   the Orthanc project.
+   <https://orthanc.team>`__, the main commercial partner of the
+   Orthanc project.
 
 3. If you are part of a **scientific team** and would like to setup a
    research project using Orthanc, including about AI, get in touch
-   with `Sébastien Jodogne's research lab
-   <https://www.info.ucl.ac.be/~sjodogne/>`__ at the UCLouvain
-   university.
+   with `Sébastien Jodogne
+   <https://www.info.ucl.ac.be/~sjodogne/>`__'s research lab at the
+   `UCLouvain university <https://orthanc.uclouvain.be/>`__.
    
 4. If you are not able to reproduce an issue by yourself, if you are
    looking for personalized help related to deployments/training/...,
@@ -227,6 +227,6 @@
      * `James Manner <https://binary.com.au/>`__ (English, Australia)
 
    Get in touch with `Sébastien Jodogne
-   <mailto:s.jodogne@orthanc-labs.com>`__ if you want to be included
-   in this list.
+   <mailto:sebastien.jodogne@uclouvain.be>`__ if you want to be
+   included in this list.