Re: [racket-dev] advice on the 6.x build system.

2014-10-16 Thread David Bremner
Matthew Flatt  writes:

>
> That said, is there a particular reason that basing the build on the
> git repo would be better?
>

One reason is that I need I need to track from release to release the
files that are removed from the racket source by debian for
licensing-related reasons. Currently this looks like:

╰─ (git)-[new-master]-% git diff --stat dfsg..upstream
 .../drdr/static/jquery-1.6.2.min.js|   18 +
 .../resources/js/libs/gumby.min.js |1 +
 .../js/libs/jquery-1.9.1.min.js|5 +
 .../libs/jquery.mobile.custom.min.js   |3 +
 .../js/libs/modernizr-2.6.2.min.js |4 +
 .../resources/js/plugins.js|8 +
 .../racket/benchmarks/common/maze.sch  |  680 ++
 .../racket/benchmarks/common/maze2.sch |  695 ++
 .../common/psyntax-input.txt   | 4296 
 .../benchmarks/common/typed/maze2.rktl |  772 ++
 .../racket-test/tests/xml/xmltest.zip  |  Bin 0 -> 107060 bytes

I used to do this by importing the tarballs on top of the git history,
but since 6.0 this import creates a massive diff because of all the
re-arranging that happens in tarball creating process. At this point the
I the history becomes difficult to follow (or at least ugly).  From our
point of view, once we have to delete things, the tarballs also lose
their status as an "pristine work of upstream".

A second reason is that I want to be able to able to backport patches to
older releases of racket running on Debian.  This is much easier if I
can just use "git cherry-pick".

A third reason (related) is that from time to time I need to test the
Debian packaging of an as yet unreleased racket version, e.g. to check
if a build failure is fixed in the upcoming 6.1.1 branch.

d

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


Re: [racket-dev] Pre-Release Checklist for v6.1.1

2014-10-16 Thread Gregory Cooper
>
> * Greg Cooper 
>   - FrTime Tests
>

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


Re: [racket-dev] advice on the 6.x build system.

2014-10-16 Thread Matthew Flatt
Hi David,

