Skip to content

GunnarFarneback/RegistryInstances.jl

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

5 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

RegistryInstances

Access the information in installed Julia registries.

Background

Julia's package manager stores package metadata in registries, which consist of TOML files in a directory structure. For Julia 1.0 to 1.6 it was fairly straightforward to access this information with just a TOML reader. Julia 1.7 introduced an option to locally store the registry in an archive format (for very good performance reasons) and restructured the package manager (Pkg) code with an abstraction of the registries (RegistryInstance). Thus it is now better and easier to use the RegistryInstance abstraction, with the drawback that this is considered an implementation detail in Pkg and may change between Julia minor versions.

About this Package

The whole purpose of RegistryInstances is to provide the RegistryInstance abstraction without relying on Pkg internals. The advantages of getting it from here instead of from Pkg are:

  • Does not change with Julia minor versions.
  • The key structs and functions are exported and part of the public API. Therefore breaking changes will follow semantic versioning principles.
  • Works with Julia 1.6 and up.

Initially this was based on an exact copy of Registry/registry_instance.jl from Pkg on August 12, 2021.

Public API

The public API consists of the structs

  • RegistryInstance
  • PkgInfo
  • PkgEntry

and the functions

  • reachable_registries
  • registry_info
  • compat_info
  • treehash
  • uuids_from_name
  • isyanked

About

Access the information in installed Julia registries.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages