There are a number of proposals that I would like to make. Being that I haven't submitted any proposals in the past, I'm not 100% sure how to go about doing it. Here are the basics. Whether these are for 4.0 or not is definitely not critical.
Proposal 1: Entry ratings and "Featured Posts" Every entry has a five star rating that, together with the total comment count and a random weighting is used to generate a listing of "Featured Posts" that are displayed on the homepage. A date range for posts considered can be set (e.g. posts from the last week, last two weeks, last month, etc). The maximum number of posts that can be featured is 30 (our homepage only shows 4). The selection of featured posts changes every time the method is called and is largely non-deterministic. Entries with the highest ratings and comment counts have a greater chance of being featured. The implementation is fairly simple. * New DB table called roller_weblogentry_rating * New getRating/setRating on WeblogEntryData * WeblogManager has new saveWeblogEntryRating and getWeblogEntryRating methods * RatingServlet processes the requests for setting and rendering the five star ratings (ajax) * weblog.vm macro injects the code necessary to render the ratings * Additions to roller.js to process the ratings (ajax) Proposal 2: "My Activity" Page In the previous IBM blogging environment, we had two views that listed comments to my posts and follow-ups to my comments on other posts, respectively. In the current version, I have merged these into a single view that shows all comments to all entries that I have either posted or commented on. An ActivityServlet mapped to .../roller-ui/activity serves the page which is rendered using an _Activity.vm template in the default homepage blog theme. Currently, the page requires authentication to determine the identity of the requesting user so their "watched threads" can be selected. A feed showing this data is also available. Proposal 3: StatisticsManager I have implemented a new StatisticsManager component that provides a number of extended features that can be surfaced in a variety of ways. * Count of total entries, users, websites, tags, new entries/comments/websites today/this week. * Breakdown of users per email domain (we use this to track the geographic diversity of our blogging environment) * Charting the growth of the system over time * number of entries per day, cumulative entries * number of comments per day, cumulative comments * number of tags per day, cumulative tags * number of websites created per day, cumulative sites * Charting the "decay" (rate of abandonment) of the system * Retrieving a list of tags similar to a given tag (sql: tag like '%{tag}%') * Retrieving a list of tags related to a given tag (tags used frequently with {tag}) * Retrieving a list of users who frequently use a given tag ("tag experts") * Retrieving a list of users who frequently comment on a given users entries * Retrieving a list of blogs that frequently use the same tags as a given blog A new statistics servlet mapped to .../roller-ui/statistics uses a _Statistics.vm template in the default homepage theme to render the stats. Our current implementation uses the Dojo charting implementation to render the various graphs. Similar tags, related tags and "tag experts" are displayed in the sidebar when viewing entries for a given tag The listing of frequent commenters shows up in the "My Activity" page (Proposal 2 above) A listing of related blogs can show up in the sidebar of a blog. A listing of related entries can show up in the sidebar of a blog entry page. Proposal 4: User and Blog Search In addition to searching posts, we have enabled the ability to search for blogs and users based on variety of criteria. I have not yet fully ported this over from our old environment to our new Roller 3/Lotus connections impl but the basic idea is to extend the search indexer to support creating Lucene indexes for blogs and users. Ideally, the user indexer would be capable of optionally pulling in index data from external sources (e.g. an LDAP registry). The type of searches we want to enable include finding all blogs for users within a given geography, or corporate division, or department, etc. Again, this has not yet been fully implemented. Proposal 5: Language Filtering This has not yet been implemented, but we would like the ability to filtering the home page listing of entries by language. Proposal 6: Atom Threading Extensions support We have added support for the Atom Threading Extensions (RFC 4685) to the Atom feeds produced (entry and comment feeds) Proposal 7: Atom Bidi Attribute support We have added support for the draft Atom Bidi Attribute specification for entries that are marked as "Right-to-Left"... e.g., <entry dir="rtl"> ... </entry> That's it for now. For most of these, we would need to execute a code grant. Before I start that process, however, I need to know if y'all are interested in these. - James Dave wrote: > I just updated the Roller 4.0 proposal page and linked to all > proposals and JIRA issues that are related to the release. Please take > a look and make sure your proposals and issues are represented > correctly. Did I leave anything off the list? > > I'd like to set a code-freeze date for Roller 4.0 or at least get an > idea of when we'll have a chance of frost. I know how hard that can be > with competing priorities, legal holdups and such but it would be > wonderful if we could sync up enough to all be testing around the same > time. > > So committers: Can you estimate when your 4.0 work will be feature > complete? > > I think I can be done by mid to late April. > > - Dave >