IRC channel logs
2024-02-26.log
back to list of logs
<apteryx>is guile supposed to look in the same directory as a source file to find a .go ? <apteryx>when using guile -l the/script.scm -e the-proc -s ... <apteryx>with the/script.go existing, but not on the GUILE_LOAD_COMPILED_PATH <apteryx>ah, it uses load-in-vicinity, which consults only in (getcwd) <apteryx>not true, it also uses the %load-compiled-path <apteryx>hm, so load-in-vicinity with an absolute path works in odd ways for absolute file names. It'll concatenate a %compiled-load-path entry with the absolute file name, leading to something like: "/gnu/store/hx74v20cwcra7jq8lnagfi76i73018ai-ld-wrapper2-0/bin//gnu/store/hx74v20cwcra7jq8lnagfi76i73018ai-ld-wrapper2-0/bin/ld.go" for a compiled path of <apteryx>/gnu/store/hx74v20cwcra7jq8lnagfi76i73018ai-ld-wrapper2-0/bin and -l /gnu/store/hx74v20cwcra7jq8lnagfi76i73018ai-ld-wrapper2-0/bin/ld.go <daviid>apteryx: those guile-lib patches look good to me, and tx for the commit style, just one detail and one quiz wrt v4 7/7 <daviid>apteryx: in the doc string, you say "... @code{flush-port} is called after emitting a log ..." but the method name is flush-log ? <daviid>apteryx: wrt v4 7/7 still, i was also asking myself, do we really want to 'systematically' call flush-log after every emit-log call, or, just an idea, would we prefer to make and use a parameter, like (when (%flush-after-each-emit) (flush-log self)) ... wdyt? not a big deal, but as you are 'at it' ... <daviid>apteryx: anyway, you can push those v4 patches to the devel branch, if you think my last suggestion is worth doing, we can add another separate patch - i'll double check, merge to master and do the release this week ... <apteryx>daviid: re calling flush-log systematically, I think that's a better default than the status quo, but I agree it'd be nice to expose a switch to change this behavior <apteryx>I'm not sure a parameter is the right fit here, since we already have a log-handler objcet that could keep such setting as a property <daviid>apteryx: ah right - if we add a property, i still the default value should be #f? <apteryx>I think the default value should be #t, as that's the default value for e.g. Python and people expect to see the logs written in real time <apteryx>going against this breaks users expectations (it's surprising) -- at least it was for me <apteryx>but with a documented switch, users could easily change that default #t to #f, in case they logs MB/s of traffic and would rather have it block buffered <apteryx>or better than flushing after each emit-log, we could also make the handler's port line buffering configurable at handler construction time <apteryx>e.g. (make <port-log> #:port (current-error-port) #:port-buffering 'line) <daviid>perfect, if you're ok, please push those patches to the devel branch, let me know ... then we'll see if you have time to work on this enhancement <apteryx>I don't see a 'devel' branch; do you want to push with my local branch name, which is 'improve-logging-library' ? <daviid>hum, i thought i did push my devel branch 'a long long time ago', but it seems not <apteryx>oh, I think I deleted that one, as it was confusing (behind master, with no extra commits) <apteryx>I've now recreated devel from master and pushed my series to it <daviid>ah - it's ok, but may i ask you (re)create a devel branch, apply your patches and push to origin devel, then i'll pull ... <apteryx>yes, that's what I've done now. if you fetch, you should see a 'devel' branch <apteryx>By the way, I forgot to remove the Series-*: git trailers from my commit messages; that's metadata used by patman to track submissions, so feel free to remove it from my commit messages <apteryx>(if you prefer, I can also remove these myself and recreate the devel branch) <apteryx>daviid: done; I force-pushed to devel, so you'll want to git fetch && git reset --hard devel with the branch checked out; last commit should be d751210 <mwette> dthompson: Thanks for that post! <mwette>I'm also attracted to the idea of transients: it's OK to mutate if done locally. (See cps/intset.scm.) <efraim>I'm debugging guile-git on powerpc-linux and I'm confused when to choose size_t and when to choose int. I get matching what libgit2 is using, but would it really make a difference? <civodul>efraim: does “make check-abi” pass on this platform? <efraim>I'll adjust the 'check phase on libgit2 <efraim>I don't see a check-abi target, but all the tests that we run in guix pass on powerpc-linux <civodul>there’s a ‘check-abi’ on Guile-Git’s master branch <efraim>I believe that's the standard test-target <efraim>yeah, check calls check-am which calls check-local which calls check-abi. so its the same test failure <civodul>efraim: what’s the output from “make check-abi”? <civodul>just pushed a fix for a problem i noticed on i586-gnu <efraim>civodul: it looks like it may have passed, I'm running it again with less of my debugging stuff in it <efraim>civodul: all the tests in check-abi pass on powerpc-linux <old>dthompson: nice! That will be my bedtime reading tonight <daviid>apteryx: something must have gone wrong, the devel branch is stil not listed on https://git.savannah.nongnu.org/cgit/guile-lib.git/refs/, and as i still have my local devel branch, git fetch --all; git reset --hard devel still leaves me at 8d01962 and git pull complains Your configuration specifies to merge with the ref 'refs/heads/devel' rom the remote, but no such ref was fetched. <daviid>apteryx: wrt the flush-log 'frequency' discuaaion, i'd pefer to call the additional slot kw #:buffering-mode, so (make <port-log> #:port (current-error-port) #:buffering-mode 'line) <cwebber>6 month contract to hack on Guile, and this one *does* accept international candiates, since it's a contract <cwebber>to hack on guile code, specifically bringing goblins to the browser by integrating Goblins and Hoot <dthompson>ACTION goes back to working on wasm exceptions