Open
Conversation
fmt.Println() already separates its operands with spaces.
Until https://tip.golang.org/doc/modules/managing-dependencies#tools is available to me, I have a shell script that detects the version of swag by invoking swag --version and parsing its output, then updates if I'm not using the version specified in the script. With v2, the output looks like this Swag version: v2.0.0 swag version v2.0.0 While it might be useful to have the swag version always printed for troubleshooting purposes, I think it should be printed to stderr so as not to mess up output that is supposed to be parsed. This change will result in the first line to be sent to stderr, making it backward-compatible with the previous output of swag --version while still retaining the improvement of having it printed for every command.
Author
|
The whole script looks as follows (it's actually a just recipe): tool: ci-tool
#!/usr/bin/env bash
set -euo pipefail
# golang.org/x/tools ...
go install golang.org/x/tools/...@latest
echo "mockery installation ..."
go install github.com/vektra/mockery/v2/...@latest
echo "mockery: " `mockery --version`
# Note that the `+x` part in the comparison of the two variables is used to handle cases where one of the variables is
# empty (i.e., the `+x` converts an empty string to the string 'x').
VERSION=$(swag --version 2>/dev/null | sed -rn "s/.* (v[0-9]+.[0-9]+.[0-9]+)$/\1/p");
if [ $VERSION+"x" != {{SWAGGO_VERSION}}+"x" ]; then
echo "swaggo installation ({{SWAGGO_VERSION}})";
go install github.com/swaggo/swag/v2/cmd/swag@{{SWAGGO_VERSION}};
swag --version;
fi |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Until https://tip.golang.org/doc/modules/managing-dependencies#tools is
available to me, I have a shell script that detects the version of swag
by invoking
swag --versionand parsing its output, then updates if I'mnot using the version specified in the script. With v2, the output
looks like this
While it might be useful to have the swag version always printed for
troubleshooting purposes, I think it should be printed to stderr so as
not to mess up output that is supposed to be parsed.
This change will result in the first line to be sent to stderr, making
it backward-compatible with the previous output of
swag --versionwhilestill retaining the improvement of having it printed for every command.