Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package gh for openSUSE:Factory checked in at 2021-06-01 10:34:53 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/gh (Old) and /work/SRC/openSUSE:Factory/.gh.new.1898 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Package is "gh" Tue Jun 1 10:34:53 2021 rev:9 rq:895128 version:1.10.3 Changes: -------- --- /work/SRC/openSUSE:Factory/gh/gh.changes 2021-05-20 19:25:37.309804323 +0200 +++ /work/SRC/openSUSE:Factory/.gh.new.1898/gh.changes 2021-06-01 10:35:10.272579064 +0200 @@ -1,0 +2,11 @@ +Sat May 22 21:38:34 UTC 2021 - Mustafa ��al����kan <musfay@protonmail.com> + +- Update to version 1.10.3: + * Fix gh pr merge with GitHub Enterprise Server < 3.0 #3688 + * Speed up measuring display width of text #3668 + * Simplify Debian/Ubuntu installation docs #3672 + +- Changes from 1.10.2: + * Fix creating Windows directory for gh config #3666 + +------------------------------------------------------------------- Old: ---- gh-1.10.1.tar.gz New: ---- gh-1.10.3.tar.gz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ gh.spec ++++++ --- /var/tmp/diff_new_pack.6Lvk4s/_old 2021-06-01 10:35:11.124580514 +0200 +++ /var/tmp/diff_new_pack.6Lvk4s/_new 2021-06-01 10:35:11.128580521 +0200 @@ -18,7 +18,7 @@ %define goflags "-buildmode=pie -trimpath -mod=vendor -modcacherw" Name: gh -Version: 1.10.1 +Version: 1.10.3 Release: 0 Summary: The official CLI for GitHub License: MIT ++++++ gh-1.10.1.tar.gz -> gh-1.10.3.tar.gz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/cli-1.10.1/.github/workflows/releases.yml new/cli-1.10.3/.github/workflows/releases.yml --- old/cli-1.10.1/.github/workflows/releases.yml 2021-05-19 13:35:57.000000000 +0200 +++ new/cli-1.10.3/.github/workflows/releases.yml 2021-05-21 19:30:32.000000000 +0200 @@ -80,7 +80,7 @@ popd - name: Run reprepro env: - RELEASES: "cosmic eoan disco groovy focal stable oldstable testing unstable buster bullseye stretch jessie bionic trusty precise xenial hirsute impish kali-rolling" + RELEASES: "cosmic eoan disco groovy focal stable oldstable testing sid unstable buster bullseye stretch jessie bionic trusty precise xenial hirsute impish kali-rolling" run: | mkdir -p upload for release in $RELEASES; do diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/cli-1.10.1/README.md new/cli-1.10.3/README.md --- old/cli-1.10.1/README.md 2021-05-19 13:35:57.000000000 +0200 +++ new/cli-1.10.3/README.md 2021-05-21 19:30:32.000000000 +0200 @@ -69,6 +69,10 @@ MSI installers are available for download on the [releases page][]. +### Github Actions + +GitHub CLI comes pre-installed in all [Github-Hosted Runners](https://docs.github.com/en/actions/using-github-hosted-runners/about-github-...). + ### Other platforms Download packaged binaries from the [releases page][]. diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/cli-1.10.1/api/query_builder.go new/cli-1.10.3/api/query_builder.go --- old/cli-1.10.1/api/query_builder.go 2021-05-19 13:35:57.000000000 +0200 +++ new/cli-1.10.3/api/query_builder.go 2021-05-21 19:30:32.000000000 +0200 @@ -208,6 +208,8 @@ q = append(q, prFiles) case "commits": q = append(q, prCommits) + case "lastCommit": // pseudo-field + q = append(q, `commits(last:1){nodes{commit{oid}}}`) case "commitsCount": // pseudo-field q = append(q, `commits{totalCount}`) case "statusCheckRollup": diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/cli-1.10.1/docs/install_linux.md new/cli-1.10.3/docs/install_linux.md --- old/cli-1.10.1/docs/install_linux.md 2021-05-19 13:35:57.000000000 +0200 +++ new/cli-1.10.3/docs/install_linux.md 2021-05-21 19:30:32.000000000 +0200 @@ -2,7 +2,7 @@ Packages downloaded from https://cli.github.com or from https://github.com/cli/cli/releases are considered official binaries. We focus on popular Linux distros and -the following CPU architectures: `i386`, `amd64`, `arm64`. +the following CPU architectures: `i386`, `amd64`, `arm64`, `armhf`. Other sources for installation are community-maintained and thus might lag behind our release schedule. @@ -13,30 +13,21 @@ ### Debian, Ubuntu Linux (apt) -Install (Using apt-key): +:warning: This will only work for the [architectures we officially support](/.goreleaser.yml#L27). -```bash -sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-key C99B11DEB97541F0 -sudo apt-add-repository https://cli.github.com/packages -sudo apt update -sudo apt install gh -``` +The below should work for any debian-based distribution. You can change `stable` to a specific codename [we support](/.github/workflows/releases.yml#L83) if that is your preference. -**Note**: If you are behind a firewall, the connection to `keyserver.ubuntu.com` might fail. In that case, try running `sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-key C99B11DEB97541F0`. +Install: -**Note**: If you get _"gpg: failed to start the dirmngr '/usr/bin/dirmngr': No such file or directory"_ error, try installing the `dirmngr` package. Run `sudo apt-get install dirmngr` and repeat the steps above. - -**Note**: most systems will have `apt-add-repository` already. If you get a _command not found_ -error, try running `sudo apt install software-properties-common` and trying these steps again. - -Install (without add-apt-repository, with limited keyring scope): ```bash -sudo apt-key --keyring /usr/share/keyrings/githubcli-archive-keyring.gpg adv --keyserver keyserver.ubuntu.com --recv-key C99B11DEB97541F0 -echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/githubcli-archive-keyring.gpg] https://cli.github.com/packages $(lsb_release -cs) main" | sudo tee /etc/apt/sources.list.d/github-cli2.list > /dev/null +curl -fsSL https://cli.github.com/packages/githubcli-archive-keyring.gpg | sudo gpg --dearmor -o /usr/share/keyrings/githubcli-archive-keyring.gpg +echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/githubcli-archive-keyring.gpg] https://cli.github.com/packages stable main" | sudo tee /etc/apt/sources.list.d/github-cli.list > /dev/null sudo apt update sudo apt install gh ``` +**Note**: If you get _"gpg: failed to start the dirmngr '/usr/bin/dirmngr': No such file or directory"_ error, try installing the `dirmngr` package. Run `sudo apt-get install dirmngr` and repeat the steps above. + Upgrade: ```bash diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/cli-1.10.1/go.mod new/cli-1.10.3/go.mod --- old/cli-1.10.1/go.mod 2021-05-19 13:35:57.000000000 +0200 +++ new/cli-1.10.3/go.mod 2021-05-21 19:30:32.000000000 +0200 @@ -24,7 +24,7 @@ github.com/mgutz/ansi v0.0.0-20200706080929-d51e80ef957d github.com/mitchellh/go-homedir v1.1.0 github.com/muesli/termenv v0.8.1 - github.com/rivo/uniseg v0.1.0 + github.com/rivo/uniseg v0.2.0 github.com/shurcooL/githubv4 v0.0.0-20200928013246-d292edc3691b github.com/shurcooL/graphql v0.0.0-20181231061246-d48a9a75455f github.com/spf13/cobra v1.1.3 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/cli-1.10.1/go.sum new/cli-1.10.3/go.sum --- old/cli-1.10.1/go.sum 2021-05-19 13:35:57.000000000 +0200 +++ new/cli-1.10.3/go.sum 2021-05-21 19:30:32.000000000 +0200 @@ -227,8 +227,9 @@ github.com/prometheus/procfs v0.0.0-20181005140218-185b4288413d/go.mod h1:c3At6R/oaqEKCNdg8wHV1ftS6bRYblBhIjjI8uT2IGk= github.com/prometheus/procfs v0.0.0-20190507164030-5867b95ac084/go.mod h1:TjEm7ze935MbeOT/UhFTIMYKhuLP4wbCsTZCD3I8kEA= github.com/prometheus/tsdb v0.7.1/go.mod h1:qhTCs0VvXwvX/y3TZrWD7rabWM+ijKTux40TwIPHuXU= -github.com/rivo/uniseg v0.1.0 h1:+2KBaVoUmb9XzDsrx/Ct0W/EYOSFf/nWTauy++DprtY= github.com/rivo/uniseg v0.1.0/go.mod h1:J6wj4VEh+S6ZtnVlnTBMWIodfgj8LQOQFoIToxlJtxc= +github.com/rivo/uniseg v0.2.0 h1:S1pD9weZBuJdFmowNwbpi7BJ8TNftyUImj/0WQi72jY= +github.com/rivo/uniseg v0.2.0/go.mod h1:J6wj4VEh+S6ZtnVlnTBMWIodfgj8LQOQFoIToxlJtxc= github.com/rogpeppe/fastuuid v0.0.0-20150106093220-6724a57986af/go.mod h1:XWv6SoW27p1b0cqNHllgS5HIMJraePCO15w5zCzIWYg= github.com/rogpeppe/go-internal v1.3.0/go.mod h1:M8bDsm7K2OlrFYOpmOWEs/qY81heoFRclV5y23lUDJ4= github.com/russross/blackfriday/v2 v2.0.1 h1:lPqVAte+HuHNfhJ/0LC98ESWRz8afy9tM/0RK8m9o+Q= diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/cli-1.10.1/internal/config/config_file.go new/cli-1.10.3/internal/config/config_file.go --- old/cli-1.10.1/internal/config/config_file.go 2021-05-19 13:35:57.000000000 +0200 +++ new/cli-1.10.3/internal/config/config_file.go 2021-05-21 19:30:32.000000000 +0200 @@ -3,10 +3,8 @@ import ( "errors" "fmt" - "io" "io/ioutil" "os" - "path" "path/filepath" "syscall" @@ -111,7 +109,7 @@ } var WriteConfigFile = func(filename string, data []byte) error { - err := os.MkdirAll(path.Dir(filename), 0771) + err := os.MkdirAll(filepath.Dir(filename), 0771) if err != nil { return pathError(err) } @@ -122,11 +120,7 @@ } defer cfgFile.Close() - n, err := cfgFile.Write(data) - if err == nil && n < len(data) { - err = io.ErrShortWrite - } - + _, err = cfgFile.Write(data) return err } @@ -263,7 +257,7 @@ if s, err := os.Stat(p); err == nil && s.Mode().IsRegular() { return p } - newPath := path.Dir(p) + newPath := filepath.Dir(p) if newPath == p || newPath == "/" || newPath == "." { break } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/cli-1.10.1/internal/config/config_file_test.go new/cli-1.10.3/internal/config/config_file_test.go --- old/cli-1.10.1/internal/config/config_file_test.go 2021-05-19 13:35:57.000000000 +0200 +++ new/cli-1.10.3/internal/config/config_file_test.go 2021-05-21 19:30:32.000000000 +0200 @@ -3,7 +3,9 @@ import ( "bytes" "fmt" + "io/ioutil" "os" + "path/filepath" "testing" "github.com/stretchr/testify/assert" @@ -167,3 +169,28 @@ }) } } + +func Test_configFile_Write_toDisk(t *testing.T) { + configDir := filepath.Join(t.TempDir(), ".config", "gh") + os.Setenv(GH_CONFIG_DIR, configDir) + defer os.Unsetenv(GH_CONFIG_DIR) + + cfg := NewFromString(`pager: less`) + err := cfg.Write() + if err != nil { + t.Fatal(err) + } + + expectedConfig := "pager: less\n" + if configBytes, err := ioutil.ReadFile(filepath.Join(configDir, "config.yml")); err != nil { + t.Error(err) + } else if string(configBytes) != expectedConfig { + t.Errorf("expected config.yml %q, got %q", expectedConfig, string(configBytes)) + } + + if configBytes, err := ioutil.ReadFile(filepath.Join(configDir, "hosts.yml")); err != nil { + t.Error(err) + } else if string(configBytes) != "" { + t.Errorf("unexpected hosts.yml: %q", string(configBytes)) + } +} diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/cli-1.10.1/pkg/cmd/pr/merge/merge.go new/cli-1.10.3/pkg/cmd/pr/merge/merge.go --- old/cli-1.10.1/pkg/cmd/pr/merge/merge.go 2021-05-19 13:35:57.000000000 +0200 +++ new/cli-1.10.3/pkg/cmd/pr/merge/merge.go 2021-05-21 19:30:32.000000000 +0200 @@ -156,7 +156,7 @@ findOptions := shared.FindOptions{ Selector: opts.SelectorArg, - Fields: []string{"id", "number", "state", "title", "commits", "mergeable", "headRepositoryOwner", "headRefName"}, + Fields: []string{"id", "number", "state", "title", "lastCommit", "mergeable", "headRepositoryOwner", "headRefName"}, } pr, baseRepo, err := opts.Finder.Find(findOptions) if err != nil { diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/cli-1.10.1/pkg/cmd/pr/merge/merge_test.go new/cli-1.10.3/pkg/cmd/pr/merge/merge_test.go --- old/cli-1.10.1/pkg/cmd/pr/merge/merge_test.go 2021-05-19 13:35:57.000000000 +0200 +++ new/cli-1.10.3/pkg/cmd/pr/merge/merge_test.go 2021-05-21 19:30:32.000000000 +0200 @@ -464,11 +464,8 @@ } stubCommit(pr, "COMMITSHA1") - shared.RunCommandFinder( - "", - pr, - baseRepo("OWNER", "REPO", "master"), - ) + prFinder := shared.RunCommandFinder("", pr, baseRepo("OWNER", "REPO", "master")) + prFinder.ExpectFields([]string{"id", "number", "state", "title", "lastCommit", "mergeable", "headRepositoryOwner", "headRefName"}) http.Register( httpmock.GraphQL(`mutation PullRequestMerge\b`), @@ -505,11 +502,8 @@ } stubCommit(pr, "COMMITSHA1") - shared.RunCommandFinder( - "", - pr, - baseRepo("OWNER", "REPO", "master"), - ) + prFinder := shared.RunCommandFinder("", pr, baseRepo("OWNER", "REPO", "master")) + prFinder.ExpectFields([]string{"id", "number", "state", "title", "lastCommit", "mergeable", "headRepositoryOwner", "headRefName"}) http.Register( httpmock.GraphQL(`mutation PullRequestMerge\b`), diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/cli-1.10.1/pkg/cmd/pr/status/fixtures/prStatusCurrentBranchClosed.json new/cli-1.10.3/pkg/cmd/pr/status/fixtures/prStatusCurrentBranchClosed.json --- old/cli-1.10.1/pkg/cmd/pr/status/fixtures/prStatusCurrentBranchClosed.json 2021-05-19 13:35:57.000000000 +0200 +++ new/cli-1.10.3/pkg/cmd/pr/status/fixtures/prStatusCurrentBranchClosed.json 2021-05-21 19:30:32.000000000 +0200 @@ -12,24 +12,7 @@ "state": "CLOSED", "url": "https://github.com/cli/cli/pull/8", "headRefName": "blueberries", - "reviewDecision": "CHANGES_REQUESTED", - "commits": { - "nodes": [ - { - "commit": { - "statusCheckRollup": { - "contexts": { - "nodes": [ - { - "state": "SUCCESS" - } - ] - } - } - } - } - ] - } + "reviewDecision": "CHANGES_REQUESTED" } } ] diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/cli-1.10.1/pkg/cmd/pr/status/fixtures/prStatusCurrentBranchMerged.json new/cli-1.10.3/pkg/cmd/pr/status/fixtures/prStatusCurrentBranchMerged.json --- old/cli-1.10.1/pkg/cmd/pr/status/fixtures/prStatusCurrentBranchMerged.json 2021-05-19 13:35:57.000000000 +0200 +++ new/cli-1.10.3/pkg/cmd/pr/status/fixtures/prStatusCurrentBranchMerged.json 2021-05-21 19:30:32.000000000 +0200 @@ -12,24 +12,7 @@ "state": "MERGED", "url": "https://github.com/cli/cli/pull/8", "headRefName": "blueberries", - "reviewDecision": "CHANGES_REQUESTED", - "commits": { - "nodes": [ - { - "commit": { - "statusCheckRollup": { - "contexts": { - "nodes": [ - { - "state": "SUCCESS" - } - ] - } - } - } - } - ] - } + "reviewDecision": "CHANGES_REQUESTED" } } ] diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/cli-1.10.1/script/distributions new/cli-1.10.3/script/distributions --- old/cli-1.10.1/script/distributions 2021-05-19 13:35:57.000000000 +0200 +++ new/cli-1.10.3/script/distributions 2021-05-21 19:30:32.000000000 +0200 @@ -32,6 +32,14 @@ Origin: gh Label: gh +Codename: sid +Architectures: i386 amd64 armhf arm64 +Components: main +Description: The GitHub CLI - debian unstable repo +SignWith: C99B11DEB97541F0 + +Origin: gh +Label: gh Codename: buster Architectures: i386 amd64 armhf arm64 Components: main ++++++ vendor.tar.gz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/vendor/github.com/rivo/uniseg/grapheme.go new/vendor/github.com/rivo/uniseg/grapheme.go --- old/vendor/github.com/rivo/uniseg/grapheme.go 2021-05-19 15:47:55.457761500 +0200 +++ new/vendor/github.com/rivo/uniseg/grapheme.go 2021-05-22 23:37:52.997504000 +0200 @@ -1,5 +1,7 @@ package uniseg +import "unicode/utf8" + // The states of the grapheme cluster parser. const ( grAny = iota @@ -118,12 +120,20 @@ // NewGraphemes returns a new grapheme cluster iterator. func NewGraphemes(s string) *Graphemes { - g := &Graphemes{} - for index, codePoint := range s { - g.codePoints = append(g.codePoints, codePoint) - g.indices = append(g.indices, index) + l := utf8.RuneCountInString(s) + codePoints := make([]rune, l) + indices := make([]int, l+1) + i := 0 + for pos, r := range s { + codePoints[i] = r + indices[i] = pos + i++ + } + indices[l] = len(s) + g := &Graphemes{ + codePoints: codePoints, + indices: indices, } - g.indices = append(g.indices, len(s)) g.Next() // Parse ahead. return g } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/vendor/modules.txt new/vendor/modules.txt --- old/vendor/modules.txt 2021-05-19 15:47:55.493761500 +0200 +++ new/vendor/modules.txt 2021-05-22 23:37:53.265504100 +0200 @@ -122,7 +122,7 @@ github.com/olekukonko/tablewriter # github.com/pmezard/go-difflib v1.0.0 github.com/pmezard/go-difflib/difflib -# github.com/rivo/uniseg v0.1.0 +# github.com/rivo/uniseg v0.2.0 github.com/rivo/uniseg # github.com/russross/blackfriday/v2 v2.0.1 github.com/russross/blackfriday/v2