Skip to content

Commit 01f4ff0

Browse files
authored
Merge branch 'apache:master' into master
2 parents f95e2c8 + 1d4532c commit 01f4ff0

File tree

992 files changed

+21625
-4296
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

992 files changed

+21625
-4296
lines changed

.github/configs/settings.xml

+60
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,60 @@
1+
<!--
2+
Licensed to the Apache Software Foundation (ASF) under one or more
3+
contributor license agreements. See the NOTICE file distributed with
4+
this work for additional information regarding copyright ownership.
5+
The ASF licenses this file to You under the Apache License, Version 2.0
6+
(the "License"); you may not use this file except in compliance with
7+
the License. You may obtain a copy of the License at
8+
9+
http://www.apache.org/licenses/LICENSE-2.0
10+
11+
Unless required by applicable law or agreed to in writing, software
12+
distributed under the License is distributed on an "AS IS" BASIS,
13+
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14+
See the License for the specific language governing permissions and
15+
limitations under the License.
16+
-->
17+
18+
<settings xmlns="http://maven.apache.org/SETTINGS/1.0.0"
19+
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
20+
xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0 https://maven.apache.org/xsd/settings-1.0.0.xsd">
21+
<servers>
22+
<server>
23+
<id>github</id>
24+
<username>${env.GITHUB_ACTOR}</username>
25+
<password>${env.GITHUB_TOKEN}</password>
26+
</server>
27+
</servers>
28+
29+
<profiles>
30+
<profile>
31+
<id>local-repo</id>
32+
<repositories>
33+
<repository>
34+
<id>central</id>
35+
<url>https://repo.maven.apache.org/maven2</url>
36+
<releases>
37+
<enabled>true</enabled>
38+
</releases>
39+
<snapshots>
40+
<enabled>false</enabled>
41+
</snapshots>
42+
</repository>
43+
<repository>
44+
<id>staged-releases</id>
45+
<url>https://repository.apache.org/content/groups/staging/</url>
46+
</repository>
47+
</repositories>
48+
<pluginRepositories>
49+
<pluginRepository>
50+
<id>staged-releases</id>
51+
<url>https://repository.apache.org/content/groups/staging/</url>
52+
</pluginRepository>
53+
</pluginRepositories>
54+
</profile>
55+
</profiles>
56+
57+
<activeProfiles>
58+
<activeProfile>local-repo</activeProfile>
59+
</activeProfiles>
60+
</settings>

.github/outdated/.travis.yml

