Fork me on GitHub
#cider
<
2015-10-14
>
gtrak00:10:09

It definitely happens in my mixed java/clojure codebase. It doesn't happen when I try to reproduce it šŸ˜›. It also doesn't happen in the same code-base when I start with mvn clojure:repl.

jcsims00:10:14

any ideas why killing an inf-clojure buffer wouldnā€™t kill the corresponding repl process?

redbeardymcgee02:10:09

reefersleep: I can't help with the eval of a form from point in arbitrary position anywhere in said form, but you cane activate picture-mode to move point to empty rows and columns that have no characters, including whitespace

reefersleep07:10:47

@redbeardymcgee: I found out the first part: cider-eval-defun-at-point. Thank you for the tip about picture-mode! Emacs seems to be bursting with functionality simple_smile

redbeardymcgee07:10:43

does that eval the top-level fn?

chipf0rk07:10:53

the top-level sexp

redbeardymcgee07:10:49

Of course, sexp

chipf0rk07:10:29

yes it does :)

redbeardymcgee07:10:13

Yeah I went source spelunking on github, but you can't follow symbols there so i got lazy and quit

redbeardymcgee07:10:38

why i'm always curious about implementation details I'll never understand

bozhidar09:10:30

@redbeardymcgee: because they are so much fun simple_smile

bozhidar09:10:18

@jcsims: sounds unlikely - comint processes are usually killed with the buffer they are attached to

bozhidar09:10:13

@seancorfield: thereā€™s nothing special about the browser

bozhidar09:10:21

just invoke this command and should be good to go

bozhidar09:10:27

the command is autoloaded, though

bozhidar09:10:46

and Iā€™m guessing Emacs Live doesnā€™t generate the autoload stubs

bozhidar09:10:55

which is done automatically when using package.el

bozhidar09:10:12

you might have require the ns browser manually before being able to use it

bozhidar09:10:21

or just add the autoload directive manually in your config

bozhidar09:10:50

a lot of ā€œnon-essentialsā€ commands are auto-loaded to speed up the initial CIDER load-time

rickmoynihan11:10:21

Out of interest roughly when is the release of 0.10.0 expected?

malabarba11:10:32

rickmoynihan: Likely before the conj

malabarba11:10:42

if we can kill the remaining bugs

bozhidar13:10:36

worst case scenario - before ClojureX simple_smile

bozhidar13:10:54

(I hope Iā€™ll do a presentation about CIDER 0.10 there)

bozhidar13:10:17

if you take a look at the recent development - itā€™s conference-driven

bozhidar13:10:29

Iā€™ve made a push to release something on the previous conj

bozhidar13:10:34

and then on EuroClojure

bozhidar13:10:51

if people were inviting me to talk about CIDER all the time it would have way more releases simple_smile

bozhidar13:10:58

the conj is a good target for one more reason - make sure everything works with Clojure 1.8

bozhidar13:10:32

CIDER 0.10 will likely be the final release supporting Clojure 1.5 & 1.6

bozhidar13:10:42

and after it we might bump the requirements to 1.7

bozhidar13:10:57

to be able to live in the brave new world of feature expressions

agile_geek13:10:45

@bozhidar: have you submitted your talk synopsis yet?

bozhidar13:10:04

To ClojureX? Yes.

agile_geek13:10:48

Cool. Iā€™ll double check that we got it.

jcsims14:10:43

bozhidar: yeah itā€™s strange - the lein process seems to hang around afterwards, and every time I kill the buffer, then start inf-clojure thereā€™s another process. It might just be the application itself thatā€™s causing issues. I might investigate later, but I think Iā€™m actually moving back to Cider because I miss a few things simple_smile

jcsims14:10:23

though I really like having M-. working without connecting to a repl

jcsims14:10:15

has anyone looked at a fallback to using tags if youā€™re not connected to a repl?

bozhidar14:10:45

it has been suggested a few times and itā€™s certainly doable

bozhidar14:10:59

my main issue with tags is keeping them in sync with the code

jcsims14:10:35

projectile was really helpful for me in that aspect, but tags alone wasnā€™t nearly as good as using the connected repl

jcsims14:10:40

Iā€™ll take a look at whatā€™s needed to add a tags fallback, because I know I would use it

bozhidar14:10:15

well, it will as simple as adding one check to cider-find-var regarding the presence of a connection

bozhidar14:10:02

Cider has plenty of advantages over inf-clojure - in general I believe that inf-clojure is a good way to get your feet wet without being overwhelmed

bozhidar14:10:25

but when you want to do some serious work, cider would provide more tactical support for you

malabarba14:10:33

There's a namespace cache that contains pretty much all the information you need for M-.

malabarba14:10:58

Someone on the clojure listsuggested storing this cache in a file so that it would work even without a repl

malabarba14:10:02

The advantage over a TAGS file is that you wouldn't need to run a secondary executable to update it. The disadvantage is that it only updates when you connect to a REPL

jstokes15:10:12

anyone using boot+cider find that cider-find-var takes you to a file in ~/.boot/cache/tmp?

bozhidar15:10:20

@malabarba: interesting idea (which can still be combined with a fallback to tags)

bozhidar15:10:47

@jstokes: you can file a bug for this I guess (especially if it happens all the time)

seancorfield15:10:35

You were right @bozhidar https://clojurians.slack.com/archives/cider/p1444814772000200 although now I get Invalid function: (cider-doc-lookup var) when I press enter next to any symbol in the namespace browser. I guess something else needs to be requiredā€¦?

bozhidar15:10:20

just file an issue on github and Iā€™ll take a look at this later

bozhidar15:10:31

weā€™ve done a ton of internal changes in 0.10

bozhidar15:10:51

and unfortunately our automated tests are few, so regressions are quite common

seancorfield15:10:53

and s produces Symbolā€™s function definition is void: when-let ā€” maybe CIDER is relying on a package that Emacs Live does load?

bozhidar15:10:13

seems youā€™re having some issues with dash.el

bozhidar15:10:45

Iā€™m guessing requiring it manually should fix your problem

seancorfield15:10:58

You think this is more an Emacs Live issue than CIDER?

bozhidar15:10:25

if itā€™s a missing library itā€™s certainly an Emacs Live issue

bozhidar15:10:33

Iā€™m not sure how it handles package deps

bozhidar15:10:59

thatā€™s why I encourage people to just use package.el, as itā€™s the only standard package management weā€™ve got

seancorfield15:10:45

Iā€™ll open an issue in Emacs Liveā€™s GitHub for now...

bozhidar15:10:10

ping me there if you need my input at some point

seancorfield16:10:57

I love Emacs Live as an overall package but its quirky handling of packages is very frustrating at times!

bozhidar19:10:33

btw, if somebody has a moment to drop by Clojureā€™s JIRA, please upvote http://dev.clojure.org/jira/browse/CLJ-706

bozhidar19:10:08

we deserve some deprecation mechanism and this would definitely be useful in CIDER (it could treat deprecated stuff specially)

michal21:10:35

hey, Iā€™d like to make an emacs shortcut which would evaluate some clojure code witin connected repl. what the magic cider function should I use?

jcsims23:10:24

@bozhidar: I agree that cider has much more over inf-clojure, hence why Iā€™m coming back to it simple_smile The cache that @malabarba mentioned sounds promising for my use case - I connect to a repl in the project Iā€™m working on all the time, but occasionally I want to check something in a different project that updates infrequently