Re: [sage-devel] Re: Patches overwriting patches in singular

2010-06-30 Thread David Kirkby
On 30 June 2010 10:47, Ralf Hemmecke  wrote:
>> So if we added GNU patch, and removed two of the many excess files
>> from Python alone, we would save a few disk space.
>
> Is it actually an issue, how long sage builds? Why build gpatch if mercurial
> is built by default and would do the job? I don't understand you guys.
>
> Ralf

As has been pointed out, Mercurial depends on Python, which has
patches to it. So you have a chicken and egg situation.

The version of Python shipped with Solaris 10 is too old to build Mercurial.

In contrast, GNU patch would be a small low-maintenance package. I
doubt there would ever be a need to update it.

Dave

-- 
To post to this group, send an email to sage-devel@googlegroups.com
To unsubscribe from this group, send an email to 
sage-devel+unsubscr...@googlegroups.com
For more options, visit this group at http://groups.google.com/group/sage-devel
URL: http://www.sagemath.org


Re: [sage-devel] Re: Patches overwriting patches in singular

2010-06-30 Thread David Kirkby
On 30 June 2010 02:16, Tim Daly  wrote:
> We use a naming convention for patches.
> Thus the 3rd new patch created today by me would have the name:
>
> 20100629.03.tpd.patch
>
> which orders the patches by date, sub-sequence, and author.
> You might want to use your spkg name instead as in:
>
> 20100629.03.singular.patch
>
> This would ensure that patches are unique.

Personally, rather than initials, I think it would be better if the
letters were a persons username on the trac server. So patches I
created would have 'drkirkby' in them rather than 'drk'. In some cases
(was, rlm), I suspect trac user names are peoples initials, but that's
not always the case.


dave

-- 
To post to this group, send an email to sage-devel@googlegroups.com
To unsubscribe from this group, send an email to 
sage-devel+unsubscr...@googlegroups.com
For more options, visit this group at http://groups.google.com/group/sage-devel
URL: http://www.sagemath.org


Re: [sage-devel] Re: Patches overwriting patches in singular

2010-06-30 Thread Ralf Hemmecke

So if we added GNU patch, and removed two of the many excess files
from Python alone, we would save a few disk space.


Is it actually an issue, how long sage builds? Why build gpatch if 
mercurial is built by default and would do the job? I don't understand 
you guys.


Ralf

--
To post to this group, send an email to sage-devel@googlegroups.com
To unsubscribe from this group, send an email to 
sage-devel+unsubscr...@googlegroups.com
For more options, visit this group at http://groups.google.com/group/sage-devel
URL: http://www.sagemath.org


Re: [sage-devel] Re: Patches overwriting patches in singular

2010-06-30 Thread David Kirkby
On 30 June 2010 01:38, Mike Hansen  wrote:
> On Tue, Jun 29, 2010 at 5:31 PM, Dr. David Kirkby
>  wrote:
>> I can't myself see what we gain having the diff and the modified version.
>> Even if we stick to using 'cp' (which is a bad idea in my opinion), I would
>> much rather create the diff myself if I want to see it.
>
> The modified version is for copying over.  The diff is stored in the
> repository so that you don't need to go download old versions of
> source code if you want to see what the changes are.
>
>> Experience tells me that if there is a file called 'diff' it is quite likely
>> an old one which someone has not updated. So I personally never trust their
>> contents - I'd just rather create it myself if I need it. Since they can't
>> be trust, I don't believe they serve a useful function myself.
>
> The spkg shouldn't get a positive review if those are not up to date.

To give you one specific example, look at latest (python-2.6.4.p9)
Python .spkg  and you will find the cPickle.c.patch file is 3 months
older than the file it should have been generated from.

-rw-r-   1 drkirkby staff   121K Jan 11 20:40 cPickle.c
-rw-r-   1 drkirkby staff290 Oct  9  2009 cPickle.c.patch

Also worth noting is that the Modules.socketmodule.c file in the
latest python is 133 KB in size.

-rw-r--r--   1 drkirkby staff   133K May 30 22:38 Modules.socketmodule.c

If we removed just those two files from python, that would save us 252
KB of of disk space.

The size of the latest version of GNU patch is 248 KB

http://ftp.gnu.org/gnu/patch/patch-2.6.1.tar.bz2

