comonicon / Comonicon.jl

Your best CLI generator in JuliaLang
https://comonicon.org
MIT License
282 stars 25 forks source link

[BUG] Unable to build app/sysimg or "binary" from FakePkg #284

Open psteinb opened 1 month ago

psteinb commented 1 month ago

Describe the bug

As I am struggling to build a sysimg for my app, I resorted to the examples folder. The FakePkg project is somewhat close to my application, so I started there. I added the following code to build.jl in the deps folder:

using FakePkg; FakePkg.comonicon_install()

To my surprise, if I then launch: julia --project deps/build.jl sysimg julia runs through without any errors, but no sysimg can be detected on my system. Moreover, actually neither sysimg nor apps does work. It would be great if anyone could reproduce.

Version of the package: run Pkg.status() under your environment that uses Comonicon

Project FakePkg v0.1.0
Status `~/development/Comonicon.jl/example/FakePkg/Project.toml`
  [863f3e99] Comonicon v1.0.8
  [ff7dd447] FromFile v0.1.5
  [14b8a8f1] PkgTemplates v0.7.51
  [8dfed614] Test

To Reproduce Steps to reproduce the behavior:

  1. git clone the Comonicon repo.
  2. cd example/FakePkg
  3. create deps/build.jl with using FakePkg; FakePkg.comonicon_install() contained in it
  4. run julia --project deps/build.jl sysimg

Expected behavior

I find libpkg.so or similar in deps.

Screenshots

julia --project deps/build.jl install works just fine:

$ julia --project deps/build.jl install
  Activating project at `~/.julia/scratchspaces/67988841-259b-4ecf-8960-64f0a83d6ebd/env`
   Resolving package versions...
    Updating `~/.julia/scratchspaces/67988841-259b-4ecf-8960-64f0a83d6ebd/env/Project.toml`
  [67988841] + FakePkg v0.1.0 `~/development/Comonicon.jl/example/FakePkg`
    Updating `~/.julia/scratchspaces/67988841-259b-4ecf-8960-64f0a83d6ebd/env/Manifest.toml`
  [67988841] + FakePkg v0.1.0 `~/development/Comonicon.jl/example/FakePkg`
    Updating registry at `~/.julia/registries/General.toml`
  No Changes to `~/.julia/scratchspaces/67988841-259b-4ecf-8960-64f0a83d6ebd/env/Project.toml`
  No Changes to `~/.julia/scratchspaces/67988841-259b-4ecf-8960-64f0a83d6ebd/env/Manifest.toml`
  Activating project at `~/development/Comonicon.jl/example/FakePkg`
[ Info: creating .julia/bin
  Activating project at `/tmp/jl_5FK21Q`
   Resolving package versions...
    Updating `/tmp/jl_5FK21Q/Project.toml`
  [67988841] + FakePkg v0.1.0 `~/development/Comonicon.jl/example/FakePkg`
    Updating `/tmp/jl_5FK21Q/Manifest.toml`
  [67988841] + FakePkg v0.1.0 `~/development/Comonicon.jl/example/FakePkg`
  No Changes to `/tmp/jl_5FK21Q/Project.toml`
  No Changes to `/tmp/jl_5FK21Q/Manifest.toml`
  Activating project at `~/development/Comonicon.jl/example/FakePkg`
[ Info: PackageCompiler: Executing /home/steinb95/development/Comonicon.jl/example/FakePkg/deps/precompile.jl => /tmp/jl_packagecompiler_oAVqte/jl_Ba4aLK
[ Info: PackageCompiler: Done
✔ [02m:55s] PackageCompiler: compiling incremental system image
[ Info: creating .julia/completions

julia --project deps/build.jl sysimg works just fine, but nothing is created in folder deps (see Comonicon.toml):

$ julia --project deps/build.jl sysimg                                                          
  Activating project at `/tmp/jl_8qm10n`
   Resolving package versions...
    Updating `/tmp/jl_8qm10n/Project.toml`
  [67988841] + FakePkg v0.1.0 `~/development/Comonicon.jl/example/FakePkg`
    Updating `/tmp/jl_8qm10n/Manifest.toml`
  [67988841] + FakePkg v0.1.0 `~/development/Comonicon.jl/example/FakePkg`
    Updating registry at `~/.julia/registries/General.toml`
  No Changes to `/tmp/jl_8qm10n/Project.toml`
  No Changes to `/tmp/jl_8qm10n/Manifest.toml`
  Activating project at `~/development/Comonicon.jl/example/FakePkg`
[ Info: PackageCompiler: Executing /home/steinb95/development/Comonicon.jl/example/FakePkg/deps/precompile.jl => /tmp/jl_packagecompiler_gMcn0G/jl_UtQgQt
[ Info: PackageCompiler: Done
✔ [02m:56s] PackageCompiler: compiling incremental system image