Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package armadillo for openSUSE:Factory 
checked in at 2021-03-05 13:48:47
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/armadillo (Old)
 and      /work/SRC/openSUSE:Factory/.armadillo.new.2378 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "armadillo"

Fri Mar  5 13:48:47 2021 rev:144 rq:876916 version:10.2.2

Changes:
--------
--- /work/SRC/openSUSE:Factory/armadillo/armadillo.changes      2021-02-16 
22:50:44.862686667 +0100
+++ /work/SRC/openSUSE:Factory/.armadillo.new.2378/armadillo.changes    
2021-03-05 13:51:05.411941706 +0100
@@ -1,0 +2,5 @@
+Thu Mar  4 23:02:55 UTC 2021 - Atri Bhattacharya <badshah...@gmail.com>
+
+- Update to version 10.2.2 (no release notes).
+
+-------------------------------------------------------------------

Old:
----
  armadillo-10.2.1.tar.xz

New:
----
  armadillo-10.2.2.tar.xz

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

Other differences:
------------------
++++++ armadillo.spec ++++++
--- /var/tmp/diff_new_pack.JOemWf/_old  2021-03-05 13:51:06.111942379 +0100
+++ /var/tmp/diff_new_pack.JOemWf/_new  2021-03-05 13:51:06.115942383 +0100
@@ -18,7 +18,7 @@
 
 %define soname libarmadillo10
 Name:           armadillo
-Version:        10.2.1
+Version:        10.2.2
 Release:        0
 Summary:        C++ matrix library with interfaces to LAPACK and ATLAS
 License:        Apache-2.0

++++++ armadillo-10.2.1.tar.xz -> armadillo-10.2.2.tar.xz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/armadillo-10.2.1/CMakeLists.txt 
new/armadillo-10.2.2/CMakeLists.txt
--- old/armadillo-10.2.1/CMakeLists.txt 2016-06-16 18:22:31.000000000 +0200
+++ new/armadillo-10.2.2/CMakeLists.txt 2016-06-16 18:22:32.000000000 +0200
@@ -99,6 +99,9 @@
 # NOTE: for Linux, this is available with gcc 4.8.3 onwards
 # NOTE: for macOS, thread_local is supoported in Xcode 8 (mid 2016 onwards) in 
C++11 mode
 
+# NOTE: thread_local appears broken again on macOS 11 (Big Sur) and/or 
AppleClang 12.0
+# NOTE: see comments in include/armadillo_bits/arma_rng.hpp
+
 if(DEFINED CMAKE_CXX_COMPILER_ID AND DEFINED CMAKE_CXX_COMPILER_VERSION)
   if(CMAKE_CXX_COMPILER_ID STREQUAL "GNU")
     if(NOT (${CMAKE_CXX_COMPILER_VERSION} VERSION_LESS 4.8.3))
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/armadillo-10.2.1/docs.html 
new/armadillo-10.2.2/docs.html
--- old/armadillo-10.2.1/docs.html      2016-06-16 18:22:31.000000000 +0200
+++ new/armadillo-10.2.2/docs.html      2016-06-16 18:22:32.000000000 +0200
@@ -735,7 +735,7 @@
 <tr><td><code>fill::eye</code></td><td>&nbsp;=&nbsp;</td><td>set the elements 
along the main diagonal to 1 and off-diagonal elements to 0</td></tr>
 <tr><td><code>fill::randu</code></td><td>&nbsp;=&nbsp;</td><td>set each 
element to a random value from a uniform distribution in the [0,1] 
interval</td></tr>
 <tr><td><code>fill::randn</code></td><td>&nbsp;=&nbsp;</td><td>set each 
element to a random value from a normal/Gaussian distribution with zero mean 
and unit variance</td></tr>
-<tr><td><code>fill::none</code></td><td>&nbsp;=&nbsp;</td><td>do not modify 
the elements</td></tr>
+<tr><td><code>fill::none</code></td><td>&nbsp;=&nbsp;</td><td>do not 
initialise the elements</td></tr>
 </tbody>
 </table>
 </ul>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/armadillo-10.2.1/include/armadillo_bits/Proxy.hpp 
new/armadillo-10.2.2/include/armadillo_bits/Proxy.hpp
--- old/armadillo-10.2.1/include/armadillo_bits/Proxy.hpp       2016-06-16 
18:22:31.000000000 +0200
+++ new/armadillo-10.2.2/include/armadillo_bits/Proxy.hpp       2016-06-16 
18:22:32.000000000 +0200
@@ -218,7 +218,7 @@
     }
   
   arma_inline uword get_n_rows() const { return Q.n_rows; }
-    constexpr uword get_n_cols() const { return 1;        }
+  constexpr   uword get_n_cols() const { return 1;        }
   arma_inline uword get_n_elem() const { return Q.n_elem; }
   
   arma_inline elem_type operator[] (const uword i)                const { 
return Q[i];        }
@@ -266,7 +266,7 @@
     arma_extra_debug_sigprint();
     }
   
-    constexpr uword get_n_rows() const { return 1;        }
+  constexpr   uword get_n_rows() const { return 1;        }
   arma_inline uword get_n_cols() const { return Q.n_cols; }
   arma_inline uword get_n_elem() const { return Q.n_elem; }
   
@@ -808,7 +808,7 @@
     }
   
   arma_inline uword get_n_rows() const { return Q.n_rows; }
-    constexpr uword get_n_cols() const { return 1;        }
+  constexpr   uword get_n_cols() const { return 1;        }
   arma_inline uword get_n_elem() const { return Q.n_elem; }
   
   arma_inline elem_type operator[] (const uword i)                const { 
return Q[i];        }
@@ -908,7 +908,7 @@
     }
   
   arma_inline uword get_n_rows() const { return Q.n_rows; }
-    constexpr uword get_n_cols() const { return 1;        }
+  constexpr   uword get_n_cols() const { return 1;        }
   arma_inline uword get_n_elem() const { return Q.n_elem; }
   
   arma_inline elem_type operator[] (const uword i)                const { 
return Q[i];        }
@@ -1006,7 +1006,7 @@
     }
   
   arma_inline uword get_n_rows() const { return Q.n_rows; }
-    constexpr uword get_n_cols() const { return 1;        }
+  constexpr   uword get_n_cols() const { return 1;        }
   arma_inline uword get_n_elem() const { return Q.n_elem; }
   
   arma_inline elem_type operator[] (const uword i)                const { 
return Q[i];        }
@@ -1054,7 +1054,7 @@
     arma_extra_debug_sigprint();
     }
   
-    constexpr uword get_n_rows() const { return 1;        }
+  constexpr   uword get_n_rows() const { return 1;        }
   arma_inline uword get_n_cols() const { return Q.n_cols; }
   arma_inline uword get_n_elem() const { return Q.n_elem; }
   
@@ -1111,7 +1111,7 @@
     }
   
   arma_inline uword get_n_rows() const { return R.get_n_elem(); }
-    constexpr uword get_n_cols() const { return 1;              }
+  constexpr   uword get_n_cols() const { return 1;              }
   arma_inline uword get_n_elem() const { return R.get_n_elem(); }
   
   arma_inline elem_type operator[] (const uword i)                const { 
const uword ii = (Proxy<T1>::use_at) ? R.at(i,  0) : R[i  ]; arma_debug_check( 
(ii >= Q.m.n_elem), "Mat::elem(): index out of bounds" ); return Q.m[ii]; }
@@ -1209,7 +1209,7 @@
     }
   
   arma_inline uword get_n_rows() const { return Q.n_rows; }
-    constexpr uword get_n_cols() const { return 1;        }
+  constexpr   uword get_n_cols() const { return 1;        }
   arma_inline uword get_n_elem() const { return Q.n_elem; }
   
   arma_inline elem_type operator[] (const uword i)                const { 
return Q[i];         }
@@ -1267,7 +1267,7 @@
     }
   
   arma_inline uword get_n_rows() const { return Q.n_rows; }
