Skip to content

Releases: cloudflare/pint

v0.71.3

13 Mar 12:48
0a787ce

Choose a tag to compare

Fixed

  • Some parts of comments reported to GitHub & GitLab were not using collapsible blocks as intended.

v0.71.2

12 Mar 17:57
de95def

Choose a tag to compare

Fixed

  • Print only relevant lines when reporting problems.
  • Make comments reported to GitHub & GitLab more compact by using collapsible blocks.

v0.71.1

12 Mar 13:23
b31c654

Choose a tag to compare

Fixed

  • Don't create empty markdown blocks when reporting problems to GitHub & GitLab.
  • Added missing problem details to comments reported to BitBucket.

v0.71.0

11 Mar 12:33
92ea8bf

Choose a tag to compare

Added

  • Added names option to the parser block, which controls how does Prometheus validates
    label names.
  • Added promql/impossible check. This check duplicates some
    of the functionality of the promql/vector_matching so
    in the future the scope of promql/vector_matching checks
    will be reduced to avoid duplicated reports for the same issue.
  • Added ignoreMatchingElsewhere option to promql/series check.

Changed

  • Removed aggregation checks from the promql/fragile check - #1289.
  • promql/regexp check severity was reduced from bug to a warning.
  • This release contains some major changes to the way problems are reported by pint.
    Each problem might now point to the specific part of the PromQL query that caused the issue
    rather than just the line range on which the query is defined. Most, but not all, checks
    were updated to emit more detailed problem descriptions.

Fixed

  • Improved the logic of promql/series check to skip checks on some selectors
    which absence might be expected. For example using foo unless bar will now only have foo
    tested while bar is ignored by this check. This is because the query implies that bar
    might be present or missing and depending on that foo is evaluated.
  • Don't report regexp matchers with only digits in them ({code=~"5.*"}) as smelly in promql/regexp check.

v0.70.0

07 Jan 12:19
f0abcd7

Choose a tag to compare

Added

  • When running pint watch command /health HTTP endpoint can now be used for liveness probes.

Changed

  • When pint runs online checks against Thanos or other service that implements some, but not all, Prometheus APIs
    it would reports errors due to some API requests returning 404 Not Found HTTP errors.
    Now pint will automatically disable checks that rely on Prometheus API endpoints that are not supported
    and create a summary comment (when running pint ci) that lists disabled checks.
    This applies to these API endpoints:

    • /api/v1/status/config
    • /api/v1/status/flags
    • /api/v1/metadata

v0.69.1

10 Dec 12:23
11f0788

Choose a tag to compare

Fixed

  • # pint file/owner comments were not validated properly for files with no rules.
    This is now fixed.

v0.69.0

09 Dec 11:34
76b9706

Choose a tag to compare

Added

  • Added schema option to the parser configuration block for setting rule validation
    schema. This option is only used when files are parsed in strict mode - which is when
    rule file path does NOT match any of the parser:relaxed regex values or when simply
    parser:relaxed is not set at all.
    Default value is prometheus and tells pint to expect rule files with the schema
    expected by Prometheus itself. If you use pint to validate rules loaded into Thanos Rule
    component then set schema to thanos in your pint config file:

    parser {
      schema = "thanos"
    }

    File schema when using schema: prometheus (default):

    groups:
      - name: example
        rules:
          - record: ...
            expr: ...
          - alert: ...
            expr: ...

    When using schema: thanos:

    groups:
      - name: example
        partial_response_strategy: abort
        rules:
          - record: ...
            expr: ...
          - alert: ...
            expr: ...
  • Rules configured in pint config can now be locked - when a rule is locked it cannot
    be disabled by users by adding a # pint disable ... or # pint snooze ... comments.

Fixed

  • The console reporter won't color the output if --no-color flag is set.

v0.68.0

28 Nov 16:04
c5ff536

Choose a tag to compare

Added

Changed

  • pint now uses Prometheus 3.0 libraries
    for parsing PromQL, which adds support for new query syntax that allows for dots and UTF-8 chars
    in metric/label names, example:

    {"status.üp"} == 0
  • promql/rate will now report a warning if it detects a rate(sum(...))
    but doesn't have metadata to confirm if ... is a counter or not.

v0.67.3

31 Oct 15:39
dd9cea9

Choose a tag to compare

Fixed

  • Fixed a crash when parsing vector() calls with non-number arguments.

v0.67.2

31 Oct 10:37
e9cce03

Choose a tag to compare

Fixed