Well, I’ve been a little remiss in my open-source development of late. Many apologies, things have been a bit hectic. You know the feeling, I’m sure.
But that’s not why I’m posting. I thought I’d outline my ideas for the future of these projects and get your feedback and/or ideas.
Comatose, The Micro CMS Plugin
The things that are definitely coming…
Edge Rails – Since Rails 1.2 is now official, it’s time to finally support ‘edge rails’. :-D
Actually, I have a version that runs on Rails 1.2 now, but I’m debating about Rails 1.1 backward compatibility. The new version changes quite a bit. The DEFER_COMATOSE_LOAD stuff goes away, replaced by better configuration support and a Dispatch::to_prepare block. Plus you no longer override the ComatoseAdminController for authentication, instead in the configuration you specify modules to include in the class. Oh yeah, and the controllers no longer extend ApplicationController.
Test Harness – The tests in the plugin itself are very spartan, at best. I have a horribly ugly test harness I use for the actual unit testing that I’m going to clean up and release.
Some possibilities…
Liquid Only – I really think I’m going to drop ERb support. How many of you use ERb over Liquid for page processing?
RESTful Pages – Perhaps using the new RESTfully CRUDDY support would be useful. The idea of having an API for pages is interesting.
Mount Behaviors – I haven’t thought this through yet, it just popped into my head: map.comatose_root 'devblog', :index=>'blog', :behavior=>'blog'
This example would add ‘blog-like’ support such as all children being paged entries (showing last 10, next page, last page, etc.), automatic hAtom microformat support, and maybe some sort of archives… I don’t know. I still haven’t thought about this too much.
The behavior support would be pluggable, much like text-filters and drops… Can you think of any other behavior that would make sense?
Maybe :behavior=>'syndicated' to create RSS/ATOM feeds of the child pages? Perhaps they’d be mixable by saying :behavior=>'blog syndicated' or :behavior=>'blog,syndicated'.
The probably nots…
Media Management – It just feels like too much. I have a hacked up version of Comatose that supports page attachments. But you wind up having to deal with upload directories, and file permissions and… It just feels too heavy. And too heavy != micro.
Perhaps it could be a separate plugin?
TaskTHIS
TaskTHIS is getting a bit long in the tooth. It was written right about the time some of my AJAX patches were being added to Rails. Which was pre 1.0. So, yeah. It needs some love.
It was created as a show-and-tell for the then-new-and-nifty AJAX support. Which, of course, is now old hat.
In keeping with the tradition of show-and-tell, I thought TaskTHIS would be an excellent application to show how to use the new CRUD/REST/Resources stuff in Rails 1.2.
I have a few ideas outlined here. The biggest ones are:
API – This is fairly straight-forward, we’ll get most if it from Rails. We’ll just add the appropriate authentication for the XML requests.
OpenID – I was thinking replacing the existing login system with OpenID authentication. I like the idea of just typing in my domain to login… Who needs passwords? Seriously though, this may be a bit controversial — please weigh in.
Oh, I forgot to mention, TaskTHIS.com is working again.
Theme Support Plugin
Basically, just add any outstanding patches and ensure it works on Rails 1.2. I imagine the routing stuff will need to be tweaked.
Whadda Ya Think?
What would/wouldn’t you like to see in any of these projects?
just wanted to put my vote in really quick.. i am using the themes plugin for alot of projects, and mine just broke.. i would like to see this reworked for rails 1.2..
i started working on it last night, but i am short on time t his week..
anyway.. good work on all your stuff!
you rock!
Just fishing around for feedback about the other ideas.
Oddly, nobody has said they need Rails 1.1 support. Which is good, that'll make this next release quick and easy!
I've had the Themes plugin working in 1.2/edge with these hacks:
First, I commented out everything in routeset_ex.rb. And added those routes manually to "my routes.rb":http://pastie.caboo.se/39806
I've also just got ActionMailer themes working by changing the initialize method in actionmailer_ex.rb. Here's a diff. Basically I just made sure the theme parameter was indeed lobbed off the array, the original way just empties out the hash parameter at the end and sticks a :current_theme in there, so the create! method was complaining about too many parameters. It seems to work, but I'm still a little confused what the consequences of not having that :current_theme param sent into "create!" is about to have.
"http://pastie.caboo.se/39808":http://pastie.caboo.se/39808
No rhtml, rxml, or delegate template found for user_notifier/signup_notification.text.html.rhtml
http://www.ruby-forum.com/topic/100163#215694
actionmailer that is of course
I'd like to be able to pick which processor to use on a per-page basis rather than always using the 'default'.
I have really enjoyed using the theme_support plugin.
I'm using Rails 1.2.2 now and I have applied the patch supplied by seth (thanks for the url).
The only problem I have left, is to get rails to actually find the layout to be used. The layout I want to use is called 'site'. And I have it present in the in the layouts folder of my layout, I have created the cache so it's in the public dir. I also checked the current_layout which returns the layout var.
But still I get a missing template error. Any idea why?
How I can fix it?
Can anyone here share the patch from Dallas Slieker. His website is down for several days now.
Thanks.
Site's up now. Apologies for the inconvenience.
I'm getting this error:
d:/dev/ruby/lib/ruby/gems/1.8/gems/actionpack-1.13.3/lib/action_controller/routi
ng.rb:954:in `initialize': wrong number of arguments (0 for 1) (ArgumentError)
from d:/dev/ruby/lib/ruby/gems/1.8/gems/actionpack-1.13.3/lib/action_con
troller/routing.rb:954:in `build'
from d:/dev/ruby/lib/ruby/gems/1.8/gems/actionpack-1.13.3/lib/action_con
troller/routing.rb:1172:in `add_route'
from d:/dev/ruby/lib/ruby/gems/1.8/gems/actionpack-1.13.3/lib/action_con
troller/routing.rb:1178:in `add_named_route'
Any ideas why?
Thanks.
I also got the problem using Theme Support on Rails 1.2.3 and ActionMailer views. They just aren't found by pick_template_extension.
search path should be "." (I think so)
does someone know how to make this work? I currently REMOVED theme support just to make my notifiers work again.
thanks in advance
I posted in my blog on getting the Theme Support Plugin working in version 1.2.3.
Hope it helps someone!
Here it is:
http://manicprogrammer.com/cs/blogs/heynemann/archive/2007/09/21/theme-suppor...
Nevertheless I have had to fix a couple of things for it to work with rails 1.2.5 ( http://www.gaugeus.com/ramblings/2007/11/4/adding-theme-support-to-a-ruby-on-... ) and for it to support routes with extensions such as rxml ( http://www.gaugeus.com/ramblings/2007/12/3/rendering-templates-extensions-the... ).
Leave a comment...