Major release for Bitbucket Server 6.0.0 now available

Just a quick post to alert you all to a new major release of Bitbucket Server.

API Changelog for Bitbucket Server 6.0.0

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 java.lang.NoSuchMethodError or java.lang.ClassNotFoundExceptions .

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 the Bitbucket managed 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 changelog entry for 5.10.

Removal of Notifications SPI

All public SPI available in the package com.atlassian.bitbucket.notification has been removed without replacement.

Removal of Search API

The packages com.atlassian.bitbucket.search and com.atlassian.elasticsearch.client were previously exported and available for plugins to use. These however were just implementation classes and not part of a useful search API. These packages are no longer exported as of 6.0.

Removal of Dev status API The packages com.atlassian.devstatus and com.atlassian.devstatus.vcs were previously exported and available for plugins to use. These however were just implementation classes and not part of useful API. These packages are no longer exported as of 6.0.

Removed API details

The following classes and interfaces have been removed in Bitbucket Server 6.0. Please see the linked Javadoc for Bitbucket Server 5.16 for informing regarding deprecation and possible alternative classes and interfaces.

In addition, deprecated methods in existing classes and interfaces across the whole Bitbucket Server API have been removed.

Consult the Bitbucket Server 5.16 Java API Reference for details on the removed methods, and their alternatives in Bitbucket Server 6.x.

Removal of provided Scala runtime

Previously plugins written in Scala were able to depend on Bitbucket Server 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 this dependency is no longer provided/exported.

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 a future major version update.

The temporary exceptions are:

  • :avatar-picker-dialog
  • :branch-multi-selector
  • :client-storage
  • :commits-table
  • :dom-event-util
  • :events
  • :global
  • :global-repository-selector
  • :group-multi-selector
  • :pull-request-can-merge
  • :pull-request-list-table
  • :require-lite
  • :revision-reference-selector
  • :searchable-multi-selector
  • :server-soy-templates
  • :time
  • :user-multi-selector

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 APIis 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 removed a future major version update.

The temporary exceptions are:

  • bitbucket/internal/bbui/pull-request-list-table/components/summary
  • bitbucket/internal/bbui/pull-request-list-table/pull-request-list-table
  • bitbucket/internal/feature/alerts/alerts
  • bitbucket/internal/feature/pull-request/can-merge/can-merge
  • bitbucket/internal/feature/repository/branch-multi-selector/branch-multi-selector
  • bitbucket/internal/feature/repository/global-repository-selector/global-repository-selector
  • bitbucket/internal/feature/repository/revision-reference-selector/revision-reference-selector
  • bitbucket/internal/feature/user/group-multi-selector/group-multi-selector
  • bitbucket/internal/feature/user/user-multi-selector/user-multi-selector
  • bitbucket/internal/util/client-storage
  • bitbucket/internal/util/dom-event
  • bitbucket/internal/util/events
  • bitbucket/internal/util/time
  • bitbucket/internal/widget/avatar-picker-dialog/avatar-picker-dialog
  • bitbucket/internal/widget/searchable-multi-selector/searchable-multi-selector

Internal JS events blocked

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 blocked

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. The TextView API could be used 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 addLineClass , addLineWidget , and registerGutter / setGutterMarker .

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.

Bitbucket Server 6.0.0 Released

See Bitbucket Server 6.0.0 Release notes for more information on this major release.

Released February 11, 2019

2 Likes

The link to the release doesn’t work, found them here:
https://confluence.atlassian.com/bitbucketserver/bitbucket-server-6-0-release-notes-966659875.html

Cheers,
Stefan