libera/#clasp - IRC Chatlog
Search
15:55:49
mns
is the freebsd branch good to be used, or should I just use 'main' branch and work off that ?
16:14:35
mns
yitzi: is it failing here: boehmprecise/src/llvmo/link_intrinsics.pp /usr/include/sys/elf_generic.h:52:2: error: "Unknown byte order"
16:55:05
yitzi
Ok. The unknown byte error is fixed in the freebsd branch. It is failing in bclasp compilation with some kind of complaint about mutex.
17:38:08
stassats
so i used your github actions to localize the problem, turns out it's caused by trying to call non-existing programs
18:03:01
kpoeck
::notify yitzi here is the promised script to run about 100 quicklisp libraries with clasp: https://github.com/clasp-developers/clasp/wiki/Quicklisp-libraries-in-Clasp . Currently ironclad loops, so I disabled it (is reported as an issues, but i still owe Bike a reproducable test case)
18:04:09
stassats
i tried running automated asdf tests, but asdf:test-system doesn't return anything meaningful?
18:05:28
kpoeck
I believe e.g. `(asdf:test-system (asdf:find-system :djula))` should work if I understood you correctly
18:08:39
kpoeck
Just tried in sbcl, (ql:quickload :djula) and (asdf:test-system (asdf:find-system :djula)) compile the system and run the tests, see https://gist.github.com/kpoeck/0c96a85fb0e6c1129f9b68bc2f33508b for the log.
18:10:56
stassats
(asdf:operate 'asdf:test-op system) _obviously_ doesn't return what the operation returns
18:12:05
stassats
basically have to validate each system at specific revisions and extract their test invocations
18:12:48
stassats
here's the result #<ASDF/LISP-ACTION:TEST-OP > #<ASDF/PLAN:SEQUENTIAL-PLAN {7008D903B3}>
18:21:00
yitzi
The lack of a meaningful result from ASDF:TEST-SYSTEM is mentioned in ASDF manual as I recall.
18:21:00
Colleen
yitzi: kpoeck said 17 minutes, 59 seconds ago: here is the promised script to run about 100 quicklisp libraries with clasp: https://github.com/clasp-developers/clasp/wiki/Quicklisp-libraries-in-Clasp . Currently ironclad loops, so I disabled it (is reported as an issues, but i still owe Bike a reproducable test case)
19:34:01
Bike
parallel analyzer is now giving me "Permission denied" trying to open /tmp/process0-output.log
20:50:34
drmeister
Can you take care of it? It's here... https://github.com/clasp-developers/clasp/blob/main/src/lisp/modules/clasp-analyzer/clasp-analyzer.lisp#L3908
20:51:31
drmeister
This is like the third time where I used a simple /tmp/ filename and we've had this problem. If you have a recommendation for a good standard operating procedure for naming files in /tmp/ I'll adopt it.
21:05:58
Bike
do we even want to touch the filesystem here? i guess so. but if we use an unpredictable name we kind of lose the point of it
21:09:00
yitzi
Shouldn't we be putting that into `build/` thereby avoiding the name clashes and temp files?
21:14:13
yitzi
Doesn't look like I told the static analyzer about the possibility of build directories other that "build/"
21:14:38
yitzi
Bike: If you need to hardwire the path, I can figure out how to make automatic from koga later on.
21:15:23
Bike
i honestly only have a dim understanding of how the analyzer works. my inclination is just to have the base path for these as a keyword argument. i do not know what *compile-commands* is
21:17:12
yitzi
That is fine. If you do a relative path like "foo.log" it will probably just put it into build for you.
0:04:20
drmeister
So - if I add a workflow to cando - could I get that to build the same way? Could I copy your test.yml and modify it?
0:26:09
drmeister
Hmm, that's a question. If I push to the cando repo I'd like to build cando. If we push to the clasp repo - I'd like to build cando. You can't build the cando repo by itself - it's an extension of clasp.
0:29:18
yitzi
Well, the regression tests and the ansi test run with ignore-extensions set. So unless cando has a test suite it would just prove that cando can be built.
0:31:36
yitzi
In any case the short term answer would be to build in clasp's repo and see if we can trigger builds from cando also. Otherwise, I'll have to come up with a different workflow for cando that clones cando into a specific folder inside a clasp clone.
0:35:02
yitzi
Probably clone clasp first, then use actions/checkout@v2 to clone in extensions/cando, then `./koga --extensions=cando --skip-sync=cando`
0:35:33
drmeister
mns: yitzi wrote it - it's a build system implemented in Common Lisp. It does everything that waf did for us previously.
0:37:11
drmeister
yitzi: koga is already pulling in all these other repos that we depend on - I don't understand why we can't let koga pull cando.
0:37:44
mns
drmeister: not familiar with wof either :-) btw, I came to this after seeing your clasp presentation. nice presentation.
0:37:47
yitzi
Because the workflow is tied to a specific commit. You need to know what commit is being tested.
0:39:05
yitzi
drmeister: Two different scenarios: First the workflow is in the clasp repo. Second the workflow is in the cando repo.
0:39:53
yitzi
If it is in the clasp repo we can just do `./koga --extensions=cando` and koga will pull the cando in repos.sexp
0:41:38
yitzi
Apparently there is a way to cause changes in one repo to trigger workflows in a different repo.
0:44:06
drmeister
Is `test_cando:` supposed to be a keyword - or is it supposed to match the name in line 1
0:50:56
drmeister
! [remote rejected] main -> main (refusing to allow a Personal Access Token to create or update workflow `.github/workflows/test_cando.yml` without `workflow` scope)
0:55:13
yitzi
The debian package workflow succeeded. Have to add a step to make the package available for download.
1:02:55
mns
How can I help with freebsd ? Minimal lisp, c++ skill, though 20+ years of experience with automation and releng type stuff
1:05:02
yitzi
mns: Try compiling the freebsd branch. It gets stuck in the bclasp stage due to some mutex issue. Maybe you won't get the issue.
1:06:09
mns
yitzi: sure I can do that. I'll create a separate branch for myself off the freebsd branch to work on it.
1:23:13
yitzi
mns: https://github.com/clasp-developers/clasp/wiki/Building-and-Installing-from-Source
1:42:07
drmeister
We want to put some tutorials together for undergraduates in computational chemistry.
1:44:17
drmeister
Getting stuck in bclasp on freebsd? Is it a fork thing? We don't use threads until cclasp is up and running.
1:52:16
mns
If we don't have an open issue in github for tracking this, I'll open one up, rather than using pastebins and such
1:57:03
drmeister
Bike: How do you set your OAuth token? I've created a new one and I can't figure out how to switch to it?
1:57:59
mns
There is https://github.com/clasp-developers/clasp/issues/1203, but that is related to waf. should I create a new one for koga+fbsd ?
2:02:44
Bike
drmeister: i actually don't use oauth, i use PATs, which you can just enter like password
2:11:49
drmeister
mns: The problem you are seeing could be the OS killing the exposeFunctions2.cc because it is taking too much memory.
2:12:19
drmeister
How much memory do you have? Do you have swap space? How many processes are you using?
2:19:50
mns
quad CPU, 8GB RAM, 2GB swap. I was watching the memory and it was not reaching 8GB, close to 6GB. swap was at 500MB-700MB
2:23:36
mns
drmeister: dnag you're right: May 16 21:38:07 caladan kernel: pid 89427 (clang-13), jid 0, uid 1001, was killed: out of swap space
2:25:28
drmeister
The exposeFunctionsXXX files are the heaviest files to compile. 8GB memory needs to limit the number of threads for those files.
2:30:28
yitzi
mns: if it dies later during aclasp, bclasp or cclasp compilation you may need to do `./koga --jobs=2` to tell the Lisp compiler to limit the job count. Then rerun `ninja -j 2 -C build`
2:31:39
mns
ok I'll take a look at it. I'll be hitting the sack soon here on the east coast USA. if its not done by then, I'll check in the morning
2:35:55
mns
yitzi: if I use --jobs=2 with koga, will it automatically use that with ninja as well ? or do I have to explicitly tell ninja to use -j 2 ?
2:40:49
drmeister
yitzi: I didn't know about the `./koga --jobs=2`- that's to limit the number of processes that clasp forks?
2:42:59
drmeister
mns: I'm not clear on the effect of `./koga --jobs=2`. I know that `ninja -j 2 -C build` will limit the number of C++ compilation processes. I'm guessing `./koga --jobs=2` controls the lisp compiler and `ninja -j 2 -C build` controls the C++ compilation.
2:43:46
drmeister
::notify yitzi Have you looked into if `ninja -j 2` can somehow communicate the number of jobs to child processes?
2:48:46
drmeister
::notify yitzi What was that Common Lisp programming course thing you told me about? experienceio?
2:51:26
mns
my kid is going be studying for pharmacology starting september, hence the connection to molecular chemistry and clasp. though I came to the video via lisp. and then saw that it was for molecular chemistry, a nice way to bond with the kid.
2:52:58
drmeister
Down the road I'd like to. Not yet. We are just building clasp and running tests right now.
2:53:53
mns
alright it failed for bclasp. I'll update the github issue with the information that I can see. Are there log files that are generated somewhere ?