Branch: refs/heads/master Home: https://github.com/uzh/gc3pie Commit: 9382ab6cbdb31ecdf7ab7afacd3225c86da30ebe https://github.com/uzh/gc3pie/commit/9382ab6cbdb31ecdf7ab7afacd3225c86da30ebe Author: Riccardo Murri <riccardo.mu...@gmail.com> Date: 2017-04-06 (Thu, 06 Apr 2017)
Changed paths: M gc3libs/utils.py Log Message: ----------- gc3libs.utils: New function `get_scheduler_and_lock_factory`. This was born to support the new `BgEngine`, but it might be of more general applicability, therefore it's packaged into `gc3libs.utils`. Commit: 8cc216954b25a7fce79d23ac44861f40bbebf096 https://github.com/uzh/gc3pie/commit/8cc216954b25a7fce79d23ac44861f40bbebf096 Author: Riccardo Murri <riccardo.mu...@gmail.com> Date: 2017-04-06 (Thu, 06 Apr 2017) Changed paths: M gc3libs/core.py Log Message: ----------- New `BgEngine` class to run `Engine.progress()` in a separate background thread. All thread management is offloaded to the `APScheduler` package, which provides support for several different threading/event loop backends. However, we do not make GC3Pie depend on the `apscheduler` package (yet?), since the `BgEngine` is quite likely not to be in widespread usage for now. Commit: 74f4b82db999947cbbbcfe64b15ce3ee8453f9dc https://github.com/uzh/gc3pie/commit/74f4b82db999947cbbbcfe64b15ce3ee8453f9dc Author: Riccardo Murri <riccardo.mu...@gmail.com> Date: 2017-04-06 (Thu, 06 Apr 2017) Changed paths: M gc3libs/core.py M setup.py Log Message: ----------- maintain statistics through all Engine operations, instead of computing them on-demand Commit: c67b51409a6884743d31b7bedf5c8881b52aea13 https://github.com/uzh/gc3pie/commit/c67b51409a6884743d31b7bedf5c8881b52aea13 Author: Riccardo Murri <riccardo.mu...@gmail.com> Date: 2017-04-06 (Thu, 06 Apr 2017) Changed paths: M gc3libs/core.py Log Message: ----------- Update `Engine`'s docstring. Commit: fb6c7038d8185062794e930688f3c93925f25f23 https://github.com/uzh/gc3pie/commit/fb6c7038d8185062794e930688f3c93925f25f23 Author: Riccardo Murri <riccardo.mu...@gmail.com> Date: 2017-04-06 (Thu, 06 Apr 2017) Changed paths: M gc3libs/core.py Log Message: ----------- Factor common code in `Engine.add()` and `Engine.remove()`. Commit: f456383cb5ea40edc63e2cd4da07f0c9eb8b8127 https://github.com/uzh/gc3pie/commit/f456383cb5ea40edc63e2cd4da07f0c9eb8b8127 Author: Riccardo Murri <riccardo.mu...@gmail.com> Date: 2017-04-06 (Thu, 06 Apr 2017) Changed paths: M gc3libs/core.py Log Message: ----------- Cosmetic changes. Commit: c1cc65bfa266dc0d6c60435a672ad486cad8f82a https://github.com/uzh/gc3pie/commit/c1cc65bfa266dc0d6c60435a672ad486cad8f82a Author: Riccardo Murri <riccardo.mu...@gmail.com> Date: 2017-04-06 (Thu, 06 Apr 2017) Changed paths: M gc3libs/core.py Log Message: ----------- New method `BgEngine.find_task_by_id()`. It proxies the corresponding method of the `Engine` class introduced in commit ecd9021. Commit: 0507ddf5e4bf978bdd4a6e234d407a3853393e85 https://github.com/uzh/gc3pie/commit/0507ddf5e4bf978bdd4a6e234d407a3853393e85 Author: Riccardo Murri <riccardo.mu...@gmail.com> Date: 2017-04-06 (Thu, 06 Apr 2017) Changed paths: M gc3libs/core.py Log Message: ----------- Fix imports in `gc3libs/core.py` Commit: 1f13c5b271d0186a39239ee3687646f3f307ec3b https://github.com/uzh/gc3pie/commit/1f13c5b271d0186a39239ee3687646f3f307ec3b Author: Riccardo Murri <riccardo.mu...@gmail.com> Date: 2017-04-06 (Thu, 06 Apr 2017) Changed paths: M gc3libs/core.py Log Message: ----------- Try to please pylint running on `gc3libs/core.py` It actually *did* catch a couple of bugs that had gone unnoticed so far... Commit: c2e5fd3180a0635908c9a5369496430511a1bdc6 https://github.com/uzh/gc3pie/commit/c2e5fd3180a0635908c9a5369496430511a1bdc6 Author: Riccardo Murri <riccardo.mu...@gmail.com> Date: 2017-04-06 (Thu, 06 Apr 2017) Changed paths: M gc3libs/core.py Log Message: ----------- Fix "ImportError: cannot import name DeprecationWarning" Indeed, it is a built-in! Commit: 5eeb72a02869e176c162dce5b8d25f4f42759afd https://github.com/uzh/gc3pie/commit/5eeb72a02869e176c162dce5b8d25f4f42759afd Author: Riccardo Murri <riccardo.mu...@gmail.com> Date: 2017-04-06 (Thu, 06 Apr 2017) Changed paths: M gc3libs/core.py Log Message: ----------- Fix default arg mismatch between th new implementation of `Engine.stats()` and `Engine.counts()` Commit: 0357d21a25b643c741adde71fe01730fa7140bd1 https://github.com/uzh/gc3pie/commit/0357d21a25b643c741adde71fe01730fa7140bd1 Author: Riccardo Murri <riccardo.mu...@gmail.com> Date: 2017-04-06 (Thu, 06 Apr 2017) Changed paths: M gc3libs/tests/test_engine.py Log Message: ----------- Make tests run correctly again. Commit: 5eba4dd1e3c3d5096ebb8a0daf76cf0116b1a812 https://github.com/uzh/gc3pie/commit/5eba4dd1e3c3d5096ebb8a0daf76cf0116b1a812 Author: Riccardo Murri <riccardo.mu...@gmail.com> Date: 2017-04-06 (Thu, 06 Apr 2017) Changed paths: M gc3libs/workflow.py Log Message: ----------- Demote message about `TaskCollection._get_download_dir()` to WARNING level. Done in reference to issue #615, to at least mitigate the alarm caused by a misplaced error message. Commit: 342bc8c9e59a8a78acb401b552c911444a09d52b https://github.com/uzh/gc3pie/commit/342bc8c9e59a8a78acb401b552c911444a09d52b Author: Riccardo Murri <riccardo.mu...@gmail.com> Date: 2017-04-06 (Thu, 06 Apr 2017) Changed paths: M gc3libs/tests/test_engine.py Log Message: ----------- New method `Engine.find_task_by_id()` to retrieve a task object given its persistent ID. Commit: 4a280c8995b50060e8ef4d59a7eb8422948109dc https://github.com/uzh/gc3pie/commit/4a280c8995b50060e8ef4d59a7eb8422948109dc Author: Riccardo Murri <riccardo.mu...@gmail.com> Date: 2017-04-06 (Thu, 06 Apr 2017) Changed paths: M gc3libs/tests/test_engine.py Log Message: ----------- Make tests run correctly again. Commit: d539e46399f9a1ceba61e62cbd9c72663066a750 https://github.com/uzh/gc3pie/commit/d539e46399f9a1ceba61e62cbd9c72663066a750 Author: HACKERMD <markusdherrm...@gmail.com> Date: 2017-04-06 (Thu, 06 Apr 2017) Changed paths: M gc3libs/core.py Log Message: ----------- Catch and log errors related to removal of TERMINATED tasks. Commit: e194ab023cd99f735ccd7900c4fdaf0cb0ef682c https://github.com/uzh/gc3pie/commit/e194ab023cd99f735ccd7900c4fdaf0cb0ef682c Author: HACKERMD <markusdherrm...@gmail.com> Date: 2017-04-06 (Thu, 06 Apr 2017) Changed paths: M gc3libs/core.py Log Message: ----------- Engine.progress(): Don't log messages as ERROR when no Exception is raised Commit: a3e084d188b2da1e0c7b32d2953bc06eb03f4d89 https://github.com/uzh/gc3pie/commit/a3e084d188b2da1e0c7b32d2953bc06eb03f4d89 Author: HACKERMD <markusdherrm...@gmail.com> Date: 2017-04-06 (Thu, 06 Apr 2017) Changed paths: M gc3libs/persistence/sql.py Log Message: ----------- Delay creation of SQLAlchemy engine in `SqlStore` objects. When running under uWSGI, initialization of GC3Pie's `SqlStore` may happen before the process is forked so different workers may end up using the same connection without knowing, which leads to all sort of concurrency problems. Delaying SQLAlchemy engine creation until first actual use of `SqlStore.save()` or `SqlStore.load()` seems to solve the problem. Commit: 9395558ec5ca3e39b288c9bf2ff569be3758b6c3 https://github.com/uzh/gc3pie/commit/9395558ec5ca3e39b288c9bf2ff569be3758b6c3 Author: Riccardo Murri <riccardo.mu...@gmail.com> Date: 2017-04-06 (Thu, 06 Apr 2017) Changed paths: M gc3libs/persistence/sql.py Log Message: ----------- Update docstring for `gc3libs.persistence.sql.SqlStore` Commit: 4e8733e3b2a95bb5f3f08004a2f34ab995faa450 https://github.com/uzh/gc3pie/commit/4e8733e3b2a95bb5f3f08004a2f34ab995faa450 Author: Riccardo Murri <riccardo.mu...@gmail.com> Date: 2017-04-06 (Thu, 06 Apr 2017) Changed paths: M gc3libs/persistence/sql.py Log Message: ----------- SqlStore: Avoid initializing `extra_fields` from a mutable default argument. Commit: 29dce0ce4ae24fa613edfa4a6965c9cf7766b9ac https://github.com/uzh/gc3pie/commit/29dce0ce4ae24fa613edfa4a6965c9cf7766b9ac Author: Riccardo Murri <riccardo.mu...@gmail.com> Date: 2017-04-06 (Thu, 06 Apr 2017) Changed paths: M gc3libs/persistence/sql.py Log Message: ----------- Perform complete delayed initialization of `SqlStore` upon access of any of 3 critical attributes. The three critical attributes are `._engine`, `.extra_fields` and `.t_store`; accessing any one of these will trigger initialization of the full object -hence- of the other ones as well. Also restores passing tests in `test_persistence.py`. Commit: c80470e7e094c56b6aac27145fd76eed94987375 https://github.com/uzh/gc3pie/commit/c80470e7e094c56b6aac27145fd76eed94987375 Author: Riccardo Murri <riccardo.mu...@gmail.com> Date: 2017-04-06 (Thu, 06 Apr 2017) Changed paths: M gc3libs/persistence/sql.py Log Message: ----------- Use `with closing(...)` blocks around SqlAlchemy DB connections. Commit: b4a0665a1c62d4104ca115c5832c83876deebf83 https://github.com/uzh/gc3pie/commit/b4a0665a1c62d4104ca115c5832c83876deebf83 Author: Riccardo Murri <riccardo.mu...@gmail.com> Date: 2017-04-06 (Thu, 06 Apr 2017) Changed paths: M gc3libs/persistence/sql.py M gc3libs/persistence/tests/test_persistence.py Log Message: ----------- Rename `SqlStore.t_store` to `SqlStore._tables`. Commit: 2bf9a8980670ad7d4af0e29c21c6fe49566a80e0 https://github.com/uzh/gc3pie/commit/2bf9a8980670ad7d4af0e29c21c6fe49566a80e0 Author: Riccardo Murri <riccardo.mu...@gmail.com> Date: 2017-04-06 (Thu, 06 Apr 2017) Changed paths: M gc3libs/persistence/sql.py Log Message: ----------- Compatibility alias `SqlStore.t_store` for `SqlStore._tables` This is a temporary measure until TissueMAPS code is updated; commit should be reverted when this happens. Compare: https://github.com/uzh/gc3pie/compare/ac192a5ab433...2bf9a8980670 -- You received this message because you are subscribed to the Google Groups "gc3pie-dev" group. To unsubscribe from this group and stop receiving emails from it, send an email to gc3pie-dev+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/gc3pie-dev/58e5fbe679195_5b4b3fc288c25c38169789%40hookshot-fe1-cp1-prd.iad.github.net.mail. For more options, visit https://groups.google.com/d/optout.