Git Product home page Git Product logo

gonsole's People

Contributors

crystalmethod avatar fappel avatar guw avatar rherrmann avatar rsrini7 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar

gonsole's Issues

Restore Git Console after workbench restart

The console view does not restore the last recently used console page. If the last recently used console page was the Git Console, it should be restored after workbench restart.

Add 'help' command

It would be good to add an 'help' command that prints some hints how to use the console and show the internal commands (without JGit?) with description, like 'cr' or 'use'...

Support to create isolated branches using "checkout --orphan"

Currently, Gonsole does not support "checkout --orphan".

In Git, developers can create isolated branches where the history of the original branch is not copied into the new branch. This is used in Github, for instance, to create a branch for source code and another isolated "gh-pages" branch for a website.

In the Github Pages help, there is an explanation of the steps to create an empty branch using "checkout --orphan"

According to the following link, JGit only supports "checkout --orphan" since beginning of 2014, but the EGit plugin does not use this option yet. There is a code snippet that may help to introduce this option into the Gonsole.

USERAUTH fail

When trying to fetch changes for an existing repository via gconsole I get java.lang.RuntimeException: org.eclipse.jgit.api.errors.TransportException: USERAUTH fail even though I am able to interact with the repository fully via Egit.

Write development environment setup guide

The README.md should have a paragraph that describes how to set up the development environment:

  • requires PDE
  • uses target platform in ...relelng
  • tests are separated into unit tests and integration test and can be run like so...

add does not work

I tried to add files to the index using the command:

add *

Unfortunately no files were added to the index!

(using gonsole v 1.1)

Prevent invalid command line options from terminating the VM

Invalid command line options currently terminate the VM, The reaseon therefore is that org.eclipse.jgit.pgm.TextBuiltint#parseArguments() exist the VM if a CmdLineParseException occurs.

To see it in all its greatness, enter status x and say goodby to your IDE.

Contribute an 'Open Console' action to EGit

The EGit connector should contribute an action to open a git console where applicable, e.g. the context menu of the repository view or the context menu on shared resources

Make Gonsole compatible with Eclipse 3.7

Eclipse Marketplace lists 8 error reports and 155 Installations. Most of the error reports seem to be caused by users that try to install Gonsole into Eclipse 3.7.

Cannot install Gonsole into EPP package 'Eclipse IDE for Java EE Developers 1.4.0'

It seems not possible to install Gonsole into the EPP package 'Eclipse IDE for Java EE Developers' v1.4.0

A little research surfaced that EPP 1.4 packages features from the Indigo (3.7) release.

The Eclipse Marketplace error report

Cannot complete the install because of a conflicting dependency. 
Software being installed: Gonsole - Git Console for Eclipse 1.0.0.20140720-1910 (com.codeaffine.gonsole.feature.feature.group 1.0.0.20140720-1910) 
Software currently installed: Eclipse IDE for Java EE Developers 1.4.0.20110615-0550 (epp.package.jee 1.4.0.20110615-0550) 
Only one of the following can be installed at once: Equinox Java Authentication and Authorization Service (JAAS) 1.0.100.v20090520-1800 (org.eclipse.equinox.security 1.0.100.v20090520-1800) Equinox Java Authentication and Authorization Service (JAAS) 1.1.1.R37x_v20110822-1018 (org.eclipse.equinox.security 1.1.1.R37x_v20110822-1018) Equinox Java Authentication and Authorization Service (JAAS) 1.1.0.v20110502 (org.eclipse.equinox.security 1.1.0.v20110502) 
Cannot satisfy dependency: From: Gonsole - Git Console for Eclipse 1.0.0.20140720-1910 (com.codeaffine.gonsole.feature.feature.group 1.0.0.20140720-1910) To: org.eclipse.equinox.security [1.1.1,2.0.0) 
Cannot satisfy dependency: From: Eclipse IDE for Java EE Developers 1.4.0.20110615-0550 (epp.package.jee 1.4.0.20110615-0550) To: org.eclipse.epp.package.jee.feature.feature.group [1.4.0.20110615-0550] 
Cannot satisfy dependency: From: Java EE IDE Feature 1.4.0.20110615-0550 (org.eclipse.epp.package.jee.feature.feature.group 1.4.0.20110615-0550) To: org.eclipse.platform.feature.group [3.7.0.v20110530-9gF7UHNFFt4cwE-pkZDJ7oz-mj4OSEIlu9SEv0f] 
Cannot satisfy dependency: From: Eclipse Platform 3.7.0.v20110530-9gF7UHNFFt4cwE-pkZDJ7oz-mj4OSEIlu9SEv0f (org.eclipse.platform.feature.group 3.7.0.v20110530-9gF7UHNFFt4cwE-pkZDJ7oz-mj4OSEIlu9SEv0f) To: org.eclipse.equinox.security [1.1.0.v20110502]

Showing content assist on previous input partitions throws an exception

To reproduce, enter and confirm a command and then place the cursor on the just entered command. Press Ctrl+Space to open the content assist and again, select and confirm a command. an IllegalArgumentException is thrown. The console becomes unusable thereafter.

java.lang.IllegalArgumentException: Argument not valid
    at org.eclipse.swt.SWT.error(SWT.java:4422)
    at org.eclipse.swt.SWT.error(SWT.java:4356)
    at org.eclipse.swt.SWT.error(SWT.java:4327)
    at org.eclipse.swt.custom.StyledText.setCaretOffset(StyledText.java:8576)
    at org.eclipse.ui.internal.console.IOConsoleViewer.handleVerifyEvent(IOConsoleViewer.java:89)
    at org.eclipse.jface.text.TextViewer$TextVerifyListener.verifyText(TextViewer.java:435)
    at org.eclipse.swt.widgets.TypedListener.handleEvent(TypedListener.java:273)
    at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:84)
    at org.eclipse.swt.widgets.Display.sendEvent(Display.java:4353)
    at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1061)
    at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1085)
    at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1070)
    at org.eclipse.swt.widgets.Widget.notifyListeners(Widget.java:782)
    at org.eclipse.swt.custom.StyledText.modifyContent(StyledText.java:7236)
    at org.eclipse.swt.custom.StyledText.sendKeyEvent(StyledText.java:8111)
    at org.eclipse.swt.custom.StyledText.doContent(StyledText.java:2481)
    at org.eclipse.swt.custom.StyledText.handleKey(StyledText.java:5955)
    at org.eclipse.swt.custom.StyledText.handleKeyDown(StyledText.java:5986)
    at org.eclipse.swt.custom.StyledText$7.handleEvent(StyledText.java:5663)
    at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:84)
    at org.eclipse.swt.widgets.Display.sendEvent(Display.java:4353)
    at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1061)
    at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1085)
    at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1070)
    at org.eclipse.swt.widgets.Widget.sendKeyEvent(Widget.java:1112)
    at org.eclipse.swt.widgets.Widget.sendKeyEvent(Widget.java:1108)
    at org.eclipse.swt.widgets.Widget.wmChar(Widget.java:1529)
    at org.eclipse.swt.widgets.Control.WM_CHAR(Control.java:4722)
    at org.eclipse.swt.widgets.Canvas.WM_CHAR(Canvas.java:343)
    at org.eclipse.swt.widgets.Control.windowProc(Control.java:4610)
    at org.eclipse.swt.widgets.Canvas.windowProc(Canvas.java:339)
    at org.eclipse.swt.widgets.Display.windowProc(Display.java:5023)
    at org.eclipse.swt.internal.win32.OS.DispatchMessageW(Native Method)
    at org.eclipse.swt.internal.win32.OS.DispatchMessage(OS.java:2549)
    at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3759)
    at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$9.run(PartRenderingEngine.java:1151)
    at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332)
    at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.run(PartRenderingEngine.java:1032)
    at org.eclipse.e4.ui.internal.workbench.E4Workbench.createAndRunUI(E4Workbench.java:148)
    at org.eclipse.ui.internal.Workbench$5.run(Workbench.java:636)
    at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332)
    at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:579)
    at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:150)
    at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:135)
    at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:196)
    at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:134)
    at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:104)
    at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:382)
    at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:236)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    at java.lang.reflect.Method.invoke(Method.java:597)
    at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:648)
    at org.eclipse.equinox.launcher.Main.basicRun(Main.java:603)
    at org.eclipse.equinox.launcher.Main.run(Main.java:1465)
    at org.eclipse.equinox.launcher.Main.main(Main.java:1438)

Widget Disposed Exception after re-opening the console view

To reproduce, follow these steps:

  1. open the console view and select 'Git Console' form the Open Console drop-down
  2. close the console view
  3. open the console view again
    -> the stacktrace below is logged,
    Entering a command causes further exceptions with each key typed. The functionality of the commands however seems to to be affected.
!ENTRY org.eclipse.text 4 2 2014-06-20 13:02:00.919
!MESSAGE Problems occurred when invoking code from plug-in: "org.eclipse.text".
!STACK 0
org.eclipse.swt.SWTException: Widget is disposed
    at org.eclipse.swt.SWT.error(SWT.java:4441)
    at org.eclipse.swt.SWT.error(SWT.java:4356)
    at org.eclipse.swt.SWT.error(SWT.java:4327)
    at org.eclipse.swt.widgets.Widget.error(Widget.java:476)
    at org.eclipse.swt.widgets.Widget.checkWidget(Widget.java:348)
    at org.eclipse.swt.custom.StyledText.getCharCount(StyledText.java:3873)
    at com.codeaffine.console.core.internal.InputObserver$InputScanner$2.documentChanged(InputObserver.java:66)
    at org.eclipse.jface.text.AbstractDocument.doFireDocumentChanged2(AbstractDocument.java:769)
    at org.eclipse.jface.text.AbstractDocument.doFireDocumentChanged(AbstractDocument.java:736)
    at org.eclipse.jface.text.AbstractDocument.doFireDocumentChanged(AbstractDocument.java:721)
    at org.eclipse.jface.text.AbstractDocument.fireDocumentChanged(AbstractDocument.java:796)
    at org.eclipse.jface.text.AbstractDocument.replace(AbstractDocument.java:1191)
    at org.eclipse.jface.text.AbstractDocument.replace(AbstractDocument.java:1210)
    at org.eclipse.ui.internal.console.ConsoleDocument.replace(ConsoleDocument.java:92)
    at org.eclipse.ui.internal.console.IOConsolePartitioner.processQueue(IOConsolePartitioner.java:582)
    at org.eclipse.ui.internal.console.IOConsolePartitioner$QueueProcessingJob.runInUIThread(IOConsolePartitioner.java:532)
    at org.eclipse.ui.progress.UIJob$1.run(UIJob.java:97)
    at org.eclipse.swt.widgets.RunnableLock.run(RunnableLock.java:35)
    at org.eclipse.swt.widgets.Synchronizer.runAsyncMessages(Synchronizer.java:136)
    at org.eclipse.swt.widgets.Display.runAsyncMessages(Display.java:4147)
    at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3764)
    at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$9.run(PartRenderingEngine.java:1151)
    at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332)
    at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.run(PartRenderingEngine.java:1032)
    at org.eclipse.e4.ui.internal.workbench.E4Workbench.createAndRunUI(E4Workbench.java:148)
    at org.eclipse.ui.internal.Workbench$5.run(Workbench.java:636)
    at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332)
    at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:579)
    at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:150)
    at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:135)
    at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:196)
    at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:134)
    at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:104)
    at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:382)
    at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:236)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    at java.lang.reflect.Method.invoke(Method.java:597)
    at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:648)
    at org.eclipse.equinox.launcher.Main.basicRun(Main.java:603)
    at org.eclipse.equinox.launcher.Main.run(Main.java:1465)
    at org.eclipse.equinox.launcher.Main.main(Main.java:1438)

EGit integration cannot be installed if EGit version is < 3.3

There seems to be an issue with older Eclipse installations: for example Eclipse 3.8 comes with EGit 2.2 by default. If EGit was never updated, the Gonsle-EGit integration cannot be installed:

Cannot complete the install because one or more required items could not be found. 
Software being installed: Gonsole - EGit Integration 1.0.0.20140709-1040 (com.codeaffine.gonsole.egit.feature.feature.group 1.0.0.20140709-1040) 
Missing requirement: EGit Repository Provider for Gonsole 1.0.0.20140709-1040 (com.codeaffine.gonsole.egit 1.0.0.20140709-1040) requires 'bundle org.eclipse.egit.core [3.3.0,4.0.0)' but it could not be found 
Cannot satisfy dependency: From: Gonsole - EGit Integration 1.0.0.20140709-1040 (com.codeaffine.gonsole.egit.feature.feature.group 1.0.0.20140709-1040) To: com.codeaffine.gonsole.egit [1.0.0.20140709-1040]

The above error report was taken form the 'Error' tab of the Eclipse Marketplace listing.

show user friendly text for unknown commands

For unknown commands (from JGit) the exception text is shown. The exception 'org.kohsuke.args4j.CmdLineException' should be catched and some clear text printed for the user with information about 'help' or 'help git' command.

Exception
...
gtest_repo>help
java.lang.RuntimeException: org.kohsuke.args4j.CmdLineException: help is not a jgit command
at com.codeaffine.gonsole.internal.CommandLineParser.parse(CommandLineParser.java:13)
at com.codeaffine.gonsole.internal.GitInterpreter.execute(GitInterpreter.java:29)
at com.codeaffine.gonsole.internal.GitConsole$InputScanner.run(GitConsole.java:148)
at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)
Caused by: org.kohsuke.args4j.CmdLineException: help is not a jgit command
at org.eclipse.jgit.pgm.opt.SubcommandHandler.parseArguments(SubcommandHandler.java:85)
at org.kohsuke.args4j.CmdLineParser.parseArgument(CmdLineParser.java:437)
at org.eclipse.jgit.pgm.opt.CmdLineParser.parseArgument(CmdLineParser.java:148)
at com.codeaffine.gonsole.internal.CommandLineParser.parse(CommandLineParser.java:11)
... 5 more
...

Split up com.codeaffine.test.util

Because of the RepositoryHelper, test utility bundle now has a Require-Bundle dependency on o.e.core.runtime. Some time earlier, the DisplayHelper brought in (unversioned) package imports to SWT.

These legacy dependencies (in particular core.runtime) might hinder using the test utility in other places, where there is no Equinox (or even OSGi?) or no SWT available. Therefore I was thinking to extract those test helpers into a bundle of their own.

Allow to change current repository

  • implement a pluggable repository provider
  • implement a simple repository provider (e.g. read repositories form properties file)
  • implement an EGit repository provider
  • implement a user interface to change the current repository

Add space character after content proposal completion

When using a Linux terminal I can use tab to complete the input. One nice feature here is that the console adds a blank " " after the completed instruction. This allows me to just continue typing.

It would be nice if gonsole would do the same.

command output should be "less"ed

When doing commands like git log, I'm usually interested in the most recent activities. The output should when there is no screen space left and I can decide to continue or abort.

Cursor jumps to end of line while editing

For example, type commit "message" and then try to insert the missing -m between commit and message. You will notice that the cursor is placed at the end of the line after each char that you typed.

"Show Console View" fails on OS X

I have installed Gonsole from the repository via the regular Eclipse mechanism. However, when I try to open Gonsole after restarting Eclipse, the "Show Console View" action fails with the following error message:

'Show Console View' has encountered a problem.

An internal error has occurred.
  Unrecognized formal key name: ⌃SPACE ⌥/

The error happens when I select Git Console from the Open Console drop-down of the Console View. Do the same from the Team context menu when right-clicking on a project with Git repository.

I use Eclipse Luna on OS X 10.8.5 x86_64.

Gonsole EGit integration not installable on Eclipse Mars

In Eclipse Mars JGit and EGit have Version number 4.0.0 which is not included in the bundle dependencies of the gonsole.egit manifest

org.eclipse.egit.core;bundle-version="[1.3.0,4.0.0)",
org.eclipse.jgit;bundle-version="[3.6.0,4.0.0)"

Make processing command line input more robust

  • the scanner thread is not terminated orderly
  • empty commands (e.g. just hit the Return key) cause exceptions
  • ensure that console and pgm commands use the same character encoding, preferrably UTF-8
  • react on console life cycle (open/close)
  • move cursor to end of output

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.