aboutsummaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
-rw-r--r--config/allconfig/configlanguage.go2
-rw-r--r--config/allconfig/load.go4
-rw-r--r--hugolib/paths/paths.go2
-rw-r--r--modules/client.go6
-rw-r--r--modules/collect.go37
-rw-r--r--modules/module.go8
-rw-r--r--testscripts/commands/mod__disable.txt15
-rw-r--r--testscripts/commands/mod_vendor.txt5
8 files changed, 37 insertions, 42 deletions
diff --git a/config/allconfig/configlanguage.go b/config/allconfig/configlanguage.go
index 534276c25..27ba00d82 100644
--- a/config/allconfig/configlanguage.go
+++ b/config/allconfig/configlanguage.go
@@ -140,7 +140,7 @@ func (c ConfigLanguage) GetConfigSection(s string) any {
return c.config.Permalinks
case "minify":
return c.config.Minify
- case "activeModules":
+ case "allModules":
return c.m.Modules
case "deployment":
return c.config.Deployment
diff --git a/config/allconfig/load.go b/config/allconfig/load.go
index b997c2896..3af6147da 100644
--- a/config/allconfig/load.go
+++ b/config/allconfig/load.go
@@ -84,7 +84,7 @@ func LoadConfig(d ConfigSourceDescriptor) (*Configs, error) {
return nil, fmt.Errorf("failed to create config: %w", err)
}
- configs.Modules = moduleConfig.ActiveModules
+ configs.Modules = moduleConfig.AllModules
configs.ModulesClient = modulesClient
if err := configs.Init(); err != nil {
@@ -471,7 +471,7 @@ func (l *configLoader) loadModules(configs *Configs) (modules.ModulesConfig, *mo
ex := hexec.New(conf.Security)
hook := func(m *modules.ModulesConfig) error {
- for _, tc := range m.ActiveModules {
+ for _, tc := range m.AllModules {
if len(tc.ConfigFilenames()) > 0 {
if tc.Watch() {
l.ModulesConfigFiles = append(l.ModulesConfigFiles, tc.ConfigFilenames()...)
diff --git a/hugolib/paths/paths.go b/hugolib/paths/paths.go
index 817670dbd..83d5921e0 100644
--- a/hugolib/paths/paths.go
+++ b/hugolib/paths/paths.go
@@ -83,7 +83,7 @@ func New(fs *hugofs.Fs, cfg config.AllProvider) (*Paths, error) {
}
func (p *Paths) AllModules() modules.Modules {
- return p.Cfg.GetConfigSection("activeModules").(modules.Modules)
+ return p.Cfg.GetConfigSection("allModules").(modules.Modules)
}
// GetBasePath returns any path element in baseURL if needed.
diff --git a/modules/client.go b/modules/client.go
index 7108c9bef..b41ca142a 100644
--- a/modules/client.go
+++ b/modules/client.go
@@ -153,10 +153,6 @@ func (c *Client) Graph(w io.Writer) error {
continue
}
- prefix := ""
- if module.Disabled() {
- prefix = "DISABLED "
- }
dep := pathVersion(module.Owner()) + " " + pathVersion(module)
if replace := module.Replace(); replace != nil {
if replace.Version() != "" {
@@ -166,7 +162,7 @@ func (c *Client) Graph(w io.Writer) error {
dep += " => " + replace.Dir()
}
}
- fmt.Fprintln(w, prefix+dep)
+ fmt.Fprintln(w, dep)
}
return nil
diff --git a/modules/collect.go b/modules/collect.go
index e47563ab7..5b5418bcd 100644
--- a/modules/collect.go
+++ b/modules/collect.go
@@ -109,11 +109,8 @@ func (h *Client) collect(tidy bool) (ModulesConfig, *collector) {
}
type ModulesConfig struct {
- // All modules, including any disabled.
- AllModules Modules
-
// All active modules.
- ActiveModules Modules
+ AllModules Modules
// Set if this is a Go modules enabled project.
GoModulesFilename string
@@ -123,7 +120,7 @@ type ModulesConfig struct {
}
func (m ModulesConfig) HasConfigFile() bool {
- for _, mod := range m.ActiveModules {
+ for _, mod := range m.AllModules {
if len(mod.ConfigFilenames()) > 0 {
return true
}
@@ -133,18 +130,12 @@ func (m ModulesConfig) HasConfigFile() bool {
}
func (m *ModulesConfig) setActiveMods(logger loggers.Logger) error {
- var activeMods Modules
for _, mod := range m.AllModules {
if !mod.Config().HugoVersion.IsValid() {
logger.Warnf(`Module %q is not compatible with this Hugo version; run "hugo mod graph" for more information.`, mod.Path())
}
- if !mod.Disabled() {
- activeMods = append(activeMods, mod)
- }
}
- m.ActiveModules = activeMods
-
return nil
}
@@ -228,7 +219,7 @@ func (c *collector) getVendoredDir(path string) (vendoredModule, bool) {
return v, found
}
-func (c *collector) add(owner *moduleAdapter, moduleImport Import, disabled bool) (*moduleAdapter, error) {
+func (c *collector) add(owner *moduleAdapter, moduleImport Import) (*moduleAdapter, error) {
var (
mod *goModule
@@ -316,11 +307,10 @@ func (c *collector) add(owner *moduleAdapter, moduleImport Import, disabled bool
}
ma := &moduleAdapter{
- dir: moduleDir,
- vendor: vendored,
- disabled: disabled,
- gomod: mod,
- version: version,
+ dir: moduleDir,
+ vendor: vendored,
+ gomod: mod,
+ version: version,
// This may be the owner of the _vendor dir
owner: realOwner,
}
@@ -343,7 +333,7 @@ func (c *collector) add(owner *moduleAdapter, moduleImport Import, disabled bool
return ma, nil
}
-func (c *collector) addAndRecurse(owner *moduleAdapter, disabled bool) error {
+func (c *collector) addAndRecurse(owner *moduleAdapter) error {
moduleConfig := owner.Config()
if owner.projectMod {
if err := c.applyMounts(Import{}, owner); err != nil {
@@ -352,17 +342,18 @@ func (c *collector) addAndRecurse(owner *moduleAdapter, disabled bool) error {
}
for _, moduleImport := range moduleConfig.Imports {
- disabled := disabled || moduleImport.Disable
-
+ if moduleImport.Disable {
+ continue
+ }
if !c.isSeen(moduleImport.Path) {
- tc, err := c.add(owner, moduleImport, disabled)
+ tc, err := c.add(owner, moduleImport)
if err != nil {
return err
}
if tc == nil || moduleImport.IgnoreImports {
continue
}
- if err := c.addAndRecurse(tc, disabled); err != nil {
+ if err := c.addAndRecurse(tc); err != nil {
return err
}
}
@@ -531,7 +522,7 @@ func (c *collector) collect() {
projectMod := createProjectModule(c.gomods.GetMain(), c.ccfg.WorkingDir, c.moduleConfig)
- if err := c.addAndRecurse(projectMod, false); err != nil {
+ if err := c.addAndRecurse(projectMod); err != nil {
c.err = err
return
}
diff --git a/modules/module.go b/modules/module.go
index 42bd94e7b..da963de58 100644
--- a/modules/module.go
+++ b/modules/module.go
@@ -40,9 +40,6 @@ type Module interface {
// Directory holding files for this module.
Dir() string
- // This module is disabled.
- Disabled() bool
-
// Returns whether this is a Go Module.
IsGoMod() bool
@@ -81,7 +78,6 @@ type moduleAdapter struct {
dir string
version string
vendor bool
- disabled bool
projectMod bool
owner Module
@@ -115,10 +111,6 @@ func (m *moduleAdapter) Dir() string {
return m.gomod.Dir
}
-func (m *moduleAdapter) Disabled() bool {
- return m.disabled
-}
-
func (m *moduleAdapter) IsGoMod() bool {
return m.gomod != nil
}
diff --git a/testscripts/commands/mod__disable.txt b/testscripts/commands/mod__disable.txt
new file mode 100644
index 000000000..f2d65dd0c
--- /dev/null
+++ b/testscripts/commands/mod__disable.txt
@@ -0,0 +1,15 @@
+hugo mod graph
+stdout 'withhugotoml.*commonmod'
+
+-- hugo.toml --
+title = "Hugo Modules Test"
+[module]
+[[module.imports]]
+path="github.com/gohugoio/hugo-mod-integrationtests/withconfigtoml"
+disable = true
+[[module.imports]]
+path="github.com/gohugoio/hugo-mod-integrationtests/withhugotoml"
+-- go.mod --
+module foo
+go 1.19
+
diff --git a/testscripts/commands/mod_vendor.txt b/testscripts/commands/mod_vendor.txt
index 8a77776b3..5ca10aa75 100644
--- a/testscripts/commands/mod_vendor.txt
+++ b/testscripts/commands/mod_vendor.txt
@@ -20,5 +20,6 @@ go 1.19
module github.com/gohugoio/testmod
-- golden/vendor.txt --
-# github.com/gohugoio/hugo-mod-integrationtests/withconfigtoml v1.0.0
-# github.com/gohugoio/hugo-mod-integrationtests/withhugotoml v1.0.0
+# github.com/gohugoio/hugo-mod-integrationtests/withconfigtoml v1.1.0
+# github.com/gohugoio/hugo-mod-integrationtests/commonmod v0.0.0-20230823103305-919cefe8a425
+# github.com/gohugoio/hugo-mod-integrationtests/withhugotoml v1.1.0