groq-test-suite
yamllint
Our great sponsors
groq-test-suite | yamllint | |
---|---|---|
1 | 11 | |
10 | 2,706 | |
- | - | |
5.0 | 8.3 | |
25 days ago | 2 months ago | |
JavaScript | Python | |
- | GNU General Public License v3.0 only |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
groq-test-suite
-
The Norway Problem
TOML also has a few restrictions, such as not supporting mixed-type arrays like [1, "hello", true], or arrays at the root of the data. JSON can represent any TOML value (as far as I know), but TOML cannot represent any JSON value.
At my company we use YAML a lot for table-driven tests (e.g. [1]), and this not only means lots of nested arrays, but also having to represent pure data (i.e. the expected output of a test), which requires a format that supports encoding arbitrary data structures.
[1] https://github.com/sanity-io/groq-test-suite/
yamllint
- yamllint – A Linter for YAML Files
-
IT Pro Tuesday #227 - Notification Tool, SPF/DKIM/DMARC Tutorial, YAML Linter & More
yamllint, as the name suggests, is a linter for YAML files. It checks syntax validity, as well as looking for more-complex errors like key repetition and cosmetic problems such as line length, trailing spaces, indentation etc. This one was indly recommended by yankdevil.
-
StrictYAML
StrictYAML removes features that might be useful for some usecases, such as Node anchors+Refs and Flow Style.
I don't think the cost of an additional standard is worth it in this case.
While YAML has issues, they aren't much of problem if you use a linter, such as yamllint [1].
1. https://github.com/adrienverge/yamllint
-
Data and System Visualization Tools That Will Boost Your Productivity
On top of the above-mentioned tools, it's also a good idea to use YAML linter such this one or its CLI equivalent, which will validate and cleanup your documents.
- Anyone actually fluent in YAML?
-
Let CI check & fix your yamls
yamlfixer automates the fixing of problems reported by yamllint by parsing its output.
-
Modern Python setup for quality development
repos: - repo: https://github.com/pre-commit/pre-commit-hooks rev: v4.0.1 hooks: - id: check-added-large-files - id: check-ast - id: check-builtin-literals - id: check-case-conflict - id: check-docstring-first - id: check-executables-have-shebangs - id: check-json - id: check-merge-conflict - id: check-symlinks - id: check-toml - id: check-vcs-permalinks - id: check-xml - id: check-yaml args: [--allow-multiple-documents] - id: debug-statements - id: detect-aws-credentials args: [--allow-missing-credentials] - id: destroyed-symlinks - id: end-of-file-fixer - id: fix-byte-order-marker - id: fix-encoding-pragma args: [--remove] - id: forbid-new-submodules - id: mixed-line-ending args: [--fix=auto] - id: name-tests-test args: [--django] - id: requirements-txt-fixer - id: trailing-whitespace - repo: local hooks: - id: black name: black entry: poetry run black language: system types: [python] - id: flake8 name: flake8 entry: poetry run flake8 language: system types: [python] - repo: https://github.com/pycqa/isort rev: "5.9.1" hooks: - id: isort args: - --profile - black - --filter-files - repo: https://github.com/adrienverge/yamllint.git rev: v1.26.1 hooks: - id: yamllint args: [-c=.yamllint.yaml] - repo: https://gitlab.com/devopshq/gitlab-ci-linter rev: v1.0.2 hooks: - id: gitlab-ci-linter args: - "--server" - "https://your.gitlab.server" # Need env var GITLAB_PRIVATE_TOKEN with gitlab api read token - repo: https://github.com/commitizen-tools/commitizen rev: v2.17.11 hooks: - id: commitizen stages: [commit-msg] - repo: https://github.com/jumanjihouse/pre-commit-hooks rev: 2.1.5 # or specific git tag hooks: - id: forbid-binary - id: shellcheck - id: shfmt
-
YAML formatter recommendation
If you wanted a linter.
-
CloudFormation Noob - using YAML
Or, run Yamllint externally. I do this, because I have more control: https://github.com/adrienverge/yamllint
-
The Norway Problem
You can catch this with yamllint (https://github.com/adrienverge/yamllint):
% cat countries.yml
What are some alternatives?
lua-patterns - Exposing Lua string patterns to Rust
pyyaml - Canonical source repository for PyYAML
tao-data-js - TAO data JavaScript module
cue - CUE has moved to https://github.com/cue-lang/cue
pre-commit - A framework for managing and maintaining multi-language pre-commit hooks.
Flake8 - flake8 is a python tool that glues together pycodestyle, pyflakes, mccabe, and third-party plugins to check the style and quality of some python code.
edn - Extensible Data Notation
kubernetes - Production-Grade Container Scheduling and Management
yamlfix - A simple opinionated yaml formatter that keeps your comments!
ron - Rusty Object Notation
black - The uncompromising Python code formatter
toml.io - Source Code for toml.io