WeblateOrg / WeblateOrg/weblate

Add external CLA integration support

Open
#11,024 6 comments 0 reactions 0 assignees View on GitHub
enhancement Waiting for: Demand
Dominant language
Python
Stars
6.1k
Forks
1.4k
Avg merge
9h 53m
Merged PRs (30d)
395

Description

### Describe the problem

My project, https://hosted.weblate.org/projects/pachli/, has a CLA. This is enforced with a GitHub check, and the project is marked as needing the users to agree to the CLA in Weblate.

This shows them this page -- https://hosted.weblate.org/contributor-agreement/pachli/app-main?next=/translate/pachli/app-main/ga/?q=check:duplicate%20OR%20dismissed_check:duplicate -- which has a checkbox for them to agree to the CLA.

However, this CLA agreement does not carry down to GitHub, the user must use https://cla-assistant.io/pachli/pachli-android. If they do not, the PR is blocked until I can contact the user and ask them to agree to the CLA.

https://github.com/pachli/pachli-android/pull/437 is the most recent example of this. This was made more complicated because there is, as far as I can tell, no way to contact contributors via Weblate.

### Describe the solution you would like

Here are some things that would help solve this problem in different ways.

1. cla-assistant (https://github.com/cla-assistant/cla-assistant) might be popular enough that you consider supporting it directly; I could configure the Pachli project in Weblate with the CLA assistant details, and Weblate could use the CLA Assistant API to check that the user has signed the CLA there. If they haven't they get redirected there to do so, if they have then things proceed as normal.

2. Provide a config option that allows me to remove the checkbox from https://hosted.weblate.org/contributor-agreement/pachli/app-main?next=/translate/pachli/app-main/ga/?q=check:duplicate%20OR%20dismissed_check:duplicate. I think some contributors are skimming that page, see the checkbox, click it, and move on, without realising that there's more they need to do.

3. If a user has made a change that is included in a Weblate generated PR, use the GitHub API to see if any required checks on that PR have failed. If they have surface that failure to all users who have contributed commits to that PR in the Weblate UI, and encourage them to go and look for themselves to see if there's anything they can do to resolve the issue.

4. As the Weblate project maintainer, allow me to send a message via Weblate to the contributor who's causing the problem so I can let them know. I can pull their e-mail address from the pending commits, but a notification for them via the Weblate UI would be more contextually useful for them (I think).

Hope that's useful feedback.

### Describe alternatives you have considered

_No response_

### Screenshots

_No response_

### Additional context

_No response_

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.