+1-1
Original file line numberDiff line numberDiff line change
@@ -115,7 +115,7 @@ env:
115115
global:
116116
- RELEASE_BRANCH=^release-.*$
117117
- RELEASE_TAG=^v[0-9]\..*$
118-
- TRAVIS_DIR=hugegraph-dist/src/assembly/travis
118+
- TRAVIS_DIR=hugegraph-server/hugegraph-dist/src/assembly/travis
119119
- DEPLOYED=0
120120
- secure: dYmFTVeEtRzLNaHp9ToTV/+CkTD0/rEj+K7dRN8wsv/yg4pbqwnyWbSXcqMlj6iNFzAz3nPbmFLCvAWON9/SMN9iJIT6x/xfcf+LqCT8QWczo2nc9xeX144ij2VHX1Drvtk5fRTMaTXRfWEQIrjqx2yrJTIdrXWzWSaZLFv1CRCUizEiGGCePnzUWxx9dBypNyC6IaH6lIv8uN5E6+10SYhb7UJGjWUMDg1bCeW9X7X2wg4QpsGDzlGFXT2EBPU/dAb5attTAtW8dKxrCZqZJTPWe0BarXDBR4PO15BC+a0V1g8LwexedtDjJeFRcGPaJ5NN4d3jDSusCzt5Jf4U0Wa1gDRMVTU3jT+KYkm5eoV4wOZMySobjh6VpQH/LyL0QTDy5apRPAxw+wO+tc91P+nkJmnlr3pN8abtMZ6NciZizUBYQRgR/m2Ir0stvtbZxBQOATuPtBgNDKiDgVdSYcRJzSqYEMFOn35AvsDZ9aUsyC8k29PCUZ0gQO2Is6cV1ClFBnM52hfU9XX0gu+NviSnYNGvcokod8z9VjGtnM7V3LYjqXSFqO9kkMbOmkME1tD2Bh/klw2/OM+2tBBZiAgxB89st5jSUHI4a2hpUyaQBezJUcU9t2vVT/zAVEIqzw2PDxkMU7t0n6L1x+qUIUTG/WynfIni5msxuR7HoiU=
121121
- secure: XbX6AX5zDPc2PcWYAMW+6fazqRRUqpgQkt4eXUugLuVIYZBmJ0WqncEhJ4+mdwOGPIhnP2HsOaSeK2eE/O+iLY2XpBFbugoBgm9VaZlCC4CY1gRNHaanYg64Lrm3NPY3n08IHRMazHqMpJwUqNO+OG/6QwkepULQLj5Rluf716AoXHa7IEJhAIrwr+OXQvdEaJdUXlS1lRycXVeYtOewl7qYxCO4dD4RMhPlNykh9KEK7fd5wnPkiUsp1SwF4g5XsaLvGXmT/qQ1nj8oa9Caej/iaj6HMKG3BO057mq4KK5JDxTPWhBueNpEkUwldAnrMhYWLRnNf4IyjUsaB/Pmi6HspzcaiORPLYwPmdvLGGSnYwbtO+fAHebgpgOnj/vGmRmY4YtIkYdFtbPBI0HpbGB77tqNRFCe/5deLrjx0hXJBfoKTy7d42SI1eBhNR0svZYUHkSfuXwly6hMTlH1DN/bumMFxfXDkY9PFHlzV1Mn3vb9BxKTaP88hJsWk7JqgniqUF7EWAc0EhHMbJct2gC0pDc95z4Yy9391n7/XWJErhIdYon1Ukds5+a43xFXoy76gR4LuMDpzzCnutMjhC2yDuGaZx/DfkPBb5JFU7SHtTKj05zb73Moogi7qqbH8jwcwoSfogAKyrIAWTcAgvJ2LVnRzwdsiLTc6MEagiM=

.github/workflows/check-dependencies.yml

+12-5
Original file line numberDiff line numberDiff line change
@@ -3,26 +3,33 @@ name: "3rd-party"
33
on:
44
push:
55
branches:
6-
- master
76
- /^release-.*$/
87
pull_request:
9-
8+
109
permissions:
1110
contents: read
1211

1312
jobs:
1413
dependency-check:
1514
runs-on: ubuntu-latest
1615
env:
17-
SCRIPT_DEPENDENCY: hugegraph-dist/scripts/dependency
16+
USE_STAGE: 'false' # Whether to include the stage repository.
17+
SCRIPT_DEPENDENCY: hugegraph-server/hugegraph-dist/scripts/dependency
1818
steps:
1919
- name: Checkout source
20-
uses: actions/checkout@v3
20+
uses: actions/checkout@v4
2121
- name: Set up JDK 11
2222
uses: actions/setup-java@v3
2323
with:
2424
java-version: '11'
2525
distribution: 'adopt'
26+
27+
- name: use staged maven repo settings
28+
if: ${{ env.USE_STAGE == 'true' }}
29+
run: |
30+
cp $HOME/.m2/settings.xml /tmp/settings.xml
31+
mv -vf .github/configs/settings.xml $HOME/.m2/settings.xml
32+
2633
- name: mvn install
2734
run: |
2835
mvn install -DskipTests=true -ntp
@@ -37,7 +44,7 @@ jobs:
3744
runs-on: ubuntu-latest
3845
steps:
3946
- name: 'Checkout Repository'
40-
uses: actions/checkout@v3
47+
uses: actions/checkout@v4
4148
- name: 'Dependency Review'
4249
uses: actions/dependency-review-action@v3
4350
# Refer: https://github.com/actions/dependency-review-action

.github/workflows/ci.yml

