This page is not created by, affiliated with, or supported by Slack Technologies, Inc.
2016-08-30
Channels
- # admin-announcements (1)
- # aws (32)
- # bangalore-clj (1)
- # beginners (2)
- # boot (137)
- # cider (2)
- # clara (1)
- # cljs-dev (39)
- # cljsrn (20)
- # clojure (268)
- # clojure-berlin (20)
- # clojure-canada (37)
- # clojure-dev (8)
- # clojure-gamedev (6)
- # clojure-norway (2)
- # clojure-russia (55)
- # clojure-spec (130)
- # clojure-uk (39)
- # clojurebridge (1)
- # clojurescript (102)
- # cursive (20)
- # datomic (231)
- # editors (5)
- # editors-rus (8)
- # events (5)
- # funcool (12)
- # hoplon (31)
- # instaparse (57)
- # jobs (9)
- # lein-figwheel (4)
- # off-topic (2)
- # om (8)
- # om-next (30)
- # onyx (241)
- # planck (6)
- # protorepl (4)
- # re-frame (115)
- # reagent (7)
- # rum (9)
- # schema (1)
- # test-check (9)
- # untangled (24)
- # yada (20)
we'd like to host a hangout on wed. at 1:30pm EST to discuss https://github.com/boot-clj/boot/issues/486
in particular micha and i have a rough plan to add a backward-compat exception/notification subsystem that we'd love feedback on
I’m still having a strange problem with boot and gpg-agent on OS X that I am not having much (any) luck with on the googles - I have an agent set up to decrypt my ~/.lein/credentials.clj.gpg
at need, and in ~/.boot/profile.boot
I have the configure-repositories!
impl from the wiki that used to work fine like two days ago
now, however, when I fire up boot repl
I get a stack trace about ‘Inappropriate ioctl for device’ until such time as I exercise the gpg-agent “directly” in a shell session. Then, at least until gpg-agent expires my “login”, boot repl
works fine
it used to be the case that when gpg-agent wanted my private key passphrase, boot was able to ask for it (even inside a CIDER repl session, much to the horror and inevitable M-x redraw-display
of the emacs window)
I moved some project dependencies around but afaik I didn’t touch anything directly involved with the gpg -> creds -> fetch deps pipeline so I am at something of a loss as to what to un-break
anyone seen something like this or know what I’m doing wrong/failing to do?
yeah it does, that’s in fact what I do to “warm up” the gpg passphrase cache
specifically gpg --quiet --batch --decrypt ~/.lein/credentials.clj.gpg
not within boot, but if I drop out of the repl/kill my emacs session and issue that command again, I get prompted again, and then I’m good for however long my cache timeout is
less than an hour, long enough that it’s annoying to lose my place hehe
well, to be clear, this shows up running boot repl
in a session where the gpg agent hasn’t gotten the passphrase yet just at the terminal
doesn’t have to be in emacs
but I will look at pinentry-program
; maybe I can get something better than the ncurses-y ugliness I have now
hm, that’s a good trick
I got my more-gears-and-dust way working too though - turns out that there is a GUI pinentry client in homebrew, it’s just not the default
so now I get a nice popup and presumably don’t break my emacs window, though I’ve only tested so far with boot repl
in the terminal
pinentry-program
was the right hash key for Google, led me right to some github docs
so again, I am in your debt.
@chris_johnson https://github.com/alandipert/dotfiles/blob/master/dotfiles/spacemacs#L241-L246 may also interest you
@alandipert: I'd attend the meeting :)
great!
the basic idea is to add a field to the fileset that contains an atom that contains a vector, and when exceptions are throw or boot.util/{warn, error} are called things are added
then in the boot
function we add a combinator that wraps tasks with machinery for propagating the "errorset"
i think...
i come dangerously close to forgetting about what we came up with
the atom thing was the final result but i don't remember much of our thinking that led us there
i remember we got there because we want backward compat, so we'll have a macro/atom thing to capture stuff
then at the end of the task we tack on the things that happened
right, yes
do you remember why we needed the atom? and couldn't just add ot fileset
like we definitely need the atom for the capture part
got it
it's a write barrier kinda
like it needs to have the same semantics as logging
ok phew
man that would have sucked so much if we forgot
yes raid1
Anyone have an idea why visualvm might not work for me? If I call a fn from the repl, attach to the boot process and try the "profiling" tab, it says "0 methods instrumented" and doesn't return any results.
(not sure this is actually boot-related, but it might be)
is cursive going to add native support for boot at some time or perhaps would they accept a PR to do so?
@tmtwd He wants to add support for it but it is a pretty big change. No PRs because Cursive is closed source. The relevant issue is here: https://github.com/cursive-ide/cursive/issues/692
here’s that man again, with another weird question - I’m running boot-logservice
just inside a repl in boot.user
, with two appenders configured: CONSOLE
(what you’d expect) and SYSLOG_TLS
that uses a third-party appender class to attempt to send logs to Papertrail. When I (log/debug “hi”)
for example, my CONSOLE
logger logs to my nrepl server window as you’d expect, but SYSLOG_TLS
reports
WARN boot.user - TCP logging test
TCPNetSyslog: DOWN (org.productivity.java.syslog4j.SyslogRuntimeException: java.net.ConnectException: Connection refused)
and tcpdump
listening for the port it should be sending on records no trafficdo I have to do something special to allow for code executing inside a pod “see out”? As usual, I have attempted to consult the oracle and come up mainly with docs I’ve already read which do not address this issue, or stackoverflow questions about unrelated things from 2012 or 2013
also: I can telnet to the Papertrail host/port in question from a terminal just fine, and I do see data in tcpdump
output from there
That is reassuring and tracks with my understanding of what a pod "is"
But you never know! Could be a VM under there! 😄
with loggers though it's possible that the classpath is causing it to configure itself differently
so if an errant config file ends up on the classpath, or something doesn't end up there, the logger configures itself differently
I'm as sure as I can be, the host and port are actually in the logback.xml config of the appender, and I both dug out the actual XML boot-logservice emits and sent it to the appender author (who said it looked right) and also proved it was reading it by breaking my log-config def and seeing the class fail to load
but i suspect that it's not connecting to the right place, and you won't see anything with netcat
Just hearing from the horse's mouth that pods don't have any networking necromancy tucked away under the hood is enough to satisfy me that it's a problem with the custom log appender
i mean connection refused means either papertrail is down or it's actually trying to connect to somewhere else
I shall investigate non-boot components further
Something like?
(core/deftask my-task
[f foo VAL str "a foo"]
(println *task-options*))
hola - quick question re: boot and deploying - https://github.com/boot-clj/boot/wiki/Repository-Credentials-and-Deploying doesn’t seem to mention anything about adding arbitrary additional files with different classifiers to nexus… any one got a quick pointer ( maven guy here, helping out coworker )
as part of the build, we generate RPM files which we want to also deploy to our internal nexus. under maven this is quite simple, and I also handle it inside our mojos. but can’t spot anything obvious for boot - I assume I need to modify some fileset list or something?
will do. been a while since I’ve delved into clojure itself, and have been asked to look at boot often ( i did clojure-maven-plugin back in the day ).
like
(boot.pod/with-eval-worker
(require '[boot.aether :as aether])
(aether/install ...
i'm really missing the high level understanding of how all these artifacts work in Maven
oh btw, if you want to have a repl in the worker pod you can get one: boot repl -P worker
nod I’ll work thru this with our clojure guy I’m helping, and if I can report back anything to improve docs, or just write up a blog post will do so.
hey @talios welcome