Skip to content

Commit d0ad0e1

Browse files
authored
GH-578: [Website] Update the Install page (#579)
Fixes GH-578. * Use meaningful "id" not "number" for link ID such as "arrow-rust" not "26" * Add Go and Java to separated libraries * Remove Java related description because Java was separated * Remove Go related description because Go was separated * Don't use newlines for a paragraph for all paragraphs * Update supported Linux distributions * Update available NuGet packages for C# * Update available conda packages * Update available MSYS2 packages * Add Conan related information * Update supported Ruby versions It's not required but this also add Docker Compose configuration for local preview.
1 parent 15a44f7 commit d0ad0e1

5 files changed

Lines changed: 133 additions & 85 deletions

File tree

README.md

Lines changed: 4 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -100,19 +100,13 @@ to `_site/` locally by the following command line:
100100
JEKYLL_ENV=production bundle exec rake generate
101101
```
102102

103-
## Using Docker
103+
## Using Docker Compose
104104

105-
If you don't wish to change or install `ruby` and `nodejs` locally, you can use docker to build and preview the site with a command like:
105+
If you don't wish to change or install `ruby` and `nodejs` locally,
106+
you can use Docker Compose to build and preview the site with a command like:
106107

107108
```shell
108-
docker run -v `pwd`:/arrow-site -p 4000:4000 -it ruby bash
109-
cd arrow-site
110-
apt-get update
111-
apt-get install -y npm
112-
gem install bundler
113-
bundle install
114-
# Serve using local container address
115-
bundle exec rake HOST=0.0.0.0
109+
docker compose run
116110
```
117111

118112
Then open http://localhost:4000 locally

_config.yml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -31,10 +31,12 @@ exclude:
3131
- Gemfile.lock
3232
- README.md
3333
- Rakefile
34+
- compose.yaml
3435
- node_modules
3536
- package-lock.json
3637
- package.json
3738
- release-announcement-template.md
39+
- run.sh
3840
- scripts
3941
- vendor
4042
- webpack.config.json

compose.yaml

Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,27 @@
1+
# Licensed to the Apache Software Foundation (ASF) under one
2+
# or more contributor license agreements. See the NOTICE file
3+
# distributed with this work for additional information
4+
# regarding copyright ownership. The ASF licenses this file
5+
# to you under the Apache License, Version 2.0 (the
6+
# "License"); you may not use this file except in compliance
7+
# with 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,
12+
# software distributed under the License is distributed on an
13+
# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
14+
# KIND, either express or implied. See the License for the
15+
# specific language governing permissions and limitations
16+
# under the License.
17+
18+
services:
19+
jekyll:
20+
# The version part must be synchronized with the .ruby-version content
21+
image: ruby:3.3.6
22+
volumes:
23+
- .:/arrow-site:delegated
24+
command:
25+
- /arrow-site/run.sh
26+
ports:
27+
- "127.0.0.1:4000:4000"

install.md

Lines changed: 74 additions & 75 deletions
Original file line numberDiff line numberDiff line change
@@ -26,64 +26,45 @@ limitations under the License.
2626

2727
## Current Version: {{site.data.versions['current'].number}} ({{site.data.versions['current'].date}})
2828

29-
See the [release notes][10] for more about what's new. For information on previous releases, see [here][19]. Rust and Julia libraries are released separately. See the following pages for details:
29+
See the [release notes][release-notes] for more about what's new. For information on previous releases, see [release list][release-list]. Go, Java, Julia and Rust libraries are released separately. See the following pages for details:
3030

31-
* Rust: [documentation for arrow crate][26]
32-
* Julia: [repository for Arrow.jl package][27]
31+
* Go: [repository for Apache Arrow Go][arrow-go]
32+
* Java: [repository for Apache Arrow Java][arrow-java]
33+
* Julia: [repository for Arrow.jl package][arrow-julia]
34+
* Rust: [documentation for arrow crate][arrow-rust]
3335

3436
This page is a reference listing of release artifacts and package managers. For language-specific user guides, see the pages listed in the "Documentation" menu above.
3537

3638
----
3739

3840
### Source Release
3941

40-
* **Source Release**: [{{site.data.versions['current'].tarball-name}}][6]
41-
* **Verification**: [asc signature][13], [sha256 checksum][14], [sha512 checksum][15], ([verification instructions][12])
42-
* [Git tag {{site.data.versions['current'].git-tag}}][2]
43-
* [GPG keys for release signatures][11]
44-
45-
### Java Packages
46-
47-
[Java Artifacts on Maven Central][4]
42+
* **Source Release**: [{{site.data.versions['current'].tarball-name}}][tarball]
43+
* **Verification**: [asc signature][signature], [sha256 checksum][checksum-sha256], [sha512 checksum][checksum-sha512], ([verification instructions][how-to-verify])
44+
* [Git tag {{site.data.versions['current'].git-tag}}][git-tag]
45+
* [GPG keys for release signatures][gpg-keys]
4846

4947
### Python Wheels
5048

5149
We have provided official binary wheels on PyPI for Linux, macOS, and Windows:
5250

5351
```shell
54-
pip install pyarrow=={{site.data.versions['current'].pinned_number}}
55-
```
56-
57-
We recommend pinning `{{site.data.versions['current'].pinned_number}}`
58-
in `requirements.txt` to install the latest patch release.
59-
60-
These include the Apache Arrow and Apache Parquet C++ binary libraries bundled
61-
with the wheel.
62-
63-
### Go Module
64-
65-
The Go Module is tagged with its version and can be easily installed with `go get`:
66-
67-
```shell
68-
go get github.com/apache/arrow/go/v{{site.data.versions['current'].major_number}}@v{{site.data.versions['current'].number}}
52+
pip install 'pyarrow=={{site.data.versions['current'].pinned_number}}'
6953
```
7054

71-
The Apache Arrow module can then be imported using:
55+
We recommend pinning `{{site.data.versions['current'].pinned_number}}` in `requirements.txt` to install the latest patch release.
7256

73-
```go
74-
import "github.com/apache/arrow/go/v{{site.data.version['current'].major_number}}/arrow"
75-
```
57+
These include the Apache Arrow and Apache Parquet C++ binary libraries bundled with the wheel.
7658

77-
### C++ and GLib (C) Packages for Debian GNU/Linux, Ubuntu, AlmaLinux, CentOS and Amazon Linux
59+
### C++ and GLib (C) Packages for Debian GNU/Linux, Ubuntu, AlmaLinux, CentOS, Red Hat Enterprise Linux, Amazon Linux and Oracle Linux
7860

79-
We have provided APT and Yum repositories for Apache Arrow C++ and
80-
Apache Arrow GLib (C). Here are supported platforms:
61+
We have provided APT and Yum repositories for Apache Arrow C++ and Apache Arrow GLib (C). Here are supported platforms:
8162

82-
* Debian GNU/Linux bullseye
8363
* Debian GNU/Linux bookworm
8464
* Debian GNU/Linux trixie
8565
* Ubuntu 20.04 LTS
8666
* Ubuntu 22.04 LTS
67+
* Ubuntu 24.04 LTS
8768
* AlmaLinux 8
8869
* AlmaLinux 9
8970
* CentOS 7
@@ -182,34 +163,35 @@ sudo dnf install -y parquet-glib-devel # For Apache Parquet GLib (C)
182163

183164
We have provided NuGet packages for Apache Arrow C#:
184165

185-
* [Apache.Arrow][22]
186-
* [Apache.Arrow.Flight][23]
187-
* [Apache.Arrow.Flight.AspNetCore][24]
166+
* [Apache.Arrow][arrow-csharp-arrow]
167+
* [Apache.Arrow.Compression][arrow-csharp-arrow-compression]
168+
* [Apache.Arrow.Flight][arrow-csharp-arrow-flight]
169+
* [Apache.Arrow.Flight.AspNetCore][arrow-csharp-arrow-flight-asp-net-core]
188170

189171
## Other Installers
190172

191173
For convenience, we also provide packages through several package managers. Many of them are provided as binary, built from the source release. As the Apache Arrow PMC has not explicitly voted on these packages, they are technically considered unofficial releases.
192174

193-
### C++ and Python Conda Packages
175+
### C++, GLib (C), Python and R Conda Packages
194176

195-
Binary conda packages are on [conda-forge][5] for Linux (x86\_64, aarch64, ppc64le), macOS (x86\_64 and arm64), and Windows (x86\_64)
177+
Binary conda packages are on [conda-forge][conda-forge] for Linux (x86\_64, aarch64, ppc64le), macOS (x86\_64 and arm64), and Windows (x86\_64)
196178
for the following versions:
197179

198-
* Python 3.8, 3.9, 3.10, 3.11
199-
* R 4.1, 4.2, 4.3
180+
* Python 3.9, 3.10, 3.11, 3.12, 3.13
181+
* R 4.3, 4.4
200182

201183
Install them with:
202184

203185
```shell
204-
conda install arrow-cpp={{site.data.versions['current'].pinned_number}} -c conda-forge
186+
conda install libarrow-all={{site.data.versions['current'].pinned_number}} -c conda-forge
187+
conda install arrow-c-glib={{site.data.versions['current'].pinned_number}} -c conda-forge
205188
conda install pyarrow={{site.data.versions['current'].pinned_number}} -c conda-forge
206189
conda install r-arrow={{site.data.versions['current'].pinned_number}} -c conda-forge
207190
```
208191

209192
### C++ and GLib (C) Packages on Homebrew
210193

211-
On macOS, you can install the C++ library using
212-
[Homebrew][17]:
194+
On macOS, you can install the C++ library using [Homebrew][homebrew]:
213195

214196
```shell
215197
brew install apache-arrow
@@ -223,30 +205,35 @@ brew install apache-arrow-glib
223205

224206
### C++ and GLib (C) Packages for MSYS2
225207

226-
The MSYS2 packages include [Apache Arrow C++ and GLib (C)
227-
package][16]. You can install the package by `pacman`.
208+
The MSYS2 packages include [Apache Arrow C++ and GLib (C) package][msys2]. You can install the package by `pacman`.
228209

229-
UCRT 64-bit version:
210+
GCC + x86\_64 + UCRT version:
230211

231212
```shell
232213
pacman -S --noconfirm mingw-w64-ucrt-x86_64-arrow
233214
```
234215

235-
64-bit version:
216+
GCC + x86\_64 version:
236217

237218
```shell
238219
pacman -S --noconfirm mingw-w64-x86_64-arrow
239220
```
240221

241-
32-bit version:
222+
Clang + x86\_64 version:
223+
224+
```shell
225+
pacman -S --noconfirm mingw-w64-clang-x86_64-arrow
226+
```
227+
228+
Clang + aarch64 version:
242229

243230
```shell
244-
pacman -S --noconfirm mingw-w64-i686-arrow
231+
pacman -S --noconfirm mingw-w64-clang-aarch64-arrow
245232
```
246233

247234
### C++ Package on vcpkg
248235

249-
You can download and install Apache Arrow C++ using the [vcpkg](https://github.com/Microsoft/vcpkg) dependency manager:
236+
You can download and install Apache Arrow C++ using the [vcpkg][vcpkg] dependency manager:
250237

251238
```shell
252239
git clone https://github.com/Microsoft/vcpkg.git
@@ -256,19 +243,28 @@ cd vcpkg
256243
./vcpkg install arrow
257244
```
258245

259-
The Apache Arrow C++ port in vcpkg is kept up to date by Microsoft team members and community contributors. If the version is out of date, please [create an issue or pull request][18] on the vcpkg repository.
246+
The Apache Arrow C++ port in vcpkg is kept up to date by Microsoft team members and community contributors. If the version is out of date, please [create an issue or pull request on the vcpkg repository][vcpkg].
247+
248+
### C++ Package on Conan
249+
250+
You can download and install Apache Arrow C++ using the [Conan][conan] package manager. For example, you can use the following `conanfile.txt`:
251+
252+
```ini
253+
[requires]
254+
arrow/{{site.data.versions['current'].number}}
255+
```
260256

261257
### R Package on CRAN
262258

263-
Install the R package from [CRAN][20] with
259+
Install the R package from [CRAN][cran] with
264260

265261
```r
266262
install.packages("arrow")
267263
```
268264

269265
### Ruby Packages on RubyGems
270266

271-
Install the Ruby packages for Ruby 3.0, 3.1 and 3.2 from [RubyGems][25] with
267+
Install the Ruby packages for maintained Ruby from [RubyGems][rubygems] with:
272268

273269
```shell
274270
gem install red-arrow
@@ -280,24 +276,27 @@ gem install red-gandiva # For Gandiva support
280276
gem install red-parquet # For Apache Parquet support
281277
```
282278

283-
[2]: {{site.data.versions['current'].github-tag-link}}
284-
[4]: {{site.data.versions['current'].java-artifacts}}
285-
[5]: https://conda-forge.github.io
286-
[6]: {{site.data.versions['current'].tarball-url}}
287-
[10]: {{ site.baseurl }}/release/{{site.data.versions['current'].number}}.html
288-
[11]: https://downloads.apache.org/arrow/KEYS
289-
[12]: https://www.apache.org/dyn/closer.cgi#verify
290-
[13]: {{site.data.versions['current'].asc}}
291-
[14]: {{site.data.versions['current'].sha256}}
292-
[15]: {{site.data.versions['current'].sha512}}
293-
[16]: https://github.com/msys2/MINGW-packages/tree/HEAD/mingw-w64-arrow
294-
[17]: https://brew.sh/
295-
[18]: https://github.com/Microsoft/vcpkg
296-
[19]: {{ site.baseurl }}/release/
297-
[20]: https://cran.r-project.org/
298-
[22]: https://www.nuget.org/packages/Apache.Arrow/
299-
[23]: https://www.nuget.org/packages/Apache.Arrow.Fligth/
300-
[24]: https://www.nuget.org/packages/Apache.Arrow.Flight.AspNetCore/
301-
[25]: https://rubygems.org/
302-
[26]: https://docs.rs/crate/arrow/latest
303-
[27]: https://github.com/apache/arrow-julia/#readme
279+
[arrow-csharp-arrow-compression]: https://www.nuget.org/packages/Apache.Arrow.Compression/
280+
[arrow-csharp-arrow-flight-asp-net-core]: https://www.nuget.org/packages/Apache.Arrow.Flight.AspNetCore/
281+
[arrow-csharp-arrow-flight]: https://www.nuget.org/packages/Apache.Arrow.Flight/
282+
[arrow-csharp-arrow]: https://www.nuget.org/packages/Apache.Arrow/
283+
[arrow-go]: https://github.com/apache/arrow-go/#readme
284+
[arrow-java]: https://github.com/apache/arrow-java/#readme
285+
[arrow-julia]: https://github.com/apache/arrow-julia/#readme
286+
[arrow-rust]: https://docs.rs/crate/arrow/latest
287+
[checksum-sha256]: {{site.data.versions['current'].sha256}}
288+
[checksum-sha512]: {{site.data.versions['current'].sha512}}
289+
[conan]: https://conan.io/
290+
[conda-forge]: https://conda-forge.org/
291+
[cran]: https://cran.r-project.org/
292+
[git-tag]: {{site.data.versions['current'].github-tag-link}}
293+
[gpg-keys]: https://downloads.apache.org/arrow/KEYS
294+
[homebrew]: https://brew.sh/
295+
[how-to-verify]: https://www.apache.org/dyn/closer.lua#verify
296+
[msys2]: https://github.com/msys2/MINGW-packages/tree/HEAD/mingw-w64-arrow
297+
[release-list]: {{ site.baseurl }}/release/
298+
[release-notes]: {{ site.baseurl }}/release/{{site.data.versions['current'].number}}.html
299+
[rubygems]: https://rubygems.org/
300+
[signature]: {{site.data.versions['current'].asc}}
301+
[tarball]: {{site.data.versions['current'].tarball-url}}
302+
[vcpkg]: https://github.com/Microsoft/vcpkg

run.sh

Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,26 @@
1+
#!/bin/bash
2+
#
3+
# Licensed to the Apache Software Foundation (ASF) under one
4+
# or more contributor license agreements. See the NOTICE file
5+
# distributed with this work for additional information
6+
# regarding copyright ownership. The ASF licenses this file
7+
# to you under the Apache License, Version 2.0 (the
8+
# "License"); you may not use this file except in compliance
9+
# with the License. You may obtain a copy of the License at
10+
#
11+
# http://www.apache.org/licenses/LICENSE-2.0
12+
#
13+
# Unless required by applicable law or agreed to in writing,
14+
# software distributed under the License is distributed on an
15+
# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
16+
# KIND, either express or implied. See the License for the
17+
# specific language governing permissions and limitations
18+
# under the License.
19+
20+
set -eux
21+
22+
cd /arrow-site
23+
apt update
24+
apt install -y npm
25+
bundle install
26+
bundle exec rake HOST=0.0.0.0

0 commit comments

Comments
 (0)