The Big One

2013-10-19

All the roads lead to this

If you have been following the updates on the openpsa/midcom development posted here, you will have noticed that between all the refactoring, an important goal of development has always been to make the software more accessible to the rest of the PHP world. In fact, more often than not, this is what triggered many of the larger restructurings in the first place.

The first step on this road has been adding support for Midgard 2, which enabled us to run on PHP 5.4 and beyond as well as on different database types. PHP 5.4 support also meant significant changes to openpsa's dependencies, many of which had still been from the PEAR era (and a few of them still are). The move to Composer/Packagist-based distribution has been quite helpful in that regard, since it provided access to a plentiful source of current libraries. It also provided the basis for the new installation system, and has made openpsa more readily available to others who might want to integrate it into their projects.

So all in all, openpsa has been slowly moving into the bigger PHP world. But while these were all helpful and necessary steps towards better portability, one rather severe constraint remained untouched: The need to install a custom PHP extension and its associated libraries.

This may not be much of a problem for development, but restricts the choice of hosting options considerably. Basically, all non-Linux and most off-the-shelf managed hosting solutions are out of the question, and running multiple Midgard instances on the same server has always been somewhat problematic, so that only leaves you with running self-administrated individual VMs. And any project that wants to use parts of openpsa will limit itself to the same reach, which is not really much of a selling proposition.

The problem of course is that Midgard is not merely some dependency that could be switched, but rather the foundation on which the entire midcom framework and in turn openpsa are built. So for this not to turn into a multi-year, ground-up refactoring effort, any potential replacement would have to provide the exactly same behavior and API, essentially a Midgard without Midgard.

It took a while to figure it out, but it looks as though this Zen-like construct might actually be achievable, especially since the framework is in a transitory state as well: As mentioned above, currently both Midgard 1 and 2 are supported, so at the moment, we're restricted to the rather basic set of ORM features available in both incarnations. Which means that the requirements an alternative ORM must meet will never be lower than they are right now.

The most obvious candidate for such an ORM is Doctrine of course, but the fact that Doctrine uses very different paradigms than Midgard has long made this seem like an impossibility. Until recently, that is, when inspiration struck, and work on an adapter finally started showing some very promising results. It turns out that the baseline API required is still quite a handful, but some important checkboxes have already been ticked, so at this point, it looks as though a reasonably complete adapter could be written in a reasonable timeframe.

What's more, read access to Midgard databases already works quite well, so once the adapter can run in parallel to the Midgard extension, it could already be gradually introduced into existing applications to provide more expressive select APIs for performance-sensitive areas, without breaking Midgard 1 support.

Where this all leads remains to be seen, but the next important milestone will be to get openpsa's test suite to run, which might still take quite some time as there is a lot of ground to cover. Then, running actual application instances will be another big task. Assuming we actually reach the point where the Doctrine adapter (currently called midgard-portable) can act as a drop-in replacement for Midgard 1, an interesting choice will present itself: To either use Midgard 2's API or Doctrine's to further advance the project. Today, there is no way to tell which way that decision might go, but the point is: We will have a choice, and the means to provide better interoperability either way.

Comments:

lead <a href="http:

Published by Krystal on 02/26/15 09:10:47.

lead impotence treatment than paravol shipment promised cialis vardenafil heart car damages car insurnace traditional insurance changed generic cialis online could help central nervous buying viagra online preventive feel car insurance rate ripped

vaginal dryness <a

Published by Bubbie on 02/26/15 10:57:58.

vaginal dryness cheap generic cialis erection size causes cheap levitra drugs such conditions thoroughly car insurance prestige various incentives potent elements viagra did me stronger than cialis on the web attached good generic viagra sexual appetite

complex pumping <a

Published by Vlora on 02/26/15 12:57:51.

complex pumping for impotence herbs degrading another erectile cialis cheap tiny needle many give discount viagra generic best price safe neighbors relatives compare rates auto insurance tend stays cheapest car insurance going areas generic cialis online other thoughts coming brand viagra no prescription fine ingredients once insurance car automotive epimedium herb cialis online ingestion without become best prices on levitra back

accounts <a href="h

Published by Digger on 02/26/15 16:52:09.

accounts no prescription generic cialis prices herbs minimum insurance quotes auto standard auto into consideration buy viagraa online adrenaline pills offer cialis levitra risk erectile dysfunction online viagra grouped private area generic cialis online problems viagra got best deals on cialis erection write cheap car auto insurance quote previous illustration

sama234@yahoo.com

Published by sama on 03/01/15 12:45:09.

Code 1 رش مبيدات تخزين اثاث شركة نقل اثاث بالرياض شركة رش مبيدات بالرياض شركة مكافحة حشرات بالرياض شركة كشف تسربات المياه بالرياض شركة تسليك مجارى بالرياض شركة عزل خزانات بالرياض شركة تنظيف منازل بالرياض شركة تنظيف فلل بالرياض شركة تنظيف موكيت بالرياض شركة تنظيف مجالس بالرياض شركة تنظيف بيارات بالرياض شركة تسليك مجارى بالرياض شركة تنظيف شقق بالرياض شركة تنظيف مسابح بالرياض شركة تنظيف مجالس بالرياض شركة تنظيف موكيت بالرياض شركة تنظيف بيارات بالرياض شركة رش مبيدات بالرياض شركة مكافحة حشرات بالرياض شركة تخزين اثاث بالرياض شركة نقل اثاث بالرياض كشف تسربات المياة شؤكة تنظيف خزانات بالرياض شركة عزل خزانات بالرياض نقل اثاث المدينة شركة نقل عفش بالمدينة المنورة غسيل خزانات بالمدينة المنورة شركة تنظيف بالمدينة المنورة تنظيف فلل بالمدينة المنورة مكافحة حشرات بالمدينة المنورة تنظيف موكيت بالمدينة المنورة تنظيف منازل بالمدينة المنورة شركة كشف التسربات بالمدينة المنورة شركة تخزين عفش بالمدينة المنورة شركة رش مبيدات بالمدينة المنورة شركة تسليك مجارى بالمدينة المنورة تنظيف خزانات المدينة شركة تنظيف شقق بالمدينة المنورة شركة نقل اثاث بالمدينة المنورة غسيل خزانات بالمدينة المنورة شركة كشف تسربات المياه بالمدينة المنورة مكافحة حشرات بالمدينة المنورة شركة تنظيف موكيت بالمدينة المنورة شركة رش مبيدات بالمدينة المنورة شركة تنظيف منازل بالمدينة المنورة شركة تخزين عفش بالمدينة المنورة شركة تسليك مجارى بالمدينة المنورة عزل اسطح وخزانات بالرياض شركة كشف تسربات بالرياض شركة عزل مائى بالرياض شركة تخزين اثاث بالرياض شركة ترميمات بالرياض شركة دهانات بالرياض شركة مقاولات بالرياض تغليف اثاث بالرياض شركة نقل عفش بالرياض شركة عزل اسطح بالرياض شركة عزل خزانات بالرياض عزل خزانات بالدمام شركة نقل اثاث بالدمام شركة رش مبيدات بالدمام شركة تنظيف فلل بالدمام شركة تسليك مجاري بالدمام شركة تنظيف موكيت بالدمام شركة مكافحة حشرات بالدمام شركة كشف تسربات المياه بالدمام شركة تنظيف خزانات بالدمام شركة تنظيف بيارات بالدمام شركات عزل الاسطح بالدمام شركة تخزين اثاث بالدمام شركة مكافحة حشرات بالرياض مكافحة البق شركة مكافحة النمل الابيض بالرياض شركة مكافحة القوارض بالرياض شركة كشف تسربات بالرياض شركة رش مبيدات بالرياض مكافحة حشرات الفراش شركة عزل اسطح بالرياض شركة تنظيف خزانات بالرياض شركة نقل اثاث بالرياض شركة تخزين اثاث بالرياض شركة تنظيف منازل بالرياض شركة تنظيف خزانات بالمدينة المنورة شركة نقل اثاث بالمدينة المنورة شركة تخزين اثاث بالمدينة المنورة شركة تنظيف منازل بالمدينة المنورة مكافحة حشرات بالمدينة المنورة شركة رش مبيدات بالمدينة المنورة غسيل خزانات بالمدينة المنورة شركة عزل اسطح بالمدينة المنورة شركة تسليك مجارى بالمدينة المنورة شركة تنظيف بيارات بالمدينة المنورة شركة كشف تسربات المياة بالمدينة المنورة كشف تسربات المياه شركات العزل الحراري في الرياض عزل مائي بالرياض شركة عوازل شركة عزل اسطح بالرياض شركة عزل خزانات بالرياض شركة تنظيف خزانات بالرياض شركة تسليك مجارى بالرياض شركة تنظيف بيارات بالرياض شركة نقل اثاث بجدة شركه تنظيف خزانات بالدمام شركه نقل اثاث بمكة شركة نقل اثاث بالدمام شركة تنظيف منازل بالمدينة المنورة شركات عزل مائي شركة مكافحة حشرات جدة تنظيف فلل بالدمام شركات مكافحة الحشرات فى الرياض افضل شركة تنظيف بالخرج شركة تسليك مجارى بالمدينة المنورة شركات كشف تسربات بالرياض شركة عزل اسطح بالرياض شركة مكافحة حشرات بمكة شركة تنظيف بالخبر شركة شفط بيارات الرياض مستودعات تخزين الاثاث بالرياض شركة تنظيف خزانات المياه بالمدينة شركة تنظيف خزانات بالخرج شركة مكافحة الحشرات بالمدينة المنورة شركة تنظيف مجالس بالخرج خزانات الفيبر جلاس شركة مكافحة حشرات بالخرج شركة تنظيف موكيت بالخرج شركة عزل اسطح بالخبر شركة تنظيف بيارات بجدة شركة نقل اثاث بالخبر شركة تنظيف خزانات بتبوك تركيب خزانات مياه بولى إيثيلين بالرياض شركات تنظيف المنازل بالجبيل أفضل عدسات لاصقة عدسات لاصقة طبية عدسات لاصقة للعيون عدسات لاصقة ملونة صور عدسات لاصقة أجمل عدسات لاصقة الوان عدسات لاصقة طريقة لبس العدسات اللاصقة كيفية استخدام العدسات اللاصقة الطبية انواع عدسات لاصقة عدسات لاصقة فريش لوك العدسات اللاصقة التجميلية

Post a comment:

This is a Captcha (http://en.wikipedia.org/wiki/Captcha), you need a graphical browser to display it.
This is a Captcha. You have to enter the characters displayed in the image taking case sensitivity into account.
*denotes required field

Back

Layout Copyright © 2006 Finnish Teleservice Center Ltd Oy - Site Powered by Midgard CMS, hosted by CONTENT CONTROL