benwilson512

benwilson512

Author of Craft GraphQL APIs in Elixir with Absinthe

Hey folks!

I’ve got a branch in Absinthe that conditionally uses the :persisten_term module if it’s available. Unfortunately this is causing me issues with dialyzer, for reasons I can’t quite sort out. I’d like to do one of two things:

  1. Figure out why dialyzer things :persistent_term.put/2 is unavailable on OTP 21.2. This would be the best option.
  2. If that fails, mark the function as nowarn. I’ve tried this, but I can’t seem to get the invocation correct.

Branch: Persistent Term Backend by benwilson512 · Pull Request #895 · absinthe-graphql/absinthe · GitHub
Failing Travis job: Travis CI
Line where I try to tell dialyzer to ignore stuff: Persistent Term Backend by benwilson512 · Pull Request #895 · absinthe-graphql/absinthe · GitHub

Showing Posts 1 to 3

kip

kip

ex_cldr Core Team

Sometime in the past, for reasons I don’t recall (but I think i was heading down the same path as you) I added the following to my .dialyzer_ignore_warnings fie which seemed to quiet things down. Hope it helps make some progress.

:0: Unknown function persistent_term:get/2
:0: Unknown function persistent_term:put/2

I think this may also have been because of the @dialyzer issue you are having - i think I had the same but can’t fully recall.

benwilson512

benwilson512 OP

Author of Craft GraphQL APIs in Elixir with Absinthe

Hi @kip thanks for the suggestion. I added a file with those lines to that file and at first it didn’t work, but then switched it to using the Elixir formatted documented by dialyxir. This worked!

Commit: Persistent Term Backend by benwilson512 · Pull Request #895 · absinthe-graphql/absinthe · GitHub

Dialyxir format: GitHub - jeremyjh/dialyxir: Mix tasks to simplify use of Dialyzer in Elixir projects. · GitHub

I’d still like to sort out why dialyzer doesn’t think persistent_term.put exists for that version of Erlang though.

tristan

tristan

Rebar3 Core Team

We’ve now hit this issue in OpenTelemetry Fix dialyzer issues by davydog187 · Pull Request #82 · open-telemetry/opentelemetry-erlang-api · GitHub

But what is extra weird is that dialyzer has been working fine, no warnings about persistent_term:put/2. It is only now that Elixir’s dialyxer task has been added that its use of dialyzer warns about the function…

— All posts loaded —

Where Next? Top

Trending in Questions Top

RSP87
I’m working on a project that simulates the bumbl example in the programming phoenix book. It acts almost like an email client. We have a...
New
kpanic
Hi everyone, I am toying with the idea of building a “match maker” for giving personal help to people that wants to start coding. I sta...
New
nseaSeb
Hello, I know there is an approach for handling lists that allows for optimized traversal, but I can’t recall the specific method (somet...
New
brecabral
Documentation While reading the Scoped Routes section, I noticed that the documentation currently refers to a problem without explainin...
New
velrest
So my question is quite simple and i have found no conclusive answer on forum, google or AI. Should we use :erlang.float for Integer to ...
New
asweet-confluent
I recently noticed that Elixir’s Logger defaults its primary log level to :debug when no :logger, :level application configuration is pre...
New
apz
I’m new to elixir and just tried to install the elixirLS extension for VScode(ium) and it is throwing some errors that I would like help ...
New

Other Trending Topics Top

GenericJam
Edit: 2026 May 15 - This post is archived. Mob is alive!! Main docs: mob v0.7.11 — Documentation A bit of explanation for the slightly c...
New
JesseHerrick
Hey, I’m Jesse and I’m the main contributor behind Dexter, a full-featured, lightning-fast Elixir LSP optimized for large codebases. It s...
New
mudasobwa
I am happy to introduce the very α version of the new programming language compiled to BEAM. Welcome Cure. It has literally three kille...
New
marciok
Hi there! We created Gust: A task orchestrator inspired by Airflow. For those who have never heard about Aiflow, it’s a Python-based wor...
New
mhanberg
Hi everyone! The first release candidate for the Expert language server project is now available! We’ve published a press release detai...
New
jimsynz
Beam Bots (or just BB for short) is a framework for building fault-tolerant robotics applications in Elixir using familiar OTP patterns. ...
New

We're in Beta

About us Mission Statement

Options

Thread Display Mode




Thread Preview

Skip Thread Previews