Package: release.debian.org
Severity: normal
X-Debbugs-Cc: pack...@packages.debian.org
Control: affects -1 + src:packmol
User: release.debian....@packages.debian.org
Usertags: unblock

Please unblock package packmol

[ Reason ]

Upstream made a minor release shortly before hard freeze.
It would be good for users to include it in trixie.

[ Impact ]

Makes one small bug fix:
- fix type output of iftype molecule in error message by @lmiq in #96

If not allowed in trixie, users will not have this fix.

[ Tests ]
packmol is tested at build time but does not have CI tests,
which is why this unblock request is needed.

[ Risks ]
packmol is a leaf package with no dependent packages.
Risk from the update is negligible.

[ Checklist ]
  [. ] all changes are documented in the d/changelog
  Identified as new upstream release.
  [x ] I reviewed all changes and I approve them
  [x ] attach debdiff against the package in testing

unblock packmol/1:21.0.2-1
diff -Nru packmol-21.0.1/app/packmol.f90 packmol-21.0.2/app/packmol.f90
--- packmol-21.0.1/app/packmol.f90      2025-03-31 19:21:30.000000000 +0200
+++ packmol-21.0.2/app/packmol.f90      2025-05-05 22:26:13.000000000 +0200
@@ -64,7 +64,7 @@
   double precision :: fimp, fimprov
   double precision, parameter :: pi=4.d0*datan(1.d0)
 
-  real :: etime, tarray(2), time0
+  real :: etime, tarray(2), time0, time_writeout
   
   character(len=strl) :: record, restart_from_temp, restart_to_temp
   character(len=strl) :: xyzfile
@@ -92,6 +92,7 @@
   ! Start time computation
 
   time0 = etime(tarray)
+  time_writeout = time0
 
   ! Reading input file
 
@@ -806,7 +807,7 @@
         loop = loop + 1
 
         ! Moving bad molecules
-        if(radscale == 1.d0 .and. fimp.le.10.d0) then
+        if(.not. disable_movebad .and. radscale == 1.d0 .and. fimp.le.10.d0) 
then
           movebadprint = .true.
           call movebad(n,x,fx,movebadprint)
           flast = fx
@@ -900,20 +901,22 @@
         write(*,dash3_line)
 
         ! If this is the best structure so far
-        if( mod(loop+1,writeout) == 0 .and. all_type_fx < fprint ) then
-          call output(n,x,xyzout)
-          write(*,*) ' Current solution written to file: ', 
trim(adjustl(xyzout))
-          if ( crd ) write(*,*) ' ... and to CRD file: ', 
trim(adjustl(crdfile))
-          fprint = all_type_fx
-          do i = 1, n
-            xprint(i) = x(i)
-          end do
-
-        ! If the user required printing even bad structures
-        else if ( mod(loop+1,writeout) == 0 .and. writebad ) then
-          call output(n,x,xyzout)
-          write(*,*) ' Writing current (perhaps bad) structure to file: ', 
trim(adjustl(xyzout))
-          if ( crd ) write(*,*) ' ... and to CRD file: ', 
trim(adjustl(crdfile))
+        if(etime(tarray) - time_writeout > writeout) then
+          time_writeout = etime(tarray)
+          if(all_type_fx < fprint ) then
+            call output(n,x,xyzout)
+            write(*,*) ' Current solution written to file: ', 
trim(adjustl(xyzout))
+            if ( crd ) write(*,*) ' ... and to CRD file: ', 
trim(adjustl(crdfile))
+            fprint = all_type_fx
+            do i = 1, n
+              xprint(i) = x(i)
+            end do
+          ! If the user required printing even bad structures
+          else if (writebad) then
+            call output(n,x,xyzout)
+            write(*,*) ' Writing current (perhaps bad) structure to file: ', 
trim(adjustl(xyzout))
+            if ( crd ) write(*,*) ' ... and to CRD file: ', 
trim(adjustl(crdfile))
+          end if
         end if
 
         ! Restore vector for packing this type of molecule, if the case
diff -Nru packmol-21.0.1/debian/changelog packmol-21.0.2/debian/changelog
--- packmol-21.0.1/debian/changelog     2025-04-04 12:15:40.000000000 +0200
+++ packmol-21.0.2/debian/changelog     2025-05-08 22:45:59.000000000 +0200
@@ -1,3 +1,9 @@
+packmol (1:21.0.2-1) unstable; urgency=medium
+
+  * New upstream release
+
+ -- Drew Parsons <dpars...@debian.org>  Thu, 08 May 2025 22:45:59 +0200
+
 packmol (1:21.0.1-1) unstable; urgency=medium
 
   * New upstream release
diff -Nru packmol-21.0.1/fpm.toml packmol-21.0.2/fpm.toml
--- packmol-21.0.1/fpm.toml     2025-03-31 19:21:30.000000000 +0200
+++ packmol-21.0.2/fpm.toml     2025-05-05 22:26:13.000000000 +0200
@@ -1,5 +1,5 @@
 name = "packmol"
-version = "21.0.1"
+version = "21.0.2"
 license = "MIT"
 author = "Leandro Martinez, Ernesto Birgin, Jose Mario Martinez"
 maintainer = "Leandro Martinez"
diff -Nru packmol-21.0.1/.github/workflows/actions.yml 
packmol-21.0.2/.github/workflows/actions.yml
--- packmol-21.0.1/.github/workflows/actions.yml        2025-03-31 
19:21:30.000000000 +0200
+++ packmol-21.0.2/.github/workflows/actions.yml        2025-05-05 
22:26:13.000000000 +0200
@@ -18,7 +18,7 @@
 
     steps:
     - uses: actions/checkout@v3
-    - uses: awvwgk/setup-fortran@main
+    - uses: fortran-lang/setup-fortran@main
       id: setup-fortran
       with:
         compiler: gcc
diff -Nru packmol-21.0.1/src/getinp.f90 packmol-21.0.2/src/getinp.f90
--- packmol-21.0.1/src/getinp.f90       2025-03-31 19:21:30.000000000 +0200
+++ packmol-21.0.2/src/getinp.f90       2025-05-05 22:26:13.000000000 +0200
@@ -43,6 +43,7 @@
    nloop0 = 0
    movefrac = 0.05
    movebadrandom = .false.
+   disable_movebad = .false.
    precision = 1.d-2
    writebad = .false.
    add_amber_ter = .false.
@@ -85,6 +86,9 @@
       else if(keyword(i,1).eq.'movebadrandom') then
          movebadrandom = .true.
          write(*,*) ' Will move randomly bad molecues (movebadrandom) '
+      else if(keyword(i,1).eq.'disable_movebad') then
+         disable_movebad = .true.
+         write(*,*) ' Move-bad heursitic is dsabled. '
       else if(keyword(i,1).eq.'chkgrad') then
          chkgrad = .true.
       else if(keyword(i,1).eq.'writeout') then
@@ -220,7 +224,6 @@
          keyword(i,1) /= 'chain' .and. &
          keyword(i,1) /= 'discale' .and. &
          keyword(i,1) /= 'maxit' .and. &
-         keyword(i,1) /= 'movebadrandom' .and. &
          keyword(i,1) /= 'maxmove' .and. &
          keyword(i,1) /= 'add_amber_ter' .and. &
          keyword(i,1) /= 'amber_ter_preserve' .and. &
diff -Nru packmol-21.0.1/src/initial.f90 packmol-21.0.2/src/initial.f90
--- packmol-21.0.1/src/initial.f90      2025-03-31 19:21:30.000000000 +0200
+++ packmol-21.0.2/src/initial.f90      2025-05-05 22:26:13.000000000 +0200
@@ -153,7 +153,7 @@
                do i = 1, 3
                   if (xcart(icart, i) < pbc_min(i) .or. xcart(icart, i) > 
pbc_max(i)) then
                      write(*,*) "ERROR: Fixed molecule are outside the PBC 
box:"
-                     write(*,*) "   Atom: ", ifatom, " of molecule: ", iftype, 
" - coordinate: ", i
+                     write(*,*) "   Atom: ", ifatom, " of molecule: ", 
input_itype(iftype), " - coordinate: ", i
                      write(*,*) "  ", xcart(icart, i), " not in [", 
pbc_min(i), ", ", pbc_max(i), "]"
                      write(*,*) "(after translating/rotation the fixed 
molecule with the given orientation)"
                      stop exit_code_input_error
diff -Nru packmol-21.0.1/src/input.f90 packmol-21.0.2/src/input.f90
--- packmol-21.0.1/src/input.f90        2025-03-31 19:21:30.000000000 +0200
+++ packmol-21.0.2/src/input.f90        2025-05-05 22:26:13.000000000 +0200
@@ -59,6 +59,7 @@
    logical :: packall
    logical :: use_short_tol
    logical :: hexadecimal_indices
+   logical :: disable_movebad
 
    logical, allocatable :: changechains(:) ! (ntype)
    logical, allocatable :: fixedoninput(:) ! (ntype)
diff -Nru packmol-21.0.1/src/title.f90 packmol-21.0.2/src/title.f90
--- packmol-21.0.1/src/title.f90        2025-03-31 19:21:30.000000000 +0200
+++ packmol-21.0.2/src/title.f90        2025-05-05 22:26:13.000000000 +0200
@@ -13,7 +13,7 @@
     write(*,"(' PACKMOL - Packing optimization for the automated generation 
of', /&
              &' starting configurations for molecular dynamics simulations.', 
/&
              &' ',/&
-             &t61,' Version 21.0.1 ')")
+             &t61,' Version 21.0.2 ')")
     write(*,hash3_line)
 
 end subroutine title

Reply via email to