Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package orthanc-python for openSUSE:Factory 
checked in at 2021-09-02 23:20:27
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/orthanc-python (Old)
 and      /work/SRC/openSUSE:Factory/.orthanc-python.new.1899 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "orthanc-python"

Thu Sep  2 23:20:27 2021 rev:5 rq:915797 version:3.4

Changes:
--------
--- /work/SRC/openSUSE:Factory/orthanc-python/orthanc-python.changes    
2021-08-16 10:17:57.450625859 +0200
+++ /work/SRC/openSUSE:Factory/.orthanc-python.new.1899/orthanc-python.changes  
2021-09-02 23:20:51.420594040 +0200
@@ -1,0 +2,7 @@
+Wed Sep  1 07:49:14 UTC 2021 - Axel Braun <axel.br...@gmx.de>
+
+- Version 3.4 
+* On Orthanc stopping, wait for all the queued events to have been processed
+* Docker-based builder scripts distinguishing Debian buster and bullseye
+
+-------------------------------------------------------------------

Old:
----
  OrthancPython-3.3.tar.gz

New:
----
  OrthancPython-3.4.tar.gz

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ orthanc-python.spec ++++++
--- /var/tmp/diff_new_pack.Z99hjz/_old  2021-09-02 23:20:51.936594684 +0200
+++ /var/tmp/diff_new_pack.Z99hjz/_new  2021-09-02 23:20:51.940594688 +0200
@@ -1,7 +1,7 @@
 #
 # spec file for package orthanc-python
 #
-# Copyright (c) 2020 SUSE LLC
+# Copyright (c) 2021 SUSE LLC
 # Copyright (c) 2020-2021 Dr. Axel Braun
 #
 # All modifications and additions to the file contributed by third parties
@@ -16,16 +16,16 @@
 # Please submit bugfixes or comments via https://bugs.opensuse.org/
 #
 
+
 Name:           orthanc-python
 Summary:        Python plugin for Orthanc
 License:        AGPL-3.0-or-later
 Group:          Productivity/Graphics/Viewers
-Version:        3.3
+Version:        3.4
 Release:        0
 URL:            https://orthanc-server.com
 Source0:        
https://www.orthanc-server.com/downloads/get.php?path=/plugin-python/OrthancPython-%{version}.tar.gz
 Source11:       orthanc-python-readme.openSUSE
-BuildRequires:  python3-devel
 BuildRequires:  cmake
 BuildRequires:  gcc-c++
 BuildRequires:  jsoncpp-devel
@@ -40,8 +40,9 @@
 BuildRequires:  libuuid-devel
 BuildRequires:  orthanc-devel
 BuildRequires:  orthanc-source
-BuildRequires:  pkgconfig(python3)
+BuildRequires:  python3-devel
 BuildRequires:  unzip
+BuildRequires:  pkgconfig(python3)
 
 Requires:       orthanc
 
@@ -51,7 +52,6 @@
 This plugin can be used to write Orthanc plugins in Python instead of C++
 See /usr/share/doc/packages/orthanc/orthanc-python-readme.openSUSE
 
-
 %prep
 %setup -q -n OrthancPython-%{version}
 

++++++ OrthancPython-3.3.tar.gz -> OrthancPython-3.4.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/OrthancPython-3.3/.hg_archival.txt 
new/OrthancPython-3.4/.hg_archival.txt
--- old/OrthancPython-3.3/.hg_archival.txt      2021-08-12 18:36:43.000000000 
+0200
+++ new/OrthancPython-3.4/.hg_archival.txt      2021-08-31 14:08:43.000000000 
+0200
@@ -1,6 +1,6 @@
 repo: 7ed502b17b8f54de8885d96a413c9679f694ad4b
-node: 347af6f3d63a03d92f1666b082b7296c8f234444
-branch: OrthancPython-3.3
+node: 28f354fd36fa7c107419d5663e24d44418f7cefb
+branch: OrthancPython-3.4
 latesttag: null
-latesttagdistance: 78
-changessincelatesttag: 82
+latesttagdistance: 85
+changessincelatesttag: 89
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/OrthancPython-3.3/CMakeLists.txt 
new/OrthancPython-3.4/CMakeLists.txt
--- old/OrthancPython-3.3/CMakeLists.txt        2021-08-12 18:36:43.000000000 
+0200
+++ new/OrthancPython-3.4/CMakeLists.txt        2021-08-31 14:08:43.000000000 
+0200
@@ -1,13 +1,13 @@
 cmake_minimum_required(VERSION 2.8)
 project(OrthancPython)
 
-set(PLUGIN_VERSION "3.3")
+set(PLUGIN_VERSION "3.4")
 
 if (PLUGIN_VERSION STREQUAL "mainline")
   set(ORTHANC_FRAMEWORK_DEFAULT_VERSION "mainline")
   set(ORTHANC_FRAMEWORK_DEFAULT_SOURCE "hg")
 else()
-  set(ORTHANC_FRAMEWORK_DEFAULT_VERSION "1.9.6")
+  set(ORTHANC_FRAMEWORK_DEFAULT_VERSION "1.9.7")
   set(ORTHANC_FRAMEWORK_DEFAULT_SOURCE "web")
 endif()
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/OrthancPython-3.3/NEWS new/OrthancPython-3.4/NEWS
--- old/OrthancPython-3.3/NEWS  2021-08-12 18:36:43.000000000 +0200
+++ new/OrthancPython-3.4/NEWS  2021-08-31 14:08:43.000000000 +0200
@@ -2,6 +2,13 @@
 ===============================
 
 
+Version 3.4 (2021-08-31)
+========================
+
+* On Orthanc stopping, wait for all the queued events to have been processed
+* Docker-based builder scripts distinguishing Debian buster and bullseye
+
+
 Version 3.3 (2021-08-12)
 ========================
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/OrthancPython-3.3/Resources/Builders/Debian/docker-bullseye-compile.sh 
new/OrthancPython-3.4/Resources/Builders/Debian/docker-bullseye-compile.sh
--- old/OrthancPython-3.3/Resources/Builders/Debian/docker-bullseye-compile.sh  
1970-01-01 01:00:00.000000000 +0100
+++ new/OrthancPython-3.4/Resources/Builders/Debian/docker-bullseye-compile.sh  
2021-08-31 14:08:43.000000000 +0200
@@ -0,0 +1,27 @@
+#!/bin/bash
+
+set -ex
+
+if [ "$1" != "Debug" -a "$1" != "Release" ]; then
+    echo "Please provide build type: Debug or Release"
+    exit -1
+fi
+
+if [ -t 1 ]; then
+    # TTY is available => use interactive mode
+    DOCKER_FLAGS='-i'
+fi
+
+ROOT_DIR=`dirname $(readlink -f $0)`/../../..
+
+mkdir -p ${ROOT_DIR}/docker-build-bullseye/
+
+docker pull debian:bullseye-slim
+
+docker run -t ${DOCKER_FLAGS} --rm \
+    -v ${ROOT_DIR}:/source:ro \
+    -v ${ROOT_DIR}/docker-build-bullseye:/target:rw \
+    debian:bullseye-slim \
+    bash /source/Resources/Builders/Debian/docker-internal.sh $1 3.9 $(id -u) 
$(id -g)
+
+ls -lR ${ROOT_DIR}/docker-build-bullseye/
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/OrthancPython-3.3/Resources/Builders/Debian/docker-buster-compile.sh 
new/OrthancPython-3.4/Resources/Builders/Debian/docker-buster-compile.sh
--- old/OrthancPython-3.3/Resources/Builders/Debian/docker-buster-compile.sh    
1970-01-01 01:00:00.000000000 +0100
+++ new/OrthancPython-3.4/Resources/Builders/Debian/docker-buster-compile.sh    
2021-08-31 14:08:43.000000000 +0200
@@ -0,0 +1,27 @@
+#!/bin/bash
+
+set -ex
+
+if [ "$1" != "Debug" -a "$1" != "Release" ]; then
+    echo "Please provide build type: Debug or Release"
+    exit -1
+fi
+
+if [ -t 1 ]; then
+    # TTY is available => use interactive mode
+    DOCKER_FLAGS='-i'
+fi
+
+ROOT_DIR=`dirname $(readlink -f $0)`/../../..
+
+mkdir -p ${ROOT_DIR}/docker-build-buster/
+
+docker pull debian:buster-slim
+
+docker run -t ${DOCKER_FLAGS} --rm \
+    -v ${ROOT_DIR}:/source:ro \
+    -v ${ROOT_DIR}/docker-build-buster:/target:rw \
+    debian:buster-slim \
+    bash /source/Resources/Builders/Debian/docker-internal.sh $1 3.7 $(id -u) 
$(id -g)
+
+ls -lR ${ROOT_DIR}/docker-build-buster/
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/OrthancPython-3.3/Resources/Builders/Debian/docker-internal.sh 
new/OrthancPython-3.4/Resources/Builders/Debian/docker-internal.sh
--- old/OrthancPython-3.3/Resources/Builders/Debian/docker-internal.sh  
1970-01-01 01:00:00.000000000 +0100
+++ new/OrthancPython-3.4/Resources/Builders/Debian/docker-internal.sh  
2021-08-31 14:08:43.000000000 +0200
@@ -0,0 +1,56 @@
+#!/bin/bash
+set -ex
+
+BUILD_TYPE=$1
+PYTHON_VERSION=$2
+USER_ID=$3
+GROUP_ID=$4
+
+# Create the same user and group than the one who is running the
+# "./docker-{distro}-compile.sh" script on the hosting system (*)
+groupadd -g ${GROUP_ID} -r orthanc
+useradd -u ${USER_ID} -r -g orthanc orthanc
+
+apt-get update
+DEBIAN_FRONTEND=noninteractive apt-get -y install nano build-essential unzip 
cmake pkg-config python libpython3-dev curl
+apt-get -y clean
+rm -rf /var/lib/apt/lists/*
+
+
+# On Bullseye, we get "stat: cannot statx
+# '/usr/share/mercurial/hgext.rc': Operation not permitted" if
+# installing the "mercurial" package using apt-get. As a consequence,
+# we manually install Mercurial from sources.
+MERCURIAL=mercurial-5.4.1
+cd /tmp
+curl https://www.mercurial-scm.org/release/${MERCURIAL}.tar.gz > 
${MERCURIAL}.tar.gz
+tar xvf ${MERCURIAL}.tar.gz
+export PATH=${PATH}:/tmp/${MERCURIAL}/
+
+
+mkdir /tmp/source-writeable
+
+cp -r /source/CMakeLists.txt /tmp/source-writeable/
+cp -r /source/Sources /tmp/source-writeable/
+cp -r /source/Resources /tmp/source-writeable/
+
+mkdir /tmp/build
+cd /tmp/build
+
+cmake /tmp/source-writeable/ \
+      -DCMAKE_BUILD_TYPE=${BUILD_TYPE} \
+      -DPYTHON_VERSION=${PYTHON_VERSION} \
+      -DSTATIC_BUILD=ON \
+      -DCMAKE_INSTALL_PREFIX=/target 
+
+make -j`nproc`
+
+if [ "$1" == "Release" ]; then
+    strip ./libOrthancPython.so
+fi
+
+# Copy the installation to the host filesystem, using the
+# newly-created user "orthanc" (*) that corresponds to the user who is
+# running "./debian-{distro}-compile.sh" script. This allows to avoid
+# files owned by the "root" user on the host filesystem.
+su -c "cp /tmp/build/libOrthancPython.so /target" orthanc
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/OrthancPython-3.3/Resources/Builders/DebianStable/Dockerfile-BuildEnvironment
 
new/OrthancPython-3.4/Resources/Builders/DebianStable/Dockerfile-BuildEnvironment
--- 
old/OrthancPython-3.3/Resources/Builders/DebianStable/Dockerfile-BuildEnvironment
   2021-08-12 18:36:43.000000000 +0200
+++ 
new/OrthancPython-3.4/Resources/Builders/DebianStable/Dockerfile-BuildEnvironment
   1970-01-01 01:00:00.000000000 +0100
@@ -1,9 +0,0 @@
-FROM debian:stable-slim
-
-MAINTAINER Sebastien Jodogne <s.jodo...@gmail.com>
-LABEL Description="Orthanc, free DICOM server" Vendor="The Orthanc project"
-
-RUN apt-get -y clean && apt-get -y update && \
-    DEBIAN_FRONTEND=noninteractive apt-get -y install \
-    nano build-essential unzip cmake pkg-config libpython3.7-dev mercurial && \
-    apt-get clean && rm -rf /var/lib/apt/lists/*
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/OrthancPython-3.3/Resources/Builders/DebianStable/Dockerfile-Release 
new/OrthancPython-3.4/Resources/Builders/DebianStable/Dockerfile-Release
--- old/OrthancPython-3.3/Resources/Builders/DebianStable/Dockerfile-Release    
2021-08-12 18:36:43.000000000 +0200
+++ new/OrthancPython-3.4/Resources/Builders/DebianStable/Dockerfile-Release    
1970-01-01 01:00:00.000000000 +0100
@@ -1,11 +0,0 @@
-FROM jodogne/orthanc-plugins:1.6.0
-
-MAINTAINER Sebastien Jodogne <s.jodo...@gmail.com>
-LABEL Description="Orthanc, free DICOM server" Vendor="The Orthanc project"
-
-RUN apt-get -y clean && apt-get -y update
-RUN DEBIAN_FRONTEND=noninteractive apt-get -y install python3.7 libpython3.7 
&& \
-    apt-get clean && rm -rf /var/lib/apt/lists/*
-
-ADD ./docker-build/share/orthanc/plugins/libOrthancPython.so \
-    /usr/local/share/orthanc/plugins/libOrthancPython.so
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/OrthancPython-3.3/Resources/Builders/DebianStable/NOTES.txt 
new/OrthancPython-3.4/Resources/Builders/DebianStable/NOTES.txt
--- old/OrthancPython-3.3/Resources/Builders/DebianStable/NOTES.txt     
2021-08-12 18:36:43.000000000 +0200
+++ new/OrthancPython-3.4/Resources/Builders/DebianStable/NOTES.txt     
1970-01-01 01:00:00.000000000 +0100
@@ -1,12 +0,0 @@
-
-
-Create the Docker image:
-
-$ ./docker-compile.sh Release
-$ docker build -f Dockerfile-Release -t python-plugin ../../..
-
-
-Run the just-created Docker image:
-
-$ docker run -p 4242:4242 -p 8042:8042 --rm python-plugin
-
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/OrthancPython-3.3/Resources/Builders/DebianStable/docker-compile.sh 
new/OrthancPython-3.4/Resources/Builders/DebianStable/docker-compile.sh
--- old/OrthancPython-3.3/Resources/Builders/DebianStable/docker-compile.sh     
2021-08-12 18:36:43.000000000 +0200
+++ new/OrthancPython-3.4/Resources/Builders/DebianStable/docker-compile.sh     
1970-01-01 01:00:00.000000000 +0100
@@ -1,30 +0,0 @@
-#!/bin/bash
-
-set -ex
-
-if [ "$1" != "Debug" -a "$1" != "Release" ]; then
-    echo "Please provide build type: Debug or Release"
-    exit -1
-fi
-
-if [ -t 1 ]; then
-    # TTY is available => use interactive mode
-    DOCKER_FLAGS='-i'
-fi
-
-ROOT_DIR=`dirname $(readlink -f $0)`/../../..
-
-mkdir -p ${ROOT_DIR}/docker-build/
-
-docker build \
-       -f 
${ROOT_DIR}/Resources/Builders/DebianStable/Dockerfile-BuildEnvironment \
-       -t debian-stable-python-build .
-
-docker run -t ${DOCKER_FLAGS} --rm \
-    --user $(id -u):$(id -g) \
-    -v ${ROOT_DIR}:/source:ro \
-    -v ${ROOT_DIR}/docker-build:/target:rw \
-    debian-stable-python-build \
-    bash /source/Resources/Builders/DebianStable/docker-internal.sh $1
-
-ls -lR ${ROOT_DIR}/docker-build/
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/OrthancPython-3.3/Resources/Builders/DebianStable/docker-internal.sh 
new/OrthancPython-3.4/Resources/Builders/DebianStable/docker-internal.sh
--- old/OrthancPython-3.3/Resources/Builders/DebianStable/docker-internal.sh    
2021-08-12 18:36:43.000000000 +0200
+++ new/OrthancPython-3.4/Resources/Builders/DebianStable/docker-internal.sh    
1970-01-01 01:00:00.000000000 +0100
@@ -1,25 +0,0 @@
-#!/bin/bash
-set -ex
-
-mkdir /tmp/source-writeable
-
-cp -r /source/CMakeLists.txt /tmp/source-writeable/
-cp -r /source/Sources /tmp/source-writeable/
-cp -r /source/Resources /tmp/source-writeable/
-
-mkdir /tmp/build
-cd /tmp/build
-
-cmake /tmp/source-writeable/ \
-      -DCMAKE_BUILD_TYPE=$1 \
-      -DPYTHON_VERSION=3.7 \
-      -DSTATIC_BUILD=ON \
-      -DCMAKE_INSTALL_PREFIX=/target 
-
-make -j`nproc`
-
-if [ "$1" == "Release" ]; then
-    strip ./libOrthancPython.so
-fi
-
-make install
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/OrthancPython-3.3/Resources/Orthanc/CMake/DownloadOrthancFramework.cmake 
new/OrthancPython-3.4/Resources/Orthanc/CMake/DownloadOrthancFramework.cmake
--- 
old/OrthancPython-3.3/Resources/Orthanc/CMake/DownloadOrthancFramework.cmake    
    2021-08-12 18:36:43.000000000 +0200
+++ 
new/OrthancPython-3.4/Resources/Orthanc/CMake/DownloadOrthancFramework.cmake    
    2021-08-31 14:08:43.000000000 +0200
@@ -136,6 +136,8 @@
         set(ORTHANC_FRAMEWORK_MD5 "10fc64de1254a095e5d3ed3931f0cfbb")
       elseif (ORTHANC_FRAMEWORK_VERSION STREQUAL "1.9.6")
         set(ORTHANC_FRAMEWORK_MD5 "4b5d05683d747c29b2860ad79d11e62e")
+      elseif (ORTHANC_FRAMEWORK_VERSION STREQUAL "1.9.7")
+        set(ORTHANC_FRAMEWORK_MD5 "c912bbb860d640d3ae3003b5c9698205")
 
       # Below this point are development snapshots that were used to
       # release some plugin, before an official release of the Orthanc
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/OrthancPython-3.3/Sources/OnChangeCallback.cpp 
new/OrthancPython-3.4/Sources/OnChangeCallback.cpp
--- old/OrthancPython-3.3/Sources/OnChangeCallback.cpp  2021-08-12 
18:36:43.000000000 +0200
+++ new/OrthancPython-3.4/Sources/OnChangeCallback.cpp  2021-08-31 
14:08:43.000000000 +0200
@@ -80,6 +80,7 @@
   boost::mutex               mutex_;
   Queue                      queue_;
   boost::condition_variable  elementAvailable_;
+  boost::condition_variable  emptied_;
 
 public:
   ~PendingChanges()
@@ -123,8 +124,23 @@
     std::unique_ptr<PendingChange> change(queue_.front());
     queue_.pop_front();
 
+    if (queue_.empty())
+    {
+      emptied_.notify_all();
+    }
+
     return change.release();
   }
+
+  void WaitEmpty()
+  {
+    boost::mutex::scoped_lock lock(mutex_);
+
+    while (!queue_.empty())
+    {
+      emptied_.wait(lock);
+    }
+  }
 };
 
 
@@ -198,6 +214,10 @@
 
   if (changeType == OrthancPluginChangeType_OrthancStopped)
   {
+    // If stopping, make sure to have processed all the events that
+    // are pending in the queue before returning (new in 3.4)
+    pendingChanges_.WaitEmpty();
+
     StopThread();
   }
   

Reply via email to