hugo

Unnamed repository; edit this file 'description' to name the repository.

git clone git://git.shimmy1996.com/hugo.git
commit 6cd2110ab295f598907a18da91e34d31407c1d9d
parent 6a365c2712c7607e067e192d213b266f0c88d0f3
Author: Bjørn Erik Pedersen <bjorn.erik.pedersen@gmail.com>
Date:   Sun, 27 Jun 2021 18:00:20 +0200

commands: Add version time to "hugo config mounts"

Diffstat:
Mcommands/config.go | 5+++++
Mmodules/module.go | 13+++++++++++++
2 files changed, 18 insertions(+), 0 deletions(-)
diff --git a/commands/config.go b/commands/config.go
@@ -21,6 +21,7 @@ import (
 	"regexp"
 	"sort"
 	"strings"
+	"time"
 
 	"github.com/gohugoio/hugo/common/maps"
 
@@ -146,6 +147,7 @@ func (m *modMounts) MarshalJSON() ([]byte, error) {
 		return json.Marshal(&struct {
 			Path        string                 `json:"path"`
 			Version     string                 `json:"version"`
+			Time        *time.Time             `json:"time"`
 			Owner       string                 `json:"owner"`
 			Dir         string                 `json:"dir"`
 			Meta        map[string]interface{} `json:"meta"`
@@ -155,6 +157,7 @@ func (m *modMounts) MarshalJSON() ([]byte, error) {
 		}{
 			Path:        m.m.Path(),
 			Version:     m.m.Version(),
+			Time:        m.m.Time(),
 			Owner:       ownerPath,
 			Dir:         m.m.Dir(),
 			Meta:        config.Params,
@@ -166,12 +169,14 @@ func (m *modMounts) MarshalJSON() ([]byte, error) {
 	return json.Marshal(&struct {
 		Path    string     `json:"path"`
 		Version string     `json:"version"`
+		Time    *time.Time `json:"time"`
 		Owner   string     `json:"owner"`
 		Dir     string     `json:"dir"`
 		Mounts  []modMount `json:"mounts"`
 	}{
 		Path:    m.m.Path(),
 		Version: m.m.Version(),
+		Time:    m.m.Time(),
 		Owner:   ownerPath,
 		Dir:     m.m.Dir(),
 		Mounts:  mounts,
diff --git a/modules/module.go b/modules/module.go
@@ -17,6 +17,8 @@
 package modules
 
 import (
+	"time"
+
 	"github.com/gohugoio/hugo/config"
 )
 
@@ -65,6 +67,9 @@ type Module interface {
 	// The module version.
 	Version() string
 
+	// Time version was created.
+	Time() *time.Time
+
 	// Whether this module's dir is a watch candidate.
 	Watch() bool
 }
@@ -154,6 +159,14 @@ func (m *moduleAdapter) Version() string {
 	return m.gomod.Version
 }
 
+func (m *moduleAdapter) Time() *time.Time {
+	if !m.IsGoMod() || m.gomod.Time == nil {
+		return nil
+	}
+
+	return m.gomod.Time
+}
+
 func (m *moduleAdapter) Watch() bool {
 	if m.Owner() == nil {
 		// Main project