Skip to content

Commit 800235f

Browse files
authored
Merge pull request #17 from valitydev/ft/0.20.0
Upgrade to 0.20.0
2 parents 85cab54 + 0c496d9 commit 800235f

246 files changed

Lines changed: 8105 additions & 6984 deletions

File tree

Some content is hidden

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

.github/workflows/build.yml

Lines changed: 17 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,6 @@ env:
1111
BUILD_DEPS: automake bison flex git libboost-all-dev libevent-dev libssl-dev libtool make pkg-config
1212
CONFIG_ARGS_FOR_LIBS: >
1313
--disable-debug
14-
--disable-tests
1514
--disable-dependency-tracking
1615
--without-cpp
1716
--without-c_glib
@@ -47,7 +46,7 @@ jobs:
4746
fail-fast: false
4847
runs-on: ${{ matrix.os }}
4948
steps:
50-
- uses: actions/checkout@v3
49+
- uses: actions/checkout@v4
5150

5251
- name: Install dependencies
5352
run: |
@@ -84,13 +83,13 @@ jobs:
8483
strategy:
8584
matrix:
8685
go:
87-
- '1.20'
8886
- '1.21'
87+
- '1.22'
8988
fail-fast: false
9089
steps:
91-
- uses: actions/checkout@v3
90+
- uses: actions/checkout@v4
9291

93-
- uses: actions/setup-go@v4
92+
- uses: actions/setup-go@v5
9493
with:
9594
go-version: ${{ matrix.go }}
9695

@@ -129,7 +128,7 @@ jobs:
129128
run: make -C test/go precross
130129

131130
- name: Upload go precross artifacts
132-
if: matrix.go == '1.21'
131+
if: matrix.go == '1.22'
133132
uses: actions/upload-artifact@v3
134133
with:
135134
name: go-precross
@@ -142,11 +141,11 @@ jobs:
142141
needs: compiler
143142
runs-on: ubuntu-20.04
144143
env:
145-
GRADLE_VERSION: "8.0.2"
144+
GRADLE_VERSION: "8.4"
146145
steps:
147-
- uses: actions/checkout@v3
146+
- uses: actions/checkout@v4
148147

149-
- uses: actions/setup-java@v3
148+
- uses: actions/setup-java@v4
150149
with:
151150
distribution: temurin
152151
java-version: 17
@@ -161,7 +160,7 @@ jobs:
161160
- name: Setup gradle
162161
run: |
163162
wget https://services.gradle.org/distributions/gradle-$GRADLE_VERSION-bin.zip -q -O /tmp/gradle-$GRADLE_VERSION-bin.zip
164-
(echo "ff7bf6a86f09b9b2c40bb8f48b25fc19cf2b2664fd1d220cd7ab833ec758d0d7 /tmp/gradle-$GRADLE_VERSION-bin.zip" | sha256sum -c -)
163+
(echo "3e1af3ae886920c3ac87f7a91f816c0c7c436f276a6eefdb3da152100fef72ae /tmp/gradle-$GRADLE_VERSION-bin.zip" | sha256sum -c -)
165164
unzip -d /tmp /tmp/gradle-$GRADLE_VERSION-bin.zip
166165
sudo mv /tmp/gradle-$GRADLE_VERSION /usr/local/gradle
167166
sudo ln -s /usr/local/gradle/bin/gradle /usr/local/bin
@@ -250,7 +249,7 @@ jobs:
250249
needs: compiler
251250
runs-on: ubuntu-20.04
252251
steps:
253-
- uses: actions/checkout@v3
252+
- uses: actions/checkout@v4
254253

255254
- name: Run bootstrap
256255
run: ./bootstrap.sh
@@ -286,9 +285,9 @@ jobs:
286285
needs: compiler
287286
runs-on: ubuntu-20.04
288287
env:
289-
TOOLCHAIN_VERSION: 1.61.0
288+
TOOLCHAIN_VERSION: 1.65.0
290289
steps:
291-
- uses: actions/checkout@v3
290+
- uses: actions/checkout@v4
292291

293292
- name: Install dependencies
294293
run: |
@@ -356,7 +355,7 @@ jobs:
356355
- "3.x"
357356
fail-fast: false
358357
steps:
359-
- uses: actions/checkout@v3
358+
- uses: actions/checkout@v4
360359

361360
- name: Install dependencies
362361
run: |
@@ -365,7 +364,7 @@ jobs:
365364
sudo apt-get install -y --no-install-recommends curl openssl ca-certificates
366365
367366
- name: Set up Python
368-
uses: actions/setup-python@v4
367+
uses: actions/setup-python@v5
369368
with:
370369
python-version: ${{ matrix.python-version }}
371370

