bodhilogic

bodhilogic

I’m creating a new phoenix application (my first time) and I am seeing the following warning when I am using mix phoenix,gen.html to build my DB tables:

warning: found quoted keyword "test" but the quotes are not required. Note that keywords are always atoms, even when quoted, and quotes should only be used to introduce keywords with foreign characters in them mix.exs:57

I realize that the warning has nothing to do with the table building but wonder why Phoenix is generating its own ‘bugs’ (to me, a warning is a bug)? Is it because I am using mix phoenix,gen.html instead of mix phx,gen.html?

Showing Posts 1 to 10

idi527

idi527

:waving_hand:

Because the warning comes from elixir 1.7, supposedly (I haven’t seen this warning in elixir 1.6), and phoenix v1.3 was released before elixir 1.7.

The warning is about a keyword list in aliases in your mix.exs. If you check it, you’d see something like

defp aliases do
  [
    # ...
    "test":  #...
  ]
end

there.

The warning says that "test": can safely be replaced with test:.

bodhilogic

bodhilogic OP

I’ve removed the quotes from the atom but it still moans about the line… my guess is that it doesn’t like the other quoted “test” either, but I assume that is a command parameter that needs to be quoted?

  defp aliases do
    [
      "ecto.setup": ["ecto.create", "ecto.migrate", "run priv/repo/seeds.exs"],
      "ecto.reset": ["ecto.drop", "ecto.setup"],
      test: ["ecto.create --quiet", "ecto.migrate", "test"]
    ]
  end
idi527

idi527

No, the other "test" is supposed to be quoted and is not the reason for the warning. I don’t have any warnings once I replace "test": with test:.

bodhilogic

bodhilogic OP

FYI: The error (warning) eventually went away on its own - after about half a day of ignoring it!?!?

sheharyarn

sheharyarn

Is there a way to hide the warning without changing it?

NobbZ

NobbZ

Downgrading elixir to some version before the warning was introduced.

sheharyarn

sheharyarn

Lol, obviously I meant something other than that. But I guess that means it’s not possible. Thanks.

NobbZ

NobbZ

Well, warnings are printed to be acted on, there is currently no way to silence them besides changing the code accordingly or to change to a version of elixir that does not emit the warnings.

And I really hope, there will never be a way to silence the warnings, that would totally defeat their purpose.

sheharyarn

sheharyarn

I think I should be able to write :"something" without the compiler constantly throwing warning messages at me :joy:

Jokes aside, I don’t believe all warnings are equally important, especially in this case. There should be a way to tell the compiler “I know what I’m doing” so it can suppress specific warnings.

amnu3387

amnu3387

It also shows warnings when using :"..." inside an :ets.match - I don’t think you can write it in any other way there.

Where Next? Top

Trending in Questions Top

Blokh
Hey guys, I’ve got a huge CSV ( around 10 GB ) that needs to be processed hourly Do you guys have any suggestions what is the best prac...
New
kszambelanczyk
Hello! Could someone please give me a help/sample code, how to delete a file from s3 using waffle/waffle_ecto from Phoenix app. I creat...
New
RemyXRenard
I’m seeing that a list inside a Kino.DataTable will be interpreted as a charlist, even if the Kino.configure() is set to charlists: :as_l...
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
samoloth
Hi, I’ve just set up an application with ash_authentication. There is only magic link strategy for now, so there is no confirmation add o...
New
FlyingNoodle
If a change or preparation module uses Ash.Changeset.get_argument/2 or Ash.Query.get_argument/2 (or any of the other get_argument functio...
New
psy-q
I’m trying to set up Emacs with elixir-ls via lsp-mode and credo via Flycheck. This should mostly be preconfigured as Flycheck picks up c...
New

Other Trending Topics Top

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
garrison
Hobbes is a low-level distributed database for the Elixir programming language. Hobbes provides a simple, safe, and scalable storage lay...
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
jimsynz
Beam Bots (or just BB for short) is a framework for building fault-tolerant robotics applications in Elixir using familiar OTP patterns. ...
New
mcass19
ExRatatui lets you cook up rich terminal UIs in Elixir, powered by Rust’s ratatui via Rustler NIFs. Build interactive terminal applicatio...
New
Damirados
Hello everyone. After busy few months I am happy to announce v0.1.0 of Emerge & Solve. They are GUI (Emerge) and State management (S...
New

We're in Beta

About us Mission Statement

Options

Thread Display Mode




Thread Preview

Skip Thread Previews