Hi, Andy, Attila and James Thanks all of you pointing out the split-sequence issue.
For the dependency as split-sequence or cl-utilities, I compared the split-sequence code between the two packages, they're completely the same. So, considering split-sequence.lisp is such stable, and: 1) If usocket depends on split-sequence, some one will say it's a too-old and out-of-maintained package 2) If usocket depends on cl-utlities, there're more issues: 2.1) The package is too big and we only use a single function in it 2.2) If cl-utilities was loaded first without the :split-sequence-deprecated feature, it won't create package "split-sequence", and then usocket loaded, the call to SPLIT-SEQUENCE:SPLIT-SEQUENCE will fail. 3) Usocket should depends other package as less as possible Now I added split-sequence.lisp as a "vendor file", it will define the function SPLIT-SEQUENCE in USOCKET package. Committed as r518 on usocket trunk [1], I hope all of you could satisfy with this choice. More opinion is welcome. Andy: For the test results you attached, I'll check it and see what I can do. Regards, Chun Tian (binghe) [1] svn://common-lisp.net/project/usocket/svn/usocket/trunk 在 2010-1-9,08:47, Andy Chambers 写道: > There is a dangling reference to split-sequence but split-sequence > itself is no longer > marked as a dependency in the defsystem spec. This means that usocket cannot > currently be loaded using asdf unless split-sequence has already been loaded > by > some other system. > > The attached patch just replaces calls to > split-sequence:split-sequence with corresponding > calls to cl-utilities:split-sequence. > > Also I think a few of the tests might need to be rewritten. Both > before and after > applying this patch, 6 out of 15 tests fail for me. > > Regards, > Andy Chambers > > (format t "type: ~a version: ~a" > (lisp-implementation-type) > (lisp-implementation-version)) > type: SBCL version: 1.0.18.debian > > (usocket-test:run-usocket-tests) > Doing 15 pending tests of 15 tests total. > USOCKET-TEST::MAKE-SOCKET.1 USOCKET-TEST::MAKE-SOCKET.2 > #<USOCKET:UNSUPPORTED {B075EB9}> > is a USOCKET:UNSUPPORTED. > Its slot values are > (:FEATURE USOCKET::TIMEOUT :CONTEXT USOCKET:SOCKET-CONNECT :MINIMUM NIL). > Test USOCKET-TEST::SOCKET-NO-CONNECT.1 failed > Form: (USOCKET-TEST::WITH-CAUGHT-CONDITIONS ('USOCKET:SOCKET-ERROR NIL) > (USOCKET:SOCKET-CONNECT > "127.0.0.0" > USOCKET-TEST::+UNUSED-LOCAL-PORT+ > :TIMEOUT 0) > T) > Expected value: NIL > Actual value: #<USOCKET:UNSUPPORTED {B075EB9}>. > #<USOCKET:UNSUPPORTED {B20A2B1}> > is a USOCKET:UNSUPPORTED. > Its slot values are > (:FEATURE USOCKET::TIMEOUT :CONTEXT USOCKET:SOCKET-CONNECT :MINIMUM NIL). > Test USOCKET-TEST::SOCKET-NO-CONNECT.2 failed > Form: (USOCKET-TEST::WITH-CAUGHT-CONDITIONS ('USOCKET:SOCKET-ERROR NIL) > (USOCKET:SOCKET-CONNECT > #(127 0 0 0) > USOCKET-TEST::+UNUSED-LOCAL-PORT+ > :TIMEOUT 0) > T) > Expected value: NIL > Actual value: #<USOCKET:UNSUPPORTED {B20A2B1}>. > #<USOCKET:UNSUPPORTED {B3A5D81}> > is a USOCKET:UNSUPPORTED. > Its slot values are > (:FEATURE USOCKET::TIMEOUT :CONTEXT USOCKET:SOCKET-CONNECT :MINIMUM NIL). > Test USOCKET-TEST::SOCKET-NO-CONNECT.3 failed > Form: (USOCKET-TEST::WITH-CAUGHT-CONDITIONS ('USOCKET:SOCKET-ERROR NIL) > (USOCKET:SOCKET-CONNECT > 2130706432 > USOCKET-TEST::+UNUSED-LOCAL-PORT+ > :TIMEOUT 0) > T) > Expected value: NIL > Actual value: #<USOCKET:UNSUPPORTED {B3A5D81}>. > #<USOCKET:UNSUPPORTED {B5461D9}> > is a USOCKET:UNSUPPORTED. > Its slot values are > (:FEATURE USOCKET::TIMEOUT :CONTEXT USOCKET:SOCKET-CONNECT :MINIMUM NIL). > Test USOCKET-TEST::SOCKET-FAILURE.1 failed > Form: (USOCKET-TEST::WITH-CAUGHT-CONDITIONS > ('USOCKET:NETWORK-UNREACHABLE-ERROR NIL) > (USOCKET:SOCKET-CONNECT 2130706432 > USOCKET-TEST::+UNUSED-LOCAL-PORT+ :TIMEOUT > 0) > :UNREACH) > Expected value: NIL > Actual value: #<USOCKET:UNSUPPORTED {B5461D9}>. > #<USOCKET:UNSUPPORTED {B9C8229}> > is a USOCKET:UNSUPPORTED. > Its slot values are > (:FEATURE USOCKET::TIMEOUT :CONTEXT USOCKET:SOCKET-CONNECT :MINIMUM NIL). > Test USOCKET-TEST::SOCKET-FAILURE.2 failed > Form: (USOCKET-TEST::WITH-CAUGHT-CONDITIONS > ('USOCKET:HOST-UNREACHABLE-ERROR NIL) > (USOCKET:SOCKET-CONNECT USOCKET-TEST::+NON-EXISTING-HOST+ 80 > :TIMEOUT 0) > :UNREACH) > Expected value: NIL > Actual value: #<USOCKET:UNSUPPORTED {B9C8229}>. > USOCKET-TEST::SOCKET-CONNECT.1 USOCKET-TEST::SOCKET-CONNECT.2 > USOCKET-TEST::SOCKET-CONNECT.3 USOCKET-TEST::SOCKET-STREAM.1 > USOCKET-TEST::SOCKET-NAME.1 USOCKET-TEST::SOCKET-NAME.2 > USOCKET-TEST::SOCKET-NAME.3 > Test USOCKET-TEST::SOCKET-NAME.4 failed > Form: (USOCKET-TEST::WITH-CAUGHT-CONDITIONS (NIL NIL) > (LET ((USOCKET-TEST::SOCK > (USOCKET:SOCKET-CONNECT > > USOCKET-TEST::+COMMON-LISP-NET+ > 80))) > (UNWIND-PROTECT > (USOCKET:GET-LOCAL-ADDRESS > USOCKET-TEST::SOCK) > (USOCKET:SOCKET-CLOSE > USOCKET-TEST::SOCK)))) > Expected value: #(192 168 1 25) > Actual value: #(192 168 0 3). > 6 out of 15 total tests failed: USOCKET-TEST::SOCKET-NO-CONNECT.1, > USOCKET-TEST::SOCKET-NO-CONNECT.2, USOCKET-TEST::SOCKET-NO-CONNECT.3, > USOCKET-TEST::SOCKET-FAILURE.1, USOCKET-TEST::SOCKET-FAILURE.2, > USOCKET-TEST::SOCKET-NAME.4. > NIL > CL-USER> > > -- > ---- > Andy Chambers > Formedix Ltd > <replace-cl-utilities.patch>_______________________________________________ > usocket-devel mailing list > usocket-devel@common-lisp.net > http://common-lisp.net/cgi-bin/mailman/listinfo/usocket-devel
smime.p7s
Description: S/MIME cryptographic signature
_______________________________________________ usocket-devel mailing list usocket-devel@common-lisp.net http://common-lisp.net/cgi-bin/mailman/listinfo/usocket-devel