summaryrefslogtreecommitdiffstats
path: root/common
diff options
context:
space:
mode:
Diffstat (limited to 'common')
-rw-r--r--common/hugo/hugo.go22
1 files changed, 22 insertions, 0 deletions
diff --git a/common/hugo/hugo.go b/common/hugo/hugo.go
index 0a79576f3..f463e261d 100644
--- a/common/hugo/hugo.go
+++ b/common/hugo/hugo.go
@@ -24,6 +24,8 @@ import (
"sync"
"time"
+ "github.com/bep/godartsass"
+ "github.com/gohugoio/hugo/common/hexec"
"github.com/gohugoio/hugo/hugofs/files"
"github.com/spf13/afero"
@@ -202,6 +204,16 @@ func GetDependencyList() []string {
)
}
+ if dartSass := dartSassVersion(); dartSass.ProtocolVersion != "" {
+ const dartSassPath = "github.com/sass/dart-sass-embedded"
+ deps = append(deps,
+ formatDep(dartSassPath+"/protocol", dartSass.ProtocolVersion),
+ formatDep(dartSassPath+"/compiler", dartSass.CompilerVersion),
+ formatDep(dartSassPath+"/implementation", dartSass.ImplementationVersion),
+ )
+
+ }
+
bi := getBuildInfo()
if bi == nil {
return deps
@@ -249,3 +261,13 @@ type Dependency struct {
// Replaced by this dependency.
Replace *Dependency
}
+
+func dartSassVersion() godartsass.DartSassVersion {
+ // This is also duplicated in the dartsass package.
+ const dartSassEmbeddedBinaryName = "dart-sass-embedded"
+ if !hexec.InPath(dartSassEmbeddedBinaryName) {
+ return godartsass.DartSassVersion{}
+ }
+ v, _ := godartsass.Version(dartSassEmbeddedBinaryName)
+ return v
+}