Skip to content

Conversation

@renovate
Copy link
Contributor

@renovate renovate bot commented Mar 9, 2025

This PR contains the following updates:

Package Change Age Adoption Passing Confidence
codenarc (source) 3.3.0 -> 3.6.0 age adoption passing confidence
org.codenarc:CodeNarc (source) 3.3.0 -> 3.6.0 age adoption passing confidence

Release Notes

CodeNarc/CodeNarc (codenarc)

v3.6.0

Updated/Enhanced Rules and Bug Fixes

  • #​790: Add ignoreMethodNames property to PublicMethodsBeforeNonPublicMethods and StaticMethodsBeforeInstanceMethods rules. (Peter Thomas)

New GitLab Report Writer

  • #​786: GitLab Code Quality report. The new GitlabCodeQualityReportWriter produces a JSON report of the CodeNarc results, suitable for consumption
    by GitLab. (Ulrich Eckhardt)

Build, Infrastructure and Tests

  • #​782: Upgrade to Groovy 4.0.24 and Groovy 3.0.23. MultipleUnaryOperatorsRule: Adjusted expected expression error message formatting.
  • #​787: Add tests for IndentationRule for multi-line method parameters and multi-line strings.
  • #​791: Support building CodeNarc with Gradle 8.x.
  • GenerateCodeNarcRulesProperties: Include in comment at top of “codenarc-base-rules.properties”: “Generated by the CodeNarc build process“.

v3.5.0

New Rules

  • New Jenkins ruleset with 7 new rules. By default, these apply only to 'Jenkinsfile' (Daniel Zänker):
    • #​771: ParameterOrReturnTypeNotSerializable rule: Every parameter and return type has to implement the Serializable interface in Jenkins
    • #​770: ObjectOverrideOnlyNonCpsMethods rule: Overridden methods of the standard library (e.g. from java.lang.Object) are often called from there and therefore must not be CPS transformed in Jenkins.
    • #​769: ForbiddenCallInCpsMethod rule: Some methods from the standard library cannot be CPS transformed and therefore must not be called from CPS transformed methods in Jenkins.
    • #​768: ExpressionInCpsMethodNotSerializable rule: Every expression/variable in a CPS transformed method in Jenkins can potentially be serialized and should therefore implement the Serializable interface.
    • #​767: CpsCallFromNonCpsMethod rule: CPS transformed methods may not be called from non CPS transformed methods in Jenkins.
    • #​766: ClosureInGString rule: Closures are CPS transformed in Jenkins and will cause an error at runtime when used in GStrings. Typically, they can be replaced by variable interpolation.
    • #​765: ClassNotSerializable rule: Classes in Jenkins pipeline libraries and Jenkinsfiles should generally implement the Serializable interface because every expression/variable used in a CPS transformed method can potentially be serialized.
  • #​772: New NonSerializableFieldInSerializableClass rule: All fields of a class that implements Serializable should also implement it. (Daniel Zänker).

Updated/Enhanced Rules and Bug Fixes

  • #​777: Speed up UnusedImport rule (Iulian Dragos).
  • #​762: BooleanMethodReturnsNull rule: Analyze contained closure expressions within their own context, not as part of outer method context.
  • #​781: DuplicateNumberLiteral rule: Fix duplicateNumberMinimumValue handling for Long and BigDecimal values.
  • #​695: Refactor directory-handling in results. (Ulrich Eckhardt)

v3.4.0

Updated/Enhanced Rules and Bug Fixes

  • #​751: ClassStartsWithBlankLine rule: Fix for interfaces, enums and traits with annotations on the same line. (Sven)
  • #​739: NoScriptBindings rule: Fix false positive when local variable is reassigned.
  • #​745: TrailingComma rule: Do not require trailing comma if last item is followed by closing bracket on the same line for Maps (that is consistent with Lists).
  • #​743: SpaceAfterCommentDelimiter and SpaceBeforeCommentDelimiter rules: Fix false negatives for dollar-slashy strings.
  • #​748: UnnecessarySetter rule: Skip calls to static methods in the same class.
  • #​749: UnnecessaryGString rule: Escape special chars in the violation message to reflect the actual source.
  • #​758: SpaceAroundOperator rule: Fix violation for the optional array operator ?[.

Command-line

  • #​754: Command-line (FilesystemSourceAnalyzer): Match includes and excludes against full source file path and also against path relative to the base directory.
  • #​756: Command-line (FilesystemSourceAnalyzer): Fix relative paths on Windows. (Steven Hartland)

Miscellaneous

  • #​744: Documentation: Fix wording and typos. (René Scheibe)
  • #​740: Documentation: In, "Naming Rules", fix asterisks not showing up when rendering Markdown.
  • #​759: Consolidate analysis results and violations for report writer tests.

Configuration

📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).

🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.

Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

🔕 Ignore: Close this PR and you won't be reminded about these updates again.


  • If you want to rebase/retry this PR, check this box

This PR was generated by Mend Renovate. View the repository job log.

@renovate renovate bot added the type: dependency upgrade Pull requests that update a dependency file label Mar 9, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

bug deps type: dependency upgrade Pull requests that update a dependency file

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant