1

这是我第一次尝试为 Mozilla 做贡献。我浏览了几篇文章和文档/资源,以了解入门的最佳第一步。我从这个页面http://whatcanidoformozilla.org 1开始,并选择从 Java 开始。

在最初的修补中,我被带到https://wiki.mozilla.org/Mobile/Get_Involved并最终https://wiki.mozilla.org/Mobile/Fennec/Android/Suggested_workflow 资源建议最好的方式开始使用它将是拾取一些简单的错误并为它提出一个补丁。

然后我去了http://www.joshmatthews.net/bugsahoy/?java=1&simple=1这个特定的错误引起了我的注意。该错误的描述提到了这一点:

我们在 DB 实现中共享(或可以共享)一些方法,例如附加 PARAM_SHOW_DELETED、PARAM_LIMIT 或 PARAM_PROFILE。

这些目前分布在 LocalBrowserDB、TabsAccessor、URLMetadata 等。把这些清理干净就好了。

问题 1.现在我如何获得更多关于错误到底是什么以及需要做什么的背景信息?

截至目前,我所理解的似乎已经提交了 2 个补丁(如果我的理解有误,请在此处更正)。因此,为了获得有关该错误的一些背景信息,我继续打开了此处提交的第一个补丁。

它至少让我知道代码本身到底在哪里需要修复。我在这里找到了

问题 2.我是否在正确的轨道上找出需要修复的代码?

问题 3。即使在到达DBUtils.java文件之后,我也找不到任何关于该类的基本功能或它在整个情况中的位置的文档。有人可以帮我解决这个问题,我如何弄清楚一个类应该做什么等等,或者至少是一些关于它的文档?

4

1 回答 1

2

你在正确的道路上。基本上,我能为 Mozilla 做些什么网站是一种让您发现您可能感兴趣的项目的快速简便的方法,因此它是编码贡献的第一个门户。

也就是说,你在挑选一个错误开始方面做得很好。但是,正如您所见,该错误已经被其他人处理(标记为已分配)。你最好的选择是找到一些新的“好的第一个错误”来解决。这可能是一项复杂的任务,因为 Bug 的 Ahoy 只显示了一些不属于良好的第一个错误。

您应该尝试通过电子邮件或 IRC(后者以获得更快的回复)与 Fennec 团队取得联系。

现在,以更一般的方式回答您的问题

问题 1. 现在我如何获得更多关于错误到底是什么以及需要做什么的背景信息?

通常,这应该在 Bugzilla 上的错误的第一条评论中描述。如果不是这种情况,请随时在此处留言并询问更多方向。您还可以使用needinfo功能标记错误的报告者或指导者,因为它们通常会更好地显示。

如您所见,有人在评论 1中要求提供更多信息,并给出了一些新的指示。

通常,您不会找到包含错误本身代码的补丁,但您可能会找到指向文件的链接以及有关更改内容和更改方式的更精确说明。如果没有,请再次联系记者和/或导师。

问题 2. 我是否在正确的轨道上找出需要修复的代码?

你在正确的道路上。一般来说,如果 bug 上没有指向文件或 DXR 的链接,但提到了一些代码,您可以像以前一样使用DXR查找它。

问题 3。即使在到达 DBUtils.java 文件之后,我也找不到任何关于该类的基本功能或它在整个情况中的位置的文档。有人可以帮我解决这个问题,我如何弄清楚一个类应该做什么等等,或者至少是一些关于它的文档?

我通常在浏览 Firefox 代码并且需要更多关于文档不太完善的类的背景知识时,浏览该文件的更改日志,单击DXR右上角面板中的“日志”按钮(显示文件时) . 它将向您显示影响文件的错误列表。您甚至可以追溯实现它的原始文件,以获取更多上下文。

另一方面,如果您只对文件中单行代码的历史感兴趣,那么责备工具就是您的朋友。它告诉你谁最后接触了这条线、变更集和相关的错误号。也可以从此处找到日志的位置访问

然而,在 DBUtils.java 的情况下,该类看起来只包含一些用于数据库访问的实用程序函数。

要查看 Firefox 代码库中的某些内容是如何使用的,您仍然可以使用 DXR。这是 DBUtils 对象的示例搜索

于 2016-10-19T09:15:20.587 回答