Compare commits

..

1 Commits

Author SHA1 Message Date
dependabot[bot]
0377c7aa52
Bump golang from 1.23.2 to 1.23.3
Bumps golang from 1.23.2 to 1.23.3.

---
updated-dependencies:
- dependency-name: golang
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-11-14 03:22:25 +00:00
12 changed files with 22 additions and 17 deletions

View File

@ -10,9 +10,7 @@ linters:
- gofmt - gofmt
- goimports - goimports
- gosec - gosec
- gosimple - megacheck
- staticcheck
- unused
- misspell - misspell
- nakedret - nakedret
- nolintlint - nolintlint
@ -33,6 +31,13 @@ linters-settings:
desc: "replaced by io and os packages since Go 1.16: https://tip.golang.org/doc/go1.16#ioutil" desc: "replaced by io and os packages since Go 1.16: https://tip.golang.org/doc/go1.16#ioutil"
issues: issues:
exclude-rules: exclude-rules:
- linters:
- gosec
text: "Implicit memory aliasing in for loop."
path: _test\.go
- linters:
- revive
text: "unexported-return"
- linters: - linters:
- revive - revive
text: "var-naming" text: "var-naming"

View File

@ -12,7 +12,7 @@ func createEvaluateAllCommand() *cobra.Command {
Use: "eval-all [expression] [yaml_file1]...", Use: "eval-all [expression] [yaml_file1]...",
Aliases: []string{"ea"}, Aliases: []string{"ea"},
Short: "Loads _all_ yaml documents of _all_ yaml files and runs expression once", Short: "Loads _all_ yaml documents of _all_ yaml files and runs expression once",
ValidArgsFunction: func(_ *cobra.Command, args []string, _ string) ([]string, cobra.ShellCompDirective) { ValidArgsFunction: func(cmd *cobra.Command, args []string, toComplete string) ([]string, cobra.ShellCompDirective) {
if len(args) == 0 { if len(args) == 0 {
return nil, cobra.ShellCompDirectiveNoFileComp return nil, cobra.ShellCompDirectiveNoFileComp
} }

View File

@ -13,7 +13,7 @@ func createEvaluateSequenceCommand() *cobra.Command {
Use: "eval [expression] [yaml_file1]...", Use: "eval [expression] [yaml_file1]...",
Aliases: []string{"e"}, Aliases: []string{"e"},
Short: "(default) Apply the expression to each document in each yaml file in sequence", Short: "(default) Apply the expression to each document in each yaml file in sequence",
ValidArgsFunction: func(_ *cobra.Command, args []string, _ string) ([]string, cobra.ShellCompDirective) { ValidArgsFunction: func(cmd *cobra.Command, args []string, toComplete string) ([]string, cobra.ShellCompDirective) {
if len(args) == 0 { if len(args) == 0 {
return nil, cobra.ShellCompDirectiveNoFileComp return nil, cobra.ShellCompDirectiveNoFileComp
} }

View File

@ -66,7 +66,7 @@ yq -P -oy sample.json
return evaluateSequence(cmd, args) return evaluateSequence(cmd, args)
}, },
PersistentPreRunE: func(cmd *cobra.Command, _ []string) error { PersistentPreRunE: func(cmd *cobra.Command, args []string) error {
cmd.SetOut(cmd.OutOrStdout()) cmd.SetOut(cmd.OutOrStdout())
level := logging.WARNING level := logging.WARNING
stringFormat := `[%{level}] %{color}%{time:15:04:05}%{color:reset} %{message}` stringFormat := `[%{level}] %{color}%{time:15:04:05}%{color:reset} %{message}`

View File

@ -286,7 +286,7 @@ func (dec *tomlDecoder) processTable(currentNode *toml.Node) (bool, error) {
} }
runAgainstCurrentExp, err = dec.decodeKeyValuesIntoMap(tableNodeValue, tableValue) runAgainstCurrentExp, err = dec.decodeKeyValuesIntoMap(tableNodeValue, tableValue)
if err != nil && !errors.Is(err, io.EOF) { if err != nil && !errors.Is(io.EOF, err) {
return false, err return false, err
} }
} }
@ -343,7 +343,7 @@ func (dec *tomlDecoder) processArrayTable(currentNode *toml.Node) (bool, error)
tableValue := dec.parser.Expression() tableValue := dec.parser.Expression()
runAgainstCurrentExp, err := dec.decodeKeyValuesIntoMap(tableNodeValue, tableValue) runAgainstCurrentExp, err := dec.decodeKeyValuesIntoMap(tableNodeValue, tableValue)
log.Debugf("table node err: %w", err) log.Debugf("table node err: %w", err)
if err != nil && !errors.Is(err, io.EOF) { if err != nil && !errors.Is(io.EOF, err) {
return false, err return false, err
} }
c := Context{} c := Context{}

View File

@ -311,7 +311,7 @@ func opTokenWithPrefs(opType *operationType, assignOpType *operationType, prefer
} }
func expressionOpToken(expression string) yqAction { func expressionOpToken(expression string) yqAction {
return func(_ lexer.Token) (*token, error) { return func(rawToken lexer.Token) (*token, error) {
prefs := expressionOpPreferences{expression: expression} prefs := expressionOpPreferences{expression: expression}
expressionOp := &Operation{OperationType: expressionOpType, Preferences: prefs} expressionOp := &Operation{OperationType: expressionOpType, Preferences: prefs}
return &token{TokenType: operationToken, Operation: expressionOp}, nil return &token{TokenType: operationToken, Operation: expressionOp}, nil
@ -522,7 +522,7 @@ func parentWithLevel() yqAction {
} }
func parentWithDefaultLevel() yqAction { func parentWithDefaultLevel() yqAction {
return func(_ lexer.Token) (*token, error) { return func(rawToken lexer.Token) (*token, error) {
prefs := parentOpPreferences{Level: 1} prefs := parentOpPreferences{Level: 1}
op := &Operation{OperationType: getParentOpType, Value: getParentOpType.Type, StringValue: getParentOpType.Type, Preferences: prefs} op := &Operation{OperationType: getParentOpType, Value: getParentOpType.Type, StringValue: getParentOpType.Type, Preferences: prefs}
return &token{TokenType: operationToken, Operation: op, CheckForPostTraverse: true}, nil return &token{TokenType: operationToken, Operation: op, CheckForPostTraverse: true}, nil

View File

@ -7,7 +7,7 @@ type assignPreferences struct {
} }
func assignUpdateFunc(prefs assignPreferences) crossFunctionCalculation { func assignUpdateFunc(prefs assignPreferences) crossFunctionCalculation {
return func(_ *dataTreeNavigator, _ Context, lhs *CandidateNode, rhs *CandidateNode) (*CandidateNode, error) { return func(d *dataTreeNavigator, context Context, lhs *CandidateNode, rhs *CandidateNode) (*CandidateNode, error) {
if !prefs.OnlyWriteNull || lhs.Tag == "!!null" { if !prefs.OnlyWriteNull || lhs.Tag == "!!null" {
lhs.UpdateFrom(rhs, prefs) lhs.UpdateFrom(rhs, prefs)
} }

View File

@ -18,7 +18,7 @@ func compareOperator(d *dataTreeNavigator, context Context, expressionNode *Expr
} }
func compare(prefs compareTypePref) func(d *dataTreeNavigator, context Context, lhs *CandidateNode, rhs *CandidateNode) (*CandidateNode, error) { func compare(prefs compareTypePref) func(d *dataTreeNavigator, context Context, lhs *CandidateNode, rhs *CandidateNode) (*CandidateNode, error) {
return func(_ *dataTreeNavigator, context Context, lhs *CandidateNode, rhs *CandidateNode) (*CandidateNode, error) { return func(d *dataTreeNavigator, context Context, lhs *CandidateNode, rhs *CandidateNode) (*CandidateNode, error) {
log.Debugf("compare cross function") log.Debugf("compare cross function")
if lhs == nil && rhs == nil { if lhs == nil && rhs == nil {
owner := &CandidateNode{} owner := &CandidateNode{}

View File

@ -53,7 +53,7 @@ func sequenceFor(d *dataTreeNavigator, context Context, matchingNode *CandidateN
log.Debugf("**********sequenceFor %v", NodeToString(matchingNode)) log.Debugf("**********sequenceFor %v", NodeToString(matchingNode))
mapPairs, err := crossFunction(d, context.ChildContext(matches), expressionNode, mapPairs, err := crossFunction(d, context.ChildContext(matches), expressionNode,
func(_ *dataTreeNavigator, _ Context, lhs *CandidateNode, rhs *CandidateNode) (*CandidateNode, error) { func(d *dataTreeNavigator, context Context, lhs *CandidateNode, rhs *CandidateNode) (*CandidateNode, error) {
node := &CandidateNode{Kind: MappingNode, Tag: "!!map"} node := &CandidateNode{Kind: MappingNode, Tag: "!!map"}
log.Debugf("**********adding key %v and value %v", NodeToString(lhs), NodeToString(rhs)) log.Debugf("**********adding key %v and value %v", NodeToString(lhs), NodeToString(rhs))

View File

@ -6,7 +6,7 @@ func equalsOperator(d *dataTreeNavigator, context Context, expressionNode *Expre
} }
func isEquals(flip bool) func(d *dataTreeNavigator, context Context, lhs *CandidateNode, rhs *CandidateNode) (*CandidateNode, error) { func isEquals(flip bool) func(d *dataTreeNavigator, context Context, lhs *CandidateNode, rhs *CandidateNode) (*CandidateNode, error) {
return func(_ *dataTreeNavigator, _ Context, lhs *CandidateNode, rhs *CandidateNode) (*CandidateNode, error) { return func(d *dataTreeNavigator, context Context, lhs *CandidateNode, rhs *CandidateNode) (*CandidateNode, error) {
value := false value := false
log.Debugf("isEquals cross function") log.Debugf("isEquals cross function")
if lhs == nil && rhs == nil { if lhs == nil && rhs == nil {

View File

@ -1,7 +1,7 @@
package yqlib package yqlib
import ( import (
"errors" "fmt"
) )
func errorOperator(d *dataTreeNavigator, context Context, expressionNode *ExpressionNode) (Context, error) { func errorOperator(d *dataTreeNavigator, context Context, expressionNode *ExpressionNode) (Context, error) {
@ -16,5 +16,5 @@ func errorOperator(d *dataTreeNavigator, context Context, expressionNode *Expres
if rhs.MatchingNodes.Len() > 0 { if rhs.MatchingNodes.Len() > 0 {
errorMessage = rhs.MatchingNodes.Front().Value.(*CandidateNode).Value errorMessage = rhs.MatchingNodes.Front().Value.(*CandidateNode).Value
} }
return Context{}, errors.New(errorMessage) return Context{}, fmt.Errorf(errorMessage)
} }

View File

@ -1,5 +1,5 @@
#!/bin/sh #!/bin/sh
set -ex set -ex
go mod download golang.org/x/tools@latest go mod download golang.org/x/tools@latest
curl -sSfL https://raw.githubusercontent.com/golangci/golangci-lint/master/install.sh | sh -s -- -b $(go env GOPATH)/bin v1.62.0 curl -sSfL https://raw.githubusercontent.com/golangci/golangci-lint/master/install.sh | sh -s -- -b $(go env GOPATH)/bin v1.55.2
wget -O- -nv https://raw.githubusercontent.com/securego/gosec/master/install.sh | sh -s wget -O- -nv https://raw.githubusercontent.com/securego/gosec/master/install.sh | sh -s