Weblog
Wednesday, February 17, 2010 |
|

I don’t know if this is even possible, but I wanted to put it out there to at least stimulate some discussion and perhaps even jolt some of you to action. I’m issuing a public call for designers interested in contributing to Radiant CMS. Effective immediately.
No, I’m not looking for resumes, portfolios, or recommendations. I’m looking for people who are good at what they do and get it done. Opinionated, kind-hearted folk who communicate well and can handle criticism…
Continue Reading…
Friday, January 08, 2010 |
|

In case you missed it we recently updated the Radiant Extension Registry to include:
- A new look and feel
- Paginated indexes of both authors and extensions
- Search by extension name and description
- Updated author profiles and extension pages
- “Available for Hire” badges for authors that are
We’ve got a number of things that we would like to see added to the extension registry in the near future. If you are interested in helping out, fork the project on GitHub, write some code and tests, and submit a pull request. (You can also submit feature requests or bug reports on the issue tracker.) I would love to see someone take on the challenge of adding reviews and ratings to the system. I’m also playing around with the idea of making extension pages more like wiki pages with versioning and multi-author editing.
You can visit the new extension registry here. There is also a nice little overview of the recent changes on my blog here.
Thursday, December 31, 2009 |
|
It’s not widely used (as far as I know) but did you know that extensions can alter the configuration of the application?
Yes, it’s true. All you need to do is:
class MyExtension < ActiveRecord::Base
extension_config do |config|
config.gem 'gem_name'
config.extension 'radiant-extension-name'
config.after_initialize do
puts "hello from MyExtension"
end
end
end
You can require ‘will_paginate’ for example. That’s right, no more instructions in the README file telling you to manually add some gem to your configuration.
The config.extension bit is primitive, but it has to be. Extensions don’t have a formal way to control versions, so you can’t just add config.extension 'rbac_base', :version => '99.3.157'. That won’t work. It will merely check to see that the extension with the given name exists and warn you if it doesn’t.
Why not load extensions as gems then? That would be great, and would likely help the development of new features for Radiant since we’d have better control over real versions for extensions. 2010 will certainly be an interesting year if some great developer from a great company can get Radiant to load extensions from gems.
Cheers to all the developers working to make Radiant even better. Happy new year!
Wednesday, December 16, 2009 |
|
A question that pops up every once in a while on the Radiant email lists is “How can I run Radiant in a sub-directory?”
The answer has always been that that approach is not a main goal, but we certainly accept patches. And the patches never came.
I believe that we’ve got it covered in the master branch as of this commit. If you are interested in running Radiant with a path prefix (to control your site content at yourcompany.com/site while another app does something else on the same domain at yourcompany.com/app), please kick the tires and let us know if you’ve run into any trouble particularly with your extensions.
Sunday, December 06, 2009 |
|
If you’re working on an extension for version 0.9 of Radiant, you should know about the changes to the tab API.
See this closed github issue for details.
Tuesday, October 20, 2009 |
|
I’ve posted a couple of notes on RC1 over on my blog here. You may find them helpful particularly if you are developing extensions.
Friday, October 09, 2009 |
|
I am pleased to announce the first release candidate of Radiant 0.9.0.
The big news in this release is that we have updated the interface to make it more stylish and compact. If you are a long time Radiant user you will appreciate the small refinements that have been made to make Radiant easier for both power users and normal folks.
Apart from the stylistic changes, there are a couple of changes that are worth mentioning:
- There are now two levels of tabs. The intent here is provide more organization for folks that have a lot of extensions installed. The primary top level tabs are now “Content”, “Design”, and “Settings”.
- We’ve added hot-keys for saving. You can now press Ctrl+S to save a page and continue editing, or Ctrl+Shift+S to save a page and return to the index page.
- We’ve reduced the number of flash messages in favor of status messages that pop up when you submit a form.
- We’ve added support for the tab key to text areas. On Safari and Firefox there is also support for multiline indent and unindent.
This release is primarily aimed at extension developers. We want to encourage all extension developers to update their extensions to work with 0.9.0 as the interface changes in this release are significant and will break existing extensions. We would like to hear as much feedback as possible about what we can do to make it easier to upgrade extensions for the new version. Any patches or pull requests that are submitted in this vein will be given a higher priority.
There are a number of changes that did not make it into this release candidate that may make it into the final version in one form or another. Among them internationalization, asset management, password reset, filter toolbars, and a revamped settings interface.
We now using GitHub Issues to keep track of feature requests and bug reports. If there is a particular feature that you feel should be in 0.9.0 or a bug report that you would like to file, do so there. You can also vote on existing features to improve the odds that they will be implemented by one of the core team members.
As always we welcome your feedback and contributions.
Download & Install
You can download the gem here:
http://radiantcms.org/downloads/radiant-0.9.0-rc1.gem
Install it with the gem command:
$ gem install radiant-0.9.0-rc1.gem
This will install the gem as ‘radiant-0.9.0’.
How to Upgrade an Existing Project or Site
1. Update the Radiant assets from in your project:
rake radiant:update
2. Migrate the database:
rake production db:migrate
3. Restart the web server
Saturday, September 05, 2009 |
|
Radiant 0.8.1 “Luster” sports numerous enhancements to extensions, most notably:
- Rails Metal and Cucumber features are supported
- Rails configuration is accessible for depending on gems and modifying the environment using
extension_config.
- Inter-extension dependencies can be declared before activation using
config.extension.
This release also includes support for IBM DB2 and corrects some bugs with the admin interface and caching system. The packaged Rails version was upgraded to 2.3.4.
A few compatibility notes:
- The Radiant gem now depends on rack 1.0 or later because it was removed from Rails 2.3.4.
- The default cache directory was moved to
tmp/cache so as to follow convention better and support deployment on Heroku.
Many thanks to our contributors and committers for their contributions.
Installation
To install use the gem command (with ‘sudo’ as necessary):
$ gem install radiant
Upgrading an existing project/site
For upgrading from some versions, especially pre-0.8, we recommend following the instructions found on the download page.
1. Change the RADIANT_GEM_VERSION constant in config/environment.rb to “0.8.1” or remove it altogether.
2. Update the Radiant assets in your project:
rake radiant:update
3. Copy your customizations back into config/environment.rb, if necessary.
4. Migrate the database:
rake production db:migrate
5. Restart the server
Creating a new project/site
1. Invoke the radiant command with your desired database driver:
$ radiant -d sqlite3 my_project
2. Bootstrap the database:
$ cd my_project
$ rake db:bootstrap
3. Startup the server and try it out!
$ script/server
Sunday, June 14, 2009 |
|
Radiant 0.8.0 “Asterism” features a brand new and more compliant caching
mechanism based on Rack::Cache, and numerous bugfixes and small enhancements.
Also included are:
- An extensive integration suite using Cucumber and Webrat
- Rails 2.3.2 (previously 2.1.2)
- Highline 1.5.1
- Haml 2.0.9
Many thanks to our contributors and committers for their contributions.
Installation
To install use the gem command (with ‘sudo’ as necessary):
$ gem install radiant
Upgrading an existing project/site
1. Change the RADIANT_GEM_VERSION constant in config/environment.rb to “0.8.0” or remove it altogether.
2. Update the Radiant assets in your project:
rake radiant:update
3. Copy your customizations back into config/environment.rb, if necessary.
4. Migrate the database:
rake production db:migrate
5. Restart the server
Creating a new project/site
1. Invoke the radiant command with your desired database driver:
$ radiant -d sqlite3 my_project
2. Bootstrap the database:
$ cd my_project
$ rake db:bootstrap
3. Startup the server and try it out!
$ script/server
Monday, June 08, 2009 |
|
If you’re looking to test out your site on edge to prepare for the next release but aren’t ready to take the plunge, you can alter your environments to selectively set up ResponseCache
if defined? ResponseCache == ‘constant’
ResponseCache.defaults[:perform_caching] = true
end
You may also set the cache_timeout for SiteController which will stand in the place of ResponseCache.defaults[:expire_time]
config.after_initialize do
…
if defined? ResponseCache == ‘constant’
ResponseCache.defaults[:expire_time] = 12.hours
else
SiteController.cache_timeout = 12.hours
end
…
end
That should get you going as you kick the tires on 0.8.
If you’re looking for more control, take a look at the source and know that Radiant::Cache is now implemented in Rack::Cache and of course, keep your eye on the wiki page for developer upgrades
Tuesday, May 12, 2009 |
|
ATTENTION EXTENSION DEVELOPERS! When working to upgrade your extensions to be compatible with the latest Radiant, please refer to and update this new wiki page: Developer Upgrade Notes. I’d like to make this a one-stop-shop for inter-version upgrade questions. Do not put information on individual extensions here, but on upgrade issues in the general sense. Things that will go well in the page:
- Class/method/namespace changes
- Common errors and how to resolve them
- Library/API additions and modifications
- New conventions, deprecated conventions
Start preparing your extensions for Radiant 0.8 as soon as you can!
Hot on the heels of the feature list from this morning is Release Candidate 1 of Radiant 0.8.0.
Download the gem from S3.
The gem will install as radiant-0.8.0.
Missing from the promised feature list in this release candidate are:
- Support for cucumber features in extensions — sorry, you’ll have to rig something up yourself for now.
- Packaged assets in DB templates – Roasters is due for this enhancement.
This release is intended for developers and the brave only! A production-ready release should be available later in the month. Please use this release to test the new features and discover bugs.
The dev team has been working hard at preparing the next version of Radiant, which we believe will be ready later this month. Here’s an overview of the upcoming changes:
- Rails 2.3.2 is bundled – this includes support for Rack, so you can add your own “metal” or “middleware”, making certain tasks much easier and performant.
- The integration specs are now Cucumber stories, and you will be able to write Cucumber stories in your extensions.
- RSpec and friends are only required to run tests and will no longer be install-time gem dependencies. Rake tasks that depend on them are stubbed.
config.extensions will be pre-populated so you can easily turn off installed extensions like so: config.extensions -= [:archive]
ResponseCache, Radiant’s built-in caching, has been replaced by Radiant::Cache, which wraps Rack::Cache with some enhancements for manual expiration and acceleration headers. This makes us more compliant with the HTTP/1.1 spec and removes some of the complexity of that code. Best of all, it’s completely pluggable, so you can use plain Rack::Cache or turn it off altogether in one line.
Admin::AbstractModelController is no more. Use Admin::ResourceController!
Some efforts that are started but will not finish until after 0.8 release:
- Internationalization of the interface has begun in the i18n branch, lead by Keith Bingman.
- The new “blade” interface is nearly complete, John says. Check it out in the prototype
If you are at RailsConf 2009, please consider attending the Radiant BoF Session, which will be moderated by the awesome Keith Bingman, developer of bitchkittyracing and leader of the i18n effort for Radiant. John and Sean might also make an appearance remotely via Skype or IRC, so bring your questions, problems and comments!
Friday, April 17, 2009 |
|
You’re invited to another Radiant Hack Day/Sprint!
- What: Radiant Hack Day
- When: Saturday, April 25th, 10:00AM-? EDT
- Where:
Carrboro Creative Coworking
205 Lloyd St, Suite 101
Carrboro, NC, 27510
carrborocoworking.com
Both John and Sean will be in attendance, leading the design/UI and development pieces respectively. This is an easy way to get started contributing to the project, learn more about Radiant, or to work on your own feature with guidance from the community. We’re going lower ceremony than our big one in October, but still encourage out-of-towners to come. Contact Sean privately via email if you need help making arrangements to attend, or if you’d like to be involved remotely.
Happy hacking!
If you can attend, please RSVP.