Uploaded image for project: 'Jira Data Center'
  1. Jira Data Center
  2. JRASERVER-2703

As an Admin, I want the ability to edit a project's key

    • 12
    • We collect Jira feedback from various sources, and we evaluate what we've collected when planning our product roadmap. To understand how this piece of feedback will be reviewed, see our Implementation of New Features Policy.

      NOTE: This suggestion is for JIRA Server. Using JIRA Cloud? See the corresponding suggestion.

      Atlassian Status as of 6th August 2013

      Hi everyone,

      Thanks so much for your votes and comments on this feature request.

      On May 13th we made the announcement that JIRA will no longer support unlimited customisations of the project key. From JIRA 6.1 we are only going to support customised project keys that meet all of the conditions specified below:

      1. The first character is a letter from the Modern Roman Alphabet
      2. The first and all consecutive letter characters are in upper case
      3. Only letters, numbers or the underscore character is used

      We understand that some customers may be in the position where their current project keys do not meet the above requirements. We want to help these customers migrate to a supported format. To do this, we will implement this highly-voted feature request to allow the editing of project keys. We have started work on this and we aim to complete it for the JIRA 6.1 release. Given that it is very early in the release cycle we can not guarantee this and we will keep everyone updated via this issue.

      For customers that cannot wait until the 6.1 release, the current recommended workaround is to create a new project and use Bulk Move to transfer issues over from the old project to the new project. This has the additional benefit of providing redirection from the old issue key to the new issue key if anyone has an external reference to it. We realize that there is still manual work involved with moving components and versions and other project configuration.

      Thanks for your patience and we hope you appreciate our open approach to feature requests.

      Cheers,
      Bartek
      JIRA Product Management
      bartek (at) atlassian (dot) com

      Original request description:

      I had cause to rename a whole series of projects recently, however I could see no way to modify the key for a project, so the issue-numbers now make little sense compared to the name.

      Would be nice to change the key to a non-used key and see them all updated.

            [JRASERVER-2703] As an Admin, I want the ability to edit a project's key

            Roma added a comment -

            How to rename a project once created. Kindly tell me the steps to follow

            Thanks in advance.

            Roma added a comment - How to rename a project once created. Kindly tell me the steps to follow Thanks in advance.

            Solved the problem:

            The renamed Project name was not longer found by the Agile Board Filter, even the problem did not occur with the changed Project Key. Since Jira (and Agile) uses per default the Project Name, it didn't found it any longer.

            After renaming the filter name, the Simplified Workflow was available again. So there is a workaround to fix the problem, but it would be great, If Jira would handle this by its own, since "Shares Project" is also updated automatically.

            Jose (Ericsson GmbH) added a comment - Solved the problem: The renamed Project name was not longer found by the Agile Board Filter, even the problem did not occur with the changed Project Key. Since Jira (and Agile) uses per default the Project Name, it didn't found it any longer. After renaming the filter name, the Simplified Workflow was available again. So there is a workaround to fix the problem, but it would be great, If Jira would handle this by its own, since "Shares Project" is also updated automatically.

            Jose (Ericsson GmbH) added a comment - - edited

            Supplement on 31/Jul/14
            It was now possible to reproduce the behaviour two times. As problem cause only the groovy runner script function was detected. Analysis is ongoing.

            [jira.groovy.jql.ScriptedJqlFunction] Function scriptedFunction didn't have a data type, returning Issue. Possibly plugin not started yet


            Comment from 22/Jul/14
            I've tried to reproduce it again, but without success. Since I was not alone, while it happened the first time. I'm quite sure it happened really. But since the Atlassian support could not reproduce it also, the problem should not be "existent".

            Jose (Ericsson GmbH) added a comment - - edited Supplement on 31/Jul/14 It was now possible to reproduce the behaviour two times. As problem cause only the groovy runner script function was detected. Analysis is ongoing. [jira.groovy.jql.ScriptedJqlFunction] Function scriptedFunction didn't have a data type, returning Issue. Possibly plugin not started yet Comment from 22/Jul/14 I've tried to reproduce it again, but without success. Since I was not alone, while it happened the first time. I'm quite sure it happened really. But since the Atlassian support could not reproduce it also, the problem should not be "existent".

            That's strange, raise a bug report for that and someone will investigate.

            Pawel Niewiadomski (Inactive) added a comment - That's strange, raise a bug report for that and someone will investigate.

            I succeed to rename it, but the project was afterwards in Agile no longer supported by the simplified worfklow.

            1. Project A KEY_A was using the normal workflow.
            2. Project B KEY_B was created using Agile and simplified Workflow.
            1. I've deleted Project A KEY_A.
            2. Then renamed Project B KEY_B to Project A KEY_A

            Project A (renamed from B) was not longer having the simplified workflow.

            Jose (Ericsson GmbH) added a comment - I succeed to rename it, but the project was afterwards in Agile no longer supported by the simplified worfklow. Project A KEY_A was using the normal workflow. Project B KEY_B was created using Agile and simplified Workflow. I've deleted Project A KEY_A. Then renamed Project B KEY_B to Project A KEY_A Project A (renamed from B) was not longer having the simplified workflow.

            jose (ericsson) what do you mean? Does it fail to rename? If you're a JIRA admin you should be able to change the key for any project. No strings attached.

            Pawel Niewiadomski (Inactive) added a comment - jose (ericsson) what do you mean? Does it fail to rename? If you're a JIRA admin you should be able to change the key for any project. No strings attached.

            It works for Jira itself. But it looks like, if a project was created using the Agile Simplified Workflow, it won't work.

            Jose (Ericsson GmbH) added a comment - It works for Jira itself. But it looks like, if a project was created using the Agile Simplified Workflow, it won't work.

            Has anyone tested this new functionality?

            • Does it work by using normal links, source links (Subversion to Jira) or even Epic links? Will the links become updated?
            • Does it also work, if an issue has been moved before the key was changed? Is the old key still connected to the new one?

            Jose (Ericsson GmbH) added a comment - Has anyone tested this new functionality? Does it work by using normal links, source links (Subversion to Jira) or even Epic links? Will the links become updated? Does it also work, if an issue has been moved before the key was changed? Is the old key still connected to the new one?

            richard.schaeffer

            Out of curiosity, why are periods disallowed?

            Project keys, and even more importantly Issue keys, are very important not just in JIRA features but in all sorts of JIRA integrations.
            (The Issue key format is, of course, driven by the project key format.)

            Many of these core features and integrations rely on the ability to read some freeform text and "recognise" issue keys in the text.
            One example in JIRA itself is comments - so if I just type JRA-2703 we are able to recognise that this is an issue key and build a hyperlink around it automatically.
            Another important example is in commit messages for Version Control Systems (SVN, git, etc). Integrations with FishEye/Crucible, Stash, Bamboo, etc all rely on being able to recognise JIRA issue keys within these commit messages.

            Traditionally Atlassian made no restrictions on what keys could look like, and different integrations had different levels of support for different keys.
            All of them had bugs for certain non-standard formats.
            In order to rectify this, we decided to settle on a small set of "supported" characters in the project key such that it would be as easy as possible for integrations to correctly recognise JIRA issue keys. The smaller the set, the more chance we have of getting all plugin vendors to agree on the standard and to fix bugs for the set of supported characters.
            Indeed, the initial proposal was to only allow letters. There was a lot of customer backlash from this, so we added some more characters based on what was considered harmless, useful, and already in common use.

            The period specifically is probably harmless. It is useful as a separator, but could presumably be replaced with underscores, and current usage of underscore swamped the current usage of periods.
            It was considered for inclusion, but didn't make it mostly just because it was considered redundant, not very widely used and we were trying to keep the set as small as possible.
            Even with the minimal set we have today, there are a number of known bugs to fix in Atlassian integrations, nevermind the third-party plugins eg:
            BAM-13683, BAM-13778, FECRU-3786, FECRU-3787.

            Mark Lassau (Inactive) added a comment - richard.schaeffer Out of curiosity, why are periods disallowed? Project keys, and even more importantly Issue keys, are very important not just in JIRA features but in all sorts of JIRA integrations. (The Issue key format is, of course, driven by the project key format.) Many of these core features and integrations rely on the ability to read some freeform text and "recognise" issue keys in the text. One example in JIRA itself is comments - so if I just type JRA-2703 we are able to recognise that this is an issue key and build a hyperlink around it automatically. Another important example is in commit messages for Version Control Systems (SVN, git, etc). Integrations with FishEye/Crucible, Stash, Bamboo, etc all rely on being able to recognise JIRA issue keys within these commit messages. Traditionally Atlassian made no restrictions on what keys could look like, and different integrations had different levels of support for different keys. All of them had bugs for certain non-standard formats. In order to rectify this, we decided to settle on a small set of "supported" characters in the project key such that it would be as easy as possible for integrations to correctly recognise JIRA issue keys. The smaller the set, the more chance we have of getting all plugin vendors to agree on the standard and to fix bugs for the set of supported characters. Indeed, the initial proposal was to only allow letters. There was a lot of customer backlash from this, so we added some more characters based on what was considered harmless, useful, and already in common use. The period specifically is probably harmless. It is useful as a separator, but could presumably be replaced with underscores, and current usage of underscore swamped the current usage of periods. It was considered for inclusion, but didn't make it mostly just because it was considered redundant, not very widely used and we were trying to keep the set as small as possible. Even with the minimal set we have today, there are a number of known bugs to fix in Atlassian integrations, nevermind the third-party plugins eg: BAM-13683 , BAM-13778 , FECRU-3786, FECRU-3787.

            ted.nienstedt

            Thanks Mark, I have a technical question regarding performance concerns - is the database key really being allowed to be as long as 255, or is the "project key" field being hashed into a smaller value for the actual database key?

            When we talk about the "Project Key" we mean the string of characters used inside the JIRA Application by users, not the DB primary key for the table.
            The primary key of the PROJECT DB table is a numeric ID and we have a separate VARCHAR(255) column for the "Project Key" value.

            Mark Lassau (Inactive) added a comment - ted.nienstedt Thanks Mark, I have a technical question regarding performance concerns - is the database key really being allowed to be as long as 255, or is the "project key" field being hashed into a smaller value for the actual database key? When we talk about the "Project Key" we mean the string of characters used inside the JIRA Application by users, not the DB primary key for the table. The primary key of the PROJECT DB table is a numeric ID and we have a separate VARCHAR(255) column for the "Project Key" value.

              Unassigned Unassigned
              62501d1e54af Henri Yandell
              Votes:
              300 Vote for this issue
              Watchers:
              176 Start watching this issue

                Created:
                Updated:
                Resolved: