问题标签 [package-development]

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 投票
1 回答
514 浏览

r - pkgdown R package build_site函数导致依赖包无法加载

我正在使用pkgdown包为 R 包(称为 RTCGA)生成优雅的静态手册页。当我运行代码以生成静态文档作为网站时,我使用以下命令

此代码在包项目的根目录中进行评估,RTCGA并提供有关 RTCGA 已加载和文档已创建的信息。

但是我在大多数页面的文档中发现了一个错误 - 有一个错误告诉

错误:找不到“RTCGA.rnaseq”所需的包“RTCGA”

在此处输入图像描述

所以没有一个例子可以运行。此外,当我library(RTCGA.rnaseq)使用后运行时,build_site我无法再加载依赖RTCGA

当我library(RTCGA.rnaseq)在新会话中运行而不调用pkgdown::build_site依赖RTCGA包时,正常加载而没有警告。

我怀疑这是由build_site执行的任何设置引起的,但我不知道如何解决它们以及如何使用 package.json 构建适当的静态文档pkgdown

任何意见?

0 投票
1 回答
34 浏览

r - 将包放在“取决于”部分的替代方法

我正在编写一个小包,它使用 ggplot2 构建一些自定义类型的图形。自然地,我的源文件中会充斥着 ggplot2 函数。我对包开发有点陌生,我的理解是,通常最好::在包源中消除命名空间的歧义。但是把ggplot2::所有东西放在前面似乎是一个让我的代码混乱的好方法——我想让它尽可能地可读和清晰,以便我的同事也更容易处理我的代码。

有没有办法让我的源文件访问 ggplot2 命名空间?在包中使用library似乎是一个很大的禁忌。ggplot2将包描述中的“依赖”放在几乎可以做到这一点,但仅在我附加我的包时附加 ggplot2(如果我的包已加载但未附加,则会导致问题)。找到一种在我的包加载时自动附加ggplot2的方法可以解决这些问题,尽管直觉告诉我这可能是一种不好的做法。

0 投票
1 回答
272 浏览

r - 可视化并跟踪您的包开发状态

什么是跟踪开发状态和/或可视化所有 R 包如何相互链接(及其“第三方”依赖项)的好方法?

我通常会尝试应用“分而治之”的策略,到现在 - 5 年后 - 导致相当多的包具有明确的功能范围。但是我已经达到了一种状态,事情已经(明显地)变得如此分散,以至于我无法理解所有的依赖关系,并且“我在实际项目中需要的乐高积木在哪里”:-/

所以我想我正在寻找

  1. 所有包依赖项的映射表示
  2. 一些占用空间最小的“包开发管理”框架/策略
0 投票
0 回答
309 浏览

r - 为 R 中的现有函数构建公式接口的步骤?

那里有许多 R 函数,但其​​中只有一些具有标准公式接口(参见例如这个问题:glmnet 的公式接口)。我认为一般公式接口是标准化 R 函数并提供一致用户体验的好方法。

我的问题
是否有权威参考如何为给定的 R 函数构建公式接口和/或您能否概述执行此操作的步骤?我希望您不必从头开始编写所有程序...谢谢

0 投票
2 回答
892 浏览

r - 如何在DESCRIPTION中自动添加/更新Depends/Imports/Suggests版本?

我喜欢让我的 R 包保持最新,在开发我自己的包时,我想坚持@Hadley 的建议

通常,最好指定版本并在需要哪个版本时保持保守。除非您另有了解,否则始终要求版本大于或等于您当前使用的版本。

所以,我需要其中的一些DESCRIPTION

是否有现有工具可以根据我当前安装的包以编程方式更新依赖项的版本?

我知道这是一件小事,我可以手动完成,但我只知道这是很容易忘记的事情。

使用本地安装的包版本作为最小依赖项似乎也很有意义,因为我使用这些依赖项进行了测试/构建。

我有理由不这样做吗?

0 投票
1 回答
228 浏览

r - 使用 roxygen2 导出变体函数

当我使用@describeIn@rdname记录函数的变体时,该变体不会被导出。我可以在 roxygen 骨架中放置一个标签来更改它,还是我需要直接进入 NAMESPACE?

当我附加这个包时,我可以foo很好地调用,但尝试调用bar结果在Error: could not find function "bar".

0 投票
2 回答
129 浏览

php - 无法在 Laravel5.3 中注册我的自定义包的依赖项

我正在开发一个博客作为 Laravel 5.3 的自定义包。

到目前为止,我已经完成了路由、控制器、模型和迁移工作。

我现在正在研究 CRUD。对于我认为可以使用的表格: https ://laravelcollective.com/docs/5.3/html


更新

我已经用作曲家安装了这个包。依赖项在 composer.json 文件中。这些文件位于我的包的供应商文件夹中。我也试过跑

p>

来自我的 composer.json


我到处寻找,人们建议执行以下操作:

我目前到处都收到以下错误:

Application.php 第 610 行中的 FatalThrowableError:找不到类“Collective\Html\HtmlServiceProvider”

真的不知道我哪里出错了。


更新

我试过绑定而不是注册:

$this->app->bind('Collective\Html\HtmlServiceProvider');

但是这次我收到以下错误:

找不到类“Collective\Html\FormFacade”


0 投票
0 回答
465 浏览

r - R中是否有相当于“pip install -e”的东西?

从蟒蛇pip install -h

基本上,如果你pip install -e <package_dir>,pip 将安装一个 python 包,并符号链接到包,而不是复制它的内容。这非常有用,因为这意味着您可以编辑包,并且更改立即可用,而无需在每次修改后重新安装包。

R包是否有等价物?这对于包开发非常有用。

0 投票
0 回答
59 浏览

r - 使用一个环境运行使用 roxygen2 的示例

我正在用 R 编写一个基本上执行管道的包。这个管道有几个阶段,用户可以根据他们想要实现的目标进行调整。

最早的阶段之一需要运行一个耗时的函数。

我想创建一个环境,或者有一些解决方法,在这个阶段运行一次,当我@examples使用roxygen2.

我不想使用\dontrun{},因为我想发布包并且我需要有可运行的示例。

如果我的问题不清楚,谢谢并道歉。

0 投票
0 回答
111 浏览

laravel - 在 Package 的服务提供者中调用 route() 的位置?

我有 2 个 Laravel 包;一种用于管理管理面板。第二个是用有用的页面填充它。

现在是第一个包;从现在开始,我们称它为 AdminPackage。有一个内置的菜单管理器,它允许我从包外部注册新的标题和菜单链接。

这个想法是,在我的第二个包中,它向第一个包添加了功能,可以调用AdminPackage::menu()->addHeader()AdminPackage::menu()->addLink()方法来添加一些链接到管理面板的导航。

但是现在问题来了:

当我在我的第二个包的服务提供者中调用该方法时,我收到以下错误: InvalidArgumentException Route [route-name] not defined.

我还尝试将代码直接放在我绑定到我的 ServiceProvider 中的 IoC 容器的服务中。但同样的问题。

我在 boot() 和 register() 方法中都使用它得到错误。因此,此时路线尚未完全加载。

我怎么解决这个问题?在呈现页面并显示菜单项之前,我需要等待路由完成加载并调用菜单管理器方法。

提前致谢!