Skip to content

Conversation

@gianarb
Copy link
Contributor

@gianarb gianarb commented Dec 17, 2025

Reference #15149

Motivation

Currently we do not lint the new-features.md file because it fails
straight during a release.

Modifications

This pR makes the new-features.md compliant with the markdownlint
tool and it adds linting check at the right time and not during a CI
release.

I had to fix a few .features/pending files that could not be combined into a
new-features.md without making the linter to go crazy.

And then I added markdownlint in a few more places in the Makefile.

Verification

make features-update should work with no issue and lint the generated file.

Documentation

@gianarb gianarb marked this pull request as ready for review December 17, 2025 09:07
Copy link
Member

@Joibel Joibel left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We need new features not to make it into the repo with these failures too.

@gianarb gianarb force-pushed the feat/md-lint-new-features branch from 39595ae to cac9a32 Compare December 22, 2025 10:34
@gianarb gianarb requested a review from Joibel December 22, 2025 10:34
.PHONY: features-validate
features-validate: hack/featuregen/featuregen
# Validate all pending feature documentation files
$< validate
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think people who're developing a new feature would expect to be able to run make features-validate and have it tell them if it would fail linting - but currently this won't.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I thought about the same, but I see a bit of a race condition here because in order to run the mdcheck we need to actually have a file and not print to stdout. This makes the features-validate very similar to features-update one. But if we merge those it means that the user running features-update in order to run correctly needs to know the VERSION to set, and I think it is not what we want.

Another option I thought about is to change the features-validate target to temporarily write into a file somewhere, mdcheck and remove the file. In this way it is "okey" if the generated output does not have the correct version but the default one (latest).

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I don't really mind how we achieve this, the validate target's only job is to validate the markdown - and fixing it so VERSION doesn't matter is fine. Be as brutal as needed. If it effectively runs update, that's also fine - perhaps we can avoid a temp file by piping the output to markdown lint?

@gianarb gianarb force-pushed the feat/md-lint-new-features branch 3 times, most recently from 97b6c85 to 0359310 Compare January 8, 2026 15:04
@gianarb gianarb force-pushed the feat/md-lint-new-features branch from 0359310 to c8d050d Compare January 8, 2026 16:23
@gianarb gianarb requested a review from Joibel January 8, 2026 16:24
Reference argoproj#15149

Currently we do not lint the new-features.md file because it fails
straight during a release.

This commit makes the new-features.md compliant with the markdownlint
tool and it adds linting check at the right time and not during a CI
release.

Signed-off-by: Gianluca Arbezzano <[email protected]>
@gianarb gianarb force-pushed the feat/md-lint-new-features branch from c8d050d to 0bd9adb Compare January 8, 2026 17:25
Copy link
Member

@Joibel Joibel left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Awesome, thanks

@Joibel Joibel enabled auto-merge (squash) January 13, 2026 08:59
@Joibel Joibel merged commit 4540e18 into argoproj:main Jan 13, 2026
68 of 70 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants