Code Monkey home page Code Monkey logo

haskell-debug's People

Contributors

davideichmann avatar lierdakil avatar thomashickman avatar

Stargazers

 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

Forkers

davideichmann

haskell-debug's Issues

Uncaught Error: listen EADDRINUSE /tmp/haskell-debug.sock

[Enter steps to reproduce:]

  1. ...
  2. ...

Atom: 1.23.1 x64
Electron: 1.6.15
OS: Mac OS X 10.12.6
Thrown From: haskell-debug package 0.3.4

Stack Trace

Uncaught Error: listen EADDRINUSE /tmp/haskell-debug.sock

At events.js:160

Error: listen EADDRINUSE /tmp/haskell-debug.sock
    at Object.exports._errnoException (util.js:1022:11)
    at exports._exceptionWithHostPort (util.js:1045:20)
    at Server._listen2 (net.js:1249:19)
    at listen (net.js:1298:10)
    at Server.listen (net.js:1382:7)
    at /packages/haskell-debug/lib/TerminalReporter.js:27:21)
    at /packages/haskell-debug/lib/Debugger.js:28:33)
    at /packages/haskell-debug/lib/main.js:30:28)
    at Generator.next (<anonymous>)
    at fulfilled (/packages/haskell-debug/lib/main.js:4:58)

Commands

     -0:45.5.0 editor:newline (input.hidden-input)
     -0:38.9.0 core:copy (input.hidden-input)
     -0:37.2.0 editor:newline (input.hidden-input)
     -0:36.7.0 core:paste (input.hidden-input)
     -0:36.1.0 editor:newline (input.hidden-input)
     -0:35.6.0 core:paste (input.hidden-input)
     -0:35.2.0 editor:newline (input.hidden-input)
     -0:34.7.0 core:paste (input.hidden-input)
     -0:34.4.0 editor:newline (input.hidden-input)
     -0:34 core:paste (input.hidden-input)
     -0:32.9.0 core:save (input.hidden-input)
     -0:28.4.0 command-palette:toggle (input.hidden-input)
     -0:25.4.0 core:backspace (input.hidden-input)
     -0:22.5.0 haskell:debug (input.hidden-input)

Non-Core Packages

atom-beautify 0.30.9 
atom-haskell 0.4.0 
atom-json-editor 0.4.1 
autocomplete-haskell 1.0.1 
busy-signal 1.4.3 
haskell-debug 0.3.4 
haskell-ghc-mod 2.1.3 
haskell-grammar 0.4.0 
haskell-hoogle 0.1.3 
haskell-pointfree 0.2.0 
haskell-scry 1.0.7 
hasklig 0.4.0 
ide-haskell 2.2.0 
ide-haskell-cabal 2.0.5 
ide-haskell-hasktags 0.0.12 
ide-haskell-hoogle 0.1.2 
ide-haskell-repl 0.7.8 
import-sf-mono 1.0.1 
intentions 1.1.5 
language-haskell 1.15.0 
language-haskell-scoped 0.1.0 
language-mathematica 0.3.2 
linter 2.2.0 
linter-hlint 2.0.0 
linter-ui-default 1.6.10 
react 0.17.0 
script 3.17.3 

atom-haskell project

Hi. I was wondering if you'd be interested in joining atom-haskell.

I love what you're doing here, but some code is painfully hacky. So I was thinking, maybe we could collaborate on improving ide-haskell's API and possibly integrating this with ide-haskell-repl (as in "ability to use ide-haskell-repl instead of a terminal" not as in "merge packages")?

FWIW, I've been doing some work on managing tooltip provider priorities, so that could at least make this hack unnecessary. Let me know what you think!

Runnding Debug Command Throws Exception

Running "Haskell: Debug" causes the following exception:

TypeError: Cannot read property 'handle' of undefined
at new a (C:\Users\cke.atom\packages\haskell-debug\node_modules\draggable\dist\draggable.min.js:1:429)
at new CurrentVariablesView (C:\Users\cke.atom\packages\haskell-debug\lib\views\CurrentVariablesView.js:22:26)
at new Debugger (C:\Users\cke.atom\packages\haskell-debug\lib\Debugger.js:24:37)
at atom-text-editor.Main.commands.debug (C:\Users\cke.atom\packages\haskell-debug\lib\main.js:32:30)
at CommandRegistry.module.exports.CommandRegistry.handleCommandEvent (C:\Users\cke\AppData\Local\atom\app-1.10.2\resources\app.asar\src\command-registry.js:260:29)
at C:\Users\cke\AppData\Local\atom\app-1.10.2\resources\app.asar\src\command-registry.js:3:61
at CommandPaletteView.module.exports.CommandPaletteView.confirmed (C:\Users\cke\AppData\Local\atom\app-1.10.2\resources\app.asar\node_modules\command-palette\lib\command-palette-view.js:183:32)
at CommandPaletteView.module.exports.SelectListView.confirmSelection (C:\Users\cke\AppData\Local\atom\app-1.10.2\resources\app.asar\node_modules\atom-space-pen-views\lib\select-list-view.js:338:21)
at space-pen-div.atom.commands.add.core:confirm (C:\Users\cke\AppData\Local\atom\app-1.10.2\resources\app.asar\node_modules\atom-space-pen-views\lib\select-list-view.js:109:19)
at CommandRegistry.module.exports.CommandRegistry.handleCommandEvent (C:\Users\cke\AppData\Local\atom\app-1.10.2\resources\app.asar\src\command-registry.js:260:29)
at C:\Users\cke\AppData\Local\atom\app-1.10.2\resources\app.asar\src\command-registry.js:3:61
at KeymapManager.module.exports.KeymapManager.dispatchCommandEvent (C:\Users\cke\AppData\Local\atom\app-1.10.2\resources\app.asar\node_modules\atom-keymap\lib\keymap-manager.js:580:16)
at KeymapManager.module.exports.KeymapManager.handleKeyboardEvent (C:\Users\cke\AppData\Local\atom\app-1.10.2\resources\app.asar\node_modules\atom-keymap\lib\keymap-manager.js:388:22)
at WindowEventHandler.module.exports.WindowEventHandler.handleDocumentKeyEvent (C:\Users\cke\AppData\Local\atom\app-1.10.2\resources\app.asar\src\window-event-handler.js:98:36)
at HTMLDocument. (C:\Users\cke\AppData\Local\atom\app-1.10.2\resources\app.asar\src\window-event-handler.js:3:61)

GHCI Error. Parse error on input โ€˜:\โ€™

i have these packages installed :
ide-haskell
ide-haskell-cabal
haskell-ghc-mod
autocomplete-haskell
haskell-debug
language-haskell
in the following image you can see the error that happens when i run "haskell-debug".
it seems it comes from file config.cson but does not make much sense to me.
haskellerror
what am i doing wrong?

Error parsing targets

When I run the plug-in I get "GHCi Error: Error parsing targets: No local directories found as children of".

I'm using latest Atom + latest plug-in version. I'm trying to run Stack based project with explicitly selected main module on Windows 10.

Vscode

Provide this for vs code. It'll be great. If this is done. The extension will be the same but you'll need to change the target to which you compile to vsix

Exception thrown when trying to set breakpoint

[Enter steps to reproduce below:]

  1. ...
  2. ...

Atom Version: 1.12.3
Electron Version: 1.3.6
System: Microsoft Windows 10 Home
Thrown From: haskell-debug package, v0.1.2

Stack Trace

Uncaught TypeError: Invalid Point: (NaN, 0)

At C:\Users\Hickman\AppData\Local\atom\app-1.12.3\resources\app.asar\node_modules\text-buffer\lib\point.js:63

TypeError: Invalid Point: (NaN, 0)
    at Function.module.exports.Point.assertValid (C:\Users\Hickman\AppData\Local\atom\app-1.12.3\resources\app.asar\node_modules\text-buffer\lib\point.js:63:15)
    at TextBuffer.module.exports.TextBuffer.clipPosition (C:\Users\Hickman\AppData\Local\atom\app-1.12.3\resources\app.asar\node_modules\text-buffer\lib\text-buffer.js:1099:13)
    at TextBuffer.module.exports.TextBuffer.clipRange (C:\Users\Hickman\AppData\Local\atom\app-1.12.3\resources\app.asar\node_modules\text-buffer\lib\text-buffer.js:1087:20)
    at MarkerLayer.module.exports.MarkerLayer.markRange (C:\Users\Hickman\AppData\Local\atom\app-1.12.3\resources\app.asar\node_modules\text-buffer\lib\marker-layer.js:196:46)
    at DisplayMarkerLayer.module.exports.DisplayMarkerLayer.markBufferRange (C:\Users\Hickman\AppData\Local\atom\app-1.12.3\resources\app.asar\node_modules\text-buffer\lib\display-marker-layer.js:90:62)
    at TextEditor.module.exports.TextEditor.markBufferRange (C:\Users\Hickman\AppData\Local\atom\app-1.12.3\resources\app.asar\src\text-editor.js:1711:38)
    at BreakpointUI.toggleBreakpoint (C:\Users\Hickman\.atom\packages\haskell-debug\lib\BreakpointUI.js:13:39)
    at HTMLDivElement.view.addEventListener.ev (C:\Users\Hickman\.atom\packages\haskell-debug\lib\BreakpointUI.js:32:22)

Commands

Config

{
  "core": {
    "disabledPackages": [
      "keybinding-resolver",
      "linter-flake8"
    ],
    "telemetryConsent": "limited"
  },
  "haskell-debug": {
    "breakOnException": "errors",
    "clickGutterToInsertBreakpoint": false
  }
}

Installed Packages

# User
.bin, vundefined (inactive)
atom-beautify, v0.29.11 (active)
atom-node-debugger, v2.1.2 (active)
atom-typescript, v10.1.7 (active)
autocomplete-clang, v0.9.4 (active)
autocomplete-gml, v0.1.6 (active)
autocomplete-haskell, v0.6.7 (active)
autocomplete-love, v0.3.0 (active)
file-watcher, v0.4.0 (active)
firepad, v0.8.0 (inactive)
haskell-debug, v0.1.2 (active)
haskell-ghc-mod, v1.17.2 (active)
hyperclick, v0.0.37 (active)
hyperclick-love, v0.4.0 (active)
ide-haskell, v1.8.1 (active)
ide-haskell-cabal, v1.6.4 (active)
ide-haskell-repl, v0.1.9 (active)
language-bnf, v1.1.0 (active)
language-brainfuck, v0.2.0 (active)
language-dogescript, v0.1.2 (active)
language-ejs, v0.2.0 (active)
language-gml, v0.3.0 (inactive)
language-haskell, v1.9.9 (active)
language-lua, v0.9.11 (active)
language-pegjs, v0.5.0 (active)
language-racket, v0.4.0 (active)
language-ruby, v0.69.0 (active)
language-rust, v0.4.6 (active)
linter, v1.11.16 (active)
linter-clang, v3.4.4 (active)
linter-coffeelint, v1.1.2 (active)
linter-flake8, v1.13.2 (inactive)
linter-gml, v0.1.3 (active)
linter-lua, v1.0.2 (active)
linter-python-pyflakes, v0.1.0 (active)
linter-ruby, v1.2.2 (active)
linter-rust, v0.5.6 (active)
livereload, v0.4.4 (active)
racer, v0.20.0 (active)
sass-autocompile, v0.13.0 (active)
script, v3.9.0 (inactive)
Sublime-Style-Column-Selection, v1.7.2 (active)
tab-control, v0.6.9 (active)
atom-dark-syntax, v0.27.0 (inactive)
atom-dark-ui, v0.52.0 (inactive)
atom-light-syntax, v0.28.0 (inactive)
atom-light-ui, v0.45.0 (inactive)
base16-tomorrow-dark-theme, v1.3.0 (inactive)
base16-tomorrow-light-theme, v1.3.0 (inactive)
one-dark-ui, v1.6.2 (active)
one-light-ui, v1.6.2 (inactive)
one-dark-syntax, v1.5.0 (active)
one-light-syntax, v1.5.0 (inactive)
solarized-dark-syntax, v1.0.5 (inactive)
solarized-light-syntax, v1.0.5 (inactive)
about, v1.7.0 (active)
archive-view, v0.62.0 (active)
autocomplete-atom-api, v0.10.0 (active)
autocomplete-css, v0.13.1 (active)
autocomplete-html, v0.7.2 (active)
autocomplete-plus, v2.31.4 (active)
autocomplete-snippets, v1.11.0 (active)
autoflow, v0.27.0 (inactive)
autosave, v0.23.1 (active)
background-tips, v0.26.1 (active)
bookmarks, v0.42.0 (active)
bracket-matcher, v0.82.2 (active)
command-palette, v0.39.0 (active)
deprecation-cop, v0.54.1 (active)
dev-live-reload, v0.47.0 (active)
encoding-selector, v0.22.0 (active)
exception-reporting, v0.40.0 (active)
find-and-replace, v0.202.2 (active)
fuzzy-finder, v1.4.0 (active)
git-diff, v1.1.0 (active)
go-to-line, v0.31.0 (inactive)
grammar-selector, v0.48.2 (active)
image-view, v0.60.0 (active)
incompatible-packages, v0.26.1 (active)
keybinding-resolver, v0.35.0 (inactive)
line-ending-selector, v0.5.0 (active)
link, v0.31.2 (inactive)
markdown-preview, v0.158.8 (active)
metrics, v1.1.2 (active)
notifications, v0.65.1 (active)
open-on-github, v1.2.1 (inactive)
package-generator, v1.0.1 (inactive)
settings-view, v0.243.1 (active)
snippets, v1.0.4 (active)
spell-check, v0.68.4 (active)
status-bar, v1.4.1 (active)
styleguide, v0.47.2 (active)
symbols-view, v0.113.1 (inactive)
tabs, v0.103.0 (active)
timecop, v0.33.2 (active)
tree-view, v0.210.0 (active)
update-package-dependencies, v0.10.0 (active)
welcome, v0.35.1 (active)
whitespace, v0.35.0 (active)
wrap-guide, v0.38.2 (active)
language-c, v0.54.0 (active)
language-clojure, v0.22.1 (active)
language-coffee-script, v0.48.0 (active)
language-csharp, v0.13.0 (active)
language-css, v0.40.1 (active)
language-gfm, v0.88.0 (active)
language-git, v0.15.0 (active)
language-go, v0.43.0 (active)
language-html, v0.46.1 (active)
language-hyperlink, v0.16.1 (active)
language-java, v0.24.0 (active)
language-javascript, v0.122.0 (active)
language-json, v0.18.3 (active)
language-less, v0.29.6 (active)
language-make, v0.22.2 (active)
language-mustache, v0.13.0 (active)
language-objective-c, v0.15.1 (active)
language-perl, v0.37.0 (active)
language-php, v0.37.3 (active)
language-property-list, v0.8.0 (active)
language-python, v0.45.1 (active)
language-ruby, v0.69.0 (active)
language-ruby-on-rails, v0.25.1 (active)
language-sass, v0.57.0 (active)
language-shellscript, v0.23.0 (active)
language-source, v0.9.0 (active)
language-sql, v0.25.0 (active)
language-text, v0.7.1 (active)
language-todo, v0.29.1 (active)
language-toml, v0.18.1 (active)
language-xml, v0.34.12 (active)
language-yaml, v0.27.1 (active)

# Dev
No dev packages

Uncaught Error: This socket has been ended by the other party

[Enter steps to reproduce:]

  1. ...
  2. ...

Atom: 1.52.0 x64
Electron: 6.1.12
OS: Unknown Windows version
Thrown From: haskell-debug package 0.3.6

Stack Trace

Uncaught Error: This socket has been ended by the other party

At events.js:177

Error: This socket has been ended by the other party
    at Socket.writeAfterFIN [as write] (net.js:407:14)
    at TerminalReporter.send (/packages/haskell-debug/lib/TerminalReporter.js:65:29)
    at TerminalReporter.destroy (/packages/haskell-debug/lib/TerminalReporter.js:39:18)
    at Debugger.destroy (/packages/haskell-debug/lib/Debugger.js:111:31)
    at /packages/haskell-debug/lib/Debugger.js:135:18
    at Function.simpleDispatch (~/AppData/Local/atom/app-1.52.0/resources/app/static/<embedded>:11:1190511)
    at Emitter.emit (~/AppData/Local/atom/app-1.52.0/resources/app/static/<embedded>:11:1191952)
    at process.interactive_process_1.InteractiveProcess.cwd.cwd (/packages/haskell-debug/lib/GHCIDebug.js:158:26)
    at /packages/haskell-debug/lib/interactive-process.js:25:17)
    at ChildProcess.emit (events.js:200:13)
    at Process.ChildProcess._handle.onexit (internal/child_process.js:272:12)

Commands

  2x -2:44.4.0 core:move-down (input.hidden-input)
  4x -2:43.7.0 core:move-right (input.hidden-input)
     -2:42.7.0 editor:newline (input.hidden-input)
     -2:37.6.0 core:save (input.hidden-input)
  3x -2:33.5.0 core:undo (input.hidden-input)
  4x -2:29.8.0 core:backspace (input.hidden-input)
     -2:24.4.0 core:save (input.hidden-input)
  7x -2:18.3.0 core:undo (input.hidden-input)
  4x -2:15.3.0 core:backspace (input.hidden-input)
     -2:14.4.0 core:save (input.hidden-input)
     -1:07.1.0 command-palette:toggle (input.hidden-input)
     -1:04.9.0 core:confirm (input.hidden-input)
     -1:04.9.0 haskell:debug (input.hidden-input)
     -0:12.9.0 command-palette:toggle (input.hidden-input)
     -0:09.0 core:confirm (input.hidden-input)
     -0:09.0 haskell:debug (input.hidden-input)

Non-Core Packages

atom-terminal 0.8.0 
autocomplete-clang 0.13.1 
gcc-make-run 0.2.12 
haskell-debug 0.3.6 
language-haskell 1.20.0 
terminal-tab 0.6.0 

GHCI Error in Atom GUI + Terminal opening with node error when starting haskell-debug

Hi,

I'm trying to debug this Haskell application: https://github.com/neo4j-examples/neo4j-movies-haskell-bolt

and get the following error in Atom GUI:

GHCI Error
Configuring GHCi with the following packages: hasbolt-sample-app
Using main module: 1. Package `hasbolt-sample-app' component exe:hasbolt-sample-app-exe with main-is file: /Users/ts/work/haskell/neo4j-movies-haskell-bolt/app/Main.hs

also a Terminal opens up with this content:

node /Users/ts/.atom/packages/haskell-debug/lib/TerminalEcho.js
ts@petunia ~ 0% node /Users/ts/.atom/packages/haskell-debug/lib/TerminalEcho.js
/Users/ts/.atom/packages/haskell-debug/lib/TerminalEcho.js:3
const net = require("net");
^^^^^
SyntaxError: Use of const in strict mode.
    at exports.runInThisContext (vm.js:73:16)
    at Module._compile (module.js:443:25)
    at Object.Module._extensions..js (module.js:478:10)
    at Module.load (module.js:355:32)
    at Function.Module._load (module.js:310:12)
    at Function.Module.runMain (module.js:501:10)
    at startup (node.js:129:16)
    at node.js:814:3

I have no idea whats wrong here. Any hints?

Thanks,
BR

Finish Package

  • Finish backend
  • Breakpoint UI
  • Debug toolbar
  • Hover to evaluate
  • Exception UI

Fail to set break point not in current file.

this.ghciDebug.addBreakpoint(ob) // TODO: make this work properly

I suggest trying to get the module name from the file path using the :list module command. Here is a sketch of how it could work:

GHCIDebug.ts

// in addBreakpoint 
            this.run(`:list modules`, false, false, false)
              .then(modules => {
                const matchResult = modules.match(new RegExp("([^ ]+) +\( +" + breakpoint.file))
                if (! matchResult) { return }
                this.run(`:break ${matchResult[1]} ${breakpoint.line}`)
              })

Deprecated selector in `haskell-debug\styles\main.atom-text-editor.less`

In haskell-debug\styles\main.atom-text-editor.less:

Starting from Atom v1.13.0, the contents of atom-text-editor elements are no longer encapsulated within a shadow DOM boundary. This means you should stop using :host and ::shadow pseudo-selectors, and prepend all your syntax selectors with syntax--. To prevent breakage with existing style sheets, Atom will automatically upgrade the following selectors:

  • .breakpoint => .syntax--breakpoint

  • .cursor-line.breakpoint => .cursor-line.syntax--breakpoint

Automatic translation of selectors will be removed in a few release cycles to minimize startup time. Please, make sure to upgrade the above selectors as soon as possible.

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.