+31-25
Original file line numberDiff line numberDiff line change
@@ -12,23 +12,41 @@ jobs:
1212
build:
1313
runs-on: ubuntu-20.04
1414
env:
15-
TRAVIS_DIR: hugegraph-dist/src/assembly/travis
15+
USE_STAGE: 'false' # Whether to include the stage repository.
16+
TRAVIS_DIR: hugegraph-server/hugegraph-dist/src/assembly/travis
1617
REPORT_DIR: target/site/jacoco
1718
BACKEND: ${{ matrix.BACKEND }}
1819
TRIGGER_BRANCH_NAME: ${{ github.ref_name }}
1920
HEAD_BRANCH_NAME: ${{ github.head_ref }}
2021
BASE_BRANCH_NAME: ${{ github.base_ref }}
2122
TARGET_BRANCH_NAME: ${{ github.base_ref != '' && github.base_ref || github.ref_name }}
22-
RELEASE_BRANCH: ${{ startsWith(github.ref_name, 'release-') || startsWith(github.ref_name, 'test-') || startsWith(github.base_ref, 'release-') }}
23+
RELEASE_BRANCH: ${{ startsWith(github.ref_name, 'release-') || startsWith(github.ref_name, 'test-') }}
24+
RAFT_MODE: ${{ startsWith(github.head_ref, 'test') || startsWith(github.head_ref, 'raft') }}
2325

2426
strategy:
2527
fail-fast: false
2628
matrix:
27-
BACKEND: [ memory, cassandra, scylladb, hbase, rocksdb, mysql, postgresql ]
29+
BACKEND: [ memory, rocksdb, hbase, cassandra, mysql, postgresql, scylladb ]
2830
JAVA_VERSION: [ '8', '11' ]
2931

3032
steps:
31-
- name: Install JDK ${{ matrix.JAVA_VERSION }}
33+
- name: Checkout
34+
uses: actions/checkout@v4
35+
with:
36+
fetch-depth: 2
37+
38+
# TODO: Remove this step after install-backend.sh updated
39+
- name: Install Java8 for backend
40+
uses: actions/setup-java@v3
41+
with:
42+
java-version: '8'
43+
distribution: 'zulu'
44+
45+
- name: Prepare backend environment
46+
run: |
47+
$TRAVIS_DIR/install-backend.sh $BACKEND && jps -l
48+
49+
- name: Install Java ${{ matrix.JAVA_VERSION }}
3250
uses: actions/setup-java@v3
3351
with:
3452
java-version: ${{ matrix.JAVA_VERSION }}
@@ -41,30 +59,16 @@ jobs:
4159
key: ${{ runner.os }}-m2-${{ hashFiles('**/pom.xml') }}
4260
restore-keys: ${{ runner.os }}-m2
4361

