Show your support for Zikula! Sign up at Github account and watch the Core project!
- ftree created topic »searching for simple "Data Warhouse"« 01:38 AM
- mesteele101 responded to »High Bandwith Usage« 21. Apr
- geoff responded to »zikula.com.au« 20. Apr
- craigh responded to »Numerous 404 errors on Zilkula site - what's up?« 18. Apr
- Paustian responded to »Migrating from PostNuke to Zikula« 01. Apr
- mesteele101 responded to »Zikula 1.2.10 - set default replyto address for new user email« 31. Mar
- portugao responded to »Redirect to specific page on login« 30. Mar
From Zikula Core 1.4 we have started using Composer and I've been asked to explain the reasoning behind this. Composer is a PHP dependency manager that has taken the PHP community by storm. It is vastly superior to PEAR for a number of reasons I will cover in this post.
Until recently, we've always stored vendor libraries directly in the core repository and it's always been a maintenance chore to update vendor libraries. Using Composer, one can just specify the libraries one depends on and it will not only go and download them for you, but it'll update the packages when there are upstream changes (all controllable). What this means for developers is you must manually run the composer command after cloning a repository and when the composer.json manifest is updated.
But that's not all, because there's also packagist.org which tracks all packages available in Composer (although Composer is not coupled to Packagist). This is great news for library authors because there is immediate exposure to the PHP community. All a library author needs to do is define a composer.json manifest in their Github repository (or any VCS repository for that matter) and then tell Packagist about it. From there on, others can specify your library with just a single line in your project's composer.json manifest.
Where the real magic happens however is they way in which Composer is able to solve dependencies. You might rely on just one vendor library, say "doctrine/doctrine-orm version 2.3.0" - with just that one require, composer will download and manage all the other requirements, like Doctrine Common, Doctrine DBAL, Symfony2 Yaml and Console.
Composer's last piece of magic is it's ability to autoload PSR-0 compliant library, and in fact, most non-compliant libraries also as it generates an autoloader specific to your requirements. Clever stuff!
Next time you get the source version of Zikula Core 1.4, please checkout the README.md for instructions on how to run Composer
In response to a common complaint I am announcing some changes to the recommended module repository structures in GIT. This doesn’t affect modules in Zikula Core 1.3 in any way but this change will make it easier to checkout modules directly into your Zikula modules/ folder.
The other reason is when a module is tagged it at Github, the archive will be autocreated without any
Most modules are currently using following the structure.
src/ modules/ ModuleName/ lib/ ModuleName/ Controller/ Admin.php User.php templates/ modulename_user_view.tpl
The problem with this is that you cannot checkout repositories directly into Zikula’s modules/ without using cumbersome symbolic links. This vastly complicates things and is a constant source of frustration.
The following structural change should be done now for all 1.3 modules. Here is a simple example using EZComments as an example. Were’ simply going to move all the files from src/modules/EZComments up to the module’s root folder.
git clone email@example.com:/zikula-modules/EZComments cd EZComments git mv src/modules/EZComments/* . git commit -a -m “Restructure repository layout” git push origin master
Footnote: This assumes the 1.3 module version is in the master branch. If you do have lower versions that are 1.3 compatible you should apply the changes to the lower lower branch, then switch to master and merge.
Since we started using GIT some years ago, a branch and tagging convention has grown in the PHP community and been cemented by Composer PHP dependency management. These changes to branch and tag naming are compulsory for Zikula modules and will aid future automation.
Modules must be released with versioning that represents the a.b.c Semantic Versioning (http://semver.org/). For example 2.3.0, 2.3.1 … 2.3.12 and so on. Where the c is the maintenance (bugfix) version.
If you maintain just one version series, then you should have just the master branch. e.g.
master - Your development branch
If you maintain more than one bugfix branch (e.g. 2.3 and 2.4 series) as well as a current new version, you must name them like this:
2.3 - maintenance branch of 2.3.x series 2.4 - maintenance branch of 2.4.x series master - latest development branch (could be 2.5, 2.6 or even 3.0 doesn’t matter)
When tagging releases you must tag them as the final release version so 2.3.1 would be tagged 2.3.1, 2.4.0 would be tagged 2.4.0. You can optionally prefix it with a ‘v’, e.g. v2.3.0 but that is entirely optional. Remember Semantic Versioning allows a.b.c-d so you can also tag beta/rc releases if you wish, e.g. 2.3.0-beta1
When making bug fixes you’d always commit to the lowest branch where the fix should be applied, and then merge up. For example.
git checkout 2.3 # commit a set of fixes git checkout 2.4 git merge 2.3 # merges the 2.3 branch to current checkout (2.4) git checkout master git merge 2.4 # merges the 2.3 branch to current checkout (master)
Renaming branches is as simple as follows. Let’s rename release-3 to 3.4
git checkout -b 3.4 release-3 git push origin 3.4 git branch -D release-3 git push origin :release-3
- Simple Captcha has been updated to a formula with 3 numbers and a handwritten font
- For those who didn't know Formicula now supports arrays besides the old flat custom params
- Bugfixes in the attachements parts
This is a bugfix update with some new features.
You are recommended to upgrade to Zikula Core 1.3.5. Please download the latest version from the Get Zikula 1.3 page.
To name a few highlights:
- The Mobile theme got several fixes
- Fixes in DBUtil and FormUtil
- Updates of jQuery (to 1.8.3) and jQueryUI (to 1.9.1)
- Fixes in the site disabled screen
- Added check for identical usernames in lowercase
- Fixes in the advanced block placement
- New alert dialog with auto-hiding
Many thanks of course to the Zikula Core Development Team and Contributors and the users who reported these issues.
This new version requires Zikula Core 1.3+
A special thank you to Petzi-Juist - Klaus Petzka for all his work on previous versions. His unreleased version 2.1.0 was a big step in the development of v3.0.0!
If you are willing to make a 'thank you' donation please Send a private message to craigh. Donations are very encouraging!
The following changes were made for version 3.0.0:
- converted to 1.3 standards (including conversion to Doctrine 2)
- removed need for modrequest and newlink tables through refactoring
- added 1.3-style hooks
- CSS in forms/buttons re-styled to 1.3-standards
- removed all old deprecated tables (votes, etc)
- removed all import routines (import as needed before upgrade to 3.0.0)
- pending content moved to new standard which requires no configuration. just check the box in the admin settings
- added more information to the delete category page so it is clear what is to be deleted
- added additional link validation in places where useful
- add Content plugin to display list of links by category
Version 2.1.0 changelog (not released)
- converted to Gettext
- CSS has changed to Zikula 1.2 style
- little bugfixes
- now it is possible to change the parent of a category
- import function for CmodsWebLinks
- allow multiple use of an URL
- thumbnails with websnapr
PostCalendar 8.0.0 has been released! PostCalendar is a calendar module for Zikula with multiple views, private calendars, Content Module support and much more.
I am thankful to give the community a new version of PostCalendar that incorporates new technologies that are available as Zikula Core improves. In addition new requested features such as special repeating event options and import of data from the TimeIt module have been added. The use of jQuery-UI has made many aspects of the module better - especially the new event form! Also a new iCal view is available!
PostCalendar 8.0.0 requires Zikula >= 1.3.5 (or 1.3.3 with updated jquery_datepicker plugin - see below**)
- Fully native Doctrine2-based module
- jQuery-UI utilized heavily to improve ease of use in the UI
- NEW repeating event options: continuous and repeat-exceptions
- NEW import of TimeIt data (thanks espaan!)
- NEW iCal export and subscription-provision. (thanks evert!)
- Removed use of Date_Calc lib and all date calculations moved to native PHP DateTime objects
- Module much more OOP-based. All user views (including blocks) now OOP instead of procedural
- Refactored Query/Request objects to Zikula 1.3.3 standards
- A lot of code duplication completely removed.
This update resolves some issues that were holding people back in upgrading from Zikula 1.2.x, of course a lot of other fixes and some new features. This update makes the Zikula 1.3 release even more mature. In total 91 tickets are closed !!
You are recommended to upgrade to Zikula Core 1.3.4. Please download the latest version from the Get Zikula 1.3 page.
- Updates of jQuery and jQuery-UI
- A default Mobile theme is added
- Password recovery is fixed
- Upgrade fixes for Categories, Blocks
- Improvements and fixes in DateUtil
- Small changes for PHP 5.4 compatibility
- Fixes for several IE related issues
- Several improvements to the Form code
- Some ContextMenu fixes
- Minor improvements in MenuTree
Full details are available in the big closed ticket list for the 1.3.4 milestone.
Many thanks of course to the Zikula Core Development Team and Contributors and the users who reported these issues.
- download deleted on editing entry
- cannot use storage directory above doc root
- problems in upgrade routine (to 3.1.0) that some items didn't get upgraded
- redirect on saving admin settings caused problem
- cache issue when fetching CID
- Added check to prevent overwrite of same filenames
This update resolves some minor issues and adds some new minor features.
You are recommended to upgrade to Zikula Core 1.3.3. Please download the latest version from the Get Zikula page.
Addition of jQuery-UI
update of jQuery
Improved cache handling
Improved page/module identification (especially in shorturls)
Conversion of Admin and Blocks module to Doctrine 2
Full details are available in the closed ticket list.
Many thanks to the Zikula Core Development Team and Contributors and the users who reported these issues.
Downloads 3.1.1 requires the forthcoming Zikula 1.3.3
Downloads is an upgrade of original (PostNuke) Downloads module for Zikula 1.3.x with significantly reduced functionality. Improvements in this version include corrections to caching (contributed by nmpetkov), addition of List block (supported by M. Doucha [mdee28]), and conversion from Doctrine 1.2 to Doctrine 2.1 as well as various other fixes.
You may download the new version from the Try Zikula page. [updated 29 April 2012]
It's my pleasure to introduce you all to my loved newborn son: Clip 0.9.0.
I'm too young to be a father, but the time finally came, and I'm rather proud of it. With such cool grandparents like Marco Kundert and Jørn Wildt, who provided the code and the concept years ago, it's a healthy child with a lot of potential. Now the community must give it all the love possible to grow healthy, and improve its features and possibilities.
We are happy to announce that a new version of ModuleStudio is available. The new version includes many bugfixes and minor improvements, but also some new features.
Pushed by some discussions in the German Zikula forums we realised an import from table structures of existing modules into ModuleStudio. Together with Robert Gasch we implemented that quite quickly and reasonable by using a bridge via XML files. But there are some more exciting news...
This update resolves some minor issues.
You are recommended to upgrade to Zikula Core 1.2.8. Please download the latest version from http://zikula.org/infopages/CMS/Download.1
Bug fix highlights:
Fixed XSS issue in Theme module administration with 'themename' variable.
Fixed invalid HTML a template in the Groups module, issue #2994.
Fixed an issue where an incorrect group type was displayed when editing a group through the administration panel, issue #2993.
Full details are available in the changelog.
Many thanks to the Zikula Core Development Team and the users who reported these issues.
It's time for everyone to consider migrating away from the Cozi for module project hosting. Github provides absolutely everything and more than what we have at code.zikula.org. The integration between github and the Cozi is also clumsy from a technical standpoint and very processor intensive since we need to clone and sync each GIT repository hosted at github with the Trac in separate databases. The service is extremely resource intensive and requires a lot of baby sitting from a maintenance point of view.
Even though a few people might prefer like subversion over GIT, even github provides SVN hosting through a seamless bridge system at Github, where you can access git repositories using your normal subversion client.