Skip to content

[JENKINS-23349] Item names containing an emoji are not accessible #23170

Closed

Description

@jenkins-infra-bot

Version: 1.564

How to reproduce:

  • Create a view, and start it with an emoji in the name
  • Enjoy the 404 page

I'm fairly sure this will impact other locations as well, but I haven't verified.

Possible solutions:

  • Do not allow characters in names that will create this behaviour
  • Make sure that url generated can be used to find the view
System Properties

Name  ↓
Value   
awt.toolkit	sun.awt.X11.XToolkit
executable-war	/usr/share/jenkins/jenkins.war
file.encoding	UTF-8
file.encoding.pkg	sun.io
file.separator	/
hudson.diyChunking	true
java.awt.graphicsenv	sun.awt.X11GraphicsEnvironment
java.awt.headless	true
java.awt.printerjob	sun.print.PSPrinterJob
java.class.path	/usr/share/jenkins/jenkins.war
java.class.version	51.0
java.endorsed.dirs	/usr/lib/jvm/java-7-openjdk-amd64/jre/lib/endorsed
java.ext.dirs	/usr/lib/jvm/java-7-openjdk-amd64/jre/lib/ext:/usr/java/packages/lib/ext
java.home	/usr/lib/jvm/java-7-openjdk-amd64/jre
java.io.tmpdir	/tmp
java.library.path	/usr/java/packages/lib/amd64:/usr/lib/x86_64-linux-gnu/jni:/lib/x86_64-linux-gnu:/usr/lib/x86_64-linux-gnu:/usr/lib/jni:/lib:/usr/lib
java.runtime.name	OpenJDK Runtime Environment
java.runtime.version	1.7.0_55-b14
java.specification.name	Java Platform API Specification
java.specification.vendor	Oracle Corporation
java.specification.version	1.7
java.vendor	Oracle Corporation
java.vendor.url	http://java.oracle.com/
java.vendor.url.bug	http://bugreport.sun.com/bugreport/
java.version	1.7.0_55
java.vm.info	mixed mode
java.vm.name	OpenJDK 64-Bit Server VM
java.vm.specification.name	Java Virtual Machine Specification
java.vm.specification.vendor	Oracle Corporation
java.vm.specification.version	1.7
java.vm.vendor	Oracle Corporation
java.vm.version	24.51-b03
jna.platform.library.path	/usr/lib/x86_64-linux-gnu:/lib/x86_64-linux-gnu:/lib64:/usr/lib:/lib
line.separator	
mail.smtp.sendpartial	true
mail.smtps.sendpartial	true
os.arch	amd64
os.name	Linux
os.version	3.11.0-12-generic
path.separator	:
sun.arch.data.model	64
sun.boot.class.path	/usr/lib/jvm/java-7-openjdk-amd64/jre/lib/resources.jar:/usr/lib/jvm/java-7-openjdk-amd64/jre/lib/rt.jar:/usr/lib/jvm/java-7-openjdk-amd64/jre/lib/sunrsasign.jar:/usr/lib/jvm/java-7-openjdk-amd64/jre/lib/jsse.jar:/usr/lib/jvm/java-7-openjdk-amd64/jre/lib/jce.jar:/usr/lib/jvm/java-7-openjdk-amd64/jre/lib/charsets.jar:/usr/lib/jvm/java-7-openjdk-amd64/jre/lib/netx.jar:/usr/lib/jvm/java-7-openjdk-amd64/jre/lib/plugin.jar:/usr/lib/jvm/java-7-openjdk-amd64/jre/lib/rhino.jar:/usr/lib/jvm/java-7-openjdk-amd64/jre/lib/jfr.jar:/usr/lib/jvm/java-7-openjdk-amd64/jre/classes
sun.boot.library.path	/usr/lib/jvm/java-7-openjdk-amd64/jre/lib/amd64
sun.cpu.endian	little
sun.cpu.isalist	
sun.font.fontmanager	sun.awt.X11FontManager
sun.io.unicode.encoding	UnicodeLittle
sun.java.command	/usr/share/jenkins/jenkins.war --webroot=/var/cache/jenkins/war --httpPort=8080 --ajp13Port=-1
sun.java.launcher	SUN_STANDARD
sun.jnu.encoding	UTF-8
sun.management.compiler	HotSpot 64-Bit Tiered Compilers
sun.os.patch.level	unknown
user.country	US
user.dir	/
user.home	/var/lib/jenkins
user.language	en
user.name	jenkins
user.timezone	Etc/UTC
Environment Variables

Name  ↓
Value   
_	/usr/bin/daemon
HOME	/var/lib/jenkins
JENKINS_HOME	/var/lib/jenkins
LANG	en_US.UTF-8
LOGNAME	jenkins
MAIL	/var/mail/jenkins
PATH	/usr/local/bin:/usr/bin:/bin:/usr/local/games:/usr/games
PWD	/var/lib/jenkins
SHELL	/bin/bash
SHLVL	1
TERM	xterm-256color
USER	jenkins
XDG_RUNTIME_DIR	/run/user/0
XDG_SESSION_ID	5
Plugins

Name  ↓
Version   
Enabled   
Pinned   
ant	1.2	false	false
antisamy-markup-formatter	1.1	true	false
build-monitor-plugin	1.3+build.72	true	false
build-timeout	1.13	true	false
bulk-builder	1.5	true	false
configurationslicing	1.38.3	true	false
copy-to-slave	1.4.3	true	false
credentials	1.11	true	true
custom-view-tabs	1.0	true	false
cvs	2.11	false	false
external-monitor-job	1.2	true	false
git	2.2.1	true	false
git-client	1.9.1	true	false
git-parameter	0.3.2	true	false
greenballs	1.14	true	false
hipchat	0.1.4	true	false
javadoc	1.1	false	false
jenkins-tag-cloud-plugin	1.6	true	false
ldap	1.9	false	true
mailer	1.8	true	true
mapdb-api	1.0.1.0	true	false
matrix-auth	1.2	true	true
matrix-project	1.2	true	false
maven-plugin	2.3	false	false
nested-view	1.14	true	false
pam-auth	1.1	false	false
scm-api	0.2	true	false
simple-theme-plugin	0.3	true	false
ssh	2.4	true	false
ssh-agent	1.4.1	true	false
ssh-credentials	1.6.1	true	true
ssh-slaves	1.6	true	true
subversion	2.4	false	true
translation	1.11	true	true
windows-slaves	1.0	true	false


Originally reported by bertg_tf, imported from: Item names containing an emoji are not accessible
  • status: Resolved
  • priority: Minor
  • component(s): core
  • label(s): url-encoding, views
  • resolution: Fixed
  • resolved: 2019-08-20T16:25:20+00:00
  • votes: 1
  • watchers: 9
  • imported: 2025-11-24
Raw content of original issue

Version: 1.564

How to reproduce:

  • Create a view, and start it with an emoji in the name
  • Enjoy the 404 page

I'm fairly sure this will impact other locations as well, but I haven't verified.

Possible solutions:

  • Do not allow characters in names that will create this behaviour
  • Make sure that url generated can be used to find the view
System Properties

