Skip to content

Commit

Permalink
Merge branch 'apache:main' into main
Browse files Browse the repository at this point in the history
  • Loading branch information
bgalek authored Aug 27, 2024
2 parents 7e4279b + c7b79bf commit ad5bd3f
Show file tree
Hide file tree
Showing 62 changed files with 7,580 additions and 68 deletions.
3 changes: 3 additions & 0 deletions .asf.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -43,6 +43,9 @@ github:
collaborators:
- jbonofre

publish:
whoami: asf-site

notifications:
commits: [email protected]
issues: [email protected]
Expand Down
230 changes: 218 additions & 12 deletions .github/workflows/deploy-docs.yml
Original file line number Diff line number Diff line change
Expand Up @@ -16,8 +16,8 @@
# to commit it to your repository.


# Sample workflow for building and deploying a Hugo site to GitHub Pages
name: Deploy Hugo site to Pages
# A Github Actions workflow that builds and copies the website to asf-site branch
name: Deploy website

on:
# Runs on pushes targeting the default branch
Expand All @@ -35,8 +35,8 @@ concurrency:
cancel-in-progress: false

jobs:
# Build job
build:
build-website:
name: Build website
runs-on: ubuntu-latest
env:
HUGO_VERSION: 0.132.1
Expand All @@ -49,8 +49,7 @@ jobs:
run: sudo snap install dart-sass
- name: Checkout
uses: actions/checkout@v4
with:
fetch-depth: 0

- name: Install Node.js dependencies
working-directory: doc/
run: ls -lah && npm ci
Expand All @@ -64,17 +63,224 @@ jobs:
hugo \
--gc \
--minify \
--baseURL "https://avro.apache.org/"
- name: Commit new site
--destination ${{ runner.temp }}/website \
--baseURL "/"
- uses: actions/upload-artifact@v4
with:
name: website
path: ${{ runner.temp }}/website

build-api-c:
name: Build C API docs
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v4

- name: Build C docs
run: |
set -x
sudo apt-get update -q
sudo apt-get install -q -y cmake liblzma-dev libsnappy-dev libjansson-dev zlib1g-dev pkg-config asciidoc source-highlight libsource-highlight-dev
cd lang/c
./build.sh clean docs
- uses: actions/upload-artifact@v4
with:
name: api-c
path: build/c/docs

build-api-cpp:
name: Build C++ API docs
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v4

- name: Build C++ docs
run: |
set -x
sudo apt-get update -q
sudo apt-get install -q -y gcc g++ libboost-all-dev cmake doxygen
cd lang/c++
./build.sh clean doc
- uses: actions/upload-artifact@v4
with:
name: api-c++
path: lang/c++/doc/html

build-api-csharp:
name: Build C# API docs
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v4

- name: Build C# docs
run: |
set -x
sudo apt-get update -q
sudo apt-get install -q -y wget libzstd-dev libicu-dev doxygen
sudo wget https://dot.net/v1/dotnet-install.sh
bash ./dotnet-install.sh --channel "8.0" --install-dir "$HOME/.dotnet"
cd lang/csharp
mkdir -p build/doc
doxygen Avro.dox
- uses: actions/upload-artifact@v4
with:
name: api-csharp
path: lang/csharp/build/doc/html

build-api-java:
name: Build Java API docs
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v4

- name: Cache Local Maven Repository
uses: actions/cache@v4
with:
path: ~/.m2/repository
key: ${{ runner.os }}-maven-${{ hashFiles('**/pom.xml') }}
restore-keys: |
${{ runner.os }}-maven-
- name: 'Setup Maven'
uses: stCarolas/setup-maven@d6af6abeda15e98926a57b5aa970a96bb37f97d1 # v5
with:
maven-version: 3.9.9

- name: Setup Temurin JDK
uses: actions/setup-java@v4
with:
distribution: 'temurin'
java-version: |
11
17
21
- name: Build Java docs
run: |
set -x
cd lang/java
mvn javadoc::aggregate
- uses: actions/upload-artifact@v4
with:
name: api-java
path: lang/java/target/site/apidocs

build-api-python:
name: Build Python API docs
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v4

- name: Setup Python
uses: actions/setup-python@v5
with:
python-version: 3.11

- name: Install tox
run: python3 -m pip install tox

- name: Build docs
working-directory: lang/py
run: ./build.sh doc

- uses: actions/upload-artifact@v4
with:
name: api-python
path: lang/py/docs/build/

push-website:
name: Push website
needs: [build-website, build-api-c, build-api-cpp, build-api-csharp, build-api-java, build-api-python]
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v4
with:
fetch-depth: 0

- name: Download website
uses: actions/download-artifact@v4
with:
name: website
path: ${{ runner.temp }}/website

- name: Download api-c
uses: actions/download-artifact@v4
with:
name: api-c
path: api-c

- name: Download api-c++
uses: actions/download-artifact@v4
with:
name: api-c++
path: api-c++

- name: Download api-csharp
uses: actions/download-artifact@v4
with:
name: api-csharp
path: api-csharp

- name: Download api-java
uses: actions/download-artifact@v4
with:
name: api-java
path: api-java

- name: Download api-python
uses: actions/download-artifact@v4
with:
name: api-python
path: api-python

- name: Copy the generated HTML
run: |
set -x
WEBSITE_API=${{ runner.temp }}/website/docs/++version++/api
mkdir -p $WEBSITE_API/{c,cpp/html,csharp/html,java,py/html}
mv api-c/* $WEBSITE_API/c/
mv api-c++/* $WEBSITE_API/cpp/html/
mv api-csharp/* $WEBSITE_API/csharp/html/
mv api-java/* $WEBSITE_API/java/
mv api-python/* $WEBSITE_API/py/
rmdir api-c api-c++ api-csharp api-java api-python
- name: Checkout old docs versions from Subversion
run: |
set -xe
svn checkout https://svn.apache.org/repos/asf/avro/site/publish/docs
rm -rf docs/.svn
cp -R docs/1* ${{ runner.temp }}/website/docs/
rm -rf docs
- name: Push the new website
run: |
set -ex
mv doc/public docs/
ls -la ${{ runner.temp }}/website/docs/
git config --global user.email "[email protected]"
git config --global user.name "Github Actions"
git checkout --orphan asf-site-staging
git add .
git commit -m "Update docs"
git checkout asf-site
git rm -rf *
mv ${{ runner.temp }}/website/* .
echo "publish:
whoami: asf-site
" > .asf.yaml
touch .nojekyll
git add --all
git commit -m "Publish built website triggered by ${{ github.sha }}"
git switch asf-site
git reset --hard asf-site-staging
git push origin asf-site --force
File renamed without changes
File renamed without changes
File renamed without changes
File renamed without changes
File renamed without changes
3 changes: 0 additions & 3 deletions doc/config.toml
Original file line number Diff line number Diff line change
Expand Up @@ -155,9 +155,6 @@ github_project_repo = "https://github.com/apache/avro"
# Google Custom Search Engine ID. Remove or comment out to disable search.
# gcs_engine_id = "d72aa9b2712488cc3"

# Enable Algolia DocSearch
algolia_docsearch = false

# Enable Lunr.js offline search
offlineSearch = false

Expand Down
67 changes: 67 additions & 0 deletions doc/content/en/avro.rdf
Original file line number Diff line number Diff line change
@@ -0,0 +1,67 @@
<?xml version="1.0"?>
<?xml-stylesheet type="text/xsl"?>
<rdf:RDF xml:lang="en"
xmlns="http://usefulinc.com/ns/doap#"
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:asfext="http://projects.apache.org/ns/asfext#"
xmlns:foaf="http://xmlns.com/foaf/0.1/">
<!--
Licensed to the Apache Software Foundation (ASF) under one or more
contributor license agreements. See the NOTICE file distributed with
this work for additional information regarding copyright ownership.
The ASF licenses this file to You under the Apache License, Version 2.0
(the "License"); you may not use this file except in compliance with
the License. You may obtain a copy of the License at
https://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
-->
<Project rdf:about="https://avro.apache.org">
<created>2011-01-11</created>
<license rdf:resource="https://spdx.org/licenses/Apache-2.0" />
<name>Apache Avro</name>
<homepage rdf:resource="https://avro.apache.org" />
<asfext:pmc rdf:resource="https://avro.apache.org" />
<shortdesc>Apache Avro is a data serialization system.</shortdesc>
<description>Apache Avro is a data serialization system.</description>
<bug-database rdf:resource="https://issues.apache.org/jira/browse/AVRO" />
<mailing-list rdf:resource="https://avro.apache.org/mailing_lists.html" />
<download-page rdf:resource="https://avro.apache.org/releases.html" />
<programming-language>C</programming-language>
<programming-language>C#</programming-language>
<programming-language>C++</programming-language>
<programming-language>Java</programming-language>
<programming-language>JavaScript</programming-language>
<programming-language>Perl</programming-language>
<programming-language>PHP</programming-language>
<programming-language>Python</programming-language>
<programming-language>Ruby</programming-language>
<programming-language>Rust</programming-language>
<category rdf:resource="https://projects.apache.org/category/library" />
<category rdf:resource="https://projects.apache.org/category/big-data" />
<category rdf:resource="https://projects.apache.org/category/data-engineering" />
<category rdf:resource="https://projects.apache.org/category/integration" />
<!--
<category rdf:resource="https://projects.apache.org/category/network-client" />
<category rdf:resource="https://projects.apache.org/category/network-server" />
-->
<release>
<Version>
<name>Avro 1.11.3</name>
<created>2023-09-17</created>
<revision>1.11.3</revision>
</Version>
</release>
<repository>
<GitRepository>
<location rdf:resource="https://github.com/apache/avro.git"/>
<browse rdf:resource="https://github.com/apache/avro/"/>
</GitRepository>
</repository>
</Project>
</rdf:RDF>
14 changes: 7 additions & 7 deletions doc/content/en/docs/++version++/IDL Language/_index.md
Original file line number Diff line number Diff line change
Expand Up @@ -222,12 +222,12 @@ The primitive types supported by Avro IDL are the same as those supported by Avr
### Logical Types
Some of the logical types supported by Avro's JSON format are directly supported by Avro IDL. The currently supported types are:
* _decimal_ (logical type [decimal]({{< relref "specification#decimal" >}}))
* _date_ (logical type [date]({{< relref "specification#date" >}}))
* _time_ms_ (logical type [time-millis]({{< relref "specification#time-millisecond-precision" >}}))
* _timestamp_ms_ (logical type [timestamp-millis]({{< relref "specification#timestamp-millisecond-precision" >}}))
* _local_timestamp_ms_ (logical type [local-timestamp-millis]({{< relref "specification#local_timestamp_ms" >}}))
* _uuid_ (logical type [uuid]({{< relref "specification#uuid" >}}))
* _decimal_ (logical type [decimal]({{< relref "../specification#decimal" >}}))
* _date_ (logical type [date]({{< relref "../specification#date" >}}))
* _time_ms_ (logical type [time-millis]({{< relref "../specification#time-millisecond-precision" >}}))
* _timestamp_ms_ (logical type [timestamp-millis]({{< relref "../specification#timestamp-millisecond-precision" >}}))
* _local_timestamp_ms_ (logical type [local-timestamp-millis]({{< relref "../specification#local_timestamp_ms" >}}))
* _uuid_ (logical type [uuid]({{< relref "../specification#uuid" >}}))
For example:
```java
Expand Down Expand Up @@ -261,7 +261,7 @@ record Card {
```
### Default Values
Default values for fields may be optionally specified by using an equals sign after the field name followed by a JSON expression indicating the default value. This JSON is interpreted as described in the [spec]({{< relref "specification#schema-record" >}}).
Default values for fields may be optionally specified by using an equals sign after the field name followed by a JSON expression indicating the default value. This JSON is interpreted as described in the [spec]({{< relref "../specification#schema-record" >}}).
### Complex Types
Expand Down
4 changes: 3 additions & 1 deletion doc/content/en/docs/++version++/_index.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,9 @@
title: "Apache Avro™ ++version++ Documentation"
linkTitle: "++version++"
type: docs
weight: 10
aliases:
- /docs/current/
weight: -9999
---

<!--
Expand Down
Loading

0 comments on commit ad5bd3f

Please sign in to comment.