Andy Melnikov (nponeccop) wrote,
Andy Melnikov
nponeccop

Categories:

Пропадающая функция, или Titans of Refuctoring

TL;DR: из библиотеки, входящей в состав GHC, периодически пропадает экспорт нужной функции, не используемой GHC

Всё началось в 2012 году. Я обнаружил, что из библиотеки HOOPL пропала функция runWithFuel.

6 февраля 2012, поскольку контактов мейнтейнера не нашлось,
написал Norman Ramsey. Который то ли писал статью про HOOPL, то ли ещё как был причастен. Короче, вычислил. Он ответил "бля хуйня, кто-то выложил на хакадж и мне модифицированный код не показал, работаю над проблемой, ща починю". И всё на этом.

19 апреля 2012 я пнул его ещё раз.

21 апреля 2012 мне пришло письмо с СС на обоих саймонов и каких-то других гхц-шников, о том, что Норман выложил новую версию, где среди прочего починен мой экспорт. Но он выложил её куда-то внутрь гхц, и на хакадже по-прежнему жопа.

15 июня 2012 я вклинился в тред и спросил, чо мне ждать нового релиза гхц? Ответа не последовало, хотя тред жил. Вместо этого Марлоу тут же заметил апнутый тред и начал обсуждать какие-то другие изменения Нормана в апи библиотеки.

24 июня 2012 я заметил в обсуждении, что в недоступной мне версии, оказывается, запилили другую недостающую мне фичу, и похвалил их.

25 июня 2012 Justin Bailey заметил апнутый тред и написал "ах как хорошо что вы меня добавили в тред, я как раз юзаю Hoopl в дисере" (хотя он был в треде уже полгода как).

28 декабря 2012 кто-то попытался скомпилить HNC, и наткнулся на эту хрень. Я тут же "исправил", просто прибив в .сabal гвоздями версию 3.8.7.4, не разбираясь особо.

12 ноября 2013 я ещё раз написал Норману, что воз и ныне там. Он сказал, что не сможет починить раньше января 2014. На том и порешили.

В ченжлоге HOOPL, который я увидел только сегодня, я увидел такие записи:

3.8.7.4 - re-export of runWithFuel as per Justin Bailey (тот самый дисерщик и та самая версия!)

3.10.1.0 *Apr 2015* - Re-export runWithFuel from Compiler.Hoopl

В-общем, наконец настало щастье и в версии с Hackage в третий раз починен экспорт. А в версии, с которой собирается GHC 6.10.1, по-прежнему (снова?) поломан.

Занавес.
Tags: все пидарасы а я
Subscribe

  • GNU Hello, Linux Config и scaffolding

    Пришла идея создать визард скелетов проектов на основе билд-системы ядра линукса: - Пускаем make config. Он спрашивает язык-платформу-фичи-способы…

  • Веб-фреймворк на Расте/wasm

    https://yew.rs/docs/en/getting-started/build-a-sample-app Помимо прочего, видно, что тулинг уже приличный. Можно например системные модули для ноды…

  • IDE-fu

    Два вопроса: 1. А есть ли какие-нибудь хорошие курсы-туториалы по WebFront? Так, чтоб я научился в те фичи, из-за которых всё остальное говно, и…

  • Post a new comment

    Error

    default userpic

    Your reply will be screened

    Your IP address will be recorded 

    When you submit the form an invisible reCAPTCHA check will be performed.
    You must follow the Privacy Policy and Google Terms of use.
  • 4 comments