Welcome to the second OpenACS newsletter. From this issue I have adopted a slight change in submission policy: The early bird gets the worm. Meaning that the order of the news items presented below is equivalent to the order of arrival in my inbox. This should not present a problem, as people are of course more than welcome to mail news items to me even before the call-for-news goes out.
So let us get started.
In the pipeline but not quite ready yet is an Emacs extension I wrote specifically for OpenACS. The code has been written but lacks documentation. Which I intend to publish at www.thecodemill.biz but other projects placed this project on hold.
The Emacs extension allows developers to execute SQL queries directly from XQL files. Emacs will ask the developer for replacement values of the bind variables in the query. The extension also includes templates for .ADP, XQL and TCL pages plus several macros that insert templates for ad_proc definitions and debug statements.
I expect to have the documentation written in 2-4 weeks.
I've posted a suggested release plan.
It says feature freeze date on Monday one week from today (September 29), and then 3-4 weeks of chasing and fixing bugs, before we cut a release. Maybe. Or an alpha or beta release. Or more. I don't know what we'll find, and I don't have experience managing releases, so I'm not sure what to expect.
But please post your feedback to the thread.
We're wrapping up external authentciation work, with just a few features plus testing plus documentation outstanding. We're expecting to be feature complete by end of this week.
Login with email (old-style) works again now.
Also, most notably, cookie handling has been modified, so:
- Authentications can expire after a certain time period (e.g. 8 hours), or specifically from the server.
- Just because the authentication has expired doesn't mean we forget who you are. When refreshing your authentication, you only have to type password, not email or username. Also, [ad_conn untrusted_user_id] will still contain your user_id, even though [ad_conn user_id] says 0, so applications can decide to display non-sensitive personalized information.
- We keep the atuhentictaion level in [ad_conn auth_level], which can be 'none' (untrusted_user_id and user_id both 0), 'expired' (untrusted_user_id set, user_id 0), 'ok' (both untrusted_user_id and user_id set), or 'secure' (both untrusted_user_id and user_id set, authentictaion was over a secure connection, and the current connection is secure).
- We store information about the account_status in [ad_conn account_status], which will be 'ok' or 'closed'. If 'closed', then user_id will be 0. This is used to let people get to their workspace to update their profile and password, even if their accounts are closed. They're not considered logged in for other purposes.
- New API auth::require_login and auth::get_user_id lets you get the user_id given at least a certain auth_level or account_status.
User interface work
We're close to having cleaned up all the pages that OpenACS users and admins normally see. We're making sure they're templated, reasonably consistently designed, do not overload people with options they do not understand, and that all features displayed work.
We've rearranged things a bit, so that
- The front page no longer has a special file serving it.
- Instead a developer's admin page has been created, which has links to package manager, cache, automated testing, service contracts, and the API browser, plus all the stuff previously on the www/index page. Developer's admin has a link in the master template.
- The site-wide admin page also has a link in the master template, and has added links to set parameters and visit the pages and admin pages of installed services. It also features a new installer with a much simpler user interface with no confusing options, and no scary SQL output. If you want more flexibility, the old APM installer is still around from the developer's admin page.
Anonymous forums postings
We did this for Copenhagen University a while back, and I rolled it into the tree now. If you grant the appropriate privileges to user 0 (Unregistered Visitor), unregistered visitors are allowed to post. Moreover, registered users will see a checkbox that asks them if they want to post anonymously.
That's what I can think of ...
Project manager continues to evolve at a fast clip.
Tasks are now assignable, and I've begun work on "Processes", which allow you to create templates for a set of tasks. I've also almost completed edit-en-masse, so you can edit several tasks at a time.
My goal for the next few weeks is to add these things in:
notifications (by 9/1)
general comments (by 9/2)
categories for tasks and projects (by 9/3)
UI and general cleanup (until 9/8)
After that point, work on project manager will decline for several months, as I finish porting over my company's intranet to OpenACS.
I'm polishing off the calendar package and am now trying to make calendar-portlet run smoothly with the calendar package. I'll post a Call For Help a little later this week detailing where I need help.
State Of The Codebase
Daily files commited/touched in HEAD by all committers:
2003-09-09 :: 42
2003-09-10 :: 57
2003-09-11 :: 117
2003-09-12 :: 76
2003-09-13 :: 165
2003-09-14 :: 2
2003-09-15 :: 0
2003-09-16 :: 15
2003-09-17 :: 101
2003-09-18 :: 390
2003-09-19 :: 140
2003-09-20 :: 372
2003-09-21 :: 1
2003-09-22 :: 38
We currently have 231open bugs (down 55) and 37open patches (down 84)!
That is a very interesting development to the better in the debugging department if I may say so. It is also clear that much of the development effort is done for pay, as the middle of the week is where the effort was concentrated in the last two weeks.
Speaking of the codebase, then Peter Marklund reports that the translation server has been updated to the latest sources on CVS HEAD.
And finally, for those who may not yet have noticed, we have a new member of our community. Well, sort of at least. Earlier today Worker Bee was added to the openacs.org members list, and Lars Pind started to assign bugs to 'it'. Currently the list has 15 entries, but is growing as I write this. At least some of these bugs seem superficially simple to fix, and I suspect this is the idea. Bugs, that may be time consuming but not particularly hard, are assigned to Worker Bee, so that anyone can have a go at them. Comments, Lars?
We Danes, always eager to adapt to new trends and technologies, had a bit of fun earlier today, and still have in some places. In style with the best of american traditions we participated in a fairly large blackout of the electric grid, the largest in 20 years. Starting at 12:30PM local time (06:30EST) the electric power on the main islands of Sealand and Bornholm, together with most of the southern part of Sweden, went completely out. More than 1 1/5 million Danes (28% of the population) were affected, including all of the capitol of Copenhagen. However I'm happy to be able to report, that as of right now Collaboraid HQ seems back up in full gear.