Over the past year I've been working on a 2.x branch for the Purge module. It will be a major upgrade from the 1.x series and will make giant leaps in human and technical usability. These new functionality will not be backported to 1.x by me but I welcome patches to improve it. A bugfix release of the 1.x branch will follow at some point but scarse development time will be put into the new branch first.

Configuration storage in variables. (95% done)
The individual proxy configurations are stored as serialized objects in a Drupal variable. This allows for a great many extra options without the hackish proxy url scheme. Individual proxy configuration allow for adding custom domains and headers and settings advanced options like parallel execution and nonblocking requests. You can easily combine multiple proxy configurations. Also removes the configuration size limits imposed by the 1.x scheme improving scalability.
Todo: upgrade from 1.x, system and template configurations.

Admin Gui. (80% done)
The spartian configuration by the non intuitive proxy URL scheme wil be replaced by a spiffy gui that allows to edit proxy configurations through detailed forms.

Dependencies and integration (90% done)
Purge 2.x will have no dependencies. The Expire module integration is now optional. The dependency on the Curl library is dropped by adding support for the Httprl module and the native drupal_http_request. All these will have options to send purge requests one at a time. Curl and Httprl can issue requests in parallel. Httprl can issue nonblocking requests.

API to allow other contrib modules to interact with Purge. (80% done)
- Auto discovery of certain purge enabled platform. (doable for Acquia platforms).
- Adding extra domains, headers and form elements for more platforms. (like fastly)

Documentation and inline help. (10% done)
Readme.txt should be updated, as well as the Project page, the Varnish documentation handbook pages. May end up adding advanced help.

Q2 2014 update: I've adapted the description above. Rewrote most of the code into a more OO module. It has been stabilizing over the past few weeks. Dev releases are still unstable but can be informative to the curious.


Firemyst’s picture

Is there an update for 2.x? I haven't seen anything on the dev branch since May.

Chris Charlton’s picture

+1 on another update post, please. :)

steverweber’s picture

+1.. would love to see support for the Httprl module and none blocking calls.

SqyD’s picture

Sorry to keep you all waiting so long. It's been a wild year so far. Here's your long awaited update:
- 2.x is slowly getting into shape.
- Do expect large changes that break things on the configuration side of things so just for playing around and no production use yet....Will role and alpha release in the coming few days. This should contain:
- Fancy Admin UI section. Allows to set custom domains, headers, url's, methods etc.
- Using suboptimal database tables for configuration storage. (needs refactoring)
- API that allows for other contrib modules to (re)configure the module, add domain, headers and custom request handlers.
- Buildin request handlers for drupal_http_request(so slow and limited by design), curl(single,multi and a legacy multi version), httprl and guzzle.
- Optional watchdog logging.
- Silly example module for API integration at https://drupal.org/sandbox/sqyd/1963962

Todo still before Beta release:
- Simplify configuration storage.
- Add caching mechanism for active configuration.
- Provide more inline help, installation hints, advanced help integration etc.
- Update documentation.
- Apply for America's Next Top Module (tm)

Acquia specific Purging stuff will be handled by the Acquia Purge module. available at http://drupal.org/project/acquia_purge
The current 1.x branch of this module replaced Purge 1.x as the recommended way to accommodate your purging desires on the Acquia platforms.
Purge 2.x will provide the API that acquia_purge 2.x and other modules can use to build on top of Purge and provide zero conf and platform specific features. This way Acquia Purge 1.x will provide a sustainable upgrade path.

SqyD’s picture

Issue summary: View changes
achton’s picture

Any updates to be had here? What is the best way to help?

I am very interested in a way to un-block purge requests towards Varnish, and am keen to get to play around with the first beta. What is the current state of affairs?


SqyD’s picture

Status: Active » Postponed

Safe to say this 2.x release is not going to see the light of day anytime soon, maybe never.
Current state of the module is a mess. Still in between iterations of my flawed object (storage) ideas. I've just released betas of 1.7 for both D6 and D7 instead. For now I'm declaring the 2.x branch Experimental. May end up backporting some of the stuff in D8 version back to 7.x or even take some of the features in 2.x back to 1.x.
Sorry to keep all of you waiting for so long but I've got to admit that I've painted myself in the corner...