[arch-haskell] State of Affairs: Summarizing 83 days worth of experience

Peter Simons simons at cryp.to
Mon Jan 10 00:02:50 CET 2011

Hi Magnus,

 > I was probably too vague, because I was waiting for you to provide
 > more information.

well, if you have any concrete questions, then please ask me! I cannot
possibly know that you are waiting for more information unless you tell me
about it.

 > In your initial email you say things are broken, but in my opinion you
 > don't provide enough information for me to understand WHY you say that.

I am sorry, but it strikes me as fairly unreasonable to summarize my
original posting as me saying "thinks are broken". I was providing slightly
more information than that. Surely you are exaggerating a bit? After all,
you yourself said that my feedback was "invaluable". Now you seem to be
saying that my posting wasn't worth much. How is it possible that you have
changed your opinion so dramatically?

 >>  1) A lack of coordination. We have made a couple of attempts to define
 >>     policies, procedures, and responsibilities for this project, but
 >>     ultimately we never really got anywhere. The net result is that
 >>     everyone of us is working on whatever interests him, but the others
 >>     mostly don't even know about it. Consequently, we are inefficient.
 > This is true to a large extent.  What do you feel is left to define?

Most importantly, we should agree on a common goal that we are trying to
achieve. Personally, my goal has been to provide up-to-date ArchLinux build
instructions for the Haskell packages published on Hackage. To achieve that
goal, I maintained our habs tree. Based on that habs tree, I felt that it's
feasible to maintain both AUR and a binary package repository, which was my
secondary goal. I have kind-of achieved both of these goals, but only when
"Hackage" is defined as "5% of Hackage". So if those goals ought to be
achieved completely, then we need a strategy how to deal with the remaining
95% of Hackage. This realization compelled me to start this thread.

I notice that you didn't commit much to habs, so clearly you had different
goals. I wonder what those were? What exactly is it that you are trying to

 >>     We develop patches for the ArchLinux library, and when they're
 >>     ready, we throw them away, because we realize way too late that we
 >>     don't like what they do.
 > I don't think this is that uncommon in FOSS when people work on their own
 > without telling people what they are doing.

Yes, of course you are right. But the point of my remark wasn't that this
kind of thing would be uncommon. Rather, I complained about the fact that it
is highly inefficient. We are 3(!) people trying to maintain a set of almost
2000 packages. How are we supposed to accomplish that when we waste our time
writing patches that are ultimately thrown away?

We are volunteers doing this project in our spare time, so it's obviously
perfectly alright that each of us does whatever he feels like. I'm not
trying to tell anyone what they are supposed to do or don't do. However,
unless we coordinate our efforts to some extend, we cannot possibly achieve
the goal of providing Hackage to ArchLinux users. Based on the assumption
that this is our common goal, it seems obvious to me that we need to
coordinate our efforts more than we did in the past.

 >>     Similarly, we perform updates in [extra], and then we revert them again,
 >>     because we notice way too late that they break someone else's efforts.
 > I can only agree on this point, and I'm not sure what can be done to fix
 > it, if anything.

My suggestion would be that we try to establish a practice where haskell-*
updates in [extra] are communicated on this mailing list *before* they go
on-line, or even before they are being performed at all. Basically, the
maintainers of [extra] -- Remy and Vesa -- would post a message to this
list, saying: "I'm about to update haskell-xyz to version a.b.c". Is anyone
aware of any reasons why this might be a problem? Please let me know!"

 >>  2) Lack of communication. [...]
 > This is again about [extra], I can only say I wish it were better, but I
 > can't personally do much about it.

In my humble opinion, communication between the maintainers of habs and
[extra] needs to be improved. Obviously, we cannot force anyone to do what
we'd like them to do, but surely we can contact the ArchLinux guys, explain
the situation, and try to work out a solution together with them? I made a
concrete suggestion above. Surely, these are reasonable people who
understand the problem and are willing to help us out, especially since it's
in the best interest of all ArchLinux users. Maybe Xyne and/or Remy can do
something for us in that area?

 >>  3) Inadequate tools. The cabal2arch utility is a great, but in its
 >>     current shape it cannot re-generate the habs in a fashion that I'd
 >>     call "automatic".
 > Have you raised bugs for the individual issues here, so that we have them
 > documented in a central place?

Yes, of course I did. Didn't you receive notifications from Github?

 > Please provide info of HOW things are broken, i.e. current behaviour and
 > correct behaviour.

If you have specific questions about the bugs that I filed, could you please
attach those to the appropriate issue in Github? Besides, it sounds like you
weren't aware of the issues that I filed, so it's probably a good idea to
look at them first, to figure out what exactly you feel is missing.

 >>     Furthermore, we seem to have no functioning tools that help us
 >>     automate the updating process. My experience so far is that even the
 >>     tiniest trivial update has a significant potential to break the
 >>     build of dozens of other packages. Basically, there seem to be
 >>     trivial updates in Haskell land.
 > What process are you using? Both when adding completely new packages and
 > when puling in a new version of a package. What tools are you currently
 > using? What actions are manual, and what actions are only partially
 > covered by tools?

Well, as I said, we don't have any functioning tools or procedures that
assist in process of updating a package. So I'm not using *any* tools, and
*all* actions are manual. It feels like you expect me to provide extensive
formal documentation of what I've been doing in the last 3 months. I am
sorry, but I don't have the time to submit a report about everything.
Instead, I recommend that you just try to do a few updates yourself. Then
you'll find out what the problems are. Frankly, I'm surprised that you don't
know this already. How exactly did you perform updates in the last 3 months?

Take care,

More information about the arch-haskell mailing list