Project

General

Profile

Actions

Feature #28198

closed

Support issue relations when importing issues

Added by Gregor Schmidt about 6 years ago. Updated almost 3 years ago.

Status:
Closed
Priority:
Normal
Assignee:
Category:
Importers
Target version:
Start date:
Due date:
% Done:

0%

Estimated time:
Resolution:
Fixed

Description

As promised in #22701, I now would like to propose a patch, which adds handling of issue relations to the CSV importer.

Usage

The attached patch extends the import configuration view with a new block, so that users may select a column for each relation type. The parent issue field also moved to the new block, since it's conceptually related.

Within the CSV file the columns may define multiple relations of the same type, each separated with ,. Related issues follow the same rules as parent issues. A string preceded with a # is supposed to be an existing issue. Without the # it's supposed to be another row within the import file. For follows and precedes relations an additional delay may be present, e.g. #12 3d specifying a relation to issue #12 and a delay of 3 days.

Technical notes

Since issue relations may only be created when the issue was already saved, I've added a second step to the import. Additionally to build_object, which needs to be implemented by Import sub classes, there's also a extend_object method now. This is used by the IssueImporter to save the relations after the issue was already saved successfully.

Additional considerations

Initially, I wanted to build the import, so that issue relations exported from Redmine could be imported directly. But the format that's used by the exporter was designed for humans, not so much for computers. Most importantly, to parse this format we would need to grep for the localized relation names, which might even change between versions of Redmine. Therefore I settled for the proposed approach of having separate columns for each relation type.


Files


Related issues

Related to Redmine - Feature #22701: Allow forward reference to parent when importing issuesClosedJean-Philippe Lang

Actions
Related to Redmine - Feature #28213: Support external ID when importing issuesClosedJean-Philippe Lang

Actions
Related to Redmine - Defect #35656: When importing issue relations, the validation messages are not shown in the UIClosedMarius BĂLTEANU

Actions
Has duplicate Redmine - Feature #33330: Import of issue relations when imported from csvClosed

Actions
Actions

Also available in: Atom PDF