Groups and projects

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
2 messages Options
Reply | Threaded
Open this post in threaded view
|

Groups and projects

GHC - devs mailing list
> Alright, I believe I have found the issue: you are a member of
> the GHC group and GitLab's default notification behavior is that
> you will receive notifications for all events of repositories in
> groups to which you belong.

OK thanks, that's helpful.

When you say "repository" could you also have said "project".  That is, are "projects" and "repositories" in 1-1 correspondence?

So, to understand the semantics, you can belong to

* A project.
* A group

What's the difference? The group seems to be "Glasgow Haskell Compiler"; the project seems to be "Glasgow Haskell Compiler / GHC".  Does that imply that
 * every project is part of a group; but
 * a group may have many projects?

Or maybe a project can be part of more than one group?

The "Custom settings" on a project seem to be identical to the "custom settings" for a group.  If Gitlab is deciding whether to send me a notification N, is it clear whether it's a "project notification" or a "group notification"?  If so, then it can consult the appropriate settings; but if not, it's not clear.

Sorry for all these questions.  It's astonishingly common for large software systems to describe the surface knobs without describing the underlying model that makes sense of all those knobs!


Simon


-----Original Message-----
From: Ben Gamari <[hidden email]>
Sent: 24 January 2019 03:30
To: Simon Peyton Jones <[hidden email]>
Subject: RE: GHC | hWaitForInput-accurate-pipe test (!21)

Simon Peyton Jones <[hidden email]> writes:

> Yes, tons of them! I attach a dozen that arrived in the last few hrs.
>
Alright, I believe I have found the issue: you are a member of the GHC group and GitLab's default notification behavior is that you will receive notifications for all events of repositories in groups to which you belong.

You can view and modify these settings yourself here but I have changed them to be a bit more selective. You should now only receive notifications of new merge requests and new comments on merge requests on which you have previously commented. Do let me know if you receive any more unwanted mail.

Cheers,

- Ben

_______________________________________________
ghc-devs mailing list
[hidden email]
http://mail.haskell.org/cgi-bin/mailman/listinfo/ghc-devs

signature.asc (682 bytes) Download Attachment
Reply | Threaded
Open this post in threaded view
|

Re: Groups and projects

Ben Gamari-3
Simon Peyton Jones via ghc-devs <[hidden email]> writes:

>> Alright, I believe I have found the issue: you are a member of
>> the GHC group and GitLab's default notification behavior is that
>> you will receive notifications for all events of repositories in
>> groups to which you belong.
>
> OK thanks, that's helpful.
>
> When you say "repository" could you also have said "project". That is,
> are "projects" and "repositories" in 1-1 correspondence?
>
Yes, exactly. A project has a git repository, a wiki, an issue tracker
(although this is currently disabled in the case of the ghc project),
and can accept pull requests. I have been guilty of using the words
"repository" and "project" interchangeably, which likely doesn't make
things any clearer.

> So, to understand the semantics, you can belong to
>
> * A project.
> * A group
>
> What's the difference? The group seems to be "Glasgow Haskell
> Compiler"; the project seems to be "Glasgow Haskell Compiler / GHC".
> Does that imply that
>
>  * every project is part of a group; but
>  * a group may have many projects?
>
Almost. Projects have owners. An owner may be either a group or a user.
For instance,

 * https://gitlab.haskell.org/ghc/ghc is a project (named `ghc`)
   belonging to the `ghc` group.

 * https://gitlab.haskell.org/bgamari/ghc is a project belonging to the
   `bgamari` user.

Groups may nest. https://gitlab.haskell.org/ghc/packages is a subgroup
(named `packages`) of the `ghc` group.
https://gitlab.haskell.org/ghc/packages/haskeline is a project
(`haskeline`) owned by that group.

Users can be "members" of both groups and projects. There are a few
flavours of membership ("reporter", "developer", "maintainer", and
"owner") which all imply different sets of permissions (documented here
[1]). If a user is a member of a group then they are granted permissions
to all projects of that group (and its subgroups).

As you discovered, membership also implies a few things about the
notifications you will receive about a project or group of projects.


[1] https://docs.gitlab.com/ee/user/permissions.html

> Or maybe a project can be part of more than one group?
>
> The "Custom settings" on a project seem to be identical to the "custom
> settings" for a group. If Gitlab is deciding whether to send me a
> notification N, is it clear whether it's a "project notification" or a
> "group notification"? If so, then it can consult the appropriate
> settings; but if not, it's not clear.
>

> Sorry for all these questions. It's astonishingly common for large
> software systems to describe the surface knobs without describing the
> underlying model that makes sense of all those knobs!
>
Yes, this is quite true. I do hope I could help clear up the fog. Do ask
if things are still hazy.

Cheers,

- Ben


_______________________________________________
ghc-devs mailing list
[hidden email]
http://mail.haskell.org/cgi-bin/mailman/listinfo/ghc-devs

signature.asc (497 bytes) Download Attachment