ampproject / ampproject/amp-toolbox

To discuss: bundle AMP Runtime in AMP Optimizer releases

Open
#973 3 comments 0 reactions 0 assignees View on GitHub
Dominant language
HTML
Stars
459
Forks
242
PR merge metrics
No merged PRs in 30d

Description

AMP Optimizer requires a few AMP runtime artifacts to run effectively (validator rules, v0.css,...). Before performing a transformation these need to be downloaded which has a few downsides:

* first transformation is going to take longer
* AMP Optimizer requires an internet connection to work (e.g. doesn't work in development when offline).

To mitigate this Optimizer:

1. downloads artifacts once and will only check for a new version once the max-age has expired.
2. downloads artifacts at install time to ensure that transformations can be performed even when offline.

These two solve the problem mentioned above, but in particular the postinstall step has disadvantages such as #966 + increases the install time.

One way to fix this would be to bundle the latest AMP runtime artifacts with each Optimizer release as fallback instead. The problem with this approach is that runtime artifacts might get outdated and we need to ensure regular (automated with every AMP release?) releases.

Contributor guide

Open the contributing guide

Research direction

Start by reading the AMP Optimizer release and install behavior described here, including the postinstall concern in #966. Determine whether bundling AMP runtime artifacts or automating releases with AMP updates is feasible; done would require an agreed approach that avoids the offline and install-time drawbacks without leaving artifacts outdated.

Written by the indexing model from the issue text.

Assessment

Domain
release, tooling
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.