JILS-20: Enable Cross-Project Auto Linking when filters are present

Issue Information

Issue Type: New Feature
Priority: Major
Status: Closed

Reported By:
Ben Tasker
Assigned To:
Ben Tasker
Project: Jira Issue Listing Script (JILS)
Resolution: Done (2016-04-29 15:00:46)
Affects Version: 0.01b,
Target version: 0.01b,

Created: 2014-11-04 07:09:30
Time Spent Working

The function jiraMarkup currently only automatically creates links if the project key is the same as in the current issue (i.e a reference to an issue in the same project has been typed).

It was implemented this way to prevent broken links if another project (with references in other issues) was archived.

So, linking to EXAMPLE-1 from within EXAMPLE-2 will generate an auto-link, whilst linking to EXAMPLE-1 from ELPMAXE-3 will not.

When the client filtering headers are present, we have a better idea of which projects are likely to exist (no guarantee they do, though) and so could enable autolinking to issues with those project keys.

An alternative solution would be to do what JIRA does - identify any string that looks like an issue key, check the database to see if it exists and then convert to a link if it does. Seems inefficient though.

Toggle State Changes


Note: This was previously implemented in commit 042818f (View Commit), but was reverted in JILS-19 as it caused some pretty serious issues
btasker changed status from 'Open' to 'In Progress'
Implemented and tested.

It'd be good to devise a way to enable cross-project auto linking if no filters are present, perhaps by detecting that that's the case and then populating the header accordingly.

Repo: Jira-Issue-Listing
Commit: daee06023cbbfdedd2c2ff0f4021f5e64357017a
Author: Ben Tasker <github@<Domain Hidden>>

Date: Wed Nov 12 01:27:44 2014 +0000
Commit Message: Enabled cross project autolinking when filters are present. See JILS-20

Modified (-)(+)

Webhook User-Agent


View Commit

Amended the function apply_filters() so that the filter is populated with all available project keys if the filter header wasn't already present (or set by config)
btasker changed status from 'In Progress' to 'Resolved'
btasker added 'Done' to resolution
btasker changed status from 'Resolved' to 'Closed'

Repo: Jira-Issue-Listing
Commit: af9670564011b4ec3a7c88760654504aeb6031ce
Author: B Tasker <github@<Domain Hidden>>

Date: Thu Nov 13 02:46:11 2014 +0000
Commit Message: Enabled cross-project autolinking when no filters are set. See JILS-20

Modified (-)(+)

Webhook User-Agent


View Commit

Re-opening to assign to a version
btasker removed 'Done' from resolution
btasker changed status from 'Closed' to 'Reopened'
Assigning to v0.01b
btasker added '0.01b' to Version
btasker added '0.01b' to Fix Version
btasker changed status from 'Reopened' to 'Resolved'
btasker added 'Done' to resolution
btasker changed status from 'Resolved' to 'Closed'