Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/gohugoio/hugo.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBjørn Erik Pedersen <bjorn.erik.pedersen@gmail.com>2021-07-13 12:41:02 +0300
committerBjørn Erik Pedersen <bjorn.erik.pedersen@gmail.com>2021-07-15 18:14:26 +0300
commit022c4795510306e08a4aba31504ca382d41c7fac (patch)
treed4c29f62038d0f336d90f32f46bc5b4f5c3ddc28 /hugolib/content_map_test.go
parentf27e542442d19436f1428cc22bb03aca398d37a7 (diff)
hugofs: Make FileMeta a struct
This commit started out investigating a `concurrent map read write` issue, ending by replacing the map with a struct. This is easier to reason about, and it's more effective: ``` name old time/op new time/op delta SiteNew/Regular_Deep_content_tree-16 71.5ms ± 3% 69.4ms ± 5% ~ (p=0.200 n=4+4) name old alloc/op new alloc/op delta SiteNew/Regular_Deep_content_tree-16 29.7MB ± 0% 27.9MB ± 0% -5.82% (p=0.029 n=4+4) name old allocs/op new allocs/op delta SiteNew/Regular_Deep_content_tree-16 313k ± 0% 303k ± 0% -3.35% (p=0.029 n=4+4) ``` See #8749
Diffstat (limited to 'hugolib/content_map_test.go')
-rw-r--r--hugolib/content_map_test.go16
1 files changed, 8 insertions, 8 deletions
diff --git a/hugolib/content_map_test.go b/hugolib/content_map_test.go
index a62380efd..014ef9c7d 100644
--- a/hugolib/content_map_test.go
+++ b/hugolib/content_map_test.go
@@ -51,9 +51,9 @@ func BenchmarkContentMap(b *testing.B) {
meta := fi.Meta()
// We have a more elaborate filesystem setup in the
// real flow, so simulate this here.
- meta["lang"] = lang
- meta["path"] = meta.Filename()
- meta["classifier"] = files.ClassifyContentFile(fi.Name(), meta.GetOpener())
+ meta.Lang = lang
+ meta.Path = meta.Filename
+ meta.Classifier = files.ClassifyContentFile(fi.Name(), meta.OpenFunc)
})
}
@@ -109,10 +109,10 @@ func TestContentMap(t *testing.T) {
meta := fi.Meta()
// We have a more elaborate filesystem setup in the
// real flow, so simulate this here.
- meta["lang"] = lang
- meta["path"] = meta.Filename()
- meta["classifier"] = files.ClassifyContentFile(fi.Name(), meta.GetOpener())
- meta["translationBaseName"] = paths.Filename(fi.Name())
+ meta.Lang = lang
+ meta.Path = meta.Filename
+ meta.TranslationBaseName = paths.Filename(fi.Name())
+ meta.Classifier = files.ClassifyContentFile(fi.Name(), meta.OpenFunc)
})
}
@@ -127,7 +127,7 @@ func TestContentMap(t *testing.T) {
header := writeFile(c, fs, "blog/a/index.md", "page")
- c.Assert(header.Meta().Lang(), qt.Equals, "en")
+ c.Assert(header.Meta().Lang, qt.Equals, "en")
resources := []hugofs.FileMetaInfo{
writeFile(c, fs, "blog/a/b/data.json", "data"),