build failed:  pixsfm/CMakeFiles/pypixsfm.dir/keypoint_adjustment/bindings.cc.o

Building CXX object pixsfm/CMakeFiles/pypixsfm.dir/keypoint_adjustment/bindings.cc.o
In file included from /work/pixel-perfect-sfm/pixsfm/keypoint_adjustment/src/featuremetric_keypoint_optimizer.h:8:0,
from /work/pixel-perfect-sfm/pixsfm/keypoint_adjustment/bindings.cc:8:
/work/pixel-perfect-sfm/pixsfm/base/src/parallel_optimizer.h:90:6: error: prototype for ‘std::unordered_map<long unsigned int, decltype (static_cast<Optimizer*>(nullptr)->.RunSubset<Ns ...>(((pixsfm::ParallelOptimizer<Optimizer, idx_t>)this)->pixsfm::ParallelOptimizer<Optimizer, idx_t>::dummy, pixsfm::ParallelOptimizer::RunParallel::parameters ...))> pixsfm::ParallelOptimizer<Optimizer, idx_t>::RunParallel(std::vector, Param& ...)’ does not match any in class ‘pixsfm::ParallelOptimizer<Optimizer, idx_t>’
auto ParallelOptimizer<Optimizer, idx_t>::RunParallel(
^
/work/pixel-perfect-sfm/pixsfm/base/src/parallel_optimizer.h:78:8: error: candidate is: template<class Optimizer, class idx_t> template<int ...Ns, class ... Param> std::unordered_map<long unsigned int, decltype (static_cast<Optimizer>(nullptr)->.RunSubset<Ns ...>(((pixsfm::ParallelOptimizer<Optimizer, idx_t>*)this)->pixsfm::ParallelOptimizer<Optimizer, idx_t>::dummy, pixsfm::ParallelOptimizer::RunParallel::parameters ...))> pixsfm::ParallelOptimizer<Optimizer, idx_t>::RunParallel(std::vector, Param& ...)
auto RunParallel(std::vector problem_labels, Param&... parameters)
^
pixsfm/CMakeFiles/pypixsfm.dir/build.make:134: recipe for target 'pixsfm/CMakeFiles/pypixsfm.dir/keypoint_adjustment/bindings.cc.o' failed

gcc -v
gcc version 4.8.5 (Ubuntu 4.8.5-4ubuntu8~16.04.1)

Hi @Phil26AT  Thanks for your great work!
my gcc version is 7.5 ubuntu16.04, I also meet the same problem.

@wolf943134497 Can you please try out the branch fix-gcc-4-8-5 and report the full error log if any?

Thanks for your quick reply. I  try out the branch fix-gcc-4-8-5, but I meet the glog problem, so I use the  main branch, and just change the  pixsfm/base/src/parallel_optimizer.h file as the branch fix-gcc-4-8-5 did.  error log:
Obtaining file:///home/rui/gwm/proj/pixsfm/pixel-perfect-sfm
Installing collected packages: pixsfm
Running setup.py develop for pixsfm
ERROR: Command errored out with exit status 1:
command: /home/rui/anaconda3/bin/python -c 'import sys, setuptools, tokenize; sys.argv[0] = '"'"'/home/rui/gwm/proj/pixsfm/pixel-perfect-sfm/setup.py'"'"'; file='"'"'/home/rui/gwm/proj/pixsfm/pixel-perfect-sfm/setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open)(file);code=f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, file, '"'"'exec'"'"'))' develop --no-deps
cwd: /home/rui/gwm/proj/pixsfm/pixel-perfect-sfm/
Complete output (377 lines):
running develop
running egg_info
writing pixsfm.egg-info/PKG-INFO
writing dependency_links to pixsfm.egg-info/dependency_links.txt
writing top-level names to pixsfm.egg-info/top_level.txt
reading manifest file 'pixsfm.egg-info/SOURCES.txt'
adding license file 'LICENSE'
writing manifest file 'pixsfm.egg-info/SOURCES.txt'
running build_ext
-- Found installed version of Eigen: /usr/local/share/eigen3/cmake
-- Found required Ceres dependency: Eigen version 3.3.7 in /usr/local/include/eigen3
-- Found installed version of glog: /usr/local/lib/cmake/glog
-- Detected glog version: 0.6.0
-- Found required Ceres dependency: glog
-- Found installed version of gflags: /usr/local/lib/cmake/gflags
-- Detected gflags version: 2.2.2
-- Found required Ceres dependency: gflags
-- Found Ceres version: 1.14.0 installed in: /usr/local with components: [EigenSparse, SparseLinearAlgebraLibrary, LAPACK, SuiteSparse, CXSparse, SchurSpecializations, OpenMP, Multithreading]
-- Found Boost: /usr/include (found version "1.58.0") found components: program_options filesystem system unit_test_framework
-- Found Eigen
--   Includes : /usr/local/include/eigen3
-- Found FreeImage
--   Includes : /usr/include
--   Libraries : /usr/lib/x86_64-linux-gnu/libfreeimage.so
-- Found Glog
--   Includes : /usr/local/include
--   Libraries : /usr/local/lib/libglog.so
CMake Warning (dev) at /usr/local/share/cmake-3.17/Modules/FindOpenGL.cmake:305 (message):
Policy CMP0072 is not set: FindOpenGL prefers GLVND by default when
available.  Run "cmake --help-policy CMP0072" for policy details.  Use the
cmake_policy command to set the policy and suppress this warning.
  FindOpenGL found both a legacy GL library:

    OPENGL_gl_LIBRARY: /usr/lib/x86_64-linux-gnu/libGL.so

  and GLVND libraries for OpenGL and GLX:

    OPENGL_opengl_LIBRARY: /usr/lib/x86_64-linux-gnu/libOpenGL.so
    OPENGL_glx_LIBRARY: /usr/lib/x86_64-linux-gnu/libGLX.so

  OpenGL_GL_PREFERENCE has not been set to "GLVND" or "LEGACY", so for
  compatibility with CMake 3.10 and below the legacy GL library will be used.
Call Stack (most recent call first):
  /usr/local/share/colmap/COLMAPConfig.cmake:102 (find_package)
  CMakeLists.txt:35 (find_package)
This warning is for project developers.  Use -Wno-dev to suppress it.

-- Found Glew
--   Includes : /usr/include
--   Libraries : /usr/lib/x86_64-linux-gnu/libGLEW.so
Compiling with AVX2 support.
-- HDF5: Using hdf5 compiler wrapper to determine C configuration
-- Found Boost: /usr/include (found version "1.58.0") found components: system serialization
-- pybind11 v2.8.1
-- Configuring done
-- Generating done
-- Build files have been written to: /home/rui/gwm/proj/pixsfm/pixel-perfect-sfm/build/temp.linux-x86_64-3.6
[ 43%] Built target pixsfm
Scanning dependencies of target pypixsfm
[ 50%] Building CXX object pixsfm/CMakeFiles/pypixsfm.dir/features/bindings.cc.o
[ 50%] Building CXX object pixsfm/CMakeFiles/pypixsfm.dir/keypoint_adjustment/bindings.cc.o
[ 53%] Building CXX object pixsfm/CMakeFiles/pypixsfm.dir/bundle_adjustment/bindings.cc.o
[ 56%] Building CXX object pixsfm/CMakeFiles/pypixsfm.dir/localization/bindings.cc.o
[ 59%] Building CXX object pixsfm/CMakeFiles/pypixsfm.dir/residuals/bindings.cc.o
In file included from /home/rui/gwm/proj/pixsfm/pixel-perfect-sfm/pixsfm/base/src/interpolation.h:22:0,
                 from /home/rui/gwm/proj/pixsfm/pixel-perfect-sfm/pixsfm/features/src/featurepatch.h:20,
                 from /home/rui/gwm/proj/pixsfm/pixel-perfect-sfm/pixsfm/features/src/dynamic_patch_interpolator.h:20,
                 from /home/rui/gwm/proj/pixsfm/pixel-perfect-sfm/pixsfm/features/bindings.cc:12:
/home/rui/gwm/proj/pixsfm/pixel-perfect-sfm/pixsfm/base/src/cubic_hermite_spline_simd.h: In function ‘__m256 pixsfm::_mm256_loadu_ps_T(const float*)’:
/home/rui/gwm/proj/pixsfm/pixel-perfect-sfm/pixsfm/base/src/cubic_hermite_spline_simd.h:45:50: warning: AVX vector return without AVX enabled changes the ABI [-Wpsabi]
 inline __m256 _mm256_loadu_ps_T(const float* data) {
                                                  ^
In file included from /home/rui/gwm/proj/pixsfm/pixel-perfect-sfm/pixsfm/base/src/interpolation.h:22:0,
                 from /home/rui/gwm/proj/pixsfm/pixel-perfect-sfm/pixsfm/features/src/featurepatch.h:20,
                 from /home/rui/gwm/proj/pixsfm/pixel-perfect-sfm/pixsfm/residuals/src/feature_reference.h:8,
                 from /home/rui/gwm/proj/pixsfm/pixel-perfect-sfm/pixsfm/residuals/bindings.cc:9:
/home/rui/gwm/proj/pixsfm/pixel-perfect-sfm/pixsfm/base/src/cubic_hermite_spline_simd.h: In function ‘__m256 pixsfm::_mm256_loadu_ps_T(const float*)’:
/home/rui/gwm/proj/pixsfm/pixel-perfect-sfm/pixsfm/base/src/cubic_hermite_spline_simd.h:45:50: warning: AVX vector return without AVX enabled changes the ABI [-Wpsabi]
 inline __m256 _mm256_loadu_ps_T(const float* data) {
                                                  ^
In file included from /home/rui/gwm/proj/pixsfm/pixel-perfect-sfm/pixsfm/base/src/interpolation.h:22:0,
                 from /home/rui/gwm/proj/pixsfm/pixel-perfect-sfm/pixsfm/features/src/featurepatch.h:20,
                 from /home/rui/gwm/proj/pixsfm/pixel-perfect-sfm/pixsfm/features/src/featuremap.h:24,
                 from /home/rui/gwm/proj/pixsfm/pixel-perfect-sfm/pixsfm/bundle_adjustment/src/bundle_adjustment_options.h:19,
                 from /home/rui/gwm/proj/pixsfm/pixel-perfect-sfm/pixsfm/bundle_adjustment/bindings.cc:7:
/home/rui/gwm/proj/pixsfm/pixel-perfect-sfm/pixsfm/base/src/cubic_hermite_spline_simd.h: In function ‘__m256 pixsfm::_mm256_loadu_ps_T(const float*)’:
/home/rui/gwm/proj/pixsfm/pixel-perfect-sfm/pixsfm/base/src/cubic_hermite_spline_simd.h:45:50: warning: AVX vector return without AVX enabled changes the ABI [-Wpsabi]
 inline __m256 _mm256_loadu_ps_T(const float* data) {
                                                  ^
In file included from /home/rui/gwm/proj/pixsfm/pixel-perfect-sfm/pixsfm/base/src/interpolation.h:22:0,
                 from /home/rui/gwm/proj/pixsfm/pixel-perfect-sfm/pixsfm/features/src/featurepatch.h:20,
                 from /home/rui/gwm/proj/pixsfm/pixel-perfect-sfm/pixsfm/features/src/dynamic_patch_interpolator.h:20,
                 from /home/rui/gwm/proj/pixsfm/pixel-perfect-sfm/pixsfm/localization/src/nearest_references.h:10,
                 from /home/rui/gwm/proj/pixsfm/pixel-perfect-sfm/pixsfm/localization/bindings.cc:7:
/home/rui/gwm/proj/pixsfm/pixel-perfect-sfm/pixsfm/base/src/cubic_hermite_spline_simd.h: In function ‘__m256 pixsfm::_mm256_loadu_ps_T(const float*)’:
/home/rui/gwm/proj/pixsfm/pixel-perfect-sfm/pixsfm/base/src/cubic_hermite_spline_simd.h:45:50: warning: AVX vector return without AVX enabled changes the ABI [-Wpsabi]
 inline __m256 _mm256_loadu_ps_T(const float* data) {
                                                  ^
In file included from /home/rui/gwm/proj/pixsfm/pixel-perfect-sfm/pixsfm/base/src/interpolation.h:22:0,
                 from /home/rui/gwm/proj/pixsfm/pixel-perfect-sfm/pixsfm/features/src/featurepatch.h:20,
                 from /home/rui/gwm/proj/pixsfm/pixel-perfect-sfm/pixsfm/features/src/featuremap.h:24,
                 from /home/rui/gwm/proj/pixsfm/pixel-perfect-sfm/pixsfm/keypoint_adjustment/src/topological_keypoint_optimizer.h:16,
                 from /home/rui/gwm/proj/pixsfm/pixel-perfect-sfm/pixsfm/keypoint_adjustment/src/featuremetric_keypoint_optimizer.h:2,
                 from /home/rui/gwm/proj/pixsfm/pixel-perfect-sfm/pixsfm/keypoint_adjustment/bindings.cc:8:
/home/rui/gwm/proj/pixsfm/pixel-perfect-sfm/pixsfm/base/src/cubic_hermite_spline_simd.h: In function ‘__m256 pixsfm::_mm256_loadu_ps_T(const float*)’:
/home/rui/gwm/proj/pixsfm/pixel-perfect-sfm/pixsfm/base/src/cubic_hermite_spline_simd.h:45:50: warning: AVX vector return without AVX enabled changes the ABI [-Wpsabi]
 inline __m256 _mm256_loadu_ps_T(const float* data) {
                                                  ^
In file included from /home/rui/gwm/proj/pixsfm/pixel-perfect-sfm/pixsfm/features/src/featureset.h:26:0,
                 from /home/rui/gwm/proj/pixsfm/pixel-perfect-sfm/pixsfm/features/src/featuremanager.h:18,
                 from /home/rui/gwm/proj/pixsfm/pixel-perfect-sfm/pixsfm/features/bindings.cc:13:
/home/rui/gwm/proj/pixsfm/pixel-perfect-sfm/pixsfm/features/src/featuremap.h: In instantiation of ‘class pixsfm::FeatureMap<half_float::half>’:
/usr/include/c++/7/type_traits:710:12:   required from ‘struct std::is_polymorphic<pixsfm::FeatureMap<half_float::half> >’
/home/rui/gwm/proj/pixsfm/pixel-perfect-sfm/third-party/pybind11/include/pybind11/pybind11.h:1321:30:   required from ‘class pybind11::class_<pixsfm::FeatureMap<half_float::half> >’
/home/rui/gwm/proj/pixsfm/pixel-perfect-sfm/pixsfm/features/bindings.cc:84:7:   required from ‘void pixsfm::BindFeatureTemplate(pybind11::module&, std::__cxx11::string) [with dtype = half_float::half; pybind11::module = pybind11::module_; std::__cxx11::string = std::__cxx11::basic_string<char>]’
/home/rui/gwm/proj/pixsfm/pixel-perfect-sfm/pixsfm/features/bindings.cc:290:41:   required from here
/home/rui/gwm/proj/pixsfm/pixel-perfect-sfm/pixsfm/features/src/featuremap.h:32:7: warning: ‘pixsfm::FeatureMap<half_float::half>’ declared with greater visibility than the type of its field ‘pixsfm::FeatureMap<half_float::half>::reference_pyarray_’ [-Wattributes]
 class FeatureMap {
       ^~~~~~~~~~
/home/rui/gwm/proj/pixsfm/pixel-perfect-sfm/pixsfm/features/src/featuremap.h: In instantiation of ‘class pixsfm::FeatureMap<double>’:
/usr/include/c++/7/type_traits:710:12:   required from ‘struct std::is_polymorphic<pixsfm::FeatureMap<double> >’
/home/rui/gwm/proj/pixsfm/pixel-perfect-sfm/third-party/pybind11/include/pybind11/pybind11.h:1321:30:   required from ‘class pybind11::class_<pixsfm::FeatureMap<double> >’
/home/rui/gwm/proj/pixsfm/pixel-perfect-sfm/pixsfm/features/bindings.cc:84:7:   required from ‘void pixsfm::BindFeatureTemplate(pybind11::module&, std::__cxx11::string) [with dtype = double; pybind11::module = pybind11::module_; std::__cxx11::string = std::__cxx11::basic_string<char>]’
/home/rui/gwm/proj/pixsfm/pixel-perfect-sfm/pixsfm/features/bindings.cc:291:40:   required from here
/home/rui/gwm/proj/pixsfm/pixel-perfect-sfm/pixsfm/features/src/featuremap.h:32:7: warning: ‘pixsfm::FeatureMap<double>’ declared with greater visibility than the type of its field ‘pixsfm::FeatureMap<double>::reference_pyarray_’ [-Wattributes]
/home/rui/gwm/proj/pixsfm/pixel-perfect-sfm/pixsfm/features/src/featuremap.h: In instantiation of ‘class pixsfm::FeatureMap<float>’:
/usr/include/c++/7/type_traits:710:12:   required from ‘struct std::is_polymorphic<pixsfm::FeatureMap<float> >’
/home/rui/gwm/proj/pixsfm/pixel-perfect-sfm/third-party/pybind11/include/pybind11/pybind11.h:1321:30:   required from ‘class pybind11::class_<pixsfm::FeatureMap<float> >’
/home/rui/gwm/proj/pixsfm/pixel-perfect-sfm/pixsfm/features/bindings.cc:84:7:   required from ‘void pixsfm::BindFeatureTemplate(pybind11::module&, std::__cxx11::string) [with dtype = float; pybind11::module = pybind11::module_; std::__cxx11::string = std::__cxx11::basic_string<char>]’
/home/rui/gwm/proj/pixsfm/pixel-perfect-sfm/pixsfm/features/bindings.cc:292:39:   required from here
/home/rui/gwm/proj/pixsfm/pixel-perfect-sfm/pixsfm/features/src/featuremap.h:32:7: warning: ‘pixsfm::FeatureMap<float>’ declared with greater visibility than the type of its field ‘pixsfm::FeatureMap<float>::reference_pyarray_’ [-Wattributes]
In file included from /home/rui/gwm/proj/pixsfm/pixel-perfect-sfm/pixsfm/localization/src/nearest_references.h:11:0,
                 from /home/rui/gwm/proj/pixsfm/pixel-perfect-sfm/pixsfm/localization/bindings.cc:7:
/home/rui/gwm/proj/pixsfm/pixel-perfect-sfm/pixsfm/features/src/featuremap.h: In instantiation of ‘class pixsfm::FeatureMap<half_float::half>’:
/home/rui/gwm/proj/pixsfm/pixel-perfect-sfm/pixsfm/localization/src/single_query_bundle_optimizer.h:76:26:   required from ‘bool pixsfm::SingleQueryBundleOptimizer::RunQuery(Eigen::Ref<Eigen::Matrix<double, 4, 1> >&, Eigen::Ref<Eigen::Matrix<double, 3, 1> >&, colmap::Camera&, std::vector<Eigen::Matrix<double, 3, 1> >&, pixsfm::FeatureMap<dtype>&, RefType&, std::vector<unsigned int>*, std::vector<bool>*) [with dtype = half_float::half; RefType = std::vector<pixsfm::Reference>]’
/home/rui/gwm/proj/pixsfm/pixel-perfect-sfm/pixsfm/localization/bindings.cc:17:3:   required from ‘void pixsfm::BindSingleQueryBundleOptimizer(pybind11::class_<T>&) [with dtype = half_float::half; T = pixsfm::SingleQueryBundleOptimizer]’
/home/rui/gwm/proj/pixsfm/pixel-perfect-sfm/pixsfm/localization/bindings.cc:99:47:   required from here
/home/rui/gwm/proj/pixsfm/pixel-perfect-sfm/pixsfm/features/src/featuremap.h:32:7: warning: ‘pixsfm::FeatureMap<half_float::half>’ declared with greater visibility than the type of its field ‘pixsfm::FeatureMap<half_float::half>::reference_pyarray_’ [-Wattributes]
 class FeatureMap {
       ^~~~~~~~~~
/home/rui/gwm/proj/pixsfm/pixel-perfect-sfm/pixsfm/features/src/featuremap.h: In instantiation of ‘class pixsfm::FeatureMap<float>’:
/home/rui/gwm/proj/pixsfm/pixel-perfect-sfm/pixsfm/localization/src/single_query_bundle_optimizer.h:76:26:   required from ‘bool pixsfm::SingleQueryBundleOptimizer::RunQuery(Eigen::Ref<Eigen::Matrix<double, 4, 1> >&, Eigen::Ref<Eigen::Matrix<double, 3, 1> >&, colmap::Camera&, std::vector<Eigen::Matrix<double, 3, 1> >&, pixsfm::FeatureMap<dtype>&, RefType&, std::vector<unsigned int>*, std::vector<bool>*) [with dtype = float; RefType = std::vector<pixsfm::Reference>]’
/home/rui/gwm/proj/pixsfm/pixel-perfect-sfm/pixsfm/localization/bindings.cc:17:3:   required from ‘void pixsfm::BindSingleQueryBundleOptimizer(pybind11::class_<T>&) [with dtype = float; T = pixsfm::SingleQueryBundleOptimizer]’
/home/rui/gwm/proj/pixsfm/pixel-perfect-sfm/pixsfm/localization/bindings.cc:100:45:   required from here
/home/rui/gwm/proj/pixsfm/pixel-perfect-sfm/pixsfm/features/src/featuremap.h:32:7: warning: ‘pixsfm::FeatureMap<float>’ declared with greater visibility than the type of its field ‘pixsfm::FeatureMap<float>::reference_pyarray_’ [-Wattributes]
/home/rui/gwm/proj/pixsfm/pixel-perfect-sfm/pixsfm/features/src/featuremap.h: In instantiation of ‘class pixsfm::FeatureMap<double>’:
/home/rui/gwm/proj/pixsfm/pixel-perfect-sfm/pixsfm/localization/src/single_query_bundle_optimizer.h:76:26:   required from ‘bool pixsfm::SingleQueryBundleOptimizer::RunQuery(Eigen::Ref<Eigen::Matrix<double, 4, 1> >&, Eigen::Ref<Eigen::Matrix<double, 3, 1> >&, colmap::Camera&, std::vector<Eigen::Matrix<double, 3, 1> >&, pixsfm::FeatureMap<dtype>&, RefType&, std::vector<unsigned int>*, std::vector<bool>*) [with dtype = double; RefType = std::vector<pixsfm::Reference>]’
/home/rui/gwm/proj/pixsfm/pixel-perfect-sfm/pixsfm/localization/bindings.cc:17:3:   required from ‘void pixsfm::BindSingleQueryBundleOptimizer(pybind11::class_<T>&) [with dtype = double; T = pixsfm::SingleQueryBundleOptimizer]’
/home/rui/gwm/proj/pixsfm/pixel-perfect-sfm/pixsfm/localization/bindings.cc:101:46:   required from here
/home/rui/gwm/proj/pixsfm/pixel-perfect-sfm/pixsfm/features/src/featuremap.h:32:7: warning: ‘pixsfm::FeatureMap<double>’ declared with greater visibility than the type of its field ‘pixsfm::FeatureMap<double>::reference_pyarray_’ [-Wattributes]
In file included from /home/rui/gwm/proj/pixsfm/pixel-perfect-sfm/pixsfm/bundle_adjustment/src/bundle_adjustment_options.h:19:0,
                 from /home/rui/gwm/proj/pixsfm/pixel-perfect-sfm/pixsfm/bundle_adjustment/bindings.cc:7:
/home/rui/gwm/proj/pixsfm/pixel-perfect-sfm/pixsfm/features/src/featuremap.h: In instantiation of ‘class pixsfm::FeatureMap<half_float::half>’:
/usr/include/c++/7/bits/stl_pair.h:215:11:   required from ‘struct std::pair<const std::__cxx11::basic_string<char>, pixsfm::FeatureMap<half_float::half> >’
/usr/include/c++/7/ext/aligned_buffer.h:85:34:   required from ‘struct __gnu_cxx::__aligned_buffer<std::pair<const std::__cxx11::basic_string<char>, pixsfm::FeatureMap<half_float::half> > >’
/usr/include/c++/7/bits/hashtable_policy.h:248:43:   required from ‘struct std::__detail::_Hash_node_value_base<std::pair<const std::__cxx11::basic_string<char>, pixsfm::FeatureMap<half_float::half> > >’
/usr/include/c++/7/bits/hashtable_policy.h:279:12:   required from ‘struct std::__detail::_Hash_node<std::pair<const std::__cxx11::basic_string<char>, pixsfm::FeatureMap<half_float::half> >, true>’
/usr/include/c++/7/bits/hashtable_policy.h:2007:60:   required from ‘struct std::__detail::_Hashtable_alloc<std::allocator<std::__detail::_Hash_node<std::pair<const std::__cxx11::basic_string<char>, pixsfm::FeatureMap<half_float::half> >, true> > >’
/usr/include/c++/7/bits/hashtable.h:173:11:   required from ‘class std::_Hashtable<std::__cxx11::basic_string<char>, std::pair<const std::__cxx11::basic_string<char>, pixsfm::FeatureMap<half_float::half> >, std::allocator<std::pair<const std::__cxx11::basic_string<char>, pixsfm::FeatureMap<half_float::half> > >, std::__detail::_Select1st, std::equal_to<std::__cxx11::basic_string<char> >, std::hash<std::__cxx11::basic_string<char> >, std::__detail::_Mod_range_hashing, std::__detail::_Default_ranged_hash, std::__detail::_Prime_rehash_policy, std::__detail::_Hashtable_traits<true, false, true> >’
/usr/include/c++/7/bits/unordered_map.h:104:18:   required from ‘class std::unordered_map<std::__cxx11::basic_string<char>, pixsfm::FeatureMap<half_float::half>, std::hash<std::__cxx11::basic_string<char> >, std::equal_to<std::__cxx11::basic_string<char> >, std::allocator<std::pair<const std::__cxx11::basic_string<char>, pixsfm::FeatureMap<half_float::half> > > >’
/home/rui/gwm/proj/pixsfm/pixel-perfect-sfm/pixsfm/features/src/featureset.h:96:24:   required from ‘class pixsfm::FeatureSet<half_float::half>’
/home/rui/gwm/proj/pixsfm/pixel-perfect-sfm/pixsfm/bundle_adjustment/src/reference_extractor.h:129:23:   required from ‘pixsfm::Refs pixsfm::ReferenceExtractor::Run(const std::vector<int>&, const colmap::Reconstruction*, pixsfm::FeatureSet<dtype>&) [with dtype = half_float::half; pixsfm::Refs = std::unordered_map<long unsigned int, pixsfm::Reference>]’
/home/rui/gwm/proj/pixsfm/pixel-perfect-sfm/pixsfm/bundle_adjustment/bindings.cc:30:3:   required from ‘void pixsfm::BindReferenceExtractor(pybind11::class_<T>&) [with dtype = half_float::half; T = pixsfm::ReferenceExtractor]’
/home/rui/gwm/proj/pixsfm/pixel-perfect-sfm/pixsfm/bundle_adjustment/bindings.cc:174:36:   required from here
/home/rui/gwm/proj/pixsfm/pixel-perfect-sfm/pixsfm/features/src/featuremap.h:32:7: warning: ‘pixsfm::FeatureMap<half_float::half>’ declared with greater visibility than the type of its field ‘pixsfm::FeatureMap<half_float::half>::reference_pyarray_’ [-Wattributes]
 class FeatureMap {
       ^~~~~~~~~~
/home/rui/gwm/proj/pixsfm/pixel-perfect-sfm/pixsfm/features/src/featuremap.h: In instantiation of ‘class pixsfm::FeatureMap<float>’:
/usr/include/c++/7/bits/stl_pair.h:215:11:   required from ‘struct std::pair<const std::__cxx11::basic_string<char>, pixsfm::FeatureMap<float> >’
/usr/include/c++/7/ext/aligned_buffer.h:85:34:   required from ‘struct __gnu_cxx::__aligned_buffer<std::pair<const std::__cxx11::basic_string<char>, pixsfm::FeatureMap<float> > >’
/usr/include/c++/7/bits/hashtable_policy.h:248:43:   required from ‘struct std::__detail::_Hash_node_value_base<std::pair<const std::__cxx11::basic_string<char>, pixsfm::FeatureMap<float> > >’
/usr/include/c++/7/bits/hashtable_policy.h:279:12:   required from ‘struct std::__detail::_Hash_node<std::pair<const std::__cxx11::basic_string<char>, pixsfm::FeatureMap<float> >, true>’
/usr/include/c++/7/bits/hashtable_policy.h:2007:60:   required from ‘struct std::__detail::_Hashtable_alloc<std::allocator<std::__detail::_Hash_node<std::pair<const std::__cxx11::basic_string<char>, pixsfm::FeatureMap<float> >, true> > >’
/usr/include/c++/7/bits/hashtable.h:173:11:   required from ‘class std::_Hashtable<std::__cxx11::basic_string<char>, std::pair<const std::__cxx11::basic_string<char>, pixsfm::FeatureMap<float> >, std::allocator<std::pair<const std::__cxx11::basic_string<char>, pixsfm::FeatureMap<float> > >, std::__detail::_Select1st, std::equal_to<std::__cxx11::basic_string<char> >, std::hash<std::__cxx11::basic_string<char> >, std::__detail::_Mod_range_hashing, std::__detail::_Default_ranged_hash, std::__detail::_Prime_rehash_policy, std::__detail::_Hashtable_traits<true, false, true> >’
/usr/include/c++/7/bits/unordered_map.h:104:18:   required from ‘class std::unordered_map<std::__cxx11::basic_string<char>, pixsfm::FeatureMap<float>, std::hash<std::__cxx11::basic_string<char> >, std::equal_to<std::__cxx11::basic_string<char> >, std::allocator<std::pair<const std::__cxx11::basic_string<char>, pixsfm::FeatureMap<float> > > >’
/home/rui/gwm/proj/pixsfm/pixel-perfect-sfm/pixsfm/features/src/featureset.h:96:24:   required from ‘class pixsfm::FeatureSet<float>’
/home/rui/gwm/proj/pixsfm/pixel-perfect-sfm/pixsfm/bundle_adjustment/src/reference_extractor.h:129:23:   required from ‘pixsfm::Refs pixsfm::ReferenceExtractor::Run(const std::vector<int>&, const colmap::Reconstruction*, pixsfm::FeatureSet<dtype>&) [with dtype = float; pixsfm::Refs = std::unordered_map<long unsigned int, pixsfm::Reference>]’
/home/rui/gwm/proj/pixsfm/pixel-perfect-sfm/pixsfm/bundle_adjustment/bindings.cc:30:3:   required from ‘void pixsfm::BindReferenceExtractor(pybind11::class_<T>&) [with dtype = float; T = pixsfm::ReferenceExtractor]’
/home/rui/gwm/proj/pixsfm/pixel-perfect-sfm/pixsfm/bundle_adjustment/bindings.cc:175:34:   required from here
/home/rui/gwm/proj/pixsfm/pixel-perfect-sfm/pixsfm/features/src/featuremap.h:32:7: warning: ‘pixsfm::FeatureMap<float>’ declared with greater visibility than the type of its field ‘pixsfm::FeatureMap<float>::reference_pyarray_’ [-Wattributes]
/home/rui/gwm/proj/pixsfm/pixel-perfect-sfm/pixsfm/features/src/featuremap.h: In instantiation of ‘class pixsfm::FeatureMap<double>’:
/usr/include/c++/7/bits/stl_pair.h:215:11:   required from ‘struct std::pair<const std::__cxx11::basic_string<char>, pixsfm::FeatureMap<double> >’
/usr/include/c++/7/ext/aligned_buffer.h:85:34:   required from ‘struct __gnu_cxx::__aligned_buffer<std::pair<const std::__cxx11::basic_string<char>, pixsfm::FeatureMap<double> > >’
/usr/include/c++/7/bits/hashtable_policy.h:248:43:   required from ‘struct std::__detail::_Hash_node_value_base<std::pair<const std::__cxx11::basic_string<char>, pixsfm::FeatureMap<double> > >’
/usr/include/c++/7/bits/hashtable_policy.h:279:12:   required from ‘struct std::__detail::_Hash_node<std::pair<const std::__cxx11::basic_string<char>, pixsfm::FeatureMap<double> >, true>’
/usr/include/c++/7/bits/hashtable_policy.h:2007:60:   required from ‘struct std::__detail::_Hashtable_alloc<std::allocator<std::__detail::_Hash_node<std::pair<const std::__cxx11::basic_string<char>, pixsfm::FeatureMap<double> >, true> > >’
/usr/include/c++/7/bits/hashtable.h:173:11:   required from ‘class std::_Hashtable<std::__cxx11::basic_string<char>, std::pair<const std::__cxx11::basic_string<char>, pixsfm::FeatureMap<double> >, std::allocator<std::pair<const std::__cxx11::basic_string<char>, pixsfm::FeatureMap<double> > >, std::__detail::_Select1st, std::equal_to<std::__cxx11::basic_string<char> >, std::hash<std::__cxx11::basic_string<char> >, std::__detail::_Mod_range_hashing, std::__detail::_Default_ranged_hash, std::__detail::_Prime_rehash_policy, std::__detail::_Hashtable_traits<true, false, true> >’
/usr/include/c++/7/bits/unordered_map.h:104:18:   required from ‘class std::unordered_map<std::__cxx11::basic_string<char>, pixsfm::FeatureMap<double>, std::hash<std::__cxx11::basic_string<char> >, std::equal_to<std::__cxx11::basic_string<char> >, std::allocator<std::pair<const std::__cxx11::basic_string<char>, pixsfm::FeatureMap<double> > > >’
/home/rui/gwm/proj/pixsfm/pixel-perfect-sfm/pixsfm/features/src/featureset.h:96:24:   required from ‘class pixsfm::FeatureSet<double>’
/home/rui/gwm/proj/pixsfm/pixel-perfect-sfm/pixsfm/bundle_adjustment/src/reference_extractor.h:129:23:   required from ‘pixsfm::Refs pixsfm::ReferenceExtractor::Run(const std::vector<int>&, const colmap::Reconstruction*, pixsfm::FeatureSet<dtype>&) [with dtype = double; pixsfm::Refs = std::unordered_map<long unsigned int, pixsfm::Reference>]’
/home/rui/gwm/proj/pixsfm/pixel-perfect-sfm/pixsfm/bundle_adjustment/bindings.cc:30:3:   required from ‘void pixsfm::BindReferenceExtractor(pybind11::class_<T>&) [with dtype = double; T = pixsfm::ReferenceExtractor]’
/home/rui/gwm/proj/pixsfm/pixel-perfect-sfm/pixsfm/bundle_adjustment/bindings.cc:176:35:   required from here
/home/rui/gwm/proj/pixsfm/pixel-perfect-sfm/pixsfm/features/src/featuremap.h:32:7: warning: ‘pixsfm::FeatureMap<double>’ declared with greater visibility than the type of its field ‘pixsfm::FeatureMap<double>::reference_pyarray_’ [-Wattributes]
In file included from /home/rui/gwm/proj/pixsfm/pixel-perfect-sfm/pixsfm/keypoint_adjustment/src/topological_keypoint_optimizer.h:16:0,
                 from /home/rui/gwm/proj/pixsfm/pixel-perfect-sfm/pixsfm/keypoint_adjustment/src/featuremetric_keypoint_optimizer.h:2,
                 from /home/rui/gwm/proj/pixsfm/pixel-perfect-sfm/pixsfm/keypoint_adjustment/bindings.cc:8:
/home/rui/gwm/proj/pixsfm/pixel-perfect-sfm/pixsfm/features/src/featuremap.h: In instantiation of ‘class pixsfm::FeatureMap<half_float::half>’:
/usr/include/c++/7/bits/stl_pair.h:215:11:   required from ‘struct std::pair<const std::__cxx11::basic_string<char>, pixsfm::FeatureMap<half_float::half> >’
/usr/include/c++/7/ext/aligned_buffer.h:85:34:   required from ‘struct __gnu_cxx::__aligned_buffer<std::pair<const std::__cxx11::basic_string<char>, pixsfm::FeatureMap<half_float::half> > >’
/usr/include/c++/7/bits/hashtable_policy.h:248:43:   required from ‘struct std::__detail::_Hash_node_value_base<std::pair<const std::__cxx11::basic_string<char>, pixsfm::FeatureMap<half_float::half> > >’
/usr/include/c++/7/bits/hashtable_policy.h:279:12:   required from ‘struct std::__detail::_Hash_node<std::pair<const std::__cxx11::basic_string<char>, pixsfm::FeatureMap<half_float::half> >, true>’
/usr/include/c++/7/bits/hashtable_policy.h:2007:60:   [ skipping 2 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/usr/include/c++/7/bits/unordered_map.h:104:18:   required from ‘class std::unordered_map<std::__cxx11::basic_string<char>, pixsfm::FeatureMap<half_float::half>, std::hash<std::__cxx11::basic_string<char> >, std::equal_to<std::__cxx11::basic_string<char> >, std::allocator<std::pair<const std::__cxx11::basic_string<char>, pixsfm::FeatureMap<half_float::half> > > >’
/home/rui/gwm/proj/pixsfm/pixel-perfect-sfm/pixsfm/features/src/featureset.h:96:24:   required from ‘class pixsfm::FeatureSet<half_float::half>’
/home/rui/gwm/proj/pixsfm/pixel-perfect-sfm/third-party/pybind11/include/pybind11/pybind11.h:1377:45:   required from ‘pybind11::class_<type_, options>& pybind11::class_<type_, options>::def(const char*, Func&&, const Extra& ...) [with Func = bool (pixsfm::FeatureMetricKeypointOptimizer::*)(std::unordered_map<std::__cxx11::basic_string<char>, Eigen::Matrix<double, -1, 2, 1> >*, const pixsfm::Graph*, const std::vector<long unsigned int>&, const std::vector<bool>&, pixsfm::FeatureSet<half_float::half>&); Extra = {}; type_ = pixsfm::FeatureMetricKeypointOptimizer; options = {}]’
/home/rui/gwm/proj/pixsfm/pixel-perfect-sfm/pixsfm/keypoint_adjustment/bindings.cc:19:3:   required from ‘void pixsfm::BindParallelSolve(pybind11::class_<T>&) [with dtype = half_float::half; T = pixsfm::FeatureMetricKeypointOptimizer]’
/home/rui/gwm/proj/pixsfm/pixel-perfect-sfm/pixsfm/keypoint_adjustment/bindings.cc:27:26:   required from ‘void pixsfm::BindKeypointOptimizer(pybind11::class_<Type>&) [with T = pixsfm::FeatureMetricKeypointOptimizer]’
/home/rui/gwm/proj/pixsfm/pixel-perfect-sfm/pixsfm/keypoint_adjustment/bindings.cc:83:34:   required from here
/home/rui/gwm/proj/pixsfm/pixel-perfect-sfm/pixsfm/features/src/featuremap.h:32:7: warning: ‘pixsfm::FeatureMap<half_float::half>’ declared with greater visibility than the type of its field ‘pixsfm::FeatureMap<half_float::half>::reference_pyarray_’ [-Wattributes]
 class FeatureMap {
       ^~~~~~~~~~
/home/rui/gwm/proj/pixsfm/pixel-perfect-sfm/pixsfm/features/src/featuremap.h: In instantiation of ‘class pixsfm::FeatureMap<float>’:
/usr/include/c++/7/bits/stl_pair.h:215:11:   required from ‘struct std::pair<const std::__cxx11::basic_string<char>, pixsfm::FeatureMap<float> >’
/usr/include/c++/7/ext/aligned_buffer.h:85:34:   required from ‘struct __gnu_cxx::__aligned_buffer<std::pair<const std::__cxx11::basic_string<char>, pixsfm::FeatureMap<float> > >’
/usr/include/c++/7/bits/hashtable_policy.h:248:43:   required from ‘struct std::__detail::_Hash_node_value_base<std::pair<const std::__cxx11::basic_string<char>, pixsfm::FeatureMap<float> > >’
/usr/include/c++/7/bits/hashtable_policy.h:279:12:   required from ‘struct std::__detail::_Hash_node<std::pair<const std::__cxx11::basic_string<char>, pixsfm::FeatureMap<float> >, true>’
/usr/include/c++/7/bits/hashtable_policy.h:2007:60:   [ skipping 2 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/usr/include/c++/7/bits/unordered_map.h:104:18:   required from ‘class std::unordered_map<std::__cxx11::basic_string<char>, pixsfm::FeatureMap<float>, std::hash<std::__cxx11::basic_string<char> >, std::equal_to<std::__cxx11::basic_string<char> >, std::allocator<std::pair<const std::__cxx11::basic_string<char>, pixsfm::FeatureMap<float> > > >’
/home/rui/gwm/proj/pixsfm/pixel-perfect-sfm/pixsfm/features/src/featureset.h:96:24:   required from ‘class pixsfm::FeatureSet<float>’
/home/rui/gwm/proj/pixsfm/pixel-perfect-sfm/third-party/pybind11/include/pybind11/pybind11.h:1377:45:   required from ‘pybind11::class_<type_, options>& pybind11::class_<type_, options>::def(const char*, Func&&, const Extra& ...) [with Func = bool (pixsfm::FeatureMetricKeypointOptimizer::*)(std::unordered_map<std::__cxx11::basic_string<char>, Eigen::Matrix<double, -1, 2, 1> >*, const pixsfm::Graph*, const std::vector<long unsigned int>&, const std::vector<bool>&, pixsfm::FeatureSet<float>&); Extra = {}; type_ = pixsfm::FeatureMetricKeypointOptimizer; options = {}]’
/home/rui/gwm/proj/pixsfm/pixel-perfect-sfm/pixsfm/keypoint_adjustment/bindings.cc:19:3:   required from ‘void pixsfm::BindParallelSolve(pybind11::class_<T>&) [with dtype = float; T = pixsfm::FeatureMetricKeypointOptimizer]’
/home/rui/gwm/proj/pixsfm/pixel-perfect-sfm/pixsfm/keypoint_adjustment/bindings.cc:28:27:   required from ‘void pixsfm::BindKeypointOptimizer(pybind11::class_<Type>&) [with T = pixsfm::FeatureMetricKeypointOptimizer]’
/home/rui/gwm/proj/pixsfm/pixel-perfect-sfm/pixsfm/keypoint_adjustment/bindings.cc:83:34:   required from here
/home/rui/gwm/proj/pixsfm/pixel-perfect-sfm/pixsfm/features/src/featuremap.h:32:7: warning: ‘pixsfm::FeatureMap<float>’ declared with greater visibility than the type of its field ‘pixsfm::FeatureMap<float>::reference_pyarray_’ [-Wattributes]
/home/rui/gwm/proj/pixsfm/pixel-perfect-sfm/pixsfm/features/src/featuremap.h: In instantiation of ‘class pixsfm::FeatureMap<double>’:
/usr/include/c++/7/bits/stl_pair.h:215:11:   required from ‘struct std::pair<const std::__cxx11::basic_string<char>, pixsfm::FeatureMap<double> >’
/usr/include/c++/7/ext/aligned_buffer.h:85:34:   required from ‘struct __gnu_cxx::__aligned_buffer<std::pair<const std::__cxx11::basic_string<char>, pixsfm::FeatureMap<double> > >’
/usr/include/c++/7/bits/hashtable_policy.h:248:43:   required from ‘struct std::__detail::_Hash_node_value_base<std::pair<const std::__cxx11::basic_string<char>, pixsfm::FeatureMap<double> > >’
/usr/include/c++/7/bits/hashtable_policy.h:279:12:   required from ‘struct std::__detail::_Hash_node<std::pair<const std::__cxx11::basic_string<char>, pixsfm::FeatureMap<double> >, true>’
/usr/include/c++/7/bits/hashtable_policy.h:2007:60:   [ skipping 2 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/usr/include/c++/7/bits/unordered_map.h:104:18:   required from ‘class std::unordered_map<std::__cxx11::basic_string<char>, pixsfm::FeatureMap<double>, std::hash<std::__cxx11::basic_string<char> >, std::equal_to<std::__cxx11::basic_string<char> >, std::allocator<std::pair<const std::__cxx11::basic_string<char>, pixsfm::FeatureMap<double> > > >’
/home/rui/gwm/proj/pixsfm/pixel-perfect-sfm/pixsfm/features/src/featureset.h:96:24:   required from ‘class pixsfm::FeatureSet<double>’
/home/rui/gwm/proj/pixsfm/pixel-perfect-sfm/third-party/pybind11/include/pybind11/pybind11.h:1377:45:   required from ‘pybind11::class_<type_, options>& pybind11::class_<type_, options>::def(const char*, Func&&, const Extra& ...) [with Func = bool (pixsfm::FeatureMetricKeypointOptimizer::*)(std::unordered_map<std::__cxx11::basic_string<char>, Eigen::Matrix<double, -1, 2, 1> >*, const pixsfm::Graph*, const std::vector<long unsigned int>&, const std::vector<bool>&, pixsfm::FeatureSet<double>&); Extra = {}; type_ = pixsfm::FeatureMetricKeypointOptimizer; options = {}]’
/home/rui/gwm/proj/pixsfm/pixel-perfect-sfm/pixsfm/keypoint_adjustment/bindings.cc:19:3:   required from ‘void pixsfm::BindParallelSolve(pybind11::class_<T>&) [with dtype = double; T = pixsfm::FeatureMetricKeypointOptimizer]’
/home/rui/gwm/proj/pixsfm/pixel-perfect-sfm/pixsfm/keypoint_adjustment/bindings.cc:29:28:   required from ‘void pixsfm::BindKeypointOptimizer(pybind11::class_<Type>&) [with T = pixsfm::FeatureMetricKeypointOptimizer]’
/home/rui/gwm/proj/pixsfm/pixel-perfect-sfm/pixsfm/keypoint_adjustment/bindings.cc:83:34:   required from here
/home/rui/gwm/proj/pixsfm/pixel-perfect-sfm/pixsfm/features/src/featuremap.h:32:7: warning: ‘pixsfm::FeatureMap<double>’ declared with greater visibility than the type of its field ‘pixsfm::FeatureMap<double>::reference_pyarray_’ [-Wattributes]
In file included from /usr/lib/gcc/x86_64-linux-gnu/7/include/immintrin.h:41:0,
                 from /home/rui/gwm/proj/pixsfm/pixel-perfect-sfm/pixsfm/base/src/cubic_hermite_spline_simd.h:15,
                 from /home/rui/gwm/proj/pixsfm/pixel-perfect-sfm/pixsfm/base/src/interpolation.h:22,
                 from /home/rui/gwm/proj/pixsfm/pixel-perfect-sfm/pixsfm/features/src/featurepatch.h:20,
                 from /home/rui/gwm/proj/pixsfm/pixel-perfect-sfm/pixsfm/features/src/featuremap.h:24,
                 from /home/rui/gwm/proj/pixsfm/pixel-perfect-sfm/pixsfm/keypoint_adjustment/src/topological_keypoint_optimizer.h:16,
                 from /home/rui/gwm/proj/pixsfm/pixel-perfect-sfm/pixsfm/keypoint_adjustment/src/featuremetric_keypoint_optimizer.h:2,
                 from /home/rui/gwm/proj/pixsfm/pixel-perfect-sfm/pixsfm/keypoint_adjustment/bindings.cc:8:
/usr/lib/gcc/x86_64-linux-gnu/7/include/avxintrin.h: In function ‘void pixsfm::_mm256_storeu_pd_T(double*, const __m256d&)’:
/usr/lib/gcc/x86_64-linux-gnu/7/include/avxintrin.h:890:1: error: inlining failed in call to always_inline ‘void _mm256_storeu_pd(double*, __m256d)’: target specific option mismatch
 _mm256_storeu_pd (double *__P, __m256d __A)
 ^~~~~~~~~~~~~~~~
In file included from /home/rui/gwm/proj/pixsfm/pixel-perfect-sfm/pixsfm/base/src/interpolation.h:22:0,
                 from /home/rui/gwm/proj/pixsfm/pixel-perfect-sfm/pixsfm/features/src/featurepatch.h:20,
                 from /home/rui/gwm/proj/pixsfm/pixel-perfect-sfm/pixsfm/features/src/featuremap.h:24,
                 from /home/rui/gwm/proj/pixsfm/pixel-perfect-sfm/pixsfm/keypoint_adjustment/src/topological_keypoint_optimizer.h:16,
                 from /home/rui/gwm/proj/pixsfm/pixel-perfect-sfm/pixsfm/keypoint_adjustment/src/featuremetric_keypoint_optimizer.h:2,
                 from /home/rui/gwm/proj/pixsfm/pixel-perfect-sfm/pixsfm/keypoint_adjustment/bindings.cc:8:
/home/rui/gwm/proj/pixsfm/pixel-perfect-sfm/pixsfm/base/src/cubic_hermite_spline_simd.h:22:19: note: called from here
   _mm256_storeu_pd(data, val);
   ~~~~~~~~~~~~~~~~^~~~~~~~~~~
pixsfm/CMakeFiles/pypixsfm.dir/build.make:121: recipe for target 'pixsfm/CMakeFiles/pypixsfm.dir/keypoint_adjustment/bindings.cc.o' failed
make[2]: *** [pixsfm/CMakeFiles/pypixsfm.dir/keypoint_adjustment/bindings.cc.o] Error 1
make[2]: *** Waiting for unfinished jobs....
In file included from /usr/lib/gcc/x86_64-linux-gnu/7/include/immintrin.h:41:0,
                 from /home/rui/gwm/proj/pixsfm/pixel-perfect-sfm/pixsfm/base/src/cubic_hermite_spline_simd.h:15,
                 from /home/rui/gwm/proj/pixsfm/pixel-perfect-sfm/pixsfm/base/src/interpolation.h:22,
                 from /home/rui/gwm/proj/pixsfm/pixel-perfect-sfm/pixsfm/features/src/featurepatch.h:20,
                 from /home/rui/gwm/proj/pixsfm/pixel-perfect-sfm/pixsfm/features/src/dynamic_patch_interpolator.h:20,
                 from /home/rui/gwm/proj/pixsfm/pixel-perfect-sfm/pixsfm/features/bindings.cc:12:
/usr/lib/gcc/x86_64-linux-gnu/7/include/avxintrin.h: In function ‘void pixsfm::_mm256_storeu_pd_T(double*, const __m256d&)’:
/usr/lib/gcc/x86_64-linux-gnu/7/include/avxintrin.h:890:1: error: inlining failed in call to always_inline ‘void _mm256_storeu_pd(double*, __m256d)’: target specific option mismatch
 _mm256_storeu_pd (double *__P, __m256d __A)
 ^~~~~~~~~~~~~~~~
In file included from /home/rui/gwm/proj/pixsfm/pixel-perfect-sfm/pixsfm/base/src/interpolation.h:22:0,
                 from /home/rui/gwm/proj/pixsfm/pixel-perfect-sfm/pixsfm/features/src/featurepatch.h:20,
                 from /home/rui/gwm/proj/pixsfm/pixel-perfect-sfm/pixsfm/features/src/dynamic_patch_interpolator.h:20,
                 from /home/rui/gwm/proj/pixsfm/pixel-perfect-sfm/pixsfm/features/bindings.cc:12:
/home/rui/gwm/proj/pixsfm/pixel-perfect-sfm/pixsfm/base/src/cubic_hermite_spline_simd.h:22:19: note: called from here
   _mm256_storeu_pd(data, val);
   ~~~~~~~~~~~~~~~~^~~~~~~~~~~
pixsfm/CMakeFiles/pypixsfm.dir/build.make:108: recipe for target 'pixsfm/CMakeFiles/pypixsfm.dir/features/bindings.cc.o' failed
make[2]: *** [pixsfm/CMakeFiles/pypixsfm.dir/features/bindings.cc.o] Error 1
In file included from /usr/lib/gcc/x86_64-linux-gnu/7/include/immintrin.h:41:0,
                 from /home/rui/gwm/proj/pixsfm/pixel-perfect-sfm/pixsfm/base/src/cubic_hermite_spline_simd.h:15,
                 from /home/rui/gwm/proj/pixsfm/pixel-perfect-sfm/pixsfm/base/src/interpolation.h:22,
                 from /home/rui/gwm/proj/pixsfm/pixel-perfect-sfm/pixsfm/features/src/featurepatch.h:20,
                 from /home/rui/gwm/proj/pixsfm/pixel-perfect-sfm/pixsfm/features/src/dynamic_patch_interpolator.h:20,
                 from /home/rui/gwm/proj/pixsfm/pixel-perfect-sfm/pixsfm/localization/src/nearest_references.h:10,
                 from /home/rui/gwm/proj/pixsfm/pixel-perfect-sfm/pixsfm/localization/bindings.cc:7:
/usr/lib/gcc/x86_64-linux-gnu/7/include/avxintrin.h: In function ‘void pixsfm::_mm256_storeu_pd_T(double*, const __m256d&)’:
/usr/lib/gcc/x86_64-linux-gnu/7/include/avxintrin.h:890:1: error: inlining failed in call to always_inline ‘void _mm256_storeu_pd(double*, __m256d)’: target specific option mismatch
 _mm256_storeu_pd (double *__P, __m256d __A)
 ^~~~~~~~~~~~~~~~
In file included from /home/rui/gwm/proj/pixsfm/pixel-perfect-sfm/pixsfm/base/src/interpolation.h:22:0,
                 from /home/rui/gwm/proj/pixsfm/pixel-perfect-sfm/pixsfm/features/src/featurepatch.h:20,
                 from /home/rui/gwm/proj/pixsfm/pixel-perfect-sfm/pixsfm/features/src/dynamic_patch_interpolator.h:20,
                 from /home/rui/gwm/proj/pixsfm/pixel-perfect-sfm/pixsfm/localization/src/nearest_references.h:10,
                 from /home/rui/gwm/proj/pixsfm/pixel-perfect-sfm/pixsfm/localization/bindings.cc:7:
/home/rui/gwm/proj/pixsfm/pixel-perfect-sfm/pixsfm/base/src/cubic_hermite_spline_simd.h:22:19: note: called from here
   _mm256_storeu_pd(data, val);
   ~~~~~~~~~~~~~~~~^~~~~~~~~~~
pixsfm/CMakeFiles/pypixsfm.dir/build.make:147: recipe for target 'pixsfm/CMakeFiles/pypixsfm.dir/localization/bindings.cc.o' failed
make[2]: *** [pixsfm/CMakeFiles/pypixsfm.dir/localization/bindings.cc.o] Error 1
In file included from /usr/lib/gcc/x86_64-linux-gnu/7/include/immintrin.h:41:0,
                 from /home/rui/gwm/proj/pixsfm/pixel-perfect-sfm/pixsfm/base/src/cubic_hermite_spline_simd.h:15,
                 from /home/rui/gwm/proj/pixsfm/pixel-perfect-sfm/pixsfm/base/src/interpolation.h:22,
                 from /home/rui/gwm/proj/pixsfm/pixel-perfect-sfm/pixsfm/features/src/featurepatch.h:20,
                 from /home/rui/gwm/proj/pixsfm/pixel-perfect-sfm/pixsfm/residuals/src/feature_reference.h:8,
                 from /home/rui/gwm/proj/pixsfm/pixel-perfect-sfm/pixsfm/residuals/bindings.cc:9:
/usr/lib/gcc/x86_64-linux-gnu/7/include/avxintrin.h: In function ‘void pixsfm::_mm256_storeu_pd_T(double*, const __m256d&)’:
/usr/lib/gcc/x86_64-linux-gnu/7/include/avxintrin.h:890:1: error: inlining failed in call to always_inline ‘void _mm256_storeu_pd(double*, __m256d)’: target specific option mismatch
 _mm256_storeu_pd (double *__P, __m256d __A)
 ^~~~~~~~~~~~~~~~
In file included from /home/rui/gwm/proj/pixsfm/pixel-perfect-sfm/pixsfm/base/src/interpolation.h:22:0,
                 from /home/rui/gwm/proj/pixsfm/pixel-perfect-sfm/pixsfm/features/src/featurepatch.h:20,
                 from /home/rui/gwm/proj/pixsfm/pixel-perfect-sfm/pixsfm/residuals/src/feature_reference.h:8,
                 from /home/rui/gwm/proj/pixsfm/pixel-perfect-sfm/pixsfm/residuals/bindings.cc:9:
/home/rui/gwm/proj/pixsfm/pixel-perfect-sfm/pixsfm/base/src/cubic_hermite_spline_simd.h:22:19: note: called from here
   _mm256_storeu_pd(data, val);
   ~~~~~~~~~~~~~~~~^~~~~~~~~~~
pixsfm/CMakeFiles/pypixsfm.dir/build.make:160: recipe for target 'pixsfm/CMakeFiles/pypixsfm.dir/residuals/bindings.cc.o' failed
make[2]: *** [pixsfm/CMakeFiles/pypixsfm.dir/residuals/bindings.cc.o] Error 1
In file included from /usr/lib/gcc/x86_64-linux-gnu/7/include/immintrin.h:41:0,
                 from /home/rui/gwm/proj/pixsfm/pixel-perfect-sfm/pixsfm/base/src/cubic_hermite_spline_simd.h:15,
                 from /home/rui/gwm/proj/pixsfm/pixel-perfect-sfm/pixsfm/base/src/interpolation.h:22,
                 from /home/rui/gwm/proj/pixsfm/pixel-perfect-sfm/pixsfm/features/src/featurepatch.h:20,
                 from /home/rui/gwm/proj/pixsfm/pixel-perfect-sfm/pixsfm/features/src/featuremap.h:24,
                 from /home/rui/gwm/proj/pixsfm/pixel-perfect-sfm/pixsfm/bundle_adjustment/src/bundle_adjustment_options.h:19,
                 from /home/rui/gwm/proj/pixsfm/pixel-perfect-sfm/pixsfm/bundle_adjustment/bindings.cc:7:
/usr/lib/gcc/x86_64-linux-gnu/7/include/avxintrin.h: In function ‘void pixsfm::_mm256_storeu_pd_T(double*, const __m256d&)’:
/usr/lib/gcc/x86_64-linux-gnu/7/include/avxintrin.h:890:1: error: inlining failed in call to always_inline ‘void _mm256_storeu_pd(double*, __m256d)’: target specific option mismatch
 _mm256_storeu_pd (double *__P, __m256d __A)
 ^~~~~~~~~~~~~~~~
In file included from /home/rui/gwm/proj/pixsfm/pixel-perfect-sfm/pixsfm/base/src/interpolation.h:22:0,
                 from /home/rui/gwm/proj/pixsfm/pixel-perfect-sfm/pixsfm/features/src/featurepatch.h:20,
                 from /home/rui/gwm/proj/pixsfm/pixel-perfect-sfm/pixsfm/features/src/featuremap.h:24,
                 from /home/rui/gwm/proj/pixsfm/pixel-perfect-sfm/pixsfm/bundle_adjustment/src/bundle_adjustment_options.h:19,
                 from /home/rui/gwm/proj/pixsfm/pixel-perfect-sfm/pixsfm/bundle_adjustment/bindings.cc:7:
/home/rui/gwm/proj/pixsfm/pixel-perfect-sfm/pixsfm/base/src/cubic_hermite_spline_simd.h:22:19: note: called from here
   _mm256_storeu_pd(data, val);
   ~~~~~~~~~~~~~~~~^~~~~~~~~~~
pixsfm/CMakeFiles/pypixsfm.dir/build.make:134: recipe for target 'pixsfm/CMakeFiles/pypixsfm.dir/bundle_adjustment/bindings.cc.o' failed
make[2]: *** [pixsfm/CMakeFiles/pypixsfm.dir/bundle_adjustment/bindings.cc.o] Error 1
CMakeFiles/Makefile2:421: recipe for target 'pixsfm/CMakeFiles/pypixsfm.dir/all' failed
make[1]: *** [pixsfm/CMakeFiles/pypixsfm.dir/all] Error 2
Makefile:149: recipe for target 'all' failed
make: *** [all] Error 2
/home/rui/anaconda3/lib/python3.6/site-packages/setuptools/command/easy_install.py:159: EasyInstallDeprecationWarning: easy_install command is deprecated. Use build and pip and other standards-based tools.
  EasyInstallDeprecationWarning,
/home/rui/anaconda3/lib/python3.6/site-packages/setuptools/command/install.py:37: SetuptoolsDeprecationWarning: setup.py install is deprecated. Use build and pip and other standards-based tools.
  setuptools.SetuptoolsDeprecationWarning,
Traceback (most recent call last):
  File "<string>", line 1, in <module>
  File "/home/rui/gwm/proj/pixsfm/pixel-perfect-sfm/setup.py", line 126, in <module>
    package_data={'': ['configs/*.yaml']},
  File "/home/rui/anaconda3/lib/python3.6/site-packages/setuptools/__init__.py", line 153, in setup
    return distutils.core.setup(**attrs)
  File "/home/rui/anaconda3/lib/python3.6/distutils/core.py", line 148, in setup
    dist.run_commands()
  File "/home/rui/anaconda3/lib/python3.6/distutils/dist.py", line 955, in run_commands
    self.run_command(cmd)
  File "/home/rui/anaconda3/lib/python3.6/distutils/dist.py", line 974, in run_command
    cmd_obj.run()
  File "/home/rui/anaconda3/lib/python3.6/site-packages/setuptools/command/develop.py", line 34, in run
    self.install_for_development()
  File "/home/rui/anaconda3/lib/python3.6/site-packages/setuptools/command/develop.py", line 114, in install_for_development
    self.run_command('build_ext')
  File "/home/rui/anaconda3/lib/python3.6/distutils/cmd.py", line 313, in run_command
    self.distribution.run_command(command)
  File "/home/rui/anaconda3/lib/python3.6/distutils/dist.py", line 974, in run_command
    cmd_obj.run()
  File "/home/rui/gwm/proj/pixsfm/pixel-perfect-sfm/setup.py", line 55, in run
    self.build_extension(ext)
  File "/home/rui/gwm/proj/pixsfm/pixel-perfect-sfm/setup.py", line 99, in build_extension
    cwd=self.build_temp)
  File "/home/rui/anaconda3/lib/python3.6/subprocess.py", line 291, in check_call
    raise CalledProcessError(retcode, cmd)
subprocess.CalledProcessError: Command '['cmake', '--build', '.', '--config', 'Release', '--', '-j6']' returned non-zero exit status 2.
----------------------------------------

ERROR: Command errored out with exit status 1: /home/rui/anaconda3/bin/python -c 'import sys, setuptools, tokenize; sys.argv[0] = '"'"'/home/rui/gwm/proj/pixsfm/pixel-perfect-sfm/setup.py'"'"'; file='"'"'/home/rui/gwm/proj/pixsfm/pixel-perfect-sfm/setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open)(file);code=f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, file, '"'"'exec'"'"'))' develop --no-deps Check the logs for full command output.
Thanks

Hi @wolf943134497, there seems to be an error with SIMD vectorization. For a quick fix you can try to install the library with AVX2_ENABLED=OFF pip install -e ..
As to why these compile errors occur, do you know if your CPU supports AVX? On Linux you can check this with grep avx /proc/cpuinfo.

Hi @Phil26AT @Skydes Thanks for your suggestions! I use  the branch fix-gcc-4-8-5, and just fix the glog problem, now   pixsfm installed successfully. Thanks!

HI @Phil26AT , I try out  the branch fix-gcc-4-8-5 and run pip install -e .  ，but found errors:
[ 93%] Built target pypixsfm
[ 96%] Linking CXX shared module ../../../pixsfm/_pixsfm.cpython-37m-x86_64-linux-gnu.so
/usr/bin/ld: /usr/local/lib/libpython3.7m.a(abstract.o): relocation R_X86_64_32S against `_Py_NotImplementedStruct' can not be used when making a shared object; recompile with -fPIC
/usr/local/lib/libpython3.7m.a: error adding symbols: Bad value
collect2: error: ld returned 1 exit status
pixsfm/CMakeFiles/_pixsfm.dir/build.make:128: recipe for target '../../pixsfm/_pixsfm.cpython-37m-x86_64-linux-gnu.so' failed
make[2]: *** [../../pixsfm/_pixsfm.cpython-37m-x86_64-linux-gnu.so] Error 1
CMakeFiles/Makefile2:311: recipe for target 'pixsfm/CMakeFiles/_pixsfm.dir/all' failed
make[1]: *** [pixsfm/CMakeFiles/_pixsfm.dir/all] Error 2
Makefile:127: recipe for target 'all' failed
make: *** [all] Error 2
/usr/local/lib/python3.7/distutils/dist.py:274: UserWarning: Unknown distribution option: 'long_description_content_type'
warnings.warn(msg)
Traceback (most recent call last):
File "", line 1, in
File "/work/pixel-perfect-sfm/setup.py", line 126, in
package_data={'': ['configs/*.yaml']},
File "/usr/local/lib/python3.7/site-packages/setuptools/init.py", line 129, in setup
return distutils.core.setup(**attrs)
File "/usr/local/lib/python3.7/distutils/core.py", line 148, in setup
dist.run_commands()
File "/usr/local/lib/python3.7/distutils/dist.py", line 966, in run_commands
self.run_command(cmd)
File "/usr/local/lib/python3.7/distutils/dist.py", line 985, in run_command
cmd_obj.run()
File "/usr/local/lib/python3.7/site-packages/setuptools/command/develop.py", line 36, in run
self.install_for_development()
File "/usr/local/lib/python3.7/site-packages/setuptools/command/develop.py", line 136, in install_for_development
self.run_command('build_ext')
File "/usr/local/lib/python3.7/distutils/cmd.py", line 313, in run_command
self.distribution.run_command(command)
File "/usr/local/lib/python3.7/distutils/dist.py", line 985, in run_command
cmd_obj.run()
File "/work/pixel-perfect-sfm/setup.py", line 55, in run
self.build_extension(ext)
File "/work/pixel-perfect-sfm/setup.py", line 99, in build_extension
cwd=self.build_temp)
File "/usr/local/lib/python3.7/subprocess.py", line 341, in check_call
raise CalledProcessError(retcode, cmd)
subprocess.CalledProcessError: Command '['cmake', '--build', '.', '--config', 'Release', '--', '-j']' returned non-zero exit status 2.

This confirms that the original issue is solved
The new error is due to your Python installation not providing a shared library. This is not a pixsfm issue, a quick search with this error message brings up many results, such as this SO thread. I guess that your Python install was built in a non-standard way like pyenv; hard to say without more details.

Closing this for now.

Modify line10 in CMakelist.txt ‘set(CMAKE_CXX_STANDARD 14)’，change 11 to 14. This works for me.

HI @Phil26AT , I try out the branch fix-gcc-4-8-5 and run pip install -e . ，but found errors:
[ 93%] Built target pypixsfm [ 96%] Linking CXX shared module ../../../pixsfm/_pixsfm.cpython-37m-x86_64-linux-gnu.so /usr/bin/ld: /usr/local/lib/libpython3.7m.a(abstract.o): relocation R_X86_64_32S against `_Py_NotImplementedStruct' can not be used when making a shared object; recompile with -fPIC /usr/local/lib/libpython3.7m.a: error adding symbols: Bad value collect2: error: ld returned 1 exit status pixsfm/CMakeFiles/_pixsfm.dir/build.make:128: recipe for target '../../pixsfm/_pixsfm.cpython-37m-x86_64-linux-gnu.so' failed make[2]: *** [../../pixsfm/_pixsfm.cpython-37m-x86_64-linux-gnu.so] Error 1 CMakeFiles/Makefile2:311: recipe for target 'pixsfm/CMakeFiles/_pixsfm.dir/all' failed make[1]: *** [pixsfm/CMakeFiles/_pixsfm.dir/all] Error 2 Makefile:127: recipe for target 'all' failed make: *** [all] Error 2 /usr/local/lib/python3.7/distutils/dist.py:274: UserWarning: Unknown distribution option: 'long_description_content_type' warnings.warn(msg) Traceback (most recent call last): File "", line 1, in File "/work/pixel-perfect-sfm/setup.py", line 126, in package_data={'': ['configs/*.yaml']}, File "/usr/local/lib/python3.7/site-packages/setuptools/init.py", line 129, in setup return distutils.core.setup(**attrs) File "/usr/local/lib/python3.7/distutils/core.py", line 148, in setup dist.run_commands() File "/usr/local/lib/python3.7/distutils/dist.py", line 966, in run_commands self.run_command(cmd) File "/usr/local/lib/python3.7/distutils/dist.py", line 985, in run_command cmd_obj.run() File "/usr/local/lib/python3.7/site-packages/setuptools/command/develop.py", line 36, in run self.install_for_development() File "/usr/local/lib/python3.7/site-packages/setuptools/command/develop.py", line 136, in install_for_development self.run_command('build_ext') File "/usr/local/lib/python3.7/distutils/cmd.py", line 313, in run_command self.distribution.run_command(command) File "/usr/local/lib/python3.7/distutils/dist.py", line 985, in run_command cmd_obj.run() File "/work/pixel-perfect-sfm/setup.py", line 55, in run self.build_extension(ext) File "/work/pixel-perfect-sfm/setup.py", line 99, in build_extension cwd=self.build_temp) File "/usr/local/lib/python3.7/subprocess.py", line 341, in check_call raise CalledProcessError(retcode, cmd) subprocess.CalledProcessError: Command '['cmake', '--build', '.', '--config', 'Release', '--', '-j']' returned non-zero exit status 2.

I have the same question, do you know how to solve it?

HI @Phil26AT , I try out the branch fix-gcc-4-8-5 and run pip install -e . ，but found errors:
[ 93%] Built target pypixsfm [ 96%] Linking CXX shared module ../../../pixsfm/_pixsfm.cpython-37m-x86_64-linux-gnu.so /usr/bin/ld: /usr/local/lib/libpython3.7m.a(abstract.o): relocation R_X86_64_32S against `_Py_NotImplementedStruct' can not be used when making a shared object; recompile with -fPIC /usr/local/lib/libpython3.7m.a: error adding symbols: Bad value collect2: error: ld returned 1 exit status pixsfm/CMakeFiles/_pixsfm.dir/build.make:128: recipe for target '../../pixsfm/_pixsfm.cpython-37m-x86_64-linux-gnu.so' failed make[2]: *** [../../pixsfm/_pixsfm.cpython-37m-x86_64-linux-gnu.so] Error 1 CMakeFiles/Makefile2:311: recipe for target 'pixsfm/CMakeFiles/_pixsfm.dir/all' failed make[1]: *** [pixsfm/CMakeFiles/_pixsfm.dir/all] Error 2 Makefile:127: recipe for target 'all' failed make: *** [all] Error 2 /usr/local/lib/python3.7/distutils/dist.py:274: UserWarning: Unknown distribution option: 'long_description_content_type' warnings.warn(msg) Traceback (most recent call last): File "", line 1, in File "/work/pixel-perfect-sfm/setup.py", line 126, in package_data={'': ['configs/*.yaml']}, File "/usr/local/lib/python3.7/site-packages/setuptools/init.py", line 129, in setup return distutils.core.setup(**attrs) File "/usr/local/lib/python3.7/distutils/core.py", line 148, in setup dist.run_commands() File "/usr/local/lib/python3.7/distutils/dist.py", line 966, in run_commands self.run_command(cmd) File "/usr/local/lib/python3.7/distutils/dist.py", line 985, in run_command cmd_obj.run() File "/usr/local/lib/python3.7/site-packages/setuptools/command/develop.py", line 36, in run self.install_for_development() File "/usr/local/lib/python3.7/site-packages/setuptools/command/develop.py", line 136, in install_for_development self.run_command('build_ext') File "/usr/local/lib/python3.7/distutils/cmd.py", line 313, in run_command self.distribution.run_command(command) File "/usr/local/lib/python3.7/distutils/dist.py", line 985, in run_command cmd_obj.run() File "/work/pixel-perfect-sfm/setup.py", line 55, in run self.build_extension(ext) File "/work/pixel-perfect-sfm/setup.py", line 99, in build_extension cwd=self.build_temp) File "/usr/local/lib/python3.7/subprocess.py", line 341, in check_call raise CalledProcessError(retcode, cmd) subprocess.CalledProcessError: Command '['cmake', '--build', '.', '--config', 'Release', '--', '-j']' returned non-zero exit status 2.

Hi, I meet the same error as yours, have you solved it? Thanks~

@wolf943134497 你好， 我是LIO-wheel-fusion 项目 这个原始仓库的主人，吴新锐。 lio-wheel-fusion工程， 是我们内部项目，因为设计项目保密协议
之前误上传至了github，现原始仓库 lio-wheel-fusion 已经删除， 请您看到此消息后， 删除此 fork 得到的仓库， 谢谢合作！！！！
或者看到此条消息后，尽快联系邮箱  916806487 或者电话<PHONE_NUMBER>5！！  谢谢合作！！
如有疑问请联系<EMAIL_ADDRESS> 或者电话致电<PHONE_NUMBER>5 ，谢谢合作！


detach two CI for documentation

Motivation
I setup two CIs for our documents.

execute-notebook.yml. Whenever there is PR to the main branch, this CI will be launched, to make sure modified API's accuracy.
deploy-docs.yml. Only when manually launched or a new release in it. (python/sglang/version.py changed.)

Modifications

Modified two yml configuration.
Checklist

[X] Format your code according to the Contributor Guide.
[X] Add unit tests as outlined in the Contributor Guide.
[X] Update documentation as needed, including docstrings or example tutorials.

deploy docs should also run with every commit

When docs changed, it should be triggered


[feature] Specify heroku region

For those of us who live in Europe it would be great if we could pass an optional parameter to heroku apps:create command to choose region. Something like: suspenders my_app --heroku true --heroku-region eu

Thanks, @lenart. This would be nice to support. I think we'll get this in via https://github.com/thoughtbot/suspenders/pull/468


Can't run in readthedocs

Hi @minrk we have a jupyterbook project where we install fenics with conda.
Two days ago it worked fine and today we started noticing errors in the read the docs build.
It seems to be a JIT problem:
------------------- Start compiler output ------------------------
/usr/bin/ld: cannot find /lib64/libpthread.so.0: No such file or directory
/usr/bin/ld: cannot find /usr/lib64/libpthread_nonshared.a: No such file or directory
collect2: error: ld returned 1 exit status
-------------------  End compiler output  ------------------------
Compilation failed! Sources, command, and errors have been written to: /home/docs/checkouts/readthedocs.org/user_builds/festim-vv-report/checkouts/35/report/validation/plasma-driven-permeation/jitfailure-dolfin_expression_a3e880d7e745db7ff656246e44892686

I see there have been changes recently to this repo, could this be related?
Thanks!
Full error message:
---------------------------------------------------------------------------
DijitsoError                              Traceback (most recent call last)
File ~/checkouts/readthedocs.org/user_builds/festim-vv-report/conda/35/lib/python3.11/site-packages/dolfin/jit/jit.py:165, in compile_class(cpp_data, mpi_comm)
    164 try:
--> 165     module, signature = dijitso_jit(cpp_data, module_name, params,
    166                                     generate=cpp_data['jit_generate'],
    167                                     mpi_comm=mpi_comm)
    168     submodule = dijitso.extract_factory_function(module, "create_" + module_name)()

File ~/checkouts/readthedocs.org/user_builds/festim-vv-report/conda/35/lib/python3.11/site-packages/dolfin/jit/jit.py:47, in mpi_jit_decorator.<locals>.mpi_jit(*args, **kwargs)
     46 if MPI.size(mpi_comm) == 1:
---> 47     return local_jit(*args, **kwargs)
     49 # Default status (0 == ok, 1 == fail)

File ~/checkouts/readthedocs.org/user_builds/festim-vv-report/conda/35/lib/python3.11/site-packages/dolfin/jit/jit.py:103, in dijitso_jit(*args, **kwargs)
    101 @mpi_jit_decorator
    102 def dijitso_jit(*args, **kwargs):
--> 103     return dijitso.jit(*args, **kwargs)

File ~/checkouts/readthedocs.org/user_builds/festim-vv-report/conda/35/lib/python3.11/site-packages/dijitso/jit.py:216, in jit(jitable, name, params, generate, send, receive, wait)
    214 if err_info:
    215     # TODO: Parse output to find error(s) for better error messages
--> 216     raise DijitsoError("Dijitso JIT compilation failed, see '%s' for details"
    217                        % err_info['fail_dir'], err_info)
    219 # Return built library and its signature

DijitsoError: Dijitso JIT compilation failed, see '/home/docs/checkouts/readthedocs.org/user_builds/festim-vv-report/checkouts/35/report/validation/plasma-driven-permeation/jitfailure-dolfin_expression_a3e880d7e745db7ff656246e44892686' for details

During handling of the above exception, another exception occurred:

RuntimeError                              Traceback (most recent call last)
Cell In[3], line 39
     19 my_model.boundary_conditions = [
     20     F.RecombinationFlux(
     21         Kr_0=1.0e-27 * (1.0 - 0.9999 * sp.exp(-6.0e-5 * F.t)),
   (...)
     26     F.RecombinationFlux(Kr_0=2.0e-31, E_Kr=0, surfaces=[2], order=2),
     27 ]
     29 flux = sp.Piecewise(
     30     (4.9e19, F.t < 5820),
     31     (0, F.t < 9060),
   (...)
     36     (0, True),
     37 )
     38 my_model.sources = [
---> 39     F.ImplantationFlux(flux=flux, imp_depth=12e-9, width=2.4e-9, volume=1)
     40 ]
     42 my_model.T = F.Temperature(500)  # ignored here
     44 left_flux = F.SurfaceFlux(surface=1, field="solute")

File ~/checkouts/readthedocs.org/user_builds/festim-vv-report/conda/35/lib/python3.11/site-packages/festim/sources/source_implantation_flux.py:42, in ImplantationFlux.__init__(self, flux, imp_depth, width, volume)
     36 distribution = (
     37     1
     38     / (self.width * (2 * np.pi) ** 0.5)
     39     * sp.exp(-0.5 * ((x - self.imp_depth) / self.width) ** 2)
     40 )
     41 value = self.flux * distribution
---> 42 super().__init__(value, volume, field="0")

File ~/checkouts/readthedocs.org/user_builds/festim-vv-report/conda/35/lib/python3.11/site-packages/festim/sources/source.py:31, in Source.__init__(self, value, volume, field)
     29     self.value = Constant(value)
     30 elif isinstance(value, sp.Expr):
---> 31     self.value = Expression(sp.printing.ccode(value), t=0, degree=2)
     32 elif isinstance(value, (Expression, UserExpression, Function)):
     33     self.value = value

File ~/checkouts/readthedocs.org/user_builds/festim-vv-report/conda/35/lib/python3.11/site-packages/dolfin/function/expression.py:400, in Expression.__init__(self, cpp_code, *args, **kwargs)
    397         if not isinstance(k, str):
    398             raise KeyError("User parameter key must be a string")
--> 400     self._cpp_object = jit.compile_expression(cpp_code, params)
    401     self._parameters = ExpressionParameters(self._cpp_object, params)
    403 if element and degree:

File ~/checkouts/readthedocs.org/user_builds/festim-vv-report/conda/35/lib/python3.11/site-packages/dolfin/function/jit.py:158, in compile_expression(statements, properties)
    154 mpi_comm = properties.pop("mpi_comm", MPI.comm_world)
    155 cpp_data = {'statements': statements, 'properties': properties,
    156             'name': 'expression', 'jit_generate': jit_generate}
--> 158 expression = compile_class(cpp_data, mpi_comm=mpi_comm)
    159 return expression

File ~/checkouts/readthedocs.org/user_builds/festim-vv-report/conda/35/lib/python3.11/site-packages/dolfin/jit/jit.py:170, in compile_class(cpp_data, mpi_comm)
    168     submodule = dijitso.extract_factory_function(module, "create_" + module_name)()
    169 except Exception:
--> 170     raise RuntimeError("Unable to compile C++ code with dijitso")
    172 if name == 'expression':
    173     python_object = cpp.function.make_dolfin_expression(submodule)

RuntimeError: Unable to compile C++ code with dijitso

I found this post  that seems related

Almost certainly related to the updates since I saw the same error during the update process. I'm not sure why you are seeing it when it was fixed in the test env, though. The build was fixed with patches to the pkgconfig files to make sure sysroot is in the library search path.
Can you tell if the conda env is fully activated in your build environment? (LDFLAGS, CFLAGS, etc. will be set)

Can you tell if the conda env is fully activated in your build environment? (LDFLAGS, CFLAGS, etc. will be set)

I'm not sure I know how to do this. Is there a way to do it/see it in RTD?
I forgot to mention that everything works fine locally

@minrk I tried to run echo commands but didn't seem to work.
[rtd-command-info] start-time: 2024-06-24T17:58:29.212405Z, end-time: 2024-06-24T17:58:29.722207Z, duration: 0, exit-code: 0
jupyter-book config sphinx report/
Wrote conf.py to /home/docs/checkouts/readthedocs.org/user_builds/festim-vv-report/checkouts/35/report

[rtd-command-info] start-time: 2024-06-24T17:58:29.749937Z, end-time: 2024-06-24T17:58:29.811225Z, duration: 0, exit-code: 0
echo $LDFLAGS

[rtd-command-info] start-time: 2024-06-24T17:58:29.836619Z, end-time: 2024-06-24T17:58:29.898664Z, duration: 0, exit-code: 0
echo $CFLAGS

[rtd-command-info] start-time: 2024-06-24T17:58:30.251163Z, end-time: 2024-06-24T17:58:30.316216Z, duration: 0, exit-code: 0
cat report/conf.py

If echo doesn't work, you could get and print the env in your notebooks that are currently erroring via os.environ

this is the output of print(os.environ)
environ({'READTHEDOCS_CANONICAL_URL': 'https://festim-vv-report--35.org.readthedocs.build/en/35/', 'HOSTNAME': 'build-24797483-project-1052576-festim-vv-report', 'READTHEDOCS_GIT_CLONE_URL': 'https://github.com/festim-dev/V-V-report', 'HOME': '/home/docs', 'NO_COLOR': '1', 'READTHEDOCS': 'True', 'CONDA_ENVS_PATH': '/home/docs/checkouts/readthedocs.org/user_builds/festim-vv-report/conda', 'READTHEDOCS_PROJECT': 'festim-vv-report', 'READTHEDOCS_OUTPUT': '/home/docs/checkouts/readthedocs.org/user_builds/festim-vv-report/checkouts/35/_readthedocs/', 'PATH': '/home/docs/checkouts/readthedocs.org/user_builds/festim-vv-report/conda/35/bin:/home/docs/.asdf/shims:/home/docs/.asdf/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin', 'READTHEDOCS_VERSION_TYPE': 'external', 'LANG': 'C.UTF-8', 'READTHEDOCS_LANGUAGE': 'en', 'DEBIAN_FRONTEND': 'noninteractive', 'READTHEDOCS_GIT_COMMIT_HASH': '5e2a695677157167b9dd4292e08b3169d770bf5b', 'READTHEDOCS_VERSION_NAME': '35', 'CONDA_DEFAULT_ENV': '35', 'READTHEDOCS_VERSION': '35', 'PWD': '/home/docs/checkouts/readthedocs.org/user_builds/festim-vv-report/checkouts/35/report', 'READTHEDOCS_GIT_IDENTIFIER': '5e2a695677157167b9dd4292e08b3169d770bf5b', 'DOCUTILSCONFIG': '/home/docs/checkouts/readthedocs.org/user_builds/festim-vv-report/checkouts/35/report/docutils.conf', 'JPY_PARENT_PID': '2897', 'PYDEVD_USE_FRAME_EVAL': 'NO', 'TERM': 'xterm-color', 'CLICOLOR': '1', 'FORCE_COLOR': '1', 'CLICOLOR_FORCE': '1', 'PAGER': 'cat', 'GIT_PAGER': 'cat', 'MPLBACKEND': 'module://matplotlib_inline.backend_inline'})

Yeah, that means the activation script isn't running (I.e. conda activate envname).
The easiest workaround is probably to set LDFLAGS yourself, if properly activating the env is not an option, but I bet I can try to get whatever the missing one(s) in the default flags.

Does it work if you add the package gxx to the environment? My guess is that a system compiler is used, which won't work, but the gxx package is absent, which provides the default c++ executable.

I'm pretty confident #205 will fix this which means you should be able to fix it by adding gxx to your environment.
I can reproduce the problem in quay.io/condaforge/miniforge3 with:
mamba create -n dolfin fenics-dolfin mpich matplotlib-base
apt-get -y update; apt-get -y install g++ # install system compiler
# add env to PATH without activating it
export PATH=/opt/conda/envs/dolfin/bin:$PATH
python3 demo_poisson.py
# fails with
/usr/bin/ld: cannot find /lib64/libpthread.so.0
/usr/bin/ld: cannot find /usr/lib64/libpthread_nonshared.a
collect2: error: ld returned 1 exit status

mamba install -n dolfin gxx
python3 demo_poisson.py  # succeeds

This doesn't come up for properly activated environments because the activation scripts set $CXX, so the default c++ executable is not used.

Yes I confirm this fixed it! https://festim-vv-report--35.org.readthedocs.build/en/35/verification/mms/simple.html

Great! I'm not sure what changed that caused this to start failing, but good to know it's fixed. The next build will include the missing dependency on gxx.


Tool for timing the latency of feature extractor module

Currently, FeatureExtractorUtils only has a Pyserini interface and it has long processing time. We need a tool to timing the module.
By doing that, we can debug and detect time usage on per feature per doc etc.

@nsndimt Do you want the timing tool be a separate Java class like what you did for cmd interface or after talked to @yuki617 , maybe we can add timing in https://github.com/castorini/anserini/blob/ca3aec84326a7506e6c1e8a9f79f52994e35cbd6/src/main/java/io/anserini/ltr/FeatureExtractorUtils.java#L91 this function

Depends on how heavy-weight the timing code is... you should measure the performance impact of having timing instructions, because we don't want the act of measurement to slow down the code itself...

@stephaniewhoo can this issue be closed? #1389 is merged, right?

yes, closed by merged #1389


Redirect users without translator/developer roles to login/projects list

This should solve the recent problems we've been having on Penguins. This ensures that anyone who tries to access a project's translation screen has credentials to be able to submit translations. Otherwise it redirects you to the login/projects list.

@chrissnyder deployed and it works, thanks!


Classification blog

Issue #, if available:
Description of changes:
add dog classification script
By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

Job PR-234-10 is done.
Docs are uploaded to http://autogluon-staging.s3-website-us-west-2.amazonaws.com/PR-234/10/index.html

Job PR-234-11 is done.
Docs are uploaded to http://autogluon-staging.s3-website-us-west-2.amazonaws.com/PR-234/11/index.html

Job PR-234-12 is done.
Docs are uploaded to http://autogluon-staging.s3-website-us-west-2.amazonaws.com/PR-234/12/index.html

Job PR-234-13 is done.
Docs are uploaded to http://autogluon-staging.s3-website-us-west-2.amazonaws.com/PR-234/13/index.html

Hi @larroy , has the contributor addressed all your concerns?

Job PR-234-15 is done.
Docs are uploaded to http://autogluon-staging.s3-website-us-west-2.amazonaws.com/PR-234/15/index.html

Job PR-234-16 is done.
Docs are uploaded to http://autogluon-staging.s3-website-us-west-2.amazonaws.com/PR-234/16/index.html

Job PR-234-17 is done.
Docs are uploaded to http://autogluon-staging.s3-website-us-west-2.amazonaws.com/PR-234/17/index.html


Add rng to ProjectionPursuit

Codecov Report

Merging #164 (52560f0) into master (8655d4b) will increase coverage by 0.01%.
The diff coverage is 90.00%.

@@            Coverage Diff             @@
##           master     #164      +/-   ##
==========================================
+ Coverage   96.27%   96.28%   +0.01%
==========================================
  Files          27       27
  Lines         858      861       +3
==========================================
+ Hits          826      829       +3
  Misses         32       32

Impacted Files
Coverage Δ

src/transforms/projectionpursuit.jl
98.88% <90.00%> (+0.03%)
:arrow_up:

Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.


Make words wrap nicely over the line

Remove automated approach using buddysystem.js – it broke for single words marked up with both an a and an h1/h2/h3 tag
Add non-breaking spaces using \xA0 character
Turn off hyphenation

LGTM!

"Let's get this merged"


TST: assert_series/frame not comparing for categoricals

xref https://github.com/dask/partd/pull/7
In [1]: df1 = DataFrame({'A' : Series(list('aba')).astype('category', categories=list('ab'), ordered=True)})

In [2]: df2 = DataFrame({'A' : Series(list('aba')).astype('category', categories=list('ba'), ordered=True)})

In [3]: tm.assert_frame_equal(df1, df2)

In [11]: df2 = DataFrame({'A' : Series(list('aba')).astype('category', categories=list('ab'), ordered=False)})

In [12]: tm.assert_frame_equal(df1, df2)

In [13]: df2 = DataFrame({'A' : Series(list('aba')).astype('category', categories=list('ba'), ordered=False)})

In [14]: tm.assert_frame_equal(df1, df2)

all of these should fail as the ordered categoricals don't compare equal in the categories, and ordered is not being compared (nor categories)
Furthermore the assert_series_equal fail for the same.
assert_categorical_equal DOES the right thing, but not being called here. (not that this should say categories are not equal?)
In [17]: tm.assert_categorical_equal(df1.A.values, df2.A.values)
AssertionError: Index are different

Index values are different (100.0 %)
[left]:  Index([u'a', u'b'], dtype='object')
[right]: Index([u'b', u'a'], dtype='object')

cc @sinhrks (on the assert_categorical_equal question)

Correct. In addition, CategoricalIndex should also check internal Categorical.
I've once tried this, and founds lots of errors including stata. Needs some time to check it one by one...

https://github.com/pydata/pandas/compare/master...sinhrks:test_strict?expand=1

maybe lets do in 2 stages
first fix assert_categorical_equal then series/frame

Let me clarify... 2 stages are:

Fix assert_categorical_equal to show correct assertion message (say categories are different or something)
Fix assert_frame/series/index_equal to call assert_categorical_equal internally.

yep might be less invasive that way
and for series/frame could have an option that we gradually turn on so can do the change in pieces (not ideal but could be lots of test comparison issues)


Add example with linting

Under examples, with standard + jsx support

What do you want the example to do?

Basically just the ability to run npm run lint. Just in case someone wants a starting point example with linting.
Obviously linting has to work with jsx etc.

@rauchg XO? We have it on all of your projects atm... 😊

I believe we did this @impronunciable ?


Enhance CSS in about.html and login.html file. also fixed the issuse …

…of accessiblity on various devices and screen sizes in these files

Sure I will work on it


[otp_ctrl invalidated default

@msfschaffner i wanted to get your thoughts on this.
Eventually when the design freezes, software may still make updates to the sw cfg space (since that is allowed).
However, it seems like updates to the software space end up changing the invalidated default, see #12570.
This is probably not desirable right? because it would mean the design itself may change after freeze for a software only change.
Or am I reading this wrong, and it's going to end up being all 0's anyways? (just sliced differently)

Hey @tjaychen - good point! It depends on whether the invalidated default ends up being set to inv_default: "<random>" or not in the Hjson file. If nothing is specified, the inv_default is just set to zero. On top of that, the inv_default is not relevant for SW partitions, since these are not buffered and fed to HW via signals (so we shouldn't set the inv_default to <random> anyways). So effectively, while an updated does affect an RTL file, it will just slice the all-zero vector differently...

sounds good! then we probably don't need to worry about this.
let me close this for now. Do you think we should add a generation error check that inv_default: random cannot be used for software type partitions?

@msfschaffner thanks for the comment, yea, current IP level OTP dv does not pre-load OTP images. It will require some script and scoreboard update to get that supported but happy to accommodate that.

Hey @cindychip! I actually wasn't referring to preloading the image in the IP-level testbench, but rather re-locating the files. I.e., once we run this through IPgen, the RTL files will be placed under hw/top_earlgrey/ instead of hw/ip/ in the same way as we do it with the alert handler and the plic today - and this will require SW, DV and documentation updates...

ohhh! Got it. Thanks for clarifying! That is totally fine for DV.


[feature request] configurable background color for selected items

[x] I have read through the manual page (man fzf)
[x] I have the latest version of fzf
[x] I have searched through the existing issues

Info

OS

[x] Linux
[ ] Mac OS X
[ ] Windows
[ ] Etc.

Shell

[x] bash
[x] zsh
[ ] fish

Feature request
At the moment 12 colors can be configured (as explained here and beautifully illustrated here). I suggest adding two one more argument to control the background color of the selected items. This would help them to visually stand out. Something like the following:

What would be the background color of a selected item that is on the current cursor position?

At the moment 12 colors can be configured

There are more than 12. See https://github.com/junegunn/fzf/blob/f7447aece12f9b95133b803d5c4f71815bee8ca6/man/man1/fzf.1#L421-L443


Implement likelihood/posterior distinction (in output of estimators and ingestion in summarizers)

Not all summarizers are compatible with all types of estimators. RAIL implements methods that are conditional density estimates; others evaluate likelihoods. Summarizers that deconvolve individual galaxy redshift likelihoods would not necessarily be compatible with conditional density estimates. Similarly, summarizers that expect conditional density estimates would not give sensible results for likelihoods.
Ensuring that a summarizer can only be used with a correct estimator would be helpful. This could be maybe ensured using a factory pattern for summarizers and estimators.

This boils down to RAIL estimators associating a keyword to their output ensembles for "likelihood" or "posterior," but it touches on the related requirement for #14 to have creators and estimators associate "reference" or "estimate" to their output ensembles to be checked before calculating certain metrics.

I would like to add to this particular issue and mention that my yet_another_wizz wrapper produces jackknife samples, which have a different variance than bootstrap samples that one might naively expect. For now I will just tag the resulting Ensembles with some metadata that indicate this fact.


Upgrade GH action

see https://github.com/chainguard-images/actions/pull/129
TODO: Ideally, we would also fix the tag of the apko image so the GH action does not break by it self.

/approve
/lgtm

Ah, this repo does not have an owners file

I'll fix that!

(Manually created + added approved and lgtm labels)


[RFE]: Adding excel as format to be exported

Hoping excel format will be added in addition to csv and txt.

CSV can be opened in excel, is there anything missing from these CSV when you open them?

Yes, excel can be derived after exported csv file. but csv doen't have chart/pivot info.
I am hoping one can export following ESXi OS info chart into excel format.

@tjyang I think you're better off creating a chart report in manageiq and using that, definitely for now :).
Supporting excel exports is nontrivial but possible. Supporting excel charts however.. is probably possible, but sounds like months of work, and essentially means creating a new charting backend for that.
(It may be possible to embed the already existing chart as an image in the excel export, but, that's probably not what you want :).)
@dclarizio WDYT?

@tjyang @himdel I'm pretty sure downloading report data in csv format has the pivot data you want, but it's in the raw rows and not subtotaled the way Excel might want it.  If there is a way to represent the pivots differently in csv (so Excel can work with them), perhaps we could change the formatter to do it.  Support for a native Excel format is not something we have seen much demand for.
However, this is open source, so if you want to add a new report formatter for potential inclusion into ManageIQ, we would welcome it.  :)

@dclarizio  and @himdel , thanks for the responses. If my organization ending up using manageiq we might be able find resources to implement this feature that we need.

Closing as we probably won't implement this directly, unless perhaps there's a way for us to add more data into the CSV to aid those using Excel.  @tjyang if you have suggestions for how we could enhance the csv data, please open a separate issue.  Thanks!


Compatibility with list.js

How would you make this plugin compatible with list.js?
https://github.com/javve/list.js

Hey @wolffe.
It seems the listjs site is offline! But Im sure you can solve most of it be triggering the images you add to the list by using either .load or .revalidate --> http://dinbror.dk/blog/blazy/#Functions

Feel free to reopen if you need more help


Found conflicts! - when creating the conda environment

At the step which prepares the environment to include all the necessary packages and conda files (Python 3.8.5 and Anaconda 3), and specifically at this command:
conda env create -n interpret_cpu --file=interpret_cpu.yaml
it fails to solve the environment and returns with the following error:
Found conflicts! Looking for incompatible packages.
Then it looks for these packages, and then it throws a list of incompatibilities.
When last time I worked with this repo, I worked with Python 3.7, but now I couldn't make it work with that version either. I've attached the yaml file as .txt, and another file with the error message I received.
error.txt
interpret_cpu.txt
Thank you in advance!

hi @ExOblivione , can you try with python 3.7?  What was the error and interpret_cpu.yml file for python 3.7?

It looked similar with Python 3.7, even when specifying which version to use when creating the yaml file and the environment.
I use Anaconda 3, this time I installed a bit differently, without being an official Python 3.8. When asking for the Python version inside of the Anaconda Prompt, it says Python 3.8.5... guess I could play around with Paths?

Yaml file when specifying the python version with the following code:
python tools/generate_conda_files.py --python-version 3.7.0
interpret_cpu.txt
Then I create an environment with the following code:
conda env create -n interpret_cpu --file=interpret_cpu.yaml python=3.7.0
The result is:
37error.txt

@ExOblivione closing this as fixed with https://github.com/interpretml/interpret-text/pull/153


Data Schema with characters incompatible with ascii

Overview
The Data Schema JSON will throw an error if it includes characters not compatible with ascii.
This happens due to the use of Swedish characters like "Ö" and "Ä".

This is the line of code where it happens. I made a quick workaround by replacing it with:
descriptor = json.loads(value.encode('utf-8'))
Just wanted to get some feedback on how to approach this, if there should be somewhere an option to declare the encoding of the file? Or you want a PR with this work around?

Please preserve this line to notify @amercader (maintainer of this repository)

I am also facing a similar issue that ckanext-validation is stripping french accents from the header names. We previously implemented a fix in xloader here: loader.py, but it seems that ckanext-validation does not go through the load_csv() function of xloader where the unidecode option can be checked.
Can you please advise where in ckanext-validation such a check can be made to preserve accents in the headers? Thanks!


Scrolling performance can be improved with switchMap

I noticed that in lists with a large number of items rendered, scrolling up and down repeatedly causes chrome to become temporarily unresponsive when the user stops scrolling. During this time the memory also temporarily spikes. I think this is because chrome is busy garbage collecting all the rendered dom elements that were removed from the previous scroll events.
To improve performane, you can replace the following line in ngOnInit:
this.onScrollListener = this.renderer.listen(this.elRef.nativeElement, 'scroll', this.refresh.bind(this));
with the following:
scroll$: Subject<Event> = new Subject<Event>();
@HostListener('scroll')
onScroll(e: Event) {
    this.scroll$.next();
  }

ngOnInit() {
    this.scroll$.switchMap(() => {
      this.refresh();
      return Observable.of();
    }).subscribe(() => {});
    // other code ...
}

With this change, the rendering of items from previous scroll events gets canceled and chrome stays responsive and the memory stays constant.

@awormasi, thanks for your help. Your solution works amazingly well. I will publish it with the next version.


openbytes

Added OpenBytes + Graviti (hosting)
Pre-submission checklist:
Please check each of these after submitting your pull request:

[ ] Are you only including a repo_url if your project is 100% open source? If so, you need to pick the single best GitHub repository for your project, not a GitHub organization.
[ ] Is your project closed source or, if it is open source, does your project have at least 250 GitHub stars?
[ ] Have you picked the single best (existing) category for your project?
[ ] Does it follow the other guidelines from the new entries section?
[ ] Have you included a URL for your SVG or added it to hosted_logos and referenced it there?
[ ] Does your logo clearly state the name of the project/product and follow the other logo guidelines?
[ ] Does your project/product name match the text on the logo?
[ ] Have you verified that the Crunchbase data for your organization is correct (including headquarters and LinkedIn)?
[ ] ~10 minutes after opening the pull request, the CNCF-Bot will post the URL for your staging server. Have you confirmed that it looks good to you and then added a comment to the PR saying "LGTM"?

Build failed because of:
Page: /, section Data
Education
Incubating
Incubating
Lineage
Sandbox
Relational DB
Store & Format
Graduated
Incubating
Versioning
Operations
Incubating
Incubating
Incubating
Feature Engineering
Incubating
Stream Processing
Incubating
SQL Engine
Visualization
Pipeline Management
Labeling & Annotation
Governance
Graduated
Sandbox is out of bound


⚠ Buyfrom.io has degraded performance

In 2314e1a, Buyfrom.io ($BUYFROM_IO_URL) experienced degraded performance:

HTTP code: 200
Response time: 19805 ms

Resolved: Buyfrom.io performance has improved in dc8eb3f.


chore: Fix failing onboarding specs

Description
This pull request adds a feature flag intercept for creating new apps. The intercept sets the "ab_create_new_apps_enabled" flag to false.
PR fixes following issue(s)
Fixes # (issue number)

if no issue exists, please create an issue and ask the maintainers about this first

Media

A video or a GIF is preferred. when using Loom, don’t embed because it looks like it’s a GIF. instead, just link to the video

Type of change

Please delete options that are not relevant.

Bug fix (non-breaking change which fixes an issue)
New feature (non-breaking change which adds functionality)
Breaking change (fix or feature that would cause existing functionality to not work as expected)
Chore (housekeeping or task changes that don't impact user perception)
This change requires a documentation update

Testing

How Has This Been Tested?

Please describe the tests that you ran to verify your changes. Also list any relevant details for your test configuration.
Delete anything that is not relevant

[ ] Manual
[ ] JUnit
[ ] Jest
[ ] Cypress

Test Plan

Add Testsmith test cases links that relate to this PR

Issues raised during DP testing

Link issues raised during DP testing for better visiblity and tracking (copy link from comments dropped on this PR)

Checklist:
Dev activity

[ ] My code follows the style guidelines of this project
[ ] I have performed a self-review of my own code
[ ] I have commented my code, particularly in hard-to-understand areas
[ ] I have made corresponding changes to the documentation
[ ] My changes generate no new warnings
[ ] I have added tests that prove my fix is effective or that my feature works
[ ] New and existing unit tests pass locally with my changes
[ ] PR is being merged under a feature flag

QA activity:

[ ] Speedbreak features have been covered
[ ] Test plan covers all impacted features and areas of interest
[ ] Test plan has been peer reviewed by project stakeholders and other QA members
[ ] Manually tested functionality on DP
[ ] We had an implementation alignment call with stakeholders post QA Round 2
[ ] Cypress test cases have been added and approved by SDET/manual QA
[ ] Added Test Plan Approved label after Cypress tests were reviewed
[ ] Added Test Plan Approved label after JUnit tests were reviewed

Summary by CodeRabbit

Tests

Implemented a feature flag check in end-to-end tests to simulate conditions when app creation is disabled for new signups.

/ok-to-test<EMAIL_ADDRESS>

/ok-to-test<EMAIL_ADDRESS>

/ok-to-test<EMAIL_ADDRESS>

/ok-to-test<EMAIL_ADDRESS>

Not required.


Require Maven 3.5.4+

By the way ... can  we brake some of build or IT with 3.2.5 when more of plugins start requiring 3.5.4

ok, in this repo we should also add mvn 3.5.4 to test matrix

I thought about another projects, which we can not know but which use build-helper in their ITs and try to execute under 3.2.5

By the way we have plan to switch to 3.5.4 so maybe we should starting switching build matrix to 3.5.4 as minimum.
On ASF jenkins we use 3.6.x and 3.8.x, on GitHub Actions default is 3.9.1

Yes, let's switch - should be transparent

I would like to release next version due to #173, I hope we can get it.


Consider the langcc LR(k) approach.

There's some recent work on a novel approach for building LR(k) parsers: Practical LR Parser Generation, Joe Zimmerman. His implementation is available under https://github.com/jzimmerman/langcc. I just thought you might find it interesting.
I haven't started implementing it yet, but I plan to, eventually, once I have a fast LALR(k) implementation.

Thanks for sharing, this is very helpful. I've been busy with other things recently but I'm planning to do some parsegen dev this weekend. I'll take a look at the paper.


change config linter from coco/r to ANTLR4

due to bugs the linter has to be updated
in that move, change the system from coco/r to antlr4 so that preprocessor can be used later on

done already


Bug opts.expectedFeeds ignored when stream present

In lib/replicate.js:15 we have the following code:
 if (!stream) {
    if (!opts.expectedFeeds) opts.expectedFeeds = 1
    if (!opts.id) opts.id = feed.id
    stream = protocol(opts)
  }

If a stream is not provided, then expectedFeeds is optionally lazy-initialized and the opts are passed onto hypercore-protocol
I'm attempting to replicate a hyperdrive by passing a stream:
drive.replicate({ stream: myStream })

Hyperdrive properly reports that it's a composite-core consisting of 2 feeds.
But when opts.stream was passed, then opts.expectedFeeds is completely ignored which causes hyperdrive to prematurely finish replication before the content core has been replicated.
I believe this is a bug and that a second condition should be added:
 if (!stream) {
    if (!opts.expectedFeeds) opts.expectedFeeds = 1
    if (!opts.id) opts.id = feed.id
    stream = protocol(opts)
  } else if (opts.expectedFeeds) {   // Fix
    stream.expectedFeeds += opts.expectedFeeds
  }

Can someone verify?

Sounds like a likely bug. In any case adding a test for that would be good :)

Wups, i didn't add a test for it, rather checked that previous tests didn't fail. which they did if you modify the initalization to more logically look like this:
 if (!opts.expectedFeeds) opts.expectedFeeds = 1 // unconditional lazy init
 if (!stream) {
    if (!opts.id) opts.id = feed.id
    stream = protocol(opts)
  } else {
    stream.expectedFeeds += opts.expectedFeeds
  }

OK so I've added the test now, but I've hit a snag, all tests pass on my environment but Travis reports that all test-runs fail across all environments... I can't replicate the bug locally.
To be honest I'm a little bit overwhelmed by this issue. Keeping track of when a replication stream has finished replicating all feeds using the expectedFeeds counter is not very safe.
For instance it requires all hypercore dependents that provide a replicate() method to properly increment stream.expectedFeeds by the amount of feed's that they intend join into the protocol stream.
In hyperdrive's case, it dosen't even increment it, just set's the value plainly to 2 - which introduces a racing condition if you're using the same protocol-stream to replicate a core that properly increments expectedFeeds.
There's also no standard way to query a hypercore-based model/composite-core for the amount of feed's it contains, so you can't workaround this issue on application level either.
So what I'm trying to say is that "fixing" this bug might just as well introduce more issues downstream... ( this issue does not affect 'live' streams )
Maybe a better idea is to redesign the current "Last feed ends the stream" logic in hypercore-protocol.
thoughts?

Very open to reimplementing it. We prob just need a way to tell the stream once it wants to end (when all current channels are closed) to wait incase we are adding a new channel asynchronously.

Yeah I understand the challenge, how about extending protocol with two new calls?
const stream = coreA.replicate()

stream.hold() //  stream.nholds++
setTimeout(() => {
  coreB.replicate({ stream }) // might invoke release/hold internally.
  coreC.replicate({ stream })
  stream.release() // stream.nrelease++
}, 1000)

stream.hold() //  stream.nholds++
setTimeout(() => {
  coreD.replicate({ stream })
  stream.release() // stream.nrelease++
}, 500)

stream.onFeedFinishedHandler = () => {
  if (!stream.feeds.length && stream.nrelease >= stream.hold) stream.end()
}

It should be backwards compatible with the downstream i hope.. but it feels like hitting the problem with a bigger rock when the smaller rock didn't produce sufficient results. hehehe

@telamon can be closed?

Yes! nano-guard fixed it :)


Fix bamboo rmdir failures

This is an attempt to stop lingering nfs files from breaking CI on bamboo.

Moved build directory to be peer of source directory instead of sub-directory of source
(note: Bamboo plan also modified to place source in a src directory or working dir)
Updated script to manually remove (rm -rf) the build directory and ignore/supress errors about lingering nfs files.
Both the build and test are now being performed on the compute node

@davidbeckingsale, this is ready for review.  All of the bamboo builds are now working for this branch.


US 02.07.01

As an owner, I want to filter the list of items by make.

[ ] Complete the item list, and item class #8

[ ] #142 : This issue will combine both the query and the filter.


resolution param

#22 - resolution
check if number on input (doesnt work on mobile Sadge)
default size = image size

preview

Thank you for your contribution but this is not what I envisioned. This kinda feature requires thorough thinking through and it's super easy to get it wrong and make a very frustrating UI.
I'm assigning it to myself and will see what I can come up with.


Fix Travis-CI build

This change should fix the failing builds on travis-ci.
I briefly tested it on my account and everything seems to work.
Not sure if this is the proper way to fix it since anyone who consumes this library and builds on travis ci needs to set the script to apt-get that pkg anyway, but I suppose it's better to see it in the config for the main repro.
Anyway it's way less painful than rust SDL on windows for example.

Thanks!