Pascal J. Bourguignon | 1 Dec 2010 05:07
Face
Favicon

Re: Conformity and convenience problems with pathnames

Juan Jose Garcia-Ripoll
<juanjose.garciaripoll@...> writes:

> On Sat, Nov 27, 2010 at 2:19 AM, Juan Jose Garcia-Ripoll
<juanjose.garciaripoll@...> wrote:
>
>     [Cc. of what I sent to the comp.lang.lisp with patches attached]
>    
>     On Nov 21, 4:18 am, p...@... (Pascal J.
Bourguignon) wrote:
>     > ftp://ftp.informatimago.com/users/pjb/lisp/check-pathnames.lisp
>     > (tests specific to MS-Windows physical paths would need to be added).
>    
>     I have been working on this file and verifying whether ECL conforms to its expectations. [...]
>     Given that you agree on this and change the script accordingly, with the patches I will be pushing up to
ECL's CVS repository soon, then this implementation should conform to
>     your expectations. See here:
>
> Handling of pathname case is now complete.
>
> * For logical pathnames, :LOCAL means UPCASE
> * For physical pathnames or pathnames without a case :LOCAL means PREFERRED DOWNCASE.
> * Pathname constructors take the argument :CASE to be the case of the input values and translate them to the
case of the final pathname.
> * Pathnames always keep their values in the local case.
> * Pathname readers (pathname-{directory,name,type,host,device}), interpret the :CASE argument to
be the case of the output, which may be :COMMON or :LOCAL (i.e. the local case OF THE
> PATHNAME).

On my gentoo x86_64 system, I fail to compile current git ecl:
(Continue reading)

Juan Jose Garcia-Ripoll | 8 Dec 2010 11:29

Project status

I am spending a lot of time in the automated tests right now. Back to the use of virtualbox, I had to work hard on optimizing it to avoid having 6 virtual machines running all the time. Now it seems VirtualBox has become very reliable and it is possible to launch and poweroff virtual images just for running a single ECL build, what makes it possible to keep the whole process in a smaller computer. In addition to this I got temporary access to a cluster running on PPC, and on Itanium, but these become quite frequently off-line (they are very unreliable), a failure condition which again I managed to include in the tests.


The status:

* Two typos have been fixed which only affected the 32-bit tests and particular compilers.
* About 10 new errors popped up in the pretty printer, and I am working on them. I suspect they are due to some patches I accepted recently.
* The addition of the PPC/32bit platform showed that there are still some issues with floating point signals. I suspect we will have to drop all use of feenableexcept() and rely on fenv.h where available.
* Again for the PPC, there are some problems with floating point accuracy, and I still do not know whether they are related to the C library, the compiler or to ECL.

The goal:

* Restore automated tests of Axiom, Maxima, and some libraries.
* Fix those fixes, and no more.
* Produce a release before the end of the month.

Best

Juanjo

--
Instituto de Física Fundamental, CSIC
c/ Serrano, 113b, Madrid 28006 (Spain)
http://juanjose.garciaripoll.googlepages.com
------------------------------------------------------------------------------
What happens now with your Lotus Notes apps - do you make another costly 
upgrade, or settle for being marooned without product support? Time to move
off Lotus Notes and onto the cloud with Force.com, apps are easier to build,
use, and manage than apps on traditional platforms. Sign up for the Lotus 
Notes Migration Kit to learn more. http://p.sf.net/sfu/salesforce-d2d
_______________________________________________
Ecls-list mailing list
Ecls-list@...
https://lists.sourceforge.net/lists/listinfo/ecls-list
David Kirkby | 8 Dec 2010 14:35

Re: Project status

If you want to add an OpenSolaris 06/2009 machine to your buildbot, I
can do it. This is a  real 3.33 GHz machine, not a virtual one. It's
currently used as a buildbot client for Sage, but you are welcome to
use it too. Just let me know a username - anything except "buildbot",
as that's in use.

t2.math is now working ok now - the setup has changed a bit, but its
now working.

For 64-bit Solaris builds, it would be good if you can verify if
libecl has any text relocation issues. The easiest way to do that is
using "elfdump"

Dave

On 8 December 2010 10:29, Juan Jose Garcia-Ripoll
<juanjose.garciaripoll@...> wrote:
> I am spending a lot of time in the automated tests right now. Back to the
> use of virtualbox, I had to work hard on optimizing it to avoid having 6
> virtual machines running all the time. Now it seems VirtualBox has become
> very reliable and it is possible to launch and poweroff virtual images just
> for running a single ECL build, what makes it possible to keep the whole
> process in a smaller computer. In addition to this I got temporary access to
> a cluster running on PPC, and on Itanium, but these become quite frequently
> off-line (they are very unreliable), a failure condition which again I
> managed to include in the tests.
> The status:
> * Two typos have been fixed which only affected the 32-bit tests and
> particular compilers.
> * About 10 new errors popped up in the pretty printer, and I am working on
> them. I suspect they are due to some patches I accepted recently.
> * The addition of the PPC/32bit platform showed that there are still some
> issues with floating point signals. I suspect we will have to drop all use
> of feenableexcept() and rely on fenv.h where available.
> * Again for the PPC, there are some problems with floating point accuracy,
> and I still do not know whether they are related to the C library, the
> compiler or to ECL.
> The goal:
> * Restore automated tests of Axiom, Maxima, and some libraries.
> * Fix those fixes, and no more.
> * Produce a release before the end of the month.
> Best
> Juanjo
> --
> Instituto de FĂ­sica Fundamental, CSIC
> c/ Serrano, 113b, Madrid 28006 (Spain)
> http://juanjose.garciaripoll.googlepages.com
>
> ------------------------------------------------------------------------------
> What happens now with your Lotus Notes apps - do you make another costly
> upgrade, or settle for being marooned without product support? Time to move
> off Lotus Notes and onto the cloud with Force.com, apps are easier to build,
> use, and manage than apps on traditional platforms. Sign up for the Lotus
> Notes Migration Kit to learn more. http://p.sf.net/sfu/salesforce-d2d
> _______________________________________________
> Ecls-list mailing list
> Ecls-list@...
> https://lists.sourceforge.net/lists/listinfo/ecls-list
>
>

------------------------------------------------------------------------------
What happens now with your Lotus Notes apps - do you make another costly 
upgrade, or settle for being marooned without product support? Time to move
off Lotus Notes and onto the cloud with Force.com, apps are easier to build,
use, and manage than apps on traditional platforms. Sign up for the Lotus 
Notes Migration Kit to learn more. http://p.sf.net/sfu/salesforce-d2d
Juan Jose Garcia-Ripoll | 8 Dec 2010 19:54

Re: Project status

On Wed, Dec 8, 2010 at 2:35 PM, David Kirkby <david.kirkby <at> onetel.net> wrote:
If you want to add an OpenSolaris 06/2009 machine to your buildbot, I
can do it. This is a  real 3.33 GHz machine, not a virtual one. It's
currently used as a buildbot client for Sage, but you are welcome to
use it too. Just let me know a username - anything except "buildbot",
as that's in use.

Hi David, that would be really nice, as my opensolaris setup does not work well -- the computer does not support this virtualbox very nicely -- and I have not managed to squeeze it into smaller image (how does one make it a text-only environment, without the bloat of the gnome environment?)

For the account name you may use "jjgarcia", and make the account as restricted as you need: I only need the compiler (gcc or sun, you choose), a debugger and perhaps emacs, in case I must develop in-place.

One thing I need is that this machine be accessible from "sage". Our computers are firewalled and can only "dial" to a fixed set of addresses. I managed to add "sage", but would have a hard time convincing the sysops to add more.

t2.math is now working ok now - the setup has changed a bit, but its
now working.

Yes, I saw that it builds fine but there are again problems with floating point exceptions.
 
For 64-bit Solaris builds, it would be good if you can verify if
libecl has any text relocation issues. The easiest way to do that is
using "elfdump"

I will try to add this as a regression test.

Juanjo

--
Instituto de Física Fundamental, CSIC
c/ Serrano, 113b, Madrid 28006 (Spain)
http://juanjose.garciaripoll.googlepages.com
------------------------------------------------------------------------------
This SF Dev2Dev email is sponsored by:

WikiLeaks The End of the Free Internet
http://p.sf.net/sfu/therealnews-com
_______________________________________________
Ecls-list mailing list
Ecls-list@...
https://lists.sourceforge.net/lists/listinfo/ecls-list
Matthew Mondor | 10 Dec 2010 05:05

