A collection of work-in-progress projects, including code, art, and physical design files.
Conta...ct via simulacrum.of.completion@gmail.com «
AuthP4 is a MediaWiki authentication plugin that forwards authentication requests to a Perforce serv...er.
http://public.perforce.com/wiki/AuthP4 «
Some helpful tooling to automated merges into development streams.
Previously described here: htt...ps://swarm.workshop.perforce.com/view/automerge/main/docs/LivingOnTheEdge-AutomaticMerging.html «
This is a placeholder for Azure Resource Manager Quickstart template script
Love 'em or hate 'em, header guards are in frequent use in C/C++ code.
We had the problem where... it can allow for some sloppy conventions where a header is included in both the .h and .cpp files, and in some extreme cases, included twice in a single file.
I wrote a quickie Perl script that dumps files with these situations to stdout. You pass in the path to the source tree root you want to fix. «
CALAMARI is a primitive diff/merge tool for raster images.
It is based on the idea of comparing the... color value of each pixel in one or more images to the color value of a corresponding pixel in a counterpart image of equal dimensions.
http://public.perforce.com/wiki/CALAMARI «
Wrapper script for Duplicity backup.
This script adds logging, email notification, and easy restore... from the command line.
http://public.perforce.com/wiki/Dpbackup «
This tool provides a Git-like interface to Perforce, (hopefully) allowing it to be dropped into Xcod...e to take advantage of Xcode's native Git integration.
This is not a Perforce support project. If you have questions please feel free to reach out to me here or at @p4mataway on Twitter «
Proof-of-concept FUSE app for OS X that mirrors a local Perforce workspace that handles running comm...ands like "p4 add" and "p4 edit" automatically as your apps add and edit files. «
Fix-LE.exe - Remove extraneous 0x0d (carriage return) bytes from a Microsoft "Unicode" (UTF16-LE) fi...le.
http://public.perforce.com/wiki/Fix_Line_Ending_Translation «
Genesaver is a small virtual ecology in the form of a screensaver.
The "creatures" are steered arou...nd the screen by simple neural nets; successful creatures produce offspring that inherit slightly modified versions of their parent's behavior, so that increasingly intelligent behavior evolves over time.
http://public.perforce.com/wiki/Genesaver «
This project includes instructions & command reference for Helix Versioning Engine 2016.2 Graph... Depot Beta Customers only «
Helix Installer - Installs various Helix Server components, including p4d and p4broker, with a simul...ated enterprise-style installation using the Server Deployment Package (SDP) on a Linux system.
Also deploys with the Sample Depot data set familiar to attendees of various Perforce training end Eval\/Demo sessions.
Useful for stand-alone test and demo installations, Vagrant-based server setup, and could be used to bootstrap Docker images/containers.
Helix Installer is used by the CBD test suite. A slightly modified version is used for the Lab Engine behind the Battle School Workshop.
Helix Installer could also be used to bootstrap a production server instance, as it does use the SDP. However, additional oversite of the installation would be warranted post-install for that usage. «
This project has been moved to //guest/perforce_software.
See: https://swarm.workshop....perforce.com/projects/perforce_software-helix-installer «
Exercise in Ruby and gamification after reading Brian Burke's "Gamify: How Gamification Motivates Pe...ople to Do Extraordinary Things" «
Test data initialization system.
Seeds a new p4d instance with a bunch of data defined via JSON file...s. «
Gradle plugin that adds "initializePerforce" command to seed the p4d started by the perforce-gradle-...plugin. «
A Swarm module implementing Atlassian's Smart Commits spec for Perforce and JIRA.
This form-in trigger builds on the server's concurrent edit detection for jobs and the existence of... a spec depot to do automated merging when two users edit a job concurrently.
http://public.perforce.com/wiki/Jobmerge.rb «
The source for JournalReader has been branched to perforce_software/JournalReader since Perforce use...s this for internal testing, and sven (unfortunately) is not with us any more.
Go to the new location for the latest updates.
JournalReader is a tool to read, analyse and manipulate Perforce checkpoints and journal files.
It understands the schema of all checkpoints since the beginning of Perforce. The tool reads the entries in the checkpoint or journal and turns it into JournalEntry objects that match a key from the schema to a value in that entry. Users typically interact with JournalEntry objects by using or creating an Action. There is a range of existing Action implementers to use and to learn how Actions could be written. «
This Swarm module allows you to send Swarm events to a kato.im channel.
This is module is not su...pported by Perforce Support. Please feel free to contact me (@matt_attaway) if you have any questions. «
LCARS Perforce Console
Practice app to learn more about Electron and Node.js.
General-purpose collection of C/C++ libraries to accomplish many goals.
Current libraries includ...e:
sprawl::collections - various container types
sprawl::hash - various string hashing algorithms
sprawl::memory - memory allocation
sprawl::network - general-purpose networking
sprawl::serialization - object serialization for file/database storage and/or networking
sprawl::string - reference-counted immutable strings «
General-purpose collection of C/C++ libraries to accomplish many goals.
Current libraries includ...e:
sprawl::collections - various container types
sprawl::hash - various string hashing algorithms
sprawl::memory - memory allocation
sprawl::network - general-purpose networking
sprawl::serialization - object serialization for file/database storage and/or networking
sprawl::string - reference-counted immutable strings «
log_analyzer takes a VTRACK log file as input, and produces a formatted text report listing th...e commands with longest compute phases, longest database lock times, and so on. «
log_analyzer takes a VTRACK log file as input, and produces a formatted text report listing th...e commands with longest compute phases, longest database lock times, and so on. «
log_analyzer takes a VTRACK log file as input, and produces a formatted text report listing th...e commands with longest compute phases, longest database lock times, and so on. «
Javascript API example demonstrating how a user can define a graphical view of branch relation...ships.
This example was modeled after Eclipse's Merge Quest tool implemented by Perforce. «
he Monthly Stats MediaWiki extension adds a new special page, Special:MonthlyStats, that contains ch...arts showing month-by-month contribution statistics.
If the $wgP4EXEC, $wgP4PORT, $wgP4WEBURL, etc variables are defined (as for the Perforce MediaWiki extension), the same information will be shown for Perforce changelist submissions.
http://public.perforce.com/wiki/Monthly_Stats «
This tool identifies files that are changed multiple times a day by more than one user.
Files that... frequently have overlaps may be candidates for refactoring.
http://public.perforce.com/wiki/Overlaps «
Seriously, you should use p4clog.py for most log analysis unless you have a good reason not to these... days. «
A modification of the P4 command line client to increase security by allowing biometric authenticati...on rather than password authentication. «
Compiled p4 binary with modified source files.
A compiled version of Jam 2.6.1 is included.
Perforce bindings for the LispWorks IDE
control-x p e &n...bsp; "P4 Edit"
control-x p S "P4 Submit"
control-x p o "P4 Opened"
control-x p r "P4 Revert"
My purpose in writing this was to give me a simple integration between LispWorks and the Perforce SCM, enough to cut out (say) 90% of the context switches in return for 10% of the programming effort. I might come back and do the rest some time. «
P4API.NET enables you to access Perforce software version management services from within a .NET pro...gram.
Custom builds of the P4API.NET are not supported by Perforce Support. For the most recent supported build go to:
http://www.perforce.com/downloads/Perforce/Customer «
P4API.NET enables you to access Perforce software version management services from within a .NET pro...gram.
Custom builds of the P4API.NET are not supported by Perforce Support. For the most recent supported build go to:
http://www.perforce.com/downloads/Perforce/Customer «
P4API.NET enables you to access Perforce software version management services from within a .NET pro...gram.
Custom builds of the P4API.NET are not supported by Perforce Support. For the most recent supported build go to:
http://www.perforce.com/downloads/Perforce/Customer «
P4 trigger script that attaches changelists to Helix ALM items on commit.
Parses P4 descript...ion for terms such as "[IS-123]" to attach to issue #123 in Helix ALM.
Requires Python and P4Python.
For setup information see http://help.seapine.com/helixalm/2017.1.0/client/Content/Admin/ConfiguringTriggersAttachChangelistsFromHelixVCS.htm «
P4DCTL is a tool that allows the administrator to describe and control all the Perforce services run...ning on a unix machine.
P4DCTL is used as part of the Perforce Server RPM/DEB packages for Linux http://package.perforce.com/
For an official Perforce supported version of P4DCTL please install it using the packages list above. «
Windows trigger used to send p4 changelist info into FogBugz cases based on script supplied by FogBu...gz support.
Uses windows scripting.
Submit changelists with text "[case: xxxx]"
P4 trigger:
FogBugzTrigger change-commit //... "cscript.exe /nologo %YourDir%\log
BugDataP4.js %changelist% %serverport%" «
The source code for the Perforce graphical tools plugin
Custom built versions of P4GT are not su...pported by Perforce support. To get the most recent supported version please visit the downloads page at http://www.perforce.com
If you have questions about how to extend P4GT please post to the Perforce Forums and we will help you as much as possible. «
A simplified approach to the P4Java API that wraps the Map-oriented commands with interfaces, utiliz...ing the new abilities available in Java 8. «
This is a Perforce API for working with node.js.
This projects is not supported by Perforce supp...ort. For any questions on usage please visit the Perforce Forums http://forums.perforce.com «
This is a Perforce API for working with node.js.
This projects is not supported by Perforce supp...ort. For any questions on usage please visit the Perforce Forums http://forums.perforce.com «
This is a Perforce API for working with node.js.
This projects is not supported by Perforce supp...ort. For any questions on usage please visit the Perforce Forums http://forums.perforce.com «
A new and improved Microsoft Office integration for Perforce.
This project is not supported by P...erforce Support. For questions please post to the Perforce Forums.
Latest download:
https://swarm.workshop.perforce.com/download/guest/perforce_software/p4office/dist/P4OFC.exe
Notes:
https://swarm.workshop.perforce.com/projects/perforce-software-p4office/files/main/main/README.txt «
Provides a P4V diff tool for Word (and in future PowerPoint) files:
Just run installer and check... under Edit > Preferences > Diff that the tool is installed for appropriate .doc/.docx extensions.
Installer:
https://swarm.workshop.perforce.com/files/guest/robert_cowham/perforce/p4officediff/main/install/Output/P4OfficeDiffSetup.exe
Then just diff Word documents in P4V and find Word is launched in the background. «
Provides a P4V diff tool for Word (and in future PowerPoint) files:
Just run installer and check... under Edit > Preferences > Diff that the tool is installed for appropriate .doc/.docx extensions.
Installer:
https://swarm.workshop.perforce.com/files/guest/robert_cowham/perforce/p4officediff/main/install/Output/P4OfficeDiffSetup.exe
Then just diff Word documents in P4V and find Word is launched in the background. «
P4OO.py provides a layer of first class objects on top of P4Python
http://wiki.workshop.perforce....com/wiki/P4OO.py «
Perforce's native API for PHP
Custom builds of P4PHP are not supported by Perforce Support. For t...he most recent supported build go to:
http://www.perforce.com/downloads/Perforce/Customer
We are accepting contributions to this project. «
Useful scripts an triggers to be used with P4Python.
Also binary installers for Windows Python f...or different versions. «
Original p4review.py daemon script.
Send out email notifications on submitted changelists.&n...bsp; See Configuring the Review Daemon (p4review.py) https://community.perforce.com/s/article/2920 «
Perforce's native API for the Ruby language
Custom builds of P4Ruby are not supported by Perforc...e Support.
Release notes for the officially supported version are available here: https://www.perforce.com/perforce/doc.current/user/p4rubynotes.txt
We are accepting contributions to this project. «
Training materials and installer.
Primarily intended for use with Perforce Consulting provided t...raining, but as they are based on the Perforce Sample Depot, is it being made publicly available. «
AS OF 2021/02/04 THIS PROJECT IS DEPRECATED!!
==========================================
It is no... longer being maintained here, but instead at the equivalent repository in https://github.com/perforce/p4transfer
A handy tool for shipping changes between Perforce servers. «
This project is an attempt to add the ability to have external programs ask p4v to show and highligh...t a file in depot view «
Source code for the classic tool GUI P4Win.
P4Win is a community project and is
not supported... by Perforce Support.
For help with P4Win please visit the
Perforce Forums at:
http://forums.perforce.com «
Source code for the classic tool GUI P4Win.
P4Win is a community project and is
not supported... by Perforce Support.
For help with P4Win please visit the
Perforce Forums at:
http://forums.perforce.com «
This extension implements a number of MediaWiki tags that make it easy to integrate Perforce data in...to your wiki pages.
See the wiki project page for more details.
http://public.perforce.com/wiki/Perforce_MediaWiki_extension «
A Maven project that will build all components of Perforce commons and deploy them to a Maven reposi...tory «
Adds methods to assist in developing tools against a Perforce server.
Typical features:
- W...ill download and cache released versions of p4d locally
- Sets up a temporary directory with p4d created «
protexp.pl is a form trigger for protections that allows multiple protections lines to be specified... as a single expression containing special variables.
The form-in half of the trigger expands the expression into a set of actual protections entries, and the form-out half of the trigger collapses it back into its shorter human-editable form. «
Ravenbrook is using the excellent Perforce Git Fusion
<https://www.perforce.com/perforce/doc.cur...rent/manuals/git-fusion/> to
maintain public Git repositories for our various open source projects.
As of version 2015.4, Git Fusion does not identify the Perforce Helix
server that a git commit comes from in the commit description. We are
making a local change to Git Fusion to support this. This repository
exists to version the change, and also share it with Perforce, so that they
can consider a compatible change. «
Scenesaver is an AI-driven twist on the "slideshow screensaver" concept.
Image transitions are perf...ormed by a swarm of evolving creatures (similar to those in Genesaver) that are rewarded for efficiency.
http://public.perforce.com/wiki/Scenesaver «
OFFICIAL Perforce Server Deployment Package (SDP)
The Perforce Standard Deployment Package (SDP)... provides a set of scripts to greatly simplify setup of an enterprise-grade Perforce management solution, making it straightforward enough that it can be used by enterprises small and large. The SDP implements a variety of best practices, such as zero-downtime for backup-related activities. It also provides documentation and guidance for optimal deployment.
See the README file for more information: https://swarm.workshop.perforce.com/projects/perforce-software-sdp/view/main/README.html «
Fully compiled "classic" format release notes to simplify searching and specifying specific patches... and earlier fixes for customers. «
This is a collection of sample projects to get people started with modifying Swarm for their own nee...ds. «
VDSL - ClearCase VOB Data Set Loader
VDSL provides a way to describe a sequence of simulated use...r actions interacting with the IBM Rational ClearCase version control system. Special config files define the sequence of user actions, config specs to use, views and VOBs to create and destroy. This makes it easier to develop and test tools which must extract user actions from ClearCase. This is useful, for example, in organizations that operate both ClearCase and Perforce. «
This tool generates the necessary data for tools such as code_swarm and gource to display the evolut...ion of your source code.
It's unique in that it has options for compressing variants into one node, excluding paths and file extensions, and including jobs that are filed and fixed so that your QA people aren't left out of the fun. «