It would be lovely to have a "depends upon" attribute for issues.
Here's an example. We have a software product called "NewProg", so we create a project called "NewProg" and a folder of type "Feature Requests" within it. A user requests a new feature called, say, "Reporting".
So a member of the NewProg project adds the Reporting Issue to the Feature Requests folder of the project NewProg. Some discussion takes place using comments as to how to implement that feature. A plan is arrived at, and a list of actions is determined. So now we need to staff out those actions. We'll assume that we work out the order of battle in some other way (perhaps we have a separate project planning tool to do that?) so we know what needs implementing and in what order.
So now we'd like to create new issues in the New Feature Implementation folder. And then we'd like to create new issues in the New Feature Testing folder. However we know that each of these issues will in turn depend upon the completion of some other step or steps.
What I'd like to do is to be able to create each "issue" in turn, with a "depends upon" reference to the previous "issue" in the chain. Then issues would only appear to be needing attention in the order in which they are possible to deliver. Otherwise the list of open issues for each user just gets too great to process efficiently, and there is no mechanism (save for lots of clicking about) to work out whether it is time to start something or not.
Clearly we could write some code for this. So we add the "depends upon" attribute anyhow, populate it with the issue ID of the preceding issue, set the status to "Not Ready to Start Yet", and have a server cron job running periodically to decide whether to update the satus of the later issues. But just a thought for "proper" development.