#PIPER Piper is a Perforce desktop client that is designed to be simpler to use than P4V. Note that Piper has nowhere near the functionality of P4V, and probably never will (in fact, the original project has a 2.0 version that has an even *simpler* interface!). ### EXTRAS The Piper project includes two [scripts](https://swarm.workshop.perforce.com/projects/perforce-software-piper/files/main/scripts): * **SubmitTagger.py** - this script adds comma-delimited "tags" to the items in the corresponding changelist. By default, tags are specified in the changelist description using hashtag-style words (e.g. *#funStuff*). This script should be installed as a change-commit trigger: ` SUBMIT.tagger change-commit //... "/p4/common/bin/triggers/SubmitTagger.py -c %change%" ` * **ThumbnailGenerator.py** - this script uses ImageMagick to create png thumbnails of files and store them in the thumb attribute of file revisions in Perforce metadata. Piper will render these thumbnails, as will P4V. This script is intended to be configured as a cron job on the machine. It does not have to run on the same machine as the Perforce service, however. It keeps track of the last changelist that it indexed using a counter called `thumb-generator`. This script should be installed as a cron job. ## Packaging ### MAC The Mac version of Piper is compiled with XCode 6.3.1. Piper can be installed by mounting the DMG file ([Piper.dmg](https://swarm.workshop.perforce.com/files/guest/perforce_software/piper/mac/R2.0/dist/Piper.dmg)) and dragging the application within to your Applications directory. ### WINDOWS ## Documentation The markdown file `README.md` (this document) is located in the project's root directory on the Workshop. ###[Mac Docs](mac/README.md) ###[Windows Docs](windows/README.md) ## Requirements ### GENERAL Piper has been tested with Perforce server version 2013.2-2014.2, although there is no reason that it should not work with an earlier Perforce version. Since Piper is compiled with the 2014.2 API, you would want to replace the libraries and recompile with the 2015.x API to use with a newer (2015+) server. ### P4Search Piper can search the Perforce repository if you have [P4Search](https://swarm.workshop.perforce.com/projects/perforce-software-p4search) installed. Piper will look for a key called p4search.url and, if present, will allow you to perform searches within the application. For example: `p4search.url = http://search.company.com:8088` NOTE: this search utility uses the P4Search-specific API. You cannot just throw in your favorite search engine and expect things to work! ### MAC Piper has been tested with Mac OSX 10.9 and above. ### WINDOWS Piper has been tested with Windows 7 and Windows 8. Piper requires .Net 4.5 to function. The Piper installer (msi) makes registry entries and must be run by a user with administrative rights. ## Limitations Currently, Piper only supports classic Perforce depots (i.e. no streams). It wouldn't be too difficult to modify Piper to support using streams (and in fact might make workspace management a lot easier). Piper has been compiled with the Perforce 2014.2 libraries, so you will probably have issues trying to connect to a 2015.x server. Replace the libraries and recompile if you are having problems. ## Support Piper is distributed in a *BYOS* model... Bring Your Own Support. ### Issues Issues are tracked on the Workshop under the [Jobs](https://swarm.workshop.perforce.com/projects/perforce-software-piper/jobs/) tab. __TBC__ ### Contributing __TBC__