Re: CVS HEAD: cos.d build failure

After the future release announcement, I decided to check again the
state of things, and it seems that ECL compile error no longer occurs.

I however get a slime build failure after deleting the slime objects
directory, but cannot take the time to upgrade slime and re-test
tonight; I should report with more information during the next week.

Thanks,
--

-- 
Matt

------------------------------------------------------------------------------
Juan Jose Garcia-Ripoll | 10 Dec 2010 08:33

Re: CVS HEAD: cos.d build failure

On Fri, Dec 10, 2010 at 5:05 AM, Matthew Mondor <mm_lists-xHKImXiT534xnpGSZB1jBA@public.gmane.org> wrote:

After the future release announcement, I decided to check again the
state of things, and it seems that ECL compile error no longer occurs.

Support for platforms with incomplete or inexistent fenv.h headers had gone a bit stale. I fixed that and that solved the problem with cos.d (and all other files related to numerics).
 
I however get a slime build failure after deleting the slime objects
directory, but cannot take the time to upgrade slime and re-test
tonight; I should report with more information during the next week.

That would be very much appreciated.

Juanjo

--
Instituto de Física Fundamental, CSIC
c/ Serrano, 113b, Madrid 28006 (Spain)
http://juanjose.garciaripoll.googlepages.com
------------------------------------------------------------------------------
_______________________________________________
Ecls-list mailing list
Ecls-list@...
https://lists.sourceforge.net/lists/listinfo/ecls-list
Matthew Mondor | 11 Dec 2010 20:55

Re: Slime build failure (Was: Project status)

I didn't take time to try with a more recent version of slime yet,
although I've used that tree for a while successfully with various
previous ECL builds.  This is using today's ECL CVS HEAD.

What I get is the following:

[...]
;;; Note:
;;;   Invoking external command:
;;;   gcc -I. "-I/usr/local/ecl/include/"   -march=i686 -O2 -g -fPIC -march=i686 -O2 -g -fPIC  -Dnetbsd -O2
-w -c "/home/mmondor/.slime/fasl/2010-04-15/ecl-10.7.1-unknown-pentium4/swank-backend.c" -o "/home/mmondor/.slime/fasl/2010-04-15/ecl-10.7.1-unknown-pentium4/swank-backend.o"
;;; 
;;; Note:
;;;   Invoking external command:
;;;   gcc -o
"/home/mmondor/.slime/fasl/2010-04-15/ecl-10.7.1-unknown-pentium4/swank-backend.fas"
-L"/usr/local/ecl/lib/"
"/home/mmondor/.slime/fasl/2010-04-15/ecl-10.7.1-unknown-pentium4/swank-backend.o" 
"-Wl,--rpath,/usr/local/ecl/lib/" -shared -g -g -lecl  -lpthread   -lm 
;;; 
;; 
;; Error while compiling /home/mmondor/emacs-scripts/slime/swank-backend.lisp:
;;   Error in format: No more arguments.
;;   Directory component ~S found in pathname~&  ~S~&is not allowed in TRUENAME or DIRECTORY
;;                                                ^
;; while processing indirect format string:
;;   ~?
;;    ^
;; while processing indirect format string:
;;   ~&~ <at> <  ** ~;~?~;~: <at> >
;;                ^
;; Aborting.
;; ;;; Internal error:
;;;   ** Directory component "ecl-10.7.1-unknown-pentium4" found in pathname

Restart ABORT is not active.
Available restarts:

1. (RESTART-TOPLEVEL) Go back to Top-Level REPL.

Broken at SWANK-LOADER::HANDLE-SWANK-LOAD-ERROR. In: #<process TOP-LEVEL>.
 File: #P"/home/mmondor/emacs-scripts/slime/swank-loader.lisp" (Position #5519)
>> 

Although:

behemoth$ ls -l ~/.slime/fasl/2010-04-15/ecl-10.7.1-unknown-pentium4/
total 1
-rw-r-----  1 mmondor  users  220988 Dec 11 14:03 swank-backend.c
-rw-r-----  1 mmondor  users   17945 Dec 11 14:03 swank-backend.data
-rwxr-x---  1 mmondor  users  279467 Dec 11 14:03 swank-backend.fas
-rw-r-----  1 mmondor  users   73507 Dec 11 14:03 swank-backend.h
-rw-r-----  1 mmondor  users  340960 Dec 11 14:03 swank-backend.o
behemoth$ 

