Hi Jörg, On 17 Aug 2018 12:33:28 +0200 Jörg F. Wittenberger <joerg.wittenber...@softeyes.net> wrote:
> I just ported a first egg. (Pigeon-hole, "simple" mailbox with > capacity constraint flow control and no timeouts.) > > * Question: what's about the .release-info > > This https://wiki.call-cc.org/porting-c4-to-c5 was helpful, but does > not mention the release process. > > How would I mark a release for C5? Basically, you need a .release-info file that points to the tarball of your egg for CHICKEN 5. Regarding tagging on the same repo, I don't know exactly what apporach people are using. In svn, as eggs for CHICKEN 4 and 5 are in diferent directories, and there are directories for tags, the versioning scheme for eggs for CHICKEN 4 and 5 are completely independent. > Any thought on how to have both a C4 and C5 version in the same repo? > I'll have to support C4 for quite a while. Now I wonder how best > reorganize the code to work for both. I'm maintaining all my eggs in the same repo, same branch, same .release-info file and same versioning scheme for both CHICKEN 4 and 5. In my experience, that's not difficult. I don't intend to maintain multiple repositories/branches for each egg, and I don't intend to phase out my aggs for CHICKEN 4 anytime soon. In theory, to make your eggs work with both CHICKEN 4 and 5, you just need an extra .egg file and some `cond-expand' here and there. In the extreme case where large portions of your code are CHICKEN version-specific, you can use `cond-expand' to `include' files that are specific to some particular CHICKEN version. I intend to resort to the `include' trick for salmonella, for example (a significant part of salmonella for CHICKEN 4 is not compatible with CHICKEN 5, and vice-versa). > * Observation: chicken-install does not install dependencies > > This is just odd: The .egg file contains (dependencies srfi-18); > chicken-install did the download but not install it. So compilation > failed until I manually did > > chicken-install srfi-18 That's weird. We don't observe this behavior on any of the automated tests (http://tests.call-cc.org). > * chicken-install -n -test > > Fails. One needs to actually install first, then run the test. > > Better at least warn that we test the installed version, not the > current one. (I recall this bite me before.) > > Best: just load the version from the working directory. I think this pretty much depends on how tests are implemented. If they import things assuming that the eggs are installed, you have to install them before running tests. Or you can hack your tests to load/import the code from the source directory. > Thanks for all the work which went into C5. All the best. Mario -- http://parenteses.org/mario _______________________________________________ Chicken-users mailing list Chicken-users@nongnu.org https://lists.nongnu.org/mailman/listinfo/chicken-users