I need to track issues in libraries that are shared between multiple projects. Is there a way to share these components? Or is it better to file a separate issue on each affected project?
We run into this same problem with shared code. We're currently using "clone" to create issues in multuple projects while retaining some connnection between them, but it definitely less than an ideal solution.
There's a whole series of tickets on the JIRA project for JIRA related to this issue. If you set up an account there, you can vote for issues to help influence the dev team and you can get notifications when the tickets are updated.
I get around this by creating a separate project for the shared code, tagging each issue depending on what release(s) it's related to, and then creating JIRA filters that look at these tags across multiple projects in order to track the list of issues for a release.
For example, let's say I have product A and product B, which both use the shared libraries. I want to release version 1 of product A and version 2 of product B; both of these releases need issue 1001 in the shared library project to be fixed.
I tag the shared library issue 1001 with "ProdAVer1 ProdBVer2", tag all the product A issues for version 1 with "ProdAVer1" and all the product B issues for version 2 with "ProdBVer2". Then I make a filter including all issues in product A or the shared libraries containing the tag "ProdAVer1" to track my issues for the product A release, and likewise using tag "ProdBVer2" for product B.
This sounds a bit long winded now I've written it down, but I think it's a better option than using cloned issues in multiple projects.
I've also used a JIRA CLI (SOAP) to keep the list of components in two projects in sync, but it isn't ideal either.
~Matt
This is probably not immediately helpful, since you are presumably planning to stick with JIRA, but I thought I should point out that this is the big innovative feature offered by Launchpad's bug tracking. The developers noticed that bugs in various open-source applications often boiled down to a common bug in a shared library, and developed a way to attach one issue to multiple projects, versions, and releases.