Code Monkey home page Code Monkey logo

usgs-astrogeology / isis3 Goto Github PK

View Code? Open in Web Editor NEW
192.0 27.0 165.0 387.71 MB

Integrated Software for Imagers and Spectrometers v3. ISIS3 is a digital image processing software package to manipulate imagery collected by current and past NASA and International planetary missions.

Home Page: https://isis.astrogeology.usgs.gov

License: Other

Makefile 2.20% QMake 0.01% Roff 0.05% 1C Enterprise 0.02% Shell 0.06% XSLT 1.49% Perl 0.10% Python 0.25% C++ 92.08% HTML 0.12% Batchfile 0.01% C 0.77% CSS 0.23% PHP 0.48% JavaScript 0.10% IDL 0.13% CMake 0.42% Dockerfile 0.01% Jupyter Notebook 0.73% Smarty 0.74%

isis3's People

Contributors

acpaquette avatar agoinsusgs avatar amystamile-usgs avatar astrokew78 avatar austinsanders avatar chkim-usgs avatar chrisryancombs avatar cneubauerusgs avatar dcookastro avatar emlee99 avatar gsn9 avatar jcwbacker avatar jessemapel avatar jlaura avatar jusflag avatar kaitlyndlee avatar kberryusgs avatar kelvinrr avatar kledmundson avatar krisbecker avatar ladoramkershner avatar makaylas avatar mosesastro avatar paarongiroux avatar rbeyer avatar scsides avatar sgstapleton avatar tgiroux avatar traciesucharski avatar twilson271828 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

isis3's Issues

How do we handle dependency changes?

We can handle dependency change in a channel like conda-forge by calling out exact versions of our dependencies, which we do now (see cmake branch's environment.yml file).


However, what do we do if requested package version is broken (see #446)?

  1. How do we handle when a channel (e.g. conda-forge) hosts a specific version of a package we require and it has its label edited to something other than main?

  2. What is conda-forge's process for dealing with broken labels? What does broken mean? Does it mean there is a known bug in curl7.55.1, or that conda-forge's build of that version is broken?

  3. Should our version requirements be exact (X.Y.Z with build number), a little bit flexible (>= X.1. < X.2), or more generic?

  4. How do other recipe maintainers, like conda-forge, handle dependency changes for their packages they host)?

Finish Code Review Checklist

We need to finish our code review checklist for ISIS3. I've copied it out of our google doc and into the wiki so it's publicly available. Please take a minute and read it over. Any questions, comments, proposed edits can be discussed here.

findfeatures - "Failed to get geometry mapping" error

Running findfeatures via isisminer and cluster jobs using isis3beta2018-09-18 (and I think last weeks run was under the beta public release - error there as well).

I get the following error for 7 images:
Program = findfeatures
Class = "PROGRAMMER ERROR"
Code = 3
Message = "Failed to get geometry mapping for

See example under /work/users/lweller/Isis3Tests/FindFeatures/GeometryError/. LOG file in the top directory is stdout/err captured via slurm (ignore the rsync failures - directories didn't exist).

The input fromlist, debuglog and isisminer _matcher.cmd files are under the subdirectory N1489047533_2_Network/. The match image with full path can be found in the LOG, print.prt and matcher.cmd files. Any reference file on my /scratch area have since been moved, but everything necessary to duplicate is available.

I have not tried to rerun these failed images outside the cluster environment, but I suspect they would fail as well on the astrovm.

Merge bundle xyz into dev

Prerequisites:

  • dev merged into bundle xyz
  • bundle xyz is approved (by Debbie/Ken)

Requirements:

  • bundle xyz merged into cmake
  • builds and tests successfully on Fedora28, Ubuntu18.04, and macOS10.13

Installation documentation for isis3.6.0 via conda

This issue can be worked on by multiple people. Tyler is currently iterating on the user-oriented installation guide (PR #443 ).

Update and review installation documentation for developers (in-house & external) and users.

The developer documentation is located on this GitHub's wiki.

The user documentation is our install guide hosted on our website (https://isis.astrogeology.usgs.gov)

User documentation:

  • Describes supported operating systems
  • Describes how to download isis3.6.0
  • Describes how to download isis3.6.0 data
  • Describes how to set up Linux/macOS environment for running isis3 applications

Developer documentation:

  • Describes operating systems supported for development
  • Describes how to download isis3.6.0 and dependencies for development
  • Describes how to download isis3.6.0 data for development
  • Describes how to download isis3.6.0 test data
  • Describes how to build and test isis3.6.0 (using cmake)
  • Describes PR process and expectations (CONTRIBUTING.md)

Create isis3.6.0 release candidate

Prerequisites:

  • Merge cmake into dev -- #457

Requirements:

  • create release branch (this is "freezing our code")
  • consider creating release-candidate tag
  • build and run tests
    • Fedora28
    • Ubuntu18.04
    • macOS10.13
  • upload Linux and macOS builds to anaconda
    • make sure to set version number appropriately (3.6.0-rc.0 or something like that) in meta file
  • Document these steps

Figure out why jigsaw test is giving different output on the same OS

The jigsaw test pole-ra-dec-w0-wDot-triaxial-radii is giving different output on different machines that are running MacOS 10.13. Prog27 and algol are giving the same output, while my machine is different.
Currently, a README.md file exists in the input saying that we know of this problem, however, it would be nice to know why this is happening. See the files below to see output.

Other output:
pole-ra-dec-w0-wDot-triaxial-radii_bundleout.txt

Prog27:
prog27Output.txt

$ISISDATA under version control

This is piggybacking off of #350:

When I look at the base data area, I see that the translations are ~420k of test files, applications are 28K of text files, and icons are ~3MB of pngs. Why aren't we keeping these under version control with the source? If the concern is the pngs, we can convert to SVG.

If this were the case, @rbeyer could submit a PR (or we could PR in the fix just as easily) to address #350.

Documentation on building ISIS3 don't match reality

I'm trying to build ISIS3 following the instructions in https://github.com/USGS-Astrogeology/ISIS3/wiki/Developing-ISIS3-with-cmake . At some point you say:

Set your ISISROOT to /the/path/to/your/build:
    setisis .

But there is no command setisis in my current environment.

I could assume you are trying to say $ set ISISROOT ., and considering the reader is using csh, but to this point, I learned that assuming may not be a good idea.

So, what should I do with this

Cannot install isis 3.6.0 with Anaconda

Hi there,

I'm attempting to follow the new installation instructions sent out with the e-mail today about the new release. When I enter:

conda install -c usgs-astrogeology isis3

I receive the following error message:

"Solving environment: failed

PackagesNotFoundError: The following packages are not available from current channels:

  • isis3
  • krb5==1.14.2=0
  • isis3
  • sqlite==3.13.0=1
  • isis3
  • mesalib==17.2.0=0
  • isis3
  • eigen==3.3.3=0
  • isis3
  • blas==1.1=openblas
  • isis3
  • libtiff==4.0.9=0
  • isis3
  • jpeg==9b=2
  • isis3
  • cspice==66-0
  • isis3
  • x264==20131218
  • isis3
  • xorg-kbproto==1.0.7=1
  • isis3
  • xorg-libxi
  • isis3
  • bzip2==1.0.6=1
  • isis3
  • cmake==3.9.1=0
  • isis3
  • geos==3.5.1
  • isis3
  • xorg-libsm
  • isis3
  • libxml2==2.9.7=0
  • isis3
  • mysql-connector-c==6.1.6=0
  • isis3
  • gmp==6.1.2=0
  • isis3
  • openblas==0.2.19=2
  • isis3
  • superlu==5.2.1=blas_openblas_201
  • isis3
  • xorg-libice
  • isis3
  • geotiff==1.4.2=1
  • isis3
  • armadillo==8.200.0
  • isis3
  • xorg-libx11==1.6.4=6
  • isis3
  • embree==2.14.0=0
  • isis3
  • suitesparse==4.5.4=blas_openblas_200
  • isis3
  • doxygen==1.8.14=0
  • isis3
  • nanoflann==1.2.2
  • isis3
  • nn==1.86.0=2
  • isis3
  • hdf5==1.8.18=2
  • isis3
  • openssl==1.0.2n=0
  • isis3
  • gsl==2.2.1=blas_openblas_3
  • isis3
  • icu==58.2=0
  • isis3
  • curl==7.60.0=0

Current channels:

Any idea what might be causing the error, and how I might fix it?

Thanks, Catherine

Pluto and Charon not in pdsImageProjection.trn

This isn't about the code in this repo, but about the contents of one of the files in $ISIS3DATA, specifically: $ISIS3DATA/base/translations/pdsImageProjection.trn

In the 'TargetName' group, neither Pluto nor Charon appear. Its been three years since New Horizons flew by, maybe time for those to be in there.

Linking error on CentOS 7.x

With the new cmake development environment linking fails on CentOS 7.x

commands:

cd ./isis
conda env create -n isis3 -f environment.yml
source activate isis3
mkdir build
cd build
cmake .. (cmake flags not included)
make
 

error:

[ 40%] Linking CXX shared library ../lib/libisis3.so
[ 40%] Built target isis3
Scanning dependencies of target voyager
[ 40%] Building CXX object objects/CMakeFiles/voyager.dir/voyager/objs/VoyagerCamera/VoyagerCamera.cpp.o
[ 40%] Linking CXX shared library ../lib/libvoyager.so
[ 40%] Built target voyager
Scannig dependencies of target voycal_app
[ 40%] Building CXX object objects/CMakeFiles/voycal_app.dir/voyager/apps/voycal/voycal.cpp.o
[ 40%] Linking CXX executable ../bin/voycal
../lib/libisis3.so: error: undefined reference to 'pcl::io::load(std::string const&, pcl::PolygonMesh&)'
../lib/libisis3.so: error: undefined reference to 'geos::io::WKTReader::read(std::string const&)'
../lib/libisis3.so: error: undefined reference to 'geos::io::WKTWriter::write(geos::geom::Geometry const*)'
../lib/libisis3.so: error: undefined reference to 'geos::geom::Coordinate::toString() const'
../lib/libisis3.so: error: undefined reference to 'geos::operation::valid::TopologyValidationError::toString()'
../lib/libisis3.so: error: undefined reference to 'google::protobuf::internal::fixed_address_empty_string'
../lib/libisis3.so: error: undefined reference to 'google::protobuf::internal::WireFormatLite::ReadBytes(google::protobuf::io::CodedInputStream*, std::string*)'
../lib/libisis3.so: error: undefined reference to 'google::protobuf::io::CodedOutputStream::WriteStringWithSizeToArray(std::string const&, unsigned char*)'
../lib/libisis3.so: error: undefined reference to 'google::protobuf::internal::AssignDescriptors(std::string const&, google::protobuf::internal::MigrationSchema const*, google::protobuf::Message const* const*, unsigned int const*, google::protobuf::MessageFactory*, google::protobuf::Metadata*, google::protobuf::EnumDescriptor const**, google::protobuf::ServiceDescriptor const**)'
../lib/libisis3.so: error: undefined reference to 'google::protobuf::MessageFactory::InternalRegisterGeneratedFile(char const*, void (*)(std::string const&))'
../lib/libisis3.so: error: undefined reference to 'google::protobuf::internal::WireFormatLite::WriteStringMaybeAliased(int, std::string const&, google::protobuf::io::CodedOutputStream*)'
../lib/libisis3.so: error: undefined reference to 'google::protobuf::Message::GetTypeName() const'
../lib/libisis3.so: error: undefined reference to 'google::protobuf::Message::InitializationErrorString() const'
../lib/libisis3.so: error: undefined reference to 'google::protobuf::internal::OnShutdownDestroyString(std::string const*)'
collect2: error: ld returned 1 exit status
make[2]: *** [objects/CMakeFiles/voycal_app.dir/build.make:290: bin/voycal] Error 1
make[1]: *** [CMakeFiles/Makefile2:2806: objects/CMakeFiles/voycal_app.dir/all] Error 2
make: *** [Makefile:141: all] Error 2

isis3 version defined in multiple places

The isis3 version is defined in 3 places that I could find:

  • isis/version contains the version number, date, and build status (alpha, beta, stable)
  • isis/CMakeLists.txt contains VERSION, VERSION_DATE, and RELEASE_STAGE variables
  • isis/CMakeLists.txt hard-codes the library version number (libisis3.6.0.${SO})

These should be consolidated so we don't have to maintain 3 places for versioning.

Also, the isis3_dependencies repo defines versioning for isis3 in its recipes/isis/meta.yaml file.

FIND_FORTRAN not defined on Ubuntu

Using the conda dependencies, configuration fails with a FORTRAN_LIBRARY not defined error. Both the conda env and the underlying OS have libgfortran.so.3 installed. It looks like the error is being caused within the FindCholmod.cmake script.

Cannot create an ISIS3 conda environment using the instructions on the wiki

Using a fresh install of anaconda on a new laptop running Fedora 28, I tried to create a conda environment using the environment.yml file in the ISIS3 directory of a fresh git clone and the error message below was the result.

Has anyone else used the environment.yml file to setup their environment or is everyone else using something internal? And, is there a specific version of conda I should be using? (I'm using 4.5.11)

(base) bash-4.4$ conda env create -f environment.yml -n ISIS3
Solving environment: failed

# >>>>>>>>>>>>>>>>>>>>>> ERROR REPORT <<<<<<<<<<<<<<<<<<<<<<

    Traceback (most recent call last):
      File "/home/kberry/anaconda3/lib/python3.7/site-packages/conda/exceptions.py", line 819, in __call__
        return func(*args, **kwargs)
      File "/home/kberry/anaconda3/lib/python3.7/site-packages/conda_env/cli/main.py", line 74, in do_call
        exit_code = getattr(module, func_name)(args, parser)
      File "/home/kberry/anaconda3/lib/python3.7/site-packages/conda_env/cli/main_create.py", line 108, in execute
        installer.install(prefix, pkg_specs, args, env)
      File "/home/kberry/anaconda3/lib/python3.7/site-packages/conda_env/installers/conda.py", line 35, in install
        unlink_link_transaction = solver.solve_for_transaction(prune=getattr(args, 'prune', False))
      File "/home/kberry/anaconda3/lib/python3.7/site-packages/conda/core/solve.py", line 518, in solve_for_transaction
        force_remove, force_reinstall)
      File "/home/kberry/anaconda3/lib/python3.7/site-packages/conda/core/solve.py", line 451, in solve_for_diff
        final_precs = self.solve_final_state(deps_modifier, prune, ignore_pinned, force_remove)
      File "/home/kberry/anaconda3/lib/python3.7/site-packages/conda/core/solve.py", line 180, in solve_final_state
        index, r = self._prepare(prepared_specs)
      File "/home/kberry/anaconda3/lib/python3.7/site-packages/conda/core/solve.py", line 592, in _prepare
        self.subdirs, prepared_specs)
      File "/home/kberry/anaconda3/lib/python3.7/site-packages/conda/core/index.py", line 215, in get_reduced_index
        new_records = query_all(spec)
      File "/home/kberry/anaconda3/lib/python3.7/site-packages/conda/core/index.py", line 184, in query_all
        return tuple(concat(future.result() for future in as_completed(futures)))
      File "/home/kberry/anaconda3/lib/python3.7/site-packages/conda/core/subdir_data.py", line 95, in query
        self.load()
      File "/home/kberry/anaconda3/lib/python3.7/site-packages/conda/core/subdir_data.py", line 149, in load
        _internal_state = self._load()
      File "/home/kberry/anaconda3/lib/python3.7/site-packages/conda/core/subdir_data.py", line 246, in _load
        _internal_state = self._process_raw_repodata_str(raw_repodata_str)
      File "/home/kberry/anaconda3/lib/python3.7/site-packages/conda/core/subdir_data.py", line 369, in _process_raw_repodata_str
        info['fn'] = fn
    TypeError: 'NoneType' object does not support item assignment

`$ /home/kberry/anaconda3/bin/conda-env create -f environment.yml -n ISIS3`

  environment variables:
                 CIO_TEST=<not set>
  CONDA_AUTO_UPDATE_CONDA=false
        CONDA_DEFAULT_ENV=base
                CONDA_EXE=/home/kberry/anaconda3/bin/conda
             CONDA_PREFIX=/home/kberry/anaconda3
    CONDA_PROMPT_MODIFIER=(base)
         CONDA_PYTHON_EXE=/home/kberry/anaconda3/bin/python
               CONDA_ROOT=/home/kberry/anaconda3
              CONDA_SHLVL=1
                  MANPATH=/usr/share/lmod/lmod/share/man:
               MODULEPATH=/etc/modulefiles:/usr/share/modulefiles:/usr/share/modulefiles/Linux:/
                          usr/share/modulefiles/Core:/usr/share/lmod/lmod/modulefiles/Core
                     PATH=/home/kberry/anaconda3/bin:/usr/lib64/qt-3.3/bin:/usr/local/bin:/usr/b
                          in:/bin:/usr/local/sbin:/usr/sbin
       REQUESTS_CA_BUNDLE=<not set>
            SSL_CERT_FILE=<not set>
            XDG_SEAT_PATH=/org/freedesktop/DisplayManager/Seat0
         XDG_SESSION_PATH=/org/freedesktop/DisplayManager/Session1

     active environment : base
    active env location : /home/kberry/anaconda3
            shell level : 1
       user config file : /home/kberry/.condarc
 populated config files : 
          conda version : 4.5.11
    conda-build version : 3.15.1
         python version : 3.7.0.final.0
       base environment : /home/kberry/anaconda3  (writable)
           channel URLs : https://repo.anaconda.com/pkgs/main/linux-64
                          https://repo.anaconda.com/pkgs/main/noarch
                          https://repo.anaconda.com/pkgs/free/linux-64
                          https://repo.anaconda.com/pkgs/free/noarch
                          https://repo.anaconda.com/pkgs/r/linux-64
                          https://repo.anaconda.com/pkgs/r/noarch
                          https://repo.anaconda.com/pkgs/pro/linux-64
                          https://repo.anaconda.com/pkgs/pro/noarch
          package cache : /home/kberry/anaconda3/pkgs
                          /home/kberry/.conda/pkgs
       envs directories : /home/kberry/anaconda3/envs
                          /home/kberry/.conda/envs
               platform : linux-64
             user-agent : conda/4.5.11 requests/2.19.1 CPython/3.7.0 Linux/4.18.10-200.fc28.x86_64 fedora/28 glibc/2.27
                UID:GID : 76399:1800
             netrc file : None
           offline mode : False


An unexpected error has occurred. Conda has prepared the above report.
If submitted, this report will be used by core maintainers to improve
future releases of conda.
Would you like conda to send this report to the core maintainers?

Update "Managing Custom ISIS3 Dependencies" Wiki Page

https://github.com/USGS-Astrogeology/ISIS3/wiki/Managing-Custom-ISIS-Dependencies-(WIP)

  • Document describes how to set up environment to be able to build these recipes
  • Document describes what the recipes are
  • Document describes what the build.sh, meta.yaml, and metal.yaml.tmpl are
  • Document describes how to build locally using the python helper script
  • Document describes how to upload a package to the usgs-astrogeology anaconda site
  • Document points to official documentation for conda

Merge isis3_mosaic_tracking into cmake

  • Merge dev into isis3_mosaic_tracking
  • Run tests on isis3_mosaic_tracking build
  • Merge dev into cmake
  • Merge isis3_mosaic_tracking into cmake
  • Run tests on cmake build

Rewrite Color unit test in gtest

I have a PR opened for this: #532. Was hoping to get feedback on whether these tests should be parameterized? The PR includes the parameterized version of the tests, but I also have a non-parameterized approach in the code that is commented-out.

Update README.md with more information about development

Update README so it contains:

  1. Information on where to install ISIS3 to for end-users ("If you are looking to install ISIS3 to run its applications, please see this installation guide"), which would point to our website's update installation guide.

  2. Many repos have README's that tell developers how to get started setting up their environment to develop in the project, including installation of dependencies and compilation instructions (we have a lot of this information in the wiki already, so we could migrate that here).

  3. It may be useful to put a link to the Contributing.md document for developers.

Feel free to comment for any ideas or suggestions.

update internal automated builds

The current cronjob needs to be updated for testing the cmake branch.

  • provide a new development systems list for fedora28, ubuntu18.04, and macOS10.13
  • add centos7 to list when development environment is working
  • make sure to build the cmake branch
  • use the buildIsisCmakeAllSys script for building
  • schedule at different time than our current nightly automated build (maybe 6pm?)

ISIS3/cmake curl==7.55.1=0 broken

When trying to set up the isis3 dependencies environment from our environment.yml file, the following error is issued:

ResolvePackageNotFound: 
  - curl==7.55.1=0

Looking at conda-forge's curl packages, the linux-64/curl-7.55.1-0.tar.bz2 file has the broken label. All of the linux 7.55.1-0 versions have the broken label, so it will not be found by conda using our environment specification (conda looks for main label packages).

This can be fixed quickly by changing the version to a higher package version in the main label hosted by conda-forge.

However, this potentially brings up some questions. I'll post these in a separate issue.

Improve findfeature's overlap pre-processing

Right now, findfeatures does very rudimentary checks for overlaps between images. This has been worked around by using isisminer's overlap calculations and filtering. In order to make findfeatures more usable without isiminer, and to help handle errors in isisminer configs more gracefully, we should add the ability to recheck image footprint overlaps in findfeatures.

This is coming largely from comments on #556

ISIS3/cmake PostgreSQL Missing

It appears the PostgreSQL library is not installed in the Anaconda isis3 environment. This means database access in ISIS3 (and this environment) to PostgreSQL databases may be broken. Specifically, the runtime dependencies for the Qt SQL PostgreSQL driver are:

zion[326]: otool -L ~/miniconda3/envs/isis3/plugins/sqldrivers/libqsqlpsql.dylib
~/miniconda3/envs/isis3/plugins/sqldrivers/libqsqlpsql.dylib:
        @rpath/../plugins/sqldrivers/libqsqlpsql.dylib (compatibility version 0.0.0, current version 0.0.0)
        @rpath/libQt5Sql.5.dylib (compatibility version 5.9.0, current version 5.9.6)
        /System/Library/Frameworks/DiskArbitration.framework/Versions/A/DiskArbitration (compatibility version 1.0.0, current version 1.0.0)
        /System/Library/Frameworks/IOKit.framework/Versions/A/IOKit (compatibility version 1.0.0, current version 275.0.0)
        @rpath/libQt5Core.5.dylib (compatibility version 5.9.0, current version 5.9.6)
        **@rpath/libpq.5.dylib (compatibility version 5.0.0, current version 5.10.0)**
        @rpath/libc++.1.dylib (compatibility version 1.0.0, current version 1.0.0)
        /usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current version 1252.50.4)

The highlighted PostgreSQL library (libpq) is nowhere to be found in the Python isis3 env. Looks like simply installing PostgreSQL will solve this problem.

FYI, Sqlite and MySQL looks to be intact.

isis3.6.0 stable

Prerequisites:

  • release candidate -- #460

Requirements:

  • address any major issues in the release candidate

    • if dev has a patch fix, cherry-pick into the release branch
    • if release branch (release candidate) has issue, cherry-pick into dev
  • Supports CentOS7 for development

  • Post notification about release in forum / news

  • Document this process as you go

Incorrect default for $ISISROOT in 3.6.0 Startup Scripts

It looks like /usgs/pkgs/isis3.6.0/isis/scripts/isis3Startup.sh is using the incorrect default for $ISISROOT and this is causing the wrong bin directory to be set. As I understand it, the correct default for $ISISROOT should be /usgs/pkgs/isis3.6.0/install

However, when I run source /usgs/pkgs/isis3.6.0/isis/scripts/isis3Startup.sh, my $PATH gets updated to include /usgs/pkgs/isis3/isis/bin, but this directory no longer exists in 3.6.0. As a result, I can't run any ISIS3 programs.

I haven't tested the analogous startup script for CSH, so I don't know if that script has the same issue. Either way, this should only affect internal USGS users because external users are expected to install 3.6.0 through conda. I have confirmed that this has broken PDS Services (MAP2 and POW).

ISIS3/cmake Binary Distribution Strategy

Not entirely sure what the plans are for a binary distribution of ISIS3/cmake are (exclusively through Anaconda?) but it appears currently all the runtime library dependencies are linked to the Anaconda isis3 env install. Specifically, there are no runtime libraries or plugins in $ISISROOT/3rdParty. This may cause problems for system-wide distributions for ground data processing systems as the individual/account used to pull ISIS3 and install in a traditional setting may not be accessible in all situations causing runtime breakage.

I tested a potential solution on my Mac that moved aside the ~/miniconda/envs/isis3/lib to lib.org and then simlinked $ISISROOT/3rdParty/lib -> ~/miniconda/envs/isis3/lib.org (qview, after the move and before the simlink, failed as expected with a library load error). This worked great! Which means adding a “make dist” or “make deploy” target that simply copies/installs all of ~/miniconda/envs/isis3/lib and plugins to 3rdParty like was done before, or something similar, appears to work just fine.

Anaconda/ISIS 3.6.0 installation issue

I had the same issue with having to add the conda-forge channel, but once past that, the install step fails with a dependency conflict:

bash-3.2$ conda install -c usgs-astrogeology isis3
Solving environment: failed

UnsatisfiableError: The following specifications were found to be in conflict:
  - isis3 -> armadillo==8.200.0 -> arpack -> *[track_features=blas_openblas]
  - qtconsole
Use "conda info <package>" to see the dependencies for each package.

Not sure how to proceed. This is on MacOS 10.13.6 (High Sierra)

Merge cmake into dev

Prerequisites:

  • bundle xyz merged into cmake -- #455
  • isis3_mosaic_tracking merged into cmake -- #458
  • development applications integrated into cmake -- #461
  • outstanding PRs needed in release merged into dev
    • PostgreSQL -- #440
    • Clementine -- #450
    • isis3 version update -- #438
    • continue through rest of outstanding PRs...

Requirements:

  • merge dev into cmake
  • builds and tests successfully on:
    • Fedora28
    • Ubuntu18.04
    • macOS10.13
  • PR cmake into dev
    • describe the changes listed above in the PR
    • reference appropriate GitHub issues
    • reference Redmine issues (5520 -- integrate cmake ; 5521 -- integrate development applications)
    • reference Redmine issues for process mosaic tracking -- add ticket number here
    • reference Redmine issues for bundle xyz -- add ticket number here

There is a lot of housekeeping to do because of simultaneously creating new infrastructure issues with GitHub issues and addressing existing Redmine issues.

Spyder and ISIS3 conflict on MacOS High Sierra

Installed both Anaconda and ISIS.

ISIS worked perfect.

When trying to launch Spyder via the terminal, get the following wrong message:

——————————————————————————————————————

(base) 192:~ zhiyongxiao$ spyder
objc[8381]: Class RunLoopModeTracker is implemented in both /Applications/anaconda3/envs/python36/lib/libQt5Core.5.dylib (0x1097d0a80) and /ISIS3/isis/3rdParty/lib/QtCore.framework/Versions/5/QtCore (0xb16707980). One of the two will be used. Which one is undefined.
objc[8381]: Class NotificationReceiver is implemented in both /Applications/anaconda3/envs/python36/lib/libQt5Widgets.5.dylib (0xb0c82c1c8) and /ISIS3/isis/3rdParty/lib/QtWidgets.framework/Versions/5/QtWidgets (0xb16e71418). One of the two will be used. Which one is undefined.
objc[8381]: Class QCocoaPageLayoutDelegate is implemented in both /Applications/anaconda3/envs/python36/lib/libQt5PrintSupport.5.dylib (0xb12064ef0) and /ISIS3/isis/3rdParty/lib/QtPrintSupport.framework/Versions/5/QtPrintSupport (0xb169aaec0). One of the two will be used. Which one is undefined.
objc[8381]: Class QCocoaPrintPanelDelegate is implemented in both /Applications/anaconda3/envs/python36/lib/libQt5PrintSupport.5.dylib (0xb12064f40) and /ISIS3/isis/3rdParty/lib/QtPrintSupport.framework/Versions/5/QtPrintSupport (0xb169aaf10). One of the two will be used. Which one is undefined.
QObject::moveToThread: Current thread (0x7fa115c41eb0) is not the object's thread (0x7fffb1218380).
Cannot move to target thread (0x7fa115c41eb0)

You might be loading two sets of Qt binaries into the same process. Check that all plugins are compiled against the right Qt binaries. Export DYLD_PRINT_LIBRARIES=1 and check that only one set of binaries are being loaded.
This application failed to start because it could not find or load the Qt platform plugin "cocoa"
in "".

Available platform plugins are: cocoa, minimal, offscreen.

Reinstalling the application may fix this problem.
/Applications/anaconda3/envs/python36/bin/pythonw: line 3:  8381 Abort trap: 6           /Applications/anaconda3/envs/python36/python.app/Contents/MacOS/python "$@"

——————————————————————————————————————

Please advice.

Trouble with the Install Instructions for WSL (windows running Ubuntu 16.0.4 LTS)

Notes from Trent
Not perfect sailing here for install. I am trying the new recipe on WSL (windows running Ubuntu 16.04.4 LTS). I usually have to fight a little but this time I am stuck on a QT issue.

Steps in notes.

I tried this:

sudo apt-get update
sudo apt install x11-apps
sudo apt-get install lxde

But now I get a QT error when it appears QT is nicely available.
libQt5Core.so.5: version `Qt_5.9' not found (required by qview)

I googled and found this:

sudo apt-get install qt5-default

this still doesn’t work. Here is my QT version

qmake --version
Using Qt version 5.9.6 in /home/thare/anaconda/envs/isis3/lib
At this point I am stuck…

BTW, there a few more minor comments in the file also. But I will try on a typical Linux system also. Perhaps an Ubuntu or Centos new VM.

Thus far I do like the new install environment. Perhaps we might need a Troubleshooting section (for those odd cases as we roll this out). Perhaps linked to a Github Wiki or ...? I think "library" hell (aka DLL hell) will be our biggest issue getting all these library quirks ironed out.

I may have more comments on the wording, but just wanted to get an initial "I am stuck" back to you all.

findfeatures - cv::Exception

data: /work/users/lweller/Isis3Tests/FindFeatures/cvException

isisversion: isis3.6.0rc and isis3beta2018-09-18 where I initially encountered the problem via a cluster run. Was hoping this was a node thing....

error:

terminate called after throwing an instance of 'cv::Exception'
  what():  /usgs/pkgs/local/v006/src/opencv/opencv-3.1.0/modules/core/src/lapack.cpp:798: error: (-215) type == CV_32F || type == CV_64F in function invert

./run.csh: line 2:  7791 Aborted                 (core dumped) 

command:

findfeatures algorithm=fast/brief maxthreads=7 match=N1500060756_2_callptr.cub fromlist=N1500060756_2_callptr_fromlist.lis fastgeom=true geomtype=camera epitolerance=3.0 ratio=0.65 hmgtolerance=3.0 networkid=N1500060756_2_callptr pointid='N1500060756_2_callptr_?????' onet=N1500060756_2_callptr.net tolist=N1500060756_2_callptr_cubes.lis tonotmatched=N1500060756_2_callptr_notmatched.lis description='Create image-image control network' debug=true debuglog=N1500060756_2_callptr.log

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.