Skip to content

[6.x] Asset transformers - #19464

Merged
brandonkelly merged 56 commits into
6.xfrom
feature/asset-transformers
Aug 28, 2026
Merged

brandonkelly merged 56 commits into
6.xfrom
feature/asset-transformers

Conversation

@riasvdv

@riasvdv riasvdv commented Aug 20, 2026

Copy link
Copy Markdown
Contributor

@github-actions

github-actions Bot commented Aug 20, 2026

Copy link
Copy Markdown

📚 Storybook previews

@craftcms/uiopen Storybook

No changed components detected in this Storybook.

resources/jsopen Storybook

No changed components detected in this Storybook.

@riasvdv
riasvdv force-pushed the feature/asset-transformers branch from 7427360 to 4c98c53 Compare August 20, 2026 07:26
@riasvdv riasvdv changed the title [6.x] Remove obsolete core image transform architecture [6.x] Asset transformers Aug 20, 2026
@riasvdv
riasvdv force-pushed the feature/asset-transformers branch from 7a6c7e5 to b52cb20 Compare August 20, 2026 12:08
@riasvdv
riasvdv changed the base branch from 6.x to feature/port-create-volume-inertia August 20, 2026 12:08
Base automatically changed from feature/port-create-volume-inertia to 6.x August 21, 2026 06:19
@riasvdv
riasvdv force-pushed the feature/asset-transformers branch from 332aff6 to 87047e0 Compare August 22, 2026 14:40
@riasvdv
riasvdv changed the base branch from 6.x to feature/asset-upload-button August 22, 2026 14:40
@riasvdv
riasvdv force-pushed the feature/asset-transformers branch from 87047e0 to 61efb76 Compare August 22, 2026 14:41
Base automatically changed from feature/asset-upload-button to 6.x August 22, 2026 18:09
@riasvdv riasvdv changed the title [6.x] Asset transformers [6.x] Asset processors Aug 24, 2026
@riasvdv
riasvdv marked this pull request as ready for review August 24, 2026 13:58
@riasvdv
riasvdv requested a review from timkelty August 24, 2026 16:02

@timkelty timkelty left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

FYI: I only reviewed the spec doc, not the implementation.

I’m not sold on some of the terminology:

  • processor reads like a new synonym for transformer. transform and transformer may carry baggage, but they’re established terms and clearly describe the relationship.

I understand why the model needs three levels, but names rooted in the existing transform terminology feel clearer:

  • AssetTransform / AssetTransformRequest
  • AssetTransformer
  • AssetTransformDriver

rendition feels awkward. It doesn’t appear in the public API and only occurs in production code in an error message. What about transform result, output, or even variant (Commerce Variants)?

operations and operationFields feel awkward. options / optionFields, settings, config feel more natural. “Operations” also seems to suggest discrete steps applied in succession, but these appear to be parameters that are normalized and passed to the driver.

Comment thread docs/asset-processors.md Outdated
Comment thread docs/asset-processors.md Outdated
Comment thread docs/asset-processors.md Outdated
Comment thread docs/asset-processors.md Outdated
Comment thread docs/asset-processors.md Outdated
Comment thread docs/asset-processors.md Outdated
@riasvdv
riasvdv requested a review from timkelty August 26, 2026 08:05
@riasvdv riasvdv changed the title [6.x] Asset processors [6.x] Asset transformers Aug 26, 2026
Base automatically changed from feature/confirm-delete to 6.x August 28, 2026 19:23
…mers

# Conflicts:
#	yii2-adapter/legacy/config/GeneralConfig.php
@github-actions

Copy link
Copy Markdown

This PR had conflicts with 6.x. Claude attempted an automatic resolution and pushed a merge commit. Please review the merge commit carefully before approving/merging.

Claude's response

Merge resolved, committed as 8ada12f, and pushed.

Summary for review:

There was a single conflicted file, yii2-adapter/legacy/config/GeneralConfig.php, with one conflict hunk just above the $filename property. The two sides were doing unrelated things: 6.x (d996dea, "Move @web alias support to Yii 2 adapter") added the $resourceBasePath and $resourceBaseUrl properties there, while this branch had only reflowed the adjacent docblock (@inheritdoc{@inheritdoc}, part of the branch-wide code-style pass that also added $generateTransformsBeforePageLoad). I kept both: the two new properties from 6.x, followed by the {@inheritdoc} docblock form used consistently everywhere else in this branch's copy of the file. The corresponding resourceBasePath()/resourceBaseUrl() fluent setters from 6.x auto-merged and are intact.

Nothing here was ambiguous, so no CONFLICT-REVIEW: comments were needed. Note that php -l can't validate this file in this environment (local PHP is 8.3 and the file uses 8.4 property hooks that were already on the branch pre-merge), so verification was done by diffing the resolved file against both sides — it is exactly this branch's version plus the two 6.x properties and their two setters, with no other change.

@brandonkelly
brandonkelly merged commit 02eb3c1 into 6.x Aug 28, 2026
@brandonkelly
brandonkelly deleted the feature/asset-transformers branch August 28, 2026 23:15
@github-actions

Copy link
Copy Markdown

This PR had conflicts with 6.x. Claude attempted an automatic resolution and pushed a merge commit. Please review the merge commit carefully before approving/merging.

Claude's response

Merge completed and pushed.

Summary

No conflicts existed. Despite the task description, git status reported "All conflicts fixed but you are still merging," and verification confirmed there was genuinely nothing to resolve:

  • HEAD (c918975, "Move immediate transform control to Craft driver") is a strict ancestor of MERGE_HEAD (02eb3c1, the 6.x merge commit for [6.x] Asset transformers #19464) — git merge-base HEAD MERGE_HEAD returns HEAD itself, and git log MERGE_HEAD..HEAD is empty.
  • Every commit on this feature branch was already merged into 6.x via [6.x] Asset transformers #19464, so the merge only fast-forwards 55 commits of 6.x onto the branch. The merge was set up with --no-ff, which is why a merge commit was still pending rather than a fast-forward.
  • An independent recomputation with git merge-tree --write-tree HEAD MERGE_HEAD produced a clean tree with no conflict report, and that tree hash is byte-identical to both the staged index tree and MERGE_HEAD^{tree}. No conflict markers exist in the index or working tree, and there were no dirty or untracked files.

I made no edits — there was nothing ambiguous to resolve and therefore no CONFLICT-REVIEW: comments to leave. I ran git add -A (a no-op), git commit --no-edit (creating merge commit 4e24bdb), and pushed.

One thing worth a human's attention: the push reported * [new branch] HEAD -> feature/asset-transformers. The remote branch did not actually exist — it appears to have been deleted after #19464 was merged, and the local checkout was tracking a stale remote-tracking ref. So this push recreated the remote branch rather than updating it. The branch now points at a merge commit whose tree is identical to 6.x's. If that branch was intentionally deleted post-merge, someone may want to delete it again.

@linear-code

linear-code Bot commented Aug 29, 2026

Copy link
Copy Markdown
Contributor

CMS-2352

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants