I figured out the issue with logging/tunnels. This is probably something people should talk about more in this community when helping with this question because all I ever see is “make sure you’re running the latest cli version”.
That’s true, but problems with logging/tunnels are very often related to the old version of Forge CLI; that’s why I asked if you were using the latest one.
Regarding your case, as you already found out, after the first successful invocation of the function, there is a precomputation stored in Jira, so there is no need to perform subsequent invocations for the same search clause. You can read more about this concept here: https://developer.atlassian.com/cloud/jira/platform/jql-functions/#precomputations
Thanks for the link to a couple more examples, however this appears to be a common pattern in the docs and I figured it was worth mentioning:
There is also a second Forge app, implementing a more advanced function:
subtaskOf, I hope that you might find it helpful: Bitbucket
I’m trying to add another argument but don’t see any ‘real’ docs other than just describing what name and required do.
We really appreciate your feedback. If you feel that the current shape of documentation is insufficient, could you share how we can extend it to make it better for the future?
Regarding the list of arguments, this is just a list of pairs: argument name +
required flag. We don’t check the types of arguments.
Ok it looks like
name: should actually be
type: or something. Changing absolute to text worked.
The previous name, “absolute” should also work; as I mentioned, we don’t check types of arguments. However, after modification of the manifest, you should run
forge deploy and
forge install --upgrade. It is also worth refreshing the page in Jira after upgrading an app. Sometimes, there is a short delay before the latest app changes will be available. I believe you hit this problem here.
How do permissions work with no UI component?
JQL function app doesn’t need any specific permissions. However, if you are using Jira REST API, you will need to add proper scopes, depending on the endpoint you are using.