Release plan as of March 16, 2018:
Functionality:
- #2920850: Purge by Cache Tags
- #2950934: Purge by CP code
- #2950936: CCUv3 Support
- #2950938: Update Akamai Open EdgeGrid Client
- #2969673: CCUv3 Support issues with purger
- #2972770: Notify user of 128-character cache tag limit
- #2979939: Support "path" purge type in purger plugin
- #2989183: Fast Purge URLs Without Hostname
- #3001392: Use own log table instead of key_value table
- #3011795: Cache tag header blacklist
- #3025929: Create Events before Header and Purge request to allow for custom solutions for unique sites.
- #3122425: Akamai "Edgescape" Support
- #3244366: Remove URL validation when invalidating cache
- #3244467: Pivot to PHPUnit for tests
Bug fixes and cleanup
- #2950260: Unit tests aren't running
- #2969270: Out-of-date class requirements prevents installation
- #2972390: Call to undefined method AkamaiClientV3::getQueueLength
- #2950940: Resolve and Refactor Tests
- #2953704: Drupal Coding Standards
- #2971805: Unexpected error when .edgerc path is invalid
- #2972155: rest_api_url overrides host from .edgerc
- #2973148: PHP errors for uncaught Guzzle exceptions
- #3009007: Invalid state when purging with cache tags causing WSOD
- #3011797: Remove Devel Mode
- #3013405: Warning: Invalid argument supplied for foreach() in akamai_cron() (line 22)
- #3028666: Remove drupal_set_message references
- #3028687: Akamai Purge Status Fails Ungracefully
- #3052782: Broken link in CacheControlForm.php
- #3067692: The purger getTimeHint either returns 1.0 or 10.0 and not the config value
- #3067694: Numeric cache tags give troubles with the current AkamaiTagPurger
- #3071396: Deprecation issues
- #3071448: PHP warning when on "Akamai Purge Status" page with no configured service
- #3073089: Dependency namespacing in .info.yml file
- #3106675: Composer core restraint prevents module from installing on D9
- #3128450: Cron stalling with large number of purge statuses
- #3129474: Akamai module still emits requests when killswitch is enabled.
- #3160840: Remove CCUv2 Support
- #3197309: Can't purge existing file. Error: "path is invalid and does not exist on the site."
- #3109878: Remove redundant "isAuthorized" check
- #3171615: Need Current Up-To-Date Documentation
- #3128033: Akamai menu link appearing when user doesn't have permission
- #3244503: Update purge module dependency
Security:
Comments
Comment #1
barrett commentedThis will definitely need a Drupal 8 version. I can't speak for @febbraro, but starting the process of converting is relatively high on my to-do list. At the moment there are several issues in progress for the D7 branch though, so I think it makes sense to get those resolved and integrated before starting serious work on D8.
Comment #2
barrett commentedI've cut an 8.x-1.x branch in the repo and am working on getting the current functionality ported over.
Comment #3
damienmckennaLets focus this on identifying what should be in a 8.x-3.x release.
Comment #4
cameron tod commentedSo the 8.x branch is pretty stable at the moment but doesn't do a lot. It's wholly dependent on integration with Purge for any automated clearing functionality.
I am in touch with Product Managers at Akamai and they have some new features coming soon which will be very beneficial for D8 sites. I'd like to include those features in any official release. Once the feature roadmap goes public from Akamai I'll make a similar roadmap for a fully supported 8.x-3.0.
Comment #5
krlucas commentedNot sure if this qualifies as a public roadmap for Akamai but here is a community post about new and upcoming features:
https://community.akamai.com/community/web-performance/blog/2017/05/15/e...
If I am reading the post correctly, most importantly for D8 (IMO) is that purging by cache tag is now in beta with general availability scheduled for January 2018.
Comment #6
WidgetsBurritos commentedI'd like to propose the follow issues as being in scope as part of the 8.x-3.x branch.
Functionality:
Security:
I know @jtsnow had created a D7/D8 feature matrix and I think there are definitely some items in there not included in my list above that should be considered as well.
Basically at this point, I'm just trying to get the ball rolling again.
** edited March 7, 2018 at 12:42PM CST to link to actual issues **
Comment #7
pobster commentedBatching the purge requests might be nice too (to avoid the API request size limit), but other than that inclusion ~ this sounds like a good plan.
Comment #8
WidgetsBurritos commented@pobster: Good call. I've created #2950942: Purge request batching for that.
Comment #9
WidgetsBurritos commentedUpdating the issue summary with a list of issues currently tied to the release.
Comment #10
WidgetsBurritos commentedBased on work done in #2741225: Encrypt Akamai API credentials so they are not stored in plain text we will need to make sure we annotate that alpha2 is going to be a BC release. The database authentication method is no longer available. That means people will either need to install the key module or configure an .edgerc file for authentication.
Comment #11
WidgetsBurritos commentedAdding #3067694: Numeric cache tags give troubles with the current AkamaiTagPurger to the release plan
Comment #12
WidgetsBurritos commentedAs this has taken us a bit longer than originally anticipated, I'm proposing to embrace semantic versioning and shoot for 4.0.0 instead of 8.x-3.0.
Also adjust the IS to include some other issues that have been completed.
Comment #13
WidgetsBurritos commentedAdding #2972770: Notify user of 128-character cache tag limit
Comment #14
WidgetsBurritos commentedAdding #3160840: Remove CCUv2 Support
Comment #15
WidgetsBurritos commentedAdding #3001392: Use own log table instead of key_value table to stable release plan as it's got some major performance implications.
Comment #16
iamfil commentedCould we have a release of this module without #2741199: Display warnings when admin page accessed over HTTP instead of HTTPs and #2738995: Security concerns being addressed? I'm not suggesting they are not important, but at this point I would say that having a stable release without legacy code and support for D9 is more important.
Comment #17
pobster commentedComment #18
bighappyface commentedDropping from release: #2741199: Display warnings when admin page accessed over HTTP instead of HTTPs
Comment #19
WidgetsBurritos commentedI've tagged a 4.0.0-alpha1 release, which is exactly the same as 8.x-3.0-alpha 9 so we can switch to semantic versioning: https://www.drupal.org/project/akamai/releases/4.0.0-alpha1
It appears the drupal.org queue is a bit backed up so it may take a bit for it to finish making the release available, but it's at least been queued up.
Comment #20
WidgetsBurritos commentedComment #21
WidgetsBurritos commentedRemoving #3201432: Error "You need to provide non-default credentials for this module to work."
Comment #22
WidgetsBurritos commentedAdding #3128033: Akamai menu link appearing when user doesn't have permission
Comment #23
WidgetsBurritos commentedComment #24
WidgetsBurritos commentedComment #25
WidgetsBurritos commentedHaving spent the last couple of days going over the issue queue with @bighappyface, we have determined we're now in a relatively good spot for a stable release, pending the completion of updated documentation in #3171615: Need Current Up-To-Date Documentation.
At this point, many sites and applications are relying on this module in production environments, and we really need to get it under security advisory coverage. We're hoping to wrap that up soon (maybe even today). This process has taken us way longer than we originally anticipated due to limited availability, but I think it will be great to have this behind us soon.
Comment #26
WidgetsBurritos commentedPulling the trigger on this. Thank you everybody for your contributions.