File: CONTRIBUTING.md

package info (click to toggle)
linux-entra-sso 1.7.2-1
  • links: PTS, VCS
  • area: contrib
  • in suites: forky, sid
  • size: 404 kB
  • sloc: javascript: 1,133; python: 361; makefile: 227; sh: 18
file content (77 lines) | stat: -rw-r--r-- 3,465 bytes parent folder | download | duplicates (2)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
<!--
SPDX-FileCopyrightText: Copyright 2024 Siemens AG
SPDX-License-Identifier: MPL-2.0
-->

# Contributing to linux-entra-sso

Contributions are always welcome. This document explains the
general requirements on contributions and the recommended preparation
steps.

## Contribution Checklist

- use git to manage your changes [*recommended*]
- follow Python coding style outlined in pep8 [**required**]
- add signed-off to all patches [**required**]
    - to certify the "Developer's Certificate of Origin", see below
    - check with your employer when not working on your own!
- post follow-up version(s) if feedback requires this
- send reminder if nothing happened after about a week
- when adding new files, add a license header (see existing files) [**required**]

Developer's Certificate of Origin 1.1
-------------------------------------

When signing-off a patch for this project like this

    Signed-off-by: Random J Developer <random@developer.example.org>

using your real name (no pseudonyms or anonymous contributions), you declare the
following:

    By making a contribution to this project, I certify that:

        (a) The contribution was created in whole or in part by me and I
            have the right to submit it under the open source license
            indicated in the file; or

        (b) The contribution is based upon previous work that, to the best
            of my knowledge, is covered under an appropriate open source
            license and I have the right under that license to submit that
            work with modifications, whether created in whole or in part
            by me, under the same open source license (unless I am
            permitted to submit under a different license), as indicated
            in the file; or

        (c) The contribution was provided directly to me by some other
            person who certified (a), (b) or (c) and I have not modified
            it.

        (d) I understand and agree that this project and the contribution
            are public and that a record of the contribution (including all
            personal information I submit with it, including my sign-off) is
            maintained indefinitely and may be redistributed consistent with
            this project or the open source license(s) involved.

## Testing

Please test the extension on all supported platforms (browsers).
If you cannot test on a platform (e.g., because you don't have it), clearly state this.
We also provide a mock implementation of the backend part, which can be installed using `make local-install-mock`.
This mock processes and returns syntactically valid data via the native messaging protocol,
enabling testing of features like multi-account support that are otherwise difficult to test.
It does not require a `microsoft-identity-broker` to be running but also does not issue valid tokens.

## Maintainers: Create Releases

The creation of public releases is a partially automated process:

1. update code and create release tags: `VERSION=<x.x.x> make release`
2. push to GitHub: `git push origin main && git push origin v<x.x.x>`
3. wait for release action to finish (public release is created)
4. add release-notes to public release
5. manually inspect signed xpi (double check)
6. merge auto-created MR to enroll Firefox update manifest
7. publish CWS upload (answer questions on permission changes)
8. wait for CWS to review and sign extension, upload `.crx` to releases page