@@ -420,13 +419,13 @@ jobs:
420419
client_lang: ['java,kotlin', 'go,rs', 'swift']
421420
fail-fast: false
422421
steps:
423-
- uses: actions/checkout@v3
422+
- uses: actions/checkout@v4
424423

425-
- uses: actions/setup-python@v4
424+
- uses: actions/setup-python@v5
426425
with:
427426
python-version: "3.x"
428427

429-
- uses: actions/setup-java@v3
428+
- uses: actions/setup-java@v4
430429
with:
431430
distribution: temurin
432431
# here we intentionally use an older version so that we also verify Java 17 compiles to it

.github/workflows/cmake.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ jobs:
1616
compiler:
1717
runs-on: ubuntu-20.04
1818
steps:
19-
- uses: actions/checkout@v3
19+
- uses: actions/checkout@v4
2020

2121
- name: Install dependencies
2222
run: |

.github/workflows/pypi.yml

Lines changed: 51 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,51 @@
1+
#
2+
# Licensed to the Apache Software Foundation (ASF) under one
3+
# or more contributor license agreements. See the NOTICE file
4+
# distributed with this work for additional information
5+
# regarding copyright ownership. The ASF licenses this file
6+
# to you under the Apache License, Version 2.0 (the
7+
# "License"); you may not use this file except in compliance
8+
# with the License. You may obtain a copy of the License at
9+
#
10+
# http://www.apache.org/licenses/LICENSE-2.0
11+
#
12+
# Unless required by applicable law or agreed to in writing,
13+
# software distributed under the License is distributed on an
14+
# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
15+
# KIND, either express or implied. See the License for the
16+
# specific language governing permissions and limitations
17+
# under the License.
18+
#
19+
20+
name: "PyPI publishing"
21+
22+
on:
23+
release:
24+
types: [published]
25+
26+
jobs:
27+
pypi-publish:
28+
name: Publish release to PyPI
29+
runs-on: ubuntu-latest
30+
# Specifying a GitHub environment is optional, but strongly encouraged
31+
environment: release
32+
permissions:
33+
# IMPORTANT: this permission is mandatory for trusted publishing
34+
id-token: write
35+
steps:
36+
- uses: actions/checkout@v4
37+
38+
- name: Set up Python
39+
uses: actions/setup-python@v5
40+
with:
41+
python-version: "3.8"
42+
43+
- name: Build
44+
run: |
45+
cd lib/py
46+
python setup.py sdist
47+
48+
- name: Publish package distributions to PyPI
49+
uses: pypa/gh-action-pypi-publish@release/v1
50+
with:
51+
packages-dir: lib/py/dist/

