Given that Ian and myself (and possibly others) are going to be putting some coding time into this project, we should align our purposes.

Briefly, my goals are:

  • Insure better stability by closing bugs, providing stronger documentation around rewrite rules
  • Get a solid Drupal 6 version out
  • Explore the possibilities of more intelligent cache expiration, pre-caching, etc
  • Explore the possibilities of targeted caching for logged-in users (e.g. for specific paths, etc)
  • Increase accessbility by including contributed code for other webservers (e.g. ngineX)

I'm also very much interested in doing a charm offensive, as I think the architecture of Boost makes it an invaluable tool in any professional Drupal toolkit. In the spirit of poormanscron, it is the poor-man's Squid (or maybe the poor-man's varnish?) :)

Let's use this thread to try and publicly hash out a roadmap, eh?

Comments

mikeytown2’s picture

Category: task » feature

These are the requirements I see for a stable 6.x-1.0 release: (Top - Most Important; Bottom - Least Important)



Things that would be nice if they made it into the stable 6.x-1.0 release:

Did I miss anything?

patataur’s picture

Title: Roadmap For Development » Roadmap For stable 6.x-1.0

@ mikey and joshk

That's a nice roadmap.

To help you in the way i'd suggest to rank each of those additionnal options/requirements with difficulty to sort them out, usefulness for boost (how much better would it make boost) and usefulness for boost users (how many need this additionnal feature and how badly do they need it).

This may help in focusing on the most essential features first to include in the next stable release.

mikeytown2’s picture

Most of the issues in the first group have patches that need to be reviewed; thus difficulty is not that bad. I Reordered lists so it is by priority/usefulness for boost.

mikeytown2’s picture

By the end of the week I plan on releasing the next dev which will contain the majority of the above patches... Big issue has to do with the new .htaccess rules and letting people know they need to update their old rules. Any ideas on how to get the word out about new boost rewrite rules?

patataur’s picture

@ Mickey

Congrats for the soon to be released new dev.

About the update rules, how about a check box in the performance page asking : "have you added the following lines to your htaccess to make this module work?" Yes and No. Unless people click yes it will ask them to update the htaccess.

If they click yes but have not updated then what more can we do for them?

xn2001’s picture

May I add: Regenerate page only if there are changes.

mikeytown2’s picture

@xn2001
That would be a full implementation of this #413908: Cache js/css files, allow for a "static" site. It would allow for your request, although things like views that aggregate the content wouldn't get updated until they where cleared. So it can lead to some seriously stale content; because one forgets about all the pages that link to the page that changed.

mikeytown2’s picture

Category: feature » task

Next steps:

Fix new bugs/issues
#513924: Cache not expired if edit managed directly from content list
#513860: Wrong redirect after user registration.
#509942: clear cache on comment approval
#518288: Array issues
#519354: boost_cache_write() overwriting cached gzip files
#459956: Flush front page when node is edited/created with promote to front page selected.
#525494: boost_stats.php undefined index on line 77
#512314: premature cache flush when cron run via poormanscron 1.0; latest poormanscron dev fixes issue.
#530572: PHP Notice: Undefined index: HTTP_USER_AGENT on line 85
#482000: %{DOCUMENT_ROOT} not set correctly on Mosso hosting.
#530772: Work with Pressflow drupal
#531100: Add verbose setting for watchdog messages
#537186: Better prevention of URL collisions.

Fully support stats
#503628: AJAX Load stats
#506906: Support node read count display
#505766: Does this support the Who's online block?

Cache More
#512298: Cache JSON AJAX Objects
#514156: disable clean url's for all logged in users; allow for browser to cache pages.

Improve DB
#453426: Merge Cache Static into boost - Create GUI for database operations - Add in ID/Speed column, fix multi-site issue, add settings to boost block.
#538418: Add url field to DB

...RC1 is around here...

Smarter Cache Expiration
#453908: Hook for panel node types - expiration of static cache; panel containing multiple nodes - Focus on terms.

Internal Crawler
#337391: Setting to grab url's from url_alias table.
#538460: Auto Regenerate Cache (pre-caching) Preemptive Cron Cache - throttle & crawl rate stats

UI
#507412: Usability: "Reset boost database" button is unclear
#428942: AHAH update textarea for .htaccess rules on performance >> boost page.

mikeytown2’s picture

Next round - In queue for RC3. Due to be out in early September.

Support Other Web Servers
#150909: Lighttpd rewrite rules wanted
#244072: Nginx integration

Bug Fixes
#543734: Error with mysqli_real_escape_string when adding content
#544002: Clear cache button on admin page has wrong count
#544476: Stop Crawler button shows incorrect values
#544636: boost_requirements() check gz dir as well
#543840: Remove entries from boost_cache table if page returns 404 or 403
#535932: Combine Readme & Install text. Make note of boost_stats.php
#545922: Boost node_load & CCK cache issues
#546704: *Spell Check*
#550198: Allow block to be displayed on edit page
#549126: db_query_range() should be db_query() on line 1471
#559480: Crawler & Do not cache if error on page variable cache db atomic issues
#543250: CSS aggregation + gzip compression
#512314: premature cache flush when cron run via poormanscron 1.0; latest poormanscron dev fixes issue.
#560284: Document ':' doesn't work on windows. If windows check for bad characters in boost_is_cacheable() function
#563408: flush all caches before releasing RC3
#563380: all normal, crawler starts, then access denied
#563814: work with parallel
#564042: Generate requirements error when language negotiation set to "language fallback"

New Feature
#543310: Split boost block into 2 blocks
#528506: Better Detect GZIP Compression
#543280: serve CSS and JS to logged in users
#337391: Setting to grab url's from url_alias table.
#541658: Bypass cron expiration & load to be expired urls into crawler
#537186: Better prevention of URL collisions.
#539580: boost_stats.php - Use Request Headers to determine return type
#546732: Detect site-wide changes
#337756: Rewrite boost_is_cacheable() to use core API functions.
#546850: Next round of .htaccess changes. Getting these "perfect" is the goal.
#547944: Reorganize performance/boost page
#337756: Rewrite boost_is_cacheable() to use core API functions.
#559408: Add verbose setting for crawler watchdog messages
#559396: Boost crawler - Live info: Display ETA
#560892: Better way to spin up threads on demand.
#561992: Reseed boost_crawler table at end. Make sure we got all URL's.
#563412: move most of path checking from boost_file_path() to boost_is_cacheable()

RC4
Bug Fixes:
#564914: New Install, crawler key missing
#564990: divide by zero error if looking at performance/boost page right after crawler starts
#565640: Cache only the listed pages not working

mikeytown2’s picture

Status: Active » Fixed

1.0 Released today; track boost progress in this thread #575840: 6.x Roadmap

mikeytown2’s picture

Just for kicks, I decided to see what functions where left the same from alpha1; here are the results.

function hook_taxonomy() {
function hook_theme() {
if (!function_exists('file_put_contents')) {
function boost_disable() {

Only 4!

dbeall’s picture

!! 1.0 Celebration !!
It has been a long tedious road, just look at the cvs..
@mikeytown2, you have been in pursuit for many endless hours...
Congratulations

Status: Fixed » Closed (fixed)

Automatically closed -- issue fixed for 2 weeks with no activity.