[galaxyproject/galaxy] caf9bf: Refactor DependencyManager to walk dependencies re...
Branch: refs/heads/dev Home: https://github.com/galaxyproject/galaxy Commit: caf9bf21de894312a3a3d164ae4ac3be37e487e1 https://github.com/galaxyproject/galaxy/commit/caf9bf21de894312a3a3d164ae4ac... Author: John Chilton <jmchilton@gmail.com> Date: 2017-01-08 (Sun, 08 Jan 2017) Changed paths: M lib/galaxy/tools/deps/__init__.py Log Message: ----------- Refactor DependencyManager to walk dependencies resolvers first, then requirements. Invert previous loop to give resolvers a chance to resolve everything at once in subsequent commits. Commit: 0a280e7d48c64d0a9daed6514eafe0314a6aa940 https://github.com/galaxyproject/galaxy/commit/0a280e7d48c64d0a9daed6514eafe... Author: John Chilton <jmchilton@gmail.com> Date: 2017-01-08 (Sun, 08 Jan 2017) Changed paths: M lib/galaxy/tools/deps/__init__.py Log Message: ----------- Give dependency resolvers a shot at resolving all dependencies at once. Commit: c2ac19275064b4c5b07685133f28bb509fd6be7d https://github.com/galaxyproject/galaxy/commit/c2ac19275064b4c5b07685133f28b... Author: John Chilton <jmchilton@gmail.com> Date: 2017-01-08 (Sun, 08 Jan 2017) Changed paths: M lib/galaxy/tools/deps/conda_util.py M lib/galaxy/tools/deps/resolvers/conda.py A test/functional/tools/mulled_example_conflict.xml M test/functional/tools/samples_tool_conf.xml Log Message: ----------- Implement resolve_all on Conda dependency resolver. This is a somewhat substantial reversal in the typical way that the Conda resolver works. Everything related to caching, copying, linking, and building environments on the fly should now only apply if both of the following conditions are met (1) there is more than one requirement tag in a tool and (2) not all of them are resolvable exactly by the Conda resolver. For recipes that don't meet both of these two criteria - the normal case I would suspect going forward - Galaxy will just look for a hashed environment for these requirements built for all the requirements at once whenever the requirements are installed. The new 90% case, such environments should be much less buggy for two primary reasons. - #3299 is solved - in other words Conda is deferred to and if packages have potential conflicts - Conda can choose the right combination of build specifiers to resolve things correctly. - Environments are no longer built on a per-job basis - this means file system problems related to linking and copying aren't really an issue and complexity related to caching can be safely ignored. My guess is we should re-write all the Conda docs to make the other use case seem like a corner case - because hopefully it is now. This commit includes a test tool that wouldn't work without the rewrite I believe. Commit: 0e509a98ed79daf250fdd486f827d14335e88486 https://github.com/galaxyproject/galaxy/commit/0e509a98ed79daf250fdd486f827d... Author: mvdbeek <m.vandenbeek@gmail.com> Date: 2017-01-08 (Sun, 08 Jan 2017) Changed paths: M lib/galaxy/tools/deps/__init__.py M lib/galaxy/tools/deps/resolvers/conda.py M lib/galaxy/tools/deps/views.py M lib/galaxy/webapps/galaxy/api/tools.py M lib/tool_shed/galaxy_install/install_manager.py Log Message: ----------- Create merged environments at install time Currently tested with UI only Commit: ad92bbf9bebafed22395e0199efd35a838ac1f4a https://github.com/galaxyproject/galaxy/commit/ad92bbf9bebafed22395e0199efd3... Author: mvdbeek <m.vandenbeek@gmail.com> Date: 2017-01-08 (Sun, 08 Jan 2017) Changed paths: M lib/galaxy/webapps/galaxy/api/tools.py M lib/tool_shed/galaxy_install/install_manager.py Log Message: ----------- Restore the cached environments for now ... better to completely eliminate them later Commit: fd8243b3d3a6ac0fcaea5f7ccfd7d5ec472b083b https://github.com/galaxyproject/galaxy/commit/fd8243b3d3a6ac0fcaea5f7ccfd7d... Author: John Chilton <jmchilton@gmail.com> Date: 2017-01-08 (Sun, 08 Jan 2017) Changed paths: M lib/galaxy/tools/deps/__init__.py M lib/galaxy/tools/deps/resolvers/conda.py M lib/galaxy/tools/deps/views.py M lib/galaxy/webapps/galaxy/api/tools.py M lib/tool_shed/galaxy_install/install_manager.py Log Message: ----------- Merge pull request #52 from mvdbeek/install_time_improvements Create merged environments at install time Commit: 48a22d6e53c08de37a8a39cc5bb0228789a19033 https://github.com/galaxyproject/galaxy/commit/48a22d6e53c08de37a8a39cc5bb02... Author: mvdbeek <m.vandenbeek@gmail.com> Date: 2017-01-08 (Sun, 08 Jan 2017) Changed paths: M lib/galaxy/webapps/galaxy/api/tools.py M lib/tool_shed/galaxy_install/install_manager.py Log Message: ----------- Revert "Restore the cached environments for now ... better to completely eliminate them later" This reverts commit ad92bbf9bebafed22395e0199efd35a838ac1f4a. Commit: 50bee381d35b97c951982ddbed442f8068574a46 https://github.com/galaxyproject/galaxy/commit/50bee381d35b97c951982ddbed442... Author: mvdbeek <m.vandenbeek@gmail.com> Date: 2017-01-08 (Sun, 08 Jan 2017) Changed paths: M lib/galaxy/tools/deps/__init__.py M lib/galaxy/tools/deps/resolvers/conda.py M lib/galaxy/tools/deps/views.py M lib/galaxy/webapps/galaxy/api/tools.py M lib/tool_shed/galaxy_install/install_manager.py Log Message: ----------- Revert "Create merged environments at install time" This reverts commit 0e509a98ed79daf250fdd486f827d14335e88486. Commit: eea89de19adffe3a18f562cac7c97087e8a2e604 https://github.com/galaxyproject/galaxy/commit/eea89de19adffe3a18f562cac7c97... Author: mvdbeek <m.vandenbeek@gmail.com> Date: 2017-01-08 (Sun, 08 Jan 2017) Changed paths: M lib/galaxy/tools/deps/resolvers/conda.py M lib/galaxy/tools/deps/views.py M lib/galaxy/webapps/galaxy/api/tools.py M lib/tool_shed/galaxy_install/install_manager.py Log Message: ----------- Use resolver to explicitly install dependencies This avoids replicating the resolver logic when installing dependencies and should be better than https://github.com/jmchilton/galaxy/pull/52 Commit: 5c325236189ce17344ffedc1d821e94c6fb33483 https://github.com/galaxyproject/galaxy/commit/5c325236189ce17344ffedc1d821e... Author: John Chilton <jmchilton@gmail.com> Date: 2017-01-09 (Mon, 09 Jan 2017) Changed paths: M lib/galaxy/tools/deps/__init__.py M lib/galaxy/tools/deps/resolvers/conda.py M lib/galaxy/tools/deps/views.py M lib/galaxy/webapps/galaxy/api/tools.py M lib/tool_shed/galaxy_install/install_manager.py Log Message: ----------- Merge pull request #53 from mvdbeek/install_time_2 Install time 2 Commit: 542dc4077f35d3760d3a8b51716acffce2574bef https://github.com/galaxyproject/galaxy/commit/542dc4077f35d3760d3a8b51716ac... Author: Björn Grüning <bjoern@gruenings.eu> Date: 2017-01-10 (Tue, 10 Jan 2017) Changed paths: M lib/galaxy/tools/deps/__init__.py M lib/galaxy/tools/deps/conda_util.py M lib/galaxy/tools/deps/resolvers/conda.py M lib/galaxy/tools/deps/views.py M lib/galaxy/webapps/galaxy/api/tools.py M lib/tool_shed/galaxy_install/install_manager.py A test/functional/tools/mulled_example_conflict.xml M test/functional/tools/samples_tool_conf.xml Log Message: ----------- Merge pull request #3391 from jmchilton/resolve_all_at_once Resolve Conda Dependencies All at Once Compare: https://github.com/galaxyproject/galaxy/compare/1082385b0b8b...542dc4077f35
participants (1)
-
GitHub