Как мне сообщить об опечатке (отправив файл различий)?

#r

#r

Вопрос:

Я хотел бы максимально упростить исправление опечаток для разработчиков R. Как я могу отправить файл различий, создающий такой «патч»?

Кроме того, куда я должен отправить опечатку? По электронной почте? Опубликовать ошибку? Отправьте его в r-devel?

В основном меня беспокоят небольшие опечатки, такие как орфографические ошибки или грамматические исправления.

Я не могу вспомнить, где была последняя опечатка, которую я видел, но только в качестве примера, давайте просто предположим, что я хотел бы изменить «назад» на «назад» в «обратная совместимость» в файле справки для ls. Как я могу создать исправление различий?

Спасибо

Ответ №1:

Исправления часто создаются с использованием унифицированного контекста diff. Вы можете создать такую разницу с помощью diff -u .

Допустим, вы начинаете с файла foo со следующим содержимым.

 Blah
Blah
Blah
  

Затем вы изменяете его, сохраняя изменения в новом файле с именем foo.modified . Вот содержимое foo.modified :

 Blah
Blah
New information!
Blah -- changing this line
  

Теперь выполнение diff -u foo foo.modified приводит к следующему.

 --- foo 2011-11-05 20:59:13.000000000 -0700
    foo.modified    2011-11-05 20:59:44.000000000 -0700
@@ -1,3  1,4 @@
 Blah
 Blah
-Blah
 New information!
 Blah -- changing this line
  

Обратите внимание, что различия во многих системах контроля версий отображают разницу в унифицированном контексте.

Что касается того, куда отправлять ошибки в R: похоже, для этого есть встроенная функция: bug.report . В качестве альтернативы, есть веб-интерфейс к системе отслеживания ошибок R.

Ответ №2:

Совет @David Alber по поводу форматов diff хорош (хотя я часто использую diff -c вместо этого), но я прошу не согласиться с лучшей целью (он предлагает bug.report и систему отслеживания ошибок R).

  • Для простых типографских ошибок обычно лучше всего отправить быстрое электронное письмо с достаточным неформальным контекстом в r-devel@r-project.org список рассылки (убедитесь, что вы используете последнюю версию! — смотрите следующий пункт). Вот как я это делаю, и, похоже, разработчики R предпочитают это, потому что это означает, что им не нужно иметь дело с полным механизмом отчетности об ошибках. (Единственная документация по этому протоколу, которую я могу легко найти, — это заметка Брайана Рипли от 2007.)
  • Если вы собираетесь сообщать об ошибках более систематически, лучшее, что вы можете сделать, чтобы вложить средства, — это получить последнюю версию Subversion отhttps://svn.R-project.org/R/trunk (здесь есть краткое, хотя и слегка устаревшее описание), внесите изменения в файл удаленного доступа, а затем запустите svn diff , чтобы получить различия с последней версией. Как указано выше, отправьте его на r-devel (я полагаю, что вложения текстовых файлов сохраняются в электронном письме на r-devel ).
  • Не забывайте обычные предостережения при отправке отчетов об ошибках: (1) убедитесь, что вы сообщаете о самой последней версии (как указано выше, SVN лучше всего, если вы можете это выдержать); (2) убедитесь, что все, о чем вы сообщаете, определенно является ошибкой / опечаткой; (3) обязательно сообщите в соответствующие органы, т. Е. сообщите об ошибках / опечатках в предоставленных пакетах сопровождающему (соответствующий пакет должен быть указан в начале файла справки и maintainer("pkg") найдет e-mail). почтовый адрес сопровождающего).

Комментарии:

1. Я могу привести более свежую (с марта 2011 года) цитату для протокола: bugs.r-project.org/bugzilla3/show_bug.cgi?id=14540#c1

2. @Ben Спасибо, Бен! Все это звучит как хороший совет! Спасибо за вашу помощь и время.