This changelog is the source of truth for all changes to the Forge platform that affect people developing Forge apps.
Posts are made in the Forge announcements category of the developer community when the changelog is updated. Subscribe to the Forge announcements category to get notifications.
See what's next for Forge on our platform roadmap.
We're excited to share that Forge, our app development platform for Atlassian cloud products, is now generally available. You can rely on Forge's hosted infrastructure, storage, and FaaS functions to support apps in production; all of which are backed by Atlassian's operational readiness. Learn more about building the next Marketplace hit with Forge.
Note that some functionality in Forge remains in beta while we're still making changes that may break your apps. Learn more about the current functionality in beta.
We've updated our https://developer.atlassian.com/platform/forge/deprecation-policy/ to set clearer expectations regarding the lifecycle of Forge CLI versions. Versions older than 6 months are automatically unsupported and may have unexpected behaviours. We recommend regularly updating to the latest CLI version to benefit from new features and improvements.
You can now use the latest version of UI Kit to add configuration to Custom UI macros. Custom UI apps were previously limited to using the UI Kit 1 implementation of macro config.
For more information on adding configuration to the Confluence macros, see the Add configuration to a macro tutorial.
Run npm install -g @forge/cli@latest
on the command line to install the latest version of @forge/cli
.
Run npm install @forge/react@latest
on the command line to install the latest version of @forge/react
.
Previously, you can download app logs dating up to 60 days from the current date. For compliance and performance reasons, we’re changing this, from 60 days to 30 days.
The Native Node Runtime is now generally available. To use this runtime, specify set your app.runtime.name
to nodejs18.x
in the manifest file.
As of version 9.0.0 of the @forge/cli
, the app.runtime.name
field of the manifest file is now required. We recommend that you use the native Node runtime, as this provides several security and performance enhancements, along with greater compatibility with the Node.js ecosystem. See More details for information on choosing a runtime.
forge tunnel
for the legacy runtime will require app.runtime.name
regardless of the @forge/cli
version used. forge tunnel
for the legacy runtime always uses the output of forge lint
from the latest @forge/cli
version.
Some existing apps may need to address breaking changes with the native Node runtime. Forge supports using the legacy runtime while addressing those changes. For more information, see Migrating from the legacy runtime.
We recommend that all apps use the native Node runtime, as the legacy version will eventually be deprecated.
All templates now include app.runtime.name: nodejs18.x
. When creating a new app, the CLI will specify this runtime by default.
https://developer.atlassian.com/platform/forge/runtime-reference/external-fetch-api/ is now supported with the latest version of @forge/api
.
To use the generally available Native Node Runtime, set app.runtime.name
to nodejs18.x
in your manifest.yml
:
1
2
3
4
app:
id: ari:cloud:ecosystem::app/<unique-identifier>
runtime:
name: nodejs18.x
To continue using the legacy sandbox runtime, set app.runtime.name
to sandbox
in your manifest.yml
instead:
1
2
3
4
app:
id: ari:cloud:ecosystem::app/<unique-identifier>
runtime:
name: sandbox
Forge app names can now be up to 60 characters when:
Set via the Forge CLI, or
Updated in the Developer Console.
Previously, Forge app names were limited to 50 characters, while Marketplace listing names could be up to 60 characters in length.
Following our recent preview release of Forge UI Kit 2, we're excited to announce that UI Kit 2 is now generally available. With this release, UI Kit 2 has been promoted as the latest version of UI Kit and will now be referred to as simply UI Kit.
For more detailed information on using UI Kit components to design and build apps, please refer to our UI Kit components documentation.
The latest version is supported within the following products:
Bitbucket
Compass
Confluence
Jira
Jira Service Management
See the following documentation to know how to upgrade to the latest version of UI Kit:
With Forge UI Kit now generally available, we’re releasing a new major version of the Forge CLI.
Here’s a summary of the CLI changes:
We’ve renamed UI kit 2 (Preview)
template option to UI Kit
.
We’ve removed the original UI kit
template option. This means no new UI Kit 1 apps can be created with this latest version.
To install the latest version, in your terminal, run: npm install -g @forge/cli@latest
Though we highly recommend creating new apps using latest UI Kit version, you can still do the following activities:
Deploy and install existing UI Kit 1 apps.
Create new UI Kit 1 apps as long as you remain on version 7.1.0
of @forge/cli
.
We have now added the following rate limits to WebTrigger GraphQL operations:
createWebTriggerUrl
- 500 requests / 60 seconds
This include usage of the webTrigger.getUrl
method from the @forge/api NPM package.
deleteWebTriggerUrl
- 500 requests / 60 seconds
webTriggerUrlsByAppContext
- 1000 requests / 60 seconds
Each limit is applied with the following dimensions: appId + site + forge app environment + userId
.
For more information, see https://developer.atlassian.com/platform/atlassian-graphql-api/graphql/#rate-limiting.
The UI modifications (UIM) module now supports new fields on the following views:
The complete list of supported fields for the issue view is available here.
We are announcing the deprecation of two Jira Web Panel (webPanels
) module locations within Forge or Connect applications. The affected locations are:
atl.jira.view.issue.left.context
: For web panels that appear in the content section on the left. We advise transitioning to the Issue Context module for similar functionality.
atl.jira.view.issue.right.context
: For web panels that are displayed in the context section on the right, resembling a glance panel. We recommend migrating to the Issue Context module for these needs.
This change means that if your Forge or Connect app currently utilizes these two Jira Web Panel (webPanels
) module locations, it is essential to migrate to the issueContext module. Detailed guidance on adopting the new Issue Context API is available in our documentation.
The progressive rollout of data security policy events has been completed. Data security policy events are generated when installed apps' access to certain data within Confluence, Jira, Jira Service Management, or Jira Software has been blocked by an administrative policy with an App access rule. You can now subscribe to these events.
Being a new capability however, we are scaling up our processing of these data security policy events over the next few months. In the meantime we have set a upper limit of 50,000 objects. This means that if a customer activates or updates a data security policy that affects more than 50,000 objects, you will receive the first 50k objects in the events and the rest would be omitted.
We intend to raise these limits and will advise once we have reached our final threshold— and have determined our final hard limits.
Data security policies help customers keep their organization’s data secure by letting them govern how users, apps, and people outside of their organization can interact with content such as Confluence pages and Jira issues.
The new app access rule under data security policies allows customers to restrict app access to the content in Confluence spaces or Jira projects under a given policy. In this way, customers can benefit from apps while still limiting 3rd-party app access to certain content in select spaces.
If you are looking to update your apps with custom in-app messaging whenever your app is affected by an app access rule, we encourage you to use the Developer guide.
The Forge confluence:spaceSettings
module now supports view.createHistory()
for Custom UI via @forge/bridge
. App developers can now utilize a path segment at the end of the global page URL to maintain page history within their application.
Previously, calling asUser
from @forge/api without a user context for the invocation (e.g. a webtrigger
or trigger
) would result in an internal NeedsAuthenticationError
being thrown.
In the the native Node.js runtime this will now throw a ProxyRequestError
with errorCode
AUTH_TYPE_UNAVAILABLE
.
In the past, dashboard background scripts were rendered only if at least one dashboard gadget from the same app was present on the dashboard. This behavior has changed. Now, dashboard background scripts are always rendered.
Rate this page: