Skip to content

Commit e102072

Browse files
committed
Merge branch 'release/0.1.3'
2 parents 71766a7 + a68b8d0 commit e102072

34 files changed

+1133
-127
lines changed

README.md

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -7,10 +7,11 @@ This is alpha quality.
77
- Breaks on uncaught exceptions and breakpoints.
88
- Allows stepping from breakpoints
99
- Allows evaluation of expressions in the context of a stack frame
10+
- Inspection of locals in any stack frame
1011

1112
## Install
1213

13-
Add `[swank-clj "0.1.2"]` to your project.clj `:dev-dependencies`.
14+
Add `[swank-clj "0.1.3"]` to your project.clj `:dev-dependencies`.
1415

1516
Install the slime-clj.el contrib from [marmalade](http://marmalade-repo.org/).
1617

@@ -47,8 +48,8 @@ on the line where you want a breakpoint, and `M-x slime-line-breakpoint`.
4748

4849
Note that breakpoints disappear on recompilation at the moment.
4950

50-
To list breakpoints, use `M-x slime-list-breakpoints`. In the listing you can
51-
use the following keys
51+
To list breakpoints, use `M-x slime-list-breakpoints` or press `b` in the
52+
`slime-selector`. In the listing you can use the following keys
5253

5354
- e enable
5455
- d disable

ReleaseNotes.md

Lines changed: 31 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,36 @@
11
# Release Notes
22

3-
Current release is 0.1.2.
3+
Current release is 0.1.3.
4+
5+
* 0.1.3
6+
7+
- Add slime-disassemble to show bytecode for a frame
8+
When debugging it is sometimes useful to see the bytecode generated for a
9+
function. Pressing 'D' on a frame in the debugger opens a buffer with the
10+
bytecode.
11+
12+
- Propogate *compile-path* from lein through to debuggee
13+
*compile-path* is required for clojure.core/compile to work, and is
14+
depenedent on project setup. Ensure the lien plugin sets *compile-path*
15+
and forward this to the debuggee using the new-connection-hook, and a
16+
message with id 0, the reply to which is filtered and not returned to
17+
SLIME.
18+
19+
Fixes #5
20+
21+
- Add slime-list-repl-forms
22+
It is useful to be able to list all forms entered at the repl.
23+
slime-list-repl-forms will show these in a new buffer.
24+
25+
- Remove the atom used for defslimefn
26+
defslimefn now just forwards to defn, adding some metadata to the
27+
function, and interning the function var into the
28+
swank-clj.swank.commands namespace.
29+
30+
- Fix for clojure-1.3.0-alpha7
31+
Missing import added
32+
33+
- Add autoload and keybinding for slime-line-breakpoint
434

535
* 0.1.2
636

build-elpa-package.sh

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ rm -rf "marmalade/$dest" "marmalade/slime"
1212
find slime \( -name '*.el' -or -name 'ChangeLog' \) | cpio -pd marmalade
1313

1414
# remove the slime-clj contrib
15-
rm marmalade/slime/contrib/slime-clj.el
15+
rm -f marmalade/slime/contrib/slime-clj.el
1616

1717
# add an elpa style header
1818
sed -i .bak \

project.clj

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
(defproject swank-clj "0.1.2"
1+
(defproject swank-clj "0.1.3"
22
:description "Another swank for clojure"
33
:source-path "src/main/clojure"
44
:resources-path "src/main/resources"

src/main/clojure/leiningen/swank_clj.clj

Lines changed: 10 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -7,11 +7,15 @@
77
(eval-in-project
88
project
99
`(do (require '~'swank-clj.socket-server)
10-
(@(ns-resolve '~'swank-clj.socket-server '~'start)
11-
'~(merge
12-
(zipmap
13-
(map read-string (keys opts))
14-
(map read-string (vals opts)))
15-
{:port (Integer. port) :host host})))))
10+
(binding [*compile-path* ~(.getAbsolutePath
11+
(File.
12+
(or (:compile-path project)
13+
"./classes")))
14+
(@(ns-resolve '~'swank-clj.socket-server '~'start)
15+
'~(merge
16+
(zipmap
17+
(map read-string (keys opts))
18+
(map read-string (vals opts)))
19+
{:port (Integer. port) :host host}))]))))
1620
([project port] (swank-clj project port "localhost"))
1721
([project] (swank-clj project 4005)))

src/main/clojure/swank_clj/commands.clj

Lines changed: 0 additions & 13 deletions
This file was deleted.

src/main/clojure/swank_clj/commands/basic.clj

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,7 @@
11
(ns swank-clj.commands.basic
22
(:refer-clojure :exclude [load-file])
33
(:use
4-
;; (swank util)
5-
;; (swank.util.concurrent thread)
6-
;; (swank.util string clojure)
7-
swank-clj.commands)
4+
[swank-clj.swank.commands :only [defslimefn]])
85
(:require
96
[swank-clj.clj-contrib.macroexpand :as macroexpand]
107
[swank-clj.connection :as connection]

src/main/clojure/swank_clj/commands/completion.clj

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
(ns swank-clj.commands.completion
22
"Symbol completion commands"
33
(:use
4-
[swank-clj.commands :only [defslimefn]])
4+
[swank-clj.swank.commands :only [defslimefn]])
55
(:require
66
[swank-clj.repl-utils.completion :as completion]))
77

src/main/clojure/swank_clj/commands/contrib.clj

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
(:use
33
[swank-clj.logging :as logging]
44
[swank-clj.repl-utils.helpers :as helpers]
5-
[swank-clj.commands :only [defslimefn]]))
5+
[swank-clj.swank.commands :only [defslimefn]]))
66

77
(defslimefn swank-require [connection keys]
88
(binding [*ns* (the-ns 'swank-clj.commands.contrib)]

src/main/clojure/swank_clj/commands/contrib/swank_clj.clj

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,13 @@
11
(ns swank-clj.commands.contrib.swank-clj
22
"Contrib for providing swank-clj specific functions"
33
(:use
4-
[swank-clj.commands :only [defslimefn]])
4+
[swank-clj.swank.commands :only [defslimefn]])
55
(:require
6+
[clojure.string :as string]
67
[swank-clj.connection :as connection]
78
[swank-clj.jpda.debug :as debug]
89
[swank-clj.logging :as logging]
10+
[swank-clj.repl-utils.find :as find]
911
[swank-clj.swank.messages :as messages]))
1012

1113
;;; Breakpoints
@@ -65,6 +67,11 @@ corresponding attribute values per thread."
6567
(debug/breakpoint-location
6668
(connection/vm-context connection) breakpoint-id)))
6769

70+
;;; list repl source forms
71+
(defslimefn list-repl-source-forms
72+
"List all the source forms entered in the REPL"
73+
[connection]
74+
(string/join \newline (find/source-forms)))
6875

6976
;;; swank development utilities
7077
(defslimefn toggle-swank-logging

0 commit comments

Comments
 (0)