{ "info": { "author": "Chitsanu Khurewathanakul", "author_email": "chitsanu.khurewathanakul@epfl.ch", "bugtrack_url": null, "classifiers": [ "Development Status :: 4 - Beta", "Environment :: Console", "Intended Audience :: Developers", "Intended Audience :: Information Technology", "Operating System :: OS Independent", "Programming Language :: Python :: 2.7", "Topic :: Utilities" ], "description": "GangaCK\n=======\n\nImproving `Ganga` for better productivity.\n\n[![package version](https://img.shields.io/pypi/v/GangaCK.svg)](https://pypi.org/project/GangaCK)\n[![pipeline status](https://gitlab.com/ckhurewa/GangaCK/badges/master/pipeline.svg)](https://gitlab.com/ckhurewa/GangaCK/commits/master)\n[![coverage report](https://gitlab.com/ckhurewa/GangaCK/badges/master/coverage.svg)](https://ckhurewa.gitlab.io/GangaCK)\n[![License: GPL v3](https://img.shields.io/badge/License-GPL%20v3-blue.svg)](https://www.gnu.org/licenses/gpl-3.0)\n[![Documentation Status](https://readthedocs.org/projects/GangaCK/badge/?version=latest)](http://GangaCK.readthedocs.io/en/latest/?badge=latest)\n[![python version](https://img.shields.io/pypi/pyversions/GangaCK.svg)](https://img.shields.io/pypi/pyversions/GangaCK.svg)\n\n\nFeatures:\n\n- `Jobtree`: improved visualization of `jobtree` for better jobs organization.\n This can be called both inside/outside `ganga` interactive session.\n\n ![](https://gitlab.com/ckhurewa/GangaCK/raw/master/docs/figs/jobtree.png)\n\n- `IOUtils`: Misc operations to convert to/from (collection of) \n PFN, LFN, Bookkeeping uri (`evt+std://`, `sim+std://`), PPL, xml, lfns, eos, ...\n There is a caching algorithm to help where it's usefully applicable.\n One particular application is `LHCbDataset.new` where it can accept arbitary \n argument from the list of support inputs above. For example:\n\n ```python\n LHCbDataset.new(\n\n 'some/local/file.dst', # LOCAL\n\n 'root://some-remote-file.dst', # REMOTE\n\n 'file:///another-remote-file.dst', # REMOTE\n\n '/lhcb/MC/Dev/LDST/00041927/0000/00041927_00000002_1.ldst', # LFN\n\n 'evt+std://MC/2012/42100000/Beam4000GeV-2012-MagDown-Nu2.5-Pythia8/...', # BKQ\n\n 'sim+std://LHCb/Collision12/Beam4000GeV-VeloClosed-MagDown/...', # BKQ\n\n '$EOS_HOME/ganga/4083/000.dst', # EOS\n\n '/cvmfs/lhcb.cern.ch/.../pool_xml_catalog_Reco14_Run125113.xml', # XML\n\n open('text_file_with_url_per_line.txt'), # local list\n\n jobs(123), # output from another Ganga job.\n\n LHCbDataset(['foo', 'bar']), # another ds.\n\n ) # accept heterogenous input appropriately,\n ```\n\n- `Magics`: because `ganga` is embedded inside `IPython`, why not more magics?\n - `jv` : show status of subjobs from all running jobs. Extremely useful for monitoring.\n - `jt` : for improved `jobtree` operation.\n - `peek`: based on `Job.peek`, but look deeper when possible.\n - `jsh` : provide shell-like syntax to operate `Job` with less (no-shift) typing,\n for example, `jsh 197.12 remove True` instead of `jobs(\"197.12\").remove(True)`.\n Less typing saves your life's time...\n - `grun`: similar to the built-in magic `ganga`, but it'll pick the local \n `ganga*.py` immediately or ask in case of ambiguity.\n - `resubmit`: Smartly handle resubmission/backend.reset of failed Dirac jobs \n based on its failing status (e.g., \n \"Pending Requests\", \n \"Job has reached the CPU limit of the queue\",\n \"Stalling for more than ...\", etc.)\n\n\n- Additional instance methods:\n - `Job`: `lfn_list`, `lfn_size`, `lfn_purge`, `pfn_size`, `ppl_list`, `eos_list`,\n `humansize`, `is_final`.\n - `Gauss`: `nickname`, to retrieve nickname from `$DECFILESROOT`.\n\n\nScripts:\n\n- `ganga_cache_viewer`: display the list of cache made by this package.\n\n- `ganga_cleaner`: Complete all-in-one script for tidying your ganga environment.\n\n- `offline_ganga_reader`: Quick script to read the content in Ganga's JobTree offline.\n\n- `xmlgensum`: Report summary of `GeneratorLog.xml` from all subjobs of Ganga-Gauss-Job\n\n- `xmlmerge`: Merge ``summary.xml`` files from Ganga's subjobs and neatly archive the dir.\n\n\nInstallation\n------------\n\nIt's available on pip: `pip install gangack`\n\n\nDisclaimer\n----------\n\nThis package was written and used during my PhD in 2013-2017 at EPFL (Lausanne) \nand LHCb collaboration (CERN), for the work in *Z->tau tau* cross-section measurement \nand *H->mu tau* searches at LHCb (8TeV).\n\nAs such, it's developped during the period of Ganga 5.34 -- 6.0.44. \nBecause of the fast-pace development and non-backward compat nature of Ganga,\nthis package can be obsoleted against newer version of Ganga.\n\n\n\n", "description_content_type": "text/markdown", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://gitlab.com/ckhurewa/GangaCK", "keywords": "", "license": "GNU GPLv3", "maintainer": "", "maintainer_email": "", "name": "GangaCK", "package_url": "https://pypi.org/project/GangaCK/", "platform": "unix", "project_url": "https://pypi.org/project/GangaCK/", "project_urls": { "Homepage": "https://gitlab.com/ckhurewa/GangaCK" }, "release_url": "https://pypi.org/project/GangaCK/1.0.0/", "requires_dist": [ "PythonCK (>=1.0.0)" ], "requires_python": "~=2.7", "summary": "Improving Ganga for better productivity.", "version": "1.0.0" }, "last_serial": 3789324, "releases": { "0.0.3.dev1": [ { "comment_text": "", "digests": { "md5": "a148529e90d767513eb1884165688e0a", "sha256": "1035eaf40a2f76ba2e939931c9bc46bd24c85c502c8eb5c66e942b340b3be87a" }, "downloads": -1, "filename": "GangaCK-0.0.3.dev1-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "a148529e90d767513eb1884165688e0a", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": "~=2.7", "size": 66102, "upload_time": "2018-04-22T16:29:50", "url": "https://files.pythonhosted.org/packages/6e/88/617be6e7b51048dfa4310176920e0d893029b37fb31fe4c8872a47fcf0b7/GangaCK-0.0.3.dev1-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "a5d907936bf666964c04e33d64bdc925", "sha256": "7f40500d194d88915fd42efb5e548ad0e3231f633cdbc08204fc1901d1cc71bf" }, "downloads": -1, "filename": "GangaCK-0.0.3.dev1.tar.gz", "has_sig": false, "md5_digest": "a5d907936bf666964c04e33d64bdc925", "packagetype": "sdist", "python_version": "source", "requires_python": "~=2.7", "size": 719014, "upload_time": "2018-04-22T16:29:54", "url": "https://files.pythonhosted.org/packages/cb/40/ba2b9ab4b21caa951c35d49a6932f403cc7592ed27d3f826ddf0b7fb9715/GangaCK-0.0.3.dev1.tar.gz" } ], "0.0.3.dev2": [ { "comment_text": "", "digests": { "md5": "0debd08f5ebe91613cf363db0be502c7", "sha256": "aa5a5d3edda1a006d02c0b537e045c03c693ed35f11a9fb0d0e719206d7a225b" }, "downloads": -1, "filename": "GangaCK-0.0.3.dev2-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "0debd08f5ebe91613cf363db0be502c7", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": "~=2.7", "size": 66101, "upload_time": "2018-04-22T16:29:52", "url": "https://files.pythonhosted.org/packages/87/36/3e5ab23bfc157ce676ad21dcffd4d975b87cd36a94dea8406b0a2a6b5247/GangaCK-0.0.3.dev2-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "185a9fe6c5f3cbb8e3832cbb131faf7c", "sha256": "2144d96db2272ff02eacfaa347805ad455d1fbed7c4ff244419c5f2ec9a5d451" }, "downloads": -1, "filename": "GangaCK-0.0.3.dev2.tar.gz", "has_sig": false, "md5_digest": "185a9fe6c5f3cbb8e3832cbb131faf7c", "packagetype": "sdist", "python_version": "source", "requires_python": "~=2.7", "size": 719815, "upload_time": "2018-04-22T16:29:58", "url": "https://files.pythonhosted.org/packages/c5/d9/f283605205c61145e199048dc8ee4ad07017299b6d854058375255596803/GangaCK-0.0.3.dev2.tar.gz" } ], "0.0.3.dev5": [ { "comment_text": "", "digests": { "md5": "b47de4d90cdf621f04bba1f8e4e6a88b", "sha256": "c6cd543fc138abc2a28562ecedacee3c7b1beffc00f99e1535d136115b26ee62" }, "downloads": -1, "filename": "GangaCK-0.0.3.dev5-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "b47de4d90cdf621f04bba1f8e4e6a88b", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": "~=2.7", "size": 66338, "upload_time": "2018-04-22T17:01:48", "url": "https://files.pythonhosted.org/packages/6a/27/b26caf95cac3da7b057c250511075c7c7db7bb825117613f76be1a86ea53/GangaCK-0.0.3.dev5-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "633d9ff8ee1bcdfeb5564ea9252d3066", "sha256": "9ec24d0a31097817024b49ca8c1c9abab541644a5440317fcc820786fc241e67" }, "downloads": -1, "filename": "GangaCK-0.0.3.dev5.tar.gz", "has_sig": false, "md5_digest": "633d9ff8ee1bcdfeb5564ea9252d3066", "packagetype": "sdist", "python_version": "source", "requires_python": "~=2.7", "size": 720414, "upload_time": "2018-04-22T17:01:58", "url": "https://files.pythonhosted.org/packages/8a/f6/9c423ba161f1f295a4d440565fd1591480fed20911e29f00895aeed60c6f/GangaCK-0.0.3.dev5.tar.gz" } ], "1.0.0": [ { "comment_text": "", "digests": { "md5": "a11bc163c43ed397da1f77f176469526", "sha256": "11e45b8dc1a7ae4a4aac65bdc85782478a1dca3aa39724447a52f0df34e1182d" }, "downloads": -1, "filename": "GangaCK-1.0.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "a11bc163c43ed397da1f77f176469526", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": "~=2.7", "size": 66263, "upload_time": "2018-04-22T16:51:26", "url": "https://files.pythonhosted.org/packages/b5/32/1322a61bebd98755dd8061fb6c911bc95509b30ebb56c4d0a4a39599325b/GangaCK-1.0.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "269ef890211e40936360d25f7e53a261", "sha256": "316ed7fbcf13386c36557ee129e64eabc443c7ca407f7c0a57ba54c64cbe3e50" }, "downloads": -1, "filename": "GangaCK-1.0.0.tar.gz", "has_sig": false, "md5_digest": "269ef890211e40936360d25f7e53a261", "packagetype": "sdist", "python_version": "source", "requires_python": "~=2.7", "size": 722592, "upload_time": "2018-04-22T16:51:28", "url": "https://files.pythonhosted.org/packages/ea/42/b69ff09a2f7dd49d0918235ed1253c61a9260b447717372e9efe348af0d9/GangaCK-1.0.0.tar.gz" } ], "1.0.1.dev1": [ { "comment_text": "", "digests": { "md5": "35318811e8562e5815e6f2e2e01900da", "sha256": "48b0b8815d65035935165e88524d0db275948d61f9d3f0d5b12a5c1e88dad417" }, "downloads": -1, "filename": "GangaCK-1.0.1.dev1-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "35318811e8562e5815e6f2e2e01900da", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": "~=2.7", "size": 66337, "upload_time": "2018-04-22T17:02:26", "url": "https://files.pythonhosted.org/packages/53/3d/32635c982136873dd64b7aa6c9b0a83c68105e778f347524ddd6c9f55309/GangaCK-1.0.1.dev1-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "f0b00a38552de0f32038ad0d14a15867", "sha256": "a7cf290dfd63c4d742c14002f4b3732b82f14ea74b7b02bb53fb73e88e4f57ed" }, "downloads": -1, "filename": "GangaCK-1.0.1.dev1.tar.gz", "has_sig": false, "md5_digest": "f0b00a38552de0f32038ad0d14a15867", "packagetype": "sdist", "python_version": "source", "requires_python": "~=2.7", "size": 720405, "upload_time": "2018-04-22T17:02:38", "url": "https://files.pythonhosted.org/packages/98/9c/aef3b8ca35d15e87eddaa59d50ced91d00e0d8cada8f82a8192fd74c000d/GangaCK-1.0.1.dev1.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "a11bc163c43ed397da1f77f176469526", "sha256": "11e45b8dc1a7ae4a4aac65bdc85782478a1dca3aa39724447a52f0df34e1182d" }, "downloads": -1, "filename": "GangaCK-1.0.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "a11bc163c43ed397da1f77f176469526", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": "~=2.7", "size": 66263, "upload_time": "2018-04-22T16:51:26", "url": "https://files.pythonhosted.org/packages/b5/32/1322a61bebd98755dd8061fb6c911bc95509b30ebb56c4d0a4a39599325b/GangaCK-1.0.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "269ef890211e40936360d25f7e53a261", "sha256": "316ed7fbcf13386c36557ee129e64eabc443c7ca407f7c0a57ba54c64cbe3e50" }, "downloads": -1, "filename": "GangaCK-1.0.0.tar.gz", "has_sig": false, "md5_digest": "269ef890211e40936360d25f7e53a261", "packagetype": "sdist", "python_version": "source", "requires_python": "~=2.7", "size": 722592, "upload_time": "2018-04-22T16:51:28", "url": "https://files.pythonhosted.org/packages/ea/42/b69ff09a2f7dd49d0918235ed1253c61a9260b447717372e9efe348af0d9/GangaCK-1.0.0.tar.gz" } ] }