Hi Felix, Exciting news! What would it take to get deployment working? In the past, I found it immensely useful to be able to distribute binary, particularly with Windows and Mac OS X users who are not likely to have a compiler installed, or a readily installable Chicken binary distribution. Related to that, would just fetching the sources for an egg and all its dependencies be possible? It was a lot easier to create binary deployments that way.
As for getting rid of install prefixes, I also find it useful to be able to install eggs in a user's home directory, as opposed to in /usr or /usr/local. But if you find it so annoying, should we try to brainstorm of a less confusing scheme for installing in non-standard locations? I think it is sensible to abort the operation if a test in a dependency fails. Is there a replacement of matchable in Chicken 5, if syntax-only extensions are not permitted? On Wed, Feb 22, 2017 at 6:20 AM, <felix.winkelm...@bevuta.com> wrote: > Hello! > > I have now a first prelininary version of the new egg installation tools > for CHICKEN 5 working, and before we go on, I'd like people to review > and reflect on the changes that have been made so far. I also need > some advice regarding a number of issues... > > The branch is "chicken-5-new-egg-install"[1], a preliminary selection > of eggs that have been ported to new the description file format are > available at [2] (thanks to Mario + Kooda, who have provided a bunch > of eggs). Note that this repository is not final, yet. Eggs may be > removed or deprecated or will need considerable changes, should > more disruptive changes be made in CHICKEN 5 (let's hope not...) > > Basic uses of chicken-install/chicken-status/chicken-uninstall should > work. I have tried to document everything [3], please tell me if > important information is missing or something does not match the > current implementation. > > Issues: > > * Source-level depedencies inside eggs can currently not be specified, > but component-level dependencies can, this might be enough. > > * When a test in a depency fails, the installation process still continues, > should the whole operation abort? > > * What should be the default optimizations, or should there be a > default optimization level at all? (this can be given in the .egg file); > the same applies to compiled import libs, where the user can not > override the options. > > * Is an option for not fetching/installing depedencies desirable? > This has been added recently to C4, what is the inention of this, > and how does it work if the dependency is required for building? > > * "chicken-install -init" is currently not implemented. Do we need this? > > * The following options are not implemented: > -keep-installed > -reinstall > -proxy -username -password (use env vars instead) > -init > -deploy > -keep-going > -scan > -csi > -show-depends > -show-foreign-depends > -prefix > > * "-test" implies that all tests are executed, including dependencies; > or should only those tests run that belong to the eggs explicitly given > on the command line? > > * "extension-information" actually retrieves information for a whole egg. > Should this be renamed, or should it extract information for a particular > component? > > * I would REALLY REALLY like to get rid of "-prefix", "chicken-prefix", > CHICKEN_PREFIX, etc. as they cause pain and confusion, but > Mario says that it is important for Salmonella. > > * It has been suggested to sign eggs (or egg hashes). I don't know enough > about this to decide how to proceeed. If such a feature is desired, it > should > be added early (standalone crypto code seems to be available, e.g. > "tweetnacl") > > * Testing on Windows + OS X still has to be done, especially the build/install > script generation for Windows/cmd.exe has never been tested. "chicken-do" > needs to be ported to Windows, as well. > > * The old system allowed for so called "syntax-only" eggs, extensions that > only provide syntax (and thus don't require runtime code to be loaded), > like miscmacros and matchable. This is currently not implemented, and > I'm not sure whether the extra costs are worth the trouble. > > felix > > > > [1] > https://code.call-cc.org/cgi-bin/gitweb.cgi?p=chicken-core.git;a=shortlog;h=refs/heads/chicken-5-new-egg-install > [2] https://code.call-cc.org/cgi-bin/gitweb.cgi?p=chicken-5-eggs.git;a=summary > [3] > https://code.call-cc.org/cgi-bin/gitweb.cgi?p=chicken-core.git;a=blob;f=manual/Extensions;h=38256f9b7a9370d38e63ee5062aaa7b27fa307ba;hb=refs/heads/chicken-5-new-egg-install > > > _______________________________________________ > Chicken-hackers mailing list > Chicken-hackers@nongnu.org > https://lists.nongnu.org/mailman/listinfo/chicken-hackers _______________________________________________ Chicken-hackers mailing list Chicken-hackers@nongnu.org https://lists.nongnu.org/mailman/listinfo/chicken-hackers