44-
- name: Checkout
45-
uses: actions/checkout@v3
46-
with:
47-
fetch-depth: 2
62+
- name: Use staged maven repo settings
63+
if: ${{ env.USE_STAGE == 'true' }}
64+
run: |
65+
cp $HOME/.m2/settings.xml /tmp/settings.xml
66+
cp -vf .github/configs/settings.xml $HOME/.m2/settings.xml && cat $HOME/.m2/settings.xml
4867
4968
- name: Compile
5069
run: |
5170
mvn clean compile -U -Dmaven.javadoc.skip=true -ntp
5271
53-
- name: Install JDK 8
54-
uses: actions/setup-java@v3
55-
with:
56-
java-version: '8'
57-
distribution: 'zulu'
58-
- name: Prepare env and service
59-
run: |
60-
$TRAVIS_DIR/install-backend.sh $BACKEND
61-
62-
- name: Install JDK ${{ matrix.JAVA_VERSION }}
63-
uses: actions/setup-java@v3
64-
with:
65-
java-version: ${{ matrix.JAVA_VERSION }}
66-
distribution: 'zulu'
67-
6872
- name: Run unit test
6973
run: |
7074
$TRAVIS_DIR/run-unit-test.sh $BACKEND
@@ -77,8 +81,9 @@ jobs:
7781
run: |
7882
$TRAVIS_DIR/run-api-test.sh $BACKEND $REPORT_DIR
7983
84+
# TODO: disable raft test in normal PR due to the always timeout problem
8085
- name: Run raft test
81-
if: ${{ env.BACKEND == 'rocksdb' }}
86+
if: ${{ env.RAFT_MODE == 'true' && env.BACKEND == 'rocksdb' }}
8287
run: |
8388
$TRAVIS_DIR/run-api-test-for-raft.sh $BACKEND $REPORT_DIR
8489
@@ -88,6 +93,7 @@ jobs:
8893
$TRAVIS_DIR/run-tinkerpop-test.sh $BACKEND tinkerpop
8994
9095
- name: Upload coverage to Codecov
91-
uses: codecov/codecov-action@v3.0.0
96+
uses: codecov/codecov-action@v3
9297
with:
98+
token: ${{ secrets.CODECOV_TOKEN }}
9399
file: ${{ env.REPORT_DIR }}/*.xml

.github/workflows/codeql-analysis.yml

+11-3
Original file line numberDiff line numberDiff line change
@@ -4,13 +4,15 @@ on:
44
push:
55
branches: [ master, release-* ]
66
pull_request:
7-
# The branches below must be a subset of the branches above
8-
# branches: [ master ] # enable in all PR
7+
# The branches below must be a subset of the branches above
8+
# branches: [ master ] # enable in all PRs
99
schedule:
1010
- cron: '33 0 * * 5'
1111

1212
jobs:
1313
analyze:
14+
env:
15+
USE_STAGE: 'false' # Whether to include the stage repository.
1416
name: Analyze
1517
runs-on: ubuntu-latest
1618
permissions:
@@ -25,14 +27,20 @@ jobs:
2527

2628
steps:
2729
- name: Checkout repository
28-
uses: actions/checkout@v3
30+
uses: actions/checkout@v4
2931

3032
- name: Setup Java JDK
3133
uses: actions/setup-java@v3
3234
with:
3335
distribution: 'zulu'
3436
java-version: '11'
3537

38+
- name: use staged maven repo settings
39+
if: ${{ env.USE_STAGE == 'true' }}
40+
run: |
41+
cp $HOME/.m2/settings.xml /tmp/settings.xml
42+
mv -vf .github/configs/settings.xml $HOME/.m2/settings.xml
43+
3644
# Initializes the CodeQL tools for scanning.
3745
- name: Initialize CodeQL
3846
uses: github/codeql-action/init@v2

.github/workflows/licence-checker.yml

+3-6
Original file line numberDiff line numberDiff line change
@@ -10,8 +10,10 @@ on:
1010
jobs:
1111
check-license:
1212
runs-on: ubuntu-latest
13+
env:
14+
USE_STAGE: 'false' # Whether to include the stage repository.
1315
steps:
14-
- uses: actions/checkout@v3
16+
- uses: actions/checkout@v4
1517

1618
- name: Check License Header
1719
uses: apache/skywalking-eyes@main
@@ -22,11 +24,6 @@ jobs:
2224
token: ${{ github.token }}
2325
config: .licenserc.yaml
2426

25-
- uses: actions/setup-java@v3
26-
with:
27-
java-version: '11'
28-
distribution: 'adopt'
29-
3027
- name: License check(RAT)
3128
run: |
3229
mvn apache-rat:check -ntp

.licenserc.yaml

+4-4
Original file line numberDiff line numberDiff line change
@@ -68,7 +68,7 @@ header: # `header` section is configurations for source codes license header.
6868
- '**/*.properties'
6969
- '**/RaftRequests.java'
7070
- 'dist/**/*'
71-
- 'hugegraph-dist'
71+
- 'hugegraph-server/hugegraph-dist'
7272
- '**/assembly/static/bin/hugegraph.service'
7373
- 'scripts/dev/reviewers'
7474
- 'scripts/dev/reviewers'
@@ -89,13 +89,13 @@ header: # `header` section is configurations for source codes license header.
8989
- '**/META-INF/MANIFEST.MF'
9090
- '.repository/**'
9191
- '**/.flattened-pom.xml'
92-
- 'hugegraph-core/src/main/java/org/apache/hugegraph/backend/id/SnowflakeIdGenerator.java'
92+
- 'hugegraph-server/hugegraph-core/src/main/java/org/apache/hugegraph/backend/id/SnowflakeIdGenerator.java'
9393
- '**/optimize/HugeScriptTraversal.java'
9494
- '**/type/Nameable.java'
9595
- '**/define/Cardinality.java'
9696
- '**/util/StringEncoding.java'
97-
- 'hugegraph-api/src/main/java/org/apache/hugegraph/opencypher/CypherOpProcessor.java'
98-
- 'hugegraph-api/src/main/java/org/apache/hugegraph/opencypher/CypherPlugin.java'
97+
- 'hugegraph-server/hugegraph-api/src/main/java/org/apache/hugegraph/opencypher/CypherOpProcessor.java'
98+
- 'hugegraph-server/hugegraph-api/src/main/java/org/apache/hugegraph/opencypher/CypherPlugin.java'
9999
comment: on-failure # on what condition license-eye will comment on the pull request, `on-failure`, `always`, `never`.
100100

