cmd/sgblog/http.go | 9 ++++++--- internal/version.go | 2 +- diff --git a/cmd/sgblog/http.go b/cmd/sgblog/http.go index ede2018cde5dd7b3b870fe260e4363c38e4ea0c2a3bce9986e718b623049df7b..e8e320807bc064da53a5b367026de08488a9fe12385ffcbdc5e4d89d68222ca7 100644 --- a/cmd/sgblog/http.go +++ b/cmd/sgblog/http.go @@ -127,13 +127,16 @@ func lineURLizeInTemplate(urlPrefix, line any) string { return lineURLize(urlPrefix.(string), line.(string)) } -func startHeader(etag hash.Hash, zstded bool) string { +func startHeader(etag hash.Hash, zstded bool, lastModified time.Time) string { lines := []string{ "Content-Type: text/html; charset=utf-8", "ETag: " + etagString(etag), } if zstded { lines = append(lines, "Content-Encoding: zstd") + } + if !lastModified.IsZero() { + lines = append(lines, "Last-Modified: "+lastModified.Format(http.TimeFormat)) } lines = append(lines, "") lines = append(lines, "") @@ -351,7 +354,7 @@ entry.Topics = sgblog.ParseTopics(entry.TopicsRaw) entries[i] = entry } offsetPrev := max(offset-PageEntries, 0) - os.Stdout.Write([]byte(startHeader(etagHash, zstdWriter != nil))) + os.Stdout.Write([]byte(startHeader(etagHash, zstdWriter != nil, time.Time{}))) err = TmplHTMLIndex.Execute(out, struct { T *spreak.Localizer Version string @@ -747,7 +750,7 @@ if len(notesRaw) > 0 { notesLines = strings.Split(string(notesRaw), "\n") } - os.Stdout.Write([]byte(startHeader(etagHash, zstdWriter != nil))) + os.Stdout.Write([]byte(startHeader(etagHash, zstdWriter != nil, commit.Author.When))) err = TmplHTMLEntry.Execute(out, struct { T *spreak.Localizer Version string diff --git a/internal/version.go b/internal/version.go index e1e7ea7cf4be9f469ae6c1951e317a146a325813b3740c111d1fed45e3470908..020e8678ce9d582b0a7c45d3387bfad3d3b8ed0144d0e855fa0d560407412f20 100644 --- a/internal/version.go +++ b/internal/version.go @@ -1,3 +1,3 @@ package internal -const Version = "0.41.0" +const Version = "0.42.0"