Bogdanp / setup-racket

A GH action for installing Racket.
MIT License
49 stars 9 forks source link

raco unrecognized command: test with path extend #49

Closed dannypsnl closed 2 years ago

dannypsnl commented 2 years ago
/usr/bin/raco: Unrecognized command: test

for reference: https://github.com/failed-dragon-slayer/racket-llvm13/runs/4559310622?check_suite_focus=true

Bogdanp commented 2 years ago

I think you need to install compiler-lib to get raco test in a minimal install.

dannypsnl commented 2 years ago

But in my experience that is not required, for reference: https://github.com/racket-tw/k/blob/develop/.github/workflows/test.yml

Bogdanp commented 2 years ago

In that case one of your transitive dependencies is bringing compiler-lib in: https://github.com/racket-tw/k/runs/4545272166?check_suite_focus=true#step:5:60

Here's the definition for the test command: https://github.com/racket/racket/blob/2b514624fbe093bb56c64ef6fd9262493a75d336/pkgs/compiler-lib/compiler/commands/info.rkt#L9

dannypsnl commented 2 years ago

But then how I install compiler-lib in racket-tw/k but not in failed-dragon-slayer/racket-llvm13? Both of them

  1. didn't import compiler-lib
  2. use minimal setup
Bogdanp commented 2 years ago

Follow the dependency graph here:

https://github.com/racket-tw/k/runs/4545272166?check_suite_focus=true#step:5:284

racket-doc depends on compiler-lib, something else depends on racket-doc and so on. That's what I mean by "transitive dependencies."

Bogdanp commented 2 years ago

Also, I think in both cases, you would be much better off not using minimal racket anyway. You're installing many dependencies that you would get "for free" with the regular distribution, so your builds are slower than they could otherwise be.

dannypsnl commented 2 years ago

emmm... I get the point.