Size: a a a

2020 June 21

E

Eugene in pro.elixir
точняк! Заработало. Ужасная книга...
источник

MK

Max Kos in pro.elixir
Автору книги респект... Помню наш препод в универе любил так опечатываться в методичках. Зато когда всей группой ошибку искали тему знали до каждой запятой
источник

SS

Sergey Shishkin in pro.elixir
норм книга ....
источник

E

Eugene in pro.elixir
Пикантность ситуации ещё и в том, что на этот раз копирую куски кода напрямую с официальной страницы книги. Глючность копирования из pdf-файла вполне понятна, но вот чтобы при копировании из html вылазили такие баги — это удивительно.
источник

VS

Vladimir Sekisov in pro.elixir
источник

E

Eugene in pro.elixir
Вы правы, спасибо. В github этой ошибки нет.
источник

T

Tharin in pro.elixir
Eugene
А можно ещё вопрос? Похоже, эта книга ("The little elixir...") полна багов чуть менее чем, полностью.

При попытке подгрузить в iex следующий код:

defmodule ID3Parser do
 def parse(file_name) do
   case File.read(file_name) do
     {:ok, mp3} ->
       mp3_byte_size = byte_size(mp3) – 128
       << _ :: binary-size(mp3_byte_size), id3_tag :: binary >> = mp3
       << "TAG", title   :: binary-size(30),
                 artist  :: binary-size(30),
                 album   :: binary-size(30),
                 year    :: binary-size(4),
                 _rest   :: binary >>       = id3_tag
       IO.puts "#{artist} - #{title} (#{album}, #{year})"
     _ ->
       IO.puts "Couldn't open #{file_name}"
   end
 end
end

вылетает ошибка:  unexpected token: "–" (column 40, code point U+2013)

Где копать?? Спасибо.
Дефис где byte_size(mp3) - 128
источник

T

Tharin in pro.elixir
А, уже сказали
источник

MK

Michael Kalygin in pro.elixir
Ребят, пытаюсь понять, как мне нормально грузить конфиги из переменных среды в Phoenix. В Ruby on Rails я обычно использую dotenv. На форумах предлагают делать source .env && mix phx.server, но что-то это как-то error prone. Есть какие-то идеи получше? Цель — иметь возможность каждому разработчику настроить свою среду через переменные среды. В проде, кажется, можно обойтись настройкой через rel/env.sh.eex, используя Mix Releases, так что вопрос в основном про среду разработки.
источник

T

Tharin in pro.elixir
В dev окружении?
источник

MK

Michael Kalygin in pro.elixir
Tharin
В dev окружении?
Да.
источник

T

Tharin in pro.elixir
Сделайте dev.exs.sample, с основными настройками, которые едины для всех, который передаётся всем гитом.
источник

T

Tharin in pro.elixir
А каждый разработчик сам лично убирает .sample
источник

T

Tharin in pro.elixir
И настраивает под себя. dev.exs в гитигнор
источник

T

Tharin in pro.elixir
Так и переменные среды не затроните, и всё у всех будет индивидуально
источник

T

Tharin in pro.elixir
А в prod.exs можете эти настройки из переменных среды тянуть, если надо.
источник

MK

Michael Kalygin in pro.elixir
Спасибо, понял. То есть какой-то вменяемой альтернативы dotenv в фениксе, получается, что нет. В целом ваш подход тоже ок. Просто как-то привык всё тянуть из переменных среды. 🙂
источник

ŹR

Źmićer Rubinštejn in pro.elixir
Я лично делаю загитигноренный dev.custom.exs и импортирую его внутри dev.exs только в том случае, если он существует.
источник

MK

Michael Kalygin in pro.elixir
Źmićer Rubinštejn
Я лично делаю загитигноренный dev.custom.exs и импортирую его внутри dev.exs только в том случае, если он существует.
Клёвая идея, мне нравится.
источник

МЛ

Михаил Лёсин... in pro.elixir
Еще можно использовать .env запуская mix через парсер этого файла, у меня это например renv iex -S mix, использовал вот это: https://crates.io/crates/readenv
источник