Skip to content

Encode log recorder name when redirecting#26331

Merged
MarkEWaite merged 3 commits intojenkinsci:masterfrom
Flamki:fix-log-recorder-non-ascii-26318
Feb 20, 2026
Merged

Encode log recorder name when redirecting#26331
MarkEWaite merged 3 commits intojenkinsci:masterfrom
Flamki:fix-log-recorder-non-ascii-26318

Conversation

@Flamki
Copy link
Contributor

@Flamki Flamki commented Feb 18, 2026

Fixes #26318

Testing done

  • Added a regression test createLogRecorderWithNonAsciiName in LogRecorderManagerTest.
  • The test creates a log recorder named Journal d’accès and verifies that the configure URL resolves with an encoded path segment.
  • CI builds are running for full validation.

Screenshots (UI changes only)

Before

N/A (no UI layout change)

After

N/A (no UI layout change)

Proposed changelog entries

  • Redirect to the correct URL when creating log recorders with non-ASCII names.

Proposed changelog category

/label bug

Proposed upgrade guidelines

N/A

Submitter checklist

  • The issue, if it exists, is well-described.
  • The changelog entries and upgrade guidelines are appropriate for the audience affected by the change (users or developers, depending on the change) and are in the imperative mood (see examples). Fill in the Proposed upgrade guidelines section only if there are breaking changes or changes that may require extra steps from users during upgrade.
  • There is automated testing or an explanation as to why this change has no tests.
  • New public classes, fields, and methods are annotated with @Restricted or have @since TODO Javadocs, as appropriate. (No new public API in this PR.)
  • New deprecations are annotated with @Deprecated(since = "TODO") or @Deprecated(forRemoval = true, since = "TODO"), if applicable. (No new deprecations in this PR.)
  • UI changes do not introduce regressions when enforcing the current default rules of Content Security Policy Plugin. In particular, new or substantially changed JavaScript is not defined inline and does not call eval to ease future introduction of Content Security Policy (CSP) directives (see documentation). (No JS/UI behavior change in this PR.)
  • For dependency updates, there are links to external changelogs and, if possible, full differentials. (No dependency updates in this PR.)
  • For new APIs and extension points, there is a link to at least one consumer. (No new API/extension point in this PR.)

Desired reviewers

@jenkinsci/core-pr-reviewers

Before the changes are marked as ready-for-merge:

Maintainer checklist

  • There are at least two (2) approvals for the pull request and no outstanding requests for change.
  • Conversations in the pull request are over, or it is explicit that a reviewer is not blocking the change.
  • Changelog entries in the pull request title and/or Proposed changelog entries are accurate, human-readable, and in the imperative mood.
  • Proper changelog labels are set so that the changelog can be generated automatically.
  • If the change needs additional upgrade steps from users, the upgrade-guide-needed label is set and there is a Proposed upgrade guidelines section in the pull request title (see example).
  • If it would make sense to backport the change to LTS, be a Bug or Improvement, and either the issue or pull request must be labeled as lts-candidate to be considered.

@comment-ops-bot comment-ops-bot bot added the bug For changelog: Minor bug. Will be listed after features label Feb 18, 2026
Copy link
Contributor

@MarkEWaite MarkEWaite left a comment

Choose a reason for hiding this comment

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

Thanks for the pull request.

Format violations show that you either did not read the contributing guide or you missed the section that describes automated formatting. Read the guide, follow the instructions, and submit changes to correct the formatting issue.

I'm marking the pull request as "Draft". When you've fixed the issues and the checks (ci.jenkins.io and others) are passing, you can mark it as ready for review.

@MarkEWaite MarkEWaite marked this pull request as draft February 19, 2026 04:38
@MarkEWaite MarkEWaite marked this pull request as ready for review February 19, 2026 13:52
Copy link
Contributor

@MarkEWaite MarkEWaite left a comment

Choose a reason for hiding this comment

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

Successfully tested with a few different UTF-8 strings, including:

  • A person 人 symbol from CJK - 3 byte UTF
  • Aña - 2 byte Latin-1 supplement
  • Happy - 😊- 4 byte emoji
  • Hello, world € - 3 byte common symbol
  • I ♥ logs - 4 byte common symbol
  • Léon ama logs anche - 2 byte Latin-1 supplement

Confirmed with the debugger that the test code exercises the modified line

This PR is now ready for merge. We will merge it after approximately 24 hours if there is no negative feedback.

/label ready-for-merge

@comment-ops-bot comment-ops-bot bot added the ready-for-merge The PR is ready to go, and it will be merged soon if there is no negative feedback label Feb 19, 2026
@MarkEWaite MarkEWaite added the squash-merge-me Unclean or useless commit history, should be merged only with squash-merge label Feb 19, 2026
@MarkEWaite MarkEWaite self-assigned this Feb 19, 2026
@MarkEWaite
Copy link
Contributor

@Flamki you removed the maintainer checklist from the pull request template. In the future, that mistake will result in the pull request being immediately closed. Please restore the maintainer checklist from the pull request template.

@MarkEWaite MarkEWaite changed the title [JENKINS-26318] Encode log recorder redirect name Encode log recorder redirect name Feb 19, 2026
@MarkEWaite MarkEWaite changed the title Encode log recorder redirect name Encode log recorder name when redirecting Feb 19, 2026
@Flamki
Copy link
Contributor Author

Flamki commented Feb 19, 2026

Thanks for the review and guidance. I restored the maintainer checklist in the PR description and cleaned up the formatting/template sections to match the contribution requirements. The fix and regression test are unchanged. I’ll wait for CI to finish and for maintainer merge once the waiting window completes.

@MarkEWaite MarkEWaite merged commit 3329d5d into jenkinsci:master Feb 20, 2026
17 checks passed
@welcome
Copy link

welcome bot commented Feb 20, 2026

Congratulations on getting your very first Jenkins core pull request merged 🎉🥳

This is a fantastic achievement, and we're thrilled to have you as part of our community! Thank you for your valuable input, and we look forward to seeing more of your contributions in the future!

We would like to invite you to join the community chats and forums to meet other Jenkins contributors 😊
Don't forget to check out the participation page to learn more about how to contribute to Jenkins.


Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

bug For changelog: Minor bug. Will be listed after features ready-for-merge The PR is ready to go, and it will be merged soon if there is no negative feedback squash-merge-me Unclean or useless commit history, should be merged only with squash-merge

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Wrong log recorder redirect when name contains non-ASCII characters

2 participants