Skip to content

Releases: cvquesty/openvox-lint

v1.2.0 — legacy_facts fix by @hbro

Choose a tag to compare

@cvquesty cvquesty released this 12 Mar 16:31

First Community Contribution! 🎉

Thanks to @hbro (Hans Broeckx) for this excellent contribution!

Fixed

  • legacy_facts false positives on local variables — The check no longer flags class/define parameters or lambda block parameters that happen to share names with legacy facts ($path, $type, $os, etc.). Previously, any variable with a legacy fact name would trigger a warning, even when it was clearly a locally-scoped parameter with no relation to facts.

    The fix adds a pre-scan phase that collects all locally declared variable names from:

    • Class and defined type parameter lists
    • Lambda block parameter lists (|$var|)

    These local variables are then excluded from the legacy fact check, eliminating false positives while still correctly detecting actual legacy fact references.

Contributors


Full Changelog: v1.1.1...v1.2.0

v1.1.1 - Documentation Overhaul

Choose a tag to compare

@cvquesty cvquesty released this 12 Mar 16:00

Documentation

  • Comprehensive technical documentation rewrite: Complete overhaul of DOCUMENTATION.md with:

    • Full API reference for all classes (Token, Lexer, CheckPlugin, Configuration, Linter, Report)
    • Complete documentation for all 37 checks with good/bad code examples
    • Organized checks by category (Whitespace, Strings, Variables, Resources, etc.)
    • Comprehensive token types reference
    • Plugin development guide with examples
    • Migration guide from puppet-lint
  • New CONTRIBUTING.md: Added comprehensive contributor guide with:

    • Development setup instructions
    • Project structure documentation
    • Testing instructions
    • Check plugin writing guide
    • Coding standards
    • Release process
  • Hiera 3 → Hiera 5 clarification: Updated all documentation to clarify that Hiera 3 is fully deprecated and only Hiera 5 is supported in Puppet 8 / OpenVox 8. The hiera3_function check now explicitly references "Hiera 5 lookup()" as the replacement.

Changed

  • hiera3_function error message: Improved to explicitly mention Hiera 5:
    deprecated Hiera 3 function 'hiera()' — use Hiera 5 lookup() instead

Full Changelog: v1.1.0...v1.1.1

openvox-lint v1.0.7

Choose a tag to compare

@cvquesty cvquesty released this 27 Feb 21:10

openvox-lint v1.0.7

First official RubyGems.org release! 🎉

Install

gem install openvox-lint

Ruby 2.5+ Compatibility

Supports every currently-supported enterprise platform out of the box:

Platform Ruby Version Status
RHEL 8 / Rocky 8 / Alma 8 2.5
SLES 15 2.5
macOS (system Ruby) 2.6
Ubuntu 20.04+ 2.7+
Debian 11+ 2.7+
RHEL 9 / Rocky 9 3.0+
Ruby 3.1, 3.2, 3.3 3.x

No separate Ruby installation needed on any of these platforms.

What It Does

38 built-in checks covering whitespace, quoting, resources, classes, conditionals, Puppet 8/OpenVox 8 compatibility (legacy facts, hiera3, import statements), and more.

openvox-lint manifests/
openvox-lint --list-checks
openvox-lint --fix manifests/

Links

openvox-lint v1.0.6

Choose a tag to compare

@cvquesty cvquesty released this 27 Feb 19:25

openvox-lint v1.0.6

Ruby 2.6+ Compatibility

Lowered the minimum Ruby version from 3.1.0 to 2.6.0. The codebase uses no Ruby 3.x-specific features, so it works with:

  • macOS system Ruby (2.6.10) — no separate Ruby installation needed
  • Ruby 3.0, 3.1, 3.2, 3.3
  • Any Linux distribution with Ruby 2.6+

This makes openvox-lint installable on a fresh macOS system with just:

gem install openvox-lint

Installation

gem install openvox-lint

Requirements

  • Ruby >= 2.6.0
  • Compatible with OpenVox 8.x and Puppet 7-8
  • 38 built-in checks

openvox-lint v1.0.5

Choose a tag to compare

@cvquesty cvquesty released this 27 Feb 02:03

openvox-lint v1.0.5

Documentation release — comprehensive README enhancements.

What's New

  • Status badges: Version, Ruby requirement, license, check count, status
  • Enabling and Disabling Checks guide:
    • --no-<check>-check to disable individual checks
    • --only-checks to run specific checks only
    • .openvox-lint.rc configuration file
    • # lint:ignore:check_name inline suppression
    • --list-checks to see all 38 built-in checks
  • Updating instructions (gem update, bundler, source)
  • Uninstalling instructions (gem removal, config cleanup, bundler removal)

Installation

gem install openvox-lint

Requirements

  • Ruby >= 3.1.0
  • Compatible with OpenVox 8.x and Puppet 7-8