Custom Query (1630 matches)
Results (70 - 72 of 1630)
Ticket | Resolution | Summary | Owner | Reporter |
---|---|---|---|---|
#1713 | fixed | chicken-install cache doesn't respect isolation | ||
Description |
the directory name "chicken-install" is hardcoded in egg-environment.scm. this patch uses the name of the chicken-install binary instead, so that different versions of chicken built with PROGRAM_PREFIX or PROGRAM_SUFFIX have separate caches different versions with different install locations but the same program names still overlap, but they would overlap in PATH anyway, so this doesn't strike me as a big deal. program prefix/suffix is intended to allow complete isolation of multiple builds tho so separating caches feels obviously correct. (in my own case, I use my distro's packaged chicken for most day-to-day work alongside a prefixed install built from git for messing with chicken itself) the CHICKEN_EGG_CACHE env var still overrides the default cache location unconditionally, which also seems correct even if it allows multiple versions' caches to merge, since the point of env vars is to enforce something system-wide in all cases invariably tested on platform=LINUX |
|||
#1712 | worksforme | Incorporate relevant env vars into build cachebusting, maybe | ||
Description |
For example, if a user changes CSC_OPTIONS and runs chicken-install again, they presumably want things to be rebuilt. Same goes for CHICKEN_REPOSITORY_PATH, etc. But then, there are a bunch of other variables that affect builds as well. Where does it end? It's probably worth considering whether there is a way to consider some environment variables to make caching behaviour more correct, without going totally overboard. For example, we know the set of CHICKEN-defined environment variables that affect builds, that could be where we draw the line. But this needs more thought first. |
|||
#1711 | fixed | ##sys#read with -keyword-style prefix transforms bare colon into empty symbol | ||
Description |
##sys#read recognizes prefix keywords by ignoring the leading colon and suffix keywords by consuming the trailing colon and then dropping it upon confirming it's the last token in an identifier. I added another case that adds the colon back in the prefix case if no tokens follow the main purpose of this is to allow : from chicken.type to be used in prefix mode. presently it is a syntax error also I fix a silly case where multiple colons would be dropped for prefix keywords, matching the suffix behavior where one is semantically meaningful and the rest go on the identifier tested on PLATFORM=linux. code block below shows 5.2.0 behavior with prefix, patched behavior with prefix, and suffix behavior for comparison (which is unchanged between versions) alice@bellona:~/work/misc/typetest % cat src/typetest.scm (define prefix :pre) (define suffix suf:) (define canonical #:can) (define blank :) (define qpre :|qpre|) (define qsuf |qsuf|:) (define qpreblank :||) (define qsufblank ||:) (define triplepre :::tp) (define triplesuf ts:::) (: typesig fixnum) (define typesig 1) alice@bellona:~/work/misc/typetest % ( chicken src/typetest.scm -keyword-style prefix -check-syntax -debug 1 | grep -v '^$' > /dev/tty ) > & /dev/null [source] (define prefix #:pre) (define suffix |suf:|) (define canonical #:can) (define blank ||) (define qpre #:qpre) (define qsuf |qsuf:|) (define qpreblank #:||) (define qsufblank :) (define triplepre #:tp) (define triplesuf |ts:::|) (|| typesig fixnum) (define typesig 1) alice@bellona:~/work/misc/typetest % ( dev-chicken src/typetest.scm -keyword-style prefix -check-syntax -debug 1 | grep -v '^$' > /dev/tty ) > & /dev/null [source] (define prefix #:pre) (define suffix |suf:|) (define canonical #:can) (define blank :) (define qpre #:qpre) (define qsuf |qsuf:|) (define qpreblank #:||) (define qsufblank :) (define triplepre #:|::tp|) (define triplesuf |ts:::|) (: typesig fixnum) (define typesig 1) alice@bellona:~/work/misc/typetest % ( dev-chicken src/typetest.scm -keyword-style suffix -check-syntax -debug 1 | grep -v '^$' > /dev/tty ) > & /dev/null [source] (define prefix |:pre|) (define suffix #:suf) (define canonical #:can) (define blank :) (define qpre |:qpre|) (define qsuf #:qsuf) (define qpreblank :) (define qsufblank #:||) (define triplepre |:::tp|) (define triplesuf #:|ts::|) (: typesig fixnum) (define typesig 1) |