Name  ↓
Value   
awt.toolkit	sun.awt.X11.XToolkit
executable-war	/usr/share/jenkins/jenkins.war
file.encoding	UTF-8
file.encoding.pkg	sun.io
file.separator	/
hudson.diyChunking	true
java.awt.graphicsenv	sun.awt.X11GraphicsEnvironment
java.awt.headless	true
java.awt.printerjob	sun.print.PSPrinterJob
java.class.path	/usr/share/jenkins/jenkins.war
java.class.version	51.0
java.endorsed.dirs	/usr/lib/jvm/java-7-openjdk-amd64/jre/lib/endorsed
java.ext.dirs	/usr/lib/jvm/java-7-openjdk-amd64/jre/lib/ext:/usr/java/packages/lib/ext
java.home	/usr/lib/jvm/java-7-openjdk-amd64/jre
java.io.tmpdir	/tmp
java.library.path	/usr/java/packages/lib/amd64:/usr/lib/x86_64-linux-gnu/jni:/lib/x86_64-linux-gnu:/usr/lib/x86_64-linux-gnu:/usr/lib/jni:/lib:/usr/lib
java.runtime.name	OpenJDK Runtime Environment
java.runtime.version	1.7.0_55-b14
java.specification.name	Java Platform API Specification
java.specification.vendor	Oracle Corporation
java.specification.version	1.7
java.vendor	Oracle Corporation
java.vendor.url	http://java.oracle.com/
java.vendor.url.bug	http://bugreport.sun.com/bugreport/
java.version	1.7.0_55
java.vm.info	mixed mode
java.vm.name	OpenJDK 64-Bit Server VM
java.vm.specification.name	Java Virtual Machine Specification
java.vm.specification.vendor	Oracle Corporation
java.vm.specification.version	1.7
java.vm.vendor	Oracle Corporation
java.vm.version	24.51-b03
jna.platform.library.path	/usr/lib/x86_64-linux-gnu:/lib/x86_64-linux-gnu:/lib64:/usr/lib:/lib
line.separator	
mail.smtp.sendpartial	true
mail.smtps.sendpartial	true
os.arch	amd64
os.name	Linux
os.version	3.11.0-12-generic
path.separator	:
sun.arch.data.model	64
sun.boot.class.path	/usr/lib/jvm/java-7-openjdk-amd64/jre/lib/resources.jar:/usr/lib/jvm/java-7-openjdk-amd64/jre/lib/rt.jar:/usr/lib/jvm/java-7-openjdk-amd64/jre/lib/sunrsasign.jar:/usr/lib/jvm/java-7-openjdk-amd64/jre/lib/jsse.jar:/usr/lib/jvm/java-7-openjdk-amd64/jre/lib/jce.jar:/usr/lib/jvm/java-7-openjdk-amd64/jre/lib/charsets.jar:/usr/lib/jvm/java-7-openjdk-amd64/jre/lib/netx.jar:/usr/lib/jvm/java-7-openjdk-amd64/jre/lib/plugin.jar:/usr/lib/jvm/java-7-openjdk-amd64/jre/lib/rhino.jar:/usr/lib/jvm/java-7-openjdk-amd64/jre/lib/jfr.jar:/usr/lib/jvm/java-7-openjdk-amd64/jre/classes
sun.boot.library.path	/usr/lib/jvm/java-7-openjdk-amd64/jre/lib/amd64
sun.cpu.endian	little
sun.cpu.isalist	
sun.font.fontmanager	sun.awt.X11FontManager
sun.io.unicode.encoding	UnicodeLittle
sun.java.command	/usr/share/jenkins/jenkins.war --webroot=/var/cache/jenkins/war --httpPort=8080 --ajp13Port=-1
sun.java.launcher	SUN_STANDARD
sun.jnu.encoding	UTF-8
sun.management.compiler	HotSpot 64-Bit Tiered Compilers
sun.os.patch.level	unknown
user.country	US
user.dir	/
user.home	/var/lib/jenkins
user.language	en
user.name	jenkins
user.timezone	Etc/UTC
Environment Variables

Name  ↓
Value   
_	/usr/bin/daemon
HOME	/var/lib/jenkins
JENKINS_HOME	/var/lib/jenkins
LANG	en_US.UTF-8
LOGNAME	jenkins
MAIL	/var/mail/jenkins
PATH	/usr/local/bin:/usr/bin:/bin:/usr/local/games:/usr/games
PWD	/var/lib/jenkins
SHELL	/bin/bash
SHLVL	1
TERM	xterm-256color
USER	jenkins
XDG_RUNTIME_DIR	/run/user/0
XDG_SESSION_ID	5
Plugins

Name  ↓
Version   
Enabled   
Pinned   
ant	1.2	false	false
antisamy-markup-formatter	1.1	true	false
build-monitor-plugin	1.3+build.72	true	false
build-timeout	1.13	true	false
bulk-builder	1.5	true	false
configurationslicing	1.38.3	true	false
copy-to-slave	1.4.3	true	false
credentials	1.11	true	true
custom-view-tabs	1.0	true	false
cvs	2.11	false	false
external-monitor-job	1.2	true	false
git	2.2.1	true	false
git-client	1.9.1	true	false
git-parameter	0.3.2	true	false
greenballs	1.14	true	false
hipchat	0.1.4	true	false
javadoc	1.1	false	false
jenkins-tag-cloud-plugin	1.6	true	false
ldap	1.9	false	true
mailer	1.8	true	true
mapdb-api	1.0.1.0	true	false
matrix-auth	1.2	true	true
matrix-project	1.2	true	false
maven-plugin	2.3	false	false
nested-view	1.14	true	false
pam-auth	1.1	false	false
scm-api	0.2	true	false
simple-theme-plugin	0.3	true	false
ssh	2.4	true	false
ssh-agent	1.4.1	true	false
ssh-credentials	1.6.1	true	true
ssh-slaves	1.6	true	true
subversion	2.4	false	true
translation	1.11	true	true
windows-slaves	1.0	true	false

