Skip to content

Commit

Permalink
feat: add tabular output (#7)
Browse files Browse the repository at this point in the history
Remove bubbletea as a dependency
  • Loading branch information
dhth authored Aug 18, 2024
1 parent 0f1fc2e commit ec8aa2a
Show file tree
Hide file tree
Showing 25 changed files with 403 additions and 382 deletions.
15 changes: 11 additions & 4 deletions .github/workflows/build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ permissions:
contents: read

env:
GO_VERSION: '1.22.5'
GO_VERSION: '1.23.0'

jobs:
build:
Expand Down Expand Up @@ -53,8 +53,15 @@ jobs:
with:
app-id: ${{ vars.GH_TOKEN_APP_ID }}
private-key: ${{ secrets.GH_TOKEN_APP_PRIVATE_KEY }}
- name: Generate HTML output
run: |
./act3 -f html
- name: Run act3 with default output
run: ./act3
env:
GH_TOKEN: ${{ steps.generate-token.outputs.token }}
- name: Run act3 with tabular output
run: ./act3 -f table
env:
GH_TOKEN: ${{ steps.generate-token.outputs.token }}
- name: Run act3 with HTML output
run: ./act3 -f html
env:
GH_TOKEN: ${{ steps.generate-token.outputs.token }}
8 changes: 3 additions & 5 deletions .github/workflows/deploy-docs.yml
Original file line number Diff line number Diff line change
Expand Up @@ -14,9 +14,6 @@ concurrency:
group: "pages"
cancel-in-progress: false

env:
ACT3_VERSION: 1.0.0

jobs:
build:
runs-on: ubuntu-latest
Expand All @@ -25,8 +22,9 @@ jobs:
uses: actions/checkout@v4
- name: Download act3
run: |
curl -s -OL https://github.com/dhth/act3/releases/download/v${{ env.ACT3_VERSION }}/act3_${{ env.ACT3_VERSION }}_linux_amd64.tar.gz
tar -xzvf act3_${{ env.ACT3_VERSION }}_linux_amd64.tar.gz
LATEST_VERSION=$(curl -s https://api.github.com/repos/dhth/act3/releases/latest | grep '"tag_name":' | sed -E 's/.*"([^"]+)".*/\1/' | sed 's/^v//')
curl -s -OL https://github.com/dhth/act3/releases/download/v${LATEST_VERSION}/act3_${LATEST_VERSION}_linux_amd64.tar.gz
tar -xzvf act3_${LATEST_VERSION}_linux_amd64.tar.gz
- name: Generate GH token
id: generate-token
uses: actions/create-github-app-token@v1
Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/lint.yml
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ permissions:
contents: read

env:
GO_VERSION: '1.22.5'
GO_VERSION: '1.23.0'

jobs:
lint:
Expand All @@ -28,4 +28,4 @@ jobs:
- name: golangci-lint
uses: golangci/golangci-lint-action@v6
with:
version: v1.58
version: v1.60.1
2 changes: 1 addition & 1 deletion .github/workflows/release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ permissions:
id-token: write

env:
GO_VERSION: '1.22.5'
GO_VERSION: '1.23.0'

jobs:
release:
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/vulncheck.yml
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ permissions:
contents: read

env:
GO_VERSION: '1.22.5'
GO_VERSION: '1.23.0'

jobs:
vulncheck:
Expand Down
6 changes: 3 additions & 3 deletions cmd/config.go
Original file line number Diff line number Diff line change
Expand Up @@ -5,12 +5,12 @@ import (
"os/user"
"strings"

"github.com/dhth/act3/internal/gh"
"github.com/dhth/act3/internal/types"
"gopkg.in/yaml.v3"
)

type Config struct {
Workflows []gh.Workflow `yaml:"workflows"`
Workflows []types.Workflow `yaml:"workflows"`
}

func expandTilde(path string) string {
Expand All @@ -24,7 +24,7 @@ func expandTilde(path string) string {
return path
}

func ReadConfig(configFilePath string) ([]gh.Workflow, error) {
func ReadConfig(configFilePath string) ([]types.Workflow, error) {
localFile, err := os.ReadFile(expandTilde(configFilePath))
if err != nil {
return nil, err
Expand Down
7 changes: 4 additions & 3 deletions cmd/current.go
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,7 @@ import (

ghapi "github.com/cli/go-gh/v2/pkg/api"
"github.com/dhth/act3/internal/gh"
"github.com/dhth/act3/internal/types"
"github.com/go-git/go-git/v5"
)

Expand All @@ -20,15 +21,15 @@ var (
errCouldntParseRemoteURL = errors.New("couldn't parse remote URL")
)

func getWorkflowsForCurrentRepo(ghClient *ghapi.RESTClient, repo string) ([]gh.Workflow, error) {
func getWorkflowsForCurrentRepo(ghClient *ghapi.RESTClient, repo string) ([]types.Workflow, error) {
wd, err := gh.GetWorkflowDetails(ghClient, repo)
if err != nil {
return nil, err
}

workflows := make([]gh.Workflow, len(wd.Workflows))
workflows := make([]types.Workflow, len(wd.Workflows))
for i, w := range wd.Workflows {
workflows[i] = gh.Workflow{
workflows[i] = types.Workflow{
ID: w.NodeID,
Repo: repo,
Name: w.Name,
Expand Down
37 changes: 37 additions & 0 deletions cmd/render.go
Original file line number Diff line number Diff line change
@@ -0,0 +1,37 @@
package cmd

import (
"fmt"
"sort"

"github.com/dhth/act3/internal/gh"
"github.com/dhth/act3/internal/types"
"github.com/dhth/act3/internal/ui"
)

func render(workflows []types.Workflow, config types.Config) error {
results := make([]gh.ResultData, len(workflows))
resultChannel := make(chan gh.ResultData)

for _, wf := range workflows {
go func(workflow types.Workflow) {
resultChannel <- gh.GetWorkflowRuns(config.GHClient, workflow)
}(wf)
}

for i := range workflows {
r := <-resultChannel
results[i] = r
}

sort.Slice(results, func(i, j int) bool {
return results[i].Workflow.Name < results[j].Workflow.Name
})

output, err := ui.GetOutput(config, results)
if err != nil {
return err
}
fmt.Print(output)
return nil
}
21 changes: 12 additions & 9 deletions cmd/root.go
Original file line number Diff line number Diff line change
Expand Up @@ -11,8 +11,7 @@ import (
"time"

ghapi "github.com/cli/go-gh/v2/pkg/api"
"github.com/dhth/act3/internal/gh"
"github.com/dhth/act3/internal/ui"
"github.com/dhth/act3/internal/types"
)

const (
Expand All @@ -38,7 +37,7 @@ var (
)

var (
format = flag.String("f", "", "output format to use; possible values: html")
format = flag.String("f", "", "output format to use; possible values: default, plaintext, html")
htmlTemplateFile = flag.String("t", "", "path of the HTML template file to use")
global = flag.Bool("g", false, "whether to use workflows defined globally via the config file")
repo = flag.String("r", "", "repo to fetch worflows for, in the format \"owner/repo\"")
Expand Down Expand Up @@ -90,11 +89,13 @@ Let %s know about this via %s.
}
}

var outputFmt ui.OutputFmt
var outputFmt types.OutputFmt
if *format != "" {
switch *format {
case "table":
outputFmt = types.TableFmt
case "html":
outputFmt = ui.HTMLFmt
outputFmt = types.HTMLFmt
default:
return fmt.Errorf("%w", errIncorrectOutputFmt)
}
Expand All @@ -118,7 +119,7 @@ Let %s know about this via %s.
CacheTTL: time.Second * 30,
Timeout: 8 * time.Second,
}
var workflows []gh.Workflow
var workflows []types.Workflow
var currentRepo string
var err error

Expand Down Expand Up @@ -169,14 +170,16 @@ Let %s know about this via %s.
if !*global {
cr = &currentRepo
}
config := ui.Config{
config := types.Config{
GHClient: ghClient,
Workflows: workflows,
CurrentRepo: cr,
Fmt: outputFmt,
HTMLTemplate: htmlTemplate,
}

ui.RenderUI(config)
err = render(workflows, config)
if err != nil {
return err
}
return nil
}
2 changes: 1 addition & 1 deletion docker-compose.yml
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ version: '3.8'
# to test operations on linux
services:
act3-dev:
image: golang:1.22.5-alpine
image: golang:1.23.0-alpine
volumes:
- .:/go/src/app
working_dir: /go/src/app
Expand Down
12 changes: 2 additions & 10 deletions go.mod
Original file line number Diff line number Diff line change
@@ -1,14 +1,14 @@
module github.com/dhth/act3

go 1.22.5
go 1.23.0

require (
github.com/charmbracelet/bubbletea v0.26.6
github.com/charmbracelet/lipgloss v0.12.1
github.com/cli/go-gh/v2 v2.9.0
github.com/cli/shurcooL-graphql v0.0.4
github.com/dustin/go-humanize v1.0.1
github.com/go-git/go-git/v5 v5.12.0
github.com/olekukonko/tablewriter v0.0.5
github.com/shurcooL/githubv4 v0.0.0-20240727222349-48295856cce7
github.com/stretchr/testify v1.9.0
gopkg.in/yaml.v3 v3.0.1
Expand All @@ -20,15 +20,11 @@ require (
github.com/ProtonMail/go-crypto v1.0.0 // indirect
github.com/aymanbagabas/go-osc52/v2 v2.0.1 // indirect
github.com/charmbracelet/x/ansi v0.1.4 // indirect
github.com/charmbracelet/x/input v0.1.3 // indirect
github.com/charmbracelet/x/term v0.1.1 // indirect
github.com/charmbracelet/x/windows v0.1.2 // indirect
github.com/cli/safeexec v1.0.1 // indirect
github.com/cloudflare/circl v1.3.7 // indirect
github.com/cyphar/filepath-securejoin v0.2.4 // indirect
github.com/davecgh/go-spew v1.1.1 // indirect
github.com/emirpasic/gods v1.18.1 // indirect
github.com/erikgeiser/coninput v0.0.0-20211004153227-1c3628e74d0f // indirect
github.com/go-git/gcfg v1.5.1-0.20230307220236-3a3c6141e376 // indirect
github.com/go-git/go-billy/v5 v5.5.0 // indirect
github.com/golang/groupcache v0.0.0-20210331224755-41bb18bfe9da // indirect
Expand All @@ -37,10 +33,7 @@ require (
github.com/kevinburke/ssh_config v1.2.0 // indirect
github.com/lucasb-eyer/go-colorful v1.2.0 // indirect
github.com/mattn/go-isatty v0.0.20 // indirect
github.com/mattn/go-localereader v0.0.1 // indirect
github.com/mattn/go-runewidth v0.0.16 // indirect
github.com/muesli/ansi v0.0.0-20230316100256-276c6243b2f6 // indirect
github.com/muesli/cancelreader v0.2.2 // indirect
github.com/muesli/termenv v0.15.2 // indirect
github.com/pjbgf/sha1cd v0.3.0 // indirect
github.com/pmezard/go-difflib v1.0.0 // indirect
Expand All @@ -50,7 +43,6 @@ require (
github.com/skeema/knownhosts v1.2.2 // indirect
github.com/thlib/go-timezone-local v0.0.3 // indirect
github.com/xanzy/ssh-agent v0.3.3 // indirect
github.com/xo/terminfo v0.0.0-20220910002029-abceb7e1c41e // indirect
golang.org/x/crypto v0.23.0 // indirect
golang.org/x/mod v0.17.0 // indirect
golang.org/x/net v0.25.0 // indirect
Expand Down
24 changes: 3 additions & 21 deletions go.sum
Original file line number Diff line number Diff line change
Expand Up @@ -12,18 +12,10 @@ github.com/armon/go-socks5 v0.0.0-20160902184237-e75332964ef5/go.mod h1:wHh0iHkY
github.com/aymanbagabas/go-osc52/v2 v2.0.1 h1:HwpRHbFMcZLEVr42D4p7XBqjyuxQH5SMiErDT4WkJ2k=
github.com/aymanbagabas/go-osc52/v2 v2.0.1/go.mod h1:uYgXzlJ7ZpABp8OJ+exZzJJhRNQ2ASbcXHWsFqH8hp8=
github.com/bwesterb/go-ristretto v1.2.3/go.mod h1:fUIoIZaG73pV5biE2Blr2xEzDoMj7NFEuV9ekS419A0=
github.com/charmbracelet/bubbletea v0.26.6 h1:zTCWSuST+3yZYZnVSvbXwKOPRSNZceVeqpzOLN2zq1s=
github.com/charmbracelet/bubbletea v0.26.6/go.mod h1:dz8CWPlfCCGLFbBlTY4N7bjLiyOGDJEnd2Muu7pOWhk=
github.com/charmbracelet/lipgloss v0.12.1 h1:/gmzszl+pedQpjCOH+wFkZr/N90Snz40J/NR7A0zQcs=
github.com/charmbracelet/lipgloss v0.12.1/go.mod h1:V2CiwIuhx9S1S1ZlADfOj9HmxeMAORuz5izHb0zGbB8=
github.com/charmbracelet/x/ansi v0.1.4 h1:IEU3D6+dWwPSgZ6HBH+v6oUuZ/nVawMiWj5831KfiLM=
github.com/charmbracelet/x/ansi v0.1.4/go.mod h1:dk73KoMTT5AX5BsX0KrqhsTqAnhZZoCBjs7dGWp4Ktw=
github.com/charmbracelet/x/input v0.1.3 h1:oy4TMhyGQsYs/WWJwu1ELUMFnjiUAXwtDf048fHbCkg=
github.com/charmbracelet/x/input v0.1.3/go.mod h1:1gaCOyw1KI9e2j00j/BBZ4ErzRZqa05w0Ghn83yIhKU=
github.com/charmbracelet/x/term v0.1.1 h1:3cosVAiPOig+EV4X9U+3LDgtwwAoEzJjNdwbXDjF6yI=
github.com/charmbracelet/x/term v0.1.1/go.mod h1:wB1fHt5ECsu3mXYusyzcngVWWlu1KKUmmLhfgr/Flxw=
github.com/charmbracelet/x/windows v0.1.2 h1:Iumiwq2G+BRmgoayww/qfcvof7W/3uLoelhxojXlRWg=
github.com/charmbracelet/x/windows v0.1.2/go.mod h1:GLEO/l+lizvFDBPLIOk+49gdX49L9YWMB5t+DZd0jkQ=
github.com/cli/go-gh/v2 v2.9.0 h1:D3lTjEneMYl54M+WjZ+kRPrR5CEJ5BHS05isBPOV3LI=
github.com/cli/go-gh/v2 v2.9.0/go.mod h1:MeRoKzXff3ygHu7zP+NVTT+imcHW6p3tpuxHAzRM2xE=
github.com/cli/safeexec v1.0.1 h1:e/C79PbXF4yYTN/wauC4tviMxEV13BwljGj0N9j+N00=
Expand All @@ -44,8 +36,6 @@ github.com/elazarl/goproxy v0.0.0-20230808193330-2592e75ae04a h1:mATvB/9r/3gvcej
github.com/elazarl/goproxy v0.0.0-20230808193330-2592e75ae04a/go.mod h1:Ro8st/ElPeALwNFlcTpWmkr6IoMFfkjXAvTHpevnDsM=
github.com/emirpasic/gods v1.18.1 h1:FXtiHYKDGKCW2KzwZKx0iC0PQmdlorYgdFG9jPXJ1Bc=
github.com/emirpasic/gods v1.18.1/go.mod h1:8tpGGwCnJ5H4r6BWwaV6OrWmMoPhUl5jm/FMNAnJvWQ=
github.com/erikgeiser/coninput v0.0.0-20211004153227-1c3628e74d0f h1:Y/CXytFA4m6baUTXGLOoWe4PQhGxaX0KpnayAqC48p4=
github.com/erikgeiser/coninput v0.0.0-20211004153227-1c3628e74d0f/go.mod h1:vw97MGsxSvLiUE2X8qFplwetxpGLQrlU1Q9AUEIzCaM=
github.com/gliderlabs/ssh v0.3.7 h1:iV3Bqi942d9huXnzEF2Mt+CY9gLu8DNM4Obd+8bODRE=
github.com/gliderlabs/ssh v0.3.7/go.mod h1:zpHEXBstFnQYtGnB8k8kQLol82umzn/2/snG7alWVD8=
github.com/go-git/gcfg v1.5.1-0.20230307220236-3a3c6141e376 h1:+zs/tPmkDkHx3U66DAb0lQFJrpS6731Oaa12ikc+DiI=
Expand Down Expand Up @@ -79,16 +69,13 @@ github.com/lucasb-eyer/go-colorful v1.2.0 h1:1nnpGOrhyZZuNyfu1QjKiUICQ74+3FNCN69
github.com/lucasb-eyer/go-colorful v1.2.0/go.mod h1:R4dSotOR9KMtayYi1e77YzuveK+i7ruzyGqttikkLy0=
github.com/mattn/go-isatty v0.0.20 h1:xfD0iDuEKnDkl03q4limB+vH+GxLEtL/jb4xVJSWWEY=
github.com/mattn/go-isatty v0.0.20/go.mod h1:W+V8PltTTMOvKvAeJH7IuucS94S2C6jfK/D7dTCTo3Y=
github.com/mattn/go-localereader v0.0.1 h1:ygSAOl7ZXTx4RdPYinUpg6W99U8jWvWi9Ye2JC/oIi4=
github.com/mattn/go-localereader v0.0.1/go.mod h1:8fBrzywKY7BI3czFoHkuzRoWE9C+EiG4R1k4Cjx5p88=
github.com/mattn/go-runewidth v0.0.9/go.mod h1:H031xJmbD/WCDINGzjvQ9THkh0rPKHF+m2gUSrubnMI=
github.com/mattn/go-runewidth v0.0.16 h1:E5ScNMtiwvlvB5paMFdw9p4kSQzbXFikJ5SQO6TULQc=
github.com/mattn/go-runewidth v0.0.16/go.mod h1:Jdepj2loyihRzMpdS35Xk/zdY8IAYHsh153qUoGf23w=
github.com/muesli/ansi v0.0.0-20230316100256-276c6243b2f6 h1:ZK8zHtRHOkbHy6Mmr5D264iyp3TiX5OmNcI5cIARiQI=
github.com/muesli/ansi v0.0.0-20230316100256-276c6243b2f6/go.mod h1:CJlz5H+gyd6CUWT45Oy4q24RdLyn7Md9Vj2/ldJBSIo=
github.com/muesli/cancelreader v0.2.2 h1:3I4Kt4BQjOR54NavqnDogx/MIoWBFa0StPA8ELUXHmA=
github.com/muesli/cancelreader v0.2.2/go.mod h1:3XuTXfFS2VjM+HTLZY9Ak0l6eUKfijIfMUZ4EgX0QYo=
github.com/muesli/termenv v0.15.2 h1:GohcuySI0QmI3wN8Ok9PtKGkgkFIk7y6Vpb5PvrY+Wo=
github.com/muesli/termenv v0.15.2/go.mod h1:Epx+iuz8sNs7mNKhxzH4fWXGNpZwUaJKRS1noLXviQ8=
github.com/olekukonko/tablewriter v0.0.5 h1:P2Ga83D34wi1o9J6Wh1mRuqd4mF/x/lgBS7N7AbDhec=
github.com/olekukonko/tablewriter v0.0.5/go.mod h1:hPp6KlRPjbx+hW8ykQs1w3UBbZlj6HuIJcUGPhkA7kY=
github.com/onsi/gomega v1.27.10 h1:naR28SdDFlqrG6kScpT8VWpu1xWY5nJRCF3XaYyBjhI=
github.com/onsi/gomega v1.27.10/go.mod h1:RsS8tutOdbdgzbPtzzATp12yT7kM5I5aElG3evPbQ0M=
github.com/pjbgf/sha1cd v0.3.0 h1:4D5XXmUUBUl/xQ6IjCkEAbqXskkq/4O7LmGn0AqMDs4=
Expand Down Expand Up @@ -120,8 +107,6 @@ github.com/thlib/go-timezone-local v0.0.3 h1:ie5XtZWG5lQ4+1MtC5KZ/FeWlOKzW2nPoUn
github.com/thlib/go-timezone-local v0.0.3/go.mod h1:/Tnicc6m/lsJE0irFMA0LfIwTBo4QP7A8IfyIv4zZKI=
github.com/xanzy/ssh-agent v0.3.3 h1:+/15pJfg/RsTxqYcX6fHqOXZwwMP+2VyYWJeWM2qQFM=
github.com/xanzy/ssh-agent v0.3.3/go.mod h1:6dzNDKs0J9rVPHPhaGCukekBHKqfl+L3KghI1Bc68Uw=
github.com/xo/terminfo v0.0.0-20220910002029-abceb7e1c41e h1:JVG44RsyaB9T2KIHavMF/ppJZNG9ZpyihvCd0w101no=
github.com/xo/terminfo v0.0.0-20220910002029-abceb7e1c41e/go.mod h1:RbqR21r5mrJuqunuUZ/Dhy/avygyECGrLceyNeo4LiM=
github.com/yuin/goldmark v1.4.13/go.mod h1:6yULJ656Px+3vBD8DxQVa3kxgyrAnzto9xy5taEt/CY=
golang.org/x/crypto v0.0.0-20190308221718-c2843e01d9a2/go.mod h1:djNgcEr1/C05ACkg1iLfiJU5Ep61QUkGW8qpdssI0+w=
golang.org/x/crypto v0.0.0-20210921155107-089bfa567519/go.mod h1:GvvjBRRGRdwPK5ydBHafDWAxML/pGHZbMvKqRZ5+Abc=
Expand All @@ -130,8 +115,6 @@ golang.org/x/crypto v0.3.1-0.20221117191849-2c476679df9a/go.mod h1:hebNnKkNXi2Uz
golang.org/x/crypto v0.7.0/go.mod h1:pYwdfH91IfpZVANVyUOhSIPZaFoJGxTFbZhFTx+dXZU=
golang.org/x/crypto v0.23.0 h1:dIJU/v2J8Mdglj/8rJ6UUOM3Zc9zLZxVZwwxMooUSAI=
golang.org/x/crypto v0.23.0/go.mod h1:CKFgDieR+mRhux2Lsu27y0fO304Db0wZe70UKqHu0v8=
golang.org/x/exp v0.0.0-20231006140011-7918f672742d h1:jtJma62tbqLibJ5sFQz8bKtEM8rJBtfilJ2qTU199MI=
golang.org/x/exp v0.0.0-20231006140011-7918f672742d/go.mod h1:ldy0pHrwJyGW56pPQzzkH36rKxoZW1tw7ZJpeKx+hdo=
golang.org/x/mod v0.6.0-dev.0.20220419223038-86c51ed26bb4/go.mod h1:jJ57K6gSWd91VN4djpZkiMVwK6gcyfeH4XE8wZrZaV4=
golang.org/x/mod v0.8.0/go.mod h1:iBbtSCu2XBx23ZKBPSOrRkjjQPZFPuis4dIYUhu/chs=
golang.org/x/mod v0.17.0 h1:zY54UmvipHiNd+pm+m0x9KhZ9hl1/7QNMyxXbc6ICqA=
Expand All @@ -158,7 +141,6 @@ golang.org/x/sys v0.0.0-20201119102817-f84b799fce68/go.mod h1:h1NjWce9XRLGQEsW7w
golang.org/x/sys v0.0.0-20210124154548-22da62e12c0c/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
golang.org/x/sys v0.0.0-20210423082822-04245dca01da/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
golang.org/x/sys v0.0.0-20210615035016-665e8c7367d1/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
golang.org/x/sys v0.0.0-20210809222454-d867a43fc93e/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
golang.org/x/sys v0.0.0-20210831042530-f4d43177bf5e/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
golang.org/x/sys v0.0.0-20220520151302-bc2c85ada10a/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
golang.org/x/sys v0.0.0-20220715151400-c0bba94af5f8/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
Expand Down
Loading

0 comments on commit ec8aa2a

Please sign in to comment.