-    constexpr uword get_n_cols() const { return 1;        }
+  constexpr   uword get_n_cols() const { return 1;        }
   arma_inline uword get_n_elem() const { return Q.n_elem; }
   
   arma_inline elem_type operator[] (const uword i)                const { 
return Q[i];         }
@@ -1324,7 +1324,7 @@
     }
   
   arma_inline uword get_n_rows() const { return Q.n_rows; }
-    constexpr uword get_n_cols() const { return 1;        }
+  constexpr   uword get_n_cols() const { return 1;        }
   arma_inline uword get_n_elem() const { return Q.n_elem; }
   
   arma_inline elem_type operator[] (const uword i)                const { 
return Q[i];         }
@@ -1401,7 +1401,7 @@
     }
   
   arma_inline uword get_n_rows() const { return Q.n_rows; }
-    constexpr uword get_n_cols() const { return 1;        }
+  constexpr   uword get_n_cols() const { return 1;        }
   arma_inline uword get_n_elem() const { return Q.n_elem; }
   
   arma_inline elem_type operator[] (const uword i)                const { 
return Q[i];         }
@@ -1869,7 +1869,7 @@
     }
   
   arma_inline uword get_n_rows() const { return Q.n_rows; }
-    constexpr uword get_n_cols() const { return 1;        }
+  constexpr   uword get_n_cols() const { return 1;        }
   arma_inline uword get_n_elem() const { return Q.n_elem; }
   
   arma_inline elem_type operator[] (const uword i)                const { 
return Q[i];   }
@@ -1918,7 +1918,7 @@
     }
   
   arma_inline uword get_n_rows() const { return Q.n_rows; }
-    constexpr uword get_n_cols() const { return 1;        }
+  constexpr   uword get_n_cols() const { return 1;        }
   arma_inline uword get_n_elem() const { return Q.n_elem; }
   
   arma_inline elem_type operator[] (const uword i)                const { 
return Q[i];   }
@@ -1971,7 +1971,7 @@
     }
   
   arma_inline uword get_n_rows() const { return Q.n_rows; }
-    constexpr uword get_n_cols() const { return 1;        }
+  constexpr   uword get_n_cols() const { return 1;        }
   arma_inline uword get_n_elem() const { return Q.n_elem; }
   
   arma_inline elem_type operator[] (const uword i)                const { 
return Q[i];   }
@@ -2023,7 +2023,7 @@
     arma_extra_debug_sigprint();
     }
   
-    constexpr uword get_n_rows() const { return 1;        }
+  constexpr   uword get_n_rows() const { return 1;        }
   arma_inline uword get_n_cols() const { return Q.n_cols; }
   arma_inline uword get_n_elem() const { return Q.n_elem; }
   
@@ -2076,7 +2076,7 @@
     arma_extra_debug_sigprint();
     }
   
-    constexpr uword get_n_rows() const { return 1;        }
+  constexpr   uword get_n_rows() const { return 1;        }
   arma_inline uword get_n_cols() const { return Q.n_cols; }
   arma_inline uword get_n_elem() const { return Q.n_elem; }
   
@@ -2178,7 +2178,7 @@
     }
   
   arma_inline uword get_n_rows() const { return Q.n_rows; }
-    constexpr uword get_n_cols() const { return 1;        }
+  constexpr   uword get_n_cols() const { return 1;        }
   arma_inline uword get_n_elem() const { return Q.n_elem; }
   
   arma_inline elem_type operator[] (const uword i)                const { 
return Q[i];   }
@@ -2227,7 +2227,7 @@
     }
   
   arma_inline uword get_n_rows() const { return Q.n_rows; }
-    constexpr uword get_n_cols() const { return 1;        }
+  constexpr   uword get_n_cols() const { return 1;        }
   arma_inline uword get_n_elem() const { return Q.n_elem; }
   
   arma_inline elem_type operator[] (const uword i)                const { 
return Q[i];   }
@@ -2384,7 +2384,7 @@
     }
   
   arma_inline uword get_n_rows() const { return Q.n_rows; }
-    constexpr uword get_n_cols() const { return 1;        }
+  constexpr   uword get_n_cols() const { return 1;        }
   arma_inline uword get_n_elem() const { return Q.n_elem; }
   
   arma_inline elem_type operator[] (const uword i)                const { 
return Q[i];           }
@@ -2443,7 +2443,7 @@
     }
   
   arma_inline uword get_n_rows() const { return R.get_n_elem(); }
-    constexpr uword get_n_cols() const { return 1;              }
+  constexpr   uword get_n_cols() const { return 1;              }
   arma_inline uword get_n_elem() const { return R.get_n_elem(); }
   
   arma_inline elem_type operator[] (const uword i)                const { 
return R[i];         }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/armadillo-10.2.1/include/armadillo_bits/arma_ostream_meat.hpp 
new/armadillo-10.2.2/include/armadillo_bits/arma_ostream_meat.hpp
--- old/armadillo-10.2.1/include/armadillo_bits/arma_ostream_meat.hpp   
2016-06-16 18:22:31.000000000 +0200
+++ new/armadillo-10.2.2/include/armadillo_bits/arma_ostream_meat.hpp   
2016-06-16 18:22:32.000000000 +0200
@@ -510,7 +510,8 @@
       
       o << "[cube slice: " << slice << ']' << '\n';
       arma_ostream::print(o, tmp, modify);
-      o << '\n';
+      
+      if((slice+1) < x.n_slices)  { o << '\n'; }
       }
     }
   else
@@ -960,7 +961,8 @@
       o << "...";
       
       o.width(cell_width);
-      o << X.at(row,3) << '\n';
+      arma_ostream::print_elem(o, X.at(row,3), true);
+      o << '\n';
       }
     
     for(uword col=0; col <= 2; ++col)
@@ -987,7 +989,8 @@
       o << "...";
       
       o.width(cell_width);
-      o << X.at(row,3) << '\n';
+      arma_ostream::print_elem(o, X.at(row,3), true);
+      o << '\n';
       }
     }
   
@@ -1055,7 +1058,8 @@
       o << "...";
       
       o.width(cell_width);
-      o << X.at(row,3) << '\n';
+      arma_ostream::print_elem(o, X.at(row,3), true);
+      o << '\n';
       }
     }
   
@@ -1093,7 +1097,8 @@
       
       o << "[cube slice: " << slice << ']' << '\n';
       arma_ostream::brief_print(o, tmp, false);
-      o << '\n';
+      
+      if((slice+1) < x.n_slices)  { o << '\n'; }
       }
     }
   else
@@ -1115,7 +1120,6 @@
       
       o << "[cube slice: " << slice << ']' << '\n';
       arma_ostream::brief_print(o, tmp, false);
-      o << '\n';
       }
     }
   
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/armadillo-10.2.1/include/armadillo_bits/arma_rng.hpp 
new/armadillo-10.2.2/include/armadillo_bits/arma_rng.hpp
--- old/armadillo-10.2.1/include/armadillo_bits/arma_rng.hpp    2016-06-16 
18:22:31.000000000 +0200
+++ new/armadillo-10.2.2/include/armadillo_bits/arma_rng.hpp    2016-06-16 
18:22:32.000000000 +0200
@@ -23,6 +23,18 @@
 #endif
 
 
+// workaround for issue on macOS 11 and/or AppleClang 12.0
+// see https://gitlab.com/conradsnicta/armadillo-code/-/issues/173
+// the workaround is here instead of CMakeLists.txt
+// to ensure that the armadillo runtime library has arma_rng_cxx11_instance
+// for already compiled programs running on earlier versions of macOS
+#if defined(__APPLE__) || defined(__apple_build_version__)
+  #if !defined(ARMA_DONT_DISABLE_EXTERN_RNG)
+    #undef ARMA_USE_EXTERN_RNG
+  #endif
+#endif
+
+
 #if defined(ARMA_USE_EXTERN_RNG)
   extern thread_local arma_rng_cxx11 arma_rng_cxx11_instance;
   // namespace { thread_local arma_rng_cxx11 arma_rng_cxx11_instance; }
@@ -254,20 +266,9 @@
   void
   fill(eT* mem, const uword N)
     {
-    uword j;
-    
-    for(j=1; j < N; j+=2)
-      {
-      const eT tmp_i = eT( arma_rng::randu<eT>() );
-      const eT tmp_j = eT( arma_rng::randu<eT>() );
-      
-      (*mem) = tmp_i;  mem++;
-      (*mem) = tmp_j;  mem++;
-      }
-    
-    if((j-1) < N)
+    for(uword i=0; i < N; ++i)
       {
-      (*mem) = eT( arma_rng::randu<eT>() );
+      mem[i] = eT( arma_rng::randu<eT>() );
       }
     }
   };
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/armadillo-10.2.1/include/armadillo_bits/arma_version.hpp 
new/armadillo-10.2.2/include/armadillo_bits/arma_version.hpp
--- old/armadillo-10.2.1/include/armadillo_bits/arma_version.hpp        
2016-06-16 18:22:31.000000000 +0200
+++ new/armadillo-10.2.2/include/armadillo_bits/arma_version.hpp        
2016-06-16 18:22:32.000000000 +0200
@@ -21,7 +21,7 @@
 
 #define ARMA_VERSION_MAJOR 10
 #define ARMA_VERSION_MINOR 2
-#define ARMA_VERSION_PATCH 1
+#define ARMA_VERSION_PATCH 2
 #define ARMA_VERSION_NAME  "Cicada Swarm"
 
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/armadillo-10.2.1/include/armadillo_bits/fn_mvnrnd.hpp 
new/armadillo-10.2.2/include/armadillo_bits/fn_mvnrnd.hpp
--- old/armadillo-10.2.1/include/armadillo_bits/fn_mvnrnd.hpp   2016-06-16 
18:22:31.000000000 +0200
+++ new/armadillo-10.2.2/include/armadillo_bits/fn_mvnrnd.hpp   2016-06-16 
18:22:32.000000000 +0200
@@ -56,7 +56,6 @@
 
 
 template<typename T1, typename T2>
-arma_warn_unused
 inline
 typename
 enable_if2
@@ -82,7 +81,6 @@
 
 
 template<typename T1, typename T2>
-arma_warn_unused
 inline
 typename
 enable_if2
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/armadillo-10.2.1/include/armadillo_bits/fn_wishrnd.hpp 
new/armadillo-10.2.2/include/armadillo_bits/fn_wishrnd.hpp
--- old/armadillo-10.2.1/include/armadillo_bits/fn_wishrnd.hpp  2016-06-16 
18:22:31.000000000 +0200
+++ new/armadillo-10.2.2/include/armadillo_bits/fn_wishrnd.hpp  2016-06-16 
18:22:32.000000000 +0200
@@ -82,7 +82,6 @@
 
 
 template<typename T1, typename T2>
-arma_warn_unused
 inline
 typename
 enable_if2
@@ -167,7 +166,6 @@
 
 
 template<typename T1, typename T2>