Activity

  1. jenkins-infra-bot commented on Jun 6, 2014

    @jenkins-infra-bot
    Author
    rtyler:
    • Original comment link
    • Raw content of original comment:

      This isn't an infrastructure ticket but rather something that should be triaged as part of the JENKINS JIRA project

    This isn't an infrastructure ticket but rather something that should be triaged as part of the JENKINS JIRA project

  2. jenkins-infra-bot commented on Mar 15, 2017

    @jenkins-infra-bot
    Author
    orrc:
    • Original comment link
    • Raw content of original comment:

      I can reproduce in Jenkins 2.32.3 with all sorts of items: view, freestyle job, folder.  I created items called "X robofolder" etc., where "X" is a robot face (U+1F916).  JIRA throws a 500 error and doesn't accept this comment if I use the actual emoji character…

      The items do get created, and displayed on the home page, but the emoji character is stripped from the URL, so clicking through results in a 404.

      It seems to happen as soon as you go >= U+10000 (which has a 4-byte rather than 3-byte UTF-8 representation). That character does not work in an item name, but U+FE6B does.

      The character can be anywhere in the name — it doesn't have to be at the start, it will be stripped out regardless.

    I can reproduce in Jenkins 2.32.3 with all sorts of items: view, freestyle job, folder.  I created items called "X robofolder" etc., where "X" is a robot face (U+1F916).  JIRA throws a 500 error and doesn't accept this comment if I use the actual emoji character…

    The items do get created, and displayed on the home page, but the emoji character is stripped from the URL, so clicking through results in a 404.

    It seems to happen as soon as you go >= U+10000 (which has a 4-byte rather than 3-byte UTF-8 representation). That character does not work in an item name, but U+FE6B does.

    The character can be anywhere in the name — it doesn't have to be at the start, it will be stripped out regardless.

  3. jenkins-infra-bot commented on Aug 13, 2019

    @jenkins-infra-bot
    Author
    slide_o_mix:
    • Original comment link
    • Raw content of original comment:

      I'm unable to reproduce this on 2.176.2. I created a job with the snowman emoji in the name and it worked fine. I was able to edit the configuration and everything.

    I'm unable to reproduce this on 2.176.2. I created a job with the snowman emoji in the name and it worked fine. I was able to edit the configuration and everything.

  4. jenkins-infra-bot commented on Aug 13, 2019

    @jenkins-infra-bot
    Author
    jvz:
    • Original comment link
    • Raw content of original comment:

      Updates to Unicode support in Java likely fixed this bug since Jenkins has required Java 8 for a while now. The initial ticket is using Java 7.

    Updates to Unicode support in Java likely fixed this bug since Jenkins has required Java 8 for a while now. The initial ticket is using Java 7.

  5. jenkins-infra-bot commented on Aug 13, 2019

    @jenkins-infra-bot
    Author
    slide_o_mix:

    It actually looks like there are still issues here. Snowman works (https://emojipedia.org/snowman/), but "ugaritic letter thanna" does not (https://www.compart.com/en/unicode/U+10398)

  6. jenkins-infra-bot commented on Aug 14, 2019

    @jenkins-infra-bot
    Author
    jvz:
    • Original comment link
    • Raw content of original comment:

      I was about to say that it was a newer emoji, but it appears as though it's not new at all. Strange.

      I know that we use XML 1.1 instead of 1.0 in order to allow for better Unicode support, though that's likely irrelevant here unless you're trying to use an emoji in an XML tag name.

    I was about to say that it was a newer emoji, but it appears as though it's not new at all. Strange.

    I know that we use XML 1.1 instead of 1.0 in order to allow for better Unicode support, though that's likely irrelevant here unless you're trying to use an emoji in an XML tag name.

  7. jenkins-infra-bot commented on Aug 14, 2019

    @jenkins-infra-bot
    Author
  8. jenkins-infra-bot commented on Oct 15, 2019

    @jenkins-infra-bot
    Author
    bkmeneguello:
    • Original comment link
    • Raw content of original comment:

      I've upgraded jenkins to latest LTS today and noticed problem with "ç" (cedilla) char U+00E7.

    I've upgraded jenkins to latest LTS today and noticed problem with "ç" (cedilla) char U+00E7.

  9. jenkins-infra-bot commented on Oct 15, 2019

    @jenkins-infra-bot
    Author
    slide_o_mix:
    • Original comment link
    • Raw content of original comment:

      Is it removing the character from URL's as was originally posted in this issue?

    Is it removing the character from URL's as was originally posted in this issue?

  10. jenkins-infra-bot commented on Oct 16, 2019

    @jenkins-infra-bot
    Author
    bkmeneguello:
    • Original comment link
    • Raw content of original comment:

      I've created and linked a ticket detailing the problem

       

    I've created and linked a ticket detailing the problem

     

  11. removed
    bugFor changelog: Minor bug. Will be listed after features
    on Nov 25, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions