I am on this one for too long and can’t fix it yet
A MWE is not productible unfortunately
file RingStarProblems.jl
contains:
module RingStarProblems
if "JULIA_REGISTRYCI_AUTOMERGE" in keys(ENV) && ENV["JULIA_REGISTRYCI_AUTOMERGE"]
else
### Some code
### Some usings
using Gurobi
...
### Some includes
include("options.jl")
...
export Both
end
end
The following works, that’s great! (i.e., git clone then activating the package and launching it)
➜ tmp git clone git@github.com:jkhamphousone/RingStarProblems.jl.git
Cloning into 'RingStarProblems.jl'...
remote: Enumerating objects: 3410, done.
[...] # Some git clone infos
➜ tmp cd RingStarProblems.jl
➜ RingStarProblems.jl git:(main) julia -t auto -q
julia> import Pkg ; Pkg.activate(".") ; using Revise ; import RingStarProblems as RSP
Activating project at `~/Desktop/tmp/RingStarProblems.jl`
Precompiling RingStarProblems
Info Given RingStarProblems was explicitly requested, output will be shown live
[ Info: Loading Revise, Aqua
[ Info: Loading JuMP
[ Info: Loading Gurobi
[...] # Some outputs
julia> pars = RSP.SolverParameters(
solve_mod = RSP.Both(), # ILP, B&BC or Both
sp_solve = RSP.Poly(),
writeresults = RSP.WHTML(), # output results locally, html or no output ""
o_i = 0, # opening costs
s_ij = RSP.Euclidian(), # star costs
r_ij = RSP.Euclidian(), # ring costs
backup_factor = 0.01, # backup_factor c'=0.01c and d'=0.01c
do_plot = false, # plot_results (to debug)
two_opt = 0, # use two_opt heuristic (not functional yet)
tildeV = 100, # uncertain nodes set
timelimit = 120, # Gurobi TL
log_level = 1, # console output log_level
redirect_stdio = false, # redirecting_stdio to output file
F = 183, # total failing time F, see PhD manuscript
use_blossom = false, # use blossom inequalities (not functional yet)
alphas = [3], # See [Labbé et al., 2004](ttps://doi.org/10.1002/net.10114)
nthreads = 4, # Number of threads used in GUROBI, set 0 for maximum number of available threads
ucstrat = 4 # user cut strategy
)
RingStarProblems.SolverParameters
solve_mod: RingStarProblems.Options.SolveMod.Both RingStarProblems.Options.SolveMod.Both()
sp_solve: RingStarProblems.Options.SPSolve.Poly RingStarProblems.Options.SPSolve.Poly()
tildeV: Int64 100
alphas: Array{Int64}((1,)) [3]
F: Float64 183.0
warm_start: Array{Int64}((0,)) Int64[]
inst_trans: Int64 2
ucstrat: Int64 4
ucstrat_limit: Int64 2000
uctolerance: Float64 0.01
timelimit: Int64 120
nthreads: Int64 4
writeresults: RingStarProblems.Options.WResults.WHTML RingStarProblems.Options.WResults.WHTML()
nrand: Int64 0
o_i: Int64 0
s_ij: RingStarProblems.Options.Costs.Euclidian RingStarProblems.Options.Costs.Euclidian()
r_ij: RingStarProblems.Options.Costs.Euclidian RingStarProblems.Options.Costs.Euclidian()
backup_factor: Float64 0.01
nb_runrand: Tuple{Int64, Int64}
two_opt: Int64 0
do_plot: Bool false
log_level: Int64 1
lp_relaxation: Bool false
assert: Bool true
write_log: Bool false
post_procedure: Bool true
F_interval: Tuple{Float64, Float64}
redirect_stdio: Bool false
use_blossom: Bool false
gFreuse_lazycons: Bool true
julia>
While the following doesn’t: (i.e., ] add the package then lauching it)
(@v1.10) pkg> add RingStarProblems
Resolving package versions...
No Changes to `~/.julia/environments/v1.10/Project.toml`
No Changes to `~/.julia/environments/v1.10/Manifest.toml`
Precompiling project...
1 dependency successfully precompiled in 8 seconds. 231 already precompiled.
1 dependency had output during precompilation:
┌ RingStarProblems
│ [ Info: Loading Revise
│ [ Info: Loading JuMP
│ [ Info: Loading Gurobi
...
julia> import RingStarProblems as RSP
julia> pars = RSP.SolverParameters(
solve_mod = RSP.Both(), # ILP, B&BC or Both
sp_solve = RSP.Poly(),
writeresults = RSP.WHTML(), # output results locally, html or no output ""
o_i = 0, # opening costs
s_ij = RSP.Euclidian(), # star costs
r_ij = RSP.Euclidian(), # ring costs
backup_factor = 0.01, # backup_factor c'=0.01c and d'=0.01c
do_plot = false, # plot_results (to debug)
two_opt = 0, # use two_opt heuristic (not functional yet)
tildeV = 100, # uncertain nodes set
timelimit = 120, # Gurobi TL
log_level = 1, # console output log_level
redirect_stdio = false, # redirecting_stdio to output file
F = 183, # total failing time F, see PhD manuscript
use_blossom = false, # use blossom inequalities (not functional yet)
alphas = [3], # See [Labbé et al., 2004](ttps://doi.org/10.1002/net.10114)
nthreads = 4, # Number of threads used in GUROBI, set 0 for maximum number of available threads
ucstrat = 4 # user cut strategy
)
ERROR: UndefVarError: `Both` not defined
Stacktrace:
[1] getproperty(x::Module, f::Symbol)
@ Base ./Base.jl:31
[2] top-level scope
@ REPL[3]:1
julia>
I am lost on this one. I don’t get why it works with git clone
and activating the project but not with ] add
while the code did not change.
Could someone help if you please ?