Swarm 2014.1: User Guide

What's new in 2014.1

This section provides a summary of the notable changes in Swarm for the 2014.1 release. Full details are available in the distribution's INSTALL.TXT file.

Major new functionality

Integration with Git Fusion

Git users may now perform pre-commit reviews using Swarm, via Perforce Git Fusion. For more details, see the following sections:

Restricted changes filtering

Restricted changelists are filtered from the Swarm UI if the user does not have permission to view them.

See “Restricted Changes” for configuration of notifications for restricted changes.

3D model viewing

Swarm now renders 3D model files (.STL, .OBJ, or .DAE) in the file browser and diff views. The viewer attempts to pull in referenced resources (including MTL files) in the model objects, provided they are web-safe images (e.g. .PSD textures will not render).

See “3D models” for details.

Minor new functionality

Significant memory reduction with many users/groups

Swarm's memory consumption in the processing of users and groups has been significantly reduced. For example, with 10,000 users and over 1,000 groups, Swarm previously used ~140MB of memory when populating the caches and ~120MB when reading from the caches; with these changes, memory usage drops to ~35MB and ~12MB respectively.

Scoping option for strict and enforce trigger types

The strict and enforce trigger types can now be scoped to just changes in a review using the -r flag. This allows unreviewed changes to proceed, but changes in a review must be approved.

Worker processing time and memory constrained

The amount of time and memory that worker processes use is now constrained. Previously, a worker could use an unlimited amount of memory and run forever (no limits). Now, the limits for a worker can be set in the config file and default to 1GB and 30 minutes respectively.

See “Workers” for details.

.RTF file rendering

.RTF files, although text, are now rendered through LibreOffice if installed.

See “LibreOffice” for details on LibreOffice.

Mainline branches on Project page

For a project's branches listed on the project page, the mainline branches are displayed first, and the remaining are now sorted alphabetically.

See “Mainline branch identification” for details on how to specify which branches are mainlines.

Branch identification for automated tests

When calling automated tests for a review, Swarm now lists only the branches impacted by the current change in the {branch} and {branchName} keywords.

See “How can I integrate my test suite to inform review acceptance or rejection?” for details.

config.php existence checked

Swarm now checks for the existence of data/config.php and if not present, displays a suitable error to the user.

Known limitations

Access Control

Swarm maintains a variety of information in the Perforce service's keys facility. By default, users with list-level privileges can read these keys, which can include comments that contain excerpts of code they may not normally have access to.

Perforce server version 2013.1 and higher have a configuration setting to require admin-level privileges. See “Hiding Swarm storage from regular users”.

CSRF protection

Swarm currently does not take proactive measures to prevent CSRF attacks. This will be addressed in an upcoming release. Note that Swarm does protect against the more common XSS attacks.

Virtual host recommended

Swarm must be installed to the root of a domain. We recommend creating a virtual host dedicated to Swarm.

LibreOffice compatibility on Mac

Due to issues with LibreOffice's headless mode on the Mac platform, Swarm cannot display Office-type file formats if it is installed on the Mac platform.

Task Stream Reviews

Pre-commit reviews in a task stream are not yet supported.

Trigger script for Windows

We include a trigger script for both Linux/Mac and Windows; however, the Windows variant currently lacks support for the following features:

  • enforce (enforce that submits are tied to an approved Swarm review)

  • strict (ensure the content of submits matches the content of their associated approved Swarm review)

Trigger table entries with '%quote%' not supported on 2010.2

The Swarm trigger scripts (found in p4-bin/scripts) document the trigger table entries to add, making use of %quote% to surround the pathname to the script; however, %quote% is not supported on 2010.2 Perforce Servers (they are harmless though). If you're running a 2010.2 Perforce server, ensure that there are no spaces in the path to the trigger script.

0 matching pages