If I understand correctly, you're trying to base the build on a
checkout of the Racket git repository. I think it's better to base it
on a release source distribution, instead:

 * The source distribution embeds a reference to a release-specific
   package catalog, which effectively freezes certain packages to that
   release. (Which packages and exactly how they should freeze will be
   an ongoing experiment, but the source distribution will be set up
   the right way, in any case).

 * We plan to split up the current Racket repository into many
   package-specific repositories. The current structure was intended as
   a stop-gap, and it's not clear that anything like `make
   local-source-catalog` will continue to exist.

That said, is there a particular reason that basing the build on the
git repo would be better?

Matthew

At Thu, 16 Oct 2014 23:23:37 +0200, David Bremner wrote:
> 
> I've been been trying to rework the debian racket packaging, and to
> understand the new racket build system.  I need to have the two seperate
> targets, which most of the package installation is done in the the
> "build-indep-stamp" target.
> 
> The following makefile snippet is _almost_ working, except that I'm
> missing a launcher for drracket. After installing debian/tmp, running
> /usr/lib/racket/gracket and (require drracket) seems to work ok to start
> drracket, so I take that as indicating most of the packages / collects
> are in the right place.  Can anyone see what I'm doing wrong here?
> 
> I should say that I tried to make better use of the top level makefile,
> but I ended up with wrong default collects paths (probably just a
> different error on my part).
> 
> I tried all of this (most recently) with the current release branch
> (c326c21b73356e)
> 
> destdir:=$(CURDIR)/debian/tmp
> base_build_dir:=$(CURDIR)/racket/src/build
> PRERACKET:=${destdir}/usr/bin/racket  -X ${destdir}/usr/share/racket/collects
> 
> raco_args:=--catalog build/local/catalog --auto -i --skip-installed
> 
> 
> ${base_build_dir}/Makefile: 
>   mkdir -p ${base_build_dir}
>   cd ${base_build_dir} && $(CURDIR)/racket/src/configure --prefix=/usr
> 
> build-arch-stamp: ${base_build_dir}/Makefile
>   $(MAKE) -C ${base_build_dir} 
>   $(MAKE) -C ${base_build_dir} DESTDIR=${destdir} install
>   touch $@
> 
> build-indep-stamp: build-arch-stamp
>   $(MAKE) RACKET="${PRERACKET}" \
>   local-source-catalog 
>   ${PRERACKET} -N raco -l- \
>   pkg install ${raco_args}  main-distribution racket-lib
>   touch $@
> _
>   Racket Developers list:
>   http://lists.racket-lang.org/dev
_
  Racket Developers list:
  http://lists.racket-lang.org/dev


[racket-dev] advice on the 6.x build system.

2014-10-16 Thread David Bremner

I've been been trying to rework the debian racket packaging, and to
understand the new racket build system.  I need to have the two seperate
targets, which most of the package installation is done in the the
"build-indep-stamp" target.

The following makefile snippet is _almost_ working, except that I'm
missing a launcher for drracket. After installing debian/tmp, running
/usr/lib/racket/gracket and (require drracket) seems to work ok to start
drracket, so I take that as indicating most of the packages / collects
are in the right place.  Can anyone see what I'm doing wrong here?

I should say that I tried to make better use of the top level makefile,
but I ended up with wrong default collects paths (probably just a
different error on my part).

I tried all of this (most recently) with the current release branch
(c326c21b73356e)

destdir:=$(CURDIR)/debian/tmp
base_build_dir:=$(CURDIR)/racket/src/build
PRERACKET:=${destdir}/usr/bin/racket  -X ${destdir}/usr/share/racket/collects

raco_args:=--catalog build/local/catalog --auto -i --skip-installed


${base_build_dir}/Makefile: 
mkdir -p ${base_build_dir}
cd ${base_build_dir} && $(CURDIR)/racket/src/configure --prefix=/usr

build-arch-stamp: ${base_build_dir}/Makefile
$(MAKE) -C ${base_build_dir} 
$(MAKE) -C ${base_build_dir} DESTDIR=${destdir} install
touch $@

build-indep-stamp: build-arch-stamp
$(MAKE) RACKET="${PRERACKET}" \
local-source-catalog 
${PRERACKET} -N raco -l- \
pkg install ${raco_args}  main-distribution racket-lib
touch $@
_
  Racket Developers list:
  http://lists.racket-lang.org/dev


Re: [racket-dev] Pre-Release Checklist for v6.1.1

2014-10-16 Thread Jay McCarthy
On Thu, Oct 16, 2014 at 9:13 AM, Ryan Culpepper  wrote:
> * Jay McCarthy 
>   - Web Server Tests
>   - XML Tests
>   - HTML Tests
>   - PLAI Tests
>   - Racklog tests
>   - Datalog tests

All passed

-- 
Jay McCarthy
http://jeapostrophe.github.io

   "Wherefore, be not weary in well-doing,
  for ye are laying the foundation of a great work.
And out of small things proceedeth that which is great."
  - D&C 64:33
_
  Racket Developers list:
  http://lists.racket-lang.org/dev


Re: [racket-dev] Pre-Release Checklist for v6.1.1

2014-10-16 Thread Vincent St-Amour
At Thu, 16 Oct 2014 11:22:04 -0400,
Vincent St-Amour wrote:
> >   - Typed Racket Updates: update HISTORY
> >   (updates should show v6.1.1 as the most current version; email me
> >   to pick the changes when they're done, or tell me if there are no such
> >   changes.)
> 
> In process.

Pushed as commit 66e5a246c42dd585be9e42b280c0338de1e30892

Vincent

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


Re: [racket-dev] Pre-Release Checklist for v6.1.1

2014-10-16 Thread Vincent St-Amour
At Thu, 16 Oct 2014 09:13:54 -0400,
Ryan Culpepper wrote:
> * Sam Tobin-Hochstadt ,
>Vincent St-Amour 
>   - Match Tests
>   - Typed Racket Tests

Done.

>   - Typed Racket Updates: update HISTORY
>   (updates should show v6.1.1 as the most current version; email me
>   to pick the changes when they're done, or tell me if there are no such
>   changes.)

In process.

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


[racket-dev] DrRacket flickers?

2014-10-16 Thread Laurent
Hi,

Using Racket 6.1.1.1--2014-10-13(47b7a28/a) [3m] on Ubuntu 14.04, I see
DrRacket flickering during selections, tab switching and other occasions,
but it's not consistent.

Does anyone else see the same thing?

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


[racket-dev] Pre-Release Checklist for v6.1.1

2014-10-16 Thread Ryan Culpepper

Checklist items for the v6.1.1 release
  (using the v6.1.0.900 release candidate build)

Search for your name to find relevant items, reply when you finish an
item (please indicate which item/s is/are done).  Also, if you have any
commits that should have been picked, make sure that the changes are in.

Important: new builds are created without announcement, usually whenever
I pick a few commits.  If you need to commit changes, please make sure
you tell me to pick it into the release branch.

--> Release candidates are at
-->   http://pre-release.racket-lang.org

Please use these installers (or source bundles) -- don't test from
your own git clone (don't test the `master' branch by mistake!).  To
get the tests, you can do this:

  cd ...racket-root...
  ./bin/raco pkg install -i main-distribution-test

--

* Matthew Flatt 
  - Racket Tests
  - Languages Tests
  - GRacket Tests (Also check that `gracket -z' and `gracket-text' still
works in Windows and Mac OS X)
  - mzc --exe tests
  - .plt-packing Tests
  - Games Tests
  - Unit Tests
  - Syntax Color Tests
  - R6RS Tests
  - JPR's test suite
  - Create an executable from a BSL program
  - Run COM tests
  - Embed-in-c test
  - Try compiling with -funsigned-char
  - Try compiling with TEST_ALTERNATE_TARGET_REGISTER
  Updates:
  - Racket Updates: update HISTORY
  (updates should show v6.1.1 as the most current version)
  - Update man pages in racket/man/man1: racket.1, gracket.1, raco.1
  Email me to pick the changes when they're done, or tell me if there
  are no such changes.

* Robby Findler 
  - DrRacket Tests
  - Framework Tests
  - Contracts Tests
  - Games Tests
  - Teachpacks Tests: image tests
  - PLaneT Tests
  - Redex Tests
  Updates:
  - DrRacket Updates: update HISTORY
  - Redex Updates: update HISTORY
  (updates should show v6.1.1 as the most current version)
  - Ensure that previous version of DrRacket's preference files still
starts up with new DrRacket
  - Update man pages in racket/man/man1: drracket.1
  Email me to pick the changes when they're done, or tell me if there
  are no such changes.

* John Clements 
  - Stepper Tests
  Updates:
  - Stepper Updates: update HISTORY
  (updates should show v6.1.1 as the most current version; email me
  to pick the changes when they're done, or tell me if there are no such
  changes.)

* Sam Tobin-Hochstadt ,
   Vincent St-Amour 
  - Match Tests
  - Typed Racket Tests
  - Typed Racket Updates: update HISTORY
  (updates should show v6.1.1 as the most current version; email me
  to pick the changes when they're done, or tell me if there are no such
  changes.)

* Matthias Felleisen 
  - Teachpacks Tests: check that new teachpacks are addable
  - Teachpack Docs: check teachpack docs in the bundles
  - Try teaching-languages testing framework (check-expect)
  Updates:
  - Teachpack Updates: update HISTORY
  (updates should show v6.1.1 as the most current version; email me
  to pick the changes when they're done, or tell me if there are no such
  changes.)

* Ryan Culpepper 
  - Macro Debugger Tests
  - syntax-parse Tests
  - RackUnit GUI Tests
  - Data Tests
  - DB Tests
  - Rackunit Tests
  - SRFI Tests

* Jay McCarthy 
  - Web Server Tests
  - XML Tests
  - HTML Tests
  - PLAI Tests
  - Racklog tests
  - Datalog tests

* Stevie Strickland 
  - Unit Contract Tests
  - Contract Region Tests
  - Class Contract Tests

* Stephen Chang 
  - Lazy Racket Tests
  - Lazy stepper tests

* Eli Barzilay 
  - Swindle Tests
  - XREPL Tests
  - Verify PL language
  - Racket Tree: compare new distribution tree to previous one
  - Run the unix installer tests
  - Run zsh completions tests
(". .../racket-completion.zsh; _racket --self-test")

* Stephen Bloch 
  - Picturing Programs Tests

* Greg Cooper 
  - FrTime Tests

* Jon Rafkind 
  Release tests for (one of the) linux releases:
  - Test that the `racket' and `racket-textual' source releases
compile fine (note that they're still called `plt' and `mz' at
this stage).
  - Test that the binary installers for both work, try each one in
both normal and unix-style installation modes. (just ubuntu)
  [Note: get the release candidates from the URL in this email. Use
   the 'static table' link to see a list of all tar files available]

* Mike Sperber 
  - DMdA Tests
  - Stepper Tests
  - Signature Tests

* David Van Horn 
  - EoPL Tests

* Neil Toronto 
  - Plot Tests
  - Images Tests
  - Inspect icons
  - Math tests

* Doug Williams 
  - Additional Plot Tests

* Shriram Krishnamurthi 
  Tour: check the tour and generate a new one if needed.
  [Note: Since this is a v6.1.0.900 build, you will need to edit your
.../collects/framework/private/version.rkt
  file and change `(version)' to `"6.1.1"'.]
_
 Racket Developers list:
 http://lists.racket-lang.org/dev