We are pleased to announce the availability of the first Early Access Program (EAP) release of Bitbucket Server 6.0.
This EAP release is so that plugin vendors and customers who have written in-house plugin can update their plugin to ensure they will work with the public release of Bitbucket Server 6.0.
Important things to note about this EAP release:
- This release should not be used in a production environment .
- There may be other minor API changes between this release and the public release of Bitbucket Server 6.0.
Obtaining the Bitbucket Server 6.0 EAP release
Links to download installers and archives:
Sources are available for users with a valid Bitbucket Server license through their license details at my.atlassian.com.
The Bitbucket Server 6.0 EAP can also be run with AMPS version 6.3 or later by running this command with the Atlassian Plugin SDK installed:
atlas-run-standalone -u 6.3.21 --product bitbucket --version 6.0.0-eap1
Note that if Atlassian Plugin SDK version 6.3 is installed, the “-u 6.3.21” parameter can be omitted. The
atlas-version command can be used to determine the installed version.
We need your feedback!
If you have any questions or feedback about this preview of Bitbucket Server 6.0, ask them in the Bitbucket Server category here in the Atlassian Developer Community forums, and our friendly team of developers will respond to them.
Bitbucket Server 6.0 EAP Release Notes
Bitbucket Server 6.0 EAP contains several changes that may affect existing add-ons. The changes are summarised below.
Deprecated Java APIs removed
Interfaces, classes, and methods in the Bitbucket Server Java API that were previously marked as deprecated have been removed.
Plugins that use any of these interfaces (which would have generated deprecation warnings when built against Bitbucket Server 5.x) generally won’t build with Bitbucket Server 6.x
Precompiled plugins that used any of the removed interfaces will fail to install or run in Bitbucket Server 6.x, typically with
Removal of the legacy Repository Hooks API
Bitbucket Server 5.0 introduced a new Repository Hooks and Merge Checks API. In 6.0 the legacy API has been removed. For an overview of the new API please see the Repository Hooks and Merge Checks Guide.
Removal of direct access to repositories on disk
In Bitbucket Server 5.10 direct access to our repositories on disk for plugins was deprecated. In 6.0 the deprecated API that permitted this has been removed. For further information please refer to the Bitbucket Server API Changelog entry for 5.10.
Removal of other deprecated API
Please refer to the Bitbucket Server 5.16 Javadoc for finding replacements for other deprecated/removed API:
- Bitbucket Server API
- Bitbucket Server SPI
- Branches API
- Builds API
- Code Insights API
- Comment Likes API
- Git API
- Jira API
- Notifications API
- Ref Restrictions API
- Scm Common API
- Ssh API
- Web Common API
Removal of provided Scala runtime
Plugins written in Scala were able to depend on Bitbucket Server (in versions older than 6.0) to provide the Scala runtime library (org.scala-lang:scala-library) as as such did not need to bundle it in the plugin. As of Bitbucket Server 6.0 Bitbucket Server does not provide/export this dependency.
Java 11 support
Bitbucket Server 6.0 adds support for running on a Java 11 JRE, in addition to retaining support for Java 8. Plugins should be build with a target version of Java 8 which implies a language level of Java 8 also. Plugins must be tested on both Java 8 and 11.
Note: Java 11.0.2 is unsupported due to Java bug JDK-8217364.
AUI 8 upgrade
Bitbucket Server 6.0 upgrades Atlassian User Interface (AUI) from 7.x to 8.0 For more information on upgrading to AUI 8 see the AUI 8 upgrade guide.
Internal Web Resources blocked
Though they were never API, some plugins have depended on web-resources in the plugin
com.atlassian.bitbucket.server.bitbucket-web. In 6.0, most of the dependencies will stop working. Please use an equivalent public API, if available. Some exceptions were made for heavily used resources, but these will eventually be replaced with supportable implementations of API and will also be removed in the future.
The temporary exceptions are:
Internal JS/AMD modules blocked
Similar to the above, some internal AMD modules were depended on by plugins. In 6.0, third-party plugins that depend on modules starting with
bitbucket/internal/ will stop working. Where an equivalent public API is available, use that. Otherwise, consider implementing your own version of the functionality. Some exceptions were made for heavily used modules, but these will eventually be replaced with supportable implementations of API and will also be removed in the future.
The temporary exceptions are:
Internal JS events not supported
Events (consumed using
bitbucket/util/events) starting with
bitbucket.internal have never been official API but will no longer be able to be subscribed to and should not be considered stable or part of any official API.
TextView API no longer supported
As a result of the changes to internal JS events and other changes, the TextView API (which was only accessibly via an internal event) will no longer be accessible or supported. The TextView API was for modifying the source or diff view. Where possible it is suggested to use Code Insights to display extra information on a diff. Key methods of the TextView API were
Custom file-handlers no longer supported for diff views
Custom file-handlers are no longer supported for diff views (but continue to be supported for source views). Any custom file-handlers registered for diff-views will be ignored when resolving the appropriate handler.
Removed support for previously supported platforms
- Support for the following database versions has been removed:
- Postgres 9.2
- Postgres 9.3
- Support for running Bitbucket Server with (server side) Git versions older than 2.11 has been removed.
- Support for ElasticSearch 2.x has been removed
These changes should not impact the development or running of third-party plugins.
Java platform update
Bitbucket, along with most Atlassian Server and Data Centre products, provide a standard set of libraries and plugins for which API is stable for a given major release. These are known as the platform. In Bitbucket Server 6.0 these have been updated, with many including major version updates.
|atlassian-util-concurrent (see note below)||4.0.1|
|fugue (see note below)||4.7.2|
atlassian-concurrent-util: Note the package name has also changed from
io.atlassian.util.concurrent. In order to ensure a smooth transition the old package is still exported and will continue to be until Bitbucket Server 7.0 is released.
fugue: Note the package name has also changed from
io.atlassian.fugue. In order to ensure a smooth transition the old package is still exported and will continue to be until Bitbucket Server 7.0 is released.