Tag Archives: changes

phpUnderControl 0.6.0 released

I am pleased to announce that new version of phpUnderControl is out.

You can install it through its pear channel:

proofek@home:~$ sudo pear channel-discover pear.phpundercontrol.org
Adding Channel "pear.phpundercontrol.org" succeeded
Discovery of channel "pear.phpundercontrol.org" succeeded
proofek@home:~$ sudo pear install --alldeps phpuc/phpUnderControl-0.6.0
downloading phpUnderControl-0.6.0.tgz ...
Starting to download phpUnderControl-0.6.0.tgz (545,857 bytes)
.............................................................................................................done: 545,857 bytes
install ok: channel://pear.phpundercontrol.org/phpUnderControl-0.6.0

or if you already have a previous version simply upgrade:

proofek@home:~$ sudo pear upgrade --alldeps phpuc/phpUnderControl-0.6.0
downloading phpUnderControl-0.6.0.tgz ...
Starting to download phpUnderControl-0.6.0.tgz (545,857 bytes)
.............................................................................................................done: 545,857 bytes
upgrade ok: channel://pear.phpundercontrol.org/phpUnderControl-0.6.0

Release 0.6.0 brings a few new features as well as a few bug fixes.

New Copy/Paste Detector and Changeset tab

Big thanks to hpbuniat for this contribution.
Changeset tab contains details of modifications in the source code since the last successful build. Copy/Paste Detector tab contains report produced by Copy/Paste Detector (CPD) for PHP.

Copy/Paste Detector (CPD) for PHP

PHP-CPD tab

Changeset

Changeset tab

Integrating CPD with phpUnderControl is dead easy. Just install the tool and define another target in your build file. See an example below.

proofek@home:~$ sudo pear channel-discover pear.phpunit.de
proofek@home:~$ sudo pear channel-discover components.ez.no
proofek@home:~$ sudo pear install phpunit/phpcpd
proofek@home:~$ phpcd --version
phpcpd 1.3.1 by Sebastian Bergmann.
<target name="phpcpd" >
    <exec executable="phpcpd" failonerror="false">
        <arg line="--log-pmd ${basedir}/build/logs/pmd-cpd.xml ${basedir}/source/src" />
    </exec>
</target>

With these new features there are also two additional graphs on the metrics tab: Build at Revision Timeline and Duplicated Code

phpUnderControl metrics charts

Metrics tab

More details in PHP-MD and Codesniffer tabs

PHP Mess Detector and Codesniffer tabs got refreshed a little bit and now contain a bit more details.

PHPMD - PHP Mess Detector

PHPMD tab

PHP_Codesniffer

Codesniffer tab

Implemented #665: Display limit for build metrics.

As per Manuel post earlier on, now it is also possible to control maximum number of log entries displayed on the graphs. Simply modify your config file that generates graphs and add –max-number option to it.

<publishers>
    <artifactspublisher dir="projects/${project.name}/build/api" dest="artifacts/${project.name}" subdirectory="api"/>
    <artifactspublisher dir="projects/${project.name}/build/coverage" dest="artifacts/${project.name}" subdirectory="coverage"/>
    <execute command="phpcb --log projects/${project.name}/build/logs --source projects/${project.name}/source/src --output projects/${project.name}/build/php-code-browser"/>
    <artifactspublisher dir="projects/${project.name}/build/php-code-browser" dest="artifacts/${project.name}" subdirectory="php-code-browser"/>
    <execute command="/usr/bin/phpuc graph --max-number 10 logs/${project.name} artifacts/${project.name}"/>
</publishers>

Bug fixes

  • Fixed #771: ¬†Invalid character in CodeSniffer output.
  • Fixed #732: Show revision of SVN/CVS on dashboard. Patch supplied by hpbuniat, through phpunit’s issue tracker.
  • Fixed #1003: Force build button in the /cruisecontrol app doesn’t work.
  • Fixed #1011: Custom ant script now set properly when requested
  • Fixed #1044: callServer should return false. Patch supplied by Mekras in phpunit’s issue tracker.

Wind of changes

I definitely have to plan my actions more carefully. Trying to do too many things at the same doesn’t seem to work. I need a plan. Like 10 years plan. Hmm, maybe not 10 years, communists tried that once (or two) and it didn’t work for them very well. So maybe next year plan? In fact, new year comes, so it’s a quite good opportunity to sort things out. My Missus is out, kids in beds, nice and quite.¬†Let’s think then what I could do next year.

1. Focus

I have to focus on one thing, get it done and move on. There is a few things a need to improve and some priorities needs to be assigned.

2. Separation

My professional life needs separating from the personal one. And it’s clear here – The Family takes priority. The rest comes after.

3. Arrangement

  • Make small steps – but regularly.
  • Make notes – often.
  • Speak to people – always.
  • Constantly improve – learn your lesson.

Quite generic, but sums things up.

Ready… steady… go!

I have refreshed the blog then. Found new theme, more toned! I started to use it wrong, these few random post fits more for a wiki then a blog. Will stop that.

Next, finish what you have started. I will focus on the current task and get it finished by end of next week. This deadline sounds reasonable. Next update – Monday evening then. Remember! Small steps, but regularly.