So if we added GNU patch, and removed two of the many excess files
from Python alone, we would save a few disk space.

Dave

-- 
To post to this group, send an email to sage-devel@googlegroups.com
To unsubscribe from this group, send an email to 
sage-devel+unsubscr...@googlegroups.com
For more options, visit this group at http://groups.google.com/group/sage-devel
URL: http://www.sagemath.org


Re: [sage-devel] Re: Patches overwriting patches in singular

2010-06-30 Thread Ralf Hemmecke

Why would one need an extra 'patch' program?


mercurial is a python program - python needs some patches, see a problem
with using mercurial on its own?


??? Sage uses a patched python? And the python people don't want to fix 
these issues? OK, life is tough.


Anyway, then restrict this copy mechanism to just python and perhaps 
mercurial if you also must patch mercurial. But all the other packages 
should just be using mercurial. Why spread this copy disease all over 
the place?


And as for python, I would have the sources living in a hg repo with the 
patches directly living in a branch. When distributing the spkg, you 
simply distribute the sources of the modified branch. If ever somebody 
wants to have python without the patches (who would want that in the 
context of sage anyway?--one would probably clone the original 
python.org) that would be a simple branch switch, no? So not even here 
is patch or cp really necessary.


Ralf

--
To post to this group, send an email to sage-devel@googlegroups.com
To unsubscribe from this group, send an email to 
sage-devel+unsubscr...@googlegroups.com
For more options, visit this group at http://groups.google.com/group/sage-devel
URL: http://www.sagemath.org


Re: [sage-devel] Re: Patches overwriting patches in singular

2010-06-30 Thread François Bissey
> On 06/30/2010 02:05 AM, Dr. David Kirkby wrote:
> > On 06/30/10 12:54 AM, Tim Daly wrote:
> >> I'm surprised you don't use patch.
> >> Mercurial can generate patches.
> > 
> > That would only be ok at the point Mercurial is built, so might be
> > tricky.
> 
> $SAGE_ROOT/sage/spkg/standard/deps says...
> 
> all: $(INST)/$(SAGE_SCRIPTS) $(INST)/$(SAGE) \
>   $(INST)/$(EXAMPLES) $(INST)/$(GAP) $(INST)/$(SINGULAR)
>  ^^^
>   $(INST)/$(MAXIMA) \
>   $(INST)/$(G2RED) $(INST)/$(LCALC) $(INST)/$(SYMPOW)
> $(INST)/$(MATPLOTLIB) \
>   $(INST)/$(GFAN) $(INST)/$(ECM) $(INST)/$(TACHYON)  \
>   $(INST)/$(GIVARO) $(INST)/$(LINBOX) $(INST)/$(IML) \
>   $(INST)/$(SYMMETRICA) $(INST)/$(POLYBORI) \
>   $(INST)/$(GSL) $(INST)/$(GD) $(INST)/$(GDMODULE) \
>   $(INST)/$(MERCURIAL) $(INST)/$(TWISTED) $(INST)/$(TWISTEDWEB2) \
>   
> 
> What about moving Mercurial some lines up?
> 
> Then for the spkg, the src subdirectory would only contain a subdir
> .hg and nothing else. This would contain all the sources of the
> respective spkg which can then simply be extracted via 'hg update -C'.
> Building this src subdir just means to say
>hg init; hg add .; hg commit -m'singular-7.42.1'
> and remove everything except .hg.
> 
> Now one could, of course use a branch and put the patches already into
> this .hg repo, but if you like to have them separate, put it into a
> patches directory and then use 'hg import'.
> 
> Why would one need an extra 'patch' program?
> 
mercurial is a python program - python needs some patches, see a problem
with using mercurial on its own?

Francois

-- 
To post to this group, send an email to sage-devel@googlegroups.com
To unsubscribe from this group, send an email to 
sage-devel+unsubscr...@googlegroups.com
For more options, visit this group at http://groups.google.com/group/sage-devel
URL: http://www.sagemath.org


Re: [sage-devel] Re: Patches overwriting patches in singular

2010-06-30 Thread Ralf Hemmecke

On 06/30/2010 02:05 AM, Dr. David Kirkby wrote:

On 06/30/10 12:54 AM, Tim Daly wrote:

