Make sure you understand these limitations before you start developing with Forge.
Forge only supports sites that have both Jira and Confluence installed. The development site you
create in Getting started has both products by default.
Your site must have a *.atlassian.net site name.
You'll need to write your functions in a subset of Node.js. Some globals are not exposed, for
example, process (except for process.env) and queueMicrotask, which means that some NPM
packages will probably break.
The following Node built-in modules are not supported: async_hooks, child_process, cluster,
constants, dgram, dns, domain, http2, module, net, perf_hooks,
readline, repl, sys, tls, trace_events, tty, v8, vm, and worker_threads.
Functions have an execution timeout of 10 seconds. If your function takes longer than 10 seconds
to execute, it will be stopped.
Some of the Confluence APIs do not support OAuth. On Confluence API documentation,
only the APIs with the OAuth scopes required entry can be called using api.asUser().
Components ignore invalid props. Prop type validation with error messages is coming soon.
The issueType, issueId, and projectId are not included in the Jira extension context.
Jira issue glances and issue panels only display on the new issue view.
They do not display on the old issue view.
Jira workflow validators are only compatible with workflows of classic projects. You cannot use them
with next-gen projects.
Jira workflow validators cannot read values set on the transition screen during a transition.
Editor macros are only compatible with the Atlassian Editor. All cloud sites use the Atlassian Editor by default.
Editor macros can only be inserted by typing "/" and selecting from the quick insert menu.
Macro configuration has some known limitations:
When you copy a macro, the configuration of the original or a copy may be overwritten. This
can happen when a macro is pasted and when the configuration of a copy is updated.
When configuring a Forge macro immediately after configuring a Connect macro, the wrong configuration
form may be loaded.
The option to edit the macro displays whether the macro has configuration or not. If the macro
doesn’t have configuration, nothing happens when a user selects edit.