.gitignore

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -210,7 +210,6 @@ project.lock.json
210210
/lib/delphi/**/*.dcu
211211
/lib/delphi/**/*.2007
212212
/lib/delphi/**/codegen/*.bat
213-
/lib/erl/_build/
214213
/lib/erl/.eunit
215214
/lib/erl/.generated
216215
/lib/erl/.rebar/

ApacheThrift.nuspec

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -19,14 +19,14 @@
1919
the "Thrift" project.
2020
2. nuget setApiKey <your-api-key>
2121
3. nuget pack ApacheThrift.nuspec -Symbols -SymbolPackageFormat snupkg
22-
4. nuget push ApacheThrift.0.19.0.nupkg -Source https://api.nuget.org/v3/index.json
22+
4. nuget push ApacheThrift.0.20.0.nupkg -Source https://api.nuget.org/v3/index.json
2323
-->
2424

2525
<package xmlns="http://schemas.microsoft.com/packaging/2013/05/nuspec.xsd">
2626
<metadata>
2727
<id>ApacheThrift</id>
28-
<version>0.19.0</version>
29-
<title>Apache Thrift 0.19.0</title>
28+
<version>0.20.0</version>
29+
<title>Apache Thrift 0.20.0</title>
3030
<authors>Apache Thrift Developers</authors>
3131
<owners>Apache Software Foundation</owners>
3232
<license type="expression">Apache-2.0</license>
@@ -36,7 +36,7 @@
3636
<description>
3737
Contains runtime libraries from lib/netstd for netstandard2.0 framework development.
3838
</description>
39-
<repository type="GitHub" url="https://github.com/apache/thrift" branch="release/0.19.0" />
39+
<repository type="GitHub" url="https://github.com/apache/thrift" branch="release/0.20.0" />
4040
<tags>Apache Thrift RPC</tags>
4141
</metadata>
4242
<files>

CHANGES.md

Lines changed: 65 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,70 @@
1+
12
# Apache Thrift Changelog
23

4+
## 0.20.0
5+
6+
### Known Open Issues (Blocker or Critical)
7+
8+
- [THRIFT-3877](https://issues.apache.org/jira/browse/THRIFT-3877) - C++ library don't work with HTTP (csharp server, cpp client; need cross test enhancement)
9+
- [THRIFT-5468](https://issues.apache.org/jira/browse/THRIFT-5468) - Swift service generator doesn't support oneway
10+
- [THRIFT-5654](https://issues.apache.org/jira/browse/THRIFT-5654) - LNK4042 and LNK2019 in go_validator_generator.cc
11+
12+
### Build Process
13+
14+
- [THRIFT-5747]https://issues.apache.org/jira/browse/THRIFT-5747 - warning: The macro `AC_HELP_STRING' is obsolete. You should run autoupdate. and some more warnings
15+
16+
### C++
17+
18+
- [THRIFT-5670]https://issues.apache.org/jira/browse/THRIFT-5670 - recvTimeout is not printed correctly for THRIFT_EAGAIN
19+
20+
### Compiler (General)
21+
22+
- [THRIFT-5733]https://issues.apache.org/jira/browse/THRIFT-5733 - Building code with circular `include`s can result in tons of memory usage and eventual segfault
23+
24+
### Delphi
25+
26+
- [THRIFT-5749]https://issues.apache.org/jira/browse/THRIFT-5749 - Option to enable RTTI info
27+
- [THRIFT-5740]https://issues.apache.org/jira/browse/THRIFT-5740 - inherited interfaces should be explicitly listed in Delphi class decl
28+
29+
### Documentation
30+
31+
- [THRIFT-4606]https://issues.apache.org/jira/browse/THRIFT-4606 - LGPL license file still present
32+
33+
### Erlang
34+
35+
- [THRIFT-5635]https://issues.apache.org/jira/browse/THRIFT-5635 - Replace some removed functions with new counterparts
36+
37+
### Go
38+
39+
- [THRIFT-5744]https://issues.apache.org/jira/browse/THRIFT-5744 - Switch to slog for go library
40+
- [THRIFT-5745]https://issues.apache.org/jira/browse/THRIFT-5745 - Implement slog.LogValuer on go TStructs
41+
42+
43+
### Haxe
44+
45+
- [THRIFT-5734]https://issues.apache.org/jira/browse/THRIFT-5734 - generated code may lack required capitalization at class names
46+
- [THRIFT-5742]https://issues.apache.org/jira/browse/THRIFT-5742 - Add addRange() function to Set helpers to support adding data from arbitrary enumerable containers
47+
48+
### Java
49+
50+
- [THRIFT-5738]https://issues.apache.org/jira/browse/THRIFT-5738 - Compiler build fails on Mac
51+
52+
### netstd
53+
54+
- [THRIFT-5746]https://issues.apache.org/jira/browse/THRIFT-5746 - Upgrade to net8
55+
- [THRIFT-5743]https://issues.apache.org/jira/browse/THRIFT-5743 - add TLS1.3 to default protocols where available
56+
- [THRIFT-5726]https://issues.apache.org/jira/browse/THRIFT-5726 - package upgrades and consolidation/improvement of build targets checks
57+
58+
### PHP
59+
60+
- [THRIFT-5752]https://issues.apache.org/jira/browse/THRIFT-5752 - Add TTransportFactoryInterface
61+
- [THRIFT-5754]https://issues.apache.org/jira/browse/THRIFT-5754 - Fix PHP 8.1 deprecates passing null to non-nullable internal function parameters
62+
- [THRIFT-5753]https://issues.apache.org/jira/browse/THRIFT-5753 - PHP 8.1 deprecated warning about return type in jsonSerialize functions
63+
64+
### Python
65+
66+
- [THRIFT-5688]https://issues.apache.org/jira/browse/THRIFT-5688 - Add PyPI publishing github actions
67+
368
## 0.19.0
469

570
### Known Open Issues (Blocker or Critical)

CMakeLists.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,7 @@ endif()
2828

2929
# PACKAGE_VERSION is used by cpack scripts currently
3030
# Both thrift_VERSION and PACKAGE_VERSION should be the same for now
31-
set(thrift_VERSION "0.19.0")
31+
set(thrift_VERSION "0.20.0")
3232
set(PACKAGE_VERSION ${thrift_VERSION})
3333

3434
project("thrift" VERSION ${PACKAGE_VERSION})

LANGUAGES.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -163,7 +163,7 @@ Thrift's core protocol is TBinary, supported by all languages except for JavaScr
163163
<td align=left><a href="https://github.com/apache/thrift/blob/master/lib/go/README.md">Go</a></td>
164164
<!-- Since -----------------><td>0.7.0</td>
165165
<!-- Build Systems ---------><td><img src="/doc/images/cgrn.png" alt="Yes"/></td><td><img src="/doc/images/cred.png" alt=""/></td>
166-
<!-- Language Levels -------><td>1.20</td><td>1.21</td>
166+
<!-- Language Levels -------><td>1.21</td><td>1.22</td>
167167
<!-- Field types -----------><td><img src="/doc/images/cred.png" alt=""/></td>
168168
<!-- Low-Level Transports --><td><img src="/doc/images/cred.png" alt=""/></td><td><img src="/doc/images/cred.png" alt=""/></td><td><img src="/doc/images/cgrn.png" alt="Yes"/></td><td><img src="/doc/images/cred.png" alt=""/></td><td><img src="/doc/images/cgrn.png" alt="Yes"/></td><td><img src="/doc/images/cgrn.png" alt="Yes"/></td>
169169
<!-- Transport Wrappers ----><td><img src="/doc/images/cgrn.png" alt="Yes"/></td><td><img src="/doc/images/cgrn.png" alt="Yes"/></td><td><img src="/doc/images/cgrn.png" alt="Yes"/></td><td><img src="/doc/images/cgrn.png" alt="Yes"/></td>
@@ -319,7 +319,7 @@ Thrift's core protocol is TBinary, supported by all languages except for JavaScr
319319
<td align=left><a href="https://github.com/apache/thrift/blob/master/lib/rs/README.md">Rust</a></td>
320320
<!-- Since -----------------><td>0.11.0</td>
321321
<!-- Build Systems ---------><td><img src="/doc/images/cgrn.png" alt="Yes"/></td><td><img src="/doc/images/cred.png" alt=""/></td>
322-
<!-- Language Levels -------><td>1.61.0</td><td>1.xx.x</td>
322+
<!-- Language Levels -------><td>1.65.0</td><td>1.xx.x</td>
323323
<!-- Field types -----------><td><img src="/doc/images/cred.png" alt=""/></td>
324324
<!-- Low-Level Transports --><td><img src="/doc/images/cred.png" alt=""/></td><td><img src="/doc/images/cred.png" alt=""/></td><td><img src="/doc/images/cgrn.png" alt="Yes"/></td><td><img src="/doc/images/cred.png" alt=""/></td><td><img src="/doc/images/cgrn.png" alt="Yes"/></td><td><img src="/doc/images/cred.png" alt=""/></td>
325325
<!-- Transport Wrappers ----><td><img src="/doc/images/cgrn.png" alt="Yes"/></td><td><img src="/doc/images/cred.png" alt=""/></td><td><img src="/doc/images/cred.png" alt=""/></td><td><img src="/doc/images/cred.png" alt=""/></td>

Makefile.am

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -141,6 +141,12 @@ EXTRA_DIST = \
141141
.flake8 \
142142
.gitattributes \
143143
.gitignore \
144+
.github/dependabot.yml \
145+
.github/pull_request_template.md \
146+
.github/stale.yml \
147+
.github/workflows/build.yml \
148+
.github/workflows/cmake.yml \
149+
.github/workflows/pypi.yml \
144150
.travis.yml \
145151
ApacheThrift.nuspec \
146152
appveyor.yml \

Thrift.podspec

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
Pod::Spec.new do |s|
22
s.name = 'Thrift'
3-
s.version = '0.19.0'
3+
s.version = '0.20.0'
44
s.summary = "Apache Thrift is a lightweight, language-independent software stack with an associated code generation mechanism for RPC."
55
s.description = <<-DESC
66
The Apache Thrift scalable cross-language software framework for networked services development combines a software stack with a code generation engine to build services that work efficiently and seamlessly between many programming languages.
@@ -10,6 +10,6 @@ The Apache Thrift scalable cross-language software framework for networked servi
1010
s.author = { 'Apache Thrift Developers' => 'dev@thrift.apache.org' }
1111
s.ios.deployment_target = '9.0'
1212
s.osx.deployment_target = '10.10'
13-
s.source = { :git => 'https://github.com/apache/thrift.git', :tag => 'v0.19.0' }
13+
s.source = { :git => 'https://github.com/apache/thrift.git', :tag => 'v0.20.0' }
1414
s.source_files = 'lib/swift/Sources/*.swift'
1515
end

0 commit comments

Comments
 (0)