<?xml version="1.0" encoding="UTF-8"?>
<!-- generator="FeedCreator 1.7.6(BH)" -->
<rss version="2.0">
    <channel xmlns:g="http://base.google.com/ns/1.0">
        <title>Developer forum</title>
        <description></description>
        <link>http://www.midgard-project.org/discussion/developer-forum/</link>
        <lastBuildDate>Sat, 04 Feb 2012 12:14:08 +0000</lastBuildDate>
        <generator>FeedCreator 1.7.6(BH)</generator>
        <item>
            <title>Re: [midgard-dev] Distribute JCR schemas by default</title>
            <link>http://www.midgard-project.org/discussion/developer-forum/read/04cab41e3e4211e1a01b1f4952e852a052a0/</link>
            <description>&lt;p&gt;+1, makes life easier when we want to support NoCR and other interfaces
besides PHPCR.
On Jan 12, 2012 2:24 AM, &quot;Piotr Pokora&quot; &lt;a href=&quot;&amp;#109;&amp;#x61;&amp;#x69;&amp;#108;&amp;#x74;&amp;#x6f;:&amp;#x70;&amp;#105;&amp;#111;&amp;#116;&amp;#x72;&amp;#x65;&amp;#x6b;&amp;#46;&amp;#112;&amp;#111;&amp;#107;&amp;#111;&amp;#x72;&amp;#x61;&amp;#x40;&amp;#x67;&amp;#109;&amp;#97;&amp;#x69;l&amp;#46;&amp;#x63;&amp;#111;&amp;#x6d;&quot;&gt;&amp;#x70;&amp;#105;&amp;#111;&amp;#116;&amp;#x72;&amp;#x65;&amp;#x6b;&amp;#46;&amp;#112;&amp;#111;&amp;#107;&amp;#111;&amp;#x72;&amp;#x61;&amp;#x40;&amp;#x67;&amp;#109;&amp;#97;&amp;#x69;l&amp;#46;&amp;#x63;&amp;#111;&amp;#x6d;&lt;/a&gt; wrote:&lt;/p&gt;

&lt;blockquote&gt;
  &lt;p&gt;Hi!&lt;/p&gt;
  
  &lt;p&gt;I created a ticket for this proposal:
  https://github.com/midgardproject/midgard-core/issues/137&lt;/p&gt;
  
  &lt;p&gt;I think we should include these schemas as default ones.&lt;/p&gt;
  
  &lt;p&gt;Piotras
  
  &lt;hr /&gt;
  
  dev mailing list
  dev@lists.midgard-project.org
  http://lists.midgard-project.org/mailman/listinfo/dev&lt;/p&gt;
&lt;/blockquote&gt;


&lt;hr /&gt;

dev mailing list
dev@lists.midgard-project.org
http://lists.midgard-project.org/mailman/listinfo/dev
</description>
            <author>Henri Bergius</author>
            <pubDate>Fri, 13 Jan 2012 23:55:06 +0000</pubDate>
        </item>
        <item>
            <title>Distribute JCR schemas by default</title>
            <link>http://www.midgard-project.org/discussion/developer-forum/read/02ab5f4e3d0711e1858cc1b627e085598559/</link>
            <description>&lt;p&gt;Hi!&lt;/p&gt;

&lt;p&gt;I created a ticket for this proposal:
https://github.com/midgardproject/midgard-core/issues/137&lt;/p&gt;

&lt;p&gt;I think we should include these schemas as default ones.&lt;/p&gt;

&lt;p&gt;Piotras

&lt;hr /&gt;

dev mailing list
dev@lists.midgard-project.org
http://lists.midgard-project.org/mailman/listinfo/dev&lt;/p&gt;
</description>
            <author>Piotr Pokora</author>
            <pubDate>Thu, 12 Jan 2012 10:20:11 +0000</pubDate>
        </item>
        <item>
            <title>Midgard2 now works on PHP 5.4</title>
            <link>http://www.midgard-project.org/discussion/developer-forum/read/9d0b2eb2313f11e19ab1356fc1f24c6e4c6e/</link>
            <description>&lt;p&gt;Hi,&lt;/p&gt;

&lt;p&gt;Great news! Piotras got PHP 5.4 working with the Midgard2 extension
(in ratatoskr branch). Seems we get quite a nice boost:&lt;/p&gt;

&lt;p&gt;PHPCR-ODM tests on PHP 5.3 and Midgard2:
Memory: 83.50Mb&lt;/p&gt;

&lt;p&gt;PHPCR-ODM tests on PHP 5.4 and Midgard2:
Memory: 61.50Mb&lt;/p&gt;

&lt;p&gt;So about one fourth less memory usage. Not bad :-)&lt;/p&gt;

&lt;p&gt;Note that this also puts us very close to the Jackalope PHPCR provider
(which uses 58.25Mb of memory for the same tests). But with Jackalope
you also have the Jackrabbit Java process running, while Midgard2
keeps everything inside PHP.&lt;/p&gt;

&lt;p&gt;-- 
Henri Bergius
Motorcycle Adventures and Free Software
http://bergie.iki.fi/&lt;/p&gt;

&lt;p&gt;Jabber: henri.bergius@gmail.com
Microblogs: @bergie

&lt;hr /&gt;

dev mailing list
dev@lists.midgard-project.org
http://lists.midgard-project.org/mailman/listinfo/dev&lt;/p&gt;
</description>
            <author>Henri Bergius</author>
            <pubDate>Wed, 28 Dec 2011 10:35:08 +0000</pubDate>
        </item>
        <item>
            <title>Looking plugin into labtech</title>
            <link>http://www.midgard-project.org/discussion/developer-forum/read/df36387a303d11e1a4305fbcfc4b527e527e/</link>
            <description>&lt;p&gt;HI list looking for someone to make a plugin to labtech software RMM.&lt;/p&gt;

&lt;p&gt;http://www.labtechsoftware.com&lt;/p&gt;

&lt;p&gt;http://www.labtechsoftware.com/component/k2/itemlist/category/339-4z-reference.html&lt;/p&gt;


&lt;hr /&gt;

dev mailing list
dev@lists.midgard-project.org
http://lists.midgard-project.org/mailman/listinfo/dev
</description>
            <author>Marko Sykes</author>
            <pubDate>Tue, 27 Dec 2011 03:50:09 +0000</pubDate>
        </item>
        <item>
            <title>Midgard2 PHPCR provider is now 1.0</title>
            <link>http://www.midgard-project.org/discussion/developer-forum/read/23596a822d4a11e199245759e6664a8b4a8b/</link>
            <description>&lt;p&gt;Hi,&lt;/p&gt;

&lt;p&gt;I'm happy to announce that we were able to release the first stable
version of the Midgard2 PHPCR provider yesterday:
http://packagist.org/packages/midgard/phpcr&lt;/p&gt;

&lt;p&gt;Simply put, PHPCR is the future of Midgard's PHP API. Instead of
having our own repository APIs, we follow the well-documented and
tested PHP Content Repository specification. This allows much better
compatibility with other projects, and for example the possibility to
choose whether to store contents in Midgard or Apache Jackrabbit on
per-deployment basis. This obviously doesn't mean that the current
Midgard2 API is going away, but just that there is something better
and more compatible available on top of that.&lt;/p&gt;

