From bf4c48c7c670f92731a5892edf12bebf9fb081d0 Mon Sep 17 00:00:00 2001 From: wit liu <765765346@qq.com> Date: Mon, 8 Dec 2025 17:38:46 +0800 Subject: [PATCH] cmd: nuke geth bug, nobody is using it anyway #19400 (#1814) --- cmd/XDC/bugcmd.go | 105 -------------------------------- cmd/internal/browser/browser.go | 46 -------------- 2 files changed, 151 deletions(-) delete mode 100644 cmd/XDC/bugcmd.go delete mode 100644 cmd/internal/browser/browser.go diff --git a/cmd/XDC/bugcmd.go b/cmd/XDC/bugcmd.go deleted file mode 100644 index 9c31daf11b..0000000000 --- a/cmd/XDC/bugcmd.go +++ /dev/null @@ -1,105 +0,0 @@ -// Copyright 2017 The go-ethereum Authors -// This file is part of go-ethereum. -// -// go-ethereum is free software: you can redistribute it and/or modify -// it under the terms of the GNU General Public License as published by -// the Free Software Foundation, either version 3 of the License, or -// (at your option) any later version. -// -// go-ethereum is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -// GNU General Public License for more details. -// -// You should have received a copy of the GNU General Public License -// along with go-ethereum. If not, see . - -package main - -import ( - "bytes" - "fmt" - "io" - "net/url" - "os" - "os/exec" - "runtime" - "strings" - - "github.com/XinFinOrg/XDPoSChain/cmd/internal/browser" - "github.com/XinFinOrg/XDPoSChain/internal/version" - "github.com/urfave/cli/v2" -) - -var bugCommand = &cli.Command{ - Action: reportBug, - Name: "bug", - Usage: "opens a window to report a bug on the XDC repo", - ArgsUsage: " ", -} - -const issueUrl = "https://github.com/XinFinOrg/XDPoSChain/issues/new" - -// reportBug reports a bug by opening a new URL to the go-ethereum GH issue -// tracker and setting default values as the issue body. -func reportBug(ctx *cli.Context) error { - // execute template and write contents to buff - var buff bytes.Buffer - - fmt.Fprintln(&buff, header) - fmt.Fprintln(&buff, "Version:", version.WithMeta) - fmt.Fprintln(&buff, "Go Version:", runtime.Version()) - fmt.Fprintln(&buff, "OS:", runtime.GOOS) - printOSDetails(&buff) - - // open a new GH issue - if !browser.Open(issueUrl + "?body=" + url.QueryEscape(buff.String())) { - fmt.Printf("Please file a new issue at %s using this template:\n%s", issueUrl, buff.String()) - } - return nil -} - -// copied from the Go source. Copyright 2017 The Go Authors -func printOSDetails(w io.Writer) { - switch runtime.GOOS { - case "darwin": - printCmdOut(w, "uname -v: ", "uname", "-v") - printCmdOut(w, "", "sw_vers") - case "linux": - printCmdOut(w, "uname -sr: ", "uname", "-sr") - printCmdOut(w, "", "lsb_release", "-a") - case "openbsd", "netbsd", "freebsd", "dragonfly": - printCmdOut(w, "uname -v: ", "uname", "-v") - case "solaris": - out, err := os.ReadFile("/etc/release") - if err == nil { - fmt.Fprintf(w, "/etc/release: %s\n", out) - } else { - fmt.Printf("failed to read /etc/release: %v\n", err) - } - } -} - -// printCmdOut prints the output of running the given command. -// It ignores failures; 'go bug' is best effort. -// -// copied from the Go source. Copyright 2017 The Go Authors -func printCmdOut(w io.Writer, prefix, path string, args ...string) { - cmd := exec.Command(path, args...) - out, err := cmd.Output() - if err != nil { - fmt.Printf("%s %s: %v\n", path, strings.Join(args, " "), err) - return - } - fmt.Fprintf(w, "%s%s\n", prefix, bytes.TrimSpace(out)) -} - -const header = `Please answer these questions before submitting your issue. Thanks! - -#### What did you do? - -#### What did you expect to see? - -#### What did you see instead? - -#### System details` diff --git a/cmd/internal/browser/browser.go b/cmd/internal/browser/browser.go deleted file mode 100644 index 897086f471..0000000000 --- a/cmd/internal/browser/browser.go +++ /dev/null @@ -1,46 +0,0 @@ -// Copyright 2016 The Go Authors. All rights reserved. -// Use of this source code is governed by a BSD-style -// license that can be found in the LICENSE file. - -// Package browser provides utilities for interacting with users' browsers. -package browser - -import ( - "os" - "os/exec" - "runtime" -) - -// Commands returns a list of possible commands to use to open a url. -func Commands() [][]string { - var cmds [][]string - if exe := os.Getenv("BROWSER"); exe != "" { - cmds = append(cmds, []string{exe}) - } - switch runtime.GOOS { - case "darwin": - cmds = append(cmds, []string{"/usr/bin/open"}) - case "windows": - cmds = append(cmds, []string{"cmd", "/c", "start"}) - default: - cmds = append(cmds, []string{"xdg-open"}) - } - cmds = append(cmds, - []string{"chrome"}, - []string{"google-chrome"}, - []string{"chromium"}, - []string{"firefox"}, - ) - return cmds -} - -// Open tries to open url in a browser and reports whether it succeeded. -func Open(url string) bool { - for _, args := range Commands() { - cmd := exec.Command(args[0], append(args[1:], url)...) - if cmd.Start() == nil { - return true - } - } - return false -}