Commit Graph

420 Commits (1f6adf64f8673d6d72a7c69b167b2b9260289b97)
 

Author SHA1 Message Date
QuentinN42 1f6adf64f8
test: Class to test all fmt
QuentinN42 eb48e1d908
test: Base class test
QuentinN42 32de447205
test: severity_from_level
QuentinN42 b1ce2f290b
test: escape_xml
QuentinN42 dab7a8089b
fix: test_run_with_user_global_config_file patched
QuentinN42 40574518ba
feat: changed json format according to @adrienverge comment
QuentinN42 e04f03a76c
feat: auto infer formats
QuentinN42 4baaf1200d
feat: add message to the json format
QuentinN42 d24519c941
feat: add codeclimate output
QuentinN42 2839489337
typo
QuentinN42 6a06e8d512
feat: changed json output file name to path
https://github.com/adrienverge/yamllint/pull/442#issuecomment-1030572919
QuentinN42 805b9a9739
feat: junitxml formater
QuentinN42 fbf8108b97
feat: json formater
QuentinN42 6217241fec
refactor: use object inheritance for the formaters
QuentinN42 c4463c706f
feat: max_level as separate function
QuentinN42 46a12a83a8
fix: missed return statement
QuentinN42 3601817dd2
refactor: moved output at the end of the tests
QuentinN42 b858cbbb82
refactor: moved formater inside another file
QuentinN42 81951b3230
chore: ignore venv
Madison Swain-Bowden 4f1bbc33dc
docs: Fix link syntax on integration.rst
Jérôme Alet bb567ba395
comments: Allow whitespace after the shebang marker
Basically, any character is now allowed after the shebang marker.

Closes .

Whitespace after the #! marker on shebang lines is authorized and
optional, as explained on Wikipedia's entry for shebang line as can be
seen from the extracts below :

> White space after #! is optional

and

> It has been claimed[20] that some old versions of Unix expect the
> normal shebang to be followed by a space and a slash (#! /), but this
> appears to be untrue;[21] rather, blanks after the shebang have
> traditionally been allowed, and sometimes documented with a space
Trevor Royer d0392b34ca
github format: Update output to utilize groups
Resolves 

Update the github formatting to utilize groups in the output and provide
the line/column number for the error in the output log.
Trevor Royer 7246a0c800
cli: Separate --format=auto logic
Moved the auto arg_format selection out of the main if block into a
separate logic section to improve readability.

No logic changes.
Dmytro Bondar 9e6dfacceb Fix github actions workflow
- install correct python version
- set `fail-fast: false` to run all jobs
- remove hard-coded value for HOME directory
Dmytro Bondar 11e8d8ff37 Add support for Python 3.10, drop Python 3.5
- Add support for Python 3.10 released on 2021-10-04
- Drop support for Python 3.5 since it has reached end-of-life
Adrien Vergé f2e2e0c366 docs: Update CONTRIBUTING.rst
Be more precise in contributing instructions.
Adrien Vergé 058fef7559 yamllint version 1.26.3
Adrien Vergé f47d5318cf Restore setuptools requirement for Python < 3.8
This reverts commit 8f68248 "Remove runtime dep 'setuptools' for Python
< 3.8". It looks like removing setuptools induces problems on some
systems, see for example the linked discussion.

Fixes https://github.com/adrienverge/yamllint/issues/380.
Adrien Vergé 33ce0fa960 yamllint version 1.26.2
Kyle Finley 43744902e9
setup: update python_requires to comply with PEP 345/440
According to PEP 345 Requires-Python
(https://www.python.org/dev/peps/pep-0345/#requires-python), the value
of this field must be a valid Version Specifier
(https://www.python.org/dev/peps/pep-0345/#version-specifiers). Which
in turn expects this to comply with PEP 440
(https://www.python.org/dev/peps/pep-0440/).

While not an issue for those that directly use `pip`, this will cause
issues for `poetry` users in the next release (if their current stance
is maintained). Discussion of the issue and there stance can be found
here: https://github.com/python-poetry/poetry/issues/4095.
Adrien Vergé 85ccd625a3 yamllint version 1.26.1
Patryk Małek e53ea093e2
line_length: skip all hash signs starting comment
Adrien Vergé 5d8ef2ea23 CI: Simplify 'pip' commands
Adrien Vergé 4515269233 CI: Fix failing 'coverage' command because of $PATH
Very probably due to:
https://github.com/actions/virtual-environments/issues/2455#issuecomment-787511010
Adrien Vergé 66bf76a362 CI: Switch to GitHub Actions
Because Travis CI is dead.
Daniel M. Capella 8f682481c7
Remove runtime dep 'setuptools' for Python < 3.8
> In recent versions of setuptools and Python, console-script entry
points are using stdlib importlib by default, thus setuptools is no
longer needed as a runtime dependency.

https://github.com/pypa/setuptools/pull/2197
https://github.com/pypa/setuptools/blob/main/CHANGES.rst#v4730
https://docs.python.org/3/library/importlib.metadata.html
Adrien Vergé 0fff4e29e4 yamllint version 1.26.0
Adrien Vergé 1b378ed5b9 quoted-strings: Fix explicit octal recognition
PyYAML implements YAML spec version 1.1, not 1.2. Hence, values starting
with `0o` are not considered as numbers: they are just strings, so they
need quotes when `quoted-strings: {required: true}`.

>>> import yaml
>>> yaml.resolver.Resolver().resolve(yaml.nodes.ScalarNode, '100', (True, False))
'tag:yaml.org,2002:int'
>>> yaml.resolver.Resolver().resolve(yaml.nodes.ScalarNode, '0100', (True, False))
'tag:yaml.org,2002:int'
>>> yaml.resolver.Resolver().resolve(yaml.nodes.ScalarNode, '0o100', (True, False))
'tag:yaml.org,2002:str'

Let's try to prevent that.

Fixes https://github.com/adrienverge/yamllint/issues/351.
Adrien Vergé a3fc64d134 End support for Python 2
As planned and advertized, yamllint drops support for Python 2 on 2021.
Rusty Geldmacher ee4d163ff8
Allow only non-empty brackets/braces
We'd like to disallow brackets and braces in our YAML, but there's a
catch: the only way to describe an empty array or hash in YAML is to
supply an empty one (`[]` or `{}`). Otherwise, the value will be null.

This commit adds a `non-empty` option to `forbid` for brackets and
braces. When it is set, all flow and sequence mappings will cause errors
_except_ for empty ones.
Jason Mobarak 22335b294d Add support for Python 3.9, drop Python 3.4
Add support for Python 3.9 since it was officially released in October
and drop support for Python 3.4 since it is end-of-life (EOL).
Rex Ledesma 0f9dffde23
docs: Add configuration for integration with Arcanist
Mathieu Couette cef0b48993 tests: Add unittest aliases to Python 2.7
Mathieu Couette 11b1f1c14e tests: Fix indentation issues
Mathieu Couette 9ee8c27ac9 tests: Replace deprecated aliases
https://docs.python.org/3/library/unittest.html#deprecated-aliases
Florian Bruhin 8eebab68ab Fix typo in changelog
Per Lundberg 2103bd73de README.rst: fix typo
Adrien Vergé 85c8631183 tests: Stop using deprecated 'python setup.py test'
Using `python setup.py test` is now deprecated [1], users are encouraged
to be explicit about the test command.

Running yamllint tests using the Python standard library (`unittest`)
can be done using:

    python -m unittest discover

Why not nose, tox or pytest? Because they would add a dependency, make
tests running more complicated and verbose for new users, and their
benefit is not worth for this simple project (only 2 runtime
dependencies: PyYAML and pathspec).

Resolves https://github.com/adrienverge/yamllint/issues/328.

[1]: https://github.com/pypa/setuptools/pull/1878
Adrien Vergé 16e0f9d7b2 yamllint version 1.25.0
Mathieu Couette 1a4f9fe00f
gitignore: Add /.eggs
Quick PR to ignore the `/.eggs` folder, which appears to be generated every
time the `python setup.py test` command is run.

The content of the `./.eggs/README.txt` file:

> This directory contains eggs that were downloaded by setuptools to build,
> test, and run plug-ins.
> 
> This directory caches those eggs to prevent repeated downloads.
> 
> However, it is safe to delete this directory.