summaryrefslogtreecommitdiff
path: root/science
diff options
context:
space:
mode:
Diffstat (limited to 'science')
-rw-r--r--science/orthanc-dicomweb/Makefile49
-rw-r--r--science/orthanc-dicomweb/distinfo20
-rw-r--r--science/orthanc-dicomweb/files/patch-ThirdPartyDownloads_Orthanc-1.11.0_OrthancFramework_Sources_OrthancFramework.h10
-rw-r--r--science/orthanc-dicomweb/files/patch-ThirdPartyDownloads_Orthanc-1.11.0_OrthancFramework_Sources_SystemToolbox.cpp11
-rw-r--r--science/orthanc-dicomweb/files/patch-ThirdPartyDownloads_Orthanc-1.11.0_OrthancServer_Plugins_Engine_PluginsManager.cpp11
-rw-r--r--science/orthanc-dicomweb/files/patch-ThirdPartyDownloads_Orthanc-1.11.0_OrthancServer_Plugins_Samples_ModalityWorklists_Plugin.cpp11
-rw-r--r--science/orthanc-dicomweb/files/patch-ThirdPartyDownloads_Orthanc-1.11.0_OrthancServer_Sources_OrthancConfiguration.cpp11
-rw-r--r--science/orthanc-mysql/Makefile34
-rw-r--r--science/orthanc-mysql/distinfo10
-rw-r--r--science/orthanc-mysql/files/patch-MySQL_Plugins_IndexPlugin.cpp10
-rw-r--r--science/orthanc-mysql/files/patch-MySQL_ThirdPartyDownloads_Orthanc-1.9.3_OrthancFramework_Sources_SystemToolbox.cpp11
-rw-r--r--science/orthanc-mysql/files/patch-MySQL_ThirdPartyDownloads_Orthanc-1.9.3_OrthancServer_Plugins_Engine_PluginsManager.cpp11
-rw-r--r--science/orthanc-mysql/files/patch-MySQL_ThirdPartyDownloads_Orthanc-1.9.3_OrthancServer_Plugins_Samples_ModalityWorklists_Plugin.cpp11
-rw-r--r--science/orthanc-mysql/files/patch-MySQL_ThirdPartyDownloads_Orthanc-1.9.3_OrthancServer_Sources_OrthancConfiguration.cpp11
-rw-r--r--science/orthanc-mysql/files/patch-OrthancFramework_Resources_CMake_ProtobufConfiguration.cmake47
-rw-r--r--science/orthanc-mysql/files/patch-Resources_Orthanc_Databases_ISqlLookupFormatter.cpp10
-rw-r--r--science/orthanc-postgresql/Makefile32
-rw-r--r--science/orthanc-postgresql/distinfo10
-rw-r--r--science/orthanc-postgresql/files/patch-PostgreSQL_CMakeLists.txt12
-rw-r--r--science/orthanc-postgresql/files/patch-PostgreSQL_ThirdPartyDownloads_Orthanc-1.9.3_OrthancFramework_Sources_SystemToolbox.cpp11
-rw-r--r--science/orthanc-postgresql/files/patch-PostgreSQL_ThirdPartyDownloads_Orthanc-1.9.3_OrthancServer_Plugins_Engine_PluginsManager.cpp11
-rw-r--r--science/orthanc-postgresql/files/patch-PostgreSQL_ThirdPartyDownloads_Orthanc-1.9.3_OrthancServer_Plugins_Samples_ModalityWorklists_Plugin.cpp11
-rw-r--r--science/orthanc-postgresql/files/patch-PostgreSQL_ThirdPartyDownloads_Orthanc-1.9.3_OrthancServer_Sources_OrthancConfiguration.cpp11
-rw-r--r--science/orthanc-postgresql/files/patch-Resources_Orthanc_Databases_ISqlLookupFormatter.cpp10
-rw-r--r--science/orthanc-webviewer/Makefile47
-rw-r--r--science/orthanc-webviewer/distinfo10
-rw-r--r--science/orthanc-webviewer/files/patch-CMakeLists.txt11
-rw-r--r--science/orthanc/Makefile14
-rw-r--r--science/orthanc/distinfo6
-rw-r--r--science/orthanc/files/orthanc.in4
-rw-r--r--science/orthanc/files/patch-OrthancFramework_Sources_Images_JpegWriter.cpp11
-rw-r--r--science/orthanc/files/patch-OrthancServer_Resources_Configuration.json4
-rw-r--r--science/orthanc/files/patch-OrthancServer_Sources_Database_PrepareDatabase.sql13
-rw-r--r--science/py-h5py/Makefile14
-rw-r--r--science/py-h5py/distinfo6
-rw-r--r--science/py-h5py/files/patch-pyproject.toml28
-rw-r--r--science/py-h5py/pkg-plist3
37 files changed, 213 insertions, 344 deletions
diff --git a/science/orthanc-dicomweb/Makefile b/science/orthanc-dicomweb/Makefile
index 4621c2660c8a..cf8110adbcb9 100644
--- a/science/orthanc-dicomweb/Makefile
+++ b/science/orthanc-dicomweb/Makefile
@@ -1,47 +1,42 @@
PORTNAME= orthanc-dicomweb
-DISTVERSION= 1.8
-PORTREVISION= 15
+DISTVERSION= 1.21
CATEGORIES= science
-MASTER_SITES= https://www.orthanc-server.com/downloads/get.php?path=/plugin-dicom-web/:main \
- https://www.orthanc-server.com/downloads/get.php?path=/orthanc/:framework \
- https://orthanc.osimis.io/ThirdPartyDownloads/:thirdparty \
- https://orthanc.osimis.io/ThirdPartyDownloads/dicom-web/:thirdpartydicomweb
-DISTFILES= OrthancDicomWeb-${PORTVERSION}.tar.gz:main
-EXTRADISTFILES= Orthanc-1.11.0.tar.gz:framework \
+MASTER_SITES= https://orthanc.uclouvain.be/downloads/sources/orthanc-dicomweb/:dicomweb \
+ https://orthanc.uclouvain.be/downloads/third-party-downloads/:thirdparty \
+ https://orthanc.uclouvain.be/downloads/third-party-downloads/dicom-web/:thirdpartyweb \
+ https://orthanc.uclouvain.be/downloads/sources/orthanc/:orthanc
+DISTFILES= OrthancDicomWeb-${PORTVERSION}.tar.gz:dicomweb
+EXTRADISTFILES= Orthanc-${ORTHANC_VER}.tar.gz:orthanc \
e2fsprogs-1.44.5.tar.gz:thirdparty \
- bootstrap-4.3.1.zip:thirdpartydicomweb \
- vuejs-2.6.10.tar.gz:thirdpartydicomweb \
- axios-0.19.0.tar.gz:thirdpartydicomweb \
- Font-Awesome-4.7.0.tar.gz:thirdpartydicomweb \
- bootstrap-vue-2.0.0-rc.24-dist.tar.gz:thirdpartydicomweb \
- babel-polyfill-6.26.0.min.js.gz:thirdpartydicomweb
+ bootstrap-5.3.3.zip:thirdparty \
+ babel-polyfill-6.26.0.min.js.gz:thirdpartyweb \
+ vuejs-2.6.10.tar.gz:thirdpartyweb \
+ axios-0.19.0.tar.gz:thirdpartyweb \
+ Font-Awesome-4.7.0.tar.gz:thirdpartyweb
DISTFILES+= ${EXTRADISTFILES}
DIST_SUBDIR= orthanc
EXTRACT_ONLY= OrthancDicomWeb-${PORTVERSION}.tar.gz
-MAINTAINER= maintainer.freebsd@xpoundit.com
-COMMENT= Orthanc plugin to bring support of the DICOMweb standard into Orthanc
+MAINTAINER= jwb@FreeBSD.org
+COMMENT= Orthanc DICOMWeb plugin
WWW= https://www.orthanc-server.com/static.php?page=dicomweb
LICENSE= AGPLv3
LICENSE_FILE= ${WRKSRC}/COPYING
-BROKEN= fails to build with boost-1.86+
-
-BUILD_DEPENDS= ${LOCALBASE}/include/orthanc/OrthancCPlugin.h:science/orthanc
+BUILD_DEPENDS= orthanc>=${ORTHANC_VER}:science/orthanc \
+ googletest>0:devel/googletest
LIB_DEPENDS= libboost_atomic.so:devel/boost-libs \
- libexpat.so:textproc/expat2 \
- libgdcmCommon.so:devel/gdcm \
- libicudata.so:devel/icu \
libjsoncpp.so:devel/jsoncpp \
- libopenjp2.so:graphics/openjpeg \
libpugixml.so:textproc/pugixml
-RUN_DEPENDS= Orthanc:science/orthanc
+RUN_DEPENDS= orthanc>=${ORTHANC_VER}:science/orthanc
USES= cmake localbase python:build
-USE_LDCONFIG= yes
+# FIXME: Should plugins be moved to lib?
+USE_LDCONFIG= ${DATADIR}/plugins
-CMAKE_ARGS= -DORTHANC_FRAMEWORK_ROOT=${WRKSRC}/ThirdPartyDownloads/Orthanc-1.11.0/OrthancFramework/Sources \
+ORTHANC_VER= 1.12.9
+CMAKE_ARGS= -DORTHANC_FRAMEWORK_ROOT=${WRKSRC}/ThirdPartyDownloads/Orthanc-${ORTHANC_VER}/OrthancFramework/Sources \
-DORTHANC_FRAMEWORK_SOURCE=path
CMAKE_OFF= USE_SYSTEM_UUID
@@ -57,7 +52,7 @@ post-extract:
.for f in ${EXTRADISTFILES:C/:[^:]*//}
${CP} ${DISTDIR}/${DIST_SUBDIR}/${f} ${WRKSRC}/ThirdPartyDownloads
.endfor
- ${TAR} -C ${WRKSRC}/ThirdPartyDownloads -xf ${WRKSRC}/ThirdPartyDownloads/Orthanc-1.11.0.tar.gz
+ ${TAR} -C ${WRKSRC}/ThirdPartyDownloads -xf ${WRKSRC}/ThirdPartyDownloads/Orthanc-${ORTHANC_VER}.tar.gz
do-test:
@cd ${BUILD_WRKSRC} && ./UnitTests
diff --git a/science/orthanc-dicomweb/distinfo b/science/orthanc-dicomweb/distinfo
index 2d9a67378d22..97b550726de8 100644
--- a/science/orthanc-dicomweb/distinfo
+++ b/science/orthanc-dicomweb/distinfo
@@ -1,19 +1,17 @@
-TIMESTAMP = 1652283828
-SHA256 (orthanc/OrthancDicomWeb-1.8.tar.gz) = e32a02914ceec019f70c56988939d7f7b16d7fce75895cb756d2a91fd2fe4f9c
-SIZE (orthanc/OrthancDicomWeb-1.8.tar.gz) = 203789
-SHA256 (orthanc/Orthanc-1.11.0.tar.gz) = 23949a70562487fd6e79d6f3f13c71a0fc90aa25e492fb3a99575fee0722c5af
-SIZE (orthanc/Orthanc-1.11.0.tar.gz) = 1899829
+TIMESTAMP = 1761569002
+SHA256 (orthanc/OrthancDicomWeb-1.21.tar.gz) = 30b7b1c7e710b78f378fd1e46e09be3ece33111331acb0227f80bfebf7d1417c
+SIZE (orthanc/OrthancDicomWeb-1.21.tar.gz) = 296207
+SHA256 (orthanc/Orthanc-1.12.9.tar.gz) = 7a7cbc5f3663939fbef31ded021b36fcd52420337911ed43491bb663bcb5a4b2
+SIZE (orthanc/Orthanc-1.12.9.tar.gz) = 2165182
SHA256 (orthanc/e2fsprogs-1.44.5.tar.gz) = 2e211fae27ef74d5af4a4e40b10b8df7f87c655933bd171aab4889bfc4e6d1cc
SIZE (orthanc/e2fsprogs-1.44.5.tar.gz) = 7619237
-SHA256 (orthanc/bootstrap-4.3.1.zip) = c7fcae50c070250e4e1ae36a670e5ee8fe9d529eb3f1a03c527f8223ce3f61bc
-SIZE (orthanc/bootstrap-4.3.1.zip) = 2705432
+SHA256 (orthanc/bootstrap-5.3.3.zip) = 55d7f1ce795040afb8311df09d29d0d34648400c1eaabb2d0a2ed2216b3db05d
+SIZE (orthanc/bootstrap-5.3.3.zip) = 8594807
+SHA256 (orthanc/babel-polyfill-6.26.0.min.js.gz) = 087d3d2d6212afb418f50491858f7f055cb54defb6351d6c5d008f662a2a95c2
+SIZE (orthanc/babel-polyfill-6.26.0.min.js.gz) = 34718
SHA256 (orthanc/vuejs-2.6.10.tar.gz) = e3d900cd9266b5bed9bb6d575fc9ab6787e79e7ad21c01ee1277bff5453121f2
SIZE (orthanc/vuejs-2.6.10.tar.gz) = 1576461
SHA256 (orthanc/axios-0.19.0.tar.gz) = 29577c6085b090b4e4a99392fcdd582fb6bbcb49b2aaf2cc7b7fa3874529b380
SIZE (orthanc/axios-0.19.0.tar.gz) = 125193
SHA256 (orthanc/Font-Awesome-4.7.0.tar.gz) = de512ba0e1dead382bbfce372cde74b3f18971d876fffb635ee9333f0db05d43
SIZE (orthanc/Font-Awesome-4.7.0.tar.gz) = 2672776
-SHA256 (orthanc/bootstrap-vue-2.0.0-rc.24-dist.tar.gz) = bc62cc91c2c3c24ddd29321d91be629e72db6129413ab6b8111ce13c2a57775b
-SIZE (orthanc/bootstrap-vue-2.0.0-rc.24-dist.tar.gz) = 2448005
-SHA256 (orthanc/babel-polyfill-6.26.0.min.js.gz) = 087d3d2d6212afb418f50491858f7f055cb54defb6351d6c5d008f662a2a95c2
-SIZE (orthanc/babel-polyfill-6.26.0.min.js.gz) = 34718
diff --git a/science/orthanc-dicomweb/files/patch-ThirdPartyDownloads_Orthanc-1.11.0_OrthancFramework_Sources_OrthancFramework.h b/science/orthanc-dicomweb/files/patch-ThirdPartyDownloads_Orthanc-1.11.0_OrthancFramework_Sources_OrthancFramework.h
deleted file mode 100644
index 7e2d22ba1503..000000000000
--- a/science/orthanc-dicomweb/files/patch-ThirdPartyDownloads_Orthanc-1.11.0_OrthancFramework_Sources_OrthancFramework.h
+++ /dev/null
@@ -1,10 +0,0 @@
---- ThirdPartyDownloads/Orthanc-1.11.0/OrthancFramework/Sources/OrthancFramework.h.orig 2022-05-09 09:19:44 UTC
-+++ ThirdPartyDownloads/Orthanc-1.11.0/OrthancFramework/Sources/OrthancFramework.h
-@@ -70,6 +70,7 @@
-
-
- #include <string>
-+#include <cassert>
-
- namespace Orthanc
- {
diff --git a/science/orthanc-dicomweb/files/patch-ThirdPartyDownloads_Orthanc-1.11.0_OrthancFramework_Sources_SystemToolbox.cpp b/science/orthanc-dicomweb/files/patch-ThirdPartyDownloads_Orthanc-1.11.0_OrthancFramework_Sources_SystemToolbox.cpp
deleted file mode 100644
index be3a52257299..000000000000
--- a/science/orthanc-dicomweb/files/patch-ThirdPartyDownloads_Orthanc-1.11.0_OrthancFramework_Sources_SystemToolbox.cpp
+++ /dev/null
@@ -1,11 +0,0 @@
---- ThirdPartyDownloads/Orthanc-1.11.0/OrthancFramework/Sources/SystemToolbox.cpp.orig 2022-05-09 09:19:44 UTC
-+++ ThirdPartyDownloads/Orthanc-1.11.0/OrthancFramework/Sources/SystemToolbox.cpp
-@@ -728,7 +728,7 @@ namespace Orthanc
-
- MimeType SystemToolbox::AutodetectMimeType(const std::string& path)
- {
-- std::string extension = boost::filesystem::extension(path);
-+ std::string extension = boost::filesystem::path(path).extension().string();
- Toolbox::ToLowerCase(extension);
-
- // http://en.wikipedia.org/wiki/Mime_types
diff --git a/science/orthanc-dicomweb/files/patch-ThirdPartyDownloads_Orthanc-1.11.0_OrthancServer_Plugins_Engine_PluginsManager.cpp b/science/orthanc-dicomweb/files/patch-ThirdPartyDownloads_Orthanc-1.11.0_OrthancServer_Plugins_Engine_PluginsManager.cpp
deleted file mode 100644
index 7e84c746faa1..000000000000
--- a/science/orthanc-dicomweb/files/patch-ThirdPartyDownloads_Orthanc-1.11.0_OrthancServer_Plugins_Engine_PluginsManager.cpp
+++ /dev/null
@@ -1,11 +0,0 @@
---- ThirdPartyDownloads/Orthanc-1.11.0/OrthancServer/Plugins/Engine/PluginsManager.cpp.orig 2022-05-09 09:19:44 UTC
-+++ ThirdPartyDownloads/Orthanc-1.11.0/OrthancServer/Plugins/Engine/PluginsManager.cpp
-@@ -292,7 +292,7 @@ namespace Orthanc
- }
- else
- {
-- std::string extension = boost::filesystem::extension(it->path());
-+ std::string extension = it->path().extension().string();
- Toolbox::ToLowerCase(extension);
-
- if (extension == PLUGIN_EXTENSION)
diff --git a/science/orthanc-dicomweb/files/patch-ThirdPartyDownloads_Orthanc-1.11.0_OrthancServer_Plugins_Samples_ModalityWorklists_Plugin.cpp b/science/orthanc-dicomweb/files/patch-ThirdPartyDownloads_Orthanc-1.11.0_OrthancServer_Plugins_Samples_ModalityWorklists_Plugin.cpp
deleted file mode 100644
index dad50da54856..000000000000
--- a/science/orthanc-dicomweb/files/patch-ThirdPartyDownloads_Orthanc-1.11.0_OrthancServer_Plugins_Samples_ModalityWorklists_Plugin.cpp
+++ /dev/null
@@ -1,11 +0,0 @@
---- ThirdPartyDownloads/Orthanc-1.11.0/OrthancServer/Plugins/Samples/ModalityWorklists/Plugin.cpp.orig 2022-05-09 09:19:44 UTC
-+++ ThirdPartyDownloads/Orthanc-1.11.0/OrthancServer/Plugins/Samples/ModalityWorklists/Plugin.cpp
-@@ -163,7 +163,7 @@ OrthancPluginErrorCode Callback(OrthancPluginWorklistA
- if (type == fs::regular_file ||
- type == fs::reparse_file) // cf. BitBucket issue #11
- {
-- std::string extension = fs::extension(it->path());
-+ std::string extension = it->path().extension().string();
- std::transform(extension.begin(), extension.end(), extension.begin(), tolower); // Convert to lowercase
-
- if (extension == ".wl")
diff --git a/science/orthanc-dicomweb/files/patch-ThirdPartyDownloads_Orthanc-1.11.0_OrthancServer_Sources_OrthancConfiguration.cpp b/science/orthanc-dicomweb/files/patch-ThirdPartyDownloads_Orthanc-1.11.0_OrthancServer_Sources_OrthancConfiguration.cpp
deleted file mode 100644
index 9df1a25a54a7..000000000000
--- a/science/orthanc-dicomweb/files/patch-ThirdPartyDownloads_Orthanc-1.11.0_OrthancServer_Sources_OrthancConfiguration.cpp
+++ /dev/null
@@ -1,11 +0,0 @@
---- ThirdPartyDownloads/Orthanc-1.11.0/OrthancServer/Sources/OrthancConfiguration.cpp.orig 2022-05-09 09:19:44 UTC
-+++ ThirdPartyDownloads/Orthanc-1.11.0/OrthancServer/Sources/OrthancConfiguration.cpp
-@@ -113,7 +113,7 @@ namespace Orthanc
- {
- if (!is_directory(it->status()))
- {
-- std::string extension = boost::filesystem::extension(it->path());
-+ std::string extension = it->path().extension().string();
- Toolbox::ToLowerCase(extension);
-
- if (extension == ".json")
diff --git a/science/orthanc-mysql/Makefile b/science/orthanc-mysql/Makefile
index c5bbe0d89ec5..37620e7c7b54 100644
--- a/science/orthanc-mysql/Makefile
+++ b/science/orthanc-mysql/Makefile
@@ -1,40 +1,36 @@
PORTNAME= orthanc-mysql
-DISTVERSION= 4.3
-PORTREVISION= 12
+DISTVERSION= 5.2
CATEGORIES= science
-MASTER_SITES= https://www.orthanc-server.com/downloads/get.php?path=/plugin-mysql/:main \
- https://www.orthanc-server.com/downloads/get.php?path=/orthanc/:framework \
- https://orthanc.osimis.io/ThirdPartyDownloads/:thirdparty
-DISTFILES= OrthancMySQL-${PORTVERSION}.tar.gz:main \
- Orthanc-1.9.3.tar.gz:framework \
+MASTER_SITES= https://orthanc.uclouvain.be/downloads/sources/orthanc-mysql/:mysql \
+ https://orthanc.uclouvain.be/downloads/sources/orthanc/:orthanc \
+ https://orthanc.uclouvain.be/downloads/third-party-downloads/:thirdparty
+DISTFILES= OrthancMySQL-${PORTVERSION}.tar.gz:mysql \
+ Orthanc-${ORTHANC_VER}.tar.gz:orthanc \
e2fsprogs-1.44.5.tar.gz:thirdparty
DIST_SUBDIR= orthanc
EXTRACT_ONLY= OrthancMySQL-${PORTVERSION}.tar.gz
-MAINTAINER= maintainer.freebsd@xpoundit.com
+MAINTAINER= jwb@FreeBSD.org
COMMENT= Orthanc plugin to use MySQL/MariaDB for indexing or storage
WWW= https://www.orthanc-server.com/static.php?page=mysql
LICENSE= AGPLv3
LICENSE_FILE= ${WRKSRC}/COPYING
-BROKEN= fails to build with boost-1.86+
-
-BUILD_DEPENDS= ${LOCALBASE}/include/orthanc/OrthancCDatabasePlugin.h:science/orthanc
+BUILD_DEPENDS= ${LOCALBASE}/include/orthanc/OrthancCDatabasePlugin.h:science/orthanc \
+ googletest>0:devel/googletest
LIB_DEPENDS= libboost_filesystem.so:devel/boost-libs \
libcurl.so:ftp/curl \
- libgdcmCommon.so:devel/gdcm \
libjsoncpp.so:devel/jsoncpp \
- libpugixml.so:textproc/pugixml
+ libprotobuf.so:devel/protobuf
RUN_DEPENDS= Orthanc:science/orthanc
USES= cmake localbase mysql:client python:build ssl
-USE_CXXSTD= c++14 # googletest 1.13
-USE_LDCONFIG= yes
+USE_LDCONFIG= ${DATADIR}/plugins
WRKSRC= ${WRKDIR}/OrthancMySQL-${PORTVERSION}
-CMAKE_ARGS= -DORTHANC_FRAMEWORK_ROOT=${WRKSRC}/MySQL/ThirdPartyDownloads/Orthanc-1.9.3/OrthancFramework/Sources \
+CMAKE_ARGS= -DORTHANC_FRAMEWORK_ROOT=${WRKSRC}/MySQL/ThirdPartyDownloads/Orthanc-${ORTHANC_VER}/OrthancFramework/Sources \
-DORTHANC_FRAMEWORK_SOURCE=path
CMAKE_OFF= DBUILD_UNIT_TESTS USE_SYSTEM_ORTHANC_SDK USE_SYSTEM_UUID
CMAKE_SOURCE_PATH= ${WRKSRC}/MySQL
@@ -44,10 +40,12 @@ CXXFLAGS+= -I${LOCALBASE}/include -DNDEBUG
PLIST_SUB= DISTVERSION=${DISTVERSION}
+ORTHANC_VER= 1.12.9
+
post-extract:
${MKDIR} ${WRKSRC}/MySQL/ThirdPartyDownloads
${CP} ${DISTDIR}/${DIST_SUBDIR}/e2fsprogs-1.44.5.tar.gz ${WRKSRC}/MySQL/ThirdPartyDownloads
- ${CP} ${DISTDIR}/${DIST_SUBDIR}/Orthanc-1.9.3.tar.gz ${WRKSRC}/MySQL/ThirdPartyDownloads
- ${TAR} -C ${WRKSRC}/MySQL/ThirdPartyDownloads -xf ${WRKSRC}/MySQL/ThirdPartyDownloads/Orthanc-1.9.3.tar.gz
+ ${CP} ${DISTDIR}/${DIST_SUBDIR}/Orthanc-${ORTHANC_VER}.tar.gz ${WRKSRC}/MySQL/ThirdPartyDownloads
+ ${TAR} -C ${WRKSRC}/MySQL/ThirdPartyDownloads -xf ${WRKSRC}/MySQL/ThirdPartyDownloads/Orthanc-${ORTHANC_VER}.tar.gz
.include <bsd.port.mk>
diff --git a/science/orthanc-mysql/distinfo b/science/orthanc-mysql/distinfo
index f73c567cbf40..7b57fb02015e 100644
--- a/science/orthanc-mysql/distinfo
+++ b/science/orthanc-mysql/distinfo
@@ -1,7 +1,7 @@
-TIMESTAMP = 1629969268
-SHA256 (orthanc/OrthancMySQL-4.3.tar.gz) = 7a22cbb482809bc1f6732e3e582cbbf4449e9205f297453ad4c7b7792956efba
-SIZE (orthanc/OrthancMySQL-4.3.tar.gz) = 321585
-SHA256 (orthanc/Orthanc-1.9.3.tar.gz) = 41cc35a3d15ecb0d7b834e8e28a740cc4ffa1f333c019a764228d60e96608960
-SIZE (orthanc/Orthanc-1.9.3.tar.gz) = 1818313
+TIMESTAMP = 1761521650
+SHA256 (orthanc/OrthancMySQL-5.2.tar.gz) = 0d446b53c3fdaa66d9f2365864f1ac54d133fe3760d7d3bb52c850ca67ce9fbb
+SIZE (orthanc/OrthancMySQL-5.2.tar.gz) = 603876
+SHA256 (orthanc/Orthanc-1.12.9.tar.gz) = 7a7cbc5f3663939fbef31ded021b36fcd52420337911ed43491bb663bcb5a4b2
+SIZE (orthanc/Orthanc-1.12.9.tar.gz) = 2165182
SHA256 (orthanc/e2fsprogs-1.44.5.tar.gz) = 2e211fae27ef74d5af4a4e40b10b8df7f87c655933bd171aab4889bfc4e6d1cc
SIZE (orthanc/e2fsprogs-1.44.5.tar.gz) = 7619237
diff --git a/science/orthanc-mysql/files/patch-MySQL_Plugins_IndexPlugin.cpp b/science/orthanc-mysql/files/patch-MySQL_Plugins_IndexPlugin.cpp
new file mode 100644
index 000000000000..af34bb427ab3
--- /dev/null
+++ b/science/orthanc-mysql/files/patch-MySQL_Plugins_IndexPlugin.cpp
@@ -0,0 +1,10 @@
+--- MySQL/Plugins/IndexPlugin.cpp.orig 2025-10-27 11:52:57 UTC
++++ MySQL/Plugins/IndexPlugin.cpp
+@@ -30,6 +30,7 @@
+ #include <Toolbox.h>
+
+ #include <google/protobuf/any.h>
++#include <google/protobuf/stubs/common.h>
+
+ #define ORTHANC_PLUGIN_NAME "mysql-index"
+
diff --git a/science/orthanc-mysql/files/patch-MySQL_ThirdPartyDownloads_Orthanc-1.9.3_OrthancFramework_Sources_SystemToolbox.cpp b/science/orthanc-mysql/files/patch-MySQL_ThirdPartyDownloads_Orthanc-1.9.3_OrthancFramework_Sources_SystemToolbox.cpp
deleted file mode 100644
index 338388756a00..000000000000
--- a/science/orthanc-mysql/files/patch-MySQL_ThirdPartyDownloads_Orthanc-1.9.3_OrthancFramework_Sources_SystemToolbox.cpp
+++ /dev/null
@@ -1,11 +0,0 @@
---- MySQL/ThirdPartyDownloads/Orthanc-1.9.3/OrthancFramework/Sources/SystemToolbox.cpp.orig 2021-05-07 07:22:38 UTC
-+++ MySQL/ThirdPartyDownloads/Orthanc-1.9.3/OrthancFramework/Sources/SystemToolbox.cpp
-@@ -727,7 +727,7 @@ namespace Orthanc
-
- MimeType SystemToolbox::AutodetectMimeType(const std::string& path)
- {
-- std::string extension = boost::filesystem::extension(path);
-+ std::string extension = boost::filesystem::path(path).extension().string();
- Toolbox::ToLowerCase(extension);
-
- // http://en.wikipedia.org/wiki/Mime_types
diff --git a/science/orthanc-mysql/files/patch-MySQL_ThirdPartyDownloads_Orthanc-1.9.3_OrthancServer_Plugins_Engine_PluginsManager.cpp b/science/orthanc-mysql/files/patch-MySQL_ThirdPartyDownloads_Orthanc-1.9.3_OrthancServer_Plugins_Engine_PluginsManager.cpp
deleted file mode 100644
index c739fd182701..000000000000
--- a/science/orthanc-mysql/files/patch-MySQL_ThirdPartyDownloads_Orthanc-1.9.3_OrthancServer_Plugins_Engine_PluginsManager.cpp
+++ /dev/null
@@ -1,11 +0,0 @@
---- MySQL/ThirdPartyDownloads/Orthanc-1.9.3/OrthancServer/Plugins/Engine/PluginsManager.cpp.orig 2021-05-07 07:22:38 UTC
-+++ MySQL/ThirdPartyDownloads/Orthanc-1.9.3/OrthancServer/Plugins/Engine/PluginsManager.cpp
-@@ -303,7 +303,7 @@ namespace Orthanc
- }
- else
- {
-- std::string extension = boost::filesystem::extension(it->path());
-+ std::string extension = it->path().extension().string();
- Toolbox::ToLowerCase(extension);
-
- if (extension == PLUGIN_EXTENSION)
diff --git a/science/orthanc-mysql/files/patch-MySQL_ThirdPartyDownloads_Orthanc-1.9.3_OrthancServer_Plugins_Samples_ModalityWorklists_Plugin.cpp b/science/orthanc-mysql/files/patch-MySQL_ThirdPartyDownloads_Orthanc-1.9.3_OrthancServer_Plugins_Samples_ModalityWorklists_Plugin.cpp
deleted file mode 100644
index 2c45326a9e12..000000000000
--- a/science/orthanc-mysql/files/patch-MySQL_ThirdPartyDownloads_Orthanc-1.9.3_OrthancServer_Plugins_Samples_ModalityWorklists_Plugin.cpp
+++ /dev/null
@@ -1,11 +0,0 @@
---- MySQL/ThirdPartyDownloads/Orthanc-1.9.3/OrthancServer/Plugins/Samples/ModalityWorklists/Plugin.cpp.orig 2021-05-07 07:22:38 UTC
-+++ MySQL/ThirdPartyDownloads/Orthanc-1.9.3/OrthancServer/Plugins/Samples/ModalityWorklists/Plugin.cpp
-@@ -162,7 +162,7 @@ OrthancPluginErrorCode Callback(OrthancPluginWorklistA
- if (type == fs::regular_file ||
- type == fs::reparse_file) // cf. BitBucket issue #11
- {
-- std::string extension = fs::extension(it->path());
-+ std::string extension = it->path().extension().string();
- std::transform(extension.begin(), extension.end(), extension.begin(), tolower); // Convert to lowercase
-
- if (extension == ".wl")
diff --git a/science/orthanc-mysql/files/patch-MySQL_ThirdPartyDownloads_Orthanc-1.9.3_OrthancServer_Sources_OrthancConfiguration.cpp b/science/orthanc-mysql/files/patch-MySQL_ThirdPartyDownloads_Orthanc-1.9.3_OrthancServer_Sources_OrthancConfiguration.cpp
deleted file mode 100644
index 6ed1b2fd66f7..000000000000
--- a/science/orthanc-mysql/files/patch-MySQL_ThirdPartyDownloads_Orthanc-1.9.3_OrthancServer_Sources_OrthancConfiguration.cpp
+++ /dev/null
@@ -1,11 +0,0 @@
---- MySQL/ThirdPartyDownloads/Orthanc-1.9.3/OrthancServer/Sources/OrthancConfiguration.cpp.orig 2021-05-07 07:22:38 UTC
-+++ MySQL/ThirdPartyDownloads/Orthanc-1.9.3/OrthancServer/Sources/OrthancConfiguration.cpp
-@@ -123,7 +123,7 @@ namespace Orthanc
- {
- if (!is_directory(it->status()))
- {
-- std::string extension = boost::filesystem::extension(it->path());
-+ std::string extension = it->path().extension().string();
- Toolbox::ToLowerCase(extension);
-
- if (extension == ".json")
diff --git a/science/orthanc-mysql/files/patch-OrthancFramework_Resources_CMake_ProtobufConfiguration.cmake b/science/orthanc-mysql/files/patch-OrthancFramework_Resources_CMake_ProtobufConfiguration.cmake
new file mode 100644
index 000000000000..e4826a677166
--- /dev/null
+++ b/science/orthanc-mysql/files/patch-OrthancFramework_Resources_CMake_ProtobufConfiguration.cmake
@@ -0,0 +1,47 @@
+--- MySQL/ThirdPartyDownloads/Orthanc-1.12.9/OrthancFramework/Resources/CMake/ProtobufConfiguration.cmake.orig 2025-08-11 16:02:50 UTC
++++ MySQL/ThirdPartyDownloads/Orthanc-1.12.9/OrthancFramework/Resources/CMake/ProtobufConfiguration.cmake
+@@ -60,27 +60,31 @@ else()
+ add_custom_target(ProtobufCompiler)
+ endif()
+
+- check_include_file_cxx(google/protobuf/any.h HAVE_PROTOBUF_H)
+- if (NOT HAVE_PROTOBUF_H)
+- message(FATAL_ERROR "Please install the libprotobuf-dev package")
+- endif()
++ if (${CMAKE_SYSTEM_NAME} STREQUAL "FreeBSD")
++ find_package(Protobuf REQUIRED)
++ else()
++ check_include_file_cxx(google/protobuf/any.h HAVE_PROTOBUF_H)
++ if (NOT HAVE_PROTOBUF_H)
++ message(FATAL_ERROR "Please install the libprotobuf-dev package")
++ endif()
+
+- set(CMAKE_REQUIRED_LIBRARIES "protobuf")
++ set(CMAKE_REQUIRED_LIBRARIES "protobuf")
+
+- include(CheckCXXSourceCompiles)
+- check_cxx_source_compiles(
+- "
++ include(CheckCXXSourceCompiles)
++ check_cxx_source_compiles(
++ "
+ #include <google/protobuf/descriptor.h>
+ int main()
+ {
+ google::protobuf::FieldDescriptor::TypeName(google::protobuf::FieldDescriptor::TYPE_FLOAT);
+ }
+-" HAVE_PROTOBUF_LIB)
+- if (NOT HAVE_PROTOBUF_LIB)
+- message(FATAL_ERROR "Cannot find the protobuf library")
+- endif()
++ " HAVE_PROTOBUF_LIB)
++ if (NOT HAVE_PROTOBUF_LIB)
++ message(FATAL_ERROR "Cannot find the protobuf library")
++ endif()
+
+- unset(CMAKE_REQUIRED_LIBRARIES)
++ unset(CMAKE_REQUIRED_LIBRARIES)
++ endif()
+
+ link_libraries(protobuf)
+ endif()
diff --git a/science/orthanc-mysql/files/patch-Resources_Orthanc_Databases_ISqlLookupFormatter.cpp b/science/orthanc-mysql/files/patch-Resources_Orthanc_Databases_ISqlLookupFormatter.cpp
deleted file mode 100644
index e48c152f1165..000000000000
--- a/science/orthanc-mysql/files/patch-Resources_Orthanc_Databases_ISqlLookupFormatter.cpp
+++ /dev/null
@@ -1,10 +0,0 @@
---- Resources/Orthanc/Databases/ISqlLookupFormatter.cpp.orig 2021-07-22 18:16:30 UTC
-+++ Resources/Orthanc/Databases/ISqlLookupFormatter.cpp
-@@ -37,6 +37,7 @@
-
- #include "DatabaseConstraint.h"
-
-+#include <cassert>
- #include <boost/lexical_cast.hpp>
-
-
diff --git a/science/orthanc-postgresql/Makefile b/science/orthanc-postgresql/Makefile
index 3479520ad2ed..8b89f3124aee 100644
--- a/science/orthanc-postgresql/Makefile
+++ b/science/orthanc-postgresql/Makefile
@@ -1,40 +1,38 @@
PORTNAME= orthanc-postgresql
-DISTVERSION= 4.0
-PORTREVISION= 12
+DISTVERSION= 9.0
CATEGORIES= science
-MASTER_SITES= https://www.orthanc-server.com/downloads/get.php?path=/plugin-postgresql/:main \
- https://www.orthanc-server.com/downloads/get.php?path=/orthanc/:framework \
- https://orthanc.osimis.io/ThirdPartyDownloads/:thirdparty
-DISTFILES= OrthancPostgreSQL-${PORTVERSION}.tar.gz:main \
- Orthanc-1.9.3.tar.gz:framework \
+MASTER_SITES= https://orthanc.uclouvain.be/downloads/sources/orthanc-postgresql/:pgsql \
+ https://orthanc.uclouvain.be/downloads/sources/orthanc/:orthanc \
+ https://orthanc.uclouvain.be/downloads/third-party-downloads/:thirdparty
+DISTFILES= OrthancPostgreSQL-${PORTVERSION}.tar.gz:pgsql \
+ Orthanc-${ORTHANC_VER}.tar.gz:orthanc \
e2fsprogs-1.44.5.tar.gz:thirdparty
DIST_SUBDIR= orthanc
EXTRACT_ONLY= OrthancPostgreSQL-${PORTVERSION}.tar.gz
-MAINTAINER= maintainer.freebsd@xpoundit.com
+MAINTAINER= jwb@FreeBSD.org
COMMENT= Orthanc plugin to use PostgreSQL for indexing or storage
WWW= https://www.orthanc-server.com/static.php?page=postgresql
LICENSE= AGPLv3
LICENSE_FILE= ${WRKSRC}/COPYING
-BROKEN= fails to build with boost-1.86+
-
-BUILD_DEPENDS= ${LOCALBASE}/include/orthanc/OrthancCDatabasePlugin.h:science/orthanc
+BUILD_DEPENDS= ${LOCALBASE}/include/orthanc/OrthancCDatabasePlugin.h:science/orthanc \
+ googletest>0:devel/googletest
LIB_DEPENDS= libboost_filesystem.so:devel/boost-libs \
libgdcmCommon.so:devel/gdcm \
libjsoncpp.so:devel/jsoncpp \
libpugixml.so:textproc/pugixml
RUN_DEPENDS= Orthanc:science/orthanc
-USES= cmake compiler:c11 localbase pgsql:11+ python:build ssl
-USE_LDCONFIG= yes
+USES= cmake localbase pgsql:11+ python:build ssl
+USE_LDCONFIG= ${DATADIR}/plugins
WRKSRC= ${WRKDIR}/OrthancPostgreSQL-${PORTVERSION}
CMAKE_SOURCE_PATH= ${WRKSRC}/PostgreSQL
CMAKE_OFF= BUILD_UNIT_TESTS USE_SYSTEM_ORTHANC_SDK USE_SYSTEM_UUID
-CMAKE_ARGS= -DORTHANC_FRAMEWORK_ROOT=${WRKSRC}/PostgreSQL/ThirdPartyDownloads/Orthanc-1.9.3/OrthancFramework/Sources \
+CMAKE_ARGS= -DORTHANC_FRAMEWORK_ROOT=${WRKSRC}/PostgreSQL/ThirdPartyDownloads/Orthanc-${ORTHANC_VER}/OrthancFramework/Sources \
-DORTHANC_FRAMEWORK_SOURCE=path
CXXFLAGS+= -I${LOCALBASE}/include -DNDEBUG
LDFLAGS+= -L${LOCALBASE}/lib
@@ -42,10 +40,12 @@ CFLAGS+= -DORTHANC_ENABLE_LOGGING_PLUGIN -DNDEBUG
PLIST_SUB= DISTVERSION=${DISTVERSION}
+ORTHANC_VER= 1.12.9
+
post-extract:
${MKDIR} ${WRKSRC}/PostgreSQL/ThirdPartyDownloads
${CP} ${DISTDIR}/${DIST_SUBDIR}/e2fsprogs-1.44.5.tar.gz ${WRKSRC}/PostgreSQL/ThirdPartyDownloads
- ${CP} ${DISTDIR}/${DIST_SUBDIR}/Orthanc-1.9.3.tar.gz ${WRKSRC}/PostgreSQL/ThirdPartyDownloads
- ${TAR} -C ${WRKSRC}/PostgreSQL/ThirdPartyDownloads -xf ${WRKSRC}/PostgreSQL/ThirdPartyDownloads/Orthanc-1.9.3.tar.gz
+ ${CP} ${DISTDIR}/${DIST_SUBDIR}/Orthanc-${ORTHANC_VER}.tar.gz ${WRKSRC}/PostgreSQL/ThirdPartyDownloads
+ ${TAR} -C ${WRKSRC}/PostgreSQL/ThirdPartyDownloads -xf ${WRKSRC}/PostgreSQL/ThirdPartyDownloads/Orthanc-${ORTHANC_VER}.tar.gz
.include <bsd.port.mk>
diff --git a/science/orthanc-postgresql/distinfo b/science/orthanc-postgresql/distinfo
index a438656c3e1d..c68e74661ed6 100644
--- a/science/orthanc-postgresql/distinfo
+++ b/science/orthanc-postgresql/distinfo
@@ -1,7 +1,7 @@
-TIMESTAMP = 1620906912
-SHA256 (orthanc/OrthancPostgreSQL-4.0.tar.gz) = a5049ed8a5d6bb8b6529636cf1d9f631d1b61f6e0bbfdc6accae45aded42bac5
-SIZE (orthanc/OrthancPostgreSQL-4.0.tar.gz) = 318047
-SHA256 (orthanc/Orthanc-1.9.3.tar.gz) = 41cc35a3d15ecb0d7b834e8e28a740cc4ffa1f333c019a764228d60e96608960
-SIZE (orthanc/Orthanc-1.9.3.tar.gz) = 1818313
+TIMESTAMP = 1761533913
+SHA256 (orthanc/OrthancPostgreSQL-9.0.tar.gz) = 92c3fde9c3baad343a4de7090759274a733ac28af06037538dbf70f0ee50cd75
+SIZE (orthanc/OrthancPostgreSQL-9.0.tar.gz) = 790691
+SHA256 (orthanc/Orthanc-1.12.9.tar.gz) = 7a7cbc5f3663939fbef31ded021b36fcd52420337911ed43491bb663bcb5a4b2
+SIZE (orthanc/Orthanc-1.12.9.tar.gz) = 2165182
SHA256 (orthanc/e2fsprogs-1.44.5.tar.gz) = 2e211fae27ef74d5af4a4e40b10b8df7f87c655933bd171aab4889bfc4e6d1cc
SIZE (orthanc/e2fsprogs-1.44.5.tar.gz) = 7619237
diff --git a/science/orthanc-postgresql/files/patch-PostgreSQL_CMakeLists.txt b/science/orthanc-postgresql/files/patch-PostgreSQL_CMakeLists.txt
deleted file mode 100644
index 389ee26f4b28..000000000000
--- a/science/orthanc-postgresql/files/patch-PostgreSQL_CMakeLists.txt
+++ /dev/null
@@ -1,12 +0,0 @@
---- PostgreSQL/CMakeLists.txt.orig 2021-05-17 12:24:06 UTC
-+++ PostgreSQL/CMakeLists.txt
-@@ -23,6 +23,9 @@ set(OPENSSL_STATIC_VERSION "1.1.1" CACHE STRING "Force
-
- include(${CMAKE_SOURCE_DIR}/../Resources/CMake/DatabasesPluginConfiguration.cmake)
-
-+set(CMAKE_CXX_STANDARD 11)
-+set(CMAKE_CXX_STANDARD_REQUIRED ON)
-+set(CMAKE_CXX_EXTENSIONS OFF)
-
- if (${CMAKE_SYSTEM_NAME} STREQUAL "Windows")
- execute_process(
diff --git a/science/orthanc-postgresql/files/patch-PostgreSQL_ThirdPartyDownloads_Orthanc-1.9.3_OrthancFramework_Sources_SystemToolbox.cpp b/science/orthanc-postgresql/files/patch-PostgreSQL_ThirdPartyDownloads_Orthanc-1.9.3_OrthancFramework_Sources_SystemToolbox.cpp
deleted file mode 100644
index b7291c206db2..000000000000
--- a/science/orthanc-postgresql/files/patch-PostgreSQL_ThirdPartyDownloads_Orthanc-1.9.3_OrthancFramework_Sources_SystemToolbox.cpp
+++ /dev/null
@@ -1,11 +0,0 @@
---- PostgreSQL/ThirdPartyDownloads/Orthanc-1.9.3/OrthancFramework/Sources/SystemToolbox.cpp.orig 2021-05-07 07:22:38 UTC
-+++ PostgreSQL/ThirdPartyDownloads/Orthanc-1.9.3/OrthancFramework/Sources/SystemToolbox.cpp
-@@ -727,7 +727,7 @@ namespace Orthanc
-
- MimeType SystemToolbox::AutodetectMimeType(const std::string& path)
- {
-- std::string extension = boost::filesystem::extension(path);
-+ std::string extension = boost::filesystem::path(path).extension().string();
- Toolbox::ToLowerCase(extension);
-
- // http://en.wikipedia.org/wiki/Mime_types
diff --git a/science/orthanc-postgresql/files/patch-PostgreSQL_ThirdPartyDownloads_Orthanc-1.9.3_OrthancServer_Plugins_Engine_PluginsManager.cpp b/science/orthanc-postgresql/files/patch-PostgreSQL_ThirdPartyDownloads_Orthanc-1.9.3_OrthancServer_Plugins_Engine_PluginsManager.cpp
deleted file mode 100644
index 6211b49b37a1..000000000000
--- a/science/orthanc-postgresql/files/patch-PostgreSQL_ThirdPartyDownloads_Orthanc-1.9.3_OrthancServer_Plugins_Engine_PluginsManager.cpp
+++ /dev/null
@@ -1,11 +0,0 @@
---- PostgreSQL/ThirdPartyDownloads/Orthanc-1.9.3/OrthancServer/Plugins/Engine/PluginsManager.cpp.orig 2021-05-07 07:22:38 UTC
-+++ PostgreSQL/ThirdPartyDownloads/Orthanc-1.9.3/OrthancServer/Plugins/Engine/PluginsManager.cpp
-@@ -303,7 +303,7 @@ namespace Orthanc
- }
- else
- {
-- std::string extension = boost::filesystem::extension(it->path());
-+ std::string extension = it->path().extension().string();
- Toolbox::ToLowerCase(extension);
-
- if (extension == PLUGIN_EXTENSION)
diff --git a/science/orthanc-postgresql/files/patch-PostgreSQL_ThirdPartyDownloads_Orthanc-1.9.3_OrthancServer_Plugins_Samples_ModalityWorklists_Plugin.cpp b/science/orthanc-postgresql/files/patch-PostgreSQL_ThirdPartyDownloads_Orthanc-1.9.3_OrthancServer_Plugins_Samples_ModalityWorklists_Plugin.cpp
deleted file mode 100644
index cd1e7aed264f..000000000000
--- a/science/orthanc-postgresql/files/patch-PostgreSQL_ThirdPartyDownloads_Orthanc-1.9.3_OrthancServer_Plugins_Samples_ModalityWorklists_Plugin.cpp
+++ /dev/null
@@ -1,11 +0,0 @@
---- PostgreSQL/ThirdPartyDownloads/Orthanc-1.9.3/OrthancServer/Plugins/Samples/ModalityWorklists/Plugin.cpp.orig 2021-05-07 07:22:38 UTC
-+++ PostgreSQL/ThirdPartyDownloads/Orthanc-1.9.3/OrthancServer/Plugins/Samples/ModalityWorklists/Plugin.cpp
-@@ -162,7 +162,7 @@ OrthancPluginErrorCode Callback(OrthancPluginWorklistA
- if (type == fs::regular_file ||
- type == fs::reparse_file) // cf. BitBucket issue #11
- {
-- std::string extension = fs::extension(it->path());
-+ std::string extension = it->path().extension().string();
- std::transform(extension.begin(), extension.end(), extension.begin(), tolower); // Convert to lowercase
-
- if (extension == ".wl")
diff --git a/science/orthanc-postgresql/files/patch-PostgreSQL_ThirdPartyDownloads_Orthanc-1.9.3_OrthancServer_Sources_OrthancConfiguration.cpp b/science/orthanc-postgresql/files/patch-PostgreSQL_ThirdPartyDownloads_Orthanc-1.9.3_OrthancServer_Sources_OrthancConfiguration.cpp
deleted file mode 100644
index d41857168ca7..000000000000
--- a/science/orthanc-postgresql/files/patch-PostgreSQL_ThirdPartyDownloads_Orthanc-1.9.3_OrthancServer_Sources_OrthancConfiguration.cpp
+++ /dev/null
@@ -1,11 +0,0 @@
---- PostgreSQL/ThirdPartyDownloads/Orthanc-1.9.3/OrthancServer/Sources/OrthancConfiguration.cpp.orig 2021-05-07 07:22:38 UTC
-+++ PostgreSQL/ThirdPartyDownloads/Orthanc-1.9.3/OrthancServer/Sources/OrthancConfiguration.cpp
-@@ -123,7 +123,7 @@ namespace Orthanc
- {
- if (!is_directory(it->status()))
- {
-- std::string extension = boost::filesystem::extension(it->path());
-+ std::string extension = it->path().extension().string();
- Toolbox::ToLowerCase(extension);
-
- if (extension == ".json")
diff --git a/science/orthanc-postgresql/files/patch-Resources_Orthanc_Databases_ISqlLookupFormatter.cpp b/science/orthanc-postgresql/files/patch-Resources_Orthanc_Databases_ISqlLookupFormatter.cpp
deleted file mode 100644
index c1b15d836a28..000000000000
--- a/science/orthanc-postgresql/files/patch-Resources_Orthanc_Databases_ISqlLookupFormatter.cpp
+++ /dev/null
@@ -1,10 +0,0 @@
---- Resources/Orthanc/Databases/ISqlLookupFormatter.cpp.orig 2021-04-22 15:22:26 UTC
-+++ Resources/Orthanc/Databases/ISqlLookupFormatter.cpp
-@@ -49,6 +49,7 @@
-
- #include "DatabaseConstraint.h"
-
-+#include <cassert>
- #include <boost/lexical_cast.hpp>
-
-
diff --git a/science/orthanc-webviewer/Makefile b/science/orthanc-webviewer/Makefile
index f05e3a9795cb..c88b6e69e403 100644
--- a/science/orthanc-webviewer/Makefile
+++ b/science/orthanc-webviewer/Makefile
@@ -1,43 +1,39 @@
PORTNAME= orthanc-webviewer
-DISTVERSION= 2.9
-PORTREVISION= 2
+DISTVERSION= 2.10
CATEGORIES= science
-MASTER_SITES= https://orthanc.uclouvain.be/downloads/sources/orthanc-webviewer/:main \
- https://orthanc.uclouvain.be/downloads/sources/orthanc/:framework \
- http://orthanc.osimis.io/ThirdPartyDownloads/WebViewer/:thirdpartywebviewer \
- http://orthanc.osimis.io/ThirdPartyDownloads/:thirdparty
-DISTFILES= OrthancWebViewer-${PORTVERSION}.tar.gz:main \
- jsPanel-2.3.3-fixed.zip:thirdpartywebviewer \
- cornerstone-0.11.0.zip:thirdpartywebviewer \
- jquery-ui-1.11.3.zip:thirdpartywebviewer \
- pako-0.2.5.zip:thirdpartywebviewer \
- js-url-1.8.6.zip:thirdpartywebviewer \
- Orthanc-${ORTHANC_FRAMEWORK_VERSION}.tar.gz:framework \
+MASTER_SITES= https://orthanc.uclouvain.be/downloads/sources/orthanc-webviewer/:webviewer \
+ https://orthanc.uclouvain.be/downloads/sources/orthanc/:orthanc \
+ https://orthanc.uclouvain.be/downloads/third-party-downloads/web-viewer/:thirdpartyweb \
+ https://orthanc.uclouvain.be/downloads/third-party-downloads/:thirdparty
+DISTFILES= OrthancWebViewer-${PORTVERSION}.tar.gz:webviewer \
+ jsPanel-2.3.3-fixed.zip:thirdpartyweb \
+ cornerstone-0.11.0.zip:thirdpartyweb \
+ jquery-ui-1.11.3.zip:thirdpartyweb \
+ pako-0.2.5.zip:thirdpartyweb \
+ js-url-1.8.6.zip:thirdpartyweb \
+ Orthanc-${ORTHANC_VER}.tar.gz:orthanc \
e2fsprogs-1.44.5.tar.gz:thirdparty
DIST_SUBDIR= orthanc
EXTRACT_ONLY= OrthancWebViewer-${PORTVERSION}.tar.gz
-MAINTAINER= maintainer.freebsd@xpoundit.com
-COMMENT= Orthanc plugin to extend Orthanc with a Web viewer of medical images
+MAINTAINER= jwb@FreeBSD.org
+COMMENT= Orthanc web viewer plugin
WWW= https://www.orthanc-server.com/static.php?page=web-viewer
LICENSE= AGPLv3
LICENSE_FILE= ${WRKSRC}/COPYING
-BUILD_DEPENDS= ${LOCALBASE}/include/orthanc/OrthancCPlugin.h:science/orthanc
+BUILD_DEPENDS= ${LOCALBASE}/include/orthanc/OrthancCPlugin.h:science/orthanc \
+ googletest>0:devel/googletest
LIB_DEPENDS= libboost_atomic.so:devel/boost-libs \
- libexpat.so:textproc/expat2 \
- libgdcmCommon.so:devel/gdcm \
- libicudata.so:devel/icu \
libjsoncpp.so:devel/jsoncpp \
- libopenjp2.so:graphics/openjpeg \
libsqlite3.so:databases/sqlite3
RUN_DEPENDS= Orthanc:science/orthanc
USES= cmake localbase python:build
-USE_LDCONFIG= yes
+USE_LDCONFIG= ${DATADIR}/plugins
-CMAKE_ARGS= -DORTHANC_FRAMEWORK_ROOT=${WRKSRC}/ThirdPartyDownloads/Orthanc-${ORTHANC_FRAMEWORK_VERSION}/OrthancFramework/Sources \
+CMAKE_ARGS= -DORTHANC_FRAMEWORK_ROOT=${WRKSRC}/ThirdPartyDownloads/Orthanc-${ORTHANC_VER}/OrthancFramework/Sources \
-DORTHANC_FRAMEWORK_SOURCE=path
CMAKE_OFF= USE_SYSTEM_UUID
@@ -48,7 +44,8 @@ WRKSRC= ${WRKDIR}/OrthancWebViewer-${PORTVERSION}
PLIST_SUB= DISTVERSION=${DISTVERSION}
-ORTHANC_FRAMEWORK_VERSION= 1.12.6
+# Build fails with 1.12.8 and 1.12.9
+ORTHANC_VER= 1.12.7
post-extract:
${MKDIR} ${WRKSRC}/ThirdPartyDownloads
@@ -58,8 +55,8 @@ post-extract:
${CP} ${DISTDIR}/${DIST_SUBDIR}/pako-0.2.5.zip ${WRKSRC}/ThirdPartyDownloads
${CP} ${DISTDIR}/${DIST_SUBDIR}/js-url-1.8.6.zip ${WRKSRC}/ThirdPartyDownloads
${CP} ${DISTDIR}/${DIST_SUBDIR}/e2fsprogs-1.44.5.tar.gz ${WRKSRC}/ThirdPartyDownloads
- ${CP} ${DISTDIR}/${DIST_SUBDIR}/Orthanc-${ORTHANC_FRAMEWORK_VERSION}.tar.gz ${WRKSRC}/ThirdPartyDownloads
- ${TAR} -C ${WRKSRC}/ThirdPartyDownloads -xf ${WRKSRC}/ThirdPartyDownloads/Orthanc-${ORTHANC_FRAMEWORK_VERSION}.tar.gz
+ ${CP} ${DISTDIR}/${DIST_SUBDIR}/Orthanc-${ORTHANC_VER}.tar.gz ${WRKSRC}/ThirdPartyDownloads
+ ${TAR} -C ${WRKSRC}/ThirdPartyDownloads -xf ${WRKSRC}/ThirdPartyDownloads/Orthanc-${ORTHANC_VER}.tar.gz
post-build:
@cd ${BUILD_WRKSRC} && ./UnitTests
diff --git a/science/orthanc-webviewer/distinfo b/science/orthanc-webviewer/distinfo
index beff3cb36584..e2e02d554be4 100644
--- a/science/orthanc-webviewer/distinfo
+++ b/science/orthanc-webviewer/distinfo
@@ -1,6 +1,6 @@
-TIMESTAMP = 1739140790
-SHA256 (orthanc/OrthancWebViewer-2.9.tar.gz) = 2f2cee66f908f6c5a6f0ebd69341f42fa94aa6179904ea540adeb21ac69c05fe
-SIZE (orthanc/OrthancWebViewer-2.9.tar.gz) = 132935
+TIMESTAMP = 1761581265
+SHA256 (orthanc/OrthancWebViewer-2.10.tar.gz) = b01df44e17ee4efe4575bc544b4bb0767eb1423dc586b0c3b6457156c7501fa1
+SIZE (orthanc/OrthancWebViewer-2.10.tar.gz) = 135662
SHA256 (orthanc/jsPanel-2.3.3-fixed.zip) = 958a15c7009efbb865da62b5850a3a39661c62696e38b151c7f988f4ac445595
SIZE (orthanc/jsPanel-2.3.3-fixed.zip) = 826542
SHA256 (orthanc/cornerstone-0.11.0.zip) = 1bada9f1f2981968f72daa352e712abea5cac3e0417fe59176f70a23261f1da9
@@ -11,7 +11,7 @@ SHA256 (orthanc/pako-0.2.5.zip) = e493010e1b1af5c149631994365ed31e15722eed2d17cc
SIZE (orthanc/pako-0.2.5.zip) = 704378
SHA256 (orthanc/js-url-1.8.6.zip) = ef2c7f50921ba64ac434eacf025669f1e6f39b5584100ffa8194a3edc08d43d3
SIZE (orthanc/js-url-1.8.6.zip) = 54717
-SHA256 (orthanc/Orthanc-1.12.6.tar.gz) = aa5b6d6309965ed360625b5572e79068e6c501b603163e330629f2f0a56a0fe9
-SIZE (orthanc/Orthanc-1.12.6.tar.gz) = 2089779
+SHA256 (orthanc/Orthanc-1.12.7.tar.gz) = f4349971c9e12f74599ba036c37ce7fe7fe8078b08dddbb83e08cf7b13e53adb
+SIZE (orthanc/Orthanc-1.12.7.tar.gz) = 2097270
SHA256 (orthanc/e2fsprogs-1.44.5.tar.gz) = 2e211fae27ef74d5af4a4e40b10b8df7f87c655933bd171aab4889bfc4e6d1cc
SIZE (orthanc/e2fsprogs-1.44.5.tar.gz) = 7619237
diff --git a/science/orthanc-webviewer/files/patch-CMakeLists.txt b/science/orthanc-webviewer/files/patch-CMakeLists.txt
deleted file mode 100644
index 5ac2ba18ecbc..000000000000
--- a/science/orthanc-webviewer/files/patch-CMakeLists.txt
+++ /dev/null
@@ -1,11 +0,0 @@
---- CMakeLists.txt.orig 2025-02-09 22:38:16 UTC
-+++ CMakeLists.txt
-@@ -28,7 +28,7 @@ else()
- set(ORTHANC_FRAMEWORK_DEFAULT_VERSION "mainline")
- set(ORTHANC_FRAMEWORK_DEFAULT_SOURCE "hg")
- else()
-- set(ORTHANC_FRAMEWORK_DEFAULT_VERSION "1.12.3")
-+ set(ORTHANC_FRAMEWORK_DEFAULT_VERSION "1.12.6")
- set(ORTHANC_FRAMEWORK_DEFAULT_SOURCE "web")
- endif()
-
diff --git a/science/orthanc/Makefile b/science/orthanc/Makefile
index e2760ebdd218..69612bbb386b 100644
--- a/science/orthanc/Makefile
+++ b/science/orthanc/Makefile
@@ -1,35 +1,29 @@
PORTNAME= orthanc
-DISTVERSION= 1.12.6
-PORTREVISION= 4
+DISTVERSION= 1.12.9
CATEGORIES= science
MASTER_SITES= https://orthanc.uclouvain.be/downloads/sources/orthanc/
DISTNAME= Orthanc-${PORTVERSION}
-MAINTAINER= maintainer.freebsd@xpoundit.com
+MAINTAINER= jwb@FreeBSD.org
COMMENT= Lightweight DICOM server for healthcare and medical research
WWW= https://www.orthanc-server.com/
LICENSE= GPLv3
LICENSE_FILE= ${WRKSRC}/COPYING
-BUILD_DEPENDS= protoc:devel/protobuf
-
+BUILD_DEPENDS= protoc:devel/protobuf \
+ googletest>0:devel/googletest
LIB_DEPENDS= libboost_atomic.so:devel/boost-libs \
libcivetweb.so:www/civetweb \
libcurl.so:ftp/curl \
libdcmtkcharls.so:graphics/dcmtk \
- libgtest.so:devel/googletest \
- libicuuc.so:devel/icu \
libjsoncpp.so:devel/jsoncpp \
libpng16.so:graphics/png \
libprotobuf.so:devel/protobuf \
libpugixml.so:textproc/pugixml \
- libtiff.so:graphics/tiff \
libuuid.so:misc/libuuid
USES= cmake gnome iconv jpeg lua python:build sqlite ssl
-USE_GNOME= libxml2
-USE_LDCONFIG= yes
USE_RC_SUBR= orthanc
diff --git a/science/orthanc/distinfo b/science/orthanc/distinfo
index 2498469be620..d57475212b4a 100644
--- a/science/orthanc/distinfo
+++ b/science/orthanc/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1739138261
-SHA256 (Orthanc-1.12.6.tar.gz) = aa5b6d6309965ed360625b5572e79068e6c501b603163e330629f2f0a56a0fe9
-SIZE (Orthanc-1.12.6.tar.gz) = 2089779
+TIMESTAMP = 1761178767
+SHA256 (Orthanc-1.12.9.tar.gz) = 7a7cbc5f3663939fbef31ded021b36fcd52420337911ed43491bb663bcb5a4b2
+SIZE (Orthanc-1.12.9.tar.gz) = 2165182
diff --git a/science/orthanc/files/orthanc.in b/science/orthanc/files/orthanc.in
index 85d6af45d8a1..9cbe3d1cd321 100644
--- a/science/orthanc/files/orthanc.in
+++ b/science/orthanc/files/orthanc.in
@@ -23,13 +23,13 @@ desc="Lightweight DICOM server for healthcare and medical research"
load_rc_config $name
: ${orthanc_enable:=NO}
-: ${orthanc_flags="%%ETCDIR%%/orthanc.json"}
+: ${orthanc_config="%%ETCDIR%%/orthanc.json"}
start_precmd=orthanc_prestart
pidfile=/var/run/orthanc.pid
procname=%%PREFIX%%/sbin/Orthanc
command=/usr/sbin/daemon
-command_args=" -f -p ${pidfile} -u orthanc ${procname} ${orthanc_flags}"
+command_args=" --output-file /var/log/orthanc --sighup --child-pidfile ${pidfile} --user orthanc ${procname} ${orthanc_flags} ${orthanc_config}"
orthanc_prestart()
{
diff --git a/science/orthanc/files/patch-OrthancFramework_Sources_Images_JpegWriter.cpp b/science/orthanc/files/patch-OrthancFramework_Sources_Images_JpegWriter.cpp
deleted file mode 100644
index 59b845085092..000000000000
--- a/science/orthanc/files/patch-OrthancFramework_Sources_Images_JpegWriter.cpp
+++ /dev/null
@@ -1,11 +0,0 @@
---- OrthancFramework/Sources/Images/JpegWriter.cpp.orig 2024-12-17 16:33:40 UTC
-+++ OrthancFramework/Sources/Images/JpegWriter.cpp
-@@ -187,7 +187,7 @@ namespace Orthanc
- **/
- unsigned long size;
- #else
-- size_t size;
-+ unsigned long size;
- #endif
-
- if (setjmp(jerr.GetJumpBuffer()))
diff --git a/science/orthanc/files/patch-OrthancServer_Resources_Configuration.json b/science/orthanc/files/patch-OrthancServer_Resources_Configuration.json
index f6b4af632e2e..212fadfde386 100644
--- a/science/orthanc/files/patch-OrthancServer_Resources_Configuration.json
+++ b/science/orthanc/files/patch-OrthancServer_Resources_Configuration.json
@@ -5,13 +5,13 @@
// raw DICOM instances). Backslashes must be either escaped by
// doubling them, or replaced by forward slashes "/".
- "StorageDirectory" : "OrthancStorage",
-+ "StorageDirectory" : "/var/db/orthanc/db-v5",
++ "StorageDirectory" : "/var/db/orthanc/db/db-v5",
// Path to the directory that holds the SQLite index (if unset, the
// value of StorageDirectory is used). This index could be stored on
// a RAM-drive or a SSD device for performance reasons.
- "IndexDirectory" : "OrthancStorage",
-+ "IndexDirectory" : "/var/db/orthanc/db-v5",
++ "IndexDirectory" : "/var/db/orthanc/db/db-v5",
// Path to the directory where Orthanc stores its large temporary
// files. The content of this folder can be safely deleted once
diff --git a/science/orthanc/files/patch-OrthancServer_Sources_Database_PrepareDatabase.sql b/science/orthanc/files/patch-OrthancServer_Sources_Database_PrepareDatabase.sql
new file mode 100644
index 000000000000..ffe19920c2b0
--- /dev/null
+++ b/science/orthanc/files/patch-OrthancServer_Sources_Database_PrepareDatabase.sql
@@ -0,0 +1,13 @@
+--- OrthancServer/Sources/Database/PrepareDatabase.sql.orig 2025-08-11 16:02:50 UTC
++++ OrthancServer/Sources/Database/PrepareDatabase.sql
+@@ -160,4 +160,9 @@ -- The "1" corresponds to the "GlobalProperty_Database
+
+ -- Set the version of the database schema
+ -- The "1" corresponds to the "GlobalProperty_DatabaseSchemaVersion" enumeration
+-INSERT INTO GlobalProperties VALUES (1, "6");
++-- Upstream code has (1, "6"), which causes startup to fail on FreeBSD
++-- E1023 08:43:05.328003 MAIN Connection.cpp:169] SQLite execute error: no such column: "6" - should this be a string literal in single-quotes? (1)
++-- Apparently due to sqlite 3.41+ being stricter about string literals
++-- Debian packages currently uses 3.34
++-- https://orthanc.uclouvain.be/bugs/show_bug.cgi?id=227
++INSERT INTO GlobalProperties VALUES (1, 6);
diff --git a/science/py-h5py/Makefile b/science/py-h5py/Makefile
index bd765b3986bd..64ce1e01a6f5 100644
--- a/science/py-h5py/Makefile
+++ b/science/py-h5py/Makefile
@@ -1,5 +1,5 @@
PORTNAME= h5py
-PORTVERSION= 3.13.0
+PORTVERSION= 3.15.1
CATEGORIES= science python
MASTER_SITES= PYPI
PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}
@@ -12,17 +12,17 @@ WWW= https://www.h5py.org/ \
LICENSE= BSD3CLAUSE
LICENSE_FILE= ${WRKSRC}/licenses/license.txt
-BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}numpy>=0,1:math/py-numpy@${PY_FLAVOR} \
- ${PYTHON_PKGNAMEPREFIX}pkgconfig>=0,1:devel/py-pkgconfig@${PY_FLAVOR} \
+BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}numpy>=1.25.0,1<3,1:math/py-numpy@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}pkgconfig>=1.5.5,1:devel/py-pkgconfig@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}setuptools>=61:devel/py-setuptools@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}wheel>=0:devel/py-wheel@${PY_FLAVOR}
LIB_DEPENDS= libhdf5.so:science/hdf5
-RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}numpy>=1.19.3,1:math/py-numpy@${PY_FLAVOR}
-TEST_DEPENDS= ${PYTHON_PKGNAMEPREFIX}mpi4py>=3.1.1:net/py-mpi4py@${PY_FLAVOR} \
+RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}numpy>=1.21.2,1:math/py-numpy@${PY_FLAVOR}
+TEST_DEPENDS= ${PYTHON_PKGNAMEPREFIX}mpi4py>=3.1.2:net/py-mpi4py@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}tables>=3.4.4:devel/py-tables@${PY_FLAVOR}
-USES= localbase pkgconfig python:3.9+
-USE_PYTHON= autoplist concurrent cython pep517 pytest
+USES= localbase pkgconfig python
+USE_PYTHON= autoplist concurrent cython3 pep517 pytest
TEST_ENV= PYTHONPATH=${STAGEDIR}${PYTHON_SITELIBDIR}
TEST_WRKSRC= ${STAGEDIR}${PYTHON_SITELIBDIR}
diff --git a/science/py-h5py/distinfo b/science/py-h5py/distinfo
index 5f1c739655f7..2a710069543b 100644
--- a/science/py-h5py/distinfo
+++ b/science/py-h5py/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1739962484
-SHA256 (h5py-3.13.0.tar.gz) = 1870e46518720023da85d0895a1960ff2ce398c5671eac3b1a41ec696b7105c3
-SIZE (h5py-3.13.0.tar.gz) = 414876
+TIMESTAMP = 1761446742
+SHA256 (h5py-3.15.1.tar.gz) = c86e3ed45c4473564de55aa83b6fc9e5ead86578773dfbd93047380042e26b69
+SIZE (h5py-3.15.1.tar.gz) = 426236
diff --git a/science/py-h5py/files/patch-pyproject.toml b/science/py-h5py/files/patch-pyproject.toml
index 3651460fab6a..5ab8a3db7945 100644
--- a/science/py-h5py/files/patch-pyproject.toml
+++ b/science/py-h5py/files/patch-pyproject.toml
@@ -1,11 +1,21 @@
---- pyproject.toml.orig 2024-08-21 14:35:26 UTC
+--- pyproject.toml.orig 2025-10-13 12:03:55 UTC
+++ pyproject.toml
-@@ -1,7 +1,7 @@ requires = [
- [build-system]
- requires = [
- "Cython >=0.29.31,<4",
-- "numpy >=2.0.0, <3",
-+ "numpy",
- "pkgconfig",
- "setuptools >=61",
+@@ -5,7 +5,7 @@ requires = [
+ "Cython >=3.0.0, <4",
+ "numpy >=1.25.0, <3",
+ "pkgconfig >=1.5.5",
+- "setuptools >=77.0.1",
++ "setuptools >=61",
]
+ # use an in-tree build backend, extending setuptools.build_meta
+ build-backend = "backend"
+@@ -22,8 +22,7 @@ maintainers = [
+ {name = "Thomas Kluyver", email = "thomas@kluyver.me.uk"},
+ {name = "Thomas A Caswell", email = "tcaswell@bnl.gov"},
+ ]
+-license = "BSD-3-Clause"
+-license-files = ["LICENSE", "lzf/LICENSE.txt", "licenses/*"]
++license = {text = "BSD-3-Clause"}
+ classifiers = [
+ "Development Status :: 5 - Production/Stable",
+ "Intended Audience :: Developers",
diff --git a/science/py-h5py/pkg-plist b/science/py-h5py/pkg-plist
index bd294d4fe60b..515203f360eb 100644
--- a/science/py-h5py/pkg-plist
+++ b/science/py-h5py/pkg-plist
@@ -22,6 +22,7 @@
%%PORTDOCS%%%%DOCSDIR%%/special.rst
%%PORTDOCS%%%%DOCSDIR%%/strings.rst
%%PORTDOCS%%%%DOCSDIR%%/swmr.rst
+%%PORTDOCS%%%%DOCSDIR%%/threads.rst
%%PORTDOCS%%%%DOCSDIR%%/vds.rst
%%PORTDOCS%%%%DOCSDIR%%/whatsnew/2.0.rst
%%PORTDOCS%%%%DOCSDIR%%/whatsnew/2.1.rst
@@ -41,6 +42,8 @@
%%PORTDOCS%%%%DOCSDIR%%/whatsnew/3.11.rst
%%PORTDOCS%%%%DOCSDIR%%/whatsnew/3.12.rst
%%PORTDOCS%%%%DOCSDIR%%/whatsnew/3.13.rst
+%%PORTDOCS%%%%DOCSDIR%%/whatsnew/3.14.rst
+%%PORTDOCS%%%%DOCSDIR%%/whatsnew/3.15.rst
%%PORTDOCS%%%%DOCSDIR%%/whatsnew/3.2.rst
%%PORTDOCS%%%%DOCSDIR%%/whatsnew/3.3.rst
%%PORTDOCS%%%%DOCSDIR%%/whatsnew/3.4.rst