&lt;p&gt;PHPCR provides a nice set of capabilities that are either similar to,
or surpass the traditional Midgard features:
* Your content model is constructed out of a tree of Nodes that can
contain other Nodes or Properties
* Properties can be of many different types, including the typical
strings and floats, but also binaries (similar to our blobs) and dates
* Properties can be multivalued (think of multiple images in same
property, or a person having multiple emails)
* Queries can be either constructed with Query Object Model or SQL2
(http://docs.jboss.org/modeshape/latest/manuals/reference/html/jcr-query-and-search.html#jcr-sql2-query-language)
* Queries support tree constraints (ISDESCENDANTNODE, ISCHILDNODE) and joins
* Content can be exported and imported via a standard XML format
* There is a comprehensive Node Type system that allows you to define
your content model. The full definitions can be read and introspected
via PHP
* Nodes also support mixins, allowing you to add per-object metadata
* There are also the unstructured nodes (nt:unstructured) for cases
where you don't want to have constraints on what to store and how&lt;/p&gt;

&lt;p&gt;On top of PHPCR, there is also a Doctrine ODM that the Midgard2
provider also supports. That gives you more capabilities, like:
* More traditional object access with getters and setters to the
repository (https://github.com/doctrine/phpcr-odm#readme)
* Multilingual content storage
(http://blog.liip.ch/archive/2011/12/18/multilanguage-support-for-doctrine-phpcr-odm.html)&lt;/p&gt;

&lt;p&gt;More about PHPCR: http://phpcr.github.com/&lt;/p&gt;

&lt;p&gt;Some code examples:
https://github.com/bergie/phpcr-midgard2/tree/master/examples&lt;/p&gt;

&lt;p&gt;You can see Midgard's test status for both SQLite and MySQL storage
back-ends in our Continuous Integration environment:
http://travis-ci.org/#!/bergie/phpcr-midgard2&lt;/p&gt;

&lt;p&gt;Once you have Midgard2 and our PHP extension available, installation
is easy. Add a composer.json file into the root folder of your
project:
&quot;require&quot;: {
    &quot;midgard/phpcr&quot;: &quot;&gt;=1.0&quot;
}&lt;/p&gt;

&lt;p&gt;Install with Composer:
$ wget http://getcomposer.org/composer.phar
$ php composer.phar install&lt;/p&gt;

&lt;p&gt;Copy MgdSchemas:
$ sudo cp vendor/midgard/phpcr/data/share/schema/* /usr/share/midgard2/schema/
$ sudo cp vendor/midgard/phpcr/data/share/views/* /usr/share/midgard2/views/&lt;/p&gt;

&lt;p&gt;...and then just start using the repository in your application. PHPCR
can obviously be used side-by-side with traditional Midgard2 or other
PHP code.&lt;/p&gt;

&lt;p&gt;What will happen next:
* Support for PHP 5.4 and Postgres (needs work on Midgard2 level)
* Performance optimization
* Features work, including versioning
* More tools for PHPCR. Think of Asgard that would allow you to work
with any repositories!
* PHPCR support built-in for MidCOM and MVC?&lt;/p&gt;

&lt;p&gt;/Bergie&lt;/p&gt;

&lt;p&gt;PS. For those interested in PHPCR, there will be a meetup in Paris in January:
http://lanyrd.com/2012/phpcr-meetup-paris/&lt;/p&gt;

&lt;p&gt;-- 
Henri Bergius
Motorcycle Adventures and Free Software
http://bergie.iki.fi/&lt;/p&gt;

&lt;p&gt;Jabber: henri.bergius@gmail.com
Microblogs: @bergie

&lt;hr /&gt;

dev mailing list
dev@lists.midgard-project.org
http://lists.midgard-project.org/mailman/listinfo/dev&lt;/p&gt;
</description>
            <author>Henri Bergius</author>
            <pubDate>Fri, 23 Dec 2011 09:40:24 +0000</pubDate>
        </item>
        <item>
            <title>tip of the day: DM2 schemas vs $this</title>
            <link>http://www.midgard-project.org/discussion/developer-forum/read/e8ecac521c1811e18c8c9db17b39b207b207/</link>
            <description>&lt;p&gt;See commit http://trac.midgard-project.org/changeset/27082&lt;/p&gt;

&lt;p&gt;tl/dr: don't use $this directly, it will break extending &lt;em&gt;and&lt;/em&gt;
instantiating the schema from elsewhere.&lt;/p&gt;

&lt;p&gt;/Rambo

&lt;hr /&gt;

dev mailing list
dev@lists.midgard-project.org
http://lists.midgard-project.org/mailman/listinfo/dev&lt;/p&gt;
</description>
            <author>Eero af Heurlin</author>
            <pubDate>Thu, 01 Dec 2011 12:35:11 +0000</pubDate>
        </item>
        <item>
            <title>Re: [midgard-dev] Continuous Integration is here</title>
            <link>http://www.midgard-project.org/discussion/developer-forum/read/ac93c316111a11e19ea239d3fda233983398/</link>
            <description>&lt;p&gt;Hello,&lt;/p&gt;

&lt;p&gt;On 17/11/11 11:48, Henri Bergius wrote:
&lt;blockquote&gt;
  &lt;p&gt;Hi,&lt;/p&gt;
  
  &lt;p&gt;In the last couple of days, I've deployed Continuous Integration for
  various Midgard libraries. We're using the hosted Travis service for
  this:
    http://travis-ci.org/&lt;/p&gt;
&lt;/blockquote&gt;&lt;/p&gt;

&lt;p&gt;Just tested it with midgardmvc_core and the help of Bergie. Brilliant.&lt;/p&gt;

&lt;p&gt;I am not a big test writer, but I will dedicate time for developing test
cases for my components. It will surely save time in the long run. The
integration with github is just great.. Spamming #nemein is.. well.. we
can think about it :)&lt;/p&gt;

&lt;p&gt;&lt;snip&gt;&lt;/p&gt;

&lt;blockquote&gt;
  &lt;p&gt;I would like to propose the following:&lt;/p&gt;
  
  &lt;ul&gt;
  &lt;li&gt;We integrate as many of our components with Travis as possible. This
  means they need to be installable and testable on their own&lt;/li&gt;
  &lt;li&gt;The development workflow should change to
  
  &lt;ul&gt;
  &lt;li&gt;Make the necessary changes in your own fork of a component and
  push there, not to the 'midgardproject' blessed account&lt;/li&gt;
  &lt;li&gt;See what Travis says of your changes&lt;/li&gt;
  &lt;li&gt;If a build breaks, the absolute first priority is to fix it. Don't
  leave red flags!!&lt;/li&gt;
  &lt;li&gt;When it is green, it should be OK to push to 'midgardproject'&lt;/li&gt;
  &lt;li&gt;Additional manual testing may be necessary before a release, at
  least with our current test coverage&lt;/li&gt;
  &lt;/ul&gt;&lt;/li&gt;
  &lt;/ul&gt;
  
  &lt;p&gt;Will work for me. I admit that I never ran the php unit tests on
  midgardmvc_core before my pull requests in the past. With this process I
  will not be able to skip those tests at all. I hope this will speed
  getting my changes to upstream ;)&lt;/p&gt;
  
  &lt;p&gt;This all should make the Midgard development process smoother, and
  ensure problems don't slip by accident into releases. Ultimately it
  should allow us to have a more tight release cycle as maintainers like
  Piotras have a better picture of the current state and quality of
  various components.&lt;/p&gt;
  
  &lt;p&gt;But for this to work, we really need to ensure our components have
  adequate tests, and that if builds break they get fixed as soon as
  possible.&lt;/p&gt;
  
  &lt;p&gt;Let's dedicate an upcoming release for tests. Maybe that will motivate
  us enough to write more tests ;)&lt;/p&gt;
  
  &lt;p&gt;/Henri&lt;/p&gt;
  
  &lt;p&gt;-ferenc
  
  &lt;hr /&gt;
  
  dev mailing list
  dev@lists.midgard-project.org
  http://lists.midgard-project.org/mailman/listinfo/dev&lt;/p&gt;
&lt;/blockquote&gt;
</description>
            <author>Ferenc Szekely</author>
            <pubDate>Thu, 17 Nov 2011 12:50:06 +0000</pubDate>
        </item>
        <item>
            <title>Continuous Integration is here</title>
            <link>http://www.midgard-project.org/discussion/developer-forum/read/3d334234110211e19c87ed93dd2b86de86de/</link>
            <description>&lt;p&gt;Hi,&lt;/p&gt;

&lt;p&gt;In the last couple of days, I've deployed Continuous Integration for
various Midgard libraries. We're using the hosted Travis service for
this:
  http://travis-ci.org/
Some CI basics:
  http://en.wikipedia.org/wiki/Continuous_integration&lt;/p&gt;

&lt;p&gt;Travis supports connecting your personal GitHub repositories there,
and configuring the continuous integration with two scripts: an
installation script, and a test script. Then it gets notified every
time you push. Then it builds your project and runs the tests. If the
test script returns with code 0, the build is OK, if not, then it
failed. Travis will send emails to the committers and notify on the
&lt;h1&gt;midgard IRC channel.&lt;/h1&gt;&lt;/p&gt;

&lt;p&gt;Some setup examples:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;midgardmvc_core

&lt;ul&gt;
&lt;li&gt;config: https://github.com/bergie/midgardmvc_core/blob/master/.travis.yml&lt;/li&gt;
&lt;li&gt;install with Midgard:
https://github.com/bergie/midgardmvc_core/blob/master/tests/travis_midgard.sh&lt;/li&gt;
&lt;li&gt;install without Midgard:
https://github.com/bergie/midgardmvc_core/blob/master/tests/travis_nomidgard.sh&lt;/li&gt;
&lt;/ul&gt;&lt;/li&gt;
&lt;li&gt;midgard-php5

&lt;ul&gt;
&lt;li&gt;config: https://github.com/bergie/midgard-php5/blob/ratatoskr/.travis.yml&lt;/li&gt;
&lt;li&gt;install: https://github.com/bergie/midgard-php5/blob/ratatoskr/.travis/install.sh&lt;/li&gt;
&lt;li&gt;test: https://github.com/bergie/midgard-php5/blob/ratatoskr/.travis/test.sh&lt;/li&gt;
&lt;/ul&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The Travis worker is essentially a clean Ubuntu virtual machine set up
just for that test instance. You have root, so quite a lot is possible
as part of the setup. Some notes on the PHP environment:
http://about.travis-ci.org/docs/user/languages/php/&lt;/p&gt;

&lt;p&gt;I would like to propose the following:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;We integrate as many of our components with Travis as possible. This
means they need to be installable and testable on their own&lt;/li&gt;
&lt;li&gt;The development workflow should change to

&lt;ul&gt;
&lt;li&gt;Make the necessary changes in your own fork of a component and
push there, not to the 'midgardproject' blessed account&lt;/li&gt;
&lt;li&gt;See what Travis says of your changes&lt;/li&gt;
&lt;li&gt;If a build breaks, the absolute first priority is to fix it. Don't
leave red flags!!&lt;/li&gt;
&lt;li&gt;When it is green, it should be OK to push to 'midgardproject'&lt;/li&gt;
&lt;li&gt;Additional manual testing may be necessary before a release, at
least with our current test coverage&lt;/li&gt;
&lt;/ul&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;This all should make the Midgard development process smoother, and
ensure problems don't slip by accident into releases. Ultimately it
should allow us to have a more tight release cycle as maintainers like
Piotras have a better picture of the current state and quality of
various components.&lt;/p&gt;

&lt;p&gt;But for this to work, we really need to ensure our components have
adequate tests, and that if builds break they get fixed as soon as
possible.&lt;/p&gt;

&lt;p&gt;A quick example of CI in practice. I had a pull request from Ferenc.
Instead of just merging it to 'midgardproject', I merged it to my
private repository and then pushed. Travis sent me an email saying
that the build broke:
http://travis-ci.org/bergie/midgardmvc_core/builds/315937
I checked the situation and noticed that this was because a test was
hardcoded for a particular jQuery version. I fixed the test to be
version number agnostic, and pushed again. Now the build succeeded:
http://travis-ci.org/bergie/midgardmvc_core/builds/315952
This gave me the confidence to push the changes to 'midgardproject':
https://github.com/midgardproject/midgardmvc_core/pull/64&lt;/p&gt;

&lt;p&gt;What do you guys think?&lt;/p&gt;

&lt;p&gt;/Henri&lt;/p&gt;

&lt;p&gt;-- 
Henri Bergius
Motorcycle Adventures and Free Software
http://bergie.iki.fi/&lt;/p&gt;

&lt;p&gt;Jabber: henri.bergius@gmail.com
Microblogs: @bergie

&lt;hr /&gt;

dev mailing list
dev@lists.midgard-project.org
http://lists.midgard-project.org/mailman/listinfo/dev&lt;/p&gt;
</description>
            <author>Henri Bergius</author>
            <pubDate>Thu, 17 Nov 2011 09:55:11 +0000</pubDate>
        </item>
        <item>
            <title>Re: [midgard-dev] Community analysis of Midgard</title>
            <link>http://www.midgard-project.org/discussion/developer-forum/read/43db2eae06cf11e1ae768fc3f9c590609060/</link>
            <description>&lt;p&gt;Hi!&lt;/p&gt;

&lt;blockquote&gt;
  &lt;p&gt;The new Coral project that aims to produce community analytics of
  various free software projects just chose Midgard as one of their
  &quot;reference projects&quot;:&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Cool! :)&lt;/p&gt;

&lt;p&gt;Guys! Let's keep the good work!&lt;/p&gt;

&lt;p&gt;Piotras

&lt;hr /&gt;

dev mailing list
dev@lists.midgard-project.org
http://lists.midgard-project.org/mailman/listinfo/dev&lt;/p&gt;
</description>
            <author>Piotr Pokora</author>
            <pubDate>Fri, 04 Nov 2011 10:25:06 +0000</pubDate>
        </item>
        <item>
            <title>Community analysis of Midgard</title>
            <link>http://www.midgard-project.org/discussion/developer-forum/read/99a8d35c06c711e195c1814a58c72a2e2a2e/</link>
            <description>&lt;p&gt;Hi,&lt;/p&gt;

&lt;p&gt;The new Coral project that aims to produce community analytics of
various free software projects just chose Midgard as one of their
&quot;reference projects&quot;:
https://twitter.com/#!/kyyberi/status/132384452826497024&lt;/p&gt;

&lt;p&gt;More about Coral:
http://www.open-coral.org:1480/&lt;/p&gt;

&lt;p&gt;-- 
Henri Bergius
Motorcycle Adventures and Free Software
http://bergie.iki.fi/&lt;/p&gt;

&lt;p&gt;Jabber: henri.bergius@gmail.com
Microblogs: @bergie

&lt;hr /&gt;

dev mailing list
dev@lists.midgard-project.org
http://lists.midgard-project.org/mailman/listinfo/dev&lt;/p&gt;
</description>
            <author>Henri Bergius</author>
            <pubDate>Fri, 04 Nov 2011 09:30:14 +0000</pubDate>
        </item>
    </channel>
</rss>

