Re: [racket-dev] Release for v6.0 has begun

2013-11-26 Thread Eli Barzilay
Yesterday, Matthew Flatt wrote:
 At Mon, 25 Nov 2013 09:56:45 -0500, Ryan Culpepper wrote:
  On 11/25/2013 09:44 AM, Matthew Flatt wrote:
   Here's the full comment:
  
   The version string has one of the forms:
  X.Y
  X.Y.Z Z != 0
  X.Y.Z.W   W != 0
   where each X, Y, Z, W is a non-negative exact integer, Y must not
   exceed 99, and Z or W must not exceed 999.  Y=90 means that this is
   working towards {X+1}.0, and X.Y (Z=0, W=0) is an alpha version for
   {X+1}.0; Z=900 means working towards X.{Y+1}, and X.Y.Z as an
   alpha release.
  
   Then intent is that when Z and W are 0, the string form of the version
   number is just X.Y, not X.Y.Z.W.
  
   How about this clarification?
  
 ... and X.Y (i.e., Z=0 and W=0, so Z and W are
   omitted from the string form) ...
  
  That's not the part that needs clarifying. I think that fact that the 
  string form drops final zeros is clear from lines 2-4.
  
  The part that needs clarifying is how to choose the version number for 
  the alpha releases leading up to version {X+1}.0. (Really, how to choose 
  alpha version numbers in general, since I've had similar problems in the 
  past.) From this statement, X.Y (Z=0, W=0) is an alpha version for 
  {X+1}.0 (Y=90 already stated), I would expect that 5.91 would be a 
  fine alpha version number for 6.0. Is it? If not, what should the alpha 
  version number be?
 
 I agree that 5.91 is the right alpha-version string, assuming that
 it's intended as an alpha in the sense of our release rules (as
 opposed to a release candidate, which has a non-zero W).

These two things were originally independent: the ability to specify
alpha-ness (the second .91) and release-ness (W=0), and that was used
by the old build script to make some decisions for what the installers
do.  Assuming that this still matters, there is a problem with using
5.91 for the release process -- and instead it should be 5.91.0.1
to make it treated as a nightly build.  For example, on Windows the
installer for a 5.91.0.1 wouldn't grab the suffix registration, but
5.91 would which makes it bad as something that you ask people to
try.

BTW, this is not the same meaning of alpha that is used in the
release checklist -- that one has the meaning of a release
candidate.

-- 
  ((lambda (x) (x x)) (lambda (x) (x x)))  Eli Barzilay:
http://barzilay.org/   Maze is Life!
_
  Racket Developers list:
  http://lists.racket-lang.org/dev


Re: [racket-dev] Release for v6.0 has begun

2013-11-26 Thread Robby Findler
So, IIUC, Ryan should have used

  5.91.0.1

as the version number on the release branch?

Robby



On Tue, Nov 26, 2013 at 2:38 PM, Eli Barzilay e...@barzilay.org wrote:

 Yesterday, Matthew Flatt wrote:
  At Mon, 25 Nov 2013 09:56:45 -0500, Ryan Culpepper wrote:
   On 11/25/2013 09:44 AM, Matthew Flatt wrote:
Here's the full comment:
   
The version string has one of the forms:
   X.Y
   X.Y.Z Z != 0
   X.Y.Z.W   W != 0
where each X, Y, Z, W is a non-negative exact integer, Y must not
exceed 99, and Z or W must not exceed 999.  Y=90 means that
 this is
working towards {X+1}.0, and X.Y (Z=0, W=0) is an alpha version
 for
{X+1}.0; Z=900 means working towards X.{Y+1}, and X.Y.Z as an
alpha release.
   
Then intent is that when Z and W are 0, the string form of the
 version
number is just X.Y, not X.Y.Z.W.
   
How about this clarification?
   
  ... and X.Y (i.e., Z=0 and W=0, so Z and W are
omitted from the string form) ...
  
   That's not the part that needs clarifying. I think that fact that the
   string form drops final zeros is clear from lines 2-4.
  
   The part that needs clarifying is how to choose the version number for
   the alpha releases leading up to version {X+1}.0. (Really, how to
 choose
   alpha version numbers in general, since I've had similar problems in
 the
   past.) From this statement, X.Y (Z=0, W=0) is an alpha version for
   {X+1}.0 (Y=90 already stated), I would expect that 5.91 would be a
   fine alpha version number for 6.0. Is it? If not, what should the alpha
   version number be?
 
  I agree that 5.91 is the right alpha-version string, assuming that
  it's intended as an alpha in the sense of our release rules (as
  opposed to a release candidate, which has a non-zero W).

 These two things were originally independent: the ability to specify
 alpha-ness (the second .91) and release-ness (W=0), and that was used
 by the old build script to make some decisions for what the installers
 do.  Assuming that this still matters, there is a problem with using
 5.91 for the release process -- and instead it should be 5.91.0.1
 to make it treated as a nightly build.  For example, on Windows the
 installer for a 5.91.0.1 wouldn't grab the suffix registration, but
 5.91 would which makes it bad as something that you ask people to
 try.

 BTW, this is not the same meaning of alpha that is used in the
 release checklist -- that one has the meaning of a release
 candidate.

 --
   ((lambda (x) (x x)) (lambda (x) (x x)))  Eli Barzilay:
 http://barzilay.org/   Maze is Life!
 _
   Racket Developers list:
   http://lists.racket-lang.org/dev

_
  Racket Developers list:
  http://lists.racket-lang.org/dev


Re: [racket-dev] Release for v6.0 has begun

2013-11-26 Thread Eli Barzilay
Just now, Robby Findler wrote:
 So, IIUC, Ryan should have used 
 
   5.91.0.1
 
 as the version number on the release branch?

Yes.


(Part of this is probably the result of the poor estimate that the
Emacs code does for creating the checklist template -- mostly because
I originally intended that to be just a recommendation, not a
determination.)

-- 
  ((lambda (x) (x x)) (lambda (x) (x x)))  Eli Barzilay:
http://barzilay.org/   Maze is Life!

_
  Racket Developers list:
  http://lists.racket-lang.org/dev


Re: [racket-dev] Release for v6.0 has begun

2013-11-25 Thread Matthew Flatt
Here's the full comment:

   The version string has one of the forms:
  X.Y
  X.Y.Z Z != 0
  X.Y.Z.W   W != 0
   where each X, Y, Z, W is a non-negative exact integer, Y must not
   exceed 99, and Z or W must not exceed 999.  Y=90 means that this is
   working towards {X+1}.0, and X.Y (Z=0, W=0) is an alpha version for
   {X+1}.0; Z=900 means working towards X.{Y+1}, and X.Y.Z as an
   alpha release.

Then intent is that when Z and W are 0, the string form of the version
number is just X.Y, not X.Y.Z.W.

How about this clarification?

 ... and X.Y (i.e., Z=0 and W=0, so Z and W are
   omitted from the string form) ...

At Mon, 25 Nov 2013 09:35:02 -0500, Ryan Culpepper wrote:
 I was going by the comment at the top of 
 /racket/src/racket/src/schvers.h, which says
 
X.Y.Z.W
...
Y=90 means that this is working towards {X+1}.0,
and X.Y (Z=0, W=0) is an alpha version for {X+1}.0
 
 I can change the version number, but if it's causing problems, let's 
 figure out the rules that we want and change the comments too.
 
 Ryan
 
 
 On 11/23/2013 10:03 AM, Robby Findler wrote:
  My reading of the code suggests the first problem is that the version
  number should have been 5.91.0.1 not 5.91.0.0 but I can't recall what we
  usually do to know if that's right or not. It looks like the code was
  last changed in 2008 so I guess the version number is what's wrong.
 
  The second problem is that the nightly build site has been down for a
  long time. Probably Matthew and I should switch our snapshot builds over
  to using the release branch instead of git head.
 
  Robby
 
  On Sat, Nov 23, 2013 at 8:33 AM, Michael Sperber
  sper...@deinprogramm.de mailto:sper...@deinprogramm.de wrote:
   
   
Ryan Culpepper ry...@ccs.neu.edu mailto:ry...@ccs.neu.edu writes:
   
 The release process for v6.0 has begun: the `release' branch was
 created for any work that is left and is now bumped to v5.91.  You
 can go on using the `master' branch as usual, it is now bumped to
 v6.0.0.1 (to avoid having two different trees with the same version).
   
Right now, I get (from a fresh build, commit
  d3665c2cdb3ee36bf723e339d887399ffd89fc01):
   
  expected: real?
  given: #f
  argument position: 1st
  other arguments...:
   0
  context...:
   

 /afs/informatik.uni-tuebingen.de/home/sperber/build/plt-release/racket/collects
 /dynext/filename-version.rkt:14:4 
 http://informatik.uni-tuebingen.de/home/sperber/build/plt-release/racket/colle
 cts/dynext/filename-version.rkt:14:4: loop
   

 /afs/informatik.uni-tuebingen.de/home/sperber/build/plt-release/racket/collects
 /dynext/filename-version.rkt 
 http://informatik.uni-tuebingen.de/home/sperber/build/plt-release/racket/colle
 cts/dynext/filename-version.rkt: [running body]
   

 /afs/informatik.uni-tuebingen.de/home/sperber/build/plt-release/racket/collects
 /compiler/distribute.rkt 
 http://informatik.uni-tuebingen.de/home/sperber/build/plt-release/racket/colle
 cts/compiler/distribute.rkt: [traversing imports]
   

 /afs/informatik.uni-tuebingen.de/home/sperber/build/plt-release/pkgs/drracket-p
 kgs/drracket/drracket/private/language.rkt 
 http://informatik.uni-tuebingen.de/home/sperber/build/plt-release/pkgs/drracke
 t-pkgs/drracket/drracket/private/language.rkt: [traversing imports]
   

 /afs/informatik.uni-tuebingen.de/home/sperber/build/plt-release/pkgs/drracket-p
 kgs/drracket/drracket/private/link.rkt 
 http://informatik.uni-tuebingen.de/home/sperber/build/plt-release/pkgs/drracke
 t-pkgs/drracket/drracket/private/link.rkt: [traversing imports]
   

 /afs/informatik.uni-tuebingen.de/home/sperber/build/plt-release/pkgs/drracket-p
 kgs/drracket/drracket/tool-lib.rkt 
 http://informatik.uni-tuebingen.de/home/sperber/build/plt-release/pkgs/drracke
 t-pkgs/drracket/drracket/tool-lib.rkt: [traversing imports]
   

 /afs/informatik.uni-tuebingen.de/home/sperber/build/plt-release/pkgs/drracket-p
 kgs/drracket/drracket/private/drracket-normal.rkt 
 http://informatik.uni-tuebingen.de/home/sperber/build/plt-release/pkgs/drracke
 t-pkgs/drracket/drracket/private/drracket-normal.rkt: [running body]
   

 /afs/informatik.uni-tuebingen.de/home/sperber/build/plt-release/pkgs/drracket-p
 kgs/drracket/drracket/drracket.rkt 
 http://informatik.uni-tuebingen.de/home/sperber/build/plt-release/pkgs/drracke
 t-pkgs/drracket/drracket/drracket.rkt: [running body]
   
On related news, http://pre.racket-lang.org/release/ gives me a 404.
   
Did I miss something?
   
--
Regards,
Mike
_
  Racket Developers list:
http://lists.racket-lang.org/dev
 
 _
   Racket Developers list:
   http://lists.racket-lang.org/dev
_
  Racket Developers list:
  http://lists.racket-lang.org/dev


Re: [racket-dev] Release for v6.0 has begun

2013-11-25 Thread Ryan Culpepper

On 11/25/2013 09:44 AM, Matthew Flatt wrote:

Here's the full comment:

The version string has one of the forms:
   X.Y
   X.Y.Z Z != 0
   X.Y.Z.W   W != 0
where each X, Y, Z, W is a non-negative exact integer, Y must not
exceed 99, and Z or W must not exceed 999.  Y=90 means that this is
working towards {X+1}.0, and X.Y (Z=0, W=0) is an alpha version for
{X+1}.0; Z=900 means working towards X.{Y+1}, and X.Y.Z as an
alpha release.

Then intent is that when Z and W are 0, the string form of the version
number is just X.Y, not X.Y.Z.W.

How about this clarification?

  ... and X.Y (i.e., Z=0 and W=0, so Z and W are
omitted from the string form) ...


That's not the part that needs clarifying. I think that fact that the 
string form drops final zeros is clear from lines 2-4.


