<?xml version="1.0"?>
<rss version="2.0">
  <channel>
    <title>PHPDeveloper.org</title>
    <link>http://www.phpdeveloper.org</link>
    <description>Up-to-the Minute PHP News, views and community</description>
    <language>en-us</language>
    <pubDate>Tue, 22 May 2012 13:39:14 -0500</pubDate>
    <ttl>30</ttl>
    <item>
      <title><![CDATA[Stefan Koopmanschap's Blog: Using git-svn with Symfony2's deps installer]]></title>
      <guid>http://www.phpdeveloper.org/news/17768</guid>
      <link>http://www.phpdeveloper.org/news/17768</link>
      <description><![CDATA[<p>
In <a href="http://www.leftontheweb.com/message/Using_gitsvn_with_Symfony2s_deps_installer">this latest post</a> to his blog <i>Stefan Koopmanschap</i> shares a quick tip about using the git-svn tool with the dependency installer in a Symfony2-based application.
</p>
<blockquote>
I work a lot with Symfony2's deps file for installing 3rd party bundles into my project (yeah I know, I should be using Composer, right?). This works really well when working with pure Git. However, when you're not using Git on it's own but instead use git-svn, you may run into some issues when issuing git svn dcommit,
</blockquote>
<p>
One issue relates to a "Failed to read object" error that could come up during the push. His solution involves a few steps (manual ones) to prepare those bundle directories and make it easier to push the rest of your changes. He also includes a few links to other resources that he found around the same topic.
</p>]]></description>
      <pubDate>Tue, 03 Apr 2012 10:52:52 -0500</pubDate>
    </item>
    <item>
      <title><![CDATA[Alessandro Nadalin's Blog: Managing PHP dependencies with composer]]></title>
      <guid>http://www.phpdeveloper.org/news/17474</guid>
      <link>http://www.phpdeveloper.org/news/17474</link>
      <description><![CDATA[<p>
<i>Alessandro Nadalin</i> has a new post to his blog looking at the <a href="https://github.com/composer/composer">Composer</a> project and using it to manage packages and dependencies in PHP applications.
</p>
<blockquote>
Managing dependencies between pieces of software, in PHP, hasn't always been a relief: we had <a href="http://pear.php.net">PEAR</a> and <a href="http://pecl.php.net">PECL</a> with their workflows and problems while, in other ecosystems, the solution to this problem has been solved in better ways, like NodeJS's <a href="http://npmjs.org/">NPM</a>.
</blockquote>
<p>
He takes a first look at the tool, describing how to get it set up, create a sample configuration (describing each section inside it) and an example of the tool's output. He also briefly touches on the <a href="http://packagist.org/">Packagist</a> website/repository and links to the instructions on how to <a href="http://packagist.org/packages/submit">create your own</a>.
</p>]]></description>
      <pubDate>Tue, 31 Jan 2012 13:11:09 -0600</pubDate>
    </item>
    <item>
      <title><![CDATA[Matthew Weier O'Phinney's Blog: Why PHP Namespaces Matter]]></title>
      <guid>http://www.phpdeveloper.org/news/15861</guid>
      <link>http://www.phpdeveloper.org/news/15861</link>
      <description><![CDATA[<p>
<i>Matthew Weier O'Phinney</i> has a new post today talking about <a href="http://weierophinney.net/matthew/archives/254-Why-PHP-Namespaces-Matter.html">why namespaces in PHP matter</a> and why he thinks they're a valuable contribution to the language.
</p>
<blockquote>
You've heard about PHP namespaces by now. Most likely, you've heard about -- and likely participated in -- the <a href="http://en.wikipedia.org/wiki/Bikeshedding">bikeshedding</a> surrounding the selection of the namespace separator. Regardless of your thoughts on the namespace separator, or how namespaces may or may not work in other languages, I submit to you several reasons for why I think namespaces in PHP are a positive addition to the language.
</blockquote>
<p>
He breaks down his reasons into four different categories - the code organization benefits that come with namespace "containers", simplified interface structure, improved readability (no more huge class names) and a simpler method for identifying dependencies
</p>]]></description>
      <pubDate>Fri, 04 Feb 2011 13:23:22 -0600</pubDate>
    </item>
    <item>
      <title><![CDATA[Sebastian Bergmann's Blog: PHPUnit 3.4.0 (Release)]]></title>
      <guid>http://www.phpdeveloper.org/news/13241</guid>
      <link>http://www.phpdeveloper.org/news/13241</link>
      <description><![CDATA[<p>
<i>Sebastian Bergmann</i> <a href="http://sebastian-bergmann.de/archives/873-PHPUnit-3.4.0.html">has announced</a> the release of the latest version of the popular PHP unit testing software - <a href="http://phpunit.de">PHPUnit</a>.
</p>
<blockquote>
Among the features introduced in this new version, the most notable are the support for <a href="http://sebastian-bergmann.de/archives/826-Test-Dependencies-in-PHPUnit-3.4.html">test dependencies</a> and <a href="http://sebastian-bergmann.de/archives/848-Fixture-Reuse-in-PHPUnit-3.4.html">fixture reuse</a> as well as the possibility to run tests in separate PHP processes for increased test isolation. Please have a look at the <a href="http://www.phpunit.de/wiki/ChangeLog34">ChangeLog</a> for a complete list of changes.
</blockquote>
<p>
As a teaser, he also mentions the work being done on the <a href="http://github.com/sebastianbergmann/php-code-coverage">code coverage features</a> that will be included in the next release.
</p>]]></description>
      <pubDate>Thu, 17 Sep 2009 11:32:36 -0500</pubDate>
    </item>
    <item>
      <title><![CDATA[Evert Pot's Blog: Dangers of mutual dependencies]]></title>
      <guid>http://www.phpdeveloper.org/news/12084</guid>
      <link>http://www.phpdeveloper.org/news/12084</link>
      <description><![CDATA[<p>
In a <a href="http://www.rooftopsolutions.nl/article/228">recent post</a> to his blog <i>Evert Pot</i> warns against some of the issues that mutual dependencies in your applications.
</p>
<blockquote>
Much like most people, I try work out my class dependencies through a top-down 'waterfall'-ish approach. By attempting this, I think allows me to keep the structure very clear and understandable. [...] I try to apply the same model to instantiated objects and packages (groups of classes). When an object encapsulates another object, I attempt to make sure the sub-object object is not aware of the parent. When I design packages, I attempt to make sure 2 packages don't require 'each other'.
</blockquote>
<p>
He gives an example of where this could cause problems - a Database logger that has three types of logging included: file, syslog and database. Obviously the last of the three requires the Database class so they must always be used/included together.
</p>
<blockquote>
As a bonus a database-error could occur while logging, resulting in an endless loop (or segmentation fault if you're using PHP). [...] However, these types of situations are sometimes simply unavoidable (that's why we have include_once). When they are needed, they should be implemented with care and consideration.
</blockquote>]]></description>
      <pubDate>Fri, 06 Mar 2009 13:42:40 -0600</pubDate>
    </item>
    <item>
      <title><![CDATA[Sebastian Bergmann's Blog: Test Dependencies in PHPUnit 3.4]]></title>
      <guid>http://www.phpdeveloper.org/news/11409</guid>
      <link>http://www.phpdeveloper.org/news/11409</link>
      <description><![CDATA[<p>
<i>Sebastian Bergmann</i> talks about a new bit of functionality he's put into the 3.4 release of <a href="http://www.phpunit.de">PHPUnit</a> (the popular unit testing tool for PHP) based on a suggestion from a paper he'd read:
</p>
<blockquote>
Back in July, I came across an academic paper (more <a href="http://delicious.com/sebastian_bergmann/academic_paper+testing">academic papers on testing</a> that I read recently) titled "<a href="http://www.iam.unibe.ch/~scg/Archive/Papers/Kuhn08aJExample.pdf">JExample: Exploiting Dependencies Between Tests to Improve Defect Localization</a>". [...] For the upcoming <a href="http://www.phpunit.de/">PHPUnit 3.4</a> I have implemented support for the idea expressed in the paper mentioned above.
</blockquote>
<p>
The feature is a system that helps localize problems at the source, stripping away all of the cascading issues it might have tripped off, causing other tests to fail. This new feature (as illustrated by his code example using a DependencyFailureTest class) makes it simple to fail a test immediately whenever the scripts needs to via a fail() method. Check out <A href="http://sebastian-bergmann.de/archives/826-Test-Dependencies-in-PHPUnit-3.4.html">the full post</a> for the rest of the code and some further explanation on how it works.
</p>]]></description>
      <pubDate>Fri, 14 Nov 2008 10:25:20 -0600</pubDate>
    </item>
    <item>
      <title><![CDATA[Jani Hartikainen's Blog: Improved Zend Framework package maker]]></title>
      <guid>http://www.phpdeveloper.org/news/11407</guid>
      <link>http://www.phpdeveloper.org/news/11407</link>
      <description><![CDATA[<p>
<i>Jani Hartikainen</i> has made a few updates to his <a href="http://codeutopia.net/blog/2008/10/06/zend-framework-components-as-separate-zips-from-the-main-distro-sure/">packageizer</a> script for the Zend Framework to improve its interface.
</p>
<blockquote>
Now, based on some feedback from users, I've improved the user interface of the tool: You can now select multiple items for inclusion in the package, and I've made it possible to get the packages in .phar format. It also has initial support for different libraries, ie. Zend Framework 1.6 and Zend Framework SVN trunk, but currently only 1.6 stable is available.
</blockquote>
<p>
<a href="http://epic.codeutopia.net/pack/">The tool</a> allows you to select just the packages out of the Zend Framework that you might want to work with and packages them up, along with their dependencies, into a simple, portable file that can be used anywhere the Framework normally could.
</p>]]></description>
      <pubDate>Fri, 14 Nov 2008 08:49:51 -0600</pubDate>
    </item>
    <item>
      <title><![CDATA[Jani Hartikainen's Blog: Zend Framework components as separate zips from the main distro? Sure!]]></title>
      <guid>http://www.phpdeveloper.org/news/11158</guid>
      <link>http://www.phpdeveloper.org/news/11158</link>
      <description><![CDATA[<p>
<i>Jani Hartikainen</i> has put together a handy script for those out there that like what the Zend Framework is all about but don't really need the whole thing to get the job done. If that's you, <a href="http://codeutopia.net/pack/">this script</a> might be just what you need.
</p>
<blockquote>
Did you ever want to use just a single component from Zend Framework, but couldn't figure out which files you needed? Well, here's a solution: <a href="http://codeutopia.net/pack/">Zend Framework packageizer script</a>! Just pick the class you want, and you'll get it and all its dependencies in a nice zip file for you to consume.
</blockquote>
<p>
The packager uses the <a href="http://fi.php.net/tokenizer">tokenizer</a> functionality PHP offers natively to look through the files for the package you're after and finds all of the files that might need to be included and pulls them right along into the zip file.
</p>]]></description>
      <pubDate>Tue, 07 Oct 2008 09:39:44 -0500</pubDate>
    </item>
    <item>
      <title><![CDATA[Helgi's Blog: PEAR installer updating its PHP deps]]></title>
      <guid>http://www.phpdeveloper.org/news/10814</guid>
      <link>http://www.phpdeveloper.org/news/10814</link>
      <description><![CDATA[<p>
<i>Helgi</i> has <a href="http://www.helgi.ws/index.php?post/2008/08/11/PEAR-installer-updating-its-PHP-deps">posted about</a> an update to the next alpha release of PEAR to remove support for certain versions of PHP:
</p>
<blockquote>
For the next alpha release of PEAR that will happen in 2 - 4 weeks we'll have a min dep of PHP 4.4 and 5.1.6, so basically excluding 5.0.0 - 5.1.5 Now why am I going to do that?
</blockquote>
<p>
This pushes more people up from the PHP 4.3.x series (to the 4.4.x that was the last PHP4 release) and up to a more recent PHP5 version for the future. Eventually, PHP4 support will be dropped all together, but for now there's a bit of a hold out.
</p>]]></description>
      <pubDate>Tue, 12 Aug 2008 12:04:26 -0500</pubDate>
    </item>
    <item>
      <title><![CDATA[SitePoint PHP Blog: Dealing with Dependencies]]></title>
      <guid>http://www.phpdeveloper.org/news/9561</guid>
      <link>http://www.phpdeveloper.org/news/9561</link>
      <description><![CDATA[<p>
On the SitePoint PHP blog today, <i>Troels Knak-Nielsen</i> has <a href="http://www.sitepoint.com/blogs/2008/02/04/dealing-with-dependencies/">written up an article</a> that talks about dependencies in your applications - those little interconnections your code relies on to do more with less.
</p>
<blockquote>
In lack of better words, I'll call this compositional programming style. It's a style which is usually more prevalent with experienced programmers. [...] There is, however, a dark side to composition - dependencies.
</blockquote>
<p>
He <a href="http://www.sitepoint.com/blogs/2008/02/04/dealing-with-dependencies/">starts</a> with a definition to bring everyone up to a level field then moves on to how their used (through a "global symbol" or directly passed in) and how they can "leak" if you're not careful. 
</p>
<p>
To help protect you and your code from any kind of damage down the line, <i>Troels</i> suggests making a container to keep objects where they need to be. He even includes an example with namespace support to make things even easier down the road.
</p>]]></description>
      <pubDate>Mon, 04 Feb 2008 12:09:00 -0600</pubDate>
    </item>
  </channel>
</rss>

