Начинаем с разработки Mozilla / вклад в Fennec

#open-source #mozilla #fennec

#открытый исходный код #mozilla #fennec

Вопрос:

Я впервые пытаюсь внести свой вклад в 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=1amp;simple=1 и эта конкретная ошибка привлекла мое внимание. В описании ошибки упоминается следующее :

Есть некоторые методы, которые мы разделяем (или можем использовать) в наших реализациях БД, например, добавление PARAM_SHOW_DELETED, PARAM_LIMIT или PARAM_PROFILE .

В настоящее время они распространяются на LocalBrowserDB, TabsAccessor, URLMetadata и так далее. Было бы неплохо их очистить.

Вопрос 1.Теперь, как мне получить больше информации о том, что именно является ошибкой и что требуется сделать?

На данный момент, похоже, уже отправлено 2 патча, исходя из того, что я понял (и, пожалуйста, исправьте, если мое понимание здесь неверно). Итак, чтобы получить некоторый контекст об ошибке, я пошел дальше и открыл первый патч, представленный здесь.

Это дало мне некоторое представление о том, по крайней мере, где именно находится сам код, который необходимо исправить. И я нашел это здесь

Вопрос 2.Я на правильном пути в том, как определить код, который необходимо исправить?

Вопрос 3.Даже после достижения DBUtils.java file Я не смог найти никакой документации о том, что в основном делает класс, или где он вписывается в общую картину. Может кто-нибудь, пожалуйста, помочь мне с этим, как мне выяснить, что должен делать класс и т. Д. Или, По крайней мере, некоторую документацию по этому поводу?

Ответ №1:

Вы на правильном пути. По сути, веб-сайт «Что я могу сделать для Mozilla» — это быстрый и простой способ найти проекты, которые могут вас заинтересовать, так что это первый доступ к вкладам в кодирование.

Тем не менее, вы хорошо поработали, выбрав ошибку для начала. Однако, как вы видели, над ошибкой уже работал кто-то другой (помеченный как назначенный). Лучше всего найти какую-нибудь новую «хорошую первую ошибку» для работы. Это может быть сложной задачей, поскольку Ahoy Бага показывает только несколько не принадлежащих хороших первых ошибок.

Вам следует попытаться связаться с командой Fennec либо по электронной почте, либо по IRC (последнее для более быстрого ответа).

Теперь, чтобы ответить на ваши вопросы, в более общем виде

Вопрос 1. Теперь, как мне получить больше информации о том, что именно является ошибкой и что требуется сделать?

Обычно это должно быть описано в первом комментарии к ошибке, в Bugzilla. Если это не так, не стесняйтесь оставить сообщение там и попросить дополнительные указания. Вы также можете пометить репортера или наставника ошибки, используя функциональность needinfo, поскольку они обычно лучше отображаются.

Как вы можете видеть, кто-то попросил дополнительную информацию в комментарии 1, и были даны некоторые новые указания.

В общем, вы не найдете исправления с кодом самой ошибки, но вы можете найти ссылки на файлы и более точные указания, что и как нужно изменить. Если нет, опять же, не стесняйтесь связаться с репортером и / или наставником.

Вопрос 2. Я на правильном пути в том, как определить код, который необходимо исправить?

Вы на правильном пути. В общем, если в ошибке нет ссылок на файлы или DXR, но упоминается какой-то код, вы можете посмотреть его с помощью DXR, как вы и делали.

Вопрос 3. Даже после достижения DBUtils.java file Я не смог найти никакой документации о том, что в основном делает класс, или где он вписывается в общую картину. Может ли кто-нибудь, пожалуйста, помочь мне с этим, как мне выяснить, что должен делать класс и т. Д. Или, По крайней мере, некоторую документацию по этому поводу?

Что я обычно делаю при навигации по коду Firefox и нуждаюсь в дополнительной информации о не очень хорошо документированном классе, так это просматриваю журнал изменений для этого файла, нажав на кнопку журнала в верхней правой панели DXR (при отображении файла). Он покажет вам список ошибок, которые повлияли на файл. Вы даже можете отследить исходный файл, в котором это реализовано, чтобы получить больше контекста.

С другой стороны, если вас интересует только история одной строки кода в файле, то инструмент «виноват» — ваш друг. В нем указывается, кто последним касался строки, набор изменений и номер соответствующей ошибки. Это также доступно оттуда, где вы можете найти журнал, здесь.

В случае DBUtils.java Однако, похоже, что класс просто содержит некоторые служебные функции для доступа к базе данных.

Чтобы увидеть, как что-то используется в кодовой базе Firefox, вы все равно можете использовать DXR. Вот пример поиска объекта DBUtils.