{ "info": { "author": "Doug Latornell", "author_email": "djl@douglatornell.ca", "bugtrack_url": null, "classifiers": [ "Development Status :: 5 - Production/Stable", "Environment :: Console", "Intended Audience :: Developers", "License :: OSI Approved :: BSD License", "Operating System :: OS Independent", "Programming Language :: Python :: 2", "Programming Language :: Python :: 2.5", "Programming Language :: Python :: 2.6", "Programming Language :: Python :: 2.7", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.2", "Programming Language :: Python :: 3.3", "Programming Language :: Python :: 3.4", "Programming Language :: Python :: 3.5", "Topic :: Software Development :: Testing" ], "description": ".. -*- coding: utf-8 -*-\n\nNosy\n====\n\n\nIntroduction\n------------\n\nRun the nose_ test discovery and execution tool whenever a source file\nis changed.\n\nAn elaborated version of Jeff Winkler's ``nosy`` tool that runs nose\nwhenever a source file is changed. This version has a command line\nparser added, and the capability to use a configuration file to\ncontrol what files are watched, and how nose runs.\n\n.. _nose: http://www.somethingaboutorange.com/mrl/projects/nose/\n\n\nSynopsis\n--------\n\n $ nosy -h\n\n Usage: nosy [options]\n\n Automatically run nose whenever source files change.\n\n Options:\n -h, --help show this help message and exit\n -c CONFIG_FILE, --config=CONFIG_FILE\n configuration file path and name; defaults to\n setup.cfg\n\n\nConfiguration File\n------------------\n\nConfiguration file section contents example::\n\n [nosy]\n # Paths to check for changed files; changes cause nose to be run\n base_path = ./\n glob_patterns = *.py\n exclude_patterns = *_flymake.*\n extra_paths = sample.cfg\n # Command line options to pass to nose\n options = -x\n # Command line arguments to pass to nose; e.g. part of test suite to run\n tests = tests/unit_tests.py\n\nConfiguration file is read by a Python standard library ConfigParser\nobject, so:\n\n * Lines beginning with \"#\" or \";\" are ignored and may be used to\n provide comments.\n * Entries can be in the form \"name: value\" or \"name=value\", with\n continuations in the style of RFC 822.\n * Leading whitespace is removed from values.\n * Format string substitution in values is supported.\n\nWithin the `[nosy]` section 6 options may be specified:\n\n * `base_path` - The directory in which to start walking the tree to\n check for changed files. Defaults to `.`.\n\n * `glob_patterns` - A whitespace separated list of shell glob\n patterns to check for changes. Defaults to `*.py`.\n\n * `exclude_patterns` - A whitespace separated list of shell glob\n patterns to exclude when checking for changes. Defaults to `''`.\n\n * `extra_paths` - A whitespace separated list of shell glob patterns\n to add to the paths that are checked for changes. Defaults to\n `''`.\n\n * `options` - A string of options to be passed through to nose when\n it is executed.\n\n * `tests` - A string of command line arguments to be passed through\n to nose when it is executed. Useful for specifying part of the\n test suite to run.\n\nIncluding the configuration file in the watched paths allows you to\nchange nose's behaviour on the fly.\n\nThe source code and bug tracker for this package is available on Bitbucket_.\n\n.. _Bitbucket: https://bitbucket.org/douglatornell/nosy\n.. -*- coding: utf-8 -*-\n\nChangelog\n---------\n\nv1.2 6-Dec-2015\n~~~~~~~~~~~~~~~\n\n* Change exception handling to preserve backward compatibility with\n Python 2.5.\n\n* Add Vagrant and tox configurations for automation of testing against\n multiple Python versions.\n\n* Add support for Python 3.2, 3.3, 3.4, and 3.5.\n Thanks to `@ronnix`_ and `@StefanWiechula`_ for pull requests,\n and to `@jacebrowning`_ for in-use testing.\n\n* Fix test suite issues re: multiple Python versions.\n\n* Add ``test_runner`` option in the config file to specify the test\n runner command to use; defaults to ``nosetests``.\n\n.. _@ronnix: https://bitbucket.org/ronnix/\n.. _@StefanWiechula: https://bitbucket.org/StefanWiechula/\n.. _@jacebrowning: https://bitbucket.org/jacebrowning/\n\n\nv1.1.2 15-Sep-2011\n~~~~~~~~~~~~~~~~~~\n\n* Fix packaging errors. CHANGELOG was missing from MANIFEST.in, and\n setup.py failed under Python 2.5 due to the use of context managers.\n\n\nv1.1.1 13-Sep-2011\n~~~~~~~~~~~~~~~~~~\n\n* Refactored checksum calculations to flatten nested loops and improve\n testability.\n\n* Added test suite.\n\n* Fixed a bug that caused ``nose`` not to run when\n ``exclude_patterns`` was empty. Thanks to Greg Haskins for the\n patch, and an anonymous issue reporter on Bitbucket.\n\n* Fixed a bug that caused files in the ``base_path`` not to be\n monitored. Thanks to Greg Haskins for the patch.\n\n\nv1.1 21-Mar-2011\n~~~~~~~~~~~~~~~~\n\n* Configuration file now defaults to ``setup.cfg``.\n\n* New configuration options to make it easier to use ``nosy`` in\n projects with deep directory structures. The checksum calculator now\n uses ``os.walk()`` starting from ``base_path``, including files\n given by a list of ``glob_patterns``, excluding those given by a\n list of ``exclude_patterns``. Files given by the ``extra_paths``\n list are also glob-ed in to handle anything that the first 3 options\n don't easily catch. Thanks to Jussi Rasinm\u00e4ki for the suggestion.\n\n* The ``paths`` configuration option is retained for backward\n compatibility only.\n\n* Changed from ``setuptools`` to ``distribute`` for packaging.\n\n* Source code and issue tracker now on bitbucket.org: https://bitbucket.org/douglatornell/nosy\n\n* Released under New BSD License.\n\n* Released on PyPI: http://pypi.python.org/pypi/nosy\n\n\nv1.0 13-Jun-2008\n~~~~~~~~~~~~~~~~\n\n* Original release.", "description_content_type": null, "docs_url": null, "download_url": "UNKNOWN", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "http://douglatornell.ca/software/python/Nosy/", "keywords": null, "license": "New BSD License", "maintainer": null, "maintainer_email": null, "name": "nosy", "package_url": "https://pypi.org/project/nosy/", "platform": "UNKNOWN", "project_url": "https://pypi.org/project/nosy/", "project_urls": { "Download": "UNKNOWN", "Homepage": "http://douglatornell.ca/software/python/Nosy/" }, "release_url": "https://pypi.org/project/nosy/1.2/", "requires_dist": null, "requires_python": null, "summary": "Run a specified command (by default, the nose test discovery and\nexecution tool) whenever a source file is changed.", "version": "1.2" }, "last_serial": 1849249, "releases": { "1.1": [ { "comment_text": "", "digests": { "md5": "66eb1135d011a56b8c82ec811a8d7be2", "sha256": "cb385c372257c56a6c8b5b731f5ac45e640d3c38d094fc685ceb3311d0a00fc3" }, "downloads": -1, "filename": "nosy-1.1.tar.gz", "has_sig": false, "md5_digest": "66eb1135d011a56b8c82ec811a8d7be2", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 11248, "upload_time": "2011-03-22T00:20:56", "url": "https://files.pythonhosted.org/packages/53/34/188ad6b5581788d6d432454b94b291b231badf00e6ef5c41add46c40861f/nosy-1.1.tar.gz" } ], "1.1.1": [ { "comment_text": "", "digests": { "md5": "42303aec485bade1a3860315889b6629", "sha256": "17a6bb6d8496c8b83c457826f59663ff5ec6b49c40eba9b8797fbebf899ba53e" }, "downloads": -1, "filename": "nosy-1.1.1.tar.gz", "has_sig": false, "md5_digest": "42303aec485bade1a3860315889b6629", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 12492, "upload_time": "2011-09-14T06:31:21", "url": "https://files.pythonhosted.org/packages/c2/3a/e73b896ad620ff6c2e959199401f266a78485717f17acac5c4282a1471e0/nosy-1.1.1.tar.gz" } ], "1.1.2": [ { "comment_text": "", "digests": { "md5": "ac41d2ff34482f9fda8e034cbbde017d", "sha256": "a43f1930a69ec87e0e692cf280d7c32af7805e1080ce9e5587c75ad9c56b6645" }, "downloads": -1, "filename": "nosy-1.1.2.tar.gz", "has_sig": false, "md5_digest": "ac41d2ff34482f9fda8e034cbbde017d", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 8522, "upload_time": "2011-09-16T01:08:32", "url": "https://files.pythonhosted.org/packages/74/dc/c6b2d78f4249e5e67c7e1f12152c4de858aea8c9bfa97169671ca9d05d75/nosy-1.1.2.tar.gz" } ], "1.2": [ { "comment_text": "", "digests": { "md5": "426837528e144de698f7f9932c4d654e", "sha256": "d64fc82753c5f47857e8fdb84ecb4a7c5b110b376cb20b39d157f9f8ebc4a46c" }, "downloads": -1, "filename": "nosy-1.2.tar.gz", "has_sig": false, "md5_digest": "426837528e144de698f7f9932c4d654e", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 8348, "upload_time": "2015-12-06T22:39:56", "url": "https://files.pythonhosted.org/packages/e8/04/bdcd0e6454d3c169993b3fe4785c0f0ca5d8a770188e4fbab89a9055f5cd/nosy-1.2.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "426837528e144de698f7f9932c4d654e", "sha256": "d64fc82753c5f47857e8fdb84ecb4a7c5b110b376cb20b39d157f9f8ebc4a46c" }, "downloads": -1, "filename": "nosy-1.2.tar.gz", "has_sig": false, "md5_digest": "426837528e144de698f7f9932c4d654e", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 8348, "upload_time": "2015-12-06T22:39:56", "url": "https://files.pythonhosted.org/packages/e8/04/bdcd0e6454d3c169993b3fe4785c0f0ca5d8a770188e4fbab89a9055f5cd/nosy-1.2.tar.gz" } ] }