Skip to content

Commit b43d1b5

Browse files
authored
chore: add license check using apache rat (#14)
* chore: add license check using apache rat * chore: update README
1 parent ae18f95 commit b43d1b5

File tree

4 files changed

+78
-34
lines changed

4 files changed

+78
-34
lines changed

.github/.licenserc.yaml

Lines changed: 0 additions & 33 deletions
This file was deleted.

.github/.rat-excludes

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
build/*
2+
build-debug/*
3+
build-release/*
4+
test_data/*
5+
third_party/*
6+
build_support/*
7+
scripts/*
8+
cmake_modules/*
9+
.codespell_ignore
10+
.gitignore
11+
rat-report.txt
12+
requirements.txt
13+
.gitattributes
14+
.*\.svg$
Lines changed: 53 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,53 @@
1+
# Copyright 2025-present Alibaba Inc.
2+
#
3+
# Licensed under the Apache License, Version 2.0 (the "License");
4+
# you may not use this file except in compliance with the License.
5+
# You may obtain a copy of the License at
6+
#
7+
# http://www.apache.org/licenses/LICENSE-2.0
8+
#
9+
# Unless required by applicable law or agreed to in writing, software
10+
# distributed under the License is distributed on an "AS IS" BASIS,
11+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12+
# See the License for the specific language governing permissions and
13+
# limitations under the License.
14+
15+
name: License Check
16+
17+
on:
18+
pull_request:
19+
push:
20+
branches:
21+
- main
22+
23+
jobs:
24+
rat-check:
25+
runs-on: ubuntu-latest
26+
27+
steps:
28+
- name: Checkout code
29+
uses: actions/checkout@v4
30+
31+
- name: Set up Java
32+
uses: actions/setup-java@v4
33+
with:
34+
distribution: 'temurin'
35+
java-version: '17'
36+
37+
- name: Download Apache Rat jar
38+
run: |
39+
wget https://repo1.maven.org/maven2/org/apache/rat/apache-rat/0.16.1/apache-rat-0.16.1.jar -O rat.jar
40+
41+
- name: Run Apache Rat
42+
run: |
43+
java -jar rat.jar -E .github/.rat-excludes -d . > rat-report.txt
44+
- name: Check for Unapproved Licenses
45+
run: |
46+
if grep "Files with unapproved licenses" rat-report.txt; then
47+
echo "❌ Found files with unapproved licenses!"
48+
cat rat-report.txt
49+
exit 1
50+
else
51+
echo "✅ All files have approved licenses."
52+
cat rat-report.txt
53+
fi

README.md

Lines changed: 11 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,7 @@ Paimon C++ is a high-performance C++ implementation of [Apache Paimon](https://p
3030
* Memory pool interfaces and a default implementation.
3131
* Thread pool executor interfaces and a default implementation.
3232
* Compatible with Java Paimon format and communication protocol (e.g., commit message, data splits, manifests).
33-
* Only support x86 platform.
33+
* Note: The current implementation only supports the x86_64 architecture.
3434

3535
## Write And Commit Example
3636

@@ -127,6 +127,16 @@ $ cd build
127127
$ cmake ..
128128
$ make
129129
```
130+
## Contributing
131+
132+
Paimon-cpp is an active open-source project and we welcome people who want to contribute or share good ideas!
133+
Before contributing, you are encouraged to check out our [documentation](https://alibaba.github.io/paimon-cpp/).
134+
135+
If you have suggestions, feedback, want to report a bug or request a feature, please open an [issue](https://github.com/alibaba/paimon-cpp/issues/new).
136+
Pull requests are also very welcome!
137+
138+
We value respectful and open collaboration, and appreciate everyone who helps make paimon-cpp better. Thank you for your support!
139+
130140
### Linting
131141

132142
Install the python package `pre-commit` and run once `pre-commit install`.

0 commit comments

Comments
 (0)