In addition, mcclim and all the dependent systems fail on CLISP and Allegro with ASDF3 because .asd file tries to define a method for asdf:traverse generic function.
The method signature is incompatible with the generic function anymore - doesn't have &REST or &KEY.
Best regards, - Anton
Note that these methods on traverse that break the build on asdf3 had been totally ineffective since before asdf 2.000, for my changes to make traverse performance linear rather than cubic in the size of the system were such that these methods would likely never be called.
I can provide a working replacement, but I'm not going to bother unless there's an active committer to commit my patch.
—♯ƒ • François-René ÐVB Rideau •Reflection&Cybernethics• http://fare.tunes.org As far as we know, our computer has never had an undetected error. — Weisert
On Tue, Feb 26, 2013 at 8:54 PM, Anton Vodonosov avodonosov@yandex.ru wrote:
In addition, mcclim and all the dependent systems fail on CLISP and Allegro with ASDF3 because .asd file tries to define a method for asdf:traverse generic function.
The method signature is incompatible with the generic function anymore - doesn't have &REST or &KEY.
Best regards,
- Anton
Here is a patch to mcclim.asd that solves several issues with it. It does *not* solve the issue with warnings; someone who better understands McCLIM needs to address them.
What it does is: * simplify the (require :clx) code for allegro and clisp. The previous traverse methods caused an error on asdf3 because of a signature change, but were broken since asdf2 (years ago), because of a semantic change in traverse (necessary to make its complexity linear rather than cubic in the size of a system). That was a showstopper. Instead, I do things in much simpler ways, that work and are supported.
* remove the braindead perform :around binding *features*, that totally defeated the other perform :after methods that modified it. Instead, don't bind *features*, but just push :mcclim on the features earlier, early enough to compile ESA and Drei with it (and yes, grepping through the code shows it works; the :building-mcclim feature is always redundant with :mcclim; it should just die.)
* all these uses of make-pathname were necessary in ASDF1, but haven't been since ASDF2. I simplified them away.
One of you still has to resolve all the warning issues. Some of them *might* disappear if you merge some of your systems together. Or not.
—♯ƒ • François-René ÐVB Rideau •Reflection&Cybernethics• http://fare.tunes.org La vie n'est pas un restaurant mais un buffet. Levez-vous pour vous servir. Life is not a restaurant but a buffet. Stand up to serve yourself. — Dominique Glocheux
On Tue, Feb 26, 2013 at 9:18 PM, Faré fahree@gmail.com wrote:
Note that these methods on traverse that break the build on asdf3 had been totally ineffective since before asdf 2.000, for my changes to make traverse performance linear rather than cubic in the size of the system were such that these methods would likely never be called.
I can provide a working replacement, but I'm not going to bother unless there's an active committer to commit my patch.
—♯ƒ • François-René ÐVB Rideau •Reflection&Cybernethics• http://fare.tunes.org As far as we know, our computer has never had an undetected error. — Weisert
On Tue, Feb 26, 2013 at 8:54 PM, Anton Vodonosov avodonosov@yandex.ru wrote:
In addition, mcclim and all the dependent systems fail on CLISP and Allegro with ASDF3 because .asd file tries to define a method for asdf:traverse generic function.
The method signature is incompatible with the generic function anymore - doesn't have &REST or &KEY.
Best regards,
- Anton
Works better with the patch attached.
Once again, this only fixes the build on clisp and allegro, and solves a fiasco with *features*, but it doesn't address the many warnings in the build, that some developer should address.
—♯ƒ • François-René ÐVB Rideau •Reflection&Cybernethics• http://fare.tunes.org To have a right to do a thing is not at all the same as to be right in doing it. — G.K. Chesterton
On Wed, Feb 27, 2013 at 3:22 AM, Faré fahree@gmail.com wrote:
Here is a patch to mcclim.asd that solves several issues with it. It does *not* solve the issue with warnings; someone who better understands McCLIM needs to address them.
What it does is:
- simplify the (require :clx) code for allegro and clisp.
The previous traverse methods caused an error on asdf3 because of a signature change, but were broken since asdf2 (years ago), because of a semantic change in traverse (necessary to make its complexity linear rather than cubic in the size of a system). That was a showstopper. Instead, I do things in much simpler ways, that work and are supported.
- remove the braindead perform :around binding *features*,
that totally defeated the other perform :after methods that modified it. Instead, don't bind *features*, but just push :mcclim on the features earlier, early enough to compile ESA and Drei with it (and yes, grepping through the code shows it works; the :building-mcclim feature is always redundant with :mcclim; it should just die.)
- all these uses of make-pathname were necessary in ASDF1,
but haven't been since ASDF2. I simplified them away.
One of you still has to resolve all the warning issues. Some of them *might* disappear if you merge some of your systems together. Or not.
—♯ƒ • François-René ÐVB Rideau •Reflection&Cybernethics• http://fare.tunes.org La vie n'est pas un restaurant mais un buffet. Levez-vous pour vous servir. Life is not a restaurant but a buffet. Stand up to serve yourself. — Dominique Glocheux
On Tue, Feb 26, 2013 at 9:18 PM, Faré fahree@gmail.com wrote:
Note that these methods on traverse that break the build on asdf3 had been totally ineffective since before asdf 2.000, for my changes to make traverse performance linear rather than cubic in the size of the system were such that these methods would likely never be called.
I can provide a working replacement, but I'm not going to bother unless there's an active committer to commit my patch.
—♯ƒ • François-René ÐVB Rideau •Reflection&Cybernethics• http://fare.tunes.org As far as we know, our computer has never had an undetected error. — Weisert
On Tue, Feb 26, 2013 at 8:54 PM, Anton Vodonosov avodonosov@yandex.ru wrote:
In addition, mcclim and all the dependent systems fail on CLISP and Allegro with ASDF3 because .asd file tries to define a method for asdf:traverse generic function.
The method signature is incompatible with the generic function anymore - doesn't have &REST or &KEY.
Best regards,
- Anton