Skip to content

Latest commit

 

History

History
215 lines (208 loc) · 6.34 KB

KNOWN_PREFERENCES.md

File metadata and controls

215 lines (208 loc) · 6.34 KB

Preferences Survey

This file is a survey of preferences being used by packages in the General registry.

It was generated by searching for set_preferences and load_preference in code in JuliaHub and inspecting the results.

It's not used for anything right now other than to inform design.

Preferences

  • AMDGPU
    • use_artifacts :: Bool
    • max_scratch :: Integer
    • logging_enabled :: Bool
    • use_slow_allocation_fallback :: Bool
    • use_hip_malloc_override :: Bool
    • memory_alloc_limit :: Integer
    • alloc_signal_pool_max :: Integer
  • AbInitioSoftwareBase
    • mpiexec_path :: String
  • AdalmPluto
    • provider :: String (yggdrasil or local)
  • BPFnative
    • use_vmlinux :: String (true or false)
  • BinaryBuilder
    • instructions for overriding specific products (e.g. Bzip2_jll.libbzip2_path=/some/path.so)
  • ClmGui
    • opengl_major_version :: String (integer)
  • CMBLensing
    • precompile :: Bool
    • ⌛_enabled :: Bool
  • CUDA_Runtime_jll
    • version :: String (#.#)
  • ChemicalIdentifiers
    • clear_cache :: String (true or false)
  • Cthulhu
    • enable_highlighter :: Bool
    • highlighter :: String (command)
    • asm_syntax :: String
    • dead_code_elimination :: Bool
    • pretty_ast :: Bool
    • debuginfo :: String
    • optimize :: Bool
    • iswarn :: Bool
    • remarks :: Bool
    • with_effects :: Bool
    • inline_cost :: Bool
    • type_annotations :: Bool
    • annotate_source :: Bool
  • DataFrames
    • instructions for adding to SnoopPrecompile.skip_precompile
  • DoubleArrayTries
    • use_pdep :: Bool
  • Enzyme_jll
    • libEnzyme_path :: String
    • libEnzymeBCLoad_path :: String
  • FFTW
    • provider :: String (fftw or mkl)
  • Ferrite
    • use_debug :: Bool
  • Flux
    • gpu_backend :: String (CUDA or AMD)
  • FluxMPI
    • FluxMPIDisableCUDAMPISupport :: Bool
  • ForwardDiff
    • nansafe_mode :: Bool
    • default_chunk_threshold :: Integer
  • GPI2
    • libGPI2 :: String
    • bindings_file :: String
    • gaspi_logger_executable :: String
    • gaspi_run_executable :: String
  • GR
    • binary :: String (system or GR_jll)
    • grdir :: String
  • GR_jll
    • libGR_path :: String
    • libGR3_path :: String
    • libGRM_path :: String
    • libGKS_path :: String
    • gksqt_path :: String
  • GarishPrint
    • color :: Dict
  • Gtk4
    • uv_loop_integration :: String (auto, enabled or disabled)
  • HDF5
    • libhdf5 :: String
    • libhdf5_hl :: String
  • JLLPrefixes
    • clone_dir :: String
  • JuMP
    • instructions on setting JLL preferences (e.g. ECOS_jll.libecos_path=/some/path)
  • JuliaCon
    • cache_mode :: String (DEFAULT, NEVER or ALWAYS)
    • cache_dir :: String
    • timeout :: String (a number)
    • terminal_links :: String (true or false)
    • local_timezone :: String
  • LAMMPS_jll
    • liblampps_path :: String
  • LLVMExtra_jll
    • libLLVMExtra_path :: String
  • LatexSVG
    • texengine :: String
    • preamble :: Vector{String}
  • LibCEED
    • CeedScalar :: String (Float64 or Float32)
  • libCEED_jll
    • libceed_path :: String
  • LinearSolve
    • include_sparse :: Bool
  • MPIPreferences
    • _format :: String (version)
    • binary :: String
    • libmpi :: String
    • abi :: String
    • mpiexec :: String
  • cmt_jll
    • libcmt_path :: String
  • Metal_LLVM_Tools_jll
    • metallib_as_path :: String
    • metallib_dis_path :: String
  • Mill
    • emptyismissing :: Bool
    • string_start_code :: Integer
    • string_end_code :: Integer
  • NCDatasets
    • instructions on setting preferences (e.g. NetCDF_jll.libnetcdf_path=/some/path)
  • OrdinaryDiffEq
    • PrecompileNonStiff :: Bool
    • PrecompileStiff :: Bool
    • PrecompileAutoSwitch :: Bool
    • PrecompileLowStorage :: Bool
    • PrecompileDefaultSpecialize :: Bool
    • PrecompileAutoSpecialize :: Bool
    • PrecompileFunctionWrapperSpecialize :: Bool
    • PrecompileNoSpecialize :: Bool
  • Oscar
    • unicode :: Bool
  • oneAPI_Support_jll
    • liboneapi_support_path :: String
  • P4est
    • libp4est :: String
  • PALEOboxes
    • USE_SLEEF :: Bool
  • Pfam
    • PFAM_DIR :: String
    • PFAM_VERSION :: String
  • Plots
    • default_backend :: String
  • ProfileView
    • graphtype :: String (flame or icicle)
    • theme :: String (light or dark)
  • QuantumESPRESSOCommands
    • pw.x path :: String
    • ph.x path :: String
    • q2r.x path :: String
    • matdyn.x path :: String
    • dynmat.x path :: String
  • ReplGPT
    • openai_api_key :: String
  • Rfam
    • RFAM_DIR :: String
    • RFAM_VERSION :: ???
  • RootedTrees
    • printing_style :: String (butcher or sequence)
    • latexify_style :: String (butcher or forest)
  • STAC
    • cache_max_size :: Integer
    • title_color :: String
    • catalog_color :: String
    • item_color :: String
    • asset_color :: String
  • Sandbox
    • executor :: String (unprivilegedusernamespacesexecutor, unprivileged, userns, privilegedusernamespacesexecutor, privileged, dockerexecutor or docker)
  • SciMLBase
    • SpecializationLevel :: String
  • SnoopCompile
    • instructions for setting SnoopPrecompile.skip_precompile
  • SnoopPrecompile
    • skip_precompile :: Vector{String}
  • SuiteSparseGraphBLAS
    • shared_lib :: String
  • TerminalClock
    • tomlfile :: String
  • ThreadPinning
    • pin :: String
    • likwidpin :: String
    • autoupdate :: String (true or false)
  • UHDBindings
    • provider :: String (yggdrasil, default or local)
    • lib_path :: String
  • Vulkan
    • instructions
    • LOG_DESTRUCTION :: String (true or false)
    • LOG_REFCOUNT :: String (true or false)
    • PRECOMPILE_DEVICE_FUNCTIONS :: String (true or auto or ...)
    • USE_DISPATCH_TABLE :: String (true or false)

Comments

  • Observed preference types:
    • Almost all Bool, String or Integer
    • Two cases of Vector{String} (LatexSVG.preamble and SnoopPrecompile.skip_precompile).
    • One case of Dict (GarishPrint.color).
    • No cases of Float64 - should I remove support for this?
  • Strings can represent:
    • Paths
    • Enums
    • Versions - this clashes with Float64 parsing, but can use -s flag
    • Booleans (a few packages use "true" instead of true)
    • Numbers (e.g. JuliaCon.timeout)
    • Commands (e.g. Cthulhu.highlighter)
    • Keys/passwords (e.g ReplGPT.openai_api_key) - hide sensitive information?