Shorten processed image filenames - hugo - [fork] hugo port for 9front
HTML git clone git@git.drkhsh.at/hugo.git
DIR Log
DIR Files
DIR Refs
DIR Submodules
DIR README
DIR LICENSE
---
DIR commit 216a69a1ef8c9f8efdec55e3680b7734a1fd52f4
DIR parent e67886c038dc79755c14ec77bbeff6605953f9ef
HTML Author: Bjørn Erik Pedersen <bjorn.erik.pedersen@gmail.com>
Date: Tue, 30 Jul 2024 16:47:16 +0200
Shorten processed image filenames
Fixes #12688
Fixes #12656
Diffstat:
M common/hashing/hashing.go | 2 +-
M common/hashing/hashing_test.go | 25 +++++++++++++++++++++++++
M hugolib/hugo_sites_multihost_test.… | 4 ++--
M hugolib/image_test.go | 18 ++++++++----------
M hugolib/pagesfromdata/pagesfromgot… | 2 +-
M hugolib/resource_chain_test.go | 4 ++--
M resources/image.go | 36 +++++++------------------------
M resources/image_extended_test.go | 2 +-
M resources/image_test.go | 34 ++++++++++++++++----------------
M resources/resources_integration_te… | 13 +++++++------
R resources/testdata/golden/giphy_hu… | 0
R resources/testdata/golden/giphy_hu… | 0
R resources/testdata/golden/giphy_hu… | 0
R resources/testdata/golden/gohugoio… | 0
R resources/testdata/golden/gohugoio… | 0
R resources/testdata/golden/gohugoio… | 0
R resources/testdata/golden/gohugoio… | 0
R resources/testdata/golden/gohugoio… | 0
R resources/testdata/golden/gohugoio… | 0
R resources/testdata/golden/gohugoio… | 0
R resources/testdata/golden/gohugoio… | 0
R resources/testdata/golden/gohugoio… | 0
R resources/testdata/golden/gohugoio… | 0
R resources/testdata/golden/gohugoio… | 0
R resources/testdata/golden/gohugoio… | 0
R resources/testdata/golden/gohugoio… | 0
R resources/testdata/golden/gohugoio… | 0
R resources/testdata/golden/gohugoio… | 0
R resources/testdata/golden/gohugoio… | 0
R resources/testdata/golden/gohugoio… | 0
R resources/testdata/golden/gohugoio… | 0
R resources/testdata/golden/gohugoio… | 0
R resources/testdata/golden/gohugoio… | 0
R resources/testdata/golden/gohugoio… | 0
R resources/testdata/golden/gohugoio… | 0
R resources/testdata/golden/gohugoio… | 0
R resources/testdata/golden/gohugoio… | 0
R resources/testdata/golden/gohugoio… | 0
R resources/testdata/golden/gohugoio… | 0
R resources/testdata/golden/gohugoio… | 0
R resources/testdata/golden/gohugoio… | 0
R resources/testdata/golden/gohugoio… | 0
R resources/testdata/golden/gohugoio… | 0
R resources/testdata/golden/gohugoio… | 0
R resources/testdata/golden/gohugoio… | 0
R resources/testdata/golden/gohugoio… | 0
R resources/testdata/golden/gohugoio… | 0
R resources/testdata/golden/gohugoio… | 0
R resources/testdata/golden/gohugoio… | 0
R resources/testdata/golden/gohugoio… | 0
R resources/testdata/golden/gohugoio… | 0
R resources/testdata/golden/gohugoio… | 0
R resources/testdata/golden/gohugoio… | 0
R resources/testdata/golden/gohugoio… | 0
R resources/testdata/golden/gohugoio… | 0
R resources/testdata/golden/gohugoio… | 0
R resources/testdata/golden/gohugoio… | 0
R resources/testdata/golden/gohugoio… | 0
R resources/testdata/golden/gohugoio… | 0
R resources/testdata/golden/gohugoio… | 0
R resources/testdata/golden/gohugoio… | 0
R resources/testdata/golden/gohugoio… | 0
R resources/testdata/golden/gohugoio… | 0
R resources/testdata/golden/gohugoio… | 0
R resources/testdata/golden/gohugoio… | 0
R resources/testdata/golden/gohugoio… | 0
R resources/testdata/golden/gohugoio… | 0
R resources/testdata/golden/gohugoio… | 0
R resources/testdata/golden/gohugoio… | 0
R resources/testdata/golden/gohugoio… | 0
R resources/testdata/golden/gohugoio… | 0
R resources/testdata/golden/gopher-h… | 0
R resources/testdata/golden/gopher-h… | 0
R resources/testdata/golden/gopher-h… | 0
R resources/testdata/golden/gopher-h… | 0
R resources/testdata/golden/gradient… | 0
R resources/testdata/golden/gradient… | 0
R resources/testdata/golden/gradient… | 0
R resources/testdata/golden/sunset_h… | 0
R resources/testdata/golden/sunset_h… | 0
R resources/testdata/golden/sunset_h… | 0
R resources/testdata/golden/sunset_h… | 0
R resources/testdata/golden/sunset_h… | 0
R resources/testdata/golden/sunset_h… | 0
R resources/testdata/golden/sunset_h… | 0
R resources/testdata/golden/sunset_h… | 0
R resources/testdata/golden/sunset_h… | 0
R resources/testdata/golden/sunset_h… | 0
R resources/testdata/golden/sunset_h… | 0
R resources/testdata/golden/sunset_h… | 0
R resources/testdata/golden/sunset_h… | 0
R resources/testdata/golden/sunset_h… | 0
R resources/testdata/golden/sunset_h… | 0
R resources/testdata/golden/sunset_h… | 0
R resources/testdata/golden/sunset_h… | 0
R resources/testdata/golden/sunset_h… | 0
R resources/testdata/golden/sunset_h… | 0
R resources/testdata/golden/sunset_h… | 0
R resources/testdata/golden/sunset_h… | 0
R resources/testdata/golden/sunset_h… | 0
R resources/testdata/golden/sunset_h… | 0
R resources/testdata/golden/sunset_h… | 0
R resources/testdata/golden/sunset_h… | 0
R resources/testdata/golden/sunset_h… | 0
R resources/testdata/golden/sunset_h… | 0
R resources/testdata/golden/sunset_h… | 0
R resources/testdata/golden/sunset_h… | 0
R resources/testdata/golden/sunset_h… | 0
R resources/testdata/golden_webp/fuz… | 0
M resources/transform_test.go | 8 ++++----
M tpl/resources/resources_integratio… | 2 +-
111 files changed, 77 insertions(+), 73 deletions(-)
---
DIR diff --git a/common/hashing/hashing.go b/common/hashing/hashing.go
@@ -27,7 +27,7 @@ import (
)
// XXHashFromReader calculates the xxHash for the given reader.
-func XXHashFromReader(r io.ReadSeeker) (uint64, int64, error) {
+func XXHashFromReader(r io.Reader) (uint64, int64, error) {
h := getXxHashReadFrom()
defer putXxHashReadFrom(h)
DIR diff --git a/common/hashing/hashing_test.go b/common/hashing/hashing_test.go
@@ -17,6 +17,7 @@ import (
"fmt"
"math"
"strings"
+ "sync"
"testing"
qt "github.com/frankban/quicktest"
@@ -32,6 +33,30 @@ func TestXxHashFromReader(t *testing.T) {
c.Assert(got, qt.Equals, uint64(7148569436472236994))
}
+func TestXxHashFromReaderPara(t *testing.T) {
+ c := qt.New(t)
+
+ var wg sync.WaitGroup
+ for i := 0; i < 10; i++ {
+ i := i
+ wg.Add(1)
+ go func() {
+ defer wg.Done()
+ for j := 0; j < 100; j++ {
+ s := strings.Repeat("Hello ", i+j+1*42)
+ r := strings.NewReader(s)
+ got, size, err := XXHashFromReader(r)
+ c.Assert(size, qt.Equals, int64(len(s)))
+ c.Assert(err, qt.IsNil)
+ expect, _ := XXHashFromString(s)
+ c.Assert(got, qt.Equals, expect)
+ }
+ }()
+ }
+
+ wg.Wait()
+}
+
func TestXxHashFromString(t *testing.T) {
c := qt.New(t)
s := "Hello World"
DIR diff --git a/hugolib/hugo_sites_multihost_test.go b/hugolib/hugo_sites_multihost_test.go
@@ -203,9 +203,9 @@ title: mybundle-en
b.AssertFileExists("public/de/mybundle/pixel.png", true)
b.AssertFileExists("public/en/mybundle/pixel.png", true)
- b.AssertFileExists("public/de/mybundle/pixel_hu8aa3346827e49d756ff4e630147c42b5_70_2x2_resize_box_3.png", true)
+ b.AssertFileExists("public/de/mybundle/pixel_hu8581513846771248023.png", true)
// failing test below
- b.AssertFileExists("public/en/mybundle/pixel_hu8aa3346827e49d756ff4e630147c42b5_70_2x2_resize_box_3.png", true)
+ b.AssertFileExists("public/en/mybundle/pixel_hu8581513846771248023.png", true)
}
func TestMultihostResourceOneBaseURLWithSuPath(t *testing.T) {
DIR diff --git a/hugolib/image_test.go b/hugolib/image_test.go
@@ -72,22 +72,20 @@ SUNSET2: {{ $resized2.RelPermalink }}/{{ $resized2.Width }}/Lat: {{ $resized2.Ex
b.Build(BuildCfg{})
- b.AssertFileContent("public/index.html", "SUNSET FOR: en: /bundle/sunset_hu59e56ffff1bc1d8d122b1403d34e039f_90587_200x200_resize_q75_box.jpg/200/Lat: 36.59744166666667")
- b.AssertFileContent("public/fr/index.html", "SUNSET FOR: fr: /bundle/sunset_hu59e56ffff1bc1d8d122b1403d34e039f_90587_200x200_resize_q75_box.jpg/200/Lat: 36.59744166666667")
- b.AssertFileContent("public/index.html", " SUNSET2: /images/sunset_hu59e56ffff1bc1d8d122b1403d34e039f_90587_123x234_resize_q75_box.jpg/123/Lat: 36.59744166666667")
- b.AssertFileContent("public/nn/index.html", " SUNSET2: /images/sunset_hu59e56ffff1bc1d8d122b1403d34e039f_90587_123x234_resize_q75_box.jpg/123/Lat: 36.59744166666667")
+ b.AssertFileContent("public/index.html", "SUNSET FOR: en: /bundle/sunset_hu13235715490294913361.jpg/200/Lat: 36.59744166666667")
+ b.AssertFileContent("public/fr/index.html", "SUNSET FOR: fr: /bundle/sunset_hu13235715490294913361.jpg/200/Lat: 36.59744166666667")
+ b.AssertFileContent("public/index.html", " SUNSET2: /images/sunset_hu1573057890424052540.jpg/123/Lat: 36.59744166666667")
+ b.AssertFileContent("public/nn/index.html", " SUNSET2: /images/sunset_hu1573057890424052540.jpg/123/Lat: 36.59744166666667")
- b.AssertImage(200, 200, "public/bundle/sunset_hu59e56ffff1bc1d8d122b1403d34e039f_90587_200x200_resize_q75_box.jpg")
+ b.AssertImage(200, 200, "public/bundle/sunset_hu13235715490294913361.jpg")
// Check the file cache
- b.AssertImage(200, 200, "resources/_gen/images/bundle/sunset_hu59e56ffff1bc1d8d122b1403d34e039f_90587_200x200_resize_q75_box.jpg")
+ b.AssertImage(200, 200, "resources/_gen/images/bundle/sunset_hu13235715490294913361.jpg")
- b.AssertFileContent("resources/_gen/images/bundle/sunset_2020904703097093419.json",
+ b.AssertFileContent("resources/_gen/images/bundle/sunset_17710516992648092201.json",
"FocalLengthIn35mmFormat|uint16", "PENTAX")
- b.AssertImage(123, 234, "resources/_gen/images/images/sunset_hu59e56ffff1bc1d8d122b1403d34e039f_90587_123x234_resize_q75_box.jpg")
-
- b.AssertFileContent("resources/_gen/images/images/sunset_2020904703097093419.json",
+ b.AssertFileContent("resources/_gen/images/images/sunset_17710516992648092201.json",
"FocalLengthIn35mmFormat|uint16", "PENTAX")
b.AssertNoDuplicateWrites()
DIR diff --git a/hugolib/pagesfromdata/pagesfromgotmpl_integration_test.go b/hugolib/pagesfromdata/pagesfromgotmpl_integration_test.go
@@ -119,7 +119,7 @@ docs/p1/sub/mymixcasetext2.txt
"RelPermalink: /docs/p1/sub/mymixcasetext2.txt|Name: sub/mymixcasetext2.txt|",
"RelPermalink: /mydata.yaml|Name: sub/data1.yaml|Title: Sub data|Params: map[]|",
"Featured Image: /a/pixel.png|featured.png|",
- "Resized Featured Image: /a/pixel_hu8aa3346827e49d756ff4e630147c42b5_70_10x10_resize_box_3.png|10|",
+ "Resized Featured Image: /a/pixel_hu16809842526914527184.png|10|",
// Resource from string
"RelPermalink: /docs/p1/mytext.txt|Name: textresource|Title: My Text Resource|Params: map[param1:param1v]|",
// Dates
DIR diff --git a/hugolib/resource_chain_test.go b/hugolib/resource_chain_test.go
@@ -106,12 +106,12 @@ FAILED REMOTE ERROR DETAILS CONTENT: {{ with $failedImg.Err }}|{{ . }}|{{ with .
b.AssertFileContent("public/index.html",
fmt.Sprintf(`
SUNSET: /images/sunset.jpg|/images/sunset.a9bf1d944e19c0f382e0d8f51de690f7d0bc8fa97390c4242a86c3e5c0737e71.jpg|900|90587
-FIT: /images/sunset.jpg|/images/sunset_hu59e56ffff1bc1d8d122b1403d34e039f_90587_200x200_fit_q75_box.jpg|200
+FIT: /images/sunset.jpg|/images/sunset_hu15210517121918042184.jpg|200
CSS integrity Data first: sha256-od9YaHw8nMOL8mUy97Sy8sKwMV3N4hI3aVmZXATxH+8= /styles.min.a1df58687c3c9cc38bf26532f7b4b2f2c2b0315dcde212376959995c04f11fef.css
CSS integrity Data last: /styles2.min.1cfc52986836405d37f9998a63fd6dd8608e8c410e5e3db1daaa30f78bc273ba.css sha256-HPxSmGg2QF03+ZmKY/1t2GCOjEEOXj2x2qow94vCc7o=
SUNSET REMOTE: /sunset_%[1]s.jpg|/sunset_%[1]s.a9bf1d944e19c0f382e0d8f51de690f7d0bc8fa97390c4242a86c3e5c0737e71.jpg|900|90587
-FIT REMOTE: /sunset_%[1]s.jpg|/sunset_%[1]s_hu59e56ffff1bc1d8d122b1403d34e039f_90587_200x200_fit_q75_box.jpg|200
+FIT REMOTE: /sunset_%[1]s.jpg|/sunset_%[1]s_hu15210517121918042184.jpg|200
REMOTE NOT FOUND: OK
LOCAL NOT FOUND: OK
PRINT PROTOCOL ERROR DETAILS: Err: error calling resources.GetRemote: Get "gopher://example.org": unsupported protocol scheme "gopher"||
DIR diff --git a/resources/image.go b/resources/image.go
@@ -490,36 +490,16 @@ func (i *imageResource) relTargetPathFromConfig(conf images.ImageConfig) interna
if conf.TargetFormat != i.Format {
p2 = conf.TargetFormat.DefaultExtension()
}
-
- h := i.hash()
- idStr := fmt.Sprintf("_hu%d_%d", h, i.size())
-
- // Do not change for no good reason.
- const md5Threshold = 100
-
- key := conf.GetKey(i.Format)
-
- // It is useful to have the key in clear text, but when nesting transforms, it
- // can easily be too long to read, and maybe even too long
- // for the different OSes to handle.
- if len(p1)+len(idStr)+len(p2) > md5Threshold {
- key = hashing.MD5FromStringHexEncoded(p1 + key + p2)
- huIdx := strings.Index(p1, "_hu")
- if huIdx != -1 {
- p1 = p1[:huIdx]
- } else {
- // This started out as a very long file name. Making it even longer
- // could melt ice in the Arctic.
- p1 = ""
- }
- } else if strings.Contains(p1, idStr) {
- // On scaling an already scaled image, we get the file info from the original.
- // Repeating the same info in the filename makes it stuttery for no good reason.
- idStr = ""
+ const prefix = "_hu"
+ huIdx := strings.LastIndex(p1, prefix)
+ incomingID := "i"
+ if huIdx > -1 {
+ incomingID = p1[huIdx+len(prefix):]
+ p1 = p1[:huIdx]
}
-
+ hash := hashing.HashUint64(incomingID, i.hash(), conf.GetKey(i.Format))
rp := i.getResourcePaths()
- rp.File = fmt.Sprintf("%s%s_%s%s", p1, idStr, key, p2)
+ rp.File = fmt.Sprintf("%s%s%d%s", p1, prefix, hash, p2)
return rp
}
DIR diff --git a/resources/image_extended_test.go b/resources/image_extended_test.go
@@ -42,6 +42,6 @@ func TestImageResizeWebP(t *testing.T) {
resized, err := image.Resize("123x")
c.Assert(err, qt.IsNil)
c.Assert(image.MediaType(), qt.Equals, media.Builtin.WEBPType)
- c.Assert(resized.RelPermalink(), qt.Equals, "/a/sunrise_hu6ad68bcbae1b79cbc2f6b451894deaf6_95652_123x0_resize_q68_h2_linear_2.webp")
+ c.Assert(resized.RelPermalink(), qt.Equals, "/a/sunrise_hu544374262273649331.webp")
c.Assert(resized.Width(), qt.Equals, 123)
}
DIR diff --git a/resources/image_test.go b/resources/image_test.go
@@ -123,28 +123,28 @@ func TestImageTransformBasic(t *testing.T) {
assertWidthHeight(resizedAndRotated, 125, 200)
assertWidthHeight(resized, 300, 200)
- c.Assert(resized.RelPermalink(), qt.Equals, "/a/sunset_hu59e56ffff1bc1d8d122b1403d34e039f_90587_300x200_resize_q68_linear.jpg")
+ c.Assert(resized.RelPermalink(), qt.Equals, "/a/sunset_hu2082030801149749592.jpg")
fitted, err := resized.Fit("50x50")
c.Assert(err, qt.IsNil)
- c.Assert(fitted.RelPermalink(), qt.Equals, "/a/sunset_hu59e56ffff1bc1d8d122b1403d34e039f_90587_625708021e2bb281c9f1002f88e4753f.jpg")
+ c.Assert(fitted.RelPermalink(), qt.Equals, "/a/sunset_hu16263619592447877226.jpg")
assertWidthHeight(fitted, 50, 33)
// Check the MD5 key threshold
fittedAgain, _ := fitted.Fit("10x20")
fittedAgain, err = fittedAgain.Fit("10x20")
c.Assert(err, qt.IsNil)
- c.Assert(fittedAgain.RelPermalink(), qt.Equals, "/a/sunset_hu59e56ffff1bc1d8d122b1403d34e039f_90587_3f65ba24dc2b7fba0f56d7f104519157.jpg")
+ c.Assert(fittedAgain.RelPermalink(), qt.Equals, "/a/sunset_hu847809310637164306.jpg")
assertWidthHeight(fittedAgain, 10, 7)
filled, err := image.Fill("200x100 bottomLeft")
c.Assert(err, qt.IsNil)
- c.Assert(filled.RelPermalink(), qt.Equals, "/a/sunset_hu59e56ffff1bc1d8d122b1403d34e039f_90587_200x100_fill_q68_linear_bottomleft.jpg")
+ c.Assert(filled.RelPermalink(), qt.Equals, "/a/sunset_hu18289448341423092707.jpg")
assertWidthHeight(filled, 200, 100)
smart, err := image.Fill("200x100 smart")
c.Assert(err, qt.IsNil)
- c.Assert(smart.RelPermalink(), qt.Equals, fmt.Sprintf("/a/sunset_hu59e56ffff1bc1d8d122b1403d34e039f_90587_200x100_fill_q68_linear_smart%d.jpg", 1))
+ c.Assert(smart.RelPermalink(), qt.Equals, "/a/sunset_hu11649371610839769766.jpg")
assertWidthHeight(smart, 200, 100)
// Check cache
@@ -154,12 +154,12 @@ func TestImageTransformBasic(t *testing.T) {
cropped, err := image.Crop("300x300 topRight")
c.Assert(err, qt.IsNil)
- c.Assert(cropped.RelPermalink(), qt.Equals, "/a/sunset_hu59e56ffff1bc1d8d122b1403d34e039f_90587_300x300_crop_q68_linear_topright.jpg")
+ c.Assert(cropped.RelPermalink(), qt.Equals, "/a/sunset_hu2242042514052853140.jpg")
assertWidthHeight(cropped, 300, 300)
smartcropped, err := image.Crop("200x200 smart")
c.Assert(err, qt.IsNil)
- c.Assert(smartcropped.RelPermalink(), qt.Equals, fmt.Sprintf("/a/sunset_hu59e56ffff1bc1d8d122b1403d34e039f_90587_200x200_crop_q68_linear_smart%d.jpg", 1))
+ c.Assert(smartcropped.RelPermalink(), qt.Equals, "/a/sunset_hu12983255101170993571.jpg")
assertWidthHeight(smartcropped, 200, 200)
// Check cache
@@ -226,7 +226,7 @@ func TestImageTransformFormat(t *testing.T) {
imagePng, err := image.Resize("450x png")
c.Assert(err, qt.IsNil)
- c.Assert(imagePng.RelPermalink(), qt.Equals, "/a/sunset_hu59e56ffff1bc1d8d122b1403d34e039f_90587_450x0_resize_linear.png")
+ c.Assert(imagePng.RelPermalink(), qt.Equals, "/a/sunset_hu11737890885216583918.png")
c.Assert(imagePng.ResourceType(), qt.Equals, "image")
assertExtWidthHeight(imagePng, ".png", 450, 281)
c.Assert(imagePng.Name(), qt.Equals, "sunset.jpg")
@@ -234,7 +234,7 @@ func TestImageTransformFormat(t *testing.T) {
imageGif, err := image.Resize("225x gif")
c.Assert(err, qt.IsNil)
- c.Assert(imageGif.RelPermalink(), qt.Equals, "/a/sunset_hu59e56ffff1bc1d8d122b1403d34e039f_90587_225x0_resize_linear.gif")
+ c.Assert(imageGif.RelPermalink(), qt.Equals, "/a/sunset_hu1431827106749674475.gif")
c.Assert(imageGif.ResourceType(), qt.Equals, "image")
assertExtWidthHeight(imageGif, ".gif", 225, 141)
c.Assert(imageGif.Name(), qt.Equals, "sunset.jpg")
@@ -257,7 +257,7 @@ func TestImagePermalinkPublishOrder(t *testing.T) {
}()
check1 := func(img images.ImageResource) {
- resizedLink := "/a/sunset_hu59e56ffff1bc1d8d122b1403d34e039f_90587_100x50_resize_q75_box.jpg"
+ resizedLink := "/a/sunset_hu7919355342577096259.jpg"
c.Assert(img.RelPermalink(), qt.Equals, resizedLink)
assertImageFile(c, spec.PublishFs, resizedLink, 100, 50)
}
@@ -298,12 +298,12 @@ func TestImageBugs(t *testing.T) {
c.Assert(err, qt.IsNil)
c.Assert(resized, qt.Not(qt.IsNil))
c.Assert(resized.Width(), qt.Equals, 200)
- c.Assert(resized.RelPermalink(), qt.Equals, "/a/_hu59e56ffff1bc1d8d122b1403d34e039f_90587_65b757a6e14debeae720fe8831f0a9bc.jpg")
+ c.Assert(resized.RelPermalink(), qt.Equals, "/a/1234567890qwertyuiopasdfghjklzxcvbnm5to6eeeeee7via8eleph_hu9514381480012510326.jpg")
resized, err = resized.Resize("100x")
c.Assert(err, qt.IsNil)
c.Assert(resized, qt.Not(qt.IsNil))
c.Assert(resized.Width(), qt.Equals, 100)
- c.Assert(resized.RelPermalink(), qt.Equals, "/a/_hu59e56ffff1bc1d8d122b1403d34e039f_90587_c876768085288f41211f768147ba2647.jpg")
+ c.Assert(resized.RelPermalink(), qt.Equals, "/a/1234567890qwertyuiopasdfghjklzxcvbnm5to6eeeeee7via8eleph_hu1776700126481066216.jpg")
})
// Issue #6137
@@ -401,7 +401,7 @@ func TestImageResize8BitPNG(t *testing.T) {
resized, err := image.Resize("800x")
c.Assert(err, qt.IsNil)
c.Assert(resized.MediaType().Type, qt.Equals, "image/png")
- c.Assert(resized.RelPermalink(), qt.Equals, "/a/gohugoio_hu0e1b9e4a4be4d6f86c7b37b9ccce3fbc_73886_800x0_resize_linear_3.png")
+ c.Assert(resized.RelPermalink(), qt.Equals, "/a/gohugoio_hu8582372628235034388.png")
c.Assert(resized.Width(), qt.Equals, 800)
}
@@ -814,10 +814,10 @@ func assetGoldenDirs(c *qt.C, dir1, dir2 string) {
if !goldenEqual(nrgba1, nrgba2) {
switch fi1.Name() {
- case "gohugoio8_hu7f72c00afdf7634587afaa5eff2a25b2_73538_73c19c5f80881858a85aa23cd0ca400d.png",
- "gohugoio8_hu7f72c00afdf7634587afaa5eff2a25b2_73538_ae631e5252bb5d7b92bc766ad1a89069.png",
- "gohugoio8_hu7f72c00afdf7634587afaa5eff2a25b2_73538_d1bbfa2629bffb90118cacce3fcfb924.png",
- "giphy_hu3eafc418e52414ace6236bf1d31f82e1_52213_200x0_resize_box_1.gif":
+ case "giphy_hu13007323561585908901.gif",
+ "gohugoio8_hu12690451569630232821.png",
+ "gohugoio8_hu1619987041333606118.png",
+ "gohugoio8_hu18164141965527013334.png":
c.Log("expectedly differs from golden due to dithering:", fi1.Name())
default:
c.Errorf("resulting image differs from golden: %s", fi1.Name())
DIR diff --git a/resources/resources_integration_test.go b/resources/resources_integration_test.go
@@ -27,6 +27,7 @@ func TestImageCache(t *testing.T) {
files := `
-- config.toml --
+disableLiveReload = true
baseURL = "https://example.org"
-- content/mybundle/index.md --
---
@@ -61,9 +62,9 @@ anigif: {{ $anigif.RelPermalink }}|{{ $anigif.Width }}|{{ $anigif.Height }}|{{ $
assertImages := func() {
b.AssertFileContent("public/index.html", `
- gif: /mybundle/pixel_hu8aa3346827e49d756ff4e630147c42b5_70_1x2_resize_box_3.gif|}|1|2|image/gif|
- bmp: /mybundle/pixel_hu8aa3346827e49d756ff4e630147c42b5_70_2x3_resize_box_3.bmp|}|2|3|image/bmp|
- anigif: /mybundle/giphy_hu3eafc418e52414ace6236bf1d31f82e1_52213_4x5_resize_box_1.gif|4|5|image/gif|
+ gif: /mybundle/pixel_hu14657638653019978294.gif|}|1|2|image/gif|
+ bmp: /mybundle/pixel_hu14705577916774115224.bmp|}|2|3|image/bmp|
+ anigif: /mybundle/giphy_hu3665406585348417395.gif|4|5|image/gif|
`)
}
@@ -159,9 +160,9 @@ resize 2|RelPermalink: {{ $image.RelPermalink }}|MediaType: {{ $image.MediaType
b := hugolib.Test(t, files)
b.AssertFileContent("public/index.html",
- "jpg|RelPermalink: /images/pixel_hu8aa3346827e49d756ff4e630147c42b5_70_filter_1397118720664523257.jpg|MediaType: image/jpeg|Width: 1|Height: 1|",
- "resize 1|RelPermalink: /images/pixel_hu8aa3346827e49d756ff4e630147c42b5_70_filter_3796633496882814163.jpg|MediaType: image/jpeg|Width: 20|Height: 30|",
- "resize 2|RelPermalink: /images/pixel_hu8aa3346827e49d756ff4e630147c42b5_70_filter_3796633496882814163.jpg|MediaType: image/jpeg|Width: 20|Height: 30|",
+ "jpg|RelPermalink: /images/pixel_hu13683954895608450100.jpg|MediaType: image/jpeg|Width: 1|Height: 1|",
+ "resize 1|RelPermalink: /images/pixel_hu3453403302435331853.jpg|MediaType: image/jpeg|Width: 20|Height: 30|",
+ "resize 2|RelPermalink: /images/pixel_hu3453403302435331853.jpg|MediaType: image/jpeg|Width: 20|Height: 30|",
)
}
DIR diff --git a/resources/testdata/golden/giphy_hu2834162883155351332_0_200x0_resize_box_1.gif b/resources/testdata/golden/giphy_hu13007323561585908901.gif
Binary files differ.
DIR diff --git a/resources/testdata/golden/giphy_hu2834162883155351332_0_512x0_resize_box_1.gif b/resources/testdata/golden/giphy_hu15867760255711130632.gif
Binary files differ.
DIR diff --git a/resources/testdata/golden/giphy_hu2834162883155351332_0_100x0_resize_q75_bgffffff_box_1.jpg b/resources/testdata/golden/giphy_hu6128044492074974243.jpg
Binary files differ.
DIR diff --git a/resources/testdata/golden/gohugoio-card_hu4315323919404496126_0_220x0_resize_box_1.gif b/resources/testdata/golden/gohugoio-card_hu2987156907072306909.gif
Binary files differ.
DIR diff --git a/resources/testdata/golden/gohugoio-card_hu4315323919404496126_0_100x0_resize_box_1.gif b/resources/testdata/golden/gohugoio-card_hu5424444801046891674.gif
Binary files differ.
DIR diff --git a/resources/testdata/golden/gohugoio24_hu7834617682594811866_0_400x200_fill_box_center_3_filter_1368160528378247482.png b/resources/testdata/golden/gohugoio24_hu10797171466856050177.png
Binary files differ.
DIR diff --git a/resources/testdata/golden/gohugoio24_hu7834617682594811866_0_400x200_fill_box_center_3_filter_4500301550729488566.png b/resources/testdata/golden/gohugoio24_hu11107750106104480197.png
Binary files differ.
DIR diff --git a/resources/testdata/golden/gohugoio24_hu7834617682594811866_0_400x200_fill_box_center_3_filter_16769769134069376407.png b/resources/testdata/golden/gohugoio24_hu11329286024190801059.png
Binary files differ.
DIR diff --git a/resources/testdata/golden/gohugoio24_hu7834617682594811866_0_400x200_fill_box_center_3_filter_15932678542579281584.png b/resources/testdata/golden/gohugoio24_hu12210858383293148143.png
Binary files differ.
DIR diff --git a/resources/testdata/golden/gohugoio24_hu7834617682594811866_0_400x200_fill_box_bottomleft_3.png b/resources/testdata/golden/gohugoio24_hu13086833506724393086.png
Binary files differ.
DIR diff --git a/resources/testdata/golden/gohugoio24_hu7834617682594811866_0_400x200_fill_box_center_3_filter_6663284144007557192.png b/resources/testdata/golden/gohugoio24_hu13525767338321336398.png
Binary files differ.
DIR diff --git a/resources/testdata/golden/gohugoio24_hu7834617682594811866_0_400x200_fill_box_center_3_filter_4537007754286294453.png b/resources/testdata/golden/gohugoio24_hu1369355309314118179.png
Binary files differ.
DIR diff --git a/resources/testdata/golden/gohugoio24_hu7834617682594811866_0_400x200_fill_box_center_3_filter_12108901413150876595.png b/resources/testdata/golden/gohugoio24_hu1400913850517810505.png
Binary files differ.
DIR diff --git a/resources/testdata/golden/gohugoio24_hu7834617682594811866_0_600x0_resize_box_3.png b/resources/testdata/golden/gohugoio24_hu14141684530559227507.png
Binary files differ.
DIR diff --git a/resources/testdata/golden/gohugoio24_hu7834617682594811866_0_400x200_fill_box_center_3_filter_1999930288179126795.png b/resources/testdata/golden/gohugoio24_hu14186438102343930541.png
Binary files differ.
DIR diff --git a/resources/testdata/golden/gohugoio24_hu7834617682594811866_0_400x200_fill_box_center_3_filter_10484317606894136532.png b/resources/testdata/golden/gohugoio24_hu15334383941700802690.png
Binary files differ.
DIR diff --git a/resources/testdata/golden/gohugoio24_hu7834617682594811866_0_300x200_fill_gaussian_smart1_3.png b/resources/testdata/golden/gohugoio24_hu16565102657258557500.png
Binary files differ.
DIR diff --git a/resources/testdata/golden/gohugoio24_hu7834617682594811866_0_400x200_fill_box_center_3_filter_6226609227946633992.png b/resources/testdata/golden/gohugoio24_hu17044066173912896721.png
Binary files differ.
DIR diff --git a/resources/testdata/golden/gohugoio24_hu7834617682594811866_0_400x200_fill_box_center_3_filter_7394663371967385838.png b/resources/testdata/golden/gohugoio24_hu17704168266634609966.png
Binary files differ.
DIR diff --git a/resources/testdata/golden/gohugoio24_hu7834617682594811866_0_400x200_fill_box_center_3_filter_4355974086897058214.png b/resources/testdata/golden/gohugoio24_hu18417462639738980704.png
Binary files differ.
DIR diff --git a/resources/testdata/golden/gohugoio24_hu7834617682594811866_0_400x200_fill_box_center_3.png b/resources/testdata/golden/gohugoio24_hu2731125086148712886.png
Binary files differ.
DIR diff --git a/resources/testdata/golden/gohugoio24_hu7834617682594811866_0_400x200_fill_box_center_3_filter_10145879774663310287.png b/resources/testdata/golden/gohugoio24_hu281918710943920862.png
Binary files differ.
DIR diff --git a/resources/testdata/golden/gohugoio24_hu7834617682594811866_0_400x200_fill_box_center_3_filter_9987965893403929502.png b/resources/testdata/golden/gohugoio24_hu3440533624707313030.png
Binary files differ.
DIR diff --git a/resources/testdata/golden/gohugoio24_hu7834617682594811866_0_400x200_fill_box_center_3_filter_17478916973129747965.png b/resources/testdata/golden/gohugoio24_hu4079163993667427623.png
Binary files differ.
DIR diff --git a/resources/testdata/golden/gohugoio24_hu7834617682594811866_0_300x100_fill_nearestneighbor_topleft_3.png b/resources/testdata/golden/gohugoio24_hu4425915891794988430.png
Binary files differ.
DIR diff --git a/resources/testdata/golden/gohugoio24_hu7834617682594811866_0_200x0_resize_q50_r90_box_3.png b/resources/testdata/golden/gohugoio24_hu4576019605973288331.png
Binary files differ.
DIR diff --git a/resources/testdata/golden/gohugoio24_hu7834617682594811866_0_200x100_resize_box_3.png b/resources/testdata/golden/gohugoio24_hu4640928585673549425.png
Binary files differ.
DIR diff --git a/resources/testdata/golden/gohugoio24_hu7834617682594811866_0_100x100_fill_box_center_3.png b/resources/testdata/golden/gohugoio24_hu5007208529579570920.png
Binary files differ.
DIR diff --git a/resources/testdata/golden/gohugoio24_hu7834617682594811866_0_400x200_fill_box_center_3_filter_16826185614123406698.png b/resources/testdata/golden/gohugoio24_hu5216349243587511129.png
Binary files differ.
DIR diff --git a/resources/testdata/golden/gohugoio24_hu7834617682594811866_0_400x200_fill_box_center_3_filter_11093326483404439501.png b/resources/testdata/golden/gohugoio24_hu578735004461910616.png
Binary files differ.
DIR diff --git a/resources/testdata/golden/gohugoio24_hu7834617682594811866_0_400x200_fill_box_center_3_filter_35625387183264766.png b/resources/testdata/golden/gohugoio24_hu5858624748295381298.png
Binary files differ.
DIR diff --git a/resources/testdata/golden/gohugoio24_hu7834617682594811866_0_400x200_fill_box_center_3_filter_16851788174025928944.png b/resources/testdata/golden/gohugoio24_hu7784426158237953794.png
Binary files differ.
DIR diff --git a/resources/testdata/golden/gohugoio24_hu7834617682594811866_0_300x200_fit_linear_3.png b/resources/testdata/golden/gohugoio24_hu7862113105739619058.png
Binary files differ.
DIR diff --git a/resources/testdata/golden/gohugoio8_hu3730316029470468128_0_400x200_fill_box_center_3_filter_17478916973129747965.png b/resources/testdata/golden/gohugoio8_hu11148399329171024835.png
Binary files differ.
DIR diff --git a/resources/testdata/golden/gohugoio8_hu3730316029470468128_0_400x200_fill_box_center_3_filter_7394663371967385838.png b/resources/testdata/golden/gohugoio8_hu11427867868933654094.png
Binary files differ.
DIR diff --git a/resources/testdata/golden/gohugoio8_hu3730316029470468128_0_400x200_fill_box_center_3_filter_1368160528378247482.png b/resources/testdata/golden/gohugoio8_hu1162986745985451229.png
Binary files differ.
DIR diff --git a/resources/testdata/golden/gohugoio8_hu3730316029470468128_0_400x200_fill_box_center_3_filter_12108901413150876595.png b/resources/testdata/golden/gohugoio8_hu11638877035372353818.png
Binary files differ.
DIR diff --git a/resources/testdata/golden/gohugoio8_hu3730316029470468128_0_400x200_fill_box_center_3_filter_4355974086897058214.png b/resources/testdata/golden/gohugoio8_hu1217888005047574594.png
Binary files differ.
DIR diff --git a/resources/testdata/golden/gohugoio8_hu3730316029470468128_0_400x200_fill_box_center_3_filter_9987965893403929502.png b/resources/testdata/golden/gohugoio8_hu12220589162864061188.png
Binary files differ.
DIR diff --git a/resources/testdata/golden/gohugoio8_hu3730316029470468128_0_400x200_fill_box_center_3_filter_10484317606894136532.png b/resources/testdata/golden/gohugoio8_hu12690451569630232821.png
Binary files differ.
DIR diff --git a/resources/testdata/golden/gohugoio8_hu3730316029470468128_0_400x200_fill_box_bottomleft_3.png b/resources/testdata/golden/gohugoio8_hu12777352499229939257.png
Binary files differ.
DIR diff --git a/resources/testdata/golden/gohugoio8_hu3730316029470468128_0_400x200_fill_box_center_3.png b/resources/testdata/golden/gohugoio8_hu13982221718330949681.png
Binary files differ.
DIR diff --git a/resources/testdata/golden/gohugoio8_hu3730316029470468128_0_400x200_fill_box_center_3_filter_15932678542579281584.png b/resources/testdata/golden/gohugoio8_hu14107602960808127665.png
Binary files differ.
DIR diff --git a/resources/testdata/golden/gohugoio8_hu3730316029470468128_0_400x200_fill_box_center_3_filter_1999930288179126795.png b/resources/testdata/golden/gohugoio8_hu14156562190479686537.png
Binary files differ.
DIR diff --git a/resources/testdata/golden/gohugoio8_hu3730316029470468128_0_400x200_fill_box_center_3_filter_16826185614123406698.png b/resources/testdata/golden/gohugoio8_hu14592039178820708584.png
Binary files differ.
DIR diff --git a/resources/testdata/golden/gohugoio8_hu3730316029470468128_0_400x200_fill_box_center_3_filter_16769769134069376407.png b/resources/testdata/golden/gohugoio8_hu14839804078094713214.png
Binary files differ.
DIR diff --git a/resources/testdata/golden/gohugoio8_hu3730316029470468128_0_400x200_fill_box_center_3_filter_11093326483404439501.png b/resources/testdata/golden/gohugoio8_hu1619987041333606118.png
Binary files differ.
DIR diff --git a/resources/testdata/golden/gohugoio8_hu3730316029470468128_0_400x200_fill_box_center_3_filter_4537007754286294453.png b/resources/testdata/golden/gohugoio8_hu17499078314270725360.png
Binary files differ.
DIR diff --git a/resources/testdata/golden/gohugoio8_hu3730316029470468128_0_400x200_fill_box_center_3_filter_10145879774663310287.png b/resources/testdata/golden/gohugoio8_hu18164141965527013334.png
Binary files differ.
DIR diff --git a/resources/testdata/golden/gohugoio8_hu3730316029470468128_0_400x200_fill_box_center_3_filter_4500301550729488566.png b/resources/testdata/golden/gohugoio8_hu3062751268037078239.png
Binary files differ.
DIR diff --git a/resources/testdata/golden/gohugoio8_hu3730316029470468128_0_100x100_fill_box_center_3.png b/resources/testdata/golden/gohugoio8_hu3419127525388578393.png
Binary files differ.
DIR diff --git a/resources/testdata/golden/gohugoio8_hu3730316029470468128_0_400x200_fill_box_center_3_filter_6663284144007557192.png b/resources/testdata/golden/gohugoio8_hu3589035650602432929.png
Binary files differ.
DIR diff --git a/resources/testdata/golden/gohugoio8_hu3730316029470468128_0_400x200_fill_box_center_3_filter_16851788174025928944.png b/resources/testdata/golden/gohugoio8_hu5613016746654861839.png
Binary files differ.
DIR diff --git a/resources/testdata/golden/gohugoio8_hu3730316029470468128_0_200x100_resize_box_3.png b/resources/testdata/golden/gohugoio8_hu5911891014248513491.png
Binary files differ.
DIR diff --git a/resources/testdata/golden/gohugoio8_hu3730316029470468128_0_300x100_fill_nearestneighbor_topleft_3.png b/resources/testdata/golden/gohugoio8_hu5964606204514209824.png
Binary files differ.
DIR diff --git a/resources/testdata/golden/gohugoio8_hu3730316029470468128_0_600x0_resize_box_3.png b/resources/testdata/golden/gohugoio8_hu7954024233587195445.png
Binary files differ.
DIR diff --git a/resources/testdata/golden/gohugoio8_hu3730316029470468128_0_200x0_resize_q50_r90_box_3.png b/resources/testdata/golden/gohugoio8_hu8497843748973739779.png
Binary files differ.
DIR diff --git a/resources/testdata/golden/gohugoio8_hu3730316029470468128_0_300x200_fill_gaussian_smart1_3.png b/resources/testdata/golden/gohugoio8_hu8680424146433003017.png
Binary files differ.
DIR diff --git a/resources/testdata/golden/gohugoio8_hu3730316029470468128_0_300x200_fit_linear_3.png b/resources/testdata/golden/gohugoio8_hu881093787809754101.png
Binary files differ.
DIR diff --git a/resources/testdata/golden/gohugoio8_hu3730316029470468128_0_400x200_fill_box_center_3_filter_35625387183264766.png b/resources/testdata/golden/gohugoio8_hu9175902413241406055.png
Binary files differ.
DIR diff --git a/resources/testdata/golden/gohugoio8_hu3730316029470468128_0_400x200_fill_box_center_3_filter_6226609227946633992.png b/resources/testdata/golden/gohugoio8_hu971124074666261597.png
Binary files differ.
DIR diff --git a/resources/testdata/golden/gopher-hero8_hu15519140586546988538_0_200x0_resize_q75_bge3e615_box_3.jpg b/resources/testdata/golden/gopher-hero8_hu18029321441728138356.jpg
Binary files differ.
DIR diff --git a/resources/testdata/golden/gopher-hero8_hu15519140586546988538_0_filter_18247526396371657121.png b/resources/testdata/golden/gopher-hero8_hu7599356179908845799.png
Binary files differ.
DIR diff --git a/resources/testdata/golden/gopher-hero8_hu15519140586546988538_0_200x0_resize_bge3e615_box_3.png b/resources/testdata/golden/gopher-hero8_hu8339547226364980332.png
Binary files differ.
DIR diff --git a/resources/testdata/golden/gopher-hero8_hu15519140586546988538_0_30x0_resize_box_3.png b/resources/testdata/golden/gopher-hero8_hu9718283601959448032.png
Binary files differ.
DIR diff --git a/resources/testdata/golden/gradient-circle_hu6504854814255106391_0_200x0_resize_q75_bge3e615_box_3.jpg b/resources/testdata/golden/gradient-circle_hu13051041682786618472.jpg
Binary files differ.
DIR diff --git a/resources/testdata/golden/gradient-circle_hu6504854814255106391_0_filter_18247526396371657121.png b/resources/testdata/golden/gradient-circle_hu2995269612296002085.png
Binary files differ.
DIR diff --git a/resources/testdata/golden/gradient-circle_hu6504854814255106391_0_200x0_resize_bge3e615_box_3.png b/resources/testdata/golden/gradient-circle_hu4182458540361883551.png
Binary files differ.
DIR diff --git a/resources/testdata/golden/sunset_hu13399802095542588467_0_200x0_resize_q50_r90_box.jpg b/resources/testdata/golden/sunset_hu10303518067937744186.jpg
Binary files differ.
DIR diff --git a/resources/testdata/golden/sunset_hu13399802095542588467_0_400x200_fill_q75_box_bottomleft.jpg b/resources/testdata/golden/sunset_hu10327704110867657089.jpg
Binary files differ.
DIR diff --git a/resources/testdata/golden/sunset_hu13399802095542588467_0_600x0_resize_q75_box.jpg b/resources/testdata/golden/sunset_hu10555571028775464444.jpg
Binary files differ.
DIR diff --git a/resources/testdata/golden/sunset_hu13399802095542588467_0_400x200_fill_q75_box_center_filter_11093326483404439501.jpg b/resources/testdata/golden/sunset_hu10706797811022665574.jpg
Binary files differ.
DIR diff --git a/resources/testdata/golden/sunset_hu13399802095542588467_0_300x200_fit_q75_linear.jpg b/resources/testdata/golden/sunset_hu1184697552324640242.jpg
Binary files differ.
DIR diff --git a/resources/testdata/golden/sunset_hu13399802095542588467_0_400x200_fill_q75_box_center_filter_15932678542579281584.jpg b/resources/testdata/golden/sunset_hu13997988183102182682.jpg
Binary files differ.
DIR diff --git a/resources/testdata/golden/sunset_hu13399802095542588467_0_filter_2739339915147920042.jpg b/resources/testdata/golden/sunset_hu14647978205320151651.jpg
Binary files differ.
DIR diff --git a/resources/testdata/golden/sunset_hu13399802095542588467_0_400x200_fill_q75_box_center_filter_16851788174025928944.jpg b/resources/testdata/golden/sunset_hu1508817148191451926.jpg
Binary files differ.
DIR diff --git a/resources/testdata/golden/sunset_hu13399802095542588467_0_300x100_fill_q75_nearestneighbor_topleft.jpg b/resources/testdata/golden/sunset_hu15092417974014570823.jpg
Binary files differ.
DIR diff --git a/resources/testdata/golden/sunset_hu13399802095542588467_0_400x200_fill_q75_box_center.jpg b/resources/testdata/golden/sunset_hu15553011452282641860.jpg
Binary files differ.
DIR diff --git a/resources/testdata/golden/sunset_hu13399802095542588467_0_400x200_fill_q75_box_center_filter_1368160528378247482.jpg b/resources/testdata/golden/sunset_hu16406839322505000040.jpg
Binary files differ.
DIR diff --git a/resources/testdata/golden/sunset_hu13399802095542588467_0_400x200_fill_q75_box_center_filter_1999930288179126795.jpg b/resources/testdata/golden/sunset_hu17096332274161262571.jpg
Binary files differ.
DIR diff --git a/resources/testdata/golden/sunset_hu13399802095542588467_0_filter_7649370997474087000.jpg b/resources/testdata/golden/sunset_hu17735388202135872885.jpg
Binary files differ.
DIR diff --git a/resources/testdata/golden/sunset_hu13399802095542588467_0_300x200_fill_q75_gaussian_smart1.jpg b/resources/testdata/golden/sunset_hu18138233340135699657.jpg
Binary files differ.
DIR diff --git a/resources/testdata/golden/sunset_hu13399802095542588467_0_400x200_fill_q75_box_center_filter_17478916973129747965.jpg b/resources/testdata/golden/sunset_hu18339759113732359089.jpg
Binary files differ.
DIR diff --git a/resources/testdata/golden/sunset_hu13399802095542588467_0_400x200_fill_q75_box_center_filter_16769769134069376407.jpg b/resources/testdata/golden/sunset_hu1940616730388248148.jpg
Binary files differ.
DIR diff --git a/resources/testdata/golden/sunset_hu13399802095542588467_0_400x200_fill_q75_box_center_filter_4355974086897058214.jpg b/resources/testdata/golden/sunset_hu2317318497170846135.jpg
Binary files differ.
DIR diff --git a/resources/testdata/golden/sunset_hu13399802095542588467_0_400x200_fill_q75_box_center_filter_6663284144007557192.jpg b/resources/testdata/golden/sunset_hu2620328362006291004.jpg
Binary files differ.
DIR diff --git a/resources/testdata/golden/sunset_hu13399802095542588467_0_400x200_fill_q75_box_center_filter_4500301550729488566.jpg b/resources/testdata/golden/sunset_hu3329557056351636779.jpg
Binary files differ.
DIR diff --git a/resources/testdata/golden/sunset_hu13399802095542588467_0_400x200_fill_q75_box_center_filter_35625387183264766.jpg b/resources/testdata/golden/sunset_hu3528013170819345965.jpg
Binary files differ.
DIR diff --git a/resources/testdata/golden/sunset_hu13399802095542588467_0_200x100_resize_q75_box.jpg b/resources/testdata/golden/sunset_hu4475169669413030903.jpg
Binary files differ.
DIR diff --git a/resources/testdata/golden/sunset_hu13399802095542588467_0_400x200_fill_q75_box_center_filter_7394663371967385838.jpg b/resources/testdata/golden/sunset_hu4645485093540451131.jpg
Binary files differ.
DIR diff --git a/resources/testdata/golden/sunset_hu13399802095542588467_0_400x200_fill_q75_box_center_filter_10484317606894136532.jpg b/resources/testdata/golden/sunset_hu5700214275785775137.jpg
Binary files differ.
DIR diff --git a/resources/testdata/golden/sunset_hu13399802095542588467_0_400x200_fill_q75_box_center_filter_4537007754286294453.jpg b/resources/testdata/golden/sunset_hu5943101889480068836.jpg
Binary files differ.
DIR diff --git a/resources/testdata/golden/sunset_hu13399802095542588467_0_400x200_fill_q75_box_center_filter_9987965893403929502.jpg b/resources/testdata/golden/sunset_hu6418511461467579286.jpg
Binary files differ.
DIR diff --git a/resources/testdata/golden/sunset_hu13399802095542588467_0_400x200_fill_q75_box_center_filter_16826185614123406698.jpg b/resources/testdata/golden/sunset_hu7124641571345460976.jpg
Binary files differ.
DIR diff --git a/resources/testdata/golden/sunset_hu13399802095542588467_0_100x100_fill_q75_box_center.jpg b/resources/testdata/golden/sunset_hu7168213667150853195.jpg
Binary files differ.
DIR diff --git a/resources/testdata/golden/sunset_hu13399802095542588467_0_400x200_fill_q75_box_center_filter_10145879774663310287.jpg b/resources/testdata/golden/sunset_hu8110718388195953309.jpg
Binary files differ.
DIR diff --git a/resources/testdata/golden/sunset_hu13399802095542588467_0_400x200_fill_q75_box_center_filter_6226609227946633992.jpg b/resources/testdata/golden/sunset_hu8726458014885573310.jpg
Binary files differ.
DIR diff --git a/resources/testdata/golden/sunset_hu13399802095542588467_0_400x200_fill_q75_box_center_filter_12108901413150876595.jpg b/resources/testdata/golden/sunset_hu9995349819947557369.jpg
Binary files differ.
DIR diff --git a/resources/testdata/golden_webp/fuzzy-cirlcle_hu525d1a6cf670e85f5e8f19890241399b_26792_200x0_resize_q75_h2_box_3.webp b/resources/testdata/golden_webp/fuzzy-cirlcle_hu11078464949742740533.webp
Binary files differ.
DIR diff --git a/resources/transform_test.go b/resources/transform_test.go
@@ -386,15 +386,15 @@ func TestTransform(t *testing.T) {
resizedPublished1, err := img.Resize("40x40")
c.Assert(err, qt.IsNil)
c.Assert(resizedPublished1.Height(), qt.Equals, 40)
- c.Assert(resizedPublished1.RelPermalink(), qt.Equals, "/gopher.changed_hu2e827f5a78333ebc04166dd643235dea_1462_40x40_resize_linear_3.png")
- assertShouldExist(c, spec, "public/gopher.changed_hu2e827f5a78333ebc04166dd643235dea_1462_40x40_resize_linear_3.png", true)
+ c.Assert(resizedPublished1.RelPermalink(), qt.Equals, "/gopher.changed_hu16988682630555427117.png")
+ assertShouldExist(c, spec, "public/gopher.changed_hu16988682630555427117.png", true)
// Permalink called.
resizedPublished2, err := img.Resize("30x30")
c.Assert(err, qt.IsNil)
c.Assert(resizedPublished2.Height(), qt.Equals, 30)
- c.Assert(resizedPublished2.Permalink(), qt.Equals, "https://example.com/gopher.changed_hu2e827f5a78333ebc04166dd643235dea_1462_30x30_resize_linear_3.png")
- assertShouldExist(c, spec, "public/gopher.changed_hu2e827f5a78333ebc04166dd643235dea_1462_30x30_resize_linear_3.png", true)
+ c.Assert(resizedPublished2.Permalink(), qt.Equals, "https://example.com/gopher.changed_hu14141325020798305104.png")
+ assertShouldExist(c, spec, "public/gopher.changed_hu14141325020798305104.png", true)
// Not published because none of RelPermalink or Permalink was called.
resizedNotPublished, err := img.Resize("50x50")
DIR diff --git a/tpl/resources/resources_integration_test.go b/tpl/resources/resources_integration_test.go
@@ -58,7 +58,7 @@ Copy3: {{ $copy3.RelPermalink}}|{{ $copy3.MediaType }}|{{ $copy3.Content | safeJ
b.AssertFileContent("public/index.html", `
Image Orig: /blog/images/pixel.png|image/png|1|1|
-Image Copy1: /blog/images/copy_hu8aa3346827e49d756ff4e630147c42b5_70_3x4_resize_box_3.png|image/png|3|4|
+Image Copy1: /blog/images/copy_hu2891316072287293157.png|image/png|3|4|
Image Copy2: /blog/images/copy2.png|image/png|3|4
Image Copy3: image/png|3|4|
Orig: /blog/js/foo.js|text/javascript|let foo;|