Commit Graph
38 Commits
Author SHA1 Message Date
5c302ee313 perf: use io.WriteString in writeString to avoid heap allocation (#2809)
writeString converted every string to []byte before calling
io.Writer.Write, which Go escape analysis reports as escaping to the
heap. io.WriteString uses the io.StringWriter fast path when available
(the standard printer writer is a *bufio.Writer) and falls back to
Write([]byte(txt)) otherwise.

Fixes #2807

Co-authored-by: Pablo Garcia <pablito@MacBook-Neo-de-Pablo.local>
2026-08-19 13:43:22 +10:00
b151522485 fix: preserve original filename when using --front-matter (#2613)
When using --front-matter, yq creates a temporary file for the
extracted YAML content but replaces the original filename in args
with the temp file path. This caused the 'filename' operator to
return the temp file path instead of the original filename.

Added a filename alias mechanism: when front matter processing
replaces the file path, it registers the original filename as an
alias. The readDocuments and stream evaluator functions resolve
aliases before setting candidateNode.filename.

Fixes #2538

Co-authored-by: cobyfrombrooklyn-bot <cobyfrombrooklyn@gmail.com>
2026-03-26 09:06:20 +11:00
Mike Farah b4463e29e8 Adding a EvaluateAll function to StringEvaluator #1966 2024-03-07 12:02:40 +11:00
Mike FarahandGitHub 13d1bbb45f Generic ast (#1829)
Remove dependency on yaml.Node for internal AST representation. Yaml decoder is now just another decoder.
2023-10-18 12:11:53 +11:00
Giorgio GalloandGitHub 80b42b81fd Implement shell output format (#1645)
* fix typo in a comment

* implement shell output format

* fix a typo

* add two test cases, have source uses ascii only

* add integration tests and documentation

* add fixes after code revieew
2023-05-04 11:06:56 +10:00
Mike FarahandGitHub 880397d549 Refactored decoder responsibilities (#1402)
- improved comment handling
- yaml decoder now responsible for leading content work around
2022-10-28 14:16:46 +11:00
Jih-Wei, LiangandGitHub 3c222d8707 Added StringEvaluator for evaluating string input #1266 (#1278) 2022-08-01 08:50:56 +10:00
Mike Farah 6bce23d9c2 Improved handling of trailing document comments 2022-05-25 10:54:03 +10:00
Mike FarahandGitHub ec8ef312ef Added XML encoding/decoding (#1067)
* Added XML encoding/decoding

* Minor fixes

* Improve yq doc

* Lint
2022-01-15 11:57:59 +11:00
Mike FarahandGitHub df32baedf1 Added XML decoder (#1044) 2021-12-21 15:02:07 +11:00
Matthieu MORELandGitHub 59752fb36d enable more linters (#1043)
* enable revive linter

* enable gochecknoinits linter

* enable unconvert linter

* enable unparam linter

* enable asciicheck linter

* enable depguard linter

* enable nakedret linter

* enable megacheck linter

* enable nolintlint linter

* enable predeclared linter

* Update go.yml

* Update go.yml
2021-12-21 09:30:08 +11:00
Mike Farah ffd1f022aa Report while filename failed to parse #1030 2021-12-06 17:25:32 +11:00
Matthieu MORELandMike Farah 15d7c9e118 enable misspell linter 2021-11-25 22:01:30 +11:00
Matthieu MORELandMike Farah 8711042c98 enable errorlint linter 2021-11-24 09:14:02 +11:00
Mike Farah 33871bf007 Fixed header preprocessing! 2021-11-14 10:59:50 +11:00
Mike Farah 11b6261e8b remove leading content indicator 2021-11-14 10:59:50 +11:00
Mike Farah d912d7d178 wip 2021-11-14 10:59:50 +11:00
Mike Farah 4e628327c4 Better way of processing leading content 2021-07-20 10:19:55 +10:00
Mike Farah bbebebe30c Fixed for most cases, except strip comments 2021-07-20 09:18:40 +10:00
Mike Farah 3a6f73e836 wip 2021-07-19 19:52:51 +10:00
Mike Farah a13617407e Fixed EOF bug when processing empty files 2021-07-16 20:56:22 +10:00
Mike Farah 2f0fe8aa13 Increment version 2021-07-16 10:09:12 +10:00
Mike Farah d74bb8e28d Adding magic to detect leading seperators 2021-07-15 11:34:49 +10:00
Mike Farah bae319ab7f Revert usage of filepath.Clean (azure compatability issues) 2021-07-08 10:26:35 +10:00
Mike Farah 38ce8618e1 Revert "Fix for gosec rule G304 - sanitize filepaths"
This reverts commit ffb6cbf769.
2021-07-08 10:14:01 +10:00
Monica DebbelerandMike Farah ffb6cbf769 Fix for gosec rule G304 - sanitize filepaths 2021-07-07 13:52:11 +10:00
Mike Farah 76bd1896e9 wip 2021-02-11 10:58:40 +11:00
Mike Farah 7d5b6b5442 Removed global vars 2021-02-11 10:58:40 +11:00
Mike Farah 8de10e550d wip - write in place 2020-11-29 20:25:47 +11:00
Mike Farah fc3af441e5 Extracted out evaluators 2020-11-22 11:56:28 +11:00
Mike Farah d38caf6bc2 Added File operators 2020-11-20 22:57:32 +11:00
Mike Farah d91b25840a Better documentation generation 2020-11-13 21:22:05 +11:00
Mike Farah 019acfe456 Better documentation generation 2020-11-13 20:58:01 +11:00
Mike Farah af39fc737d Fixed linting 2020-11-13 14:07:11 +11:00
Mike Farah 708ff02e8d Fixed collect object for multi doc 2020-11-13 13:19:54 +11:00
Mike Farah 2edf64182b refining 2020-11-06 14:37:01 +11:00
Mike Farah b290a65602 document index 2020-11-06 12:11:38 +11:00
Mike Farah b1f139c965 refactored 2020-11-04 10:48:43 +11:00