That seems like a fair summary and since my preference is clearly the minority one, I'm happy to stick with 'make as-is'. The new mode for pulling updates will help, as well.
Sam On Wed, Feb 18, 2015, 7:52 AM Matthew Flatt <[email protected]> wrote: > At Tue, 17 Feb 2015 19:59:38 -0500, Sam Tobin-Hochstadt wrote: > > On Tue, Feb 17, 2015 at 6:41 PM, Matthew Flatt <[email protected]> > wrote: > > > At Tue, 17 Feb 2015 14:12:54 -0500, Sam Tobin-Hochstadt wrote: > > > Does another system have a Racket-like in-place option (that works > > > better)? > > > > I haven't used it, but GHC has an in-place build option where you can > > install packages; see [1]. > > I don't have a lot of experience with GHC, but I have talked to some > GHC and Cabal developers about how they work with the package system. > Those discussions did not lead me to believe that they have an > especially smooth system for working with packages and updates in-place > --- and, in particular, that it's not the way they normally work. I'd > be happy to hear more from someone who routinely works that way with > GHC, though. > > > I think the closer analogy is to what other software does when you run > > both `make` and `make install` analagous to Racket's unix-style > > installation, since that's the recommended way of building (eg > > Python), just as in-place is the recommended way of building Racket > > from source. I don't think any of those systems update packages when > > running `make install`. > > I'm not sure what you're getting at here. We seem to agree that the > usual `make` plus `make install` is like Racket's `make unix-style`, > neither of which updates packages (other than the ones the makefile > knows about). > > > > > At Tue, 17 Feb 2015 17:40:36 -0500, Matthias Felleisen wrote: > > >> Speaking as the user I am, I really like it that make updates > > >> my extra-pkgs. > > > > > > Package scope provides one a way to get these different behaviors. The > > > current `make` updates only packages that are in installation scope, > > > and it also sets installation scope to be the default, so that's why > > > `make` tends to update everything that is installed. Maybe Sam should > > > install additional packages in user scope, and then `make` won't try to > > > update them. > > > > I expect that the packages that update for Matthias on `make` are > > packages in "main-distribution" > > Ah, no. I've helped Matthias when problems break his installation, I've > noticed that he installs packages not in "main-distribution" (e.g., > "marketplace"), and I believe he really does want those updated. > > I had that context in mind but didn't think to spell it out as I should > have. > > > > As an aside, the reason I don't install in user scope is that I switch > > between Racket implementations regularly, which would lead to > > out-of-date zo errors for all my user packages (instead, I get > > multiple copies of the packages). > > You can give each installation a different name (using `raco pkg config > --set name ...`) to avoid the collision. That would be an extra step in > setting up each new installation, though. > > > I don't have a strong opinion on whether `make` should update packages > outside of "main-distribution", but the feedback I'm getting is > > * Sam doesn't think they should be updated --- but he also doesn't > want packages in "main-distribution" updated, so he's going to use > `make as-is`. > > * Everyone else who has spoken up seems to prefer an updating `make`, > so far. > > -- You received this message because you are subscribed to the Google Groups "Racket Developers" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To post to this group, send email to [email protected]. To view this discussion on the web visit https://groups.google.com/d/msgid/racket-dev/CAK%3DHD%2BbRiPnX%3DuWH2x6UjQTzkEZn5nR-UNb-9Bka8wvZHBx-GA%40mail.gmail.com. For more options, visit https://groups.google.com/d/optout.

