Starting GHC development.

classic Classic list List threaded Threaded
13 messages Options
Reply | Threaded
Open this post in threaded view
|

Starting GHC development.

Heller Time
Hello GHC devs.

It's been my New Year's resolution to stop being just a GHC user and become
a GHC developer.

To that end, I've submitted my first patch to GHC (trac #8475 -- just a
simple documentation fix). Nothing too earth shattering, but I figured this
would be a good way to familiarize myself with the GHC workflow.

I believe I've followed the instructions for working on GHC correctly.
Please let me know if I have strayed.

Looking forward to many more commits in the future.

Happy New Year.

Chris Heller
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.haskell.org/pipermail/ghc-devs/attachments/20140102/3a9e5dea/attachment.html>

Reply | Threaded
Open this post in threaded view
|

Starting GHC development.

Simon Peyton Jones
Chris

It's been my New Year's resolution to stop being just a GHC user and become a GHC developer.

Thank you.  We need lots of help!

The process you've followed looks right.  (Edward is right to find the patch that made the change that you reverted, and ask its author.)

I see you've also worked on #8602.

By changing the status to patch, Austin should get to it in due course.

Simon

From: ghc-devs [mailto:ghc-devs-bounces at haskell.org] On Behalf Of Chris Heller
Sent: 02 January 2014 19:17
To: ghc-devs at haskell.org
Subject: Starting GHC development.

Hello GHC devs.

It's been my New Year's resolution to stop being just a GHC user and become a GHC developer.

To that end, I've submitted my first patch to GHC (trac #8475 -- just a simple documentation fix). Nothing too earth shattering, but I figured this would be a good way to familiarize myself with the GHC workflow.

I believe I've followed the instructions for working on GHC correctly. Please let me know if I have strayed.

Looking forward to many more commits in the future.

Happy New Year.

Chris Heller
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.haskell.org/pipermail/ghc-devs/attachments/20140103/94d5a71d/attachment.html>

Reply | Threaded
Open this post in threaded view
|

Starting GHC development.

Heller Time
>
>
 Thank you.  We need lots of help!
>

I can't expect to jump right in and just become one with 20 years of
development, but I do plan on whacking away at the low hanging fruit until
it all starts making sense.

-Chris
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.haskell.org/pipermail/ghc-devs/attachments/20140103/2f20512e/attachment.html>

Reply | Threaded
Open this post in threaded view
|

Starting GHC development.

Mateusz Kowalczyk
In reply to this post by Simon Peyton Jones
On 03/01/14 13:27, Simon Peyton-Jones wrote:
> [snip]
> Thank you.  We need lots of help!
> [snip]

While I hate to interrupt this thread, I think this is a good chance to
mention something.

I think the big issue for joining GHC development is the lack of
communication on the mailing list. There are many topics where a person
has a problem with GHC tree (can't validate/build, some tests are
failing), posts to GHC devs seeking help and never gets a reply. This is
very discouraging and often makes it outright impossible to contribute.

An easy example is the failing tests one: unfortunately some tests are
known to fail, but they are only known to fail to existing GHC devs. A
new person tries to validate clean tree, gets test failures, asks for
help on GHC devs, doesn't get any, gives up.

Is there any better way to get through than ghc-devs? Even myself I'd
love to get started but if I can't get help even getting the ?clean?
tree to a state where I'm confident it's not a problem with my machine,
how am I to write patches for anything? A more serious example is that
the work I did over summer on Haddock still hasn't been pushed in. Why?
Because neither Simon Hengel nor myself can ensure that we haven't
broken anything as neither of use gets a clean validate. I have in fact
asked for help recently with this but to no avail and I do know Simon
also sought help in the past to no avail. I have also tried to join the
development quite a few months in the past now but due to failing tests
on validate and lack of help, I had to give up on that.

Please guys, try to increase responsiveness to posts on this list. It's
very easy to scroll down in your mail client and see just how many
threads never got a single reply.

--
Mateusz K.

Reply | Threaded
Open this post in threaded view
|

Starting GHC development.

Gabor Greif-2
On 1/3/14, Mateusz Kowalczyk <fuuzetsu at fuuzetsu.co.uk> wrote:

> On 03/01/14 13:27, Simon Peyton-Jones wrote:
>> [snip]
>> Thank you.  We need lots of help!
>> [snip]
>
> While I hate to interrupt this thread, I think this is a good chance to
> mention something.
>
> I think the big issue for joining GHC development is the lack of
> communication on the mailing list. There are many topics where a person
> has a problem with GHC tree (can't validate/build, some tests are
> failing), posts to GHC devs seeking help and never gets a reply. This is
> very discouraging and often makes it outright impossible to contribute.
>
> An easy example is the failing tests one: unfortunately some tests are
> known to fail, but they are only known to fail to existing GHC devs. A
> new person tries to validate clean tree, gets test failures, asks for
> help on GHC devs, doesn't get any, gives up.

We should explicitly say somewhere that pinging for an answer is okay.
Sometimes the key persons (for a potential answer) are out of town or
too busy, and the question gets buried.

Repeating the answer a few days later raises awareness and has higher
chance to succeed. This is how other technical lists (e.g. LLVM's)
work.

Cheers,

    Gabor

>
> Is there any better way to get through than ghc-devs? Even myself I'd
> love to get started but if I can't get help even getting the ?clean?
> tree to a state where I'm confident it's not a problem with my machine,
> how am I to write patches for anything? A more serious example is that
> the work I did over summer on Haddock still hasn't been pushed in. Why?
> Because neither Simon Hengel nor myself can ensure that we haven't
> broken anything as neither of use gets a clean validate. I have in fact
> asked for help recently with this but to no avail and I do know Simon
> also sought help in the past to no avail. I have also tried to join the
> development quite a few months in the past now but due to failing tests
> on validate and lack of help, I had to give up on that.
>
> Please guys, try to increase responsiveness to posts on this list. It's
> very easy to scroll down in your mail client and see just how many
> threads never got a single reply.
>
> --
> Mateusz K.
> _______________________________________________
> ghc-devs mailing list
> ghc-devs at haskell.org
> http://www.haskell.org/mailman/listinfo/ghc-devs
>

Reply | Threaded
Open this post in threaded view
|

Starting GHC development.

Mateusz Kowalczyk
On 03/01/14 18:50, Gabor Greif wrote:

> On 1/3/14, Mateusz Kowalczyk <fuuzetsu at fuuzetsu.co.uk> wrote:
>> On 03/01/14 13:27, Simon Peyton-Jones wrote:
>>> [snip]
>>> Thank you.  We need lots of help!
>>> [snip]
>>
>> While I hate to interrupt this thread, I think this is a good chance to
>> mention something.
>>
>> I think the big issue for joining GHC development is the lack of
>> communication on the mailing list. There are many topics where a person
>> has a problem with GHC tree (can't validate/build, some tests are
>> failing), posts to GHC devs seeking help and never gets a reply. This is
>> very discouraging and often makes it outright impossible to contribute.
>>
>> An easy example is the failing tests one: unfortunately some tests are
>> known to fail, but they are only known to fail to existing GHC devs. A
>> new person tries to validate clean tree, gets test failures, asks for
>> help on GHC devs, doesn't get any, gives up.
>
> We should explicitly say somewhere that pinging for an answer is okay.
> Sometimes the key persons (for a potential answer) are out of town or
> too busy, and the question gets buried.
>
> Repeating the answer a few days later raises awareness and has higher
> chance to succeed. This is how other technical lists (e.g. LLVM's)
> work.
>
> Cheers,
>
>     Gabor
>

While bumping the thread might help, I don't think people missing it is
always the case. Refer to Carter's recent e-mail about something very
important: when is 7.8 finally happening. It was pinged 9 days later by
Kazu and still no replies! In the end he had to make another thread
nearly half a month after his initial one and directly CC some people to
get any output?

I think it's more about ?I'm not 100% sure here so I won't say anything?
which is terrible for newcomers because to them it seems like everyone
ignored their thread. For a newcomer, even ?did you try make
maintainer-clean? might be helpful. At least they don't feel ignored.

--
Mateusz K.

Reply | Threaded
Open this post in threaded view
|

Starting GHC development.

Simon Peyton Jones
Friends

Happy new year!

About GHC 7.8, I apologise for the lack of communication. I was on holiday from 10 Dec, and replied when I got back after Christmas. I had a good conversation with Austin last Friday, and I expect an email from him to ghc-devs sometime today, to say what tasks remain, and when he expects to be able to cut a release candidate.

More generally, I very much sympathise with Mateusz's original observation that it's discouraging to email ghc-devs about something, and get no reply.

It's a classic problem with a large open-source project, run entirely by volunteers.  There is literally no one whose day job is to maintain GHC, except Austin, and even he is not superman. So if you email and get no reply it may just be that no one knows the answer, at least not without digging.

What's the solution? Certainly ping after a few days, as Gabor says. (Sometimes people wait to see if someone knows The Answer, and a ping will then elicit some "well maybe you could try this" half-answers.) Failing that, just roll up your sleeves and start digging!  Maybe you will become the expert in that area and will soon be answering questions yourself.

If anyone has better ideas, do contribute them.

Simon

| -----Original Message-----
| From: ghc-devs [mailto:ghc-devs-bounces at haskell.org] On Behalf Of
| Mateusz Kowalczyk
| Sent: 03 January 2014 19:15
| Cc: ghc-devs at haskell.org
| Subject: Re: Starting GHC development.
|
| On 03/01/14 18:50, Gabor Greif wrote:
| > On 1/3/14, Mateusz Kowalczyk <fuuzetsu at fuuzetsu.co.uk> wrote:
| >> On 03/01/14 13:27, Simon Peyton-Jones wrote:
| >>> [snip]
| >>> Thank you.  We need lots of help!
| >>> [snip]
| >>
| >> While I hate to interrupt this thread, I think this is a good chance
| >> to mention something.
| >>
| >> I think the big issue for joining GHC development is the lack of
| >> communication on the mailing list. There are many topics where a
| >> person has a problem with GHC tree (can't validate/build, some tests
| >> are failing), posts to GHC devs seeking help and never gets a reply.
| >> This is very discouraging and often makes it outright impossible to
| contribute.
| >>
| >> An easy example is the failing tests one: unfortunately some tests
| >> are known to fail, but they are only known to fail to existing GHC
| >> devs. A new person tries to validate clean tree, gets test failures,
| >> asks for help on GHC devs, doesn't get any, gives up.
| >
| > We should explicitly say somewhere that pinging for an answer is okay.
| > Sometimes the key persons (for a potential answer) are out of town or
| > too busy, and the question gets buried.
| >
| > Repeating the answer a few days later raises awareness and has higher
| > chance to succeed. This is how other technical lists (e.g. LLVM's)
| > work.
| >
| > Cheers,
| >
| >     Gabor
| >
|
| While bumping the thread might help, I don't think people missing it is
| always the case. Refer to Carter's recent e-mail about something very
| important: when is 7.8 finally happening. It was pinged 9 days later by
| Kazu and still no replies! In the end he had to make another thread
| nearly half a month after his initial one and directly CC some people to
| get any output...
|
| I think it's more about 'I'm not 100% sure here so I won't say anything'
| which is terrible for newcomers because to them it seems like everyone
| ignored their thread. For a newcomer, even 'did you try make maintainer-
| clean' might be helpful. At least they don't feel ignored.
|
| --
| Mateusz K.
| _______________________________________________
| ghc-devs mailing list
| ghc-devs at haskell.org
| http://www.haskell.org/mailman/listinfo/ghc-devs

Reply | Threaded
Open this post in threaded view
|

Starting GHC development.

Daniil Frumin
In reply to this post by Mateusz Kowalczyk
Does anyone actually know which tests are supposed to fail on 'validate'?

On Fri, Jan 3, 2014 at 10:43 PM, Mateusz Kowalczyk
<fuuzetsu at fuuzetsu.co.uk> wrote:

> On 03/01/14 13:27, Simon Peyton-Jones wrote:
>> [snip]
>> Thank you.  We need lots of help!
>> [snip]
>
> While I hate to interrupt this thread, I think this is a good chance to
> mention something.
>
> I think the big issue for joining GHC development is the lack of
> communication on the mailing list. There are many topics where a person
> has a problem with GHC tree (can't validate/build, some tests are
> failing), posts to GHC devs seeking help and never gets a reply. This is
> very discouraging and often makes it outright impossible to contribute.
>
> An easy example is the failing tests one: unfortunately some tests are
> known to fail, but they are only known to fail to existing GHC devs. A
> new person tries to validate clean tree, gets test failures, asks for
> help on GHC devs, doesn't get any, gives up.
>
> Is there any better way to get through than ghc-devs? Even myself I'd
> love to get started but if I can't get help even getting the ?clean?
> tree to a state where I'm confident it's not a problem with my machine,
> how am I to write patches for anything? A more serious example is that
> the work I did over summer on Haddock still hasn't been pushed in. Why?
> Because neither Simon Hengel nor myself can ensure that we haven't
> broken anything as neither of use gets a clean validate. I have in fact
> asked for help recently with this but to no avail and I do know Simon
> also sought help in the past to no avail. I have also tried to join the
> development quite a few months in the past now but due to failing tests
> on validate and lack of help, I had to give up on that.
>
> Please guys, try to increase responsiveness to posts on this list. It's
> very easy to scroll down in your mail client and see just how many
> threads never got a single reply.
>
> --
> Mateusz K.
> _______________________________________________
> ghc-devs mailing list
> ghc-devs at haskell.org
> http://www.haskell.org/mailman/listinfo/ghc-devs



--
Sincerely yours,
-- Daniil

Reply | Threaded
Open this post in threaded view
|

Starting GHC development.

Mateusz Kowalczyk
On 12/01/14 10:25, Daniil Frumin wrote:
> Does anyone actually know which tests are supposed to fail on 'validate'?
>

AFAIK the official stance is that you should see 0 failures.
Unofficially it seems that there's leniency and the tree seems to be in
a state with few tests failing consistently. It might be just my machine
though, but whenever I post my build logs, there seems to be no sense of
urgency to investigate so it does not seem like anyone cares or the
issue is known/being worked on.

Unfortunately, the side effect of this (and what put me off when I tried
to write some stuff for GHC months ago) was that a new developer comes,
tries to build clean tree and it fails. It's pretty discouraging.

--
Mateusz K.

Reply | Threaded
Open this post in threaded view
|

Starting GHC development.

Jan Stolarek
In reply to this post by Daniil Frumin
When you see tests failing with validate I's suggest going to #ghc IRC channel and asking there.
You're most likely to get an up-to-date answer.

Basically, when you're working on some changes in GHC I'd suggest to run ./validate on the master
branch to see what (if any) tests are failing. When validating your changes you'll have to see
whether your modifications introduced any new failures or not (or maybe fixed the existing ones).
In any case I strongly suggest running the failing tests (both on master branch and on yours) to
make sure that they fail in the same way.

Janek

Dnia niedziela, 12 stycznia 2014, Daniil Frumin napisa?:

> Does anyone actually know which tests are supposed to fail on 'validate'?
>
> On Fri, Jan 3, 2014 at 10:43 PM, Mateusz Kowalczyk
>
> <fuuzetsu at fuuzetsu.co.uk> wrote:
> > On 03/01/14 13:27, Simon Peyton-Jones wrote:
> >> [snip]
> >> Thank you.  We need lots of help!
> >> [snip]
> >
> > While I hate to interrupt this thread, I think this is a good chance to
> > mention something.
> >
> > I think the big issue for joining GHC development is the lack of
> > communication on the mailing list. There are many topics where a person
> > has a problem with GHC tree (can't validate/build, some tests are
> > failing), posts to GHC devs seeking help and never gets a reply. This is
> > very discouraging and often makes it outright impossible to contribute.
> >
> > An easy example is the failing tests one: unfortunately some tests are
> > known to fail, but they are only known to fail to existing GHC devs. A
> > new person tries to validate clean tree, gets test failures, asks for
> > help on GHC devs, doesn't get any, gives up.
> >
> > Is there any better way to get through than ghc-devs? Even myself I'd
> > love to get started but if I can't get help even getting the ?clean?
> > tree to a state where I'm confident it's not a problem with my machine,
> > how am I to write patches for anything? A more serious example is that
> > the work I did over summer on Haddock still hasn't been pushed in. Why?
> > Because neither Simon Hengel nor myself can ensure that we haven't
> > broken anything as neither of use gets a clean validate. I have in fact
> > asked for help recently with this but to no avail and I do know Simon
> > also sought help in the past to no avail. I have also tried to join the
> > development quite a few months in the past now but due to failing tests
> > on validate and lack of help, I had to give up on that.
> >
> > Please guys, try to increase responsiveness to posts on this list. It's
> > very easy to scroll down in your mail client and see just how many
> > threads never got a single reply.
> >
> > --
> > Mateusz K.
> > _______________________________________________
> > ghc-devs mailing list
> > ghc-devs at haskell.org
> > http://www.haskell.org/mailman/listinfo/ghc-devs



Reply | Threaded
Open this post in threaded view
|

Starting GHC development.

Simon Peyton Jones
In reply to this post by Mateusz Kowalczyk
None seem to fail on my (Linux) box. It'd be good if someone felt able to dig into the ones that are failing.  If there is a good reason we should open a ticket and mark them as expect_broken( ticket-number ).  Thanks!

Simon

| -----Original Message-----
| From: ghc-devs [mailto:ghc-devs-bounces at haskell.org] On Behalf Of
| Mateusz Kowalczyk
| Sent: 12 January 2014 10:30
| To: Daniil Frumin
| Cc: ghc-devs
| Subject: Re: Starting GHC development.
|
| On 12/01/14 10:25, Daniil Frumin wrote:
| > Does anyone actually know which tests are supposed to fail on
| 'validate'?
| >
|
| AFAIK the official stance is that you should see 0 failures.
| Unofficially it seems that there's leniency and the tree seems to be in
| a state with few tests failing consistently. It might be just my machine
| though, but whenever I post my build logs, there seems to be no sense of
| urgency to investigate so it does not seem like anyone cares or the
| issue is known/being worked on.
|
| Unfortunately, the side effect of this (and what put me off when I tried
| to write some stuff for GHC months ago) was that a new developer comes,
| tries to build clean tree and it fails. It's pretty discouraging.
|
| --
| Mateusz K.
| _______________________________________________
| ghc-devs mailing list
| ghc-devs at haskell.org
| http://www.haskell.org/mailman/listinfo/ghc-devs

Reply | Threaded
Open this post in threaded view
|

Starting GHC development.

Mateusz Kowalczyk
On 13/01/14 08:42, Simon Peyton Jones wrote:
> None seem to fail on my (Linux) box. It'd be good if someone felt able to dig into the ones that are failing.  If there is a good reason we should open a ticket and mark them as expect_broken( ticket-number ).  Thanks!
>
> Simon
>

Hm. I checked a log from 6 days ago and here's the end of it:

> Unexpected failures:
>    perf/compiler    T1969 [stat too good] (normal)
>    perf/compiler    T3064 [stat not good enough] (normal)
>    perf/compiler    T3294 [stat not good enough] (normal)
>    perf/compiler    T4801 [stat not good enough] (normal)
>    perf/haddock     haddock.Cabal [stat not good enough] (normal)
>    perf/haddock     haddock.base [stat not good enough] (normal)
>    perf/haddock     haddock.compiler [stat not good enough] (normal)
>    perf/should_run  lazy-bs-alloc [stat too good] (normal)

We already know that the 32-bit Linux values for Haddock need updating
but I have no idea about other ones. I will validate with a clean tree
in the following few days and will pester the list with any failures
but perhaps for the tests above, the numbers simply need updating. I
do not know, I don't think there's any information anywhere about
this. Perhaps there indeed aren't any problems but simply outdated
tests. Can someone pitch in?

Note that to a newcomer, a perf failure is still a failure especially
considering that the bottom of the log tells you to fix these before
sending any patches. I think fixing these is a little bit out of scope
for a newcomer.

--
Mateusz K.

Reply | Threaded
Open this post in threaded view
|

Starting GHC development.

Simon Marlow-7
In reply to this post by Mateusz Kowalczyk
On 03/01/2014 18:43, Mateusz Kowalczyk wrote:

> On 03/01/14 13:27, Simon Peyton-Jones wrote:
>> [snip]
>> Thank you.  We need lots of help!
>> [snip]
>
> While I hate to interrupt this thread, I think this is a good chance to
> mention something.
>
> I think the big issue for joining GHC development is the lack of
> communication on the mailing list. There are many topics where a person
> has a problem with GHC tree (can't validate/build, some tests are
> failing), posts to GHC devs seeking help and never gets a reply. This is
> very discouraging and often makes it outright impossible to contribute.
>
> An easy example is the failing tests one: unfortunately some tests are
> known to fail, but they are only known to fail to existing GHC devs. A
> new person tries to validate clean tree, gets test failures, asks for
> help on GHC devs, doesn't get any, gives up.

Personally I only just read your question about validating Haddock.  I
didn't know the answer, but I would have suggested a few things to try -
it looks like your local package database has some broken packages,
perhaps.  I'm not sure what the "post-testsuite package check" is, so I
would have to go and look.

Generally, the following things might help if you get no answer on the
mailing list:

  - ask in #ghc
  - search the ticket database (Google with 'site:ghc.haskell.org')
  - poke around in the code yourself

There are not supposed to be any failing tests in validate.  If there
are, it is a bug: see if someone else has reported it, and if not,
report it yourself.

Thanks for trying to make GHC better.  There are gaps in our support
infrastructure, which is unfortunate but typical for an open source
project, so sometimes you might have to fix something that wasn't on
your critical path.  Rest assured that we're very grateful when people
do this!

Cheers,
Simon