Giter Site home page Giter Site logo

Comments (8)

SuzanneSoy avatar SuzanneSoy commented on June 19, 2024

The only call to make-directory in cm.rkt is:

    (with-compiler-security-guard (make-directory* code-dir))

And @rfindler changed code-dir's definition recently, maybe it's related to that change?

from drracket.

rfindler avatar rfindler commented on June 19, 2024

Yes, definitely related.

Is this a snapshot build?

from drracket.

SuzanneSoy avatar SuzanneSoy commented on June 19, 2024

@rfindler Yes, a source build of https://plt.eecs.northwestern.edu/snapshots/current/installers/racket-test-6.4.0.15-src.tgz, the bug occurs with the pre-built-packages tarball too.

from drracket.

rfindler avatar rfindler commented on June 19, 2024

I've pushed something that just gives up trying to put .zo files into directories that are not writeable. This seems like it can get into trouble if you ever open and modify a file that one of those files depends on (as those .zo files will be wrong and yet still used), and this can happen if you do something like "raco pkg update --clone " of some pkg where you put the cloned version of it in a writeable place. But hopefully that's not what's happening here.

Here's the commit. Tomorrow's build should have it and in the meantime you can uncheck the language dialogs "populate compiled directories" checkbox (click "show details" to make it appear).

7373295

from drracket.

rfindler avatar rfindler commented on June 19, 2024

(I've closed this, but feel free to re-open if there are further problems.)

from drracket.

SuzanneSoy avatar SuzanneSoy commented on June 19, 2024

Thanks! I'll try it when it comes out.

from drracket.

SuzanneSoy avatar SuzanneSoy commented on June 19, 2024

@rfindler: The problem is still there with today's nightly (20160403-794061b), but it got worse as now even #lang racket and #lang racket/base don't work. They both give the following error:

../../nix/store/w2y4qp7dmjy4g4hsxcz411qy2m6y6b3g-racket-6.4.0.15/share/racket/collects/compiler/cm.rkt:358:0: make-directory: cannot make directory
  path: /nix/store/w2y4qp7dmjy4g4hsxcz411qy2m6y6b3g-racket-6.4.0.15/share/racket/collects/racket/compiled/drracket
  system error: Read-only file system; errno=30

The directory is read-only, though, as reported by ls:

> ls -ld /nix/store/w2y4qp7dmjy4g4hsxcz411qy2m6y6b3g-racket-6.4.0.15/share/racket/collects/racket/compiled/                                                                                                             ~
dr-xr-xr-x 2 root nixbld 8192 1970-01-01 01:00 /nix/store/w2y4qp7dmjy4g4hsxcz411qy2m6y6b3g-racket-6.4.0.15/share/racket/collects/racket/compiled/
> ls -ld /nix/store/w2y4qp7dmjy4g4hsxcz411qy2m6y6b3g-racket-6.4.0.15/share/racket/collects/racket/                                                                                                                      ~
dr-xr-xr-x 15 root nixbld 4096 1970-01-01 01:00 /nix/store/w2y4qp7dmjy4g4hsxcz411qy2m6y6b3g-racket-6.4.0.15/share/racket/collects/racket/

If I uncheck "Populate compiled/ directories", it works fine. Won't this cause poor performance, though? Shouldn't DrRacket use the already-populated 'compiled/' directories, if it can't populate compiled/drracket?

from drracket.

rfindler avatar rfindler commented on June 19, 2024

Wow, I sure messed that commit up! I've tried again, this time with better testing. Hopefully it won't make things worse this time.

from drracket.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.