Metadata-Version: 2.1
Name: inlineplz
Version: 0.45.0
Summary: Inline your lint messages
Home-page: https://github.com/guykisel/inline-plz
Author: Guy Kisel
Author-email: guy.kisel@gmail.com
License: ISCL
Keywords: inlineplz
Platform: UNKNOWN
Classifier: Development Status :: 4 - Beta
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: ISC License (ISCL)
Classifier: Natural Language :: English
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.5
Classifier: Programming Language :: Python :: 3.6
Requires-Dist: unidiff
Requires-Dist: github3.py
Requires-Dist: xmltodict
Requires-Dist: pyyaml
Requires-Dist: scandir
Requires-Dist: uritemplate.py
Requires-Dist: dirtyjson
Requires-Dist: python-dateutil
Requires-Dist: git-url-parse
Requires-Dist: subprocess32
Requires-Dist: identify

==========
inline-plz
==========

.. image:: https://img.shields.io/pypi/v/inlineplz.svg
        :target: https://pypi.python.org/pypi/inlineplz

.. image:: https://img.shields.io/travis/guykisel/inline-plz.svg
        :target: https://travis-ci.org/guykisel/inline-plz


Tired of reading through CI console logs to find your lint errors? Inline your lint messages in your diffs!

* Free software: ISC license

Github webhook bot
------------------

* https://github.com/guykisel/inline-plz-bot

Features
--------

* Run linters against your code and comment in your diffs at the failing lines
* Automatically run linters with reasonable default configs
* Easy to add new linter configurations

How to use
----------

::

  pip install inlineplz
  inline-plz --install --autorun


You probably want to run the above in a CI job, not in your regular development environment.

You'll also need to provide the following either in the command line or via environment variables:

* owner: the repo organization/owner
* repo: the repo name
* token: your auth token (encrypt this, don't put this in plaintext in any public configurations!)
* url: the url of your scm host
* interface: the type of scm host (such as github)

Dependencies:

* node.js / npm
* ruby / gem
* python / pip
* haskell / cabal

Configuration
-------------

Besides specifying options at the command line or in environment variables, you can also set them in a yaml file.
You can create a file in the root of your repo named ``.inlineplz.yml``

For example:

::

  ignore_paths:
    - node_modules
    - .tox
    - .git
  enabled_linters:
    - prospector
  disabled_linters:
    - markdownlint-cli
    - gherkin-lint

For more see the examples folder in the repo.


Known issues
------------

* Currently for Travis-CI usage, inline-plz only works for PRs within the original repo, not PRs from forks. This is because encrypted creds in Travis-CI configs are encrypted per repo, and cannot be decrypted in PRs from forks. You can work around this using the webhook bot at https://github.com/guykisel/inline-plz-bot
* Currently the inline-plz console output can print out some misleading stack traces
* Currently dependencies get installed globally unless you pre-create a virtualenv
* Commits directly to master are not currently supported - only PRs get linted

Contribute
----------

* Report bugs/suggest features
* Add/update docs
* Add support for more linters

Credits
-------

This package was created with Cookiecutter_ and the `audreyr/cookiecutter-pypackage`_ project template.

.. _Cookiecutter: https://github.com/audreyr/cookiecutter
.. _`audreyr/cookiecutter-pypackage`: https://github.com/audreyr/cookiecutter-pypackage


=======
History
=======

0.19.0 (2016-07-17)
-------------------

* Add out of date check
* Config improvements

0.18.0 (2016-06-19)
-------------------

* Add gometalinter support
* Catch index errors in some parsers

0.17.0 (2016-06-12)
-------------------

* Add --trusted flag for installs
* Cleanup install dirs before run

0.16.1 (2016-06-08)
-------------------

* Fix path to markdownlint

0.16.0 (2016-06-05)
-------------------

* Run 'bundle install' during ruby gem installs
* Replace ruby markdownlint with node.js markdownlint
* Enable or disable linters in yaml

0.15.0 (2016-05-21)
-------------------

* Add bandit support

0.14.0 (2016-05-21)
-------------------

* Stringify error output
* Use time.time instead of time.clock
* Check github url
* Add dockerfile_lint support
* Add shellcheck support
* Run prospector with optional extras

0.13.0 (2016-04-19)
-------------------

* Add support for gherkin-lint
* Configure rflint to run per file
* Set jscs autorun to False
* Update eslint dotfiles

0.12.5 (2016-04-14)
-------------------

* Minor improvements to logging
* Add explicit jscs dir exclusions

0.12.4 (2016-04-13)
-------------------

* Encode output to ascii and replace errors

0.12.3 (2016-04-13)
-------------------

* Don't use unicode literals in setup.py

0.12.2 (2016-04-13)
-------------------

* Use unicode literals instead of decoding utf-8
* Set npm progress=false

0.12.1 (2016-04-12)
-------------------

* Replace decode errors

0.12.0 (2016-04-12)
-------------------

* Log all install output
* Set max comments per file in github interface

0.11.0 (2016-03-29)
-------------------

* Tell utf-8 encoder to replace errors
* Robotframework lint support

0.10.1 (2016-03-16)
-------------------

* Fix .mdlrc syntax

0.10.0 (2016-03-15)
-------------------

* Improve performance

0.9.0 (2016-03-14)
------------------

* Print installation and lint durations

0.8.2 (2016-03-11)
------------------

* Remove bad whitespace from stylint dotfile name

0.8.1 (2016-03-11)
------------------

* Detect yaml-lint install using just yaml-lint

0.8.0 (2016-02-29)
------------------

* Add --config-dir arg
* Add stylint support
* Add default mdl config

0.7.5 (2016-02-22)
------------------

* Quit early if no interface found

0.7.4 (2016-02-18)
------------------

* Catch OSError during install

0.7.3 (2016-02-18)
------------------

* Don't re-run install commands
* Better error handling

0.7.2 (2016-02-17)
------------------

* Handle missing config file

0.7.1 (2016-02-17)
------------------

* Load paths to ignore from yaml config

0.7.0 (2016-02-16)
------------------

* Add jsonlint support
* Add yaml-lint support
* Fix running per file
* Add restructuredtest-lint support
* Add markdownlint support

0.6.0 (2016-02-12)
------------------

* Only autorun if no dotfiles found for language

0.5.5 (2016-02-12)
------------------

* Catch GitHubError

0.5.4 (2016-02-12)
------------------

* Use os.walk instead of glob for file search
* Normalize message paths before storing

0.5.3 (2016-02-12)
------------------

* Include linter config files in MANIFEST.in

0.5.2 (2016-02-12)
------------------

* Fix installed check

0.5.1 (2016-02-12)
------------------

* Update deploy config
* Better installation

0.5.0 (2016-02-11)
------------------

* Unpin dependencies
* Add autorun mode
* Do a release on travis python version == 2.7

0.4.1 (2016-02-10)
------------------

* Load owner and repo from ghprbPullLink

0.4.0 (2016-02-08)
------------------

* Catch Exception on run
* Prepend linter name to message content

0.3.2 (2016-02-05)
------------------

* For js linters, just 'npm install'

0.3.1 (2016-02-05)
------------------

* Fix for jshint xml parsing

0.3.0 (2016-02-04)
------------------

* Add --max-comments arg

0.2.0 (2016-02-04)
------------------

* Disable running if not in a PR or if no Github is defined

0.1.1 (2016-02-03)
------------------

* Initial release supporting prospector, jshint, eslint, jscs

0.1.0 (2015-12-13)
------------------

* First release on PyPI.