The part that needs clarifying is how to choose the version number for 
the alpha releases leading up to version {X+1}.0. (Really, how to choose 
alpha version numbers in general, since I've had similar problems in the 
past.) From this statement, X.Y (Z=0, W=0) is an alpha version for 
{X+1}.0 (Y=90 already stated), I would expect that 5.91 would be a 
fine alpha version number for 6.0. Is it? If not, what should the alpha 
version number be?


Ryan

_
 Racket Developers list:
 http://lists.racket-lang.org/dev


Re: [racket-dev] Release for v6.0 has begun

2013-11-25 Thread Matthew Flatt
At Mon, 25 Nov 2013 09:56:45 -0500, Ryan Culpepper wrote:
 On 11/25/2013 09:44 AM, Matthew Flatt wrote:
  Here's the full comment:
 
  The version string has one of the forms:
 X.Y
 X.Y.Z Z != 0
 X.Y.Z.W   W != 0
  where each X, Y, Z, W is a non-negative exact integer, Y must not
  exceed 99, and Z or W must not exceed 999.  Y=90 means that this is
  working towards {X+1}.0, and X.Y (Z=0, W=0) is an alpha version for
  {X+1}.0; Z=900 means working towards X.{Y+1}, and X.Y.Z as an
  alpha release.
 
  Then intent is that when Z and W are 0, the string form of the version
  number is just X.Y, not X.Y.Z.W.
 
  How about this clarification?
 
... and X.Y (i.e., Z=0 and W=0, so Z and W are
  omitted from the string form) ...
 
 That's not the part that needs clarifying. I think that fact that the 
 string form drops final zeros is clear from lines 2-4.
 
 The part that needs clarifying is how to choose the version number for 
 the alpha releases leading up to version {X+1}.0. (Really, how to choose 
 alpha version numbers in general, since I've had similar problems in the 
 past.) From this statement, X.Y (Z=0, W=0) is an alpha version for 
 {X+1}.0 (Y=90 already stated), I would expect that 5.91 would be a 
 fine alpha version number for 6.0. Is it? If not, what should the alpha 
 version number be?

I agree that 5.91 is the right alpha-version string, assuming that
it's intended as an alpha in the sense of our release rules (as
opposed to a release candidate, which has a non-zero W).


The problem with the release branch currently is that 5.91.0.0 is
not a valid version string, and so

 #define MZSCHEME_VERSION 5.91.0.0

creates trouble, right?

_
  Racket Developers list:
  http://lists.racket-lang.org/dev


Re: [racket-dev] Release for v6.0 has begun

2013-11-25 Thread Ryan Culpepper

On 11/25/2013 10:28 AM, Matthew Flatt wrote:

At Mon, 25 Nov 2013 09:56:45 -0500, Ryan Culpepper wrote:

On 11/25/2013 09:44 AM, Matthew Flatt wrote:

Here's the full comment:

 The version string has one of the forms:
X.Y
X.Y.Z Z != 0
X.Y.Z.W   W != 0
 where each X, Y, Z, W is a non-negative exact integer, Y must not
 exceed 99, and Z or W must not exceed 999.  Y=90 means that this is
 working towards {X+1}.0, and X.Y (Z=0, W=0) is an alpha version for
 {X+1}.0; Z=900 means working towards X.{Y+1}, and X.Y.Z as an
 alpha release.

Then intent is that when Z and W are 0, the string form of the version
number is just X.Y, not X.Y.Z.W.

How about this clarification?

   ... and X.Y (i.e., Z=0 and W=0, so Z and W are
 omitted from the string form) ...


That's not the part that needs clarifying. I think that fact that the
string form drops final zeros is clear from lines 2-4.

The part that needs clarifying is how to choose the version number for
the alpha releases leading up to version {X+1}.0. (Really, how to choose
alpha version numbers in general, since I've had similar problems in the
past.) From this statement, X.Y (Z=0, W=0) is an alpha version for
{X+1}.0 (Y=90 already stated), I would expect that 5.91 would be a
fine alpha version number for 6.0. Is it? If not, what should the alpha
version number be?


I agree that 5.91 is the right alpha-version string, assuming that
it's intended as an alpha in the sense of our release rules (as
opposed to a release candidate, which has a non-zero W).


The problem with the release branch currently is that 5.91.0.0 is
not a valid version string, and so

  #define MZSCHEME_VERSION 5.91.0.0

creates trouble, right?


OH! I didn't realize that was the problem, because I knew not to do 
that, but apparently I did it anyway. Sorry about that. I just pushed a fix.


Ryan

_
 Racket Developers list:
 http://lists.racket-lang.org/dev


Re: [racket-dev] Release for v6.0 has begun

2013-11-23 Thread Michael Sperber

Ryan Culpepper ry...@ccs.neu.edu writes:

 The release process for v6.0 has begun: the `release' branch was
 created for any work that is left and is now bumped to v5.91.  You
 can go on using the `master' branch as usual, it is now bumped to
 v6.0.0.1 (to avoid having two different trees with the same version).

Right now, I get (from a fresh build, commit 
d3665c2cdb3ee36bf723e339d887399ffd89fc01):

  expected: real?
  given: #f
  argument position: 1st
  other arguments...:
   0
  context...:
   
/afs/informatik.uni-tuebingen.de/home/sperber/build/plt-release/racket/collects/dynext/filename-version.rkt:14:4:
 loop
   
/afs/informatik.uni-tuebingen.de/home/sperber/build/plt-release/racket/collects/dynext/filename-version.rkt:
 [running body]
   
/afs/informatik.uni-tuebingen.de/home/sperber/build/plt-release/racket/collects/compiler/distribute.rkt:
 [traversing imports]
   
/afs/informatik.uni-tuebingen.de/home/sperber/build/plt-release/pkgs/drracket-pkgs/drracket/drracket/private/language.rkt:
 [traversing imports]
   
/afs/informatik.uni-tuebingen.de/home/sperber/build/plt-release/pkgs/drracket-pkgs/drracket/drracket/private/link.rkt:
 [traversing imports]
   
/afs/informatik.uni-tuebingen.de/home/sperber/build/plt-release/pkgs/drracket-pkgs/drracket/drracket/tool-lib.rkt:
 [traversing imports]
   
/afs/informatik.uni-tuebingen.de/home/sperber/build/plt-release/pkgs/drracket-pkgs/drracket/drracket/private/drracket-normal.rkt:
 [running body]
   
/afs/informatik.uni-tuebingen.de/home/sperber/build/plt-release/pkgs/drracket-pkgs/drracket/drracket/drracket.rkt:
 [running body]

On related news, http://pre.racket-lang.org/release/ gives me a 404.

Did I miss something?

-- 
Regards,
Mike
_
  Racket Developers list:
  http://lists.racket-lang.org/dev


Re: [racket-dev] Release for v6.0 has begun

2013-11-23 Thread Robby Findler
My reading of the code suggests the first problem is that the version
number should have been 5.91.0.1 not 5.91.0.0 but I can't recall what we
usually do to know if that's right or not. It looks like the code was last
changed in 2008 so I guess the version number is what's wrong.

The second problem is that the nightly build site has been down for a long
time. Probably Matthew and I should switch our snapshot builds over to
using the release branch instead of git head.

Robby

On Sat, Nov 23, 2013 at 8:33 AM, Michael Sperber sper...@deinprogramm.de
wrote:


 Ryan Culpepper ry...@ccs.neu.edu writes:

  The release process for v6.0 has begun: the `release' branch was
  created for any work that is left and is now bumped to v5.91.  You
  can go on using the `master' branch as usual, it is now bumped to
  v6.0.0.1 (to avoid having two different trees with the same version).

 Right now, I get (from a fresh build, commit
d3665c2cdb3ee36bf723e339d887399ffd89fc01):

   expected: real?
   given: #f
   argument position: 1st
   other arguments...:
0
   context...:
/afs/
informatik.uni-tuebingen.de/home/sperber/build/plt-release/racket/collects/dynext/filename-version.rkt:14:4:
loop
/afs/
informatik.uni-tuebingen.de/home/sperber/build/plt-release/racket/collects/dynext/filename-version.rkt:
[running body]
/afs/
informatik.uni-tuebingen.de/home/sperber/build/plt-release/racket/collects/compiler/distribute.rkt:
[traversing imports]
/afs/
informatik.uni-tuebingen.de/home/sperber/build/plt-release/pkgs/drracket-pkgs/drracket/drracket/private/language.rkt:
[traversing imports]
/afs/
informatik.uni-tuebingen.de/home/sperber/build/plt-release/pkgs/drracket-pkgs/drracket/drracket/private/link.rkt:
[traversing imports]
/afs/
informatik.uni-tuebingen.de/home/sperber/build/plt-release/pkgs/drracket-pkgs/drracket/drracket/tool-lib.rkt:
[traversing imports]
/afs/
informatik.uni-tuebingen.de/home/sperber/build/plt-release/pkgs/drracket-pkgs/drracket/drracket/private/drracket-normal.rkt:
[running body]
/afs/
informatik.uni-tuebingen.de/home/sperber/build/plt-release/pkgs/drracket-pkgs/drracket/drracket/drracket.rkt:
[running body]

 On related news, http://pre.racket-lang.org/release/ gives me a 404.

 Did I miss something?

 --
 Regards,
 Mike
 _
   Racket Developers list:
   http://lists.racket-lang.org/dev
_
  Racket Developers list:
  http://lists.racket-lang.org/dev


Re: [racket-dev] Release for v6.0 has begun

2013-11-21 Thread Aleksej Saushev
Ryan Culpepper ry...@ccs.neu.edu writes:

NOW IS THE TIME TO FIX BUGS THAT YOU KNOW ABOUT 

It would be nice to change location of config.rktd file.

config.rktd looks like it cannot be changed by user at run time in any
meaningful way. Thus it doesn't belong to sysconfdir.
It should be placed into libdir instead.

When building Racket tries to invoke i486--netbsdelf-ar which naturally
doesn't exist. It would be nice if it used canonical archiver name first,
which is ar per POSIX/SUS. Alternatively it should fall back to it when
non-canonical one doesn't exist.



patch-pkgs_drracket-pkgs_drracket-test_tests_drracket_run.sh
Description: Avoid non-portable test \=\=.

-- 
BCE HA MOPE!
_
  Racket Developers list:
  http://lists.racket-lang.org/dev


Re: [racket-dev] Release for v6.0 has begun

2013-11-21 Thread Matthew Flatt
At Fri, 22 Nov 2013 05:10:14 +0400, Aleksej Saushev wrote:
 It would be nice to change location of config.rktd file.
 
 config.rktd looks like it cannot be changed by user at run time in any
 meaningful way. Thus it doesn't belong to sysconfdir.
 It should be placed into libdir instead.

It's intended to be changed by users, either directly or via tools like
`raco pkg config`:

 http://www.cs.utah.edu/plt/snapshots/current/doc/raco/config-file.html


 When building Racket tries to invoke i486--netbsdelf-ar which naturally
 doesn't exist. It would be nice if it used canonical archiver name first,
 which is ar per POSIX/SUS. Alternatively it should fall back to it when
 non-canonical one doesn't exist.

Right --- I've pushed a repair.

_
  Racket Developers list:
  http://lists.racket-lang.org/dev


[racket-dev] Release for v6.0 has begun

2013-11-20 Thread Ryan Culpepper

The release process for v6.0 has begun: the `release' branch was
created for any work that is left and is now bumped to v5.91.  You
can go on using the `master' branch as usual, it is now bumped to
v6.0.0.1 (to avoid having two different trees with the same version).

If you have any bug-fixes and changes that need to go in the release
then make sure to specify that in the commit message or mail me the
commit SHA1s.  You can `git checkout release' to try it out directly if
needed -- but do not try to push commits on it (the server will forbid
it).

Please make sure that code that you're responsible for is as stable
as possible, and let me know if there is any new work that should
not be included in this release.

   NOW IS THE TIME TO FIX BUGS THAT YOU KNOW ABOUT 

The time between the `release' branch creation and the actual
release is for fixing new errors that prevent proper functioning of
major components and that show up during the preparation for a
release.  You can also finalize piece of work that is not yet
complete, but please avoid merging new features.

Note that nightly builds will go on as usual (starting from
v6.0.0.1 and going up as usual), and pre-release builds will be
available shortly at

  http://pre.racket-lang.org/release/

Please tell me if you think that this release is significant enough
that it should be announced on the users list for wider testing.
_
 Racket Developers list:
 http://lists.racket-lang.org/dev