An Enhanced Go Experience For The Atom Editor

Overview

go-plus Build Status Build status Slack Slack

Greenkeeper badge

An Improved Go Experience For The Atom Editor

image

Overview

This package includes the following functionality:

  • Display information about your current go installation, by running go version and go env
  • Autocomplete using gocode
  • Format your code with gofmt, goimports, or goreturns; optionally run one of these tools on save of any .go file
  • Run go install . and go test -c -o {tempdir} . to verify your code compiles and to keep gocode suggestions up to date
  • Run a variety of linters (e.g. golint, vet, etc.) against your code using gometalinter, revive or golangci-lint
  • Run tests, display test output, and display test coverage using go test -coverprofile
  • Display documentation for identifiers in source code using gogetdoc
  • Rename the symbol under your cursor using gorename
  • Go to definition using guru or godef
  • Highlight occurrences of an identifier using guru
  • Find usages of an identifier using guru

You can add debug functionality to Atom by installing the following package:

Builds

How Are The Builds Performed?

The following commands are run for the directory of the current file:

  • go install . (for normal .go files)
  • go test -o {tmpdir} -c . (for _test.go files)

Why Are You Running go install Instead Of go build?

gocode (and a few other tools, like gotype) work on .a files (i.e. the package object archive), and the way to keep these up to date is to run go install periodically. This ensures your autocomplete suggestions are kept up to date.

Platforms

The package has CI for OS X, Windows and Ubuntu.

Installing Missing Tools

If you are missing any required tools, you may be prompted to install them. You can also manually install the required tools in your terminal:

go get -u golang.org/x/tools/cmd/goimports
go get -u golang.org/x/tools/cmd/gorename
go get -u github.com/sqs/goreturns
go get -u github.com/mdempsky/gocode
go get -u github.com/alecthomas/gometalinter
go get -u github.com/mgechev/revive
go get -u github.com/golangci/golangci-lint/cmd/golangci-lint
go get -u github.com/zmb3/gogetdoc
go get -u github.com/zmb3/goaddimport
go get -u github.com/rogpeppe/godef
go get -u golang.org/x/tools/cmd/guru
go get -u github.com/fatih/gomodifytags
go get -u github.com/tpng/gopkgs
go get -u github.com/ramya-rao-a/go-outline

Having Issues?

Please consult the FAQ prior to opening an issue: https://github.com/joefitzgerald/go-plus/wiki/FAQ

If you have an issue with debugging, file an issue with go-debug here.

Maintainers

Contributors

A list of contributors can be found at https://github.com/joefitzgerald/go-plus/graphs/contributors. Thank you so much to everyone has contributed to the package ❤️ . You are awesome!

Contributing

Contributions are greatly appreciated. Please fork this repository, make your changes, and open a pull request. See Contributing for detailed instructions.

Issues
  • go-plus cannot find my gopath and no features work

    go-plus cannot find my gopath and no features work

    Operating system: Xubuntu 14.04

    Atom version: 1.6.0

    When I start Atom with a Go file open, three dialog boxes appear. A fourth appears after I right-click on a variable and select "rename symbol under cursor".

    screenshot - 16-03-17 - 06 41 20 pm

    When I click the "Run Go Get" button on each of the dialog boxes, they all become error messages:

    screenshot - 16-03-17 - 06 40 49 pm

    When I first went through this process upon installing Atom, I manually installed all the required packages myself through the terminal. When I did, the command was pasted as go get -ugolang.org/x/tools/cmd/goimports. Note the lack of a space between the u and the URL; is this an issue? In any case, in my gopath, ~/go, the /bin directory now contains all the executables the dialog boxes require:

    screenshot - 16-03-17 - 06 46 32 pm

    But the error still appears every time I start atom, and none of the features of go-plus work. The dialog boxes also appear in Atom Beta.

    I went to the settings to configure the go-config package and feed it my gopath, but I cannot see any button to change its settings.

    opened by ghost 72
  • Use different tool to

    Use different tool to "go build" per project

    When working on golang projects that are meant to run in Google AppEngine (GAE), these projects must be compiled (and tested) with tools that ship with the SDK, namely goapp. This is a wrapper around the go binary, so it is almost fully compatible with go (i.e. you can run goapp <CMD> instead of go <CMD>, e.g. - goapp test instead of go test)

    One way to work with this project in Atom (using go-plus) would be to add a symlink called "go" to point to the "goapp" binary, and set the installation path variable to the dir containing this symlink (thereby "fooling" the plugin to use the wrapper tool). However I believe this would persist the change for all projects (even non GAE ones).

    Do you have suggestions on how I could make this change on a per-project basis? (Or maybe have this plugin detect GAE projects (using the index.yaml file in the top dir), and invoke the goapp tool instead (which is assumed to be in $PATH, or discoverable in the same way the go bin is detected).

    enhancement project-config 
    opened by amoghe 32
  • No build/syntax check in 4.0.1

    No build/syntax check in 4.0.1

    The main feature is missing or it doesn't work on both of my Macs after update, build/syntax check on this new version 4.0.1. It does nothing on save, also I can't find "Syntax check" in Packages -> Go as well. Also, in any of this new installed packaged I can't find the settings for "Check syntax on save" like in 3.5? Am I doing something wrong?

    opened by mileusna 28
  • Crash on save

    Crash on save

    Recently saving a go project can cause atom to crash. It seems to happen more when it needs to auto import something but it isn't limited to this. I'm not sure if it is the formatting or the linting. When I save there is a long pause. After awhile I get a message saying atom is not responding would I like to close or wait. If I wait it still is frozen until the window pops up again asking what I would like to do. After I choose to close I get an output in my terminal where I had launched atom from. Here is what is displayed.

    /usr/bin/atom: line 98: 4786 Segmentation fault (core dumped) nohup "$ATOM_PATH" --executed-from="$(pwd)" --pid=$$ "[email protected]" > "$ATOM_HOME/nohup.out" 2>&1 App load time: 2367ms Failed to get crash dump id. Report Id:

    Let me know if there is any other information you need.

    opened by gregpechiro 27
  • Failed to activate the go-plus package

    Failed to activate the go-plus package

    [Enter steps to reproduce below:]

    1. ...
    2. ...

    Atom Version: 0.209.0 System: Mac OS X 10.10.1 Thrown From: go-plus package, v3.3.11

    Stack Trace

    Failed to activate the go-plus package

    At Cannot read property 'command' of undefined
    
    TypeError: Cannot read property 'command' of undefined
      at new Gofmt (/Users/ioriiod0/.atom/packages/go-plus/lib/gofmt.coffee:12:24)
      at new Dispatch (/Users/ioriiod0/.atom/packages/go-plus/lib/dispatch.coffee:36:18)
      at Object.module.exports.createDispatch (/Users/ioriiod0/.atom/packages/go-plus/lib/go-plus.coffee:28:7)
      at Object.module.exports.activate (/Users/ioriiod0/.atom/packages/go-plus/lib/go-plus.coffee:17:21)
      at Package.module.exports.Package.activateNow (/Users/ioriiod0/Downloads/Atom.app/Contents/Resources/app.asar/src/package.js:240:19)
      at /Users/ioriiod0/Downloads/Atom.app/Contents/Resources/app.asar/src/package.js:221:30
      at Package.module.exports.Package.measure (/Users/ioriiod0/Downloads/Atom.app/Contents/Resources/app.asar/src/package.js:165:15)
      at Package.module.exports.Package.activate (/Users/ioriiod0/Downloads/Atom.app/Contents/Resources/app.asar/src/package.js:213:14)
      at PackageManager.module.exports.PackageManager.activatePackage (/Users/ioriiod0/Downloads/Atom.app/Contents/Resources/app.asar/src/package-manager.js:452:21)
      at /Users/ioriiod0/Downloads/Atom.app/Contents/Resources/app.asar/node_modules/settings-view/lib/package-manager.js:306:60
      at exit (/Users/ioriiod0/Downloads/Atom.app/Contents/Resources/app.asar/node_modules/settings-view/lib/package-manager.js:53:16)
      at triggerExitCallback (/Users/ioriiod0/Downloads/Atom.app/Contents/Resources/app.asar/src/buffered-process.js:213:47)
      at /Users/ioriiod0/Downloads/Atom.app/Contents/Resources/app.asar/src/buffered-process.js:220:18
      at Socket.<anonymous> (/Users/ioriiod0/Downloads/Atom.app/Contents/Resources/app.asar/src/buffered-process.js:98:18)
      at emitOne (events.js:82:20)
      at Socket.emit (events.js:166:7)
      at Pipe.close (net.js:464:12)
    
    

    Commands

         -1:22.6.0 settings-view:check-for-package-updates (atom-workspace.workspace.scrollbars-visible-when-scrolling.theme-solarized-dark-syntax.theme-seti-ui)
         -0:38.6.0 application:new-file (ul.list-inline.tab-bar.inset-panel)
      3x -0:36.4.0 editor:newline (atom-text-editor.editor.is-focused)
     11x -0:34.8.0 core:backspace (atom-text-editor.editor.is-focused)
         -0:33.3.0 editor:newline (atom-text-editor.editor.is-focused)
      2x -0:32.8.0 core:backspace (atom-text-editor.editor.is-focused)
    

    Config

    {
      "core": {
        "themes": [
          "seti-ui",
          "solarized-dark-syntax"
        ]
      }
    }
    

    Installed Packages

    # User
    go-plus, v3.3.11
    seti-ui, v0.3.5
    
    # Dev
    No dev packages
    
    opened by ioriiod0 26
  • Error after updated to 2.0.0

    Error after updated to 2.0.0

    go-plus-error

    Although I've already set the GOPATH

    go-plus-settings

    opened by kuno 25
  • Says gopath isn't set, but it definitely is

    Says gopath isn't set, but it definitely is

    Hey, I'm having issues regarding autocomplete, and upon launching atom from the command line using "atom .", I get a message saying I need to run go get to install gocode and goimports. However, when I click to get them, I get a message saying gopath isn't set.

    Also, I do have both of those packages installed in src->github-> and src ->golang, respectively.

    Any advice would be greatly appreciated.

    package github.com/nsf/gocode: cannot download, $GOPATH not set. For more details see: go help gopath

    opened by walkerlangley 25
  • Request: add support for gb

    Request: add support for gb

    gb from @davecheney uses a vendoring approach which puts all the vendor code alongside the src in a project directory.

    So it would be nice to be able to run gb build instead of go build so we can avoid all the cannot find package... warnings.

    http://getgb.io/

    (It would also be nice to be able to get rid of the Warning: File [/Users/Andy/foo/src/foo/foo.go] does not reside within a "src" directory in your GOPATH... warning somehow as well, but it's not quite as distracting.)

    enhancement project-config 
    opened by asmaloney 24
  • Goimports removing needed import

    Goimports removing needed import

    Hey there, love this package but having a weird issue with goimports running on save and removing a needed import. When I run goimports directly from the command line I don't have this issue. See the GIF below.

    goimports

    opened by deybhayden 23
  • GOPATH with multiple directories (possible regression)

    GOPATH with multiple directories (possible regression)

    For some reason, I can't copy the output of the go-plus error window, but it's basically telling me that my GOPATH ("/Users/mreynolds/Desktop/Projects/:/usr/local/opt/go") doesn't exist, which is correct, since it's a PATH, not a single directory.

    I'm using 1.0.10 with Brew installed go. I haven't tried manually overriding my env vars in settings.

    bug 
    opened by mreynolds 22
  • Bump fs-extra from 8.0.1 to 10.0.0

    Bump fs-extra from 8.0.1 to 10.0.0

    Bumps fs-extra from 8.0.1 to 10.0.0.

    Changelog

    Sourced from fs-extra's changelog.

    10.0.0 / 2021-05-03

    Breaking changes

    The following changes, although technically semver-major, will not affect the vast majority of users:

    • Ensure correct type when destination exists for ensureLink*()/ensureSymlink*() (#826, #786, #870)
    • Error when attempting to copy*() unknown file type (#880)
    • Remove undocumented options for remove*() (#882)

    Improvements

    • Allow changing case of filenames with move*(), even on technically case-insensitive filesystems (#759, #801)
    • Use native fs.rm*() for remove*() in environments that support it (#882, #806)
    • Improve emptyDir() performance (#885)

    Bugfixes

    • Ensure copy*()'s filter function is not called more than necessary (#883, #809)
    • Fix move*() raising EPERM error when moving a file to the root of a drive on Windows (#897, #819)

    Miscellaneous changes

    9.1.0 / 2021-01-19

    • Add promise support for fs.rm() (#841, #860)
    • Upgrade universalify for performance improvments (#825)

    9.0.1 / 2020-06-03

    • Fix issue with ensureFile() when used with Jest on Windows (#804, #805)
    • Remove unneeded process.umask() call (#791)
    • Docs improvements (#753, #795, #797)

    9.0.0 / 2020-03-19

    Breaking changes

    ... (truncated)

    Commits

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    • @dependabot use these labels will set the current labels as the default for future PRs for this repo and language
    • @dependabot use these reviewers will set the current reviewers as the default for future PRs for this repo and language
    • @dependabot use these assignees will set the current assignees as the default for future PRs for this repo and language
    • @dependabot use this milestone will set the current milestone as the default for future PRs for this repo and language
    • @dependabot badge me will comment on this PR with code to add a "Dependabot enabled" badge to your readme

    Additionally, you can set the following in your Dependabot dashboard:

    • Update frequency (including time of day and day of week)
    • Pull request limits (per update run and/or open at any time)
    • Out-of-range updates (receive only lockfile updates, if desired)
    • Security updates (receive only security updates, if desired)
    dependencies 
    opened by dependabot-preview[bot] 0
  • Upgrade to GitHub-native Dependabot

    Upgrade to GitHub-native Dependabot

    Dependabot Preview will be shut down on August 3rd, 2021. In order to keep getting Dependabot updates, please merge this PR and migrate to GitHub-native Dependabot before then.

    Dependabot has been fully integrated into GitHub, so you no longer have to install and manage a separate app. This pull request migrates your configuration from Dependabot.com to a config file, using the new syntax. When merged, we'll swap out dependabot-preview (me) for a new dependabot app, and you'll be all set!

    With this change, you'll now use the Dependabot page in GitHub, rather than the Dependabot dashboard, to monitor your version updates, and you'll configure Dependabot through the new config file rather than a UI.

    If you've got any questions or feedback for us, please let us know by creating an issue in the dependabot/dependabot-core repository.

    Learn more about migrating to GitHub-native Dependabot

    Please note that regular @dependabot commands do not work on this pull request.

    dependencies 
    opened by dependabot-preview[bot] 0
  • Bump flow-bin from 0.98.1 to 0.150.0

    Bump flow-bin from 0.98.1 to 0.150.0

    Bumps flow-bin from 0.98.1 to 0.150.0.

    Release notes

    Sourced from flow-bin's releases.

    v0.105.1

    The [email protected] release uploaded to npm did not include the binaries. Sorry about that! flow-bin v0.105.1 includes the Flow v0.105.0 binaries, so it is expected that node_modules/.bin/flow version still reports v0.105.0.

    There is no v0.105.1 release of Flow itself.

    Commits
    Maintainer changes

    This version was pushed to npm by flowtype, a new releaser for flow-bin since your current version.


    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    • @dependabot use these labels will set the current labels as the default for future PRs for this repo and language
    • @dependabot use these reviewers will set the current reviewers as the default for future PRs for this repo and language
    • @dependabot use these assignees will set the current assignees as the default for future PRs for this repo and language
    • @dependabot use this milestone will set the current milestone as the default for future PRs for this repo and language
    • @dependabot badge me will comment on this PR with code to add a "Dependabot enabled" badge to your readme

    Additionally, you can set the following in your Dependabot dashboard:

    • Update frequency (including time of day and day of week)
    • Pull request limits (per update run and/or open at any time)
    • Out-of-range updates (receive only lockfile updates, if desired)
    • Security updates (receive only security updates, if desired)
    dependencies 
    opened by dependabot-preview[bot] 0
  • Bump eslint-plugin-react from 7.13.0 to 7.23.2

    Bump eslint-plugin-react from 7.13.0 to 7.23.2

    Bumps eslint-plugin-react from 7.13.0 to 7.23.2.

    Release notes

    Sourced from eslint-plugin-react's releases.

    v7.21.5

    No release notes provided.

    v7.21.4

    No release notes provided.

    v7.20.0

    Added

    Fixed

    • [jsx-sort-props][]: only use localeCompare when case is ignored (#2556[] @tanmoyopenroot)
    • [jsx-key][]: add a failing test case for optional chaining (#2610[] @JonathanLee-LX)
    • [no-unused-state][]: handle optional chaining (#2588[] @golopot)
    • [jsx-pascal-case][]: Do not consider namespaces when checking for DOM (#2638[] @yacinehmito)
    • [jsx-curly-spacing][], [jsx-no-bind][], usedPropTypes util: avoid node.start and node.end ([25b1936][] @toshi-toma)
    • [jsx-no-target-blank][]: allow no-referrer without noopener by default (#2043[] @seancrater)
    • [button-has-type][]: improve message when non-static value is used ([aecff62][] @golopot)
    • [no-adjacent-inline-elements][]: prevent crash on nullish children (#2621[] @Rogdham)
    • [prop-types][]: avoid crash when spreading any type (#2606[] @golopot))
    • [require-render-return][]: add missing "a" (#2604[] @leothorp)
    • [jsx-no-comment-textnodes][]: fix for @typescript-eslint/parser (#2601[] @Axnyff)
    • [displayName][]: avoid a crash when using React.memo (#2587[] @golopot)

    Docs

    • Clean up examples in rule docs (#2546[] @silvenon)
    • [readme] Add Rules of Hooks to Other useful plugins section (#2633[] @petetnt)
    • [no-this-in-sfc][]: backtick this (#2616[] @mrflip)
    • [function-component-definition][]: Fix unnamedComponents option examples (#2608[] @vkrol))

    Changed

    • [Deps] Move "semver" to devDependencies (#2595[] @rajivshah3)
    • [eslint] remove operator-linebreak override (#2578[] @golopot)
    • [Tests] button-has-type: ensure no mistakenly allowed identifiers named button/submit/reset (#2625[] @golopot)
    • [Tests] displayName: add a test case (#2593[] @golopot)
    • [Dev Deps] update @types/eslint, @types/estree, @types/node, @typescript-eslint/parser, coveralls, eslint-config-airbnb-base, eslint-plugin-import, typescript

    #2638: yannickcr/eslint-plugin-react#2638 #2635: yannickcr/eslint-plugin-react#2635 #2633: yannickcr/eslint-plugin-react#2633 #2625: yannickcr/eslint-plugin-react#2625 #2621: yannickcr/eslint-plugin-react#2621 #2616: yannickcr/eslint-plugin-react#2616 #2615: yannickcr/eslint-plugin-react#2615 #2610: yannickcr/eslint-plugin-react#2610 #2608: yannickcr/eslint-plugin-react#2608 #2606: yannickcr/eslint-plugin-react#2606

    ... (truncated)

    Changelog

    Sourced from eslint-plugin-react's changelog.

    7.23.2 - 2021.04.08

    Fixed

    • [jsx-max-depth]: Prevent getting stuck in circular references (#2957[] @AriPerkkio)
    • [jsx-no-target-blank]: fix handling of warnOnSpreadAttributes being false (#2953[] @Nokel81)
    • [forbid-dom-props]: support JSXNamespacedName (#2961[] @mrtnzlml)
    • [forbid-component-props]: support JSXNamespacedName (@ljharb)

    Changed

    #2961: yannickcr/eslint-plugin-react#2961 #2953: yannickcr/eslint-plugin-react#2953 #2957: yannickcr/eslint-plugin-react#2957 #2950: yannickcr/eslint-plugin-react#2950

    7.23.1 - 2021.03.23

    Fixed

    • version detection: support processor virtual filename (#2949[] @JounQin)

    #2949: yannickcr/eslint-plugin-react#2949

    [7.23.0] - 2021.03.22

    Added

    • [jsx-no-target-blank]: add fixer (#2862[] @Nokel81)
    • [jsx-pascal-case]: support minimatch ignore option (#2906[] @bcherny)
    • [jsx-pascal-case]: support allowNamespace option (#2917[] @kev-y-huang)
    • [jsx-newline]: Add prevent option (#2935[] @jsphstls)
    • [no-unstable-nested-components]: Prevent creating unstable components inside components (#2750[] @AriPerkkio)
    • added jsx-runtime config, for the modern JSX runtime transform (@ljharb)

    Fixed

    • [jsx-no-constructed-context-values]: avoid a crash with as X TS code (#2894[] @ljharb)
    • [jsx-no-constructed-context-values]: avoid a crash with boolean shorthand (#2895[] @ljharb)
    • [static-property-placement]: do not report non-components (#2893[] @golopot)
    • [no-array-index-key]: support optional chaining (#2897[] @SyMind)
    • [no-typos]: avoid a crash on bindingless prop-types import; add warning (#2899[] @ljharb)
    • [jsx-curly-brace-presence]: ignore containers with comments (#2900[] @golopot)
    • [destructuring-assignment]: fix a false positive for local prop named context in SFC (#2929[] @SyMind)
    • [jsx-no-target-blank]: Allow rel="noreferrer" when allowReferrer is true (#2925[] @edemaine)
    • [boolean-prop-naming]: add check for typescript "boolean" type (#2930[] @vedadeepta)
    • version detection: Add tests that verify versioning works for sibling and child projects (#2943[] @jcrosetto)
    • [jsx-curly-newline]: Update error messages (#2933[] @jbrower2)

    Changed

    • [Docs] [jsx-no-constructed-context-values][]: fix invalid example syntax (#2910[] @kud)

    ... (truncated)

    Commits
    • 0d999ef Update CHANGELOG and bump version
    • cbe99e0 [Fix] forbid-component-props: support JSXNamespacedName
    • 2f376e0 [Fix] forbid-dom-props: support JSXNamespacedName
    • 6b6a14a [Fix] jsx-no-target-blank: fix handling of warnOnSpreadAttributes being f...
    • 7ce9106 [Fix] jsx-max-depth: Prevent getting stuck in circular references
    • 106ccf4 [Tests] switch from coveralls to codecov
    • b4cdf25 [Dev Deps] update @types/eslint, @types/estree, @types/node
    • 752dc96 [actions] use node/install instead of node/run
    • c2a790a Fix CHANGELOG.md
    • 307458f Update CHANGELOG and bump version
    • Additional commits viewable in compare view

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    • @dependabot use these labels will set the current labels as the default for future PRs for this repo and language
    • @dependabot use these reviewers will set the current reviewers as the default for future PRs for this repo and language
    • @dependabot use these assignees will set the current assignees as the default for future PRs for this repo and language
    • @dependabot use this milestone will set the current milestone as the default for future PRs for this repo and language
    • @dependabot badge me will comment on this PR with code to add a "Dependabot enabled" badge to your readme

    Additionally, you can set the following in your Dependabot dashboard:

    • Update frequency (including time of day and day of week)
    • Pull request limits (per update run and/or open at any time)
    • Out-of-range updates (receive only lockfile updates, if desired)
    • Security updates (receive only security updates, if desired)
    dependencies 
    opened by dependabot-preview[bot] 0
  • Bump semver from 6.1.0 to 7.3.5

    Bump semver from 6.1.0 to 7.3.5

    Bumps semver from 6.1.0 to 7.3.5.

    Changelog

    Sourced from semver's changelog.

    changes log

    7.3.0

    • Add subset(r1, r2) method to determine if r1 range is entirely contained by r2 range.

    7.2.3

    • Fix handling of includePrelease mode where version ranges like 1.0.0 - 2.0.0 would include 3.0.0-pre and not 1.0.0-pre.

    7.2.2

    • Fix bug where 2.0.0-pre would be included in ^1.0.0 if includePrerelease was set to true.

    7.2.0

    • Add simplifyRange method to attempt to generate a more human-readable range expression that is equivalent to a supplied range, for a given set of versions.

    7.1.2

    • Remove fancy lazy-loading logic, as it was causing problems for webpack users.

    7.1.0

    • Add require('semver/preload') to load the entire module without using lazy getter methods.

    7.0.0

    • Refactor module into separate files for better tree-shaking
    • Drop support for very old node versions, use const/let, => functions, and classes.

    6.3.0

    • Expose the token enum on the exports

    6.2.0

    • Coerce numbers to strings when passed to semver.coerce()
    • Add rtl option to coerce from right to left

    6.1.3

    ... (truncated)

    Commits

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    • @dependabot use these labels will set the current labels as the default for future PRs for this repo and language
    • @dependabot use these reviewers will set the current reviewers as the default for future PRs for this repo and language
    • @dependabot use these assignees will set the current assignees as the default for future PRs for this repo and language
    • @dependabot use this milestone will set the current milestone as the default for future PRs for this repo and language
    • @dependabot badge me will comment on this PR with code to add a "Dependabot enabled" badge to your readme

    Additionally, you can set the following in your Dependabot dashboard:

    • Update frequency (including time of day and day of week)
    • Pull request limits (per update run and/or open at any time)
    • Out-of-range updates (receive only lockfile updates, if desired)
    • Security updates (receive only security updates, if desired)
    dependencies 
    opened by dependabot-preview[bot] 0
  • [Security] Bump lodash from 4.17.11 to 4.17.21

    [Security] Bump lodash from 4.17.11 to 4.17.21

    Bumps lodash from 4.17.11 to 4.17.21. This update includes security fixes.

    Vulnerabilities fixed

    Sourced from The GitHub Security Advisory Database.

    Critical severity vulnerability that affects lodash, lodash-es, lodash-amd, lodash.template, lodash.merge, lodash.mergewith, and lodash.defaultsdeep Affected versions of lodash are vulnerable to Prototype Pollution. The function defaultsDeep could be tricked into adding or modifying properties of Object.prototype using a constructor payload.

    Affected versions: < 4.17.12

    Sourced from The GitHub Security Advisory Database.

    Prototype Pollution in lodash Versions of lodash prior to 4.17.19 are vulnerable to Prototype Pollution. The function zipObjectDeep allows a malicious user to modify the prototype of Object if the property identifiers are user-supplied. Being affected by this issue requires zipping objects based on user-provided property arrays.

    This vulnerability causes the addition or modification of an existing property that will exist on all objects and may lead to Denial of Service or Code Execution under specific circumstances.

    Affected versions: < 4.17.19

    Sourced from The GitHub Security Advisory Database.

    Prototype Pollution in lodash Versions of lodash prior to 4.17.19 are vulnerable to Prototype Pollution. The function zipObjectDeep allows a malicious user to modify the prototype of Object if the property identifiers are user-supplied. Being affected by this issue requires zipping objects based on user-provided property arrays.

    This vulnerability causes the addition or modification of an existing property that will exist on all objects and may lead to Denial of Service or Code Execution under specific circumstances.

    Affected versions: < 4.17.19

    Sourced from The GitHub Security Advisory Database.

    High severity vulnerability that affects lodash, lodash-es, lodash-amd, lodash.template, lodash.merge, lodash.mergewith, and lodash.defaultsdeep Affected versions of lodash are vulnerable to Prototype Pollution. The function defaultsDeep could be tricked into adding or modifying properties of Object.prototype using a constructor payload.

    Affected versions: < 4.17.13

    Commits
    • f299b52 Bump to v4.17.21
    • c4847eb Improve performance of toNumber, trim and trimEnd on large input strings
    • 3469357 Prevent command injection through _.template's variable option
    • ded9bc6 Bump to v4.17.20.
    • 63150ef Documentation fixes.
    • 00f0f62 test.js: Remove trailing comma.
    • 846e434 Temporarily use a custom fork of lodash-cli.
    • 5d046f3 Re-enable Travis tests on 4.17 branch.
    • aa816b3 Remove /npm-package.
    • d7fbc52 Bump to v4.17.19
    • Additional commits viewable in compare view
    Maintainer changes

    This version was pushed to npm by bnjmnt4n, a new releaser for lodash since your current version.


    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    • @dependabot use these labels will set the current labels as the default for future PRs for this repo and language
    • @dependabot use these reviewers will set the current reviewers as the default for future PRs for this repo and language
    • @dependabot use these assignees will set the current assignees as the default for future PRs for this repo and language
    • @dependabot use this milestone will set the current milestone as the default for future PRs for this repo and language
    • @dependabot badge me will comment on this PR with code to add a "Dependabot enabled" badge to your readme

    Additionally, you can set the following in your Dependabot dashboard:

    • Update frequency (including time of day and day of week)
    • Pull request limits (per update run and/or open at any time)
    • Out-of-range updates (receive only lockfile updates, if desired)
    • Security updates (receive only security updates, if desired)
    dependencies security 
    opened by dependabot-preview[bot] 0
  • Remove deprecated linter (gometalinter)

    Remove deprecated linter (gometalinter)

    Removed use of gometalinter. Fixes #871

    opened by Gituser143 0
  • Bump eslint-plugin-promise from 4.1.1 to 4.3.1

    Bump eslint-plugin-promise from 4.1.1 to 4.3.1

    Bumps eslint-plugin-promise from 4.1.1 to 4.3.1.

    Changelog

    Sourced from eslint-plugin-promise's changelog.

    4.3.1.

    • Updated and applied prettier

    4.3.0

    4.2.2

    • Added license
    • Dependabot security updates

    4.2.1

    • Added more use cases to no-return-wrap

    4.0.1

    • Remove promise/param-names fixer (#146)

    4.0.0

    • Added fixer for promise/no-new-statics rule (#133)
    • Support ESLint v5 (#144)

    This is a breaking change that drops support for Node v4. In order to use ESLint v5 and eslint-plugin-promise v4, you must use Node >=6.

    3.8.0

    • Removed promise/avoid-new from recommended configuration (#119)
    • Ignored event listener callbacks in promise/prefer-await-to-callbacks (#117)
    • Ignored top-level awaits in promise/prefer-await-to-then (#126)
    • Added docs for promise/no-nesting and promise/prefer-await-to-then (#120) (#121)

    3.7.0

    • Added promise/valid-params rule (#85)
    • Added promise/no-new-statics rule

    ... (truncated)

    Commits

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    • @dependabot use these labels will set the current labels as the default for future PRs for this repo and language
    • @dependabot use these reviewers will set the current reviewers as the default for future PRs for this repo and language
    • @dependabot use these assignees will set the current assignees as the default for future PRs for this repo and language
    • @dependabot use this milestone will set the current milestone as the default for future PRs for this repo and language
    • @dependabot badge me will comment on this PR with code to add a "Dependabot enabled" badge to your readme

    Additionally, you can set the following in your Dependabot dashboard:

    • Update frequency (including time of day and day of week)
    • Pull request limits (per update run and/or open at any time)
    • Out-of-range updates (receive only lockfile updates, if desired)
    • Security updates (receive only security updates, if desired)
    dependencies 
    opened by dependabot-preview[bot] 0
  • The dependencies keep on installing themselves again and again

    The dependencies keep on installing themselves again and again

    Description

    Since I manually installed Golang 1.15 on my Ubuntu 20.10, the dependencies that go-plus wants to use keep on installing themselves again and again every time I open Atom. To go-plus they look like missing, but after their first install they are present and accessible so they shouldn't be downloaded again and installed again

    Output from atom -v && apm -v

    Atom    : 1.54.0
    Electron: 6.1.12
    Chrome  : 76.0.3809.146
    Node    : 12.4.0
    apm  2.5.2
    npm  6.14.8
    node 12.4.0 x64
    atom 1.54.0
    python 
    git 2.27.0
    

    I have python 3.8.6 installed on my system, not sure why the apm -v command doesn't work for python

    Output From go env

    GO111MODULE=""
    GOARCH="amd64"
    GOBIN=""
    GOCACHE="/home/me/.cache/go-build"
    GOENV="/home/me/.config/go/env"
    GOEXE=""
    GOFLAGS=""
    GOHOSTARCH="amd64"
    GOHOSTOS="linux"
    GOINSECURE=""
    GOMODCACHE="/home/me/go/pkg/mod"
    GONOPROXY=""
    GONOSUMDB=""
    GOOS="linux"
    GOPATH="/home/me/go"
    GOPRIVATE=""
    GOPROXY="https://proxy.golang.org,direct"
    GOROOT="/usr/local/go"
    GOSUMDB="sum.golang.org"
    GOTMPDIR=""
    GOTOOLDIR="/usr/local/go/pkg/tool/linux_amd64"
    GCCGO="gccgo"
    AR="ar"
    CC="gcc"
    CXX="g++"
    CGO_ENABLED="1"
    GOMOD=""
    CGO_CFLAGS="-g -O2"
    CGO_CPPFLAGS=""
    CGO_CXXFLAGS="-g -O2"
    CGO_FFLAGS="-g -O2"
    CGO_LDFLAGS="-g -O2"
    PKG_CONFIG="pkg-config"
    GOGCCFLAGS="-fPIC -m64 -pthread -fmessage-length=0 -fdebug-prefix-map=/tmp/go-build131756375=/tmp/go-build -gno-record-gcc-switches"
    

    Steps to Reproduce

    1. Remove golang from your system: $ sudo apt remove golang
    2. Extract the content of the golang 1.15 archive inside /usr/local/go/
    3. Append to your ~/.profile the lines:
    export GOROOT=/usr/local/go
    export GOPATH=~/go
    export PATH=$PATH:$GOROOT/bin
    export PATH=$PATH:$GOPATH/bin
    

    Expected Behavior

    The dependencies should install themselves once

    Actual Behavior

    The dependencies keep on installing themselves again and again, as if they were missing

    opened by thomasgodart 6
  • Confusing error message on save.

    Confusing error message on save.

    I am running 'test on save'. My tests run, the output appears in the Output pane. But the Output pane then refreshes and I get:

    test timed out after 10000 ms
    

    The timing felt a bit 'async', but I had trouble figuring out which test was running asynchronously. Increasing the tests timeout didn't make a difference.

    Then I increased the compile timeout, from 10000 to 90000. This fixed the problem, and the Output pane finished with 'Done'.

    I had a look at the build code section, and see my problem. The logic here formats the error string. If hasTests then the build tool name is set to 'test'.

    https://github.com/joefitzgerald/go-plus/blob/0192d4719894d347e8f0cbc1826031fbcf49b002/lib/build/builder.js#L98

    I think it would be much better if this was changed to something like:

    compile timed out after 10000 ms
    

    I don't have a js/Atom dev env, otherwise I submit a PR.

    opened by idthings 0
Releases(v6.1.0)
  • v6.1.0(Jan 19, 2019)

    • support reviveand golangci-lint linters (#819)
    • create the go-plus panel only when a go file is opened or it is manually toggled (#853)
    • fix minor UI glitch in datatips that contain ` (like in tags)
    • write a detailed error log into a console tab (e.g. provided by atom-ide-ui) if a command failed (#837)

    Detailed changes: https://github.com/joefitzgerald/go-plus/compare/v6.0.2...v6.1.0

    Source code(tar.gz)
    Source code(zip)
  • v6.0.0(Nov 24, 2018)

    In this release we take advantage of many of the features provided by atom-ie-ui.

    image

    As a result, some of the custom go-plus views and commands have been replaced by the features built-in to Atom's IDE functionality.

    This will provide a more consistent experience across the Atom ecosystem, and will enable an easy transition as we move to a language-server based implementation.

    Code Formatting

    The individual commands for formatting with goimports, gofmt, and goimports have been removed. The go-plus.format.tool configuration option still applies, and all format operations will use the configured tool for formatting.

    The format command itself is now provided by atom-ide-ui, and can be triggered via one of the following mechanisms:

    • right clicking in the editor and selecting "Format Code"
    • keybinding (cmd + option + C by default)
    • command palette: Code Format: Format Code

    Additionally, the go-plus.format.formatOnSave configuration option has been removed so as not to conflict with the built-in setting. To enable format on save, open the preferences for the atom-ide-ui package, and select the checkbox under Code Formatting.

    image

    Usage

    The Usage panel and the golang:find-usage command have been removed. Instead, you can leverage the built-in "Find References" option. This is available in the context menu when right-clicking on an identifier, and can also be accessed via the Find References: Activate command.

    image

    Code Highlighting

    Highlighting of an identifier with the go-plus.guru.highlightIdentifiers option is now powered by atom-ide-ui. You should not notice any difference in behavior aside from a slightly different appearance.

    image

    Datatips

    🆕 You can now view the documentation for an identifier by simply hovering over it.

    image

    Detailed changes: https://github.com/joefitzgerald/go-plus/compare/v5.9.1...v6.0.0

    Source code(tar.gz)
    Source code(zip)
  • v5.9.0(Nov 12, 2018)

    • Restore Hyperclick functionality
    • Show the definition in a tooltip on command+hover
    • Display relative paths in the usage view
    • Add a setting for build timeout
    • Better compatibility with github.com/mdempsky/gocode
    • Improve support for Go 1.10+:
      • Property utilize the -i flag to play nice with the build cache
      • Disable Go modules when running go get so as not to interfere with a project's dependencies

    Detailed changes: https://github.com/joefitzgerald/go-plus/compare/v5.8.6...v5.9.0

    Source code(tar.gz)
    Source code(zip)
  • v5.8.4(Jul 20, 2018)

    • Correctly display results for golang:find-usage when there is no usage of the function

    Detailed changes: https://github.com/joefitzgerald/go-plus/compare/v5.8.3...v5.8.4

    Source code(tar.gz)
    Source code(zip)
  • v5.8.3(Apr 2, 2018)

    • ✨ Fuzzy filter autocomplete suggestions always (fixes #188, #544, #663) screen shot 2018-04-02 at 4 28 45 pm
    • 🐛 Correctly calculate the replacement prefix for suggestions when using the autocomplete suggestion cache (fixes #745)

    Detailed changes: https://github.com/joefitzgerald/go-plus/compare/v5.8.2...v5.8.3

    Source code(tar.gz)
    Source code(zip)
  • v5.8.2(Feb 12, 2018)

    • ✨ Show autocomplete suggestions when the new tree-sitter parsers are being used (enable the core.useTreeSitterParsers setting)
    • 🔤 Document new tools that go-plus uses (useful if you need to install them manually)

    Detailed changes: https://github.com/joefitzgerald/go-plus/compare/v5.8.1...v5.8.2

    Source code(tar.gz)
    Source code(zip)
  • v5.8.0(Jan 26, 2018)

    • 🚫 Add go-plus.config.compileOnSave option (defaults to true) to allow you to disable build on save (fixes #674 and #675 by @zmb3)
    • 📢 When a package only contains tests, ignore the no non-test Go files warning (fixes #732 via #734 by @lloiser)
    • 🚀 Fix compatibility issues with the new but experimental parser tree-sitter (core.useTreeSitterParsers in your atom config)

    Detailed changes: https://github.com/joefitzgerald/go-plus/compare/v5.7.2...v5.8.0

    Source code(tar.gz)
    Source code(zip)
  • v5.8.1(Jan 26, 2018)

    • :new: Allow build and test arguments to be specified in config (fixes #282, #308, #551, #573, #690, and #565 via #735 by @zmb3)

    Detailed changes: https://github.com/joefitzgerald/go-plus/compare/v5.8.0...v5.8.1

    Source code(tar.gz)
    Source code(zip)
  • v5.7.2(Jan 26, 2018)

    • Disable autocomplete suggestion caching; cursor movements (mouse clicking, arrowing) resulted in stale results (re-introduced in v5.8.0)

    Detailed changes: https://github.com/joefitzgerald/go-plus/compare/v5.7.1...v5.7.2

    Source code(tar.gz)
    Source code(zip)
  • v5.7.1(Dec 13, 2017)

    • 🐛 atom-babel6-transpiler was a devDependency but needed to be a dependency

    Detailed changes: https://github.com/joefitzgerald/go-plus/compare/v5.7.0...v5.7.1

    Source code(tar.gz)
    Source code(zip)
  • v5.7.0(Dec 13, 2017)

    • Add fuzzy import dialog (fixes #718, #681, #656, and #161 via #720 by @zmb3) goplusimport
    • Autocomplete unimported packages (#665 fixed via #685 by @lloiser)
    • Allow coverage to be displayed when a folder is symlinked (fixes #691 via #699 by @everdev)
    • When Adding Tags, implicitly "add" the tag when submit is clicked (fixes #692 via #698 by @joncalhoun)
    • Started using Flow, and caught a few unreported issues as a result (by @zmb3)
    • :arrow_up: Dependencies

    Detailed changes: https://github.com/joefitzgerald/go-plus/compare/v5.6.0...v5.7.0

    Source code(tar.gz)
    Source code(zip)
  • v5.6.0(Oct 21, 2017)

    • Thanks to @zmb3, the go-plus panel is now an atom dock, giving you lots of flexibility in placement go-plus dock (#694)
    • Allow test coverage to be displayed when a Ginkgo spec is focused, helping you see the execution path for an individual test case

    Detailed changes: https://github.com/joefitzgerald/go-plus/compare/v5.5.6...v5.6.0

    Source code(tar.gz)
    Source code(zip)
  • v5.5.6(Oct 21, 2017)

    • Show coverage even when go test's exit code is non-zero (#676)
    • Allow toggling of test coverage display via the golang:toggle-test-with-coverage command (ctrl + alt + shift + g  c)
    • Improve the autocomplete provider to support fuzzy matching and to stop generating the ...args argument in function placeholders (#669) Fuzzy Matching
    • When saving in Atom 1.19+, be asynchronous now that it is supported (#659)

    Detailed changes: https://github.com/joefitzgerald/go-plus/compare/v5.5.5...v5.5.6

    Source code(tar.gz)
    Source code(zip)
  • v5.5.5(May 18, 2017)

    • Show a timeout message when a build times out
    • Allow gomodifytags to work when there are modified files

    Detailed changes: https://github.com/joefitzgerald/go-plus/compare/v5.5.4...v5.5.5

    Source code(tar.gz)
    Source code(zip)
  • v5.5.4(May 13, 2017)

    • :bug: Do not use different DOM nodes as the root for the usage view (#631) (#642)

    Detailed changes: https://github.com/joefitzgerald/go-plus/compare/v5.5.3...v5.5.4

    Source code(tar.gz)
    Source code(zip)
  • v5.5.3(May 13, 2017)

    • Support Indie Linter v2 API, which means you can now use Nuclide Diagnostics instead of Linter for your linting (#634)
    • Better detect when a user is editing a file within the GOPATH or outside the GOPATH (#647)
    • When go build is used (because the user is editing a file outside the GOPATH, redirect the build output to /dev/null (linux, OSX) or NUL (windows) (#647)
    • :arrow_up: Dependencies

    Detailed changes: https://github.com/joefitzgerald/go-plus/compare/v5.5.2...v5.5.3

    Source code(tar.gz)
    Source code(zip)
  • v5.5.2(May 13, 2017)

    • Indicate that a command timed out in the implements and usage panels (#633)
    • Use go build instead of go install when the user is working on files that are outside the GOPATH (go install is invalid outside the GOPATH) (#635)

    Detailed changes: https://github.com/joefitzgerald/go-plus/compare/v5.5.1...v5.5.2

    Source code(tar.gz)
    Source code(zip)
  • v5.5.1(May 3, 2017)

  • v5.5.0(May 2, 2017)

    • 🆕 Add support for guru implements query (#629, Addresses #610) image

    • 🆕 Replace test panel with output panel, display build and other output (#620) image

    • 👕 Better handling of save event (Fixes #484, #414, #526)

    • :bug: Show gogetdoc errors in reference panel

    • :arrow_up: Dependencies

    Detailed changes: https://github.com/joefitzgerald/go-plus/compare/v5.4.0...v5.5.0

    Source code(tar.gz)
    Source code(zip)
  • v5.4.0(Mar 26, 2017)

    • 🆕 Errors in the test panel link to the source line where the error occurred (#550)
    • 🐛 Respect whitespace in test panel (#555)

    Screenshot

    Detailed changes: https://github.com/joefitzgerald/go-plus/compare/v5.3.4...v5.4.0

    Source code(tar.gz)
    Source code(zip)
  • v5.3.4(Mar 21, 2017)

    • 🔍 do not suppress autocompletion if explicitly requested by the user (#598, #144)

    Detailed changes: https://github.com/joefitzgerald/go-plus/compare/v5.3.3...v5.3.4

    Source code(tar.gz)
    Source code(zip)
  • v5.3.3(Mar 14, 2017)

    • 🐢 Only subscribe to cursor events (for sameids highlighting) in editors using the Go grammar

    Detailed changes: https://github.com/joefitzgerald/go-plus/compare/v5.3.2...v5.3.3

    Source code(tar.gz)
    Source code(zip)
  • v5.3.1(Mar 7, 2017)

    • 🐛 Fix issue that would result in an error if the cursor was at position [0,0] in a file (#592)

    Detailed changes: https://github.com/joefitzgerald/go-plus/compare/v5.3.0...v5.3.1

    Source code(tar.gz)
    Source code(zip)
  • v5.3.2(Mar 7, 2017)

    • 🔦 Don't highlight identifiers when a text selection is made (#596)

    Detailed changes: https://github.com/joefitzgerald/go-plus/compare/v5.3.1...v5.3.2

    Source code(tar.gz)
    Source code(zip)
  • v5.3.0(Mar 6, 2017)

    • 🆕 Highlight identifiers when the cursor moves (#583) highlight-identifiers
    • 🆕 Find usage of the current identifier and display them in the usage tab of the go-plus panel find-usage
    • 🎨 Enhance display of panel
      • Make panel font size configurable (default: 1.2em)
      • Set default monospace fonts when the standard font family is used
    • 🔢 Change default for go-plus.navigator.mode from guru to godef
    • 🆕 Add runTestsWithCoverage flag, so that you can disable coverage while still running tests on save

    Detailed changes: https://github.com/joefitzgerald/go-plus/compare/v5.2.0...v5.3.0

    Source code(tar.gz)
    Source code(zip)
  • v5.2.0(Feb 27, 2017)

    • 🆕 Add support to add / remove struct tags en masse (https://github.com/joefitzgerald/go-plus/pull/571) gomodifytags
    • 🎨 Refactor test boilerplate (https://github.com/joefitzgerald/go-plus/pull/569)
    • 🎨 Improve go to definition behavior when using Guru (https://github.com/joefitzgerald/go-plus/pull/557)
    • ⬆️ dependencies (#578)

    Detailed changes: https://github.com/joefitzgerald/go-plus/compare/v5.1.1...v5.2.0

    Source code(tar.gz)
    Source code(zip)
  • v5.1.1(Jan 30, 2017)

    • :new: If you don't have a GOPATH specified, the default GOPATH for go 1.8 will be used ($HOME/go); this will apply for all versions of go, not just 1.8 ( #548)
    • :art: Enhance the appearance of the go-plus panel when using the material theme (#546)
    • :bug: Make use of the -timeout flag when running go test, to ensure that tests (particularly those stuck in an infinite loop) stop running when the child_process is terminated (#559)
    • :abc: Added an issued template

    Detailed changes: https://github.com/joefitzgerald/go-plus/compare/v5.1.0...v5.1.1

    Source code(tar.gz)
    Source code(zip)
  • v5.1.0(Jan 8, 2017)

    • :new: Documentation now includes links to godoc.org. In some cases this may require an update to gogetdoc. You will be prompted if an update is necessary. screenshot

    Detailed changes: https://github.com/joefitzgerald/go-plus/compare/v5.0.9...v5.1.0

    Source code(tar.gz)
    Source code(zip)
  • v5.0.9(Jan 3, 2017)

    • ⚠️ Display a notification when the version of Atom is below the minimum required version (v1.12.7)

    Detailed changes: https://github.com/joefitzgerald/go-plus/compare/v5.0.8...v5.0.9

    Source code(tar.gz)
    Source code(zip)
  • v5.0.8(Jan 1, 2017)

    • :new: gocode occasionally gets into a state where it only returns PANIC as an autocomplete suggestion (see the FAQ for more information); when gocode gets into this state, go-plus will now provide detailed information and offer to try and fix the problem (If gocode is panicking, prompt to update gocode (#530, #474, #473, #471, #468, #437, #433, #158) screen shot 2016-12-31 at 4 02 53 pm

    Detailed changes: https://github.com/joefitzgerald/go-plus/compare/v5.0.7...v5.0.8

    Source code(tar.gz)
    Source code(zip)
A graphical text editor

A A is a text editor inspired by the Sam and Acme text editors for the Plan 9 operating system. binary Latest Binaries https://github.com/as/a/release

null 294 Jan 7, 2022
A Programmer's Text Editor

The de Editor de is a programmer's editor. (Where that programmer happens to be driusan.) It's kind of like a bastard child of vim and Plan 9's acme e

Dave MacFarlane 383 Jan 2, 2022
A very religious text editor

--== Godit - a very religious text editor ==-- Screenshots: * https://nosmileface.dev/images/godit-linux1.png * https://nosmileface.dev/images/god

null 524 Dec 17, 2021
A modern and intuitive terminal-based text editor

micro is a terminal-based text editor that aims to be easy to use and intuitive, while also taking advantage of the capabilities of modern terminals.

Zachary Yedidia 18.6k Jan 4, 2022
Source code editor written in Go using go-gtk bindings. It aims to handle navigation effectively among large number of files.

tabby Source code editor written in Go using go-gtk bindings. It aims to handle navigation effectively among large number of files. screenshot: depend

Mikhail Trushnikov 49 Dec 30, 2021
Go version of Plan9 Acme Editor

Overview Go port of Rob Pike's Acme editor. Derived from ProjectSerenity but now increasingly divergent. ProjectSerenity was itself a transliteration

Robert Kroeger 304 Jan 6, 2022
Binary editor written in Go

bed Binary editor written in Go Screenshot Why? Why not? Programming is so fun! I learned so much while creating this editor; handling of file pointer

itchyny 1.1k Jan 6, 2022
WYSIWYG theme editor for Fyne

fyne-theme-generator WYSIWYG theme editor for Fyne Installation go get github.com/lusingander/fyne-theme-generator Usage You can change each parameter

Kyosuke Fujimoto 49 Dec 28, 2021
Mini is a small text editor, inspred by antirez's kilo editor.

mini Mini is a small text editor, inspred by antirez's kilo editor. It aims to Keep it simple, stupid.

Ken Hibino 59 Jan 11, 2022
Parse RSS, Atom and JSON feeds in Go

gofeed The gofeed library is a robust feed parser that supports parsing both RSS, Atom and JSON feeds. The library provides a universal gofeed.Parser

null 1.8k Jan 7, 2022
golang rss/atom generator library

gorilla/feeds feeds is a web feed generator library for generating RSS, Atom and JSON feeds from Go applications. Goals Provide a simple interface to

Gorilla Web Toolkit 587 Jan 11, 2022
There are 1,000,000 uatoms in an atom, a fact which I frequently forget and/or second-guess.

There are 1,000,000 uatoms in an atom, a fact which I frequently forget and/or second-guess. This repo contains a lot of programming to save myself a little bit of remembering.

Tess Rinearson 3 Nov 14, 2021
A prefix-enhanced map in Go

PrefixMap PrefixMap is a prefix-enhanced map that eases the retrieval of values based on key prefixes. Quick Start Creating a PrefixMap // creates the

Alessandro Diaferia 28 Oct 8, 2021
An enhanced http client for Golang

go-http-client An enhanced http client for Golang Documentation on go.dev ?? This package provides you a http client package for your http requests. Y

Furkan Bozdag 32 Dec 20, 2021
An enhanced HTTP client for Go

Heimdall Description Installation Usage Making a simple GET request Creating a hystrix-like circuit breaker Creating a hystrix-like circuit breaker wi

Gojek 2.2k Jan 8, 2022
Enhanced PostgreSQL logical replication

pgcat - Enhanced postgresql logical replication Why pgcat? Architecture Build from source Install Run Conflict handling Table mapping Replication iden

jinhua luo 349 Dec 5, 2021
An enhanced HTTP client for Go

Heimdall Description Installation Usage Making a simple GET request Creating a hystrix-like circuit breaker Creating a hystrix-like circuit breaker wi

Gojek 2.2k Jan 10, 2022
A SimpleHTTPServer written in Go, enhanced with features and with a nice design

goshs is a replacement for Python's SimpleHTTPServer. It allows uploading and downloading via HTTP/S with either self-signed certificate or user provi

Patrick Hener 92 Dec 24, 2021
digpro is a enhanced uber-go/dig

Introduction digpro is a enhanced uber-go/dig, inherit all feature of uber-go/dig and add the following features: Progressive

null 3 Dec 4, 2021
Poseidon -- An Enhanced V2Ray(based on v2ray-core)

Poseidon -- An Enhanced V2Ray(based on v2ray-core) Support SSRPanel(VNetPanel), V2board, SSpanel-v3-Uim Features Sync user from your panel to v2ray Lo

null 0 Nov 14, 2021
Go-http-client: An enhanced http client for Golang

go-http-client An enhanced http client for Golang Documentation on go.dev ?? This package provides you a http client package for your http requests. Y

Furkan Bozdag 33 Jan 13, 2022
Enhanced Markdown template processor for golang

emd Enhanced Markdown template processor. See emd README file TOC Install glide

null 0 Jan 2, 2022
red-tldr is a lightweight text search tool, which is used to help red team staff quickly find the commands and key points they want to execute, so it is more suitable for use by red team personnel with certain experience.

Red Team TL;DR English | 中文简体 What is Red Team TL;DR ? red-tldr is a lightweight text search tool, which is used to help red team staff quickly find t

倾旋 149 Jan 3, 2022
Flagr is an open source Go service that delivers the right experience to the right entity and monitors the impact.

Flagr is an open source Go service that delivers the right experience to the right entity and monitors the impact. It provides feature flags, experimentation (A/B testing), and dynamic configuration. It has clear swagger REST APIs for flags management and flag evaluation.

null 21 Dec 28, 2021
ZITADEL - Identity Experience Platform

What Is ZITADEL ZITADEL is a "Cloud Native Identity and Access Management" solution built for the cloud era. ZITADEL uses a modern software stack cons

CAOS 321 Jan 10, 2022
A "passwordless" login experience for your AWS RDS

RDS Auth Proxy A two-layer proxy for connecting into RDS postgres databases based on IAM authentication. This tool allows you to keep your databases f

Mothership 14 Jan 4, 2022
A unified graphical user experience toolkit for Go desktop applications

Unison A unified graphical user experience toolkit for Go desktop applications. macOS, Windows, and Linux are supported. Required setup Unison is buil

Richard Wilkes 3 Jan 6, 2022
Devstack is Razorpay's Developer Experience Solution for cloud on laptop

devstack Devstack is Razorpay's Developer Experience Solution for cloud on laptop What is Devstack At razorpay, we run all our workloads on kubernetes

Razorpay 93 Jan 3, 2022