Also, I have no problem with my own software using compile-file and
load.
I'll also try with an up to date slime when I have more time, but I
wanted to post this in case the origin of the problem seems obvious to
others.

Thanks,
--

-- 
Matt

------------------------------------------------------------------------------
Oracle to DB2 Conversion Guide: Learn learn about native support for PL/SQL,
new data types, scalar functions, improved concurrency, built-in packages, 
OCI, SQL*Plus, data movement tools, best practices and more.
http://p.sf.net/sfu/oracle-sfdev2dev 
Matthew Mondor | 12 Dec 2010 05:23

Re: Slime build failure (Was: Project status)

On Sat, 11 Dec 2010 14:55:21 -0500
Matthew Mondor <mm_lists@...> wrote:

> I'll also try with an up to date slime when I have more time, but I
> wanted to post this in case the origin of the problem seems obvious to
> others.

It also happens with today's SLIME CVS HEAD and an empty ~/.eclrc
--

-- 
Matt

------------------------------------------------------------------------------
Oracle to DB2 Conversion Guide: Learn learn about native support for PL/SQL,
new data types, scalar functions, improved concurrency, built-in packages, 
OCI, SQL*Plus, data movement tools, best practices and more.
http://p.sf.net/sfu/oracle-sfdev2dev 
Juan Jose Garcia-Ripoll | 12 Dec 2010 20:09

Re: Slime build failure (Was: Project status)

On Sun, Dec 12, 2010 at 5:23 AM, Matthew Mondor <mm_lists <at> pulsar-zone.net> wrote:
On Sat, 11 Dec 2010 14:55:21 -0500
Matthew Mondor <mm_lists <at> pulsar-zone.net> wrote:

> I'll also try with an up to date slime when I have more time, but I
> wanted to post this in case the origin of the problem seems obvious to
> others.

It also happens with today's SLIME CVS HEAD and an empty ~/.eclrc

I identified the problem and fixed it. Slime is building pathnames with components of type (array character (*)) while the operating system (or at least the ECL routines) only accept (array base-char (*)). I have added a filter that coerces all strings in pathnames to the second type if possible. If it is not possible, then those filenames are using characters beyond the 256 lowest Unicode codepoints, which is not accepted by ECL.

Juanjo

--
Instituto de Física Fundamental, CSIC
c/ Serrano, 113b, Madrid 28006 (Spain)
http://juanjose.garciaripoll.googlepages.com
------------------------------------------------------------------------------
Oracle to DB2 Conversion Guide: Learn learn about native support for PL/SQL,
new data types, scalar functions, improved concurrency, built-in packages, 
OCI, SQL*Plus, data movement tools, best practices and more.
http://p.sf.net/sfu/oracle-sfdev2dev 
_______________________________________________
Ecls-list mailing list
Ecls-list@...
https://lists.sourceforge.net/lists/listinfo/ecls-list
Matthew Mondor | 12 Dec 2010 21:40

Re: Slime build failure (Was: Project status)

On Sun, 12 Dec 2010 20:09:13 +0100
Juan Jose Garcia-Ripoll <juanjose.garciaripoll@...> wrote:

> I identified the problem and fixed it. Slime is building pathnames with
> components of type (array character (*)) while the operating system (or at
> least the ECL routines) only accept (array base-char (*)). I have added a
> filter that coerces all strings in pathnames to the second type if possible.
> If it is not possible, then those filenames are using characters beyond the
> 256 lowest Unicode codepoints, which is not accepted by ECL.

I could indeed see the ECL_BASE_STRING_P() check in enter_directory()
but had no idea how come that case wasn't problematic before or with
other software.

After your fix, I could test current ECL with current SLIME and confirm
they work great together again :)

Thanks again,
--

-- 
Matt

------------------------------------------------------------------------------
Oracle to DB2 Conversion Guide: Learn learn about native support for PL/SQL,
new data types, scalar functions, improved concurrency, built-in packages, 
OCI, SQL*Plus, data movement tools, best practices and more.
http://p.sf.net/sfu/oracle-sfdev2dev 

Gmane