CcPublisher Release Procedure

From Creative Commons
Jump to: navigation, search

This page documents the procedure used when creating a new release of ccPublisher.

Increment Version Number

The version number currently needs to be updated in two places. This will be corrected in the future (see Issue 102).


The pyarchive package is responsible for assembling metadata and uploading files to the Internet Archive. The file contains the version number as part of the uploading application identification. For example, the current release contains the following code that would need updated for a new release:

       <upload_application appid="ccpublisher" version="1.9.3" />
       """ % (self.title, self.collection, self.mediatype) )


The version.txt contains the current version number and is used for the about box and other user-visible locations. This file is located in the resources directory of a ccPublisher checkout.

Create Packages

The package creation process varies slightly for different platforms. We will have scripts for this, we just haven't found the right tool. Ideally something like Ant, but without the Java overhead. Suggestions welcome.


Windows Mac OS X Linux
  • py2app


When issuing


We currently distribute tarballs of ccPublisher for Linux. There is some support for building RPMs in Subversion, but it is far more fragile than the simple tarball support. To build a tarball from your checkout:

 $ python sdist


The py2exe distutils extension takes a Python script, assembles the dependencies, and creates an executable stub along with the dependencies. To build the application byte code and loader, run the following command:

 C:\publisher> c:\python24\python.exe py2exe

This will assemble the necessary files in the dist subdirectory. When building ccPublisher, you will see ccpublisher.exe which is the main application.

Mac OS X


Distribute Packages