I'm surprised you don't use patch.
Mercurial can generate patches.


That would only be ok at the point Mercurial is built, so might be tricky.


$SAGE_ROOT/sage/spkg/standard/deps says...

all: $(INST)/$(SAGE_SCRIPTS) $(INST)/$(SAGE) \
 $(INST)/$(EXAMPLES) $(INST)/$(GAP) $(INST)/$(SINGULAR)
^^^
 $(INST)/$(MAXIMA) \
 $(INST)/$(G2RED) $(INST)/$(LCALC) $(INST)/$(SYMPOW) 
$(INST)/$(MATPLOTLIB) \

 $(INST)/$(GFAN) $(INST)/$(ECM) $(INST)/$(TACHYON)  \
 $(INST)/$(GIVARO) $(INST)/$(LINBOX) $(INST)/$(IML) \
 $(INST)/$(SYMMETRICA) $(INST)/$(POLYBORI) \
 $(INST)/$(GSL) $(INST)/$(GD) $(INST)/$(GDMODULE) \
 $(INST)/$(MERCURIAL) $(INST)/$(TWISTED) $(INST)/$(TWISTEDWEB2) \
 

What about moving Mercurial some lines up?

Then for the spkg, the src subdirectory would only contain a subdir
.hg and nothing else. This would contain all the sources of the 
respective spkg which can then simply be extracted via 'hg update -C'.

Building this src subdir just means to say
  hg init; hg add .; hg commit -m'singular-7.42.1'
and remove everything except .hg.

Now one could, of course use a branch and put the patches already into 
this .hg repo, but if you like to have them separate, put it into a 
patches directory and then use 'hg import'.


Why would one need an extra 'patch' program?

Ralf

--
To post to this group, send an email to sage-devel@googlegroups.com
To unsubscribe from this group, send an email to 
sage-devel+unsubscr...@googlegroups.com
For more options, visit this group at http://groups.google.com/group/sage-devel
URL: http://www.sagemath.org


Re: [sage-devel] Re: Patches overwriting patches in singular

2010-06-30 Thread Robert Bradshaw

On Jun 29, 2010, at 5:57 PM, Dr. David Kirkby wrote:


On 06/30/10 01:38 AM, Mike Hansen wrote:

On Tue, Jun 29, 2010 at 5:31 PM, Dr. David Kirkby
  wrote:
I can't myself see what we gain having the diff and the modified  
version.
Even if we stick to using 'cp' (which is a bad idea in my  
opinion), I would

much rather create the diff myself if I want to see it.


The modified version is for copying over.  The diff is stored in the
repository so that you don't need to go download old versions of
source code if you want to see what the changes are.



But if there are two three files

src/foo.c
patches/foo.c
patches/foo.c.diff

what does patches/foo.c.diff possibly give me that could could get  
by running


diff src/foo.c patches/foo.c ?


Having all three files is certainly an issue, as they're unlikely to  
all be kept in sync.


Experience tells me that if there is a file called 'diff' it is  
quite likely
an old one which someone has not updated. So I personally never  
trust their
contents - I'd just rather create it myself if I need it. Since  
they can't

be trust, I don't believe they serve a useful function myself.


The spkg shouldn't get a positive review if those are not up to date.


I don't disbelieve you. But in practice I know that if I want to see  
the difference between two files, I run diff myself.


Personally I believe if we added the small GNU patch utility to  
Sage, it
save more space than it uses. We could over time delete a lot of  
large

files, which have only small changes from original large files.


I personally thing it'd be better to just include patch.

--Mike


Me too. But I think William was quite against using 'patch'.



If a user has gcc, they almost certainly have patch (or, as mentioned,  
we could provide it), so I don't think dependancies are that big of an  
issue. Personally, I would rather have the patch files (as what was  
changed seems to be the most important piece of data here, and we  
don't have issues like we had with the recent pari spkg where the  
copied files weren't updated when the sources were--patches aren't as  
brittle in this way). Also, patch files contain metadata (e.g. what  
files their patching, no matter how deep down the tree, and patch  
programs should ignore the "header" before the patch starts where  
additional useful explanations can be put. Then they could even be  
applied automatically as part of the spkg installing process, rather  
than having to have a list of cp commands.


Is it worth revisiting the issue?

- Robert

--
To post to this group, send an email to sage-devel@googlegroups.com
To unsubscribe from this group, send an email to 
sage-devel+unsubscr...@googlegroups.com
For more options, visit this group at http://groups.google.com/group/sage-devel
URL: http://www.sagemath.org


Re: [sage-devel] Re: Patches overwriting patches in singular

2010-06-29 Thread Tim Daly

We use a naming convention for patches.
Thus the 3rd new patch created today by me would have the name:

20100629.03.tpd.patch

which orders the patches by date, sub-sequence, and author.
You might want to use your spkg name instead as in:

20100629.03.singular.patch

This would ensure that patches are unique.

Mike Hansen wrote:

On Tue, Jun 29, 2010 at 5:57 PM, Dr. David Kirkby
 wrote:
  

But if there are two three files

src/foo.c
patches/foo.c
patches/foo.c.diff

what does patches/foo.c.diff possibly give me that could could get by
running

diff src/foo.c patches/foo.c ?



This requires that patches/foo.c was made from src/foo.c.  This is the
case for the current version, but if you look at a previous version of
patches/foo.c in the repository, you have to go out and get the
corresponding src/foo.c from the internet in order to see what the
change actually was.

--Mike

  


--
To post to this group, send an email to sage-devel@googlegroups.com
To unsubscribe from this group, send an email to 
sage-devel+unsubscr...@googlegroups.com
For more options, visit this group at http://groups.google.com/group/sage-devel
URL: http://www.sagemath.org


Re: [sage-devel] Re: Patches overwriting patches in singular

2010-06-29 Thread Mike Hansen
On Tue, Jun 29, 2010 at 5:57 PM, Dr. David Kirkby
 wrote:
> But if there are two three files
>
> src/foo.c
> patches/foo.c
> patches/foo.c.diff
>
> what does patches/foo.c.diff possibly give me that could could get by
> running
>
> diff src/foo.c patches/foo.c ?

This requires that patches/foo.c was made from src/foo.c.  This is the
case for the current version, but if you look at a previous version of
patches/foo.c in the repository, you have to go out and get the
corresponding src/foo.c from the internet in order to see what the
change actually was.

--Mike

-- 
To post to this group, send an email to sage-devel@googlegroups.com
To unsubscribe from this group, send an email to 
sage-devel+unsubscr...@googlegroups.com
For more options, visit this group at http://groups.google.com/group/sage-devel
URL: http://www.sagemath.org


Re: [sage-devel] Re: Patches overwriting patches in singular

2010-06-29 Thread Dr. David Kirkby

On 06/30/10 01:38 AM, Mike Hansen wrote:

On Tue, Jun 29, 2010 at 5:31 PM, Dr. David Kirkby
  wrote:

I can't myself see what we gain having the diff and the modified version.
Even if we stick to using 'cp' (which is a bad idea in my opinion), I would
much rather create the diff myself if I want to see it.


The modified version is for copying over.  The diff is stored in the
repository so that you don't need to go download old versions of
source code if you want to see what the changes are.



But if there are two three files

src/foo.c
patches/foo.c
patches/foo.c.diff

what does patches/foo.c.diff possibly give me that could could get by running

diff src/foo.c patches/foo.c ?


Experience tells me that if there is a file called 'diff' it is quite likely
an old one which someone has not updated. So I personally never trust their
contents - I'd just rather create it myself if I need it. Since they can't
be trust, I don't believe they serve a useful function myself.


The spkg shouldn't get a positive review if those are not up to date.


I don't disbelieve you. But in practice I know that if I want to see the 
difference between two files, I run diff myself.



Personally I believe if we added the small GNU patch utility to Sage, it
save more space than it uses. We could over time delete a lot of large
files, which have only small changes from original large files.


I personally thing it'd be better to just include patch.

--Mike


Me too. But I think William was quite against using 'patch'.

If he has a change of mind, I don't mind putting together the .spkg file for it. 
It wont sort out the Singular mess just now, but perhaps might stop it becoming 
so messy in the future when it gets upgraded.


Dave

--
To post to this group, send an email to sage-devel@googlegroups.com
To unsubscribe from this group, send an email to 
sage-devel+unsubscr...@googlegroups.com
For more options, visit this group at http://groups.google.com/group/sage-devel
URL: http://www.sagemath.org


Re: [sage-devel] Re: Patches overwriting patches in singular

2010-06-29 Thread Mike Hansen
On Tue, Jun 29, 2010 at 5:31 PM, Dr. David Kirkby
 wrote:
> I can't myself see what we gain having the diff and the modified version.
> Even if we stick to using 'cp' (which is a bad idea in my opinion), I would
> much rather create the diff myself if I want to see it.

The modified version is for copying over.  The diff is stored in the
repository so that you don't need to go download old versions of
source code if you want to see what the changes are.

> Experience tells me that if there is a file called 'diff' it is quite likely
> an old one which someone has not updated. So I personally never trust their
> contents - I'd just rather create it myself if I need it. Since they can't
> be trust, I don't believe they serve a useful function myself.

The spkg shouldn't get a positive review if those are not up to date.

> Personally I believe if we added the small GNU patch utility to Sage, it
> save more space than it uses. We could over time delete a lot of large
> files, which have only small changes from original large files.

I personally thing it'd be better to just include patch.

--Mike

-- 
To post to this group, send an email to sage-devel@googlegroups.com
To unsubscribe from this group, send an email to 
sage-devel+unsubscr...@googlegroups.com
For more options, visit this group at http://groups.google.com/group/sage-devel
URL: http://www.sagemath.org


Re: [sage-devel] Re: Patches overwriting patches in singular

2010-06-29 Thread Dr. David Kirkby

On 06/30/10 01:02 AM, Mike Hansen wrote:

On Tue, Jun 29, 2010 at 4:54 PM, Tim Daly  wrote:

I'm surprised you don't use patch.
Mercurial can generate patches.


The issue is not generating the patches -- it's applying them.  All of
the spkgs (should) have the diff as well as the file with the patch
applied.

--Mike




I can't myself see what we gain having the diff and the modified version. Even 
if we stick to using 'cp' (which is a bad idea in my opinion), I would much 
rather create the diff myself if I want to see it.


Experience tells me that if there is a file called 'diff' it is quite likely an 
old one which someone has not updated. So I personally never trust their 
contents - I'd just rather create it myself if I need it. Since they can't be 
trust, I don't believe they serve a useful function myself.


Personally I believe if we added the small GNU patch utility to Sage, it save 
more space than it uses. We could over time delete a lot of large files, which 
have only small changes from original large files.



Dave

--
To post to this group, send an email to sage-devel@googlegroups.com
To unsubscribe from this group, send an email to 
sage-devel+unsubscr...@googlegroups.com
For more options, visit this group at http://groups.google.com/group/sage-devel
URL: http://www.sagemath.org


Re: [sage-devel] Re: Patches overwriting patches in singular

2010-06-29 Thread Mike Hansen
On Tue, Jun 29, 2010 at 5:25 PM, Tim Daly  wrote:
> Perhaps I'm being thick about this. In Axiom's build
> we have a zip file for GCL source code. At build time
> we unzip the GCL source, THEN apply our patches, THEN
> we do a build.
>
> Why wouldn't this process work in Sage?

This is basically what happens, except instead of using patch to
change the source code in place, the patched file is "pre-computed"
and then just copied over.  This avoids having patch as a requirement
on the machines that Sage is building on.

> Sage requires all of GCC to be installed.
> Surely requiring patch is not a lot more overhead.
> In the worst case, add the source for patch and build
> your own copy early in the build process.

For better or worse, a long time ago it was decided that patch was not
a prerequisite which is why things are the way they are now.

> Sending/posting/trading "diff -Naur" patches is a long
> standing tradition in open source. Sage is the only
> project I've ever heard of that doesn't use them.

They are used in the spkgs and all over http://trac.sagemath.org/

--Mike

-- 
To post to this group, send an email to sage-devel@googlegroups.com
To unsubscribe from this group, send an email to 
sage-devel+unsubscr...@googlegroups.com
For more options, visit this group at http://groups.google.com/group/sage-devel
URL: http://www.sagemath.org


Re: [sage-devel] Re: Patches overwriting patches in singular

2010-06-29 Thread Tim Daly

Perhaps I'm being thick about this. In Axiom's build
we have a zip file for GCL source code. At build time
we unzip the GCL source, THEN apply our patches, THEN
we do a build.

Why wouldn't this process work in Sage?

Sage requires all of GCC to be installed.
Surely requiring patch is not a lot more overhead.
In the worst case, add the source for patch and build
your own copy early in the build process.

Sending/posting/trading "diff -Naur" patches is a long
standing tradition in open source. Sage is the only
project I've ever heard of that doesn't use them.

Mike Hansen wrote:

On Tue, Jun 29, 2010 at 4:54 PM, Tim Daly  wrote:
  

I'm surprised you don't use patch.
Mercurial can generate patches.



The issue is not generating the patches -- it's applying them.  All of
the spkgs (should) have the diff as well as the file with the patch
applied.

--Mike

  


--
To post to this group, send an email to sage-devel@googlegroups.com
To unsubscribe from this group, send an email to 
sage-devel+unsubscr...@googlegroups.com
For more options, visit this group at http://groups.google.com/group/sage-devel
URL: http://www.sagemath.org


Re: [sage-devel] Re: Patches overwriting patches in singular

2010-06-29 Thread Dr. David Kirkby

On 06/30/10 12:20 AM, Nils Bruin wrote:

On Jun 29, 4:13 pm, François Bissey  wrote:

sage doesn't assume that the patch command is installed but rely on cp being
there. That's why patch aren't used.
I agree not ideal but that's a lowest common denominator issue.


Perhaps compare the md5sum of the original and bail if it's not the
expected number? Any time a file changes, the file we replace it with
in the spkg-install should probably change as well. Do our
prerequisites include some checksumming or hashing utility?



I've suggested general idea before, but I would not use md5, since there is no 
standard name for a program to compute the md5 checksum. Sage would have to ship 
its own.


$ md5 foobar.c
$ md5sum foobar.c
$ digest -a md5 foobar.c

would be at least 3 different commands I would try, and still not be sure any 
would work.


In contrast 'cksum', which is defined by POSIX would be on any real Unix system 
and I think most linux systems. That's a 32-bit checksum, so sufficient for this 
sort of task.


But personally I think patch files are better.

Dave

--
To post to this group, send an email to sage-devel@googlegroups.com
To unsubscribe from this group, send an email to 
sage-devel+unsubscr...@googlegroups.com
For more options, visit this group at http://groups.google.com/group/sage-devel
URL: http://www.sagemath.org


Re: [sage-devel] Re: Patches overwriting patches in singular

2010-06-29 Thread Mike Hansen
On Tue, Jun 29, 2010 at 4:54 PM, Tim Daly  wrote:
> I'm surprised you don't use patch.
> Mercurial can generate patches.

The issue is not generating the patches -- it's applying them.  All of
the spkgs (should) have the diff as well as the file with the patch
applied.

--Mike

-- 
To post to this group, send an email to sage-devel@googlegroups.com
To unsubscribe from this group, send an email to 
sage-devel+unsubscr...@googlegroups.com
For more options, visit this group at http://groups.google.com/group/sage-devel
URL: http://www.sagemath.org


Re: [sage-devel] Re: Patches overwriting patches in singular

2010-06-29 Thread Dr. David Kirkby

On 06/30/10 12:39 AM, François Bissey wrote:

On Jun 29, 4:13 pm, François Bissey  wrote:

sage doesn't assume that the patch command is installed but rely on cp
being there. That's why patch aren't used.
I agree not ideal but that's a lowest common denominator issue.


Perhaps compare the md5sum of the original and bail if it's not the
expected number? Any time a file changes, the file we replace it with
in the spkg-install should probably change as well. Do our
prerequisites include some checksumming or hashing utility?



that's an interesting idea. On the linux side usually distro do checksums
on packages so it has to be a part of the base system if you want to update.
It's probably the case on most other platform in one way or another.



That wouldn't have taken care of Dave's original problem in any case,
which was double copying the same file. Which I stupidly parroted in Gentoo.


Well, both people had computed a checksum of the original file, and only 
overwrite that original checksum, the second apply would have failed, since the 
file would already have been modified.


I would not worry about the fact you have boobed in Gentoo. The first patch 
added a SunOS-x86 target. The second patch obliterated that Solaris one, so it 
will be no loss to you in Gentoo.



Francois


--
To post to this group, send an email to sage-devel@googlegroups.com
To unsubscribe from this group, send an email to 
sage-devel+unsubscr...@googlegroups.com
For more options, visit this group at http://groups.google.com/group/sage-devel
URL: http://www.sagemath.org


Re: [sage-devel] Re: Patches overwriting patches in singular

2010-06-29 Thread Dr. David Kirkby

On 06/30/10 12:54 AM, Tim Daly wrote:

I'm surprised you don't use patch.
Mercurial can generate patches.


That would only be ok at the point Mercurial is built, so might be tricky.

GNU patch is only 200 kB of source code. If we added 200 KB and removed all the 
duplicate files (leaving only patches), we would end up saving a lot of disk space!


A week or so ago I made a couple of minor changes in a large python file. Those 
few bytes probably added more than 200 KB


--
To post to this group, send an email to sage-devel@googlegroups.com
To unsubscribe from this group, send an email to 
sage-devel+unsubscr...@googlegroups.com
For more options, visit this group at http://groups.google.com/group/sage-devel
URL: http://www.sagemath.org


Re: [sage-devel] Re: Patches overwriting patches in singular

2010-06-29 Thread Tim Daly

I'm surprised you don't use patch.
Mercurial can generate patches.

François Bissey wrote:

On Jun 29, 4:13 pm, François Bissey  wrote:


sage doesn't assume that the patch command is installed but rely on cp
being there. That's why patch aren't used.
I agree not ideal but that's a lowest common denominator issue.
  

Perhaps compare the md5sum of the original and bail if it's not the
expected number? Any time a file changes, the file we replace it with
in the spkg-install should probably change as well. Do our
prerequisites include some checksumming or hashing utility?

that's an interesting idea. On the linux side usually distro do checksums 
on packages so it has to be a part of the base system if you want to update.

It's probably the case on most other platform in one way or another.
That wouldn't have taken care of Dave's original problem in any case,
which was double copying the same file. Which I stupidly parroted in Gentoo.

Francois

  


--
To post to this group, send an email to sage-devel@googlegroups.com
To unsubscribe from this group, send an email to 
sage-devel+unsubscr...@googlegroups.com
For more options, visit this group at http://groups.google.com/group/sage-devel
URL: http://www.sagemath.org


Re: [sage-devel] Re: Patches overwriting patches in singular

2010-06-29 Thread François Bissey
> On Jun 29, 4:13 pm, François Bissey  wrote:
> > sage doesn't assume that the patch command is installed but rely on cp
> > being there. That's why patch aren't used.
> > I agree not ideal but that's a lowest common denominator issue.
> 
> Perhaps compare the md5sum of the original and bail if it's not the
> expected number? Any time a file changes, the file we replace it with
> in the spkg-install should probably change as well. Do our
> prerequisites include some checksumming or hashing utility?
that's an interesting idea. On the linux side usually distro do checksums 
on packages so it has to be a part of the base system if you want to update.
It's probably the case on most other platform in one way or another.
That wouldn't have taken care of Dave's original problem in any case,
which was double copying the same file. Which I stupidly parroted in Gentoo.

Francois

-- 
To post to this group, send an email to sage-devel@googlegroups.com
To unsubscribe from this group, send an email to 
sage-devel+unsubscr...@googlegroups.com
For more options, visit this group at http://groups.google.com/group/sage-devel
URL: http://www.sagemath.org


[sage-devel] Re: Patches overwriting patches in singular

2010-06-29 Thread Nils Bruin
On Jun 29, 4:13 pm, François Bissey  wrote:
> sage doesn't assume that the patch command is installed but rely on cp being
> there. That's why patch aren't used.
> I agree not ideal but that's a lowest common denominator issue.

Perhaps compare the md5sum of the original and bail if it's not the
expected number? Any time a file changes, the file we replace it with
in the spkg-install should probably change as well. Do our
prerequisites include some checksumming or hashing utility?

-- 
To post to this group, send an email to sage-devel@googlegroups.com
To unsubscribe from this group, send an email to 
sage-devel+unsubscr...@googlegroups.com
For more options, visit this group at http://groups.google.com/group/sage-devel
URL: http://www.sagemath.org