Re: Updating haddock

2022-09-05 Thread Ben Gamari
Simon Peyton Jones  writes:

> Dear devs
>
> I'm working on !8750, which has some knock-on changes that are needed on
> the Haddock repo.   So
>
>- in the main repo I have wip/T21623
>- in the utils/haddock repo have branch wip/spj-T21623
>
> Periodically I need to rebase on master.
>
> Question: what is the Blessed Sequence of Commands that I should use to
> push the right changes to haddock?  I think it is something like:
>
>
> 1. In the main GHC repo, on branch wip/T21623
>1. git fetch
>2. git rebase origin/master
>
> 2. In utils/haddock,
>   1. identify the set of patches P1..Pn between the trunk and my haddock
>  tip, the changes that I need to haddock.
>   2. Somehow check out the haddock commit K that corresponds to
>  origin/master
>   3. Apply P1..Pn on top of K
>   4. Force-push to origin/wip/spj-T21623
>   3. Move to the main GHC repo
>   1. git add utils/haddock
>   2. Create a patch for that change
>   3. Push to main repo
>
>
> But I am not sure how to do step 2.2, nor what is an efficient way to do
> 2.3.
>
In general GHC `master` should always refer to the `ghc-head` branch in
the Haddock repository.

The easiest way would be to use `git rebase`. Specifically, given a
history like:

W --- X --- Y --- Z <-- origin/ghc-head
  \
   \--- A --- B <-- wip/spj-T21623

Running:

git rebase origin/ghc-head

while on wip/spj-T21623 will result in:

W --- X --- Y --- Z <-- origin/ghc-head
  \
   \--- A --- B <-- wip/spj-T21623


Do be sure to update your local tracking branches before doing this
(using `git remote update origin`).

Overall, this would look something like:

$ cd utils/haddock
$ git remote update origin   # update local tracking branches
$ git checkout wip/spj-T21623# ensure you are on your WIP branch
$ git rebase origin/ghc-head
$ git push -f origin wip/spj-T21623  # push your Haddock branch
$ cd ../..
$ git commit utils/haddock
$ git push -f origin wip/TspjT21623  # push your GHC branch

Cheers,

- Ben


signature.asc
Description: PGP signature
___
ghc-devs mailing list
ghc-devs@haskell.org
http://mail.haskell.org/cgi-bin/mailman/listinfo/ghc-devs


Re: Tags

2022-09-05 Thread Ben Gamari
Simon Peyton Jones  writes:

> I love emacs' tags-query-replace function, which allows me to do a
> search-and-replace across an entire repo.  But to do that I need a TAGS
> file that, at least, lists all the Hsakell files in GHC.
>
> What is the approved way to construct a TAGS file for a bunch of Haskell
> modules?  Is this documented anywhere?
>
I haven't tried this recently on GHC but my first instinct would be to
use hasktags [1]:

$ cabal install hasktags
$ hasktags --etags ./compiler

At some point in the past I would have said that ideally Hadrian would
be able to build such a thing. However, at this point TAGS files are
slowly falling out of fashion in favor of language servers.

Another way to reach a similar end would be to rather search-and-replace
across all git-tracked files. However, somewhat surprisingly, a bit of
Googling didn't turn up any easy way of accomplishing this. The
closest I can find is [1].

Cheers,

- Ben


[1] 
https://emacs.stackexchange.com/questions/37286/find-and-replace-a-text-among-the-files-of-a-project



signature.asc
Description: PGP signature
___
ghc-devs mailing list
ghc-devs@haskell.org
http://mail.haskell.org/cgi-bin/mailman/listinfo/ghc-devs


Re: Tags

2022-09-05 Thread Alan & Kim Zimmerman
I generally use hasktags (install via cabal-install), and you can give it a
list of directories to index.

I normally do it in the GHC/compiler directory, so it has just the GHC
source

Alan

On Mon, 5 Sept 2022 at 20:51, Simon Peyton Jones <
simon.peytonjo...@gmail.com> wrote:

> I love emacs' tags-query-replace function, which allows me to do a
> search-and-replace across an entire repo.  But to do that I need a TAGS
> file that, at least, lists all the Hsakell files in GHC.
>
> What is the approved way to construct a TAGS file for a bunch of Haskell
> modules?  Is this documented anywhere?
>
> Thanks
>
> Simon
> ___
> ghc-devs mailing list
> ghc-devs@haskell.org
> http://mail.haskell.org/cgi-bin/mailman/listinfo/ghc-devs
>
___
ghc-devs mailing list
ghc-devs@haskell.org
http://mail.haskell.org/cgi-bin/mailman/listinfo/ghc-devs


Tags

2022-09-05 Thread Simon Peyton Jones
I love emacs' tags-query-replace function, which allows me to do a
search-and-replace across an entire repo.  But to do that I need a TAGS
file that, at least, lists all the Hsakell files in GHC.

What is the approved way to construct a TAGS file for a bunch of Haskell
modules?  Is this documented anywhere?

Thanks

Simon
___
ghc-devs mailing list
ghc-devs@haskell.org
http://mail.haskell.org/cgi-bin/mailman/listinfo/ghc-devs


Updating haddock

2022-09-05 Thread Simon Peyton Jones
Dear devs

I'm working on !8750, which has some knock-on changes that are needed on
the Haddock repo.   So

   - in the main repo I have wip/T21623
   - in the utils/haddock repo have branch wip/spj-T21623

Periodically I need to rebase on master.

Question: what is the Blessed Sequence of Commands that I should use to
push the right changes to haddock?  I think it is something like:


   1. In the main GHC repo, on branch wip/T21623
   1. git fetch
  2. git rebase origin/master
   2. In utils/haddock,
   1. identify the set of patches P1..Pn between the trunk and my haddock
  tip, the changes that I need to haddock.
  2. Somehow check out the haddock commit K that corresponds to
  origin/master
  3. Apply P1..Pn on top of K
  4. Force-push to origin/wip/spj-T21623
  3. Move to the main GHC repo
  1. git add utils/haddock
  2. Create a patch for that change
  3. Push to main repo


But I am not sure how to do step 2.2, nor what is an efficient way to do
2.3.

I would welcome very precise instructions.  Thank you!

Simon
___
ghc-devs mailing list
ghc-devs@haskell.org
http://mail.haskell.org/cgi-bin/mailman/listinfo/ghc-devs


Re: CI failures

2022-09-05 Thread Ben Gamari
Ben Gamari  writes:

> Simon Peyton Jones  writes:
>
>> Matthew, Ben, Bryan
>>
>> CI is failing in in "lint-ci-config"..
>>
>> See https://gitlab.haskell.org/ghc/ghc/-/merge_requests/8916
>> or https://gitlab.haskell.org/ghc/ghc/-/merge_requests/7847
>>
> I'll investigate.
>
I believe this should be fixed by !8943. Perhaps you could try rebasing
on top of this?

Cheers,

- Ben


signature.asc
Description: PGP signature
___
ghc-devs mailing list
ghc-devs@haskell.org
http://mail.haskell.org/cgi-bin/mailman/listinfo/ghc-devs


Re: CI failures

2022-09-05 Thread Ben Gamari
Simon Peyton Jones  writes:

> Matthew, Ben, Bryan
>
> CI is failing in in "lint-ci-config"..
>
> See https://gitlab.haskell.org/ghc/ghc/-/merge_requests/8916
> or https://gitlab.haskell.org/ghc/ghc/-/merge_requests/7847
>
I'll investigate.

Cheers,

- Ben


signature.asc
Description: PGP signature
___
ghc-devs mailing list
ghc-devs@haskell.org
http://mail.haskell.org/cgi-bin/mailman/listinfo/ghc-devs


CI failures

2022-09-05 Thread Simon Peyton Jones
Matthew, Ben, Bryan

CI is failing in in "lint-ci-config"..

See https://gitlab.haskell.org/ghc/ghc/-/merge_requests/8916
or https://gitlab.haskell.org/ghc/ghc/-/merge_requests/7847

What's up?

Simon
___
ghc-devs mailing list
ghc-devs@haskell.org
http://mail.haskell.org/cgi-bin/mailman/listinfo/ghc-devs