-arma_warn_unused
 inline
 typename
 enable_if2
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/armadillo-10.2.1/include/armadillo_bits/op_cond_meat.hpp 
new/armadillo-10.2.2/include/armadillo_bits/op_cond_meat.hpp
--- old/armadillo-10.2.1/include/armadillo_bits/op_cond_meat.hpp        
2016-06-16 18:22:31.000000000 +0200
+++ new/armadillo-10.2.2/include/armadillo_bits/op_cond_meat.hpp        
2016-06-16 18:22:32.000000000 +0200
@@ -58,11 +58,13 @@
     {
     const strip_trimat<T1> S(X.get_ref());
     
-    arma_debug_check( (S.M.is_square() == false), "rcond(): matrix must be 
square sized" );
+    const quasi_unwrap<typename strip_trimat<T1>::stored_type> U(S.M);
+    
+    arma_debug_check( (U.M.is_square() == false), "rcond(): matrix must be 
square sized" );
     
     const uword layout = (S.do_triu) ? uword(0) : uword(1);
     
-    return auxlib::rcond_trimat(S.M, layout);
+    return auxlib::rcond_trimat(U.M, layout);
     }
   
   Mat<eT> A = X.get_ref();
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/armadillo-10.2.1/include/armadillo_bits/op_pinv_meat.hpp 
new/armadillo-10.2.2/include/armadillo_bits/op_pinv_meat.hpp
--- old/armadillo-10.2.1/include/armadillo_bits/op_pinv_meat.hpp        
2016-06-16 18:22:31.000000000 +0200
+++ new/armadillo-10.2.2/include/armadillo_bits/op_pinv_meat.hpp        
2016-06-16 18:22:32.000000000 +0200
@@ -119,7 +119,7 @@
       {
       const T val = s_mem[i];
       
-      if(val >= tol)  {  s2_mem[count2] = T(1) / val;  ++count2; }
+      if(val >= tol)  { s2_mem[count2] = (val > T(0)) ? T(T(1) / val) : T(0); 
++count2; }
       }
     
     
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/armadillo-10.2.1/include/armadillo_bits/strip.hpp 
new/armadillo-10.2.2/include/armadillo_bits/strip.hpp
--- old/armadillo-10.2.1/include/armadillo_bits/strip.hpp       2016-06-16 
18:22:31.000000000 +0200
+++ new/armadillo-10.2.2/include/armadillo_bits/strip.hpp       2016-06-16 
18:22:32.000000000 +0200
@@ -146,8 +146,9 @@
   const T1& M;
   
   static constexpr bool do_trimat = true;
-         const bool do_triu;
-         const bool do_tril;
+  
+  const bool do_triu;
+  const bool do_tril;
   
   inline
   strip_trimat(const Op<T1, op_trimat>& X)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/armadillo-10.2.1/include/armadillo_bits/subview_bones.hpp 
new/armadillo-10.2.2/include/armadillo_bits/subview_bones.hpp
--- old/armadillo-10.2.1/include/armadillo_bits/subview_bones.hpp       
2016-06-16 18:22:31.000000000 +0200
+++ new/armadillo-10.2.2/include/armadillo_bits/subview_bones.hpp       
2016-06-16 18:22:32.000000000 +0200
@@ -129,11 +129,11 @@
   inline eT&         at(const uword in_row, const uword in_col);
   inline eT          at(const uword in_row, const uword in_col) const;
   
-  inline eT&         front();
-  inline eT          front() const;
+  inline eT& front();
+  inline eT  front() const;
   
-  inline eT&         back();
-  inline eT          back() const;
+  inline eT& back();
+  inline eT  back() const;
   
   arma_inline       eT* colptr(const uword in_col);
   arma_inline const eT* colptr(const uword in_col) const;
@@ -548,8 +548,9 @@
   
   arma_aligned const subview_row<eT>& sv_row;
   
-         const     uword n_rows;     // equal to n_elem
-         const     uword n_elem;
+  const uword n_rows;     // equal to n_elem
+  const uword n_elem;
+  
   static constexpr uword n_cols = 1;
   
   
@@ -582,8 +583,9 @@
   
   arma_aligned const subview_row<eT>& sv_row;
   
-         const     uword n_rows;     // equal to n_elem
-         const     uword n_elem;
+  const uword n_rows;     // equal to n_elem
+  const uword n_elem;
+  
   static constexpr uword n_cols = 1;
   
   

Reply via email to