101101
# license-location-threshold specifies the index threshold where the license header can be located,

NOTICE

+2-38
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
Apache HugeGraph(incubating)
2-
Copyright 2022-2023 The Apache Software Foundation
2+
Copyright 2022-2024 The Apache Software Foundation
33

44
This product includes software developed at
55
The Apache Software Foundation (http://www.apache.org/).
@@ -13,9 +13,6 @@ This product contains code form the Apache TinkerPop Project:
1313
Apache TinkerPop
1414
Copyright 2015-2022 The Apache Software Foundation.
1515

16-
This product includes software developed at
17-
The Apache Software Foundation (http://www.apache.org/).
18-
1916
------------------------------------------------------------------------
2017
Activiti
2118
------------------------------------------------------------------------
@@ -42,7 +39,7 @@ This product contains code form the JanusGraph Project:
4239
-----------------------------------------------------------------------
4340
==============================================================
4441
JanusGraph: Distributed Graph Database
45-
Copyright 2012 and onwards JanusGraph Authors
42+
Copyright 2012 with JanusGraph Authors
4643
==============================================================
4744

4845
This product includes software developed by JanusGraph contributors listed
@@ -56,36 +53,3 @@ DataStax) and the following individuals:
5653
* Marko A. Rodriguez
5754
* Stephen Mallette
5855
* Pavel Yaskevich
59-
60-
It also includes software from other open source projects including, but not limited to (check pom.xml for complete listing):
61-
62-
* Apache Cassandra [https://cassandra.apache.org/]
63-
* Apache Commons [https://commons.apache.org/]
64-
* Apache Groovy [http://groovy-lang.org/]
65-
* Apache HBase [https://hbase.apache.org/]
66-
* Apache Hadoop [https://hadoop.apache.org/]
67-
* Apache Kerby [https://github.com/apache/directory-kerby]
68-
* Apache Log4j [https://logging.apache.org/log4j]
69-
* Apache Lucene [https://lucene.apache.org/]
70-
* Apache Solr [https://lucene.apache.org/solr/]
71-
* Apache TinkerPop [https://tinkerpop.apache.org/]
72-
* Astyanax [https://github.com/Netflix/astyanax]
73-
* DataStax Driver for Apache Cassandra [https://github.com/datastax/java-driver]
74-
* EasyMock [http://easymock.org/]
75-
* Elasticsearch [https://www.elastic.co/]
76-
* Google Cloud Bigtable [https://github.com/googlecloudplatform/cloud-bigtable-client]
77-
* Google Guava [https://github.com/google/guava]
78-
* HPPC [https://labs.carrotsearch.com/hppc.html]
79-
* JUnit [https://www.junit.org/]
80-
* Jackson [https://github.com/FasterXML/jackson]
81-
* Kryo [https://github.com/EsotericSoftware/kryo]
82-
* Metrics [https://metrics.dropwizard.io]
83-
* Mockito [https://site.mockito.org/]
84-
* Noggit [https://github.com/yonik/noggit]
85-
* OpenRDF [http://rdf4j.org/]
86-
* Oracle BerkeleyDB Java Edition [https://www.oracle.com/technetwork/products/berkeleydb/] (see license below)
87-
* Project Lombok [https://projectlombok.org/]
88-
* Reflections8 [https://github.com/aschoerk/reflections8]
89-
* SLF4J [https://www.slf4j.org/]
90-
* Spatial4j [https://github.com/locationtech/spatial4j]
91-
* Vavr [https://www.vavr.io/]

0 commit comments

Comments
 (0)