Roger-luo / Ion

Ion - a CLI toolbox for Julia developers

Home Page:https://rogerluo.dev/Ion/

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

release binaries embed build path

simeonschaub opened this issue · comments

Probably not a big issue in practice, but it would be nice if builds were fully relocatable and deterministic. Any ideas where these hardcoded strings might be coming from?

image

$ strings target/release/ion | rg "$(pwd)"
attempt to divide by zeroQuit not allowed in this caseCreate a new packageList available templatesOverwrite existing filesno-interactiveDo not prompt for user inputThe template to useprojectsrc/bin/ion/commands/new.rsTemplate not found, download from registry?name of the projectpath: ion::commands::newInvalid path: No name provided.removing existing directory: project already exists:a mapFatal internal error. Please consider filing a bug report at https://github.com/clap-rs/clap/issues/home/simeon/.cargo/registry/src/github.com-1ecc6299db9ec823/clap-4.1.4/src/parser/matches/arg_matches.rsClone a package from URL or registryurl_or_nameURLThe name/url of the packageThe registry to useforceForce clone to destinationsrc/bin/ion/commands/clone.rsValueEnum::value_variants contains only values with a corresponding ValueEnum::to_possible_value/home/simeon/.cargo/registry/src/github.com-1ecc6299db9ec823/clap-4.1.4/src/builder/value_parser.rsbump the version of a packagesrc/bin/ion/commands/bump.rsbumping version of  in registry ion::commands::bumpcannot find valid Project.tomlNo version provided.garbage collect packages not used for a significant timeGarbage collect the global environmentusing Pkg; Pkg.gc()Precompile all packages in the current environmentsrc/bin/ion/commands/pkg/precompile.rsThe packages to precompilestrictThrow errors if any packages fail to precompilePrecompile the global environmentstrict=truestrict=falseusing Pkg; Pkg.precompile([]; using Pkg; Pkg.precompile(;iona CLI toolbox for Julia developerRoger Luo <rogerluo.rl18@gmail.com>0.1.14unknown subcommand: descriptionstruct PackagePath with 2 elementsinvalid value: missing field `duplicate field `assertion failed: self.next_value.is_none()Unable to read table valuesassertion failed: self.values.next().is_none()$__toml_private_datetimescript toolsupdate the scripts environment by re-initalizing the environmentVerbose modeThe path of the scriptremove a script environmentstart a REPL from the script environmentsrc/bin/ion/commands/script.rsstarting REPL from ion::commands::script--project=creating env for: ion::scriptsrc/ion/script.rsinvalid pathenv: deps are up to dateroot: using Pkg; Pkg.add([])cmd: failed to create environment/home/simeon/Documents/PKGBUILD/ion-jl/src/Ion-0.1.14/src/ion/script.rscannot find parent pathtoml_str:
 data did not match any variant of untagged enum DepdencyInfoscript does not exist: deps: invliad pathenvtemplate managementlist all available templatesupdate the templates from registrydevDevelop packages in the current environmentThe package path to developverboseshow detailed outputallgarbage collect all packages which can not be immediately reached from existing projectdevelop the package in the global environmentusing Pkg; Pkg.develop(Show the status of the current environmentonly show packages that are not on the latest versionno-diffdo not show diff of packages that are not on the latest versionshow the status of the manifest fileshow the status of the global environmentusing Pkg; Pkg.status(;Run a script, or start a REPL if no script is givenPath to the sysimage to usethreadsNUMNumber of threads to useprocessprocsNumber of processes to usequietQuiet startup: no banner, suppress REPL warningscolorOPTEnable or disable color textPath to the script to runsrc/bin/ion/commands/run.rsion::commands::runScript exited with non-zero status code--sysimage=--threads=--quietjulia--projectRunning julia: Julia exited with non-zero status codesubdirrevInvalid version spec/home/simeon/Documents/PKGBUILD/ion-jl/src/Ion-0.1.14/src/ion/utils/julia.rsInvalid Julia version: Julia version @.minJulia command failed/home/simeon/.cargo/registry/src/github.com-1ecc6299db9ec823/clap-4.1.4/src/util/flat_map.rsRunning command: ion::utils::read_commandsrc/ion/utils/read_command.rsFailed to read command []: [Y/n] [y/N] [y/n] > [x]> [ ]  [ ]yes  [x]loginlogin to githublogoutlogout from githubmanage authenticationsrc/bin/ion/commands/auth.rsurl: ion::clonerepo: /home/simeon/Documents/PKGBUILD/ion-jl/src/Ion-0.1.14/src/ion/clone.rsinvalid URLMismatch between definition and access of ``. /home/simeon/.cargo/registry/src/github.com-1ecc6299db9ec823/clap-4.1.4/src/parser/error.rscompletionsgenerate shell completion scriptsSHELLThe shell to generate completions forNo shell providedaddAdd dependencies to current environmentPACKAGEUnexpected action src/bin/ion/commands/pkg/add.rsThe package to addglobalAdd the package to the global environmentusing Pkg; Pkg.add(removermRemove dependencies in the current environmentsrc/bin/ion/commands/pkg/remove.rsThe package to removeRemove the package in the global environmentusing Pkg; Pkg.rm(releaserelease a new version of a packageVERSIONThe version to releaseThe path of the packagebranchBRANCHThe branch to releaseThe registry to releaseGeneralno-promptDo not prompt for confirmationno-commitDo not commit changesno-reportDo not report changesskip-noteSkip interactive release note editingclonesummonnewrundevelopprecompilestatusupdatewhyPrefixLenError/home/simeon/.cargo/registry/src/github.com-1ecc6299db9ec823/ipnet-2.7.1/src/parser.rsassertion failed: head.len() + tail.len() <= 8Crypto error: UTF-8 error: JSON error: Base64 error: Missing required claim: RSA key invalid: CryptoBase64ImmatureSignatureInvalidSubjectInvalidAudienceInvalidIssuerMissingRequiredClaimInvalidAlgorithmNameInvalidRsaKeyInvalidEcdsaKeyInvalidTokenOFFERRORDEBUGTRACE/home/simeon/.cargo/registry/src/github.com-1ecc6299db9ec823/log-0.4.17/src/lib.rsSetLoggerError/home/simeon/.cargo/registry/src/github.com-1ecc6299db9ec823/memchr-2.5.0/src/memmem/rarebytes.rs743210/.-g
/home/simeon/Documents/PKGBUILD/ion-jl/src/Ion-0.1.14/target/release/build/openssl-sys-fe188e5bdc8c1b7b/out/openssl-build/install/lib/engines-1.1

this is not expected and is a bit strange, it seems to be the source file path, so I suspect this is because some of the methods will panic, and I also insert a bunch of debug logs and thus encode a backtrace somewhere causing the binary contains the build path in an error message. I guess this is probably because of that. Ideally, if we handle all the errors and rewrap that in CliError no backtrace will be printed. But I think this is useful for now as it's still in early stage so gonna be easier to trace a bug report with RUST_LOG=debug.