In this blog, we’ll walk you through the latest improvements to Eficode ROOT as of May 2020.
What’s new in the Atlassian Ecosystem?
May is the month for our almost-quarterly Atlassian Rollout, with brand new versions lined up for Bitbucket, Confluence and Jira as well as for their plugins and add-ons.
Let’s get down to the brass tacks. This is what’s happening:
- Bitbucket is updated from the current 6.9.1 to version 7.1.1,
- Confluence is updated from the current 7.2.0 to version 7.3.5,
- Jira is updated from the current 8.6.1 to version 8.8.0, and
- Jira Service Desk from 4.6.1 to version 4.8.0 as well.
Read on for our recap regarding the changes and excerpts from Atlassian’s release notes of the things we felt that you should know about.
What’s new in Bitbucket?
Version 7.0 was a major update for Bitbucket, which introduced considerable performance improvements, changed how the pull requests are handled and improved pull request user experience.
Please refer to the Bitbucket Server release notes at atlassian.com the full list of changes and fixes in Bitbucket 7.1.
2-way diff for pull requests
Bitbucket is switching from a 3-way diff to a 2-way diff in the version 7.0. It means that from 7.0 onward when viewing a pull request, the diff shown is a diff between the tip of the source branch and its common ancestor with the target branch. As a result of this switch, you’ll see the following primary changes:
- Pull requests will no longer visualize conflicts. The UI will still indicate when a pull request has conflicts, but they will no longer be marked up in the diff.
- Equivalent changes will not be “hidden”. If two different commits make the same change, a 3-way diff shows nothing (since it’s done the merge and knows nothing has changed), but a 2-way diff will still show the change.
- Lower CPU load. The processing required for a 2-way diff is substantially less than the requirements for a 3-way diff.
Faster navigation in pull requests
With twice-as-fast content loading while switching between diffs, improved file navigation performance, and smooth scrolling in a side-by-side diff, you just might find yourself having fun speeding through your code reviews.
Better collaboration in the diff view
- Comment anywhere in the diff, including on expanded lines of code that weren't changed as a part of the pull request.
- Comment on files stored via Git LFS.
- Syntax highlighting: Until now, syntax highlighting was only available on the side-by-side diff, but now it’s available in the unified diff too.
- Word wrap: No more horizontal scrolling to read lines of code in the diff.
- Expanding: Click Show more to expand all lines in the diff now, rather than just 10 at a time.
- Searching: You can now use your browser’s native Ctrl+F action to search for code in the file you’re viewing.
- Image thumbnails: Drag or attach an image into a comment and you’ll see a thumbnail-sized preview of it rather than having the full-sized image rendered.
- Filtering: Easily locate changed files in a pull request using the new Filter file tree button. Use wildcards to find what you need faster on pull requests that have a great deal of files to look through. You can find it just above the file-tree, along with the Search code button. To see an example, check out Review and discuss a pull request.
- Redesigned icons: Icons in the file tree view now have a more distinctive design with contrasting colors so that you can better recognize the relationship between them, and whether your file has been edited, added, removed, or modified.
A new webhook for source branch updates in a pull request
- New webhook added:
- When the source branch of a pull request is updated, for example, new changes are pushed to the source branch after incorporating code review feedback, and the webhook is triggered.
- Bitbucket Server client web fragment APIs are being replaced with the Atlassian client plugin on the pull request page.
- For more information, see this.
End of support announcements
The following are no longer supported, starting in 7.0:
- Internet Explorer 11 (see more here)
- Legacy Microsoft Edge (versions 18 and earlier). The latest stable Chromium-based Microsoft Edge continues to be supported.
What’s new in Confluence?
Confluence 7.3.x is an evolutionary release of the Confluence 7 product line, with enhancements and improvements all across the board.
Check out the Confluence release notes at atlassian.com for a complete overview of what’s changed.
Performance improvements in large spaces
When loading the page tree, Confluence needs to do lots permission checks to make sure people don't see pages that are restricted. In a very large space, these checks can consume a lot of memory and CPU, and have an impact on the overall performance of your site.
By default, Confluence will now load a maximum of 200 pages at each level of the page tree. It can be increased, decreased or disabled completely by Confluence administrator.
Improvements to Companion App functionality (Edit in Office)
Previously when editing a file using the Companion App, it was unclear when the file is saved and how the changes are pushed back to Confluence. Atlassian is demystifying this by changing how the process works.
Now when opening a file with the Companion App in Confluence, the file gets added to the list of recent files in the Companion App on your workstation. The list of files gets cleared when the Companion App is restarted.
Atlassian has changed how the companion app is launched from Confluence to support more browsers and legacy systems.
Gain a better understanding of who can view a page
Due to multiple levels of security in space permissions management (page restrictions, inherited page restrictions, space permissions) it was sometimes hard to understand who can see a page
You can now click the three dots (...) in top right corner while viewing a page to view a list of people who > People who can view for a simple list of all the people who:
- are allowed to view the space, via space permissions, and
- are not prevented from viewing the page by page restrictions.
Space administrators can disable the People who can view option, if they don't want people to be able to see the list of names.
Improved space permission management (Confluence Data Center only)
Atlassian has made it easier to track down what users and groups have permissions to a space or on a global level by introducing "Inspect permissions" feature
- When using inspect permissions within a space, the tool lists what permissions a single user has and why they get the permissions (via some group or directly added)
- Confluence administrators can use inspect permissions to review to what all spaces a certain group or user have access
Confluence administrators can now do bulk changes to space permissions (for example add permissions to one group to all spaces)
Rest API rate limiting (Confluence Data Center only)
Previously we have seen some problems with massive Confluence instances slowing down due to extensive API usage.
System admins can now control how many REST API requests automations and scripts can make, and how often they can make them.
What’s new in Jira?
Built-in user anonymization for GDPR compliance
Previously anonymizing users required manual labor and not everything could be changed (usernames in comments, for example). Atlassian is improving Jira GDPR compliance by adding the option for Jira Administrators to anonymize user records everywhere they are used in an application.
This also allows moving ownership of components, versions, filter ownership etc from one user to another so no information or accesses will be lost.
Improved audit logs
Atlassian has improved the audit logging in Jira with enhancements, such as:
- Ability to define what events are logged and for how long
- Filtering by events
- Jira Data Center only:
- Possibility to toggle between base / advanced / full audit log collection for certain actions and events
- Delegate audit log access to project administrators for that specific project
- Events are logged to a database and to a file in the local home directory → the file can be used to integrate with SumoLogic, ELK, Amazon CloudWatch and Splunk.
For a full listing of new events collected in audit logs, see here.
Better sprint planning
Previously when planning a future sprint, only the name and issues related to it could be defined.
In Jira 8.8.0 start and end dates can be set while creating a new sprint (but they can also be left empty and filled later).
Burnup and burndown chart reports have been changed to start when the sprint was actually started instead of the original planned dates.
Users can now accessibility settings from their user profile → Accessibility
Two options are available: underlined links and unique patterns on statuses. The status patterns are determined by status category and three different patterns are available.
What’s new in Jira Service Desk?
Bulk change issues in queue view
Agents can now bulk change issues directly from Jira Service Desk projects or queues. Up to 50 issues can be updated at once (this limit can be bypassed by using the regular JQL search instead of queues).
Previously, if a Service Desk Customer was part of an organization, their request would be shared with that organization by default. This has caused some customers to accidentally share sensitive information with others. From now on, requests created via the portal will be set to private by default. Project administrators can configure share settings for email requests to either private or share by default.
Also, customer email verifications can now be required when public signup is enabled.
Better attachment handling
Jira Service Desk will now detect and ignore any duplicate attachments (for example email signatures which used to pollute the attachment field).
Improvements to how agents are handled in Jira Service Desk
Previously agents could act as customers when interacting with Service Desk requests via portal and this would affect SLA rules and automations.
Agents will be treated as agents when they are set as approvers on an issue or they are part of a customer organization the request is shared with. Please be warned that:
- Some old SLA rules might get triggered by this.
- Agents will no longer receive internal comments and updates if they act as a customer on a request.
What’s new in the Jira plugin ecosystem?
For a detailed list of plugin updates and changes applicable to your ROOT Jira Server and/or ROOT Jira Data Center instance, please get in touch with your friendly ROOT support team.
These are the most important changes included in our Q2 Atlassian Rollout.
Structure for Jira
- Effectors - a new form of automation for writing Structure attributes to Jira fields
- Possibility to define permissions per user
- API changes that may affect Structure integrations
- Attribute sensitivity settings
- Improved rank sorting
- Read more
Time to SLA
- Export/Import functionality is added to the app.
Portfolio for Jira
- Ability to save a view of your plan
- Roll-up dates in plans as a full access feature
- Export plan data to CSV
- New relative date timeline options
- Sorting issues by the values of custom number fields
Better Excel exporter
- Support for Xray
- Support for Structure
- Support for Jira Misc Custom Fields (JMCF)
- Support for project exports
- Support for ScriptRunner (script custom fields)
- Support for Color Custom Fields
Refined for Jira Service Desk (now Refined for Jira)
- Refined now covers whole Jira, not just Jira Service Desk
- Delegate administrator permissions
- New and improved Theme Editor
- Setting start site for users
- More dynamic layout & pages sections
- Adding custom links
- New Site navigation
- Categorise your Images
- Refined filters for Jira search
- My Request module filter
- Improved resource handling and app size
- Underlying database changes
- For full list of API and function changes, see here.
Checklist for Jira
- Added possibility to block issue transitions if all checkbox items are not marked as done
- Convert checkbox items to issues
Clone plus for Jira
- A new clone option copyParentReporter allows you to copy the reporter of the parent issue to all the sub-tasks while cloning
- The fieldIncludes property that allows you to display specified field(s) when cloning is back and available for use
What’s new in SonarQube?
Pull request decoration for Community Edition
The amazing people contributing to the SonarQube community are at it again, bringing advanced SonarQube features for the Community Edition users! Michael Clarke’s SonarQube Community Branch plugin version 1.3.0 adds pull request decoration support for Bitbucket, GitHub and GitLab.
Check out the plugin community in GitHub and read the official SonarQube documentation for instructions on how to take it in use. You can also contact your friendly ROOT support, who will be happy to help in setting up your jobs and pipelines.
What else is new?
In other news, some SonarQube plugins are getting lifecycle updates in May:
- SonarC# is updated from 8.5 to version 8.6,
- SonarJava from 6.2 to 6.3,
- SonarPython from 2.7 to 2.8
- And finally, SonarVB from current 8.5 to the version 8.6.
What else is happening in ROOT?
Public documentation site released
We have released a new public documentation site at https://docs.eficode.io to better cater to the needs of our customers. From there you can find up to date information about our products and services as well as our Atlassian how-to guides. We aim to keep all information on the site up to date and useful.
As with everything, we welcome any feedback related to the site. Please let us know if you'd like to see something added or improved. Similarly we'll gladly update any content that is outdated or not useful.
GitLab gets a bump to release 12.10
GitLab’s April release implements an optional SSH key expiration feature, enhancing compliance with the usual corporate security policies, and a lot more. Refer to the GitLab releases page at gitlab.com to find out more!
Jenkins receives the monthly refresh
Jenkins Core is updated to the latest LTS release 2.222.3 along with a host of enhancements and fixes to its plugin content. Check out the LTS Changelog at jenkins.io for more information. Please contact your ROOT support for a full list of plugin changes applicable to your ROOT Jenkins instances.
Sonatype Nexus products are updated
Nexus IQ gets a minor version update from release 88 to release 90. Nexus Repository Manager 3 is updated to the latest version 3.22.1. See the Nexus IQ release notes at sonatype.com and Nexus Repository Manager release notes at sonatype.com for the specifics.