Major Enhancements

#1349976, #1354369, #1359795, #1363946, #1365396, #1369116, #1371461, #1372479, #1372656, #1372707, #1373228, #1374179, #1374273, #1375065, #1375073, #1375075, #1375228, #1375498, #1375504, #1375648, #1375649, #1375718, #1376051, #1376062, #1377591, #1378119, #1378785, #1378791, #1379330, #1383350, #1385018, #1385382 (Bugs #84966, #84967, #84968, #84969, #84971, #84974, #84975, #84976, #84977, #84978, #84979, #84981, #84982, #84983, #84984, #85311, #85602, #85914, #86004, #86059, #86121, #86131, #86232, #86263, #86274, #86372, #86449) Added support for managing user groups in Swarm. You can now view, list, search, add, edit and delete groups. Each group can have notifications enabled so that members of the group get emails anytime another member of the group creates a review or commits a change. When viewing a group you may see activity performed by any member of the group and reviews created by any member of the group. When listing groups, groups that you own or are a member of appear first, groups with notifications enabled appear second and lastly, groups are ordered by name.

#1334616, #1334641, #1334707, #1334746, #1336388, #1336866, #1363026, #1365608, #1368601, #1380898 (Bugs #84462, #85188, #85402, #85411) Users can like comments. At the bottom of each comment Swarm now displays the number of likes and a heart icon. The icon can be clicked to 'like' the comment. When a comment is liked, Swarm records the activity and sends an email notification to the author of the comment.

#1325760, #1330654, #1338383, #1349339, #1353543, #1353982, #1354643, #1356548, #1356781, #1359595, #1363405, #1374135, #1374751, #1374758, #1375435, #1375931, #1377876, #1378137, #1379283, #1383321, #1383679, #1385021, #1385190 (Bugs #76774, #84359, #84458, #84852, #85003, #85010, #85129, #85307, #85391, #85492, #85537, #85570, #85620, #86060, #86119, #86225, #86350) Added version 2 of the RESTful API (ie. /api/v2/). Version 2 adds the following functionality: list activity, list groups, fetch a group, create a group, update a group, delete a group, fetch a project, create a project, update a project, delete a project, transition a review and commit a review.

Minor Enhancements

#1382157 (Bug #84535) Improved performance for the Swarm blame button. Using a 20,000 line test file, this change reduces the rendering time from ~60s to ~2s in Firefox and Chrome. Internet Explorer 10 improves from ~730s to ~8s.

#1380885 (Bug #86341) Swarm now requires users to be logged in by default. To restore the previous behavior edit config.php and set array('security' => array('require_login' => false))

#1379290 (Bug #84420) Added a "My Reviews" dropdown button to the Reviews page. This allows reviews to be filtered by those that you authored or those that you are participating in.

#1374066 (Bug #86011) Added an option to disable Swarm's auto-registration of the P4.Swarm.URL property. The new option can be set in config.php: array('p4' => array('auto_register_url' => false))

#1372999 (Bug #81339) The X-Frame-Options header is now configurable. This header controls when Swarm can be embedded in frames. To disable the header edit config.php and set: array('security' => array('x_frame_options' => false))

#1368888, #1372690 (Bugs #85380, #85542, #86050) Improved performance with large numbers of users or groups. Testing with 10000 users and a comment thread with 100 comments, page load times were reduced from 7s to 250ms.

#1361367 (Bug #86519) Updated language files for JA, KO and ZH.

#1356521 (Bug #85314) Renamed config options for adding projects to be more consistent with other options. Existing settings are still honored. The 'security -> add_project_admin_only' option becomes 'projects -> add_admin_only'. The 'security -> add_project_groups' becomes 'projects -> add_groups_only'.

#1351847, #1352325, #1352326, #1356409 (Bug #81285) Updated the precompiled P4PHP binaries that come with Swarm to use P4API 2015.2/1340214.

#1323467 (Bug #77725) To assist with troubleshooting email configuration problems Swarm now logs successful emails at the DEBUG log level.

#1321796 (Bug #84384) Updated the project toolbar to look more modern.

Bug Fixes

#1380942, #1381570, #1384005 (Bug #85965) Fixed a bug that could produce two reviews for a single change under certain conditions. If a review was created using both the '#review' keyword and via the P4V integration, there was a race condition that could result in two reviews being created. Now Swarm temporarily locks each change before starting a new review. These locks are Swarm specific and only limit the creation of reviews.

#1372509 (Bug #85872) Fixed a minor issue where double-clicking on project settings checkboxes could cause the checkbox to become out of sync with the form.

#1365277 (Bug #84965) Fixed a bug where links to users in search results did not work for usernames that contained backslashes.

#1359574 (Bugs #80107, #85454) Fixed a bug where ZIP downloads did not work on pending files.

#1359011 (Bug #85423) Fixed a problem where URLs with no TLD were not linkified. Swarm no longer requires a TLD in the hostname to linkify a URL.

#1355979 (Bug #81600) Reduced the severity of Basic Authentication failures to 'debug'. This should reduce noise in the log file.

#1352055 (Bug #76075) Fixed an issue where the buttons on an archived comment could become hard to click if the window was too narrow.

#1350832, #1351299 (Bug #85191) Fixed a bug where the user dropdown menu could be partially hidden behind the header on some pages.

#1350733 (Bug #85176) Fixed a bug where the branch moderators tooltip on the project settings page did not correctly list moderators.

#1349386 (Bug #84995) Fixed a 500 error that could occur when viewing a user's shelved changes if 'dm.keys.hide' was set and the current user was not an administrator.

#1338808 (Bug #84906) Fixed a bug that caused the jobs search to throw an exception for queries that start with '^' (not).

#1327917 (Bug #84622) Fixed a problem where the test status of a review was not updated if the tests were re-run without making any changes to the review.

#1327209, #1327378 (Bug #84629) Fixed a problem that could occur with existing cache files when upgrading Swarm. We now verify that the schema in the cached objects matches the current schema.

#1318968, #1330724 (Bug #84650) Fixed a bug where the common path was not being displayed for shelved changes.