Skip to content

Comments

Add Julia Pkg app support for ROMEO#9

Draft
Copilot wants to merge 4 commits intomasterfrom
copilot/create-julia-pkg-app
Draft

Add Julia Pkg app support for ROMEO#9
Copilot wants to merge 4 commits intomasterfrom
copilot/create-julia-pkg-app

Conversation

Copy link

Copilot AI commented Dec 4, 2025

Enables installation and usage of ROMEO as a command-line tool via Julia's Pkg app system, eliminating the need to manually download and manage the romeo.jl script.

Changes

  • Added bin/romeo executable: Entry point that loads extension dependencies and invokes unwrapping_main(ARGS)

  • Fixed Project.toml: Removed ArgParse and MriResearchTools from [weakdeps] section. Having packages in both [deps] and [weakdeps] caused Julia to treat them as weakdeps only, breaking the app installation

  • Updated documentation: Added app installation guide and updated README to feature Pkg app installation as the primary method

Usage

Install:

julia -e 'using Pkg; Pkg.add("ROMEO", app=true)'

Run:

romeo --phase phase.nii.gz --magnitude mag.nii.gz --output unwrapped.nii.gz

The existing romeo.jl script remains available for users who prefer manual installation.

Warning

Firewall rules blocked me from connecting to one or more addresses (expand for details)

I tried to connect to the following addresses, but was blocked by firewall rules:

  • https://api.github.com/repos/JuliaArrays/ArrayInterface.jl/tarball/d81ae5489e13bc03567d4fbbb06c546a5e53c857
    • Triggering command: /usr/bin/julia julia --project=. -e using Pkg; Pkg.test() (http block)
  • https://api.github.com/repos/JuliaArrays/MappedArrays.jl/tarball/2dab0221fe2b0f2cb6754eaa743cc266339f527e
    • Triggering command: /usr/bin/julia julia --project=. -e using Pkg; Pkg.test() (http block)
  • https://api.github.com/repos/JuliaArrays/MosaicViews.jl/tarball/7b86a5d4d70a9f5cdf2dacb3cbe6d251d1a61dbe
    • Triggering command: /usr/bin/julia julia --project=. -e using Pkg; Pkg.test() (http block)
  • https://api.github.com/repos/JuliaArrays/OffsetArrays.jl/tarball/117432e406b5c023f665fa73dc26e79ec3630151
    • Triggering command: /usr/bin/julia julia --project=. -e using Pkg; Pkg.test() (http block)
  • https://api.github.com/repos/JuliaArrays/PaddedViews.jl/tarball/0fac6313486baae819364c52b4f483450a9d793f
    • Triggering command: /usr/bin/julia julia --project=. -e using Pkg; Pkg.test() (http block)
  • https://api.github.com/repos/JuliaArrays/StackViews.jl/tarball/be1cf4eb0ac528d96f5115b4ed80c26a8d8ae621
    • Triggering command: /usr/bin/julia julia --project=. -e using Pkg; Pkg.test() (http block)
  • https://api.github.com/repos/JuliaArrays/StaticArrayInterface.jl/tarball/96381d50f1ce85f2663584c8e886a6ca97e60554
    • Triggering command: /usr/bin/julia julia --project=. -e using Pkg; Pkg.test() (http block)
  • https://api.github.com/repos/JuliaArrays/StaticArrays.jl/tarball/b8693004b385c842357406e3af647701fe783f98
    • Triggering command: /usr/bin/julia julia --project=. -e using Pkg; Pkg.test() (http block)
  • https://api.github.com/repos/JuliaArrays/StaticArraysCore.jl/tarball/6ab403037779dae8c514bad259f32a447262455a
    • Triggering command: /usr/bin/julia julia --project=. -e using Pkg; Pkg.test() (http block)
  • https://api.github.com/repos/JuliaArrays/TiledIteration.jl/tarball/1176cc31e867217b06928e2f140c90bd1bc88283
    • Triggering command: /usr/bin/julia julia --project=. -e using Pkg; Pkg.test() (http block)
  • https://api.github.com/repos/JuliaBinaryWrappers/FFTW_jll.jl/tarball/6d6219a004b8cf1e0b4dbe27a2860b8e04eba0be
    • Triggering command: /usr/bin/julia julia --project=. -e using Pkg; Pkg.test() (http block)
  • https://api.github.com/repos/JuliaBinaryWrappers/IntelOpenMP_jll.jl/tarball/ec1debd61c300961f98064cfb21287613ad7f303
    • Triggering command: /usr/bin/julia julia --project=. -e using Pkg; Pkg.test() (http block)
  • https://api.github.com/repos/JuliaBinaryWrappers/MKL_jll.jl/tarball/282cadc186e7b2ae0eeadbd7a4dffed4196ae2aa
    • Triggering command: /usr/bin/julia julia --project=. -e using Pkg; Pkg.test() (http block)
  • https://api.github.com/repos/JuliaBinaryWrappers/oneTBB_jll.jl/tarball/1350188a69a6e46f799d3945beef36435ed7262f
    • Triggering command: /usr/bin/julia julia --project=. -e using Pkg; Pkg.test() (http block)
  • https://api.github.com/repos/JuliaCI/BenchmarkTools.jl/tarball/7fecfb1123b8d0232218e2da0c213004ff15358d
    • Triggering command: /usr/bin/julia julia --project=. -e using Pkg; Pkg.test() (http block)
  • https://api.github.com/repos/JuliaCollections/DataStructures.jl/tarball/4e1fe97fdaed23e9dc21d4d664bea76b65fc50a0
    • Triggering command: /usr/bin/julia julia --project=. -e using Pkg; Pkg.test() (http block)
  • https://api.github.com/repos/JuliaCollections/DataStructures.jl/tarball/e357641bb3e0638d353c4b29ea0e40ea644066a6
    • Triggering command: /usr/bin/julia julia --project=. -e using Pkg; Pkg.instantiate(); Pkg.status() (http block)
  • https://api.github.com/repos/JuliaCollections/OrderedCollections.jl/tarball/05868e21324cede2207c6f0f466b4bfef6d5e7ee
    • Triggering command: /usr/bin/julia julia --project=. -e using Pkg; Pkg.instantiate(); Pkg.status() (http block)
  • https://api.github.com/repos/JuliaCollections/SortingAlgorithms.jl/tarball/64d974c2e6fdf07f8155b5b2ca2ffa9069b608d9
    • Triggering command: /usr/bin/julia julia --project=. -e using Pkg; Pkg.instantiate(); Pkg.status() (http block)
  • https://api.github.com/repos/JuliaData/DataAPI.jl/tarball/abe83f3a2f1b857aac70ef8b269080af17764bbe
    • Triggering command: /usr/bin/julia julia --project=. -e using Pkg; Pkg.instantiate(); Pkg.status() (http block)
  • https://api.github.com/repos/JuliaData/Missings.jl/tarball/ec4f7fbeab05d7747bdf98eb74d130a2a2ed298d
    • Triggering command: /usr/bin/julia julia --project=. -e using Pkg; Pkg.instantiate(); Pkg.status() (http block)
  • https://api.github.com/repos/JuliaData/Parsers.jl/tarball/7d2f8f21da5db6a806faf7b9b292296da42b2810
    • Triggering command: /usr/bin/julia julia --project=. -e using Pkg; Pkg.test() (http block)
  • https://api.github.com/repos/JuliaDiff/ChainRulesCore.jl/tarball/e4c6a16e77171a5f5e25e9646617ab1c276c5607
    • Triggering command: /usr/bin/julia julia --project=. -e using Pkg; Pkg.test() (http block)
  • https://api.github.com/repos/JuliaDocs/DocStringExtensions.jl/tarball/7442a5dfe1ebb773c29cc2962a8980f47221d76c
    • Triggering command: /usr/bin/julia julia --project=. -e using Pkg; Pkg.instantiate(); Pkg.status() (http block)
  • https://api.github.com/repos/JuliaGPU/Adapt.jl/tarball/7e35fca2bdfba44d797c53dfe63a51fabf39bfc0
    • Triggering command: /usr/bin/julia julia --project=. -e using Pkg; Pkg.test() (http block)
  • https://api.github.com/repos/JuliaGraphics/ColorTypes.jl/tarball/67e11ee83a43eb71ddc950302c53bf33f0690dfe
    • Triggering command: /usr/bin/julia julia --project=. -e using Pkg; Pkg.test() (http block)
  • https://api.github.com/repos/JuliaGraphics/ColorVectorSpace.jl/tarball/8b3b6f87ce8f65a2b4f857528fd8d70086cd72b1
    • Triggering command: /usr/bin/julia julia --project=. -e using Pkg; Pkg.test() (http block)
  • https://api.github.com/repos/JuliaGraphics/Colors.jl/tarball/37ea44092930b1811e666c3bc38065d7d87fcc74
    • Triggering command: /usr/bin/julia julia --project=. -e using Pkg; Pkg.test() (http block)
  • https://api.github.com/repos/JuliaIO/CodecZlib.jl/tarball/962834c22b66e32aa10f7611c08c8ca4e20749a9
    • Triggering command: /usr/bin/julia julia --project=. -e using Pkg; Pkg.test() (http block)
  • https://api.github.com/repos/JuliaIO/JSON.jl/tarball/5b6bb73f555bc753a6153deec3717b8904f5551c
    • Triggering command: /usr/bin/julia julia --project=. -e using Pkg; Pkg.test() (http block)
  • https://api.github.com/repos/JuliaIO/TranscodingStreams.jl/tarball/9a6ae7ed916312b41236fcef7e0af564ef934769
    • Triggering command: /usr/bin/julia julia --project=. -e using Pkg; Pkg.test() (http block)
  • https://api.github.com/repos/JuliaImages/ImageCore.jl/tarball/8c193230235bbcee22c8066b0374f63b5683c2d3
    • Triggering command: /usr/bin/julia julia --project=. -e using Pkg; Pkg.test() (http block)
  • https://api.github.com/repos/JuliaImages/ImageMorphology.jl/tarball/cffa21df12f00ca1a365eb8ed107614b40e8c6da
    • Triggering command: /usr/bin/julia julia --project=. -e using Pkg; Pkg.test() (http block)
  • https://api.github.com/repos/JuliaLang/Compat.jl/tarball/9d8a54ce4b17aa5bdce0ea5c34bc5e7c340d16ad
    • Triggering command: /usr/bin/julia julia --project=. -e using Pkg; Pkg.test() (http block)
  • https://api.github.com/repos/JuliaLang/PrecompileTools.jl/tarball/07a921781cab75691315adc645096ed5e370cb77
    • Triggering command: /usr/bin/julia julia --project=. -e using Pkg; Pkg.test() (http block)
  • https://api.github.com/repos/JuliaLinearAlgebra/WoodburyMatrices.jl/tarball/c1a7aa6219628fcd757dede0ca95e245c5cd9511
    • Triggering command: /usr/bin/julia julia --project=. -e using Pkg; Pkg.test() (http block)
  • https://api.github.com/repos/JuliaMath/AbstractFFTs.jl/tarball/d92ad398961a3ed262d8bf04a1a2b8340f915fef
    • Triggering command: /usr/bin/julia julia --project=. -e using Pkg; Pkg.test() (http block)
  • https://api.github.com/repos/JuliaMath/FFTW.jl/tarball/97f08406df914023af55ade2f843c39e99c5d969
    • Triggering command: /usr/bin/julia julia --project=. -e using Pkg; Pkg.test() (http block)
  • https://api.github.com/repos/JuliaMath/FixedPointNumbers.jl/tarball/05882d6995ae5c12bb5f36dd2ed3f61c98cbb172
    • Triggering command: /usr/bin/julia julia --project=. -e using Pkg; Pkg.test() (http block)
  • https://api.github.com/repos/JuliaMath/Interpolations.jl/tarball/88a101217d7cb38a7b481ccd50d21876e1d1b0e0
    • Triggering command: /usr/bin/julia julia --project=. -e using Pkg; Pkg.test() (http block)
  • https://api.github.com/repos/JuliaMath/IrrationalConstants.jl/tarball/b2d91fe939cae05960e760110b328288867b5758
    • Triggering command: /usr/bin/julia julia --project=. -e using Pkg; Pkg.instantiate(); Pkg.status() (http block)
  • https://api.github.com/repos/JuliaMath/TensorCore.jl/tarball/1feb45f88d133a655e001435632f019a9a1bcdb6
    • Triggering command: /usr/bin/julia julia --project=. -e using Pkg; Pkg.test() (http block)
  • https://api.github.com/repos/JuliaNeuroscience/NIfTI.jl/tarball/2abf5a4ecf4682abd8991900ea259aaf737c303b
    • Triggering command: /usr/bin/julia julia --project=. -e using Pkg; Pkg.test() (http block)
  • https://api.github.com/repos/JuliaPackaging/JLLWrappers.jl/tarball/0533e564aae234aff59ab625543145446d8b6ec2
    • Triggering command: /usr/bin/julia julia --project=. -e using Pkg; Pkg.test() (http block)
  • https://api.github.com/repos/JuliaPackaging/Preferences.jl/tarball/0f27480397253da18fe2c12a4ba4eb9eb208bf3d
    • Triggering command: /usr/bin/julia julia --project=. -e using Pkg; Pkg.test() (http block)
  • https://api.github.com/repos/JuliaPackaging/Requires.jl/tarball/62389eeff14780bfe55195b7204c0d8738436d64
    • Triggering command: /usr/bin/julia julia --project=. -e using Pkg; Pkg.test() (http block)
  • https://api.github.com/repos/JuliaSIMD/BitTwiddlingConvenienceFunctions.jl/tarball/f21cfd4950cb9f0587d5067e69405ad2acd27b87
    • Triggering command: /usr/bin/julia julia --project=. -e using Pkg; Pkg.test() (http block)
  • https://api.github.com/repos/JuliaSIMD/CPUSummary.jl/tarball/f3a21d7fc84ba618a779d1ed2fcca2e682865bab
    • Triggering command: /usr/bin/julia julia --project=. -e using Pkg; Pkg.test() (http block)
  • https://api.github.com/repos/JuliaSIMD/CloseOpenIntervals.jl/tarball/05ba0d07cd4fd8b7a39541e31a7b0254704ea581
    • Triggering command: /usr/bin/julia julia --project=. -e using Pkg; Pkg.test() (http block)
  • https://api.github.com/repos/JuliaSIMD/HostCPUFeatures.jl/tarball/8e070b599339d622e9a081d17230d74a5c473293
    • Triggering command: /usr/bin/julia julia --project=. -e using Pkg; Pkg.test() (http block)
  • https://api.github.com/repos/JuliaSIMD/LayoutPointers.jl/tarball/a9eaadb366f5493a5654e843864c13d8b107548c
    • Triggering command: /usr/bin/julia julia --project=. -e using Pkg; Pkg.test() (http block)
  • https://api.github.com/repos/JuliaSIMD/LoopVectorization.jl/tarball/a9fc7883eb9b5f04f46efb9a540833d1fad974b3
    • Triggering command: /usr/bin/julia julia --project=. -e using Pkg; Pkg.test() (http block)
  • https://api.github.com/repos/JuliaSIMD/ManualMemory.jl/tarball/bcaef4fc7a0cfe2cba636d84cda54b5e4e4ca3cd
    • Triggering command: /usr/bin/julia julia --project=. -e using Pkg; Pkg.test() (http block)
  • https://api.github.com/repos/JuliaSIMD/PolyesterWeave.jl/tarball/645bed98cd47f72f67316fd42fc47dee771aefcd
    • Triggering command: /usr/bin/julia julia --project=. -e using Pkg; Pkg.test() (http block)
  • https://api.github.com/repos/JuliaSIMD/SIMDTypes.jl/tarball/330289636fb8107c5f32088d2741e9fd7a061a5c
    • Triggering command: /usr/bin/julia julia --project=. -e using Pkg; Pkg.test() (http block)
  • https://api.github.com/repos/JuliaSIMD/SLEEFPirates.jl/tarball/456f610ca2fbd1c14f5fcf31c6bfadc55e7d66e0
    • Triggering command: /usr/bin/julia julia --project=. -e using Pkg; Pkg.test() (http block)
  • https://api.github.com/repos/JuliaSIMD/ThreadingUtilities.jl/tarball/d969183d3d244b6c33796b5ed01ab97328f2db85
    • Triggering command: /usr/bin/julia julia --project=. -e using Pkg; Pkg.test() (http block)
  • https://api.github.com/repos/JuliaSIMD/VectorizationBase.jl/tarball/d1d9a935a26c475ebffd54e9c7ad11627c43ea85
    • Triggering command: /usr/bin/julia julia --project=. -e using Pkg; Pkg.test() (http block)
  • https://api.github.com/repos/JuliaServices/StructUtils.jl/tarball/79529b493a44927dd5b13dde1c7ce957c2d049e4
    • Triggering command: /usr/bin/julia julia --project=. -e using Pkg; Pkg.test() (http block)
  • https://api.github.com/repos/JuliaStats/LogExpFunctions.jl/tarball/13ca9e2586b89836fd20cccf56e57e2b9ae7f38f
    • Triggering command: /usr/bin/julia julia --project=. -e using Pkg; Pkg.instantiate(); Pkg.status() (http block)
  • https://api.github.com/repos/JuliaStats/Statistics.jl/tarball/ae3bb1eb3bba077cd276bc5cfc337cc65c3075c0
    • Triggering command: /usr/bin/julia julia --project=. -e using Pkg; Pkg.instantiate(); Pkg.status() (http block)
  • https://api.github.com/repos/JuliaStats/StatsAPI.jl/tarball/178ed29fd5b2a2cfc3bd31c13375ae925623ff36
    • Triggering command: /usr/bin/julia julia --project=. -e using Pkg; Pkg.instantiate(); Pkg.status() (http block)
  • https://api.github.com/repos/JuliaStats/StatsBase.jl/tarball/064b532283c97daae49e544bb9cb413c26511f8c
    • Triggering command: /usr/bin/julia julia --project=. -e using Pkg; Pkg.instantiate(); Pkg.status() (http block)
  • https://api.github.com/repos/LilithHafner/AliasTables.jl/tarball/9876e1e164b144ca45e9e3198d0b689cadfed9ff
    • Triggering command: /usr/bin/julia julia --project=. -e using Pkg; Pkg.instantiate(); Pkg.status() (http block)
  • https://api.github.com/repos/LilithHafner/PtrArrays.jl/tarball/1d36ef11a9aaf1e8b74dacc6a731dd1de8fd493d
    • Triggering command: /usr/bin/julia julia --project=. -e using Pkg; Pkg.instantiate(); Pkg.status() (http block)
  • https://api.github.com/repos/SciML/CommonWorldInvalidations.jl/tarball/ae52d1c52048455e85a387fbee9be553ec2b68d0
    • Triggering command: /usr/bin/julia julia --project=. -e using Pkg; Pkg.test() (http block)
  • https://api.github.com/repos/SciML/IfElse.jl/tarball/debdd00ffef04665ccbb3e150747a77560e8fad1
    • Triggering command: /usr/bin/julia julia --project=. -e using Pkg; Pkg.test() (http block)
  • https://api.github.com/repos/SciML/SciMLPublic.jl/tarball/ed647f161e8b3f2973f24979ec074e8d084f1bee
    • Triggering command: /usr/bin/julia julia --project=. -e using Pkg; Pkg.test() (http block)
  • https://api.github.com/repos/SciML/Static.jl/tarball/49440414711eddc7227724ae6e570c7d5559a086
    • Triggering command: /usr/bin/julia julia --project=. -e using Pkg; Pkg.test() (http block)
  • https://api.github.com/repos/carlobaldassi/ArgParse.jl/tarball/22cf435ac22956a7b45b0168abbc871176e7eecc
    • Triggering command: /usr/bin/julia julia --project=. -e using Pkg; Pkg.test() (http block)
  • https://api.github.com/repos/carlobaldassi/TextWrap.jl/tarball/43044b737fa70bc12f6105061d3da38f881a3e3c
    • Triggering command: /usr/bin/julia julia --project=. -e using Pkg; Pkg.test() (http block)
  • https://api.github.com/repos/emmt/EasyRanges.jl/tarball/ae17a2d226b6aeb45b30cf1a5c0bf5ce04e696d2
    • Triggering command: /usr/bin/julia julia --project=. -e using Pkg; Pkg.test() (http block)
  • https://api.github.com/repos/emmt/LocalFilters.jl/tarball/282d6ae5cba87b846b1cd5caf46c5ccf3edeaded
    • Triggering command: /usr/bin/julia julia --project=. -e using Pkg; Pkg.test() (http block)
  • https://api.github.com/repos/emmt/StructuredArrays.jl/tarball/e61528aa68934e051069941f142193ff34bd61fc
    • Triggering command: /usr/bin/julia julia --project=. -e using Pkg; Pkg.test() (http block)
  • https://api.github.com/repos/emmt/TypeUtils.jl/tarball/99c80f6db951c7fbb881f3e830ffa6038f08b6e6
    • Triggering command: /usr/bin/julia julia --project=. -e using Pkg; Pkg.test() (http block)
  • https://api.github.com/repos/korbinian90/MriResearchTools.jl/tarball/305b1282e5e5eb44f84c5fc13affcb36f52ec13a
    • Triggering command: /usr/bin/julia julia --project=. -e using Pkg; Pkg.test() (http block)
  • https://api.github.com/repos/m-j-w/CpuId.jl/tarball/fcbb72b032692610bfbdb15018ac16a36cf2e406
    • Triggering command: /usr/bin/julia julia --project=. -e using Pkg; Pkg.test() (http block)
  • https://api.github.com/repos/mauro3/UnPack.jl/tarball/387c1f73762231e86e0c9c5443ce3b4a0a9a0c2b
    • Triggering command: /usr/bin/julia julia --project=. -e using Pkg; Pkg.test() (http block)
  • https://api.github.com/repos/simonster/Reexport.jl/tarball/45e428421666073eab6f2da5c9d310d99bb12f9b
    • Triggering command: /usr/bin/julia julia --project=. -e using Pkg; Pkg.test() (http block)
  • https://api.github.com/repos/timholy/AxisAlgorithms.jl/tarball/01b8ccb13d68535d73d2b0c23e39bd23155fb712
    • Triggering command: /usr/bin/julia julia --project=. -e using Pkg; Pkg.test() (http block)
  • https://api.github.com/repos/timholy/Ratios.jl/tarball/1342a47bf3260ee108163042310d26f2be5ec90b
    • Triggering command: /usr/bin/julia julia --project=. -e using Pkg; Pkg.test() (http block)
  • pkg.julialang.org
    • Triggering command: /usr/bin/julia julia --project=. -e using Pkg; Pkg.instantiate(); Pkg.status() (dns block)
    • Triggering command: /usr/bin/julia julia --project=. -e using Pkg; Pkg.test() (dns block)
    • Triggering command: /usr/local/julia1.12.2/bin/julia /usr/local/julia1.12.2/bin/julia -C native -J/usr/local/julia1.12.2/lib/julia/sys.so -g1 --code-coverage=none --color=yes --check-bounds=yes --warn-overwrite=yes --depwarn=yes --inline=yes --startup-file=no --track-allocation=none --check-bounds=yes --output-o /home/REDACTED/.julia/compiled/v1.12/MKL_jll/jl_PMKtY3 --output-ji /home/REDACTED/.julia/compiled/v1.12/MKL_jll/jl_1B00Uw --output-incremental=yes --startup-file=no (dns block)

If you need me to access, download, or install something from one of these locations, you can either:

Original prompt

This section details on the original issue you should resolve

<issue_title>Create a Julia Pkg app</issue_title>
<issue_description>This package should be installable via PKG.app.add, see https://pkgdocs.julialang.org/dev/apps/

This package already contains a cmd Version using argparse. This function should be the entry point for the PKG app</issue_description>

Comments on the Issue (you are @copilot in this section)


✨ Let Copilot coding agent set things up for you — coding agent works faster and does higher quality work when set up for your repo.

Copilot AI and others added 3 commits December 4, 2025 21:05
Co-authored-by: korbinian90 <1307522+korbinian90@users.noreply.github.com>
Co-authored-by: korbinian90 <1307522+korbinian90@users.noreply.github.com>
Co-authored-by: korbinian90 <1307522+korbinian90@users.noreply.github.com>
Copilot AI changed the title [WIP] Create Julia Pkg app for installation Add Julia Pkg app support for ROMEO Dec 4, 2025
Copilot AI requested a review from korbinian90 December 4, 2025 21:14
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Create a Julia Pkg app

2 participants