https://www.redmine.org/https://www.redmine.org/favicon.ico?16793021292021-03-30T02:58:09ZRedmineRedmine - Feature #34981: Allow to change a project identifierhttps://www.redmine.org/issues/34981?journal_id=1016192021-03-30T02:58:09ZGo MAEDA
<ul><li><strong>Description</strong> updated (<a title="View differences" href="/journals/101619/diff?detail_id=82464">diff</a>)</li></ul> Redmine - Feature #34981: Allow to change a project identifierhttps://www.redmine.org/issues/34981?journal_id=1016392021-03-30T11:46:50ZHolger Just
<ul></ul><p>Many repository integrations (including the bundled <code>Redmine.pm</code> and <code>reposman.rb</code>) assume that the repository on the file system is named after the project identifier. These integrations will likely break if the project identifier can be changed, or might even cause vulnerabilities which might allow unintended repositories to be accessible.</p> Redmine - Feature #34981: Allow to change a project identifierhttps://www.redmine.org/issues/34981?journal_id=1016412021-03-30T12:01:01ZBernhard Rohloff
<ul></ul><p>The concept of separate project name and identifier is a useless construct which irritates the user more than it helps him.<br />I would rather prefer to put more effort in helping the user to find the right identifier for their project. In my opinion if the identifier would be a plain hash and I would have convenient tools (search, autocomplete etc.) at hand that hide its existence, this wouldn't be an issue I would have to think about. Like for example the</p> Redmine - Feature #34981: Allow to change a project identifierhttps://www.redmine.org/issues/34981?journal_id=1016442021-03-30T12:13:20ZPavel Rosický
<ul></ul><blockquote>
<p>The problem with changing the project identifier is that the identifier is used as part of URLs, so links from outside Redmine will be invalid.</p>
</blockquote>
<p><a class="external" href="https://gitlab.com/gitlab-org/gitlab-foss">https://gitlab.com/gitlab-org/gitlab-foss</a> has a very similar feature.<br />1/ a project identifier cannot be reused (this mitigates potential security vulnerabilities)<br />2/ it is allowed to change the identifier<br />3/ however the old URL is still valid and there's a warning that the project has been moved to a different location</p>
<p>IMO it's the right approach how to deal with this problem, but of course, it's more complex than the original proposal</p> Redmine - Feature #34981: Allow to change a project identifierhttps://www.redmine.org/issues/34981?journal_id=1016962021-03-31T09:31:26ZYuuki NARA
<ul></ul><p>+1</p>
<p>I think this feature is needed.</p>
<p>The identifier change itself can simply be done in SQL. <br />I've done it dozens of times in the past.</p>
<p>sample SQL script<br /><pre>
update projects set identifier='unofficial-cooking' where id=12345;
</pre></p>
<p>I published an article to the same effect in Japanese.<br /><a class="external" href="https://translate.google.com/translate?sl=auto&tl=en&u=https://redmine.tokyo/issues/727">https://translate.google.com/translate?sl=auto&tl=en&u=https://redmine.tokyo/issues/727</a></p> Redmine - Feature #34981: Allow to change a project identifierhttps://www.redmine.org/issues/34981?journal_id=1017722021-04-03T02:32:24ZPavel Rosický
<ul></ul><p>I have a POC patch with this feature and I have a few questions:<br />1/ based on <a class="external" href="https://github.com/paginagmbh/redmine_project_alias_2">https://github.com/paginagmbh/redmine_project_alias_2</a> there's an ability to freeze the identifier, so it cannot be renamed. What do you think about this feature?<br />2/ what should happen to identifiers if we delete the project?<br />3/ as Holger Just suggested this change will break Redmine.pm and reposman.rb, he's right, but it's the same as if someone removes the project and creates a different one with the same identifier. This is possible even now...</p> Redmine - Feature #34981: Allow to change a project identifierhttps://www.redmine.org/issues/34981?journal_id=1017872021-04-03T13:14:23ZPavel Rosický
<ul><li><strong>File</strong> <a href="/attachments/27033">identifiers.diff</a> <a class="icon-only icon-download" title="Download" href="/attachments/download/27033/identifiers.diff">identifiers.diff</a> added</li></ul><p>here's the patch for testing</p> Redmine - Feature #34981: Allow to change a project identifierhttps://www.redmine.org/issues/34981?journal_id=1033582021-07-27T04:43:11ZMischa The Evil
<ul></ul><p>I think that changing this behavior is rather a bad idea.</p>
<p>Go MAEDA wrote:</p>
<blockquote>
<p>[...]</p>
<p>The problem with changing the project identifier is that the identifier is used as part of URLs, so links from outside Redmine will be invalid.</p>
</blockquote>
<p>This applies not only to links from outside Redmine. It also invalidates (internal) cross-project Redmine links (<a class="issue tracker-2 status-5 priority-4 priority-default closed" title="Feature: Cross project Redmine links (Closed)" href="https://www.redmine.org/issues/7409">#7409</a>, <a class="changeset" title="Adds support for cross project Redmine links (#7409). See public/help/wiki_syntax_detailed.html ..." href="https://www.redmine.org/projects/redmine/repository/svn/revisions/4758">r4758</a>).</p>
<p>Bernhard Rohloff wrote:</p>
<blockquote>
<p>The concept of separate project name and identifier is a useless construct which irritates the user more than it helps him.</p>
</blockquote>
<p>I disagree. Given that Redmine is inherently a multiple-project tool, it is a pretty useful and logical concept. How would you implement multiple-project support (with e.g. the cross-project Redmine links feature) otherwise?</p>
<p>Pavel Rosický wrote:</p>
<blockquote>
<p>I have a POC patch with this feature ...</p>
</blockquote>
<p>I think it is a rather large and complicated amount of code to maintain for such a relatively small change and it still breaks the cross-project Redmine links nonetheless (see e.g. <a class="external" href="http://projects.andriylesyuk.com/issues/2014">http://projects.andriylesyuk.com/issues/2014</a> for a fix for just one particular kind of Redmine links [<code>project:identifier</code>]).</p>
<p>Given all the considerations above plus the points already mentioned by Holger in note-2, I'm coming to the conclusion that it's a (very) bad idea to implement support for allowing users to change project identifiers. As such I'd oppose this proposal very strongly.</p> Redmine - Feature #34981: Allow to change a project identifierhttps://www.redmine.org/issues/34981?journal_id=1033692021-07-27T09:55:17ZPavel Rosický
<ul></ul><p><em>it still breaks the cross-project Redmine links</em> - as I said, I didn't test all cases, this could be fixed.</p>
<p>but I also have to agree that it's too complicated for such a simple feature...</p>