问题标签 [hex-pm]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
1102 浏览

elixir - 未找到 elixir 项目的十六进制依赖项 - 毒药、苦艾酒

我收到unchecked dependency for environment错误ecto.createecto.migrate。我有以下mix.exs文件依赖项

当我运行命令时,mix ecto.create && mix ecto.migrate出现以下错误。

我是十六进制,长生不老药和混合物的新手。

0 投票
1 回答
538 浏览

erlang - Elixir 十进制和 :erlang_decimal

我正在使用一个名为erlang_decimal的 erlang 库来做一些十进制数学运算。我的应用程序还使用Decimal作为 Ecto 的子依赖项,Ecto 是基本相同类型的 Elixir 库。

这是我的mix.exs

部署更改后,我遇到了以下异常:

是否存在某种命名空间冲突?

编辑:

Dialyzer 能够解决这个问题:

我更新了mix.exs包括{:decimal, "~> 1.0"}

0 投票
1 回答
188 浏览

package - 我可以为不同的环境使用不同版本的包吗?

我有一个项目,我需要在本地环境中使用 SQLite,但在普通服务器上使用 Postgres。

不幸的是,目前还没有适用于 Ecto 3 的 SQLite 适配器,这迫使我将 Ecto 和一些相关包保留在2.x,这导致了一些问题,例如:Ecto 2.0 SQL Sandbox Error on tests

我想知道是否可以指定 Ecto 的两个不同版本,从而指定环境:local:prod. 目前这似乎是不可能的,因为每个项目只有一个锁文件。实现它的唯一方法似乎是在项目目录中存储两个不同的锁定文件?例如https://elixirforum.com/t/only-fetch-deps-compatible-for-a-specific-version-of-elixir/16213

0 投票
2 回答
1425 浏览

elixir - mix deps.get 失败,{:failed_connect, [{:to_address, {'repo.hex.pm', 443}}, {:inet, [:inet], {:option, :server_only, :honor_cipher_order}}]}

我正在尝试为我的 elixir 项目获取依赖项。我无法判断 Hex 是否已关闭(我今天早上能够很好地获取)。当我跑

我看到这个:

对于每个依赖项,依此类推。是什么:no_honor_cipher意思?我做错了什么还是Hex down?

0 投票
1 回答
53 浏览

elixir - `mix hex.docs offline` 的输出结果为 EPUB 而不是 HTML

我通过mix hex.docs offline PACKAGE_NAME. 这会在~/.hex/docs/hexpm/PACKAGE_NAME/.

我想做同样的事情,但输出为 EPUB 而不是 HTML,理想情况下,一步完成

如何下载离线 EPUB 以获取 Hex.pm 上托管的软件包的文档?

0 投票
1 回答
316 浏览

elixir - 如何安装旧版本的 Hex?

如果我运行mix local.hex,我会得到最新版本的 Hex。我怎样才能:

  • 列出可用版本;
  • 安装旧版本?
0 投票
1 回答
338 浏览

elixir - 以编程方式确定 Elixir Mix 任务中的依赖版本

有没有办法以编程方式在自定义混合任务中以编程方式安装依赖项的当前版本?

我有一个包,其中包含一些运行一些生成器命令的自定义混合任务。我想确定我的 hex 包的用户正在运行的 Phoenix 版本,以便我可以有条件地在我的生成器任务中执行一些逻辑。

我的 hex 包依赖于 Phoenix,但也支持 Phoenix 1.3、1.4 和新发布的 1.5。

我意识到我可以发布一个新版本的 hex 包,它具有 phoenix 1.5 的固定依赖要求,同时仍将更改向后移植到我的包的旧主要版本;但我更愿意暂时保留一个支持尽可能多版本的主线分支。

有没有一种“体面”的方式来做到这一点,或者我应该mix.lock在混合任务中自己解析文件?这样做似乎很脆弱,而且我认为我的包代码不应该四处搜索和解析它所包含的更大项目的锁定文件。