10 Commits (master)

Author SHA1 Message Date
Adrien Vergé b92fc9cb31 colons: Prevent error when space before is mandatory
In the rare case when the key before `:` is an alias (e.g. `{*x : 4}`),
the space before `:` is required (although this requirement is not
enforced by PyYAML), the reason being that a colon can be part of an
anchor name. Consequently, this commit adapts the `colons` rule to avoid
failures when this happens.

See this comment from Tina Müller for more details:
https://github.com/adrienverge/yamllint/pull/550#discussion_r1155297373
Adrien Vergé 89b75b7c05 refactor: Remove UTF-8 headers in Python files
The `# -*- coding: utf-8 -*-` headers were useful for Python 2, and
aren't needed for Python 3 where UTF-8 is the default.

yamllint support of Python 2 was dropped in early 2021, see commit
a3fc64d "End support for Python 2".

Let's drop these headers.
Adrien Vergé 6b5948c06b Tests: Reorganize common and global tests
Adrien Vergé 96465008ab Rules: Fix `spaces_before` when prev is multi-line scalar
YAML content like the following one produced an error, because the
multi-line ScalarToken ends at the beginning of the 4th line (the one
with the value):

    ? >
        multi-line
        key
    : value
Adrien Vergé 0b0251bacc Rules: indentation: Add the 'indent-sequences' option
Using either 'yes', 'no' or 'whatever', the user will be able to choose
whether to force block sequence items to be indented, to force them not
to be indented, or don't care, respectively.
Adrien Vergé 8288a6f331 Rules: colons: Apply to '?' also
Adrien Vergé e81b73c111 Rules: indentation: Rewrite algorithm
Adrien Vergé 5c4c208b98 Rules: Add the 'braces' rule
Adrien Vergé d08eb22081 Rules: Add the 'brackets' rule
Adrien Vergé 350213b165 Initial commit