-->
<property file="build.properties" />
- <property name="version-m" value="0.1" />
- <property name="version" value="0.1.0" />
+ <property name="version-m" value="0.4" />
+ <property name="version" value="0.4.0" />
<property name="stability" value="alpha" />
<property name="releasenotes" value="
-First release
+Version 0.4.0 - 2014-07-15
+--------------------------
+* Fix bug #27: Render .json files
+* Fix bug #31: Forked pastes cannot be remote forked
+* Fix bug #33: Do not index login page
+* Fix bug #41: AGPL link broken
+* Fix bug #43: github gist cloning does not work
+* Fix bug #44: Anchors of files with spaces in their name
+* Fix renaming of binary files
+* Implement request #6: Atom feed for new and updated pastes
+* Implement request #7: Track and display remote forks
+* Implement request #21: Send linkbacks when forking remote pastes
+* Implement request #32: Distribute phorkie as .phar file with all dependencies
+* Implement request #34: Store last OpenID in cookie and pre-fill login form
+* Implement request #35: Store author of a paste
+* Implement request #37: Show user icon in navbar and profile page
+* Implement request #42: Single click remote forking with web+fork: url handler
+* Add autoconfiguration for public git clone urls over http
+* Add baseurl setting to make phorkie run in a subdirectory of a domain
+* Add setupcheck page that checks dependencies and other things
+* Add support for file names with directories in pastes
+* Add support for UTF-8 characters in file names
+* Add support for web hooks
+* Add support for forking HTTP and HTTPS git URLs
+* Extract gist titles
+* Make it possible to install dependencies via composer
" />
- <property name="zipfile" value="${phing.project.name}-${version}.zip" />
+ <property name="libdir" value="${phing.dir}/lib"/>
+
+ <property name="zipfile" value="${phing.project.name}-${version}.tar.bz2" />
+ <property name="pharfile" value="${phing.project.name}-${version}.phar" />
<property name="pkgfile" value="${phing.project.name}-${version}.tgz" />
+
+ <property name="pharpath" value="${phing.dir}/dist/${pharfile}" />
<property name="distfile" value="dist/${zipfile}" />
<property name="distpkgfile" value="dist/pear/${pkgfile}" />
+
<property name="sfproject" value="phorkie" />
<property name="sffilepath" value="p/ph/phorkie/" />
<fileset id="fs.zip" dir=".">
<include name="data/**"/>
+ <include name="scripts/**"/>
<include name="src/**"/>
<include name="www/**"/>
+
+ <include name="ChangeLog"/>
<include name="LICENSE"/>
+ <include name="NEWS.rst"/>
<include name="README.rst"/>
+
+ <exclude name="**/.git/"/>
<exclude name="**/.gitignore/"/>
<exclude name="data/config.php"/>
+ <exclude name="www/**/.phar"/>
+ <exclude name="www/repos"/>
+ </fileset>
+
+ <fileset id="fs.phar" dir="${phing.dir}">
+ <include name="data/**"/>
+ <include name="lib/**"/>
+ <include name="scripts/**"/>
+ <include name="src/**"/>
+ <include name="www/**"/>
+
+ <include name="ChangeLog"/>
+ <include name="README.rst"/>
+
+ <exclude name="data/config.php"/>
+ <exclude name="**/.git/"/>
+ <exclude name="**/.gitignore/"/>
+ <exclude name="www/**/.phar"/>
+ <exclude name="www/repos"/>
</fileset>
<fileset id="fs.doc" dir=".">
<include name="README.rst"/>
+ <include name="NEWS.rst"/>
</fileset>
- <taskdef name="rST" classname="phing.tasks.ext.rSTTask" />
<taskdef name="d51pearpkg2" classname="phing.tasks.ext.d51PearPkg2Task" />
- <target name="zip" depends="check"
+
+ <target name="phar" depends="preparedirs,collectdeps"
+ description="Create phar file for release"
+ >
+ <delete file="${pharpath}"/>
+ <exec command="php scripts/build-rewritemap.php" dir="${phing.dir}"/>
+ <pharpackage basedir="${phing.dir}"
+ destfile="${pharpath}"
+ stub="${phing.dir}/src/stub-phar.php"
+ alias="phorkie.phar"
+ >
+ <fileset refid="fs.phar"/>
+ </pharpackage>
+
+ <exec executable="bzip2" dir="${phing.dir}/dist">
+ <arg value="-kf"/>
+ <arg file="${pharpath}"/>
+ </exec>
+ </target>
+
+
+ <target name="collectdeps" description="Copy package dependencies to lib/">
+ <delete dir="${libdir}"/>
+ <mkdir dir="${libdir}"/>
+
+ <!-- requires phing >= 2.8.0 -->
+ <copy todir="${libdir}">
+ <pearPackageFileset package="pear.php.net/Cache_Lite"/><!-- OpenID -->
+ <pearPackageFileset package="pear.php.net/Console_Getopt"/>
+ <pearPackageFileset package="pear.php.net/Crypt_DiffieHellman"/><!-- OpenID -->
+ <pearPackageFileset package="pear.php.net/Date_HumanDiff"/>
+ <pearPackageFileset package="pear.geshi.org/geshi">
+ <!-- remove files that are probably not needed to save space in the .phar -->
+ <exclude name="geshi/arm.php"/>
+ <exclude name="geshi/autoit.php"/>
+ <exclude name="geshi/thinbasic.php"/>
+ </pearPackageFileset>
+ <pearPackageFileset package="pear.php.net/HTTP2"/>
+ <pearPackageFileset package="pear.php.net/HTTP_Request2"/>
+ <pearPackageFileset package="pear.php.net/MIME_Type"/>
+ <pearPackageFileset package="zustellzentrum.cweiske.de/MIME_Type_PlainDetect"/>
+ <pearPackageFileset package="zustellzentrum.cweiske.de/MIME_Type_PlainDetect" role="data"/>
+ <pearPackageFileset package="pear.michelf.com/Markdown"/>
+ <pearPackageFileset package="pear.php.net/Net_URL2"/>
+ <pearPackageFileset package="pear.php.net/OpenID"/>
+ <pearPackageFileset package="pear.php.net/Pager"/>
+ <pearPackageFileset package="pear.php.net/PEAR">
+ <include name="PEAR/Exception.php"/>
+ <include name="PEAR.php"/>
+ <include name="PEAR5.php"/>
+ <include name="OS/Guess.php"/>
+ <include name="System.php"/>
+ </pearPackageFileset>
+ <pearPackageFileset package="pear.php.net/Services_Libravatar"/>
+ <pearPackageFileset package="pear2.php.net/PEAR2_Services_Linkback"/>
+ <pearPackageFileset package="pear.php.net/Services_Yadis"/>
+ <pearPackageFileset package="pear.php.net/System_Command"/>
+ <pearPackageFileset package="pear.twig-project.org/Twig"/>
+ <pearPackageFileset package="pear.php.net/Validate"/>
+ <pearPackageFileset package="pear.php.net/VersionControl_Git"/>
+ </copy>
+ </target>
+
+
+ <target name="zip" depends="preparedirs"
description="Create zip file for release"
>
<!--
-->
<echo msg="Creating distribution zip for phorkie ${version}"/>
<delete file="${distfile}" failonerror="false"/>
- <zip destfile="${distfile}" prefix="${phing.project.name}-${version}/">
+ <tar compression="bzip2" destfile="${distfile}"
+ prefix="${phing.project.name}-${version}/"
+ >
<fileset refid="fs.zip"/>
- </zip>
+ </tar>
</target>
- <target name="package" depends="check"
+ <target name="pear" depends="check"
description="Creates the pear package"
>
<d51pearpkg2 dir="." baseinstalldir="/">
<notes>${releasenotes}</notes>
<dependencies>
- <php minimum_version="5.2.0" />
+ <php minimum_version="5.3.0" />
<pear minimum_version="1.9.0" />
<package name="Date_HumanDiff"
channel="pear.php.net"
- minimum_version="0.1.0"
+ minimum_version="0.4.0"
+ />
+ <package name="HTTP_Request2"
+ channel="pear.php.net"
+ minimum_version="2.1.0"
+ />
+ <package name="OpenID"
+ channel="pear.php.net"
+ minimum_version="0.3.3"
+ />
+ <package name="Pager"
+ channel="pear.php.net"
+ minimum_version="2.4.8"
+ />
+ <package name="PEAR2_Services_Linkback"
+ channel="pear2.php.net"
+ minimum_version="0.2.1"
+ />
+ <package name="Services_Libravatar"
+ channel="pear.php.net"
+ minimum_version="0.2.2"
/>
<package name="VersionControl_Git"
channel="pear.php.net"
minimum_version="0.4.4"
/>
+
<package name="geshi"
- channel="mediawiki.googlecode.com/svn"
+ channel="pear.geshi.org/geshi"
minimum_version="1.0.0"
/>
+ <package name="Markdown"
+ channel="pear.michelf.com"
+ minimum_version="0.0.2"
+ />
+ <package name="MIME_Type_PlainDetect"
+ channel="zustellzentrum.cweiske.de"
+ minimum_version="0.0.2"
+ />
<package name="Twig"
channel="pear.twig-project.org"
minimum_version="1.6.0"
</dependencies>
<!-- map directory (key) to role -->
- <dirroles key="www">www</dirroles>
<dirroles key="data">data</dirroles>
+ <dirroles key="scripts">data</dirroles>
<dirroles key="src">php</dirroles>
+ <dirroles key="www">www</dirroles>
<!-- do not add the following files to the package.
copied from excludes above -->
<ignore>**/.gitignore</ignore>
- <ignore>**/.svn</ignore>
<ignore>build*</ignore>
<ignore>data/config.php</ignore>
<ignore>dist/**</ignore>
</target>
- <target name="release" depends="check,zip,package,deploy-sf"
+ <target name="release" depends="check,zip,pear,deploy-sf"
description="Release the version on sourceforge"
>
<!-- meta-target -->
/home/frs/project/p/ph/phorkie/phorkie/v0.1/phorkie-v0.1.1.zip
https://sourceforge.net/apps/trac/sourceforge/wiki/Release%20files%20for%20download
-->
- <target name="deploy-sf" depends="check,zip"
+ <target name="deploy-sf" depends="check,zip,phar"
description="Upload release to sourceforge"
>
<delete dir="dist/deploy-sf" /><!-- make empty -->
<mkdir dir="dist/deploy-sf" />
<mkdir dir="dist/deploy-sf/v${version-m}" />
<copy file="${distfile}" tofile="dist/deploy-sf/v${version-m}/${zipfile}"/>
+ <copy file="${pharpath}" tofile="dist/deploy-sf/v${version-m}/${pharfile}"/>
<!-- test
<exec command="rsync -av dist/deploy-sf/ /tmp/test/" escape="false" />
-->
</target>
- <target name="check"
+ <target name="preparedirs">
+ <mkdir dir="dist" />
+ </target>
+
+ <target name="check" depends="preparedirs"
description="Check variables"
>
<fail unless="version" message="Version not defined!" />
<fail unless="sfuser" message="Sourceforge username not defined!" />
<fail unless="sfproject" message="Sourceforge project name not defined!" />
<fail unless="sffilepath" message="Sourceforge project file path not defined!" />
-
- <mkdir dir="dist" />
</target>
</project>