Re: [racket-dev] [plt] Push #27511: master branch updated
FWIW, this seems to have broken the snapshot builds. I'll add the missing dependency declarations so I can restart the northwestern snapshots. Also FWIW: WARNING: collected information for key multiple times: '(exporting-libraries #f); values: '(typed/srfi/14) '(typed/rackunit) WARNING: collected information for key multiple times: '(exporting-libraries #f); values: '(typed/rackunit) '(typed/net/url) WARNING: collected information for key multiple times: '(exporting-libraries #f); values: '(typed/net/url) '(typed/net/uri-codec) WARNING: collected information for key multiple times: '(exporting-libraries #f); values: '(typed/net/uri-codec) '(typed/net/smtp) WARNING: collected information for key multiple times: '(exporting-libraries #f); values: '(typed/net/smtp) '(typed/net/sendurl) WARNING: collected information for key multiple times: '(exporting-libraries #f); values: '(typed/net/sendurl) '(typed/net/sendmail) WARNING: collected information for key multiple times: '(exporting-libraries #f); values: '(typed/net/sendmail) '(typed/net/qp) WARNING: collected information for key multiple times: '(exporting-libraries #f); values: '(typed/net/qp) '(typed/net/pop3) WARNING: collected information for key multiple times: '(exporting-libraries #f); values: '(typed/net/pop3) '(typed/net/nntp) WARNING: collected information for key multiple times: '(exporting-libraries #f); values: '(typed/net/nntp) '(typed/net/mime) WARNING: collected information for key multiple times: '(exporting-libraries #f); values: '(typed/net/mime) '(typed/net/imap) WARNING: collected information for key multiple times: '(exporting-libraries #f); values: '(typed/net/imap) '(typed/net/head) WARNING: collected information for key multiple times: '(exporting-libraries #f); values: '(typed/net/head) '(typed/net/gifwrite) WARNING: collected information for key multiple times: '(exporting-libraries #f); values: '(typed/net/gifwrite) '(typed/net/ftp) WARNING: collected information for key multiple times: '(exporting-libraries #f); values: '(typed/net/ftp) '(typed/net/dns) WARNING: collected information for key multiple times: '(exporting-libraries #f); values: '(typed/net/dns) '(typed/net/cookie) WARNING: collected information for key multiple times: '(exporting-libraries #f); values: '(typed/net/cookie) '(typed/net/cgi) WARNING: collected information for key multiple times: '(exporting-libraries #f); values: '(typed/net/cgi) '(typed/net/base64) WARNING: collected information for key multiple times: '(exporting-libraries #f); values: '(typed/net/base64) '(typed/file) Should those defmodules actually be @racketmodname[]'s or something? Robby On Mon, Sep 16, 2013 at 4:53 PM, Matthew Flatt mfl...@cs.utah.edu wrote: It's implemented, but it's not currently an option for `defmodule`. I'll look into adding the option. At Mon, 16 Sep 2013 17:49:27 -0400, Sam Tobin-Hochstadt wrote: I think what Carl suggested is preferable -- a link that only exists if the package it links to exists. Alternatively, a link that goes to the web if the package doesn't exist yet. I think the latter is planned but not yet implemented, from my recollection. Sam On Mon, Sep 16, 2013 at 5:41 PM, Robby Findler ro...@eecs.northwestern.edu wrote: So you want scribble to generate a link that can, when clicked (or maybe when the docs are built) turn into the real link or turn into please install package X? Robby On Monday, September 16, 2013, Sam Tobin-Hochstadt wrote: I think the Typed Racket docs should have pointers to how to use other libraries in a typed fashion -- it's a question that comes up a lot. Sam On Mon, Sep 16, 2013 at 5:16 PM, Robby Findler ro...@eecs.northwestern.edu wrote: Can that code not be moved into the relevant packages instead? Robby On Mon, Sep 16, 2013 at 3:21 PM, Asumu Takikawa as...@ccs.neu.edu wrote: On 2013-09-16 16:17:33 -0400, as...@racket-lang.org wrote: +@defmodule[math #:no-declare #:link-target? #f] +@defmodule[plot/typed #:no-declare #:link-target? #f] These two lines cause `raco setup` to complain with a warning about undeclared dependencies. It seems silly, though, to have the TR doc package force a dependency on `math`. Can I quelch the warning somehow? (like a I don't really care if the dependency is missing flag) Cheers, Asumu _ 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 _ Racket Developers list: http://lists.racket-lang.org/dev _ Racket Developers list: http://lists.racket-lang.org/dev
Re: [racket-dev] [plt] Push #27511: master branch updated
On Sep 17, 2013 4:38 AM, Robby Findler ro...@eecs.northwestern.edu wrote: FWIW, this seems to have broken the snapshot builds. I'll add the missing dependency declarations so I can restart the northwestern snapshots. Is this a situation where we can make the builds more robust? Presumably this issue wouldn't have prevented the snapshot from working. Also FWIW: WARNING: collected information for key multiple times: '(exporting-libraries #f); values: '(typed/srfi/14) '(typed/rackunit) WARNING: collected information for key multiple times: '(exporting-libraries #f); values: '(typed/rackunit) '(typed/net/url) WARNING: collected information for key multiple times: '(exporting-libraries #f); values: '(typed/net/url) '(typed/net/uri-codec) WARNING: collected information for key multiple times: '(exporting-libraries #f); values: '(typed/net/uri-codec) '(typed/net/smtp) WARNING: collected information for key multiple times: '(exporting-libraries #f); values: '(typed/net/smtp) '(typed/net/sendurl) WARNING: collected information for key multiple times: '(exporting-libraries #f); values: '(typed/net/sendurl) '(typed/net/sendmail) WARNING: collected information for key multiple times: '(exporting-libraries #f); values: '(typed/net/sendmail) '(typed/net/qp) WARNING: collected information for key multiple times: '(exporting-libraries #f); values: '(typed/net/qp) '(typed/net/pop3) WARNING: collected information for key multiple times: '(exporting-libraries #f); values: '(typed/net/pop3) '(typed/net/nntp) WARNING: collected information for key multiple times: '(exporting-libraries #f); values: '(typed/net/nntp) '(typed/net/mime) WARNING: collected information for key multiple times: '(exporting-libraries #f); values: '(typed/net/mime) '(typed/net/imap) WARNING: collected information for key multiple times: '(exporting-libraries #f); values: '(typed/net/imap) '(typed/net/head) WARNING: collected information for key multiple times: '(exporting-libraries #f); values: '(typed/net/head) '(typed/net/gifwrite) WARNING: collected information for key multiple times: '(exporting-libraries #f); values: '(typed/net/gifwrite) '(typed/net/ftp) WARNING: collected information for key multiple times: '(exporting-libraries #f); values: '(typed/net/ftp) '(typed/net/dns) WARNING: collected information for key multiple times: '(exporting-libraries #f); values: '(typed/net/dns) '(typed/net/cookie) WARNING: collected information for key multiple times: '(exporting-libraries #f); values: '(typed/net/cookie) '(typed/net/cgi) WARNING: collected information for key multiple times: '(exporting-libraries #f); values: '(typed/net/cgi) '(typed/net/base64) WARNING: collected information for key multiple times: '(exporting-libraries #f); values: '(typed/net/base64) '(typed/file) Should those defmodules actually be @racketmodname[]'s or something? Yes, they definitely should be. Robby On Mon, Sep 16, 2013 at 4:53 PM, Matthew Flatt mfl...@cs.utah.edu wrote: It's implemented, but it's not currently an option for `defmodule`. I'll look into adding the option. At Mon, 16 Sep 2013 17:49:27 -0400, Sam Tobin-Hochstadt wrote: I think what Carl suggested is preferable -- a link that only exists if the package it links to exists. Alternatively, a link that goes to the web if the package doesn't exist yet. I think the latter is planned but not yet implemented, from my recollection. Sam On Mon, Sep 16, 2013 at 5:41 PM, Robby Findler ro...@eecs.northwestern.edu wrote: So you want scribble to generate a link that can, when clicked (or maybe when the docs are built) turn into the real link or turn into please install package X? Robby On Monday, September 16, 2013, Sam Tobin-Hochstadt wrote: I think the Typed Racket docs should have pointers to how to use other libraries in a typed fashion -- it's a question that comes up a lot. Sam On Mon, Sep 16, 2013 at 5:16 PM, Robby Findler ro...@eecs.northwestern.edu wrote: Can that code not be moved into the relevant packages instead? Robby On Mon, Sep 16, 2013 at 3:21 PM, Asumu Takikawa as...@ccs.neu.edu wrote: On 2013-09-16 16:17:33 -0400, as...@racket-lang.org wrote: +@defmodule[math #:no-declare #:link-target? #f] +@defmodule[plot/typed #:no-declare #:link-target? #f] These two lines cause `raco setup` to complain with a warning about undeclared dependencies. It seems silly, though, to have the TR doc package force a dependency on `math`. Can I quelch the warning somehow? (like a I don't really care if the dependency is missing flag) Cheers, Asumu _ Racket Developers list: http://lists.racket-lang.org/dev _ Racket Developers list: http://lists.racket-lang.org/dev _ Racket Developers list:
Re: [racket-dev] [plt] Push #27511: master branch updated
On Tue, Sep 17, 2013 at 6:14 AM, Sam Tobin-Hochstadt sa...@cs.indiana.eduwrote: On Sep 17, 2013 4:38 AM, Robby Findler ro...@eecs.northwestern.edu wrote: FWIW, this seems to have broken the snapshot builds. I'll add the missing dependency declarations so I can restart the northwestern snapshots. Is this a situation where we can make the builds more robust? Presumably this issue wouldn't have prevented the snapshot from working. The snapshots don't currently distinguish between different ways that raco setup returns a non-zero exit code. And it isn't like we didn't know that there was a problem. Next time, probably best to just not commit something that makes raco setup unhappy but instead discuss it first. Robby _ Racket Developers list: http://lists.racket-lang.org/dev
Re: [racket-dev] [plt] Push #27511: master branch updated
At Tue, 17 Sep 2013 07:03:30 -0500, Robby Findler wrote: On Tue, Sep 17, 2013 at 6:14 AM, Sam Tobin-Hochstadt sa...@cs.indiana.eduwrote: On Sep 17, 2013 4:38 AM, Robby Findler ro...@eecs.northwestern.edu wrote: FWIW, this seems to have broken the snapshot builds. I'll add the missing dependency declarations so I can restart the northwestern snapshots. Is this a situation where we can make the builds more robust? Presumably this issue wouldn't have prevented the snapshot from working. The snapshots don't currently distinguish between different ways that raco setup returns a non-zero exit code. And it isn't like we didn't know that there was a problem. Next time, probably best to just not commit something that makes raco setup unhappy but instead discuss it first. Yes, please treat missing package dependencies the same as any other build error. Mistakes will happen, but they should be corrected as soon as possible, even if it requires a stop-gap solution. In this particular case, if `raco setup` hadn't reported failure, the builds might have hobbled along; I'm not sure. The snapshot build generally relies on dependencies being accurate, and I don't think it's worth thinking hard about which inaccuracies might be survivable for a distribution build. _ Racket Developers list: http://lists.racket-lang.org/dev
Re: [racket-dev] [plt] Push #27511: master branch updated
On 2013-09-17 06:15:42 -0600, Matthew Flatt wrote: Yes, please treat missing package dependencies the same as any other build error. Mistakes will happen, but they should be corrected as soon as possible, even if it requires a stop-gap solution. Whoops, sorry for breaking the snapshots. I thought undeclared dependencies were warnings and not errors. Cheers, Asumu _ Racket Developers list: http://lists.racket-lang.org/dev
Re: [racket-dev] [plt] Push #27511: master branch updated
On Tue, Sep 17, 2013 at 8:15 AM, Matthew Flatt mfl...@cs.utah.edu wrote: In this particular case, if `raco setup` hadn't reported failure, the builds might have hobbled along; I'm not sure. The snapshot build generally relies on dependencies being accurate, and I don't think it's worth thinking hard about which inaccuracies might be survivable for a distribution build. Can you say more about how the dependency info is used in the snapshot build process? In this case, I would think that the minimal build doesn't include either package involved in this, and the regular build includes both. Would that mean that the dependency error wouldn't break things? Or are there other uses of the dependency info in the snapshot process? Sam _ Racket Developers list: http://lists.racket-lang.org/dev
Re: [racket-dev] [plt] Push #26693: master branch updated
On Tue, Sep 17, 2013 at 8:29 AM, Matthew Flatt mfl...@cs.utah.edu wrote: FWIW, for an individual file in a repo clone, you can follow history through the split by using `git log --follow`. But there's no way to do that in the GitHub web interface, as far as I know. Also rather frustratingly, there's no way to do this for a whole directory, I think. If anyone knows better, I'd love to know. Sam _ Racket Developers list: http://lists.racket-lang.org/dev
Re: [racket-dev] [plt] Push #27511: master branch updated
At Tue, 17 Sep 2013 08:31:26 -0400, Sam Tobin-Hochstadt wrote: On Tue, Sep 17, 2013 at 8:15 AM, Matthew Flatt mfl...@cs.utah.edu wrote: In this particular case, if `raco setup` hadn't reported failure, the builds might have hobbled along; I'm not sure. The snapshot build generally relies on dependencies being accurate, and I don't think it's worth thinking hard about which inaccuracies might be survivable for a distribution build. Can you say more about how the dependency info is used in the snapshot build process? In this case, I would think that the minimal build doesn't include either package involved in this, and the regular build includes both. Would that mean that the dependency error wouldn't break things? I think you're correct, but.. Or are there other uses of the dependency info in the snapshot process? ... I wouldn't bet against that. I think the snapshot system is solid, but my experience over many small changes to the package system is that any invariant is used in more places than I remember; when we change or remove some assumption, then I end up fixing more places than I expect. It might be, for example, that installers would get created successfully, but installation would somehow trip over the assumption that `raco setup` won't report any errors in an initial install. Or maybe the install works, but as soon as you try to install a package, it runs into the same problem. I don't see either of those things happening in this case, but those are examples of where I may have overlooked something. _ Racket Developers list: http://lists.racket-lang.org/dev
Re: [racket-dev] [plt] Push #27511: master branch updated
No problem. It was easy to tweak and re-run (and one lost day is not a big deal either). Robby On Tue, Sep 17, 2013 at 7:30 AM, Asumu Takikawa as...@ccs.neu.edu wrote: On 2013-09-17 06:15:42 -0600, Matthew Flatt wrote: Yes, please treat missing package dependencies the same as any other build error. Mistakes will happen, but they should be corrected as soon as possible, even if it requires a stop-gap solution. Whoops, sorry for breaking the snapshots. I thought undeclared dependencies were warnings and not errors. Cheers, Asumu _ Racket Developers list: http://lists.racket-lang.org/dev
Re: [racket-dev] [plt] Push #27511: master branch updated
On Tue, Sep 17, 2013 at 7:41 AM, Matthew Flatt mfl...@cs.utah.edu wrote: At Tue, 17 Sep 2013 08:31:26 -0400, Sam Tobin-Hochstadt wrote: On Tue, Sep 17, 2013 at 8:15 AM, Matthew Flatt mfl...@cs.utah.edu wrote: In this particular case, if `raco setup` hadn't reported failure, the builds might have hobbled along; I'm not sure. The snapshot build generally relies on dependencies being accurate, and I don't think it's worth thinking hard about which inaccuracies might be survivable for a distribution build. Can you say more about how the dependency info is used in the snapshot build process? In this case, I would think that the minimal build doesn't include either package involved in this, and the regular build includes both. Would that mean that the dependency error wouldn't break things? I think you're correct, but.. Or are there other uses of the dependency info in the snapshot process? ... I wouldn't bet against that. I think the snapshot system is solid, but my experience over many small changes to the package system is that any invariant is used in more places than I remember; when we change or remove some assumption, then I end up fixing more places than I expect. It might be, for example, that installers would get created successfully, but installation would somehow trip over the assumption that `raco setup` won't report any errors in an initial install. Or maybe the install works, but as soon as you try to install a package, it runs into the same problem. I don't see either of those things happening in this case, but those are examples of where I may have overlooked something. This reminds me a lot of how Jacob would talk while he was working on planet. :) Robby _ Racket Developers list: http://lists.racket-lang.org/dev
Re: [racket-dev] [plt] Push #27511: master branch updated
On Tue, Sep 17, 2013 at 7:14 AM, Sam Tobin-Hochstadt sa...@cs.indiana.edu wrote: Also FWIW: WARNING: collected information for key multiple times: '(exporting-libraries #f); values: '(typed/srfi/14) '(typed/rackunit) WARNING: collected information for key multiple times: '(exporting-libraries #f); values: '(typed/rackunit) '(typed/net/url) WARNING: collected information for key multiple times: '(exporting-libraries #f); values: '(typed/net/url) '(typed/net/uri-codec) WARNING: collected information for key multiple times: '(exporting-libraries #f); values: '(typed/net/uri-codec) '(typed/net/smtp) WARNING: collected information for key multiple times: '(exporting-libraries #f); values: '(typed/net/smtp) '(typed/net/sendurl) WARNING: collected information for key multiple times: '(exporting-libraries #f); values: '(typed/net/sendurl) '(typed/net/sendmail) WARNING: collected information for key multiple times: '(exporting-libraries #f); values: '(typed/net/sendmail) '(typed/net/qp) WARNING: collected information for key multiple times: '(exporting-libraries #f); values: '(typed/net/qp) '(typed/net/pop3) WARNING: collected information for key multiple times: '(exporting-libraries #f); values: '(typed/net/pop3) '(typed/net/nntp) WARNING: collected information for key multiple times: '(exporting-libraries #f); values: '(typed/net/nntp) '(typed/net/mime) WARNING: collected information for key multiple times: '(exporting-libraries #f); values: '(typed/net/mime) '(typed/net/imap) WARNING: collected information for key multiple times: '(exporting-libraries #f); values: '(typed/net/imap) '(typed/net/head) WARNING: collected information for key multiple times: '(exporting-libraries #f); values: '(typed/net/head) '(typed/net/gifwrite) WARNING: collected information for key multiple times: '(exporting-libraries #f); values: '(typed/net/gifwrite) '(typed/net/ftp) WARNING: collected information for key multiple times: '(exporting-libraries #f); values: '(typed/net/ftp) '(typed/net/dns) WARNING: collected information for key multiple times: '(exporting-libraries #f); values: '(typed/net/dns) '(typed/net/cookie) WARNING: collected information for key multiple times: '(exporting-libraries #f); values: '(typed/net/cookie) '(typed/net/cgi) WARNING: collected information for key multiple times: '(exporting-libraries #f); values: '(typed/net/cgi) '(typed/net/base64) WARNING: collected information for key multiple times: '(exporting-libraries #f); values: '(typed/net/base64) '(typed/file) Should those defmodules actually be @racketmodname[]'s or something? Yes, they definitely should be. Thinking about this more, this is wrong -- these should all be `defmodule`, as they're not documented anywhere else. But the warning is a sign that something is going wrong, although I don't know where. What key is being referenced multiple times? Sam _ Racket Developers list: http://lists.racket-lang.org/dev
Re: [racket-dev] [plt] Push #26693: master branch updated
On Tue, Sep 17, 2013 at 9:53 AM, Greg Hendershott greghendersh...@gmail.com wrote: On Tue, Sep 17, 2013 at 8:29 AM, Matthew Flatt mfl...@cs.utah.edu wrote: I think the problem is the way that the release and development version numbers got out of sync for a while. Version 5.3.6 is derived fairly directly from v5.3.4 (and v5.3.5) by adding only a small set of bug-fix patches. Version 5.3.6 has almost nothing that was added in the v5.3.4.x development series. Ah. My (mis)understanding of the process was: My change was accepted and merged to `master` well before 5.3.5 was released, therefore my change will be in 5.3.5. (In fact at the time I thought, that's lucky timing, it will make it into 5.3.5!) But although that seemed to be how it worked for my few previous PRs (e.g. adding Markdown output to Scribble), it's not necessarily true. Is that correct? For the future: Is there something I could/should have done to ensure the change made it to release? (Or, was this just a window where such a change was unlikely to be accepted?) No, unfortunately, not. Because we have been in the middle of the big changes related to the package system, everything except essential bug fixes have not gone into any of the releases. And, FWIW, a more precise characterization of your second paragraph above is my change was accepted and merged to master before the release branch for release X happened. That would usually be sufficient. Robby _ Racket Developers list: http://lists.racket-lang.org/dev
Re: [racket-dev] [plt] Push #26693: master branch updated
On Tue, Sep 17, 2013 at 8:29 AM, Matthew Flatt mfl...@cs.utah.edu wrote: I think the problem is the way that the release and development version numbers got out of sync for a while. Version 5.3.6 is derived fairly directly from v5.3.4 (and v5.3.5) by adding only a small set of bug-fix patches. Version 5.3.6 has almost nothing that was added in the v5.3.4.x development series. Ah. My (mis)understanding of the process was: My change was accepted and merged to `master` well before 5.3.5 was released, therefore my change will be in 5.3.5. (In fact at the time I thought, that's lucky timing, it will make it into 5.3.5!) But although that seemed to be how it worked for my few previous PRs (e.g. adding Markdown output to Scribble), it's not necessarily true. Is that correct? For the future: Is there something I could/should have done to ensure the change made it to release? (Or, was this just a window where such a change was unlikely to be accepted?) The change should certainly have been in any 5.3.900.x or 5.90.x development version, though, so I can't explain how you got an error there. The explanation is I was completely wrong -- it's there. (I got confused last night while running several different versions of Racket on a couple different boxes.) I can see it in the source. Plus here's a quick/dirty test (one that doesn't need to mutate any real IMAP account). The error below is _good_ because it's a contract violation that 0 isn't `imap?`. Whereas on the old version it would have been an arity error, passing 4 to a func expecting 3: Welcome to Racket v5.90.0.9. - (require net/imap) - (imap-append 0 foo foo '()) ; imap-append: contract violation ; expected: imap? ; given: 0 ; in: the 1st argument of ; (-* ;(imap? string? (or/c string? bytes?)) ;((listof ; (or/c ; 'seen ; 'answered ; 'flagged ; 'deleted ; 'draft ; 'recent))) ;void?) ; contract from: pkgs/net-lib/net/imap.rkt ; blaming: top-level ; at: pkgs/net-lib/net/imap.rkt:21.2 tl;dr The change is definitely in HEAD. _ Racket Developers list: http://lists.racket-lang.org/dev
Re: [racket-dev] racket segfaults during raco setup on OpenBSD
Matthew Flatt wrote: Thanks! The pull request is now merged. I just tried it and it failed the same way as before. I'll install the devel/libffi package tomorrow and see how that goes. Philippe _ Racket Developers list: http://lists.racket-lang.org/dev