Piotr Pokora writes "Lodz, June 28th 2006 -- The Midgard Project has released the third
alpha release version for the upcoming 1.8 stable branch of the
Midgard Open Source Content Management System.
Midgard's 1.8 branch focus on improved stability for Midgard2 technology
preview features introduced in 1.7 branch.
This is the first release from 1.8 branch with full support for initial
Midgard installations. It's addressed for developers and users familiar
with new pear packages of Midgard CMS.
New branch provides metadata for all objects registered from schemas.
Improved MgdSchema types managament includes features like automatic
guid accessibility and ISO datetimes.
Midgard-schema, new command line tool creates database's storage tables
and performs tests on registered types before implementing application
in production environment.
PHP is no more the only one scripting language supported by Midgard.
Due to MgdSchema technology Midgard provides better connectivity for
1.8 branch is the last one Midgard branch with repligard.
Replication and undelete functionality will be fully supported by midgard
core library in stable release.
Midgard 1.8 for end users
New configuration file format allows users to reuse the same midgard configuration among many different applications and among many environments. New file format is in beta state in this release and will be provided as the only one recommended way to configure any applications in future Midgard releases. The main goal is to reuse configuration even with different binaries without any need to rebuild Midgard.
New file format is currently supported by:
- midgard-php used with php-cli
- midgard-apache2 module
Midgard 1.8 for developers
New midgard_metadata class is new Midgard's internally initialized type which is integral part of every user defined class. midgard_metadata object is accessible as 'metadata' property for every newly created object instance. Informations like date of object's creation or last update, visibility or object's creator are available for all classes defined in schema files. This functionality also supports sheduling dates for registered classes. Even for attachments or persons.
Midgard metadata in Query Builder
As Midgard Query Builder is the default way to query objects from database, it also supports metadata constraints. Any object may be queried from database not only using its own properties but also using metadata property.
Midgard Query Builder
Highly improved Query Builder can create join like SQL queries and allow to query schema objects with their corresponding parameters or attachments. New INTREE operator may be used to query objects in Midgard content tree.
Following Midgard mRFC 0020 midgard_metadata properties with MGD_TYPE_TIMESTAMP represents dates as ISO datetimes. All dates are stored in UTC timezone in database.
Improved support for GUIDs
All midgard_metadata properties which are links to other types use only guids instead of ids. Additionaly every object in midgard database is represented by guid which is now stored in object's table and doesn't have to be retrieved by particular method. Database upgrade performed by datagard updates every record in database, so even records created or updated with old traditional Midgard API are converted and ready for new applications.
Midgard Reflection is designed for developers who need to write "schema aware" applications without any knowledge about schema registered for application.Property's or type's attributes defined in schema files are easily accessible with Midgard Reflection objects.
- midgard_reflection_class ( not yet implemented )
New datatype for object's properties.
With Midgard's Reflection one may retrieve property's type.
Types like longtext or datetime defined in application's schema are
easily accessible on any level wihout any need to redefine such
data for application which create user's GUI based on used objects.
New MidgardCollector type
MidgardCollector, special and limited resource data handler optimized for performance and data accessibility. Implementation design focus on fast and easy reusable data accessibility for such features like object's parameters or even powerfull Midgard style engine.
Changes from 1.7 branch:
- Metadata for all MgdSchema objects
- Support for ISO metadata datetimes
- New Quota for MgdSchema objects
- Rewritten database SELECTs with performance in mind
- Metadata and joined objects supported by MidgardQueryBuilder
- Guids support for objects and metadata
- New midgard-schema command line tool for testing schemas and creating database tables
- Repligard as part of midgard-data package
- Improved support for pear packages
- New Midgard sitewizard
- Extension is not built against MySQL or Apache
Changes from 1.8alpha2 release:
- Midgard Query Builder: parameter and attachment objects queried with parent objects
- Midgard Query Builder: objects queried in midgard content tree
- New connection handler
- New error handling
- Midgard Schema validation support
- Pam service configurable
- New directives for Pam services
- Guid support for legacy classes
- parameters and attachments fixes for parent object's guid
- Improved PEAR packages installation and configuration support
- Improved Database UTF-8 update support
Planned for next releases
- Next 1.8beta1 release: July 2006
- Automated database MgdSchema management and table initialization
- Deprecation of the classic functional Midgard API in favor of
MgdSchema and Query Builder
- Deprecation of repligard and apache1 support.
- Core's library API for replication and undelete
- Integrated midgard-java package
Download page for latest release:
Getting started with Midgard:
User and developers support:
- IRC: #midgard on irc.nehmer.net
The Midgard Content Management Framework was initially released in May
1999, and has since gathered a sizable user and developer community.
Midgard powers thousands of web sites ranging from simple organizational
websites to major portals like New Zealand eGovernment site and
Midgard is being developed by an international team of professionals.
Midgard's development team includes new media designers, system
integrators and content management consultants. Midgard development is
being supported by several commercial and governmental entities
including the European Union.
Piotr Pokora, Midgard release manager
Henri Bergius, Midgard spokesman
The Midgard Project