Welcome to the sfutils project! This collection of open-source code makes it easy for project administrators and release technicians to work with SourceForge without having to manually navigate its website and project tools. It currently provides a Java interface to the SourceForge file release system, with more features planned down the road.
This project is most appropriate for SourceForge project administrators and release technicians who want an easy way to automate SourceForge's web-based processes. For example, you might want to make a SourceForge file release from a build script, or announce a new news item of interest, or update your SourceForge diary.
The code in this project is released under the terms of the MIT License, which basically means that you can do whatever you like with the code, provided that you retain its original copyright notice. Please see the full license text for details.
This project is written in Java, and relies on the assertions facility present in the Java Development Kit versions 1.4 and higher. Please see the dependencies section for a list of the other products and libraries that this project requires. Notable among them are version 1.5.3 of the Ant build tool, and version 3.8.1 of the JUnit unit testing framework.
The first set of tools in the SourceForge Utilities project is a Java
object interface to the SourceForge
File Release System. This collection of objects, spearheaded by
class, represents a file release, together with its associated package
and project attributes. In general, you create a
object graph and then publish
it using a
Please see the Javadoc
package description for the
sfutils.frs package for
This project also includes an Ant task for these Java objects. The task enables you to publish a file release from within a build file. For example:
<?xml version="1.0" ?> <project basedir="." default="sampletarget"> <taskdef name="sfpublish" classname="org.apache.tools.ant.taskdefs.optional.sourceforge.SourceForgePublish"/> <target name="sampletarget"> <sfpublish releasename="my-release-1.0" packagename="my-sourceforge-package-name" packagehidden="no" hidden="no" projectshortname="samples" projectname="A Sample SourceForge Project" username="myUsername" password="myPassword" releasedate="6/28/2003"> <filespec file="/path/to/file/to/be/released" filetype="other" processortype="sparc"/> <filespec file="/path/to/another/file/to/be/released" filetype="gzip_file" processortype="platform_independent"/> </sfpublish> </target> </project>