diff --git a/changelog.html b/changelog.html
index b74b49e6d2832eaaf3d14bdecd4e7a14ab6d5fcc..edfaeac96d97739a216c66bbfa336dfc471a5b4a 100644
--- a/changelog.html
+++ b/changelog.html
@@ -55,6 +55,9 @@ Upcoming changes
+ -
+ Configurable case sensitivity mode for user IDs.
+ (issue 22247)
-
Extension point for project naming strategies did not work from actual plugins.
(issue 23127)
diff --git a/core/src/main/java/hudson/model/User.java b/core/src/main/java/hudson/model/User.java
index 25543391bfe31edcff1c01f2d1d21a3f30ee7806..2d3d4b1444d980f0ae944b9933c5b6a70519bf5d 100644
--- a/core/src/main/java/hudson/model/User.java
+++ b/core/src/main/java/hudson/model/User.java
@@ -133,7 +133,7 @@ public class User extends AbstractModelObject implements AccessControlled, Descr
* {@link hudson.security.SecurityRealm#getUserIdStrategy()}
*
* @return the {@link jenkins.model.IdStrategy} for use with {@link User} instances.
- * @since 1.560
+ * @since 1.566
*/
@Nonnull
public static IdStrategy idStrategy() {
@@ -497,7 +497,7 @@ public class User extends AbstractModelObject implements AccessControlled, Descr
/**
* Called when changing the {@link IdStrategy}.
- * @since 1.560
+ * @since 1.566
*/
public static void rekey() {
final IdStrategy strategy = idStrategy();
@@ -712,7 +712,6 @@ public class User extends AbstractModelObject implements AccessControlled, Descr
* {@link java.util.concurrent.locks.ReadWriteLock#readLock()} for normal access and
* {@link java.util.concurrent.locks.ReadWriteLock#writeLock()} for {@link #rekey()} or any other operation
* that requires operating on the map as a whole.
- * @since 1.560
*/
private static final ReadWriteLock byNameLock = new ReentrantReadWriteLock();
diff --git a/core/src/main/java/hudson/security/SecurityRealm.java b/core/src/main/java/hudson/security/SecurityRealm.java
index e17cbfc445298ffedbe46bcc99b4577f7477e414..4e4e8484a4a517888a499864b949bf8be7345770 100644
--- a/core/src/main/java/hudson/security/SecurityRealm.java
+++ b/core/src/main/java/hudson/security/SecurityRealm.java
@@ -156,7 +156,7 @@ public abstract class SecurityRealm extends AbstractDescribableImpl implements ExtensionPoint,
Comparator {
@@ -135,8 +135,6 @@ public abstract class IdStrategy extends AbstractDescribableImpl imp
/**
* The default case insensitive {@link IdStrategy}
- *
- * @since 1.560
*/
public static class CaseInsensitive extends IdStrategy {
@@ -177,8 +175,6 @@ public abstract class IdStrategy extends AbstractDescribableImpl imp
/**
* A case sensitive {@link IdStrategy}
- *
- * @since 1.560
*/
public static class CaseSensitive extends IdStrategy {
@@ -256,8 +252,6 @@ public abstract class IdStrategy extends AbstractDescribableImpl imp
* Note: Not all email addresses are case sensitive. It is knowledge that belongs to the server that holds the
* mailbox. Most sane system administrators do not configure their accounts using case sensitive mailboxes
* but the RFC does allow them the option to configure that way. Domain names are always case insensitive per RFC.
- *
- * @since 1.560
*/
public static class CaseSensitiveEmailAddress extends CaseSensitive {
diff --git a/core/src/main/java/jenkins/model/IdStrategyDescriptor.java b/core/src/main/java/jenkins/model/IdStrategyDescriptor.java
index fd6ff0f3f9ee0e4ea07b8c640317584c39601df5..a1c5f6d21b72cd4d23bbf90110dc453cba930e82 100644
--- a/core/src/main/java/jenkins/model/IdStrategyDescriptor.java
+++ b/core/src/main/java/jenkins/model/IdStrategyDescriptor.java
@@ -28,7 +28,7 @@ import hudson.model.Descriptor;
/**
* The {@link hudson.model.Descriptor} for {@link jenkins.model.IdStrategy}
*
- * @since 1.560
+ * @since 1.566
*/
public abstract class IdStrategyDescriptor extends Descriptor {