The relationship betw the OPML Editor and Frontier

Over on the Frontier-kernel list, Dave H wonders if his mods to frontier.root will work in opml.root. The answer: Almost certainly yes.

The OPML Editor is a Frontier distribution, the same way that Red Hat and Ubuntu are Linux distributions. For a variety of reasons I wanted to have my own thread for Frontier, so I forked and created the OPML Editor in 2005. Since then the two threads have diverged, but probably not in an incompatible way.

My first rule is the same as at UserLand: Don’t break the users. When I’ve made a change, it’s either been to add a new verb or feature, or to add an optional parameter to an existing verb, while carefully preserving the original behavior.

A good test of this was when I recently installed manila.root in the Apps folder. No changes were necessary to accomodate the OPML Editor. It “just worked.”

One frequently asked question is Where is mainResponder.root? Early-on I merged it with opml.root, so the code that was in the external root is now at system.verbs.builtins.mainResponder. If you think about it, mainResponder is core functionality, it shouldn’t be distributed independently of the core root.

Another change is that we create new user data in config.root instead of the user table. This change in philosophy predates the fork. We learned that storing users’ data in the core root was a bad idea. It meant that a wholesale replacement of frontier.root or opml.root was impossible. It still is impossible, but it’s easier because at least no new user data is being stored there.

There have been some major improvements in opml.root. You can see all the changes in the RSS feed for changes.

http://bits.codecasting.org/opml.root/rss.xml

Each root has its own feed now, so if you just change the URL to include the name of a different root you can see all the changes.

There’s an all-new scheduler, which works a lot better, is more efficient. There’s glue for Internet apps such as Twitter, Flickr, WordPress and Tumblr. There’s a new aggregator, a fresh start — called River2. Lots of new stuff. It’s been over five years since the fork, after all. :-)

So if you want to join with my thread, there are two approaches possible:

1. You could port system.verbs.builtins.rootUpdates into Frontier, and then use it to update your main root and see if it works.

2. You could start with a fresh opml.root and gradually bring in your customizations.

I would probably go with #2 because it’s more likely to yield a good result. You’ll start with something that works and if you add something that doesn’t you’ll know immediately where to look for the problem.

I do the #2 type transition almost every time I start up a new server, and I do that frequently, and there’s rarely a problem.

If you have difficulty, if you describe the modification carefully I’ll try to help figure out what the problem is. I am anxious to find any bugs that might be there that only show up when older Frontier code is ported to run in the OPML Editor.

One response to this post.

  1. […] The relationship between the OPML Editor and Frontier […]

    Reply

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: