#!/bin/bash -eu
# Copyright (c) 2025 Uwe Fechner
# SPDX-License-Identifier: BSD-3-Clause

# This script updates all packages in the global and local environment.

if [[ $(basename $(pwd)) == "bin" ]]; then
    cd ..
fi

export JULIA_PKG_SERVER_REGISTRY_PREFERENCE=eager

julia -e 'using Pkg;
globaldependencies() = keys(Pkg.project().dependencies)
if ! ("TerminalPager" in globaldependencies()); Pkg.add("TerminalPager"); end;
if ! ("Timers" in globaldependencies()); Pkg.add("Timers"); end;
if ! ("Revise" in globaldependencies()); Pkg.add("Revise"); end;
if ! ("Infiltrator" in globaldependencies()); Pkg.add("Infiltrator"); end;
if ! ("ControlPlots" in globaldependencies()); Pkg.add("ControlPlots"); end;
if ! ("TestEnv" in globaldependencies()); Pkg.add("TestEnv"); end'

julia -e 'using Pkg; Pkg.update()'
julia --project -e 'using Pkg; Pkg.update()'
