Merge pull request #12 from baez90/upgrade-to-go-1.18
Upgrade to Go 1.18
This commit is contained in:
commit
a6b6bdd9e6
8 changed files with 22 additions and 25 deletions
4
.github/workflows/go.yml
vendored
4
.github/workflows/go.yml
vendored
|
@ -19,10 +19,10 @@ jobs:
|
|||
name: Build
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- name: Set up Go 1.17
|
||||
- name: Set up Go 1.18
|
||||
uses: actions/setup-go@v3
|
||||
with:
|
||||
go-version: '^1.17'
|
||||
go-version: '^1.18'
|
||||
id: go
|
||||
|
||||
- name: Login to GitHub Container Registry
|
||||
|
|
|
@ -25,7 +25,7 @@ func init() {
|
|||
if t, err := template.
|
||||
New("index").
|
||||
Funcs(sprig.FuncMap()).
|
||||
Funcs(map[string]interface{}{
|
||||
Funcs(map[string]any{
|
||||
"fileId": func(fileName string) string {
|
||||
h := fnv.New32a()
|
||||
return hex.EncodeToString(h.Sum([]byte(path.Base(fileName))))
|
||||
|
@ -60,7 +60,7 @@ func RegisterViews(router *httprouter.Router, logger *log.Logger, wdfs fs.FS, md
|
|||
|
||||
func (p *Views) IndexPage(writer http.ResponseWriter, _ *http.Request, _ httprouter.Params) {
|
||||
writer.Header().Set("Content-Type", "text/html")
|
||||
if err := indexTmpl.ExecuteTemplate(writer, "index.gohtml", map[string]interface{}{
|
||||
if err := indexTmpl.ExecuteTemplate(writer, "index.gohtml", map[string]any{
|
||||
"Reveal": p.cfg.Reveal,
|
||||
"Rendering": p.cfg.Rendering,
|
||||
}); err != nil {
|
||||
|
|
|
@ -5,7 +5,7 @@ const (
|
|||
defaultHeight uint = 700
|
||||
)
|
||||
|
||||
var defaults = map[string]interface{}{
|
||||
var defaults = map[string]any{
|
||||
"mermaid.theme": "forest",
|
||||
"theme": "beige",
|
||||
"width": defaultWidth,
|
||||
|
|
3
go.mod
3
go.mod
|
@ -1,6 +1,6 @@
|
|||
module github.com/baez90/goveal
|
||||
|
||||
go 1.17
|
||||
go 1.18
|
||||
|
||||
require (
|
||||
github.com/Masterminds/sprig/v3 v3.2.2
|
||||
|
@ -12,6 +12,7 @@ require (
|
|||
github.com/sirupsen/logrus v1.8.1
|
||||
github.com/spf13/cobra v1.4.0
|
||||
github.com/spf13/viper v1.10.1
|
||||
github.com/valyala/bytebufferpool v1.0.0
|
||||
go.uber.org/multierr v1.8.0
|
||||
)
|
||||
|
||||
|
|
2
go.sum
2
go.sum
|
@ -201,6 +201,8 @@ github.com/stretchr/testify v1.7.0 h1:nwc3DEeHmmLAfoZucVR881uASk0Mfjw8xYJ99tb5Cc
|
|||
github.com/stretchr/testify v1.7.0/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg=
|
||||
github.com/subosito/gotenv v1.2.0 h1:Slr1R9HxAlEKefgq5jn9U+DnETlIUa6HfgEzj0g5d7s=
|
||||
github.com/subosito/gotenv v1.2.0/go.mod h1:N0PQaV/YGNqwC0u51sEeR/aUtSLEXKX9iv69rRypqCw=
|
||||
github.com/valyala/bytebufferpool v1.0.0 h1:GqA5TC/0021Y/b9FG4Oi9Mr3q7XYx6KllzawFIhcdPw=
|
||||
github.com/valyala/bytebufferpool v1.0.0/go.mod h1:6bBcMArwyJ5K/AmCkWv1jt77kVWyCJ6HpOuEn7z0Csc=
|
||||
github.com/yuin/goldmark v1.1.25/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74=
|
||||
github.com/yuin/goldmark v1.1.27/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74=
|
||||
github.com/yuin/goldmark v1.1.32/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74=
|
||||
|
|
|
@ -1,12 +1,12 @@
|
|||
package rendering
|
||||
|
||||
import (
|
||||
"bytes"
|
||||
"fmt"
|
||||
"html/template"
|
||||
"regexp"
|
||||
|
||||
"github.com/gomarkdown/markdown/parser"
|
||||
"github.com/valyala/bytebufferpool"
|
||||
|
||||
"github.com/baez90/goveal/config"
|
||||
)
|
||||
|
@ -24,17 +24,17 @@ func ToHTML(markdown string, renderCfg config.Rendering) (rendered []byte, err e
|
|||
return nil, err
|
||||
}
|
||||
|
||||
buf := templateRenderBufferPool.Get().(*bytes.Buffer)
|
||||
buf := bytebufferpool.Get()
|
||||
defer func() {
|
||||
buf.Reset()
|
||||
templateRenderBufferPool.Put(buf)
|
||||
bytebufferpool.Put(buf)
|
||||
}()
|
||||
|
||||
for idx := range slides {
|
||||
if rendered, err := slides[idx].ToHTML(); err != nil {
|
||||
return nil, err
|
||||
} else {
|
||||
buf.WriteString(string(rendered))
|
||||
_, _ = buf.WriteString(string(rendered))
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -78,7 +78,7 @@ func (r *RevealRenderer) handleListItem(w io.Writer, listItem *ast.ListItem) (as
|
|||
return ast.GoToNext, false
|
||||
}
|
||||
|
||||
data := map[string]interface{}{
|
||||
data := map[string]any{
|
||||
"Attributes": getAttributesFromChildSpan(p),
|
||||
}
|
||||
|
||||
|
@ -102,7 +102,7 @@ func (r *RevealRenderer) handleImage(w io.Writer, img *ast.Image) (ast.WalkStatu
|
|||
}
|
||||
}
|
||||
|
||||
data := map[string]interface{}{
|
||||
data := map[string]any{
|
||||
"ID": hex.EncodeToString(r.Hash.Sum([]byte(path.Base(string(img.Destination))))),
|
||||
"Attributes": getAttributesFromChildSpan(img.GetParent()),
|
||||
"ImageSource": string(img.Destination),
|
||||
|
@ -154,7 +154,7 @@ func extractElementAttributes(htmlSpan *ast.HTMLSpan) (attrs []template.HTMLAttr
|
|||
}
|
||||
|
||||
func renderCodeTemplate(templateName string, codeBlock *ast.CodeBlock) (output []byte, err error) {
|
||||
data := map[string]interface{}{
|
||||
data := map[string]any{
|
||||
//nolint:gosec // need to embed the code in original format without escaping
|
||||
"Code": template.HTML(codeBlock.Literal),
|
||||
"LineNumbers": lineNumbers(codeBlock.Attribute),
|
||||
|
|
|
@ -1,29 +1,23 @@
|
|||
package rendering
|
||||
|
||||
import (
|
||||
"bytes"
|
||||
"embed"
|
||||
"hash/fnv"
|
||||
"html/template"
|
||||
"sync"
|
||||
|
||||
"github.com/Masterminds/sprig/v3"
|
||||
"github.com/gomarkdown/markdown"
|
||||
mdhtml "github.com/gomarkdown/markdown/html"
|
||||
"github.com/gomarkdown/markdown/parser"
|
||||
"github.com/valyala/bytebufferpool"
|
||||
|
||||
"github.com/baez90/goveal/rendering/emoji"
|
||||
)
|
||||
|
||||
var (
|
||||
//go:embed templates/*.gohtml
|
||||
templatesFS embed.FS
|
||||
templates *template.Template
|
||||
templateRenderBufferPool = &sync.Pool{
|
||||
New: func() interface{} {
|
||||
return new(bytes.Buffer)
|
||||
},
|
||||
}
|
||||
templatesFS embed.FS
|
||||
templates *template.Template
|
||||
)
|
||||
|
||||
func init() {
|
||||
|
@ -54,11 +48,11 @@ func init() {
|
|||
}
|
||||
}
|
||||
|
||||
func renderTemplate(templateName string, data interface{}) (output []byte, err error) {
|
||||
buffer := templateRenderBufferPool.Get().(*bytes.Buffer)
|
||||
func renderTemplate(templateName string, data any) (output []byte, err error) {
|
||||
buffer := bytebufferpool.Get()
|
||||
defer func() {
|
||||
buffer.Reset()
|
||||
templateRenderBufferPool.Put(buffer)
|
||||
bytebufferpool.Put(buffer)
|
||||
}()
|
||||
|
||||
err = templates.ExecuteTemplate(buffer, templateName, data)
|
||||
|
|
Loading…
Reference in a new issue