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