# Mysterious BinaryProvider error when installing FIGlet

**URL:** <https://discourse.julialang.org/t/mysterious-binaryprovider-error-when-installing-figlet/122279>\
**Category:** General Usage\
**Created:** [November 5, 2024, 10:58am UTC](https://discourse.julialang.org/t/mysterious-binaryprovider-error-when-installing-figlet/122279 "2024-11-05T10:58:54Z")\
**Posts on this page:** 7\
**Page:** 1

<div class="post-metadata">

**Author:** ![hellemo](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/hellemo/32/324_2.png) [@hellemo](https://discourse.julialang.org/u/hellemo)\
**Post date:** [November 5, 2024, 10:58am UTC](https://discourse.julialang.org/t/mysterious-binaryprovider-error-when-installing-figlet/122279/1 "2024-11-05T10:58:54Z")

</div>

I get this mysterious error when trying to install `FIGlet` in v1.11 (works fine in v1.10), complaining about the version of `BinaryProvider`, however trying to look into it, everything works fine when dev-ing the package.

Any idea what’s going on here?

```julia
(@v1.11) pkg> activate --temp
  Activating new project at `/tmp/jl_3jtNU3`

(jl_3jtNU3) pkg> add FIGlet
   Resolving package versions...
ERROR: Unsatisfiable requirements detected for package BinaryProvider [b99e7846]:
 BinaryProvider [b99e7846] log:
 ├─possible versions are: 0.4.0 - 0.5.10 or uninstalled
 └─restricted by julia compatibility requirements to versions: uninstalled — no versions left

(jl_3jtNU3) pkg> dev FIGlet
     Cloning git-repo `https://github.com/kdheepak/FIGlet.jl.git`
   Resolving package versions...
    Updating `/tmp/jl_3jtNU3/Project.toml`
  [3064a664] + FIGlet v0.2.1 `~/.julia/dev/FIGlet`
    Updating `/tmp/jl_3jtNU3/Manifest.toml`
  [3064a664] + FIGlet v0.2.1 `~/.julia/dev/FIGlet`

```

---

<div class="post-metadata">

**Author:** ![giordano](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/giordano/32/2166_2.png) [@giordano](https://discourse.julialang.org/u/giordano)\
**Post date:** [November 5, 2024, 11:44am UTC](https://discourse.julialang.org/t/mysterious-binaryprovider-error-when-installing-figlet/122279/2 "2024-11-05T11:44:55Z")

</div>

The package depends on BinaryProvider in the registry:

> <https://github.com/JuliaRegistries/General/blob/aa5a43d57452a2966d46c4a6b02befc4918d6524/F/FIGlet/Deps.toml#L2>

When you `dev` the package you’re checking out the [`master` branch of the repo](https://github.com/kdheepak/FIGlet.jl/tree/master), which has different code apparently.

---

<div class="post-metadata">

**Author:** ![hellemo](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/hellemo/32/324_2.png) [@hellemo](https://discourse.julialang.org/u/hellemo)\
**Post date:** [November 5, 2024, 11:46am UTC](https://discourse.julialang.org/t/mysterious-binaryprovider-error-when-installing-figlet/122279/3 "2024-11-05T11:46:56Z")

</div>

Nice, thanks. So it just needs to register a new release, I guess.

---

<div class="post-metadata">

**Author:** ![kdheepak](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/kdheepak/32/10881_2.png) [@kdheepak](https://discourse.julialang.org/u/kdheepak)\
**Post date:** [November 5, 2024, 12:58pm UTC](https://discourse.julialang.org/t/mysterious-binaryprovider-error-when-installing-figlet/122279/4 "2024-11-05T12:58:50Z")

</div>

I had registered v0.2.1 as the version in this commit

> <https://github.com/kdheepak/FIGlet.jl/commit/f4cb9e632382456a59dbef2c9616472f174efc6e#comments>

(on a branch called `release-v0.2.1`).

I just made a PR to merge that to the default branch: [Use BinaryProvider for an artifact by kdheepak · Pull Request #12 · kdheepak/FIGlet.jl · GitHub](https://github.com/kdheepak/FIGlet.jl/pull/12)

But I realize that BinaryProvider has been deprecated. I have to look into what the alternative is include an artifact; I won’t be able to do that until the weekend though.

The current `master` branch doesn’t include the artifact so you can use it by manually providing fonts.

---

<div class="post-metadata">

**Author:** ![hellemo](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/hellemo/32/324_2.png) [@hellemo](https://discourse.julialang.org/u/hellemo)\
**Post date:** [November 5, 2024, 1:20pm UTC](https://discourse.julialang.org/t/mysterious-binaryprovider-error-when-installing-figlet/122279/5 "2024-11-05T13:20:39Z")

</div>

I don’t think you need BinaryProvider, I just dev-ed `FIGlet` with a fresh julia docker container, and that works for me from the current master (0.2.2).

```julia
❯ podman run -it julia:1.11.1
WARN[0000] Using cgroups-v1 which is deprecated in favor of cgroups-v2 with Podman v5 and will be removed in a future version. Set environment variable `PODMAN_IGNORE_CGROUPSV1_WARNING` to hide this warning.
               _
   _ _ _(_)_ | Documentation: https://docs.julialang.org
  (_) | (_) (_) |
   _ _ _| |_ __ _ | Type "?" for help, "]?" for Pkg help.
  | | | | | | |/ _` | |
  | | |_| | | | (_| | | Version 1.11.1 (2024-10-16)
 _/ |\ __'_|_|_|\__'_| | Official https://julialang.org/ release
|__/ |

(@v1.11) pkg> dev FIGlet
  Installing known registries into `~/.julia`
       Added `General` registry to ~/.julia/registries
     Cloning git-repo `https://github.com/kdheepak/FIGlet.jl.git`
   Resolving package versions...
  Downloaded artifact: fonts
    Updating `~/.julia/environments/v1.11/Project.toml`
  [3064a664] + FIGlet v0.2.2 `~/.julia/dev/FIGlet`
    Updating `~/.julia/environments/v1.11/Manifest.toml`
  [3064a664] + FIGlet v0.2.2 `~/.julia/dev/FIGlet`
  [0dad84c5] + ArgTools v1.1.2
  [56f22d72] + Artifacts v1.11.0
  [2a0f44e3] + Base64 v1.11.0
  [ade2ca70] + Dates v1.11.0
  [f43a241f] + Downloads v1.6.0
  [7b1f6079] + FileWatching v1.11.0
  [b27032c2] + LibCURL v0.6.4
  [76f85450] + LibGit2 v1.11.0
  [8f399da3] + Libdl v1.11.0
  [56ddb016] + Logging v1.11.0
  [d6f4376e] + Markdown v1.11.0
  [ca575930] + NetworkOptions v1.2.0
  [44cfe95a] + Pkg v1.11.0
  [de0858da] + Printf v1.11.0
  [9a3f8284] + Random v1.11.0
  [ea8e919c] + SHA v0.7.0
  [fa267f1f] + TOML v1.0.3
  [a4e569a6] + Tar v1.10.0
  [cf7118a7] + UUIDs v1.11.0
  [4ec0a83e] + Unicode v1.11.0
  [deac9b47] + LibCURL_jll v8.6.0+0
  [e37daf67] + LibGit2_jll v1.7.2+0
  [29816b5a] + LibSSH2_jll v1.11.0+1
  [c8ffd9c3] + MbedTLS_jll v2.28.6+0
  [14a3606d] + MozillaCACerts_jll v2023.12.12
  [83775a58] + Zlib_jll v1.2.13+1
  [8e850ede] + nghttp2_jll v1.59.0+0
  [3f19e933] + p7zip_jll v17.4.0+2

julia> using FIGlet
Precompiling FIGlet...
  1 dependency successfully precompiled in 3 seconds. 23 already precompiled.

julia> FIGlet.render("FIGlet", "3d")
  ████████ ██ ████████ ██ ██
 ░██░░░░░ ░██ ██░░░░░░██ ░██ ░██
 ░██ ░██ ██ ░░ ░██ █████ ██████
 ░███████ ░██░██ ░██ ██░░░██░░░██░
 ░██░░░░ ░██░██ █████ ░██░███████ ░██
 ░██ ░██░░██ ░░░░██ ░██░██░░░░ ░██
 ░██ ░██ ░░████████ ███░░██████ ░░██
 ░░ ░░ ░░░░░░░░ ░░░ ░░░░░░ ░░

julia>

```

---

<div class="post-metadata">

**Author:** ![kdheepak](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/kdheepak/32/10881_2.png) [@kdheepak](https://discourse.julialang.org/u/kdheepak)\
**Post date:** [November 5, 2024, 6:26pm UTC](https://discourse.julialang.org/t/mysterious-binaryprovider-error-when-installing-figlet/122279/6 "2024-11-05T18:26:19Z")

</div>

You are right. That appears to be a branch just for backwards compat. I agree that a new release on the default branch should do it.

---

<div class="post-metadata">

**Author:** ![giordano](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/giordano/32/2166_2.png) [@giordano](https://discourse.julialang.org/u/giordano)\
**Post date:** [November 5, 2024, 7:28pm UTC](https://discourse.julialang.org/t/mysterious-binaryprovider-error-when-installing-figlet/122279/7 "2024-11-05T19:28:29Z")

</div>

> <https://github.com/kdheepak/FIGlet.jl/blob/63a28897f59daef0ca6f415db0ec806f85ab9f63/src/FIGlet.jl#L3>

note that you don’t need `Pkg`, you can use the `Artifacts` stdlib only (which is lighter than full `Pkg`).
