Hi folks,

now that 0.10 has been released and 0.10.1 fixed a minor bug, we're ready to move on and focus on 0.11.

In the following, I'd like to show you what Veikko and I have planned for the next release (which should be the last major version before 1.0), as well as some things we decided on that are vital to the success of the framework.

We've modified an existing, very excellent piece of software called Mojavi to build something even more exciting, and Agavi needs and deserves way more attention. A large user base is essential to the success of our efforts, and guarantees that the framework may become really mature due to feedback and suggestions from people that use the framework in production environments and for their daily development work.

One thing that we really need is a beautiful, large and informative website. http://www.symfony-project.org/ is a good example for this. The project has been released only weeks ago, but they alredy have an amazingly large amount of users, and this is mainly because they did some excellent "marketing" work. I'll look into this one later this week and see if I can find a decent designer who would be willing create a simple, yet appealing layout that makes users feel like they are looking at a high-quality project when visiting the website for the first time (no mean to disrespect the current website, but it somehow feels... provisional ;))

Another topic is project management. I'd like to thank Bob for updating Trac to the new version 0.9.2 which makes it a little eaasier to separate defects and enhancements and tasks. From now on, we really should keep track of everything using Trac (haha :p). That means, if anyone has a cool idea he's about to implement, please create a new enhancement ticket. If you want to show what a great ASCII artist you are by modifying all header comments, create a task ticket. If you come across a bug, create a defect ticket. Usually, you'll select a version only for defects and leave it blank for enhancements and tasks. But please always choose a milestone (next minor version for most defects, next major version for anything else). Also, keywords are handy when searching tickets. We really, really should obey this rule. It not only allows us to keep track of current and future work, but it also makes creating changelogs and release notes amazingly easy.


Okay, finally, the features. http://trac.agavi.org/trac.cgi/report/3 will give you a good idea of what is currently scheduled for 0.11, but I would like to point out some of the important ones:

1) The "Agavi" prefix. This will be added to _all_ classes that ship with the framework, without any exception. I'm aware that this means we'll have awfully long names like AgaviBasicSecurityFilter, but there's no way we can get around this. Unfortunately, there's still no sign of namespaces coming to PHP any soon, so we have to go this way. Maybe we could abbreviate the prefix a bit, like AgExecutionFilter or so, but we really really have to go this way because 0.11 is our last chance to get this in without people going totally ballistic about such a change.

2) The copyright holder. I'd like to change all files to say "Copyright (c) the Agavi Project". Also, we should remove the "copyright by Sean Kerr" message from the headers and replace it with "Based on the Mojavi 3 MVC framework by Sean Kerr" or something. All other copyright notices that mention Sean in class and method doc comments will remain in place however. This unifies our files while maintaining compliance with the LGPL and giving Sean the credit he deserves (and man, he deserves it!)

3) URL handling for elegant URLs and their generation. Pretty self- explanatory. The Symfony project has an excellent routing functionality we can borrow ideas from ;)

4) Better configuration. This will include per-module autoload, as well as per-context configurations so we can have separate filter or database settings for production/dev/testing contexts.

Other things will include a caching mechanism that already works as a prototype proof-of-concept here on my machine, and maybe a functionality for form validation and value re-population via a filter, but I'll have to see if this works as I imagine it to work ;) All the other things are in Trac. Feel free to add things or throw in your ideas here on the list.


Keep it up guys, I'd love to hear some feedback ;)

- David

_______________________________________________
agavi-dev mailing list
[email protected]
http://labworkz.com/cgi-bin/mailman/listinfo/agavi-dev

Reply via email to