Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Sync with upstream to get latest updates from OpenTermsArchive/terms-types v.1.4.0 #3

Merged
merged 117 commits into from
Nov 5, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
117 commits
Select commit Hold shift + click to select a range
008d90f
Add new type template
clementbiron Jun 18, 2024
0149761
Add changelog entry
clementbiron Jun 18, 2024
51bb04b
Improve wording
clementbiron Jun 19, 2024
127a706
Improve template
clementbiron Jun 19, 2024
40e6a7e
Remove duplicate example with placeholder
clementbiron Jun 20, 2024
048d729
Add new type template (#30)
clementbiron Jun 20, 2024
bdd5801
Update contributing
clementbiron Jun 19, 2024
f690711
Set up All Contributors
clementbiron Jun 19, 2024
c0d8e73
Ease listing contributors (#32)
clementbiron Jun 24, 2024
1112c00
Update contributors
clementbiron Jun 19, 2024
cd97c4d
Update contributors (#33)
clementbiron Jun 24, 2024
78c4d7a
Rename new-type.yml to suggestions.yml
clementbiron Jul 1, 2024
a3d6c65
Clean changelog
clementbiron Jul 5, 2024
48798cf
Clean changelog
clementbiron Jul 5, 2024
2afcabc
Switch to changelog-action
MattiSG Jul 5, 2024
28626d6
Update CI dependencies
MattiSG Jul 5, 2024
e632a9b
Improve CI performance
MattiSG Jul 5, 2024
d5743ba
Unify whitespace
MattiSG Jul 5, 2024
6309e5a
Prevent double tests on main branch
MattiSG Jul 5, 2024
ffa547e
Bump package.json version number in CD
MattiSG Jul 5, 2024
a614311
Decrease published package size
MattiSG Jul 5, 2024
cd6bd5f
Update changelog
MattiSG Jul 5, 2024
dcf71da
Unify release and clean-changelog workflows
MattiSG Jul 8, 2024
bb175b0
Update contributors list
MattiSG Jul 8, 2024
200be66
Improve documentation title
MattiSG Jul 8, 2024
c7acd47
Improve documentation markup
MattiSG Jul 8, 2024
3fb623d
Update contributors list
MattiSG Jul 8, 2024
6ea6750
Bump version type to minor
MattiSG Jul 9, 2024
620ae7e
Switch to GitHub Action to handle changelog
MattiSG Jul 9, 2024
7350382
Ask jurisdiction instead of service name
clementbiron Jun 27, 2024
9c9e990
Remove redundant type name
clementbiron Jun 27, 2024
618f839
Simplify title
clementbiron Jun 27, 2024
69061c1
Remove writer
clementbiron Jun 27, 2024
21ec7f9
Improve wording
clementbiron Jun 27, 2024
026eed0
Improve wording
clementbiron Jul 5, 2024
23b1322
Improve example wording
clementbiron Jul 5, 2024
c54e7b8
Lint
clementbiron Jul 5, 2024
27120d1
Reorder
clementbiron Jul 5, 2024
705caf7
Add changelog entry
clementbiron Jul 5, 2024
1d6e093
Improve wording
clementbiron Jul 5, 2024
af30348
Improve new type discussion template (#45)
clementbiron Jul 9, 2024
b200013
Clean changelog
MattiSG Jul 10, 2024
4b34612
Import branch protection bypass from engine
MattiSG Jul 10, 2024
028b46c
Use action option to publish git tags
MattiSG Jul 10, 2024
d1f334f
Rely on action to push to target branch
MattiSG Jul 10, 2024
bb985c2
Optimise action performance
MattiSG Jul 10, 2024
a540240
Prevent double test runs
MattiSG Jul 10, 2024
f38c07c
Prevent workflow run on automatic commits
MattiSG Jul 10, 2024
7c8c648
Ease testing
MattiSG Jul 10, 2024
995af32
Rely on protection settings to ignore reviews
MattiSG Jul 10, 2024
36b7dfb
Stop requiring release bot to be admin
MattiSG Jul 10, 2024
f12eecc
Revert "Use action option to publish git tags"
MattiSG Jul 10, 2024
9ced530
Refactor tagging step
MattiSG Jul 10, 2024
4eccec2
Validate changelog only in PRs targeting main
MattiSG Jul 11, 2024
b1bf93f
Unify comments style
MattiSG Jul 11, 2024
1a8640f
Enable release workflow with branch protection
MattiSG Jul 15, 2024
3fbd1c2
Update changelog
OTA-Release-Bot Jul 15, 2024
27cdddd
Rename suggestions.yml to submitted.yml
clementbiron Jul 30, 2024
9bd6c0e
Improve template
MattiSG Jul 30, 2024
8091716
Update push-protected GitHub action
MattiSG Jul 15, 2024
42c79d5
Increase distinction between jobs names in UI
MattiSG Jul 11, 2024
c6f8c77
Update changelog
MattiSG Jul 31, 2024
4ce0d52
Update CI dependencies and job name
MattiSG Jul 31, 2024
56a7ef6
Fix dependency version reference
MattiSG Jul 31, 2024
75d593c
Fix dependency version reference
MattiSG Jul 31, 2024
202c202
Support no-release release type
MattiSG Aug 9, 2024
ce05c17
Increase workflow readability
MattiSG Aug 9, 2024
9e70d60
Ease release testing
MattiSG Aug 9, 2024
99ce11d
Author releases from bot
MattiSG Aug 12, 2024
3e478a0
Support no-release release type
MattiSG Aug 12, 2024
8408921
Update changelog
OTA-Release-Bot Aug 12, 2024
bc36a67
Fix typos
MattiSG Jul 31, 2024
05b8e98
Add Editorial Policy
MattiSG Jul 31, 2024
ee0b3ce
Add Anti-corruption Policy
MattiSG Jul 31, 2024
c51fbf4
Unify legal references presentation
MattiSG Jul 31, 2024
bcf7acf
Add Accessibility Statement
MattiSG Jul 31, 2024
fbedc54
Add Hyperlinks Policy
MattiSG Jul 31, 2024
7fb04e1
Add Whistleblower Policy
MattiSG Jul 31, 2024
2f1f37d
Add Affiliate Agreement
MattiSG Jul 31, 2024
f71a353
Add “also known as” synonyms for terms names
MattiSG Jul 31, 2024
b9205c0
Specify publishing process of new terms types
MattiSG Jul 31, 2024
6301274
Improve changelog markup and add sponsor statement
MattiSG Jul 31, 2024
6bb8501
Add `also known as` data for all types
MattiSG Jul 31, 2024
76afb24
Add legal references
MattiSG Jul 31, 2024
9dcf0de
Correct typo
MattiSG Jul 31, 2024
01f8876
Add singular naming guidance
MattiSG Jul 31, 2024
3fa32a8
Move specifications of properties to README
MattiSG Jul 31, 2024
c6cf34a
Fix typos
MattiSG Aug 12, 2024
2aba9f0
Update changelog
OTA-Release-Bot Aug 12, 2024
3e9f84b
Update dependencies
MattiSG Jul 31, 2024
972feed
Update lockfile
MattiSG Jul 31, 2024
c33377c
Update changelog
MattiSG Jul 31, 2024
75f62b1
Upgrade dependencies
MattiSG Aug 12, 2024
a3f0abd
Update changelog
OTA-Release-Bot Aug 12, 2024
9bfb7b6
Merge upstream
MattiSG Aug 12, 2024
71008bc
Add 6 terms types, `also known as` and legal references format
MattiSG Aug 12, 2024
e57a2e5
Update changelog
OTA-Release-Bot Aug 12, 2024
6c4f1c0
Document addition process
clementbiron Oct 16, 2024
8b520c9
Update changelog
clementbiron Oct 16, 2024
c94f5d7
Fix title size
clementbiron Oct 16, 2024
c43cdd3
Improve wording
clementbiron Oct 16, 2024
da63522
Reintroduced the notice on the service-specific types
clementbiron Oct 16, 2024
2c4a2e2
Simplify final review
clementbiron Oct 16, 2024
5a06a26
Provide <suggested new type name> details
clementbiron Oct 16, 2024
18b3796
Improve wording
clementbiron Oct 21, 2024
7b19995
Improve template
clementbiron Oct 21, 2024
dd41218
Document terms types addition process (#82)
clementbiron Oct 21, 2024
31b582e
Update changelog
OTA-Release-Bot Oct 21, 2024
46ac9cf
Describe community feedback method
MattiSG Oct 22, 2024
4c0175c
Update CHANGELOG
MattiSG Oct 22, 2024
4d4940e
Describe community feedback method
MattiSG Oct 22, 2024
61d933f
Update changelog
OTA-Release-Bot Oct 22, 2024
e7c4308
Add Service Level Agreement
clementbiron Oct 24, 2024
9a78fbf
Add changelog entry
clementbiron Oct 24, 2024
0e58c8a
Add Service Level Agreement
MattiSG Oct 24, 2024
721b740
Update changelog
OTA-Release-Bot Oct 24, 2024
5795c96
Merge remote-tracking branch 'upstream/main' into update-terms-types
Ndpnt Nov 4, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
26 changes: 26 additions & 0 deletions .all-contributors.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
This file is required by [All Contributors](https://allcontributors.org/) to work properly and must not be deleted. Although it is automatically updated with the list of contributors, the actual output used in production is in JSON format and located in the `.all-contributorsrc` file.

<!-- ALL-CONTRIBUTORS-LIST:START - Do not remove or modify this section -->
<!-- prettier-ignore-start -->
<!-- markdownlint-disable -->
<table>
<tbody>
<tr>
<td align="center" valign="top" width="14.28%"><a href="https://github.com/AaronjSugarman"><img src="https://avatars.githubusercontent.com/u/82889095?v=4?s=100" width="100px;" alt="Aaron Sugarman"/><br /><sub><b>Aaron Sugarman</b></sub></a><br /><a href="#data-AaronjSugarman" title="Data">🔣</a></td>
<td align="center" valign="top" width="14.28%"><a href="https://github.com/AdrienFines"><img src="https://avatars.githubusercontent.com/u/41912392?v=4?s=100" width="100px;" alt="Adrien Fines"/><br /><sub><b>Adrien Fines</b></sub></a><br /><a href="#data-AdrienFines" title="Data">🔣</a></td>
<td align="center" valign="top" width="14.28%"><a href="https://clementbiron.com/"><img src="https://avatars.githubusercontent.com/u/364319?v=4?s=100" width="100px;" alt="Clément Biron"/><br /><sub><b>Clément Biron</b></sub></a><br /><a href="#data-clementbiron" title="Data">🔣</a></td>
<td align="center" valign="top" width="14.28%"><a href="https://github.com/LVerneyPEReN"><img src="https://avatars.githubusercontent.com/u/58298410?v=4?s=100" width="100px;" alt="Lucas Verney"/><br /><sub><b>Lucas Verney</b></sub></a><br /><a href="#data-LVerneyPEReN" title="Data">🔣</a></td>
<td align="center" valign="top" width="14.28%"><a href="http://bit.ly/work-with-martin"><img src="https://avatars.githubusercontent.com/u/4191809?v=4?s=100" width="100px;" alt="Martin Ratinaud"/><br /><sub><b>Martin Ratinaud</b></sub></a><br /><a href="https://github.com/OpenTermsArchive/terms-types/commits?author=martinratinaud" title="Code">💻</a></td>
<td align="center" valign="top" width="14.28%"><a href="https://mattischneider.fr/"><img src="https://avatars.githubusercontent.com/u/222463?v=4?s=100" width="100px;" alt="Matti Schneider"/><br /><sub><b>Matti Schneider</b></sub></a><br /><a href="#data-MattiSG" title="Data">🔣</a> <a href="https://github.com/OpenTermsArchive/terms-types/commits?author=MattiSG" title="Documentation">📖</a></td>
<td align="center" valign="top" width="14.28%"><a href="https://github.com/Ndpnt"><img src="https://avatars.githubusercontent.com/u/1098708?v=4?s=100" width="100px;" alt="Nicolas Dupont"/><br /><sub><b>Nicolas Dupont</b></sub></a><br /><a href="#data-Ndpnt" title="Data">🔣</a> <a href="https://github.com/OpenTermsArchive/terms-types/commits?author=Ndpnt" title="Documentation">📖</a> <a href="https://github.com/OpenTermsArchive/terms-types/commits?author=Ndpnt" title="Code">💻</a></td>
</tr>
<tr>
<td align="center" valign="top" width="14.28%"><a href="https://michielbdejong.com/"><img src="https://avatars.githubusercontent.com/u/408412?v=4?s=100" width="100px;" alt="Michiel de Jong"/><br /><sub><b>Michiel de Jong</b></sub></a><br /><a href="#data-michielbdejong" title="Data">🔣</a></td>
</tr>
</tbody>
</table>

<!-- markdownlint-restore -->
<!-- prettier-ignore-end -->

<!-- ALL-CONTRIBUTORS-LIST:END -->
90 changes: 90 additions & 0 deletions .all-contributorsrc
Original file line number Diff line number Diff line change
@@ -0,0 +1,90 @@
{
"projectName": "terms-types",
"projectOwner": "OpenTermsArchive",
"files": [
".all-contributors.md"
],
"contributors": [
{
"login": "AaronjSugarman",
"name": "Aaron Sugarman",
"avatar_url": "https://avatars.githubusercontent.com/u/82889095?v=4",
"profile": "https://github.com/AaronjSugarman",
"contributions": [
"data"
]
},
{
"login": "AdrienFines",
"name": "Adrien Fines",
"avatar_url": "https://avatars.githubusercontent.com/u/41912392?v=4",
"profile": "https://github.com/AdrienFines",
"contributions": [
"data"
]
},
{
"login": "clementbiron",
"name": "Clément Biron",
"avatar_url": "https://avatars.githubusercontent.com/u/364319?v=4",
"profile": "https://clementbiron.com/",
"contributions": [
"data",
"review"
]
},
{
"login": "LVerneyPEReN",
"name": "Lucas Verney",
"avatar_url": "https://avatars.githubusercontent.com/u/58298410?v=4",
"profile": "https://github.com/LVerneyPEReN",
"contributions": [
"data"
]
},
{
"login": "martinratinaud",
"name": "Martin Ratinaud",
"avatar_url": "https://avatars.githubusercontent.com/u/4191809?v=4",
"profile": "http://bit.ly/work-with-martin",
"contributions": [
"code"
]
},
{
"login": "MattiSG",
"name": "Matti Schneider",
"avatar_url": "https://avatars.githubusercontent.com/u/222463?v=4",
"profile": "https://mattischneider.fr/",
"contributions": [
"data",
"doc",
"code",
"review"
]
},
{
"login": "Ndpnt",
"name": "Nicolas Dupont",
"avatar_url": "https://avatars.githubusercontent.com/u/1098708?v=4",
"profile": "https://github.com/Ndpnt",
"contributions": [
"data",
"doc",
"code"
]
},
{
"login": "michielbdejong",
"name": "Michiel de Jong",
"avatar_url": "https://avatars.githubusercontent.com/u/408412?v=4",
"profile": "https://michielbdejong.com/",
"contributions": [
"data"
]
}
],
"repoType": "github",
"commitConvention": "none",
"contributorsPerLine": 7
}
59 changes: 59 additions & 0 deletions .github/DISCUSSION_TEMPLATE/submitted.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,59 @@
title: "<suggested new type name>"
labels: ["New type"]
body:
- type: markdown
attributes:
value: |
## Thank you for suggesting a new type!

**Terms types** enable discovering terms and comparing them across services. Once a type is in use, it is there to stay. It is therefore critical to ensure that each type is well defined and has actual uses. The questions below will help define the type and enable the Open Terms Archive community to discuss its relevance to the wider ecosystem.

### If no existing [implemented or suggested type](https://github.com/OpenTermsArchive/terms-types/discussions) matches your suggestion, fill in the fields below to start a discussion!

#### Title

The `<suggested new type name>` should be the most commonly used and most internationally understandable for this type. It doesn't have to match the service-provided name. Use tools such as Google Trends, Linguee and thesaurus to find the name that balances out best generality, precision and multilingualism.

> For example, the “Imprint” type is [called this way](https://github.com/OpenTermsArchive/engine/issues/801) as a balance between the French “mentions légales”, the German “impressum”, and usage statistics.
- type: textarea
id: examples
attributes:
label: What are some documents containing these terms?
description: |
Examples of documents that contain terms of the suggested type, in the form `Service name - URL - Document title - Jurisdiction`, one per line. Provide the URL address at which the document can be accessed; the title of the document provided at this URL; and, if possible, the jurisdiction to which the document refers.
placeholder: |
WhatsApp - https://www.whatsapp.com/legal/privacy-policy-eea?lang=en - Privacy Policy - European Economic Area
validations:
required: true
- type: textarea
id: alternative-type-names
attributes:
label: What could be some alternative names for this type?
description: Known synonyms or other ideas you have for this same terms type.
placeholder: |
Business Users Privacy Policy
Commercial Privacy Policy
- type: input
id: audience
attributes:
label: Whose rights and duties are defined in these terms?
description: The entities targeted by these terms.
placeholder: business user
- type: input
id: object
attributes:
label: What is the object of commitment in these terms?
description: The information handling or interaction that is constrained by the associated terms.
placeholder: personal data of business users
- type: textarea
id: references
attributes:
label: Are there any relevant references for this type?
description: |
Related resources such as legal definitions, or the discussions that led to the choice of this name.
placeholder: "Digital Service Act: https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX%3A32022R2065"
- type: textarea
id: comments
attributes:
label: Do you have any additional comments or information?
description: That may help to understand the purpose of this type.
28 changes: 18 additions & 10 deletions .github/workflows/changelog.yml
Original file line number Diff line number Diff line change
@@ -1,18 +1,26 @@
name: Check changelog
name: Changelog

on:
push:
branches-ignore:
- main
- push-action/** # Temporary branches created by CasperWA/push-protected@v2 action on release workflow
pull_request:
types: [ opened, reopened ]
push:
branches: [ 'push-action/**' ] # enable testing required checks, see https://github.com/CasperWA/push-protected?tab=readme-ov-file#update-your-workflow
workflow_call:
outputs:
release_type:
release-type:
description: The release type extracted from changelog
value: ${{ jobs.check_changelog.outputs.release_type }}
value: ${{ jobs.validate-changelog.outputs.release-type }}

jobs:
check_changelog:
uses: OpenTermsArchive/engine/.github/workflows/changelog.yml@main
validate-changelog:
if: github.base_ref == 'main' || github.base_ref == 'test-main' # check that changelog has valid unreleased changes only in PRs that could trigger a release
runs-on: [ ubuntu-latest ]
outputs:
release-type: ${{ steps.validate-changelog.outputs.release-type }}
steps:
- uses: actions/checkout@v4

- name: Validate changelog
id: validate-changelog
uses: OpenTermsArchive/changelog-action/[email protected]
with:
funders: true
84 changes: 35 additions & 49 deletions .github/workflows/release.yml
Original file line number Diff line number Diff line change
@@ -1,78 +1,64 @@
name: Release

on:
pull_request:
branches:
- main
pull_request_target:
branches: [ main, test-main ]
types: [ closed ]


jobs:
changelog:
uses: ./.github/workflows/changelog.yml

test:
uses: ./.github/workflows/test.yml

release:
if: github.event.pull_request.merged == true
needs: [ changelog, test ]
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v2
with:
token: ${{ secrets.RELEASE_BOT_GITHUB_TOKEN }}

- name: Configure Git author
run: |
git config --global user.name "Open Terms Archive Release Bot"
git config --global user.email "[email protected]"
uses: actions/checkout@v4

- name: Bump package version
run: |
echo "Release type obtained from the previous job: '${{ needs.changelog.outputs.release_type }}'"
echo "NEW_VERSION=$(npm --no-git-tag-version version ${{ needs.changelog.outputs.release_type }})" >> $GITHUB_ENV
- name: Update changelog
id: update-changelog
uses: OpenTermsArchive/changelog-action/[email protected]

- name: Update changelog unreleased section with new version
uses: superfaceai/release-changelog-action@v2
with:
version: ${{ env.NEW_VERSION }}
operation: release
format: markdownlint
- name: Update package version
run: npm --no-git-tag-version --allow-same-version version ${{ steps.update-changelog.outputs.version }}

- name: Commit CHANGELOG.md and package.json changes and create tag
- name: Update repository
run: |
git add "package.json"
git add "package-lock.json"
git add "CHANGELOG.md"
git commit -m "Release ${{ env.NEW_VERSION }}"
git tag ${{ env.NEW_VERSION }}
git config user.name "Open Terms Archive Release Bot"
git config user.email "[email protected]"
git commit --message="Update changelog" CHANGELOG.md package.json package-lock.json

- name: Run status checks for release commit on temporary branch # Use temporary branch to enable pushing commits to this branch protected by required status checks
uses: CasperWA/push-protected@v2
- name: Run status checks for release commit on temporary branch # use temporary branch to enable pushing commits to this branch protected by required status checks
uses: CasperWA/push-protected@v2.16.0 # 2.16 minimum is required to benefit from updated defaults
with:
token: ${{ secrets.RELEASE_BOT_GITHUB_TOKEN }}
branch: main
unprotect_reviews: true
branch: ${{ github.base_ref }}
interval: 10 # seconds between checks
pre_sleep: 15
fail_fast: true

- name: Push changes to repository
run: git push origin && git push --tags
- name: Publish Git tag
if: needs.changelog.outputs.release-type != 'no-release'
run: |
git tag v${{ steps.update-changelog.outputs.version }}
git push --tags

- name: Read version changelog
uses: superfaceai/release-changelog-action@v2
id: get-changelog
- name: Publish to NPM public repository
if: needs.changelog.outputs.release-type != 'no-release'
uses: JS-DevTools/npm-publish@v3
with:
version: ${{ env.NEW_VERSION }}
operation: read
token: ${{ secrets.NPMJS_ACCESS_TOKEN }}
dry-run: ${{ github.base_ref != 'main' }}

- name: Create GitHub release
uses: softprops/action-gh-release@v1
- name: Publish GitHub release
if: needs.changelog.outputs.release-type != 'no-release'
uses: softprops/action-gh-release@v2
with:
tag_name: ${{ env.NEW_VERSION }}
body: ${{ steps.get-changelog.outputs.changelog }}
tag_name: v${{ steps.update-changelog.outputs.version }}
body: ${{ steps.update-changelog.outputs.content }}
token: ${{ secrets.RELEASE_BOT_GITHUB_TOKEN }}

- name: Publish to NPM public repository
uses: JS-DevTools/npm-publish@v1
with:
token: ${{ secrets.NPMJS_ACCESS_TOKEN }}
access: public
16 changes: 9 additions & 7 deletions .github/workflows/test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -2,15 +2,17 @@ name: Validate document types

on:
push:
pull_request:
types: [ opened, reopened ]
branches-ignore: [ main, test-main ] # will be called from workflow call
workflow_call:

jobs:
validate:
test:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- uses: actions/setup-node@v2
- run: npm install
- uses: actions/checkout@v4

- uses: actions/setup-node@v4

- run: npm ci

- run: npm test
6 changes: 6 additions & 0 deletions .npmignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
CONTRIBUTING.md
CODE_OF_CONDUCT.md
.all-contributors*
.eslintrc.yml
.github/*
test/*
Loading
Loading