Skip to main content

Ensure that Julia packages are installed correctly

Project description

julia_project_basic

This Python package provides functions to check if a Julia project is properly installed and ready to use.

It ensures that registries and packages are installed. It ensures that PyCall.jl is installed, built, and that the libpython of the running python interpreter is compatible with the one used to build PyCall.jl

Install

pip install julia_project_basic

Examples

Simplest use

import os
import julia_project_basic
os.chdir("/path/to/julia/project/")
julia_project_basic.ensure_project_ready()

You can also use ensure_project_ready_fix_pycall which does everything ensure_project_ready does and also checks whethr PyCall.jl is installed, built and is compatible with the currently running python interpreter. PyCall.jl will be built if it is not already. If it is incompatible, the user will be given a choice between recompiling PyCall.jl or installing everything to a "private" depot.

In the case that the Julia project is installed and ready to use, ensure_project_ready takes about 200 micro s to run. And ensure_project_ready_fix_pycall takes about 200 ms to run. The factor of 1000 is due to starting a julia process and running a bit of julia code in the second case.

Options

See the docstrings for ensure_project_ready and ensure_project_ready_fix_pycall for a description of arguments.

Details

ensure_project_ready does the following

  • checks if the Manifest.toml (or JuliaManifest.toml) exists and is newer than Project.toml. It checks if a few directories in the Julia depot are present. It optionally checks if additional registries are installed. It optionally checks if a supplied list of packages are in the Project.toml. If any of these checks fail, then The following steps are taken to install registries, packages, etc. and to run Pkg.instantiate.

  • Optionally, registries are installed.

  • Optionally, packages are added to the project (version specs are not supported)

  • The project is instantiated.

ensure_project_ready_fix_pycall additionally checks PyCall.jl and tries to fix it if necessary.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

julia_project_basic-0.1.0.tar.gz (9.8 kB view hashes)

Uploaded Source

Built Distribution

julia_project_basic-0.1.0-py3-none-any.whl (9.5 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page