Skip to content

Commit 0eaf725

Browse files
committed
fix: update package sizes and JRE details in documentation for consistency across platforms
1 parent 9ecf242 commit 0eaf725

6 files changed

Lines changed: 37 additions & 64 deletions

File tree

bindings/python/README.md

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -59,11 +59,11 @@ with arcadedb.create_database("./mydb") as db:
5959

6060
## ✨ Features
6161

62-
-**No Java Installation Required**: Bundled JRE (~249MB uncompressed)
62+
-**No Java Installation Required**: Bundled JRE (~60MB uncompressed)
6363
- 🌍 **4 Platforms Supported**: Linux (x86_64, ARM64), macOS (ARM64), Windows (x86_64)
6464
- 🚀 **Embedded Mode**: Direct database access in Python process (no network)
6565
- 🌐 **Server Mode**: Optional HTTP server with Studio web interface
66-
- 📦 **Self-contained**: All dependencies bundled (~116MB wheel)
66+
- 📦 **Self-contained**: All dependencies bundled (~68MB wheel)
6767
- 🔄 **Multi-model**: Graph, Document, Key/Value, Vector, Time Series
6868
- 🔍 **Multiple query languages**: SQL, OpenCypher, MongoDB
6969
-**High performance**: Direct JVM integration via JPype
@@ -79,10 +79,10 @@ The `arcadedb-embedded` package is platform-specific and self-contained:
7979

8080
**Package Contents (all platforms):**
8181

82-
- **Wheel size (compressed)**: ~116MB
82+
- **Wheel size (compressed)**: ~68MB
8383
- **ArcadeDB JARs (uncompressed)**: ~32MB
84-
- **Bundled JRE (uncompressed)**: ~249MB (platform-specific Java 25 runtime via jlink)
85-
- **Total uncompressed size**: ~281MB
84+
- **Bundled JRE (uncompressed)**: ~60MB (platform-specific Java 25 runtime via jlink)
85+
- **Total uncompressed size**: ~95MB
8686

8787
**Note**: Some JARs are excluded to optimize package size (e.g., gRPC wire protocol). See [`jar_exclusions.txt`](https://github.com/humemai/arcadedb-embedded-python/blob/main/bindings/python/jar_exclusions.txt) for details.
8888

bindings/python/docs/development/build-architecture.md

Lines changed: 11 additions & 30 deletions
Original file line numberDiff line numberDiff line change
@@ -6,16 +6,16 @@ This document describes the build architecture for creating platform-specific Py
66

77
**Goal:** Distribute a single `arcadedb-embedded` package that works on 4 platforms with **zero Java installation required**.
88

9-
**Achievement:** 4 platform-specific wheels (~63–115MB compressed) with bundled platform-specific JRE, built and tested on GitHub Actions using native runners.
9+
**Achievement:** 4 platform-specific wheels (~68MB compressed) with bundled platform-specific JRE, built and tested on GitHub Actions using native runners.
1010

1111
## Supported Platforms
1212

1313
| Platform | Wheel Size | JRE Size | Runner | Build Method | Notes |
1414
|----------|-----------|----------|---------|--------------|-------|
15-
| **linux/amd64** | 115.2M | 249.0M | `ubuntu-24.04` | Docker native | Most common Linux platform |
16-
| **linux/arm64** | 114.1M | 249.6M | `ubuntu-24.04-arm` | Docker native | ARM64 servers, Raspberry Pi |
17-
| **darwin/arm64** | 63.1M | 55.1M | `macos-15` | Native build | Apple Silicon Macs (2020+) |
18-
| **windows/amd64** | ~115M | ~249M | `windows-2025` | Native build | Windows x86_64 |
15+
| **linux/amd64** | ~68M | ~60M | `ubuntu-24.04` | Docker native | Most common Linux platform |
16+
| **linux/arm64** | ~68M | ~60M | `ubuntu-24.04-arm` | Docker native | ARM64 servers, Raspberry Pi |
17+
| **darwin/arm64** | ~68M | ~60M | `macos-15` | Native build | Apple Silicon Macs (2020+) |
18+
| **windows/amd64** | ~68M | ~60M | `windows-2025` | Native build | Windows x86_64 |
1919

2020
**All supported platforms:**
2121

@@ -381,33 +381,14 @@ bindings/python/
381381
382382
**Solution:** Switch to JUnit XML (structured data, no regex).
383383
384-
## Size Breakdown (current, as of 26-Jan-2026)
384+
## Size Breakdown (current, as of 29-Jan-2026)
385385
386-
**linux/amd64**
386+
Sizes are now consistent across platforms (ballpark):
387387
388-
- Wheel: 115.2M (compressed)
389-
- JRE: 249.0M (uncompressed)
390-
- JARs: 31.7M (uncompressed)
391-
- Installed: ~281M (uncompressed)
392-
393-
**linux/arm64**
394-
395-
- Wheel: 114.1M (compressed)
396-
- JRE: 249.6M (uncompressed)
397-
- JARs: 31.7M (uncompressed)
398-
- Installed: ~281M (uncompressed)
399-
400-
**darwin/arm64**
401-
402-
- Wheel: 63.1M (compressed)
403-
- JRE: 55.1M (uncompressed)
404-
- JARs: 31.7M (uncompressed)
405-
- Installed: ~87M (uncompressed)
406-
407-
### Why Sizes Vary by Platform
408-
409-
- JRE binaries differ by platform (different native code and compression).
410-
- Linux wheels include larger JRE footprints than macOS arm64.
388+
- Wheel: ~68M (compressed)
389+
- JRE: ~60M (uncompressed)
390+
- JARs: ~32M (uncompressed)
391+
- Installed: ~95M (uncompressed)
411392
412393
## Development
413394

bindings/python/docs/development/ci-setup.md

Lines changed: 6 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ The CI/CD workflows now support building and releasing across **4 platforms** fo
88

99
### Single-Package Strategy
1010

11-
- **arcadedb-embedded**: All platforms (~63–115MB compressed) - JRE bundled, no external Java needed
11+
- **arcadedb-embedded**: All platforms (~68MB compressed) - JRE bundled, no external Java needed
1212

1313
### Platforms (All Native Runners)
1414

@@ -100,17 +100,14 @@ After a successful release, you should see:
100100

101101
All 4 platforms passing 258 tests and example scripts:
102102

103-
| Platform | Wheel Size | JRE Size | Tests |
104-
|----------|-----------|----------|-------|
105-
| linux/amd64 | 115.2M | 249.0M | 258 passed ✅ |
106-
| linux/arm64 | 114.1M | 249.6M | 258 passed ✅ |
107-
| darwin/arm64 | 63.1M | 55.1M | 258 passed ✅ |
108-
| windows/amd64 | ~115M | ~249M | 258 passed ✅ |
103+
| Platforms | Wheel Size | JRE Size | Tests |
104+
|-----------|-----------|----------|-------|
105+
| linux/amd64, linux/arm64, darwin/arm64, windows/amd64 | ~68M | ~60M | 258 passed ✅ |
109106

110107
**All platforms include:**
111108

112-
- 31.7M JARs (83 files, identical across platforms, gRPC excluded)
113-
- Platform-specific JRE (55.1–249.6M uncompressed, depending on platform)
109+
- 32.4M JARs (83 files, identical across platforms, gRPC excluded)
110+
- Platform-specific JRE (~60M uncompressed, similar across platforms)
114111
- Native runners (no QEMU emulation anywhere)
115112

116113
## Cross-Platform Building

bindings/python/docs/getting-started/distributions.md

Lines changed: 9 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ ArcadeDB Python provides a **self-contained embedded** package that runs the dat
66

77
| Package | Wheel Size | Installed Size (uncompressed) | Java Required | Studio UI | Query Languages |
88
|---------|-----------|------------------------------|---------------|-----------|----------------|
9-
| **arcadedb-embedded** | ~63–115MB | ~87–281MB | ❌ No || SQL, OpenCypher, MongoDB |
9+
| **arcadedb-embedded** | ~68MB | ~95MB | ❌ No || SQL, OpenCypher, MongoDB |
1010

1111
**Installation:**
1212

@@ -21,13 +21,13 @@ uv pip install arcadedb-embedded
2121
The package includes everything you need:
2222

2323
- **ArcadeDB JARs** (~32MB, uncompressed): Core database with all features
24-
- **Bundled JRE** (~249MB, uncompressed): Platform-specific Java 25 runtime (via jlink)
24+
- **Bundled JRE** (~60MB, uncompressed): Platform-specific Java 25 runtime (via jlink)
2525

26-
**Total:** ~63–115MB compressed wheel, ~87–281MB uncompressed installed size (platform-dependent)
26+
**Total:** ~68MB compressed wheel, ~95MB uncompressed installed size (similar across platforms)
2727

2828
## Platform Support
2929

30-
Pre-built **platform-specific** wheels are available for **4 platforms**. Sizes vary slightly by platform, but the ballpark totals are consistent (see size breakdown below).
30+
Pre-built **platform-specific** wheels are available for **4 platforms**. Sizes are consistent across platforms (see size breakdown below).
3131

3232
**Key Features:**
3333

@@ -41,7 +41,7 @@ Pre-built **platform-specific** wheels are available for **4 platforms**. Sizes
4141

4242
**Core Features:**
4343

44-
-**No Java Installation Required**: Platform-specific JRE bundled (~249MB uncompressed)
44+
-**No Java Installation Required**: Platform-specific JRE bundled (~60MB uncompressed)
4545
-**Core Database**: All models (Graph, Document, Key/Value, Vector, Time Series)
4646
-**Query Languages**: SQL, OpenCypher, MongoDB (all included)
4747
-**Studio Web UI**: Visual database explorer and query editor
@@ -107,17 +107,15 @@ Simple and consistent across all platforms!
107107

108108
## Size Breakdown
109109

110-
Platform-specific sizes (current):
110+
Current sizes are consistent across platforms (ballpark):
111111

112-
- **linux/amd64**: 115.2MB wheel, ~281MB installed
113-
- **linux/arm64**: 114.1MB wheel, ~281MB installed
114-
- **darwin/arm64**: 63.1MB wheel, ~87MB installed
115-
- **windows/amd64**: ~115MB wheel, ~281MB installed (sizes may vary)
112+
- **Wheel (compressed)**: ~68MB
113+
- **Installed (uncompressed)**: ~95MB
116114

117115
**Components (uncompressed):**
118116

119117
- **ArcadeDB JARs**: ~31.7MB
120-
- **Bundled JRE**: ~55–250MB (platform-dependent)
118+
- **Bundled JRE**: ~60MB (platform-specific Java 25 runtime via jlink)
121119

122120
**Optimizations:**
123121

bindings/python/docs/getting-started/installation.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -18,10 +18,10 @@ uv pip install arcadedb-embedded
1818

1919
## What's Included
2020

21-
The `arcadedb-embedded` package (~63–115MB wheel, ~87–281MB uncompressed installed, platform-dependent) includes everything you need:
21+
The `arcadedb-embedded` package (~68MB wheel, ~95MB uncompressed installed, similar across platforms) includes everything you need:
2222

2323
- **ArcadeDB JARs**: ~31.7MB (uncompressed)
24-
- **Bundled JRE**: ~55–250MB (uncompressed, platform-specific Java 25 runtime via jlink)
24+
- **Bundled JRE**: ~60MB (uncompressed, platform-specific Java 25 runtime via jlink)
2525

2626
**Features Included:**
2727

bindings/python/docs/index.md

Lines changed: 4 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -161,12 +161,9 @@ See [Java API Coverage](java-api-coverage.md) for detailed comparison.
161161

162162
We provide a **single, self-contained package** that works on all major platforms:
163163

164-
| Platform | Package Name | Size | What's Included |
164+
| Platforms | Package Name | Size | What's Included |
165165
|----------|-------------|------|-----------------|
166-
| **linux/amd64** | `arcadedb-embedded` | ~115MB | Full ArcadeDB + Bundled JRE + Studio UI |
167-
| **linux/arm64** | `arcadedb-embedded` | ~114MB | Full ArcadeDB + Bundled JRE + Studio UI |
168-
| **darwin/arm64** | `arcadedb-embedded` | ~63MB | Full ArcadeDB + Bundled JRE + Studio UI |
169-
| **windows/amd64** | `arcadedb-embedded` | ~115MB | Full ArcadeDB + Bundled JRE + Studio UI |
166+
| linux/amd64, linux/arm64, darwin/arm64, windows/amd64 | `arcadedb-embedded` | ~68MB | Full ArcadeDB + Bundled JRE + Studio UI |
170167

171168
The package uses the standard import:
172169

@@ -206,10 +203,10 @@ import arcadedb_embedded as arcadedb
206203
- **OS**: Linux (x86_64, ARM64), macOS (Apple Silicon), or Windows (x86_64)
207204

208205
!!! note "Self-Contained"
209-
Everything needed to run ArcadeDB is included in the wheel (~63–115MB):
206+
Everything needed to run ArcadeDB is included in the wheel (~68MB):
210207

211208
- **Bundled JRE**
212-
(Platform-specific Java 25 runtime trimmed with jlink to only what's required for ArcadeDB, ~249MB uncompressed)
209+
(Platform-specific Java 25 runtime trimmed with jlink to only what's required for ArcadeDB, ~60MB uncompressed)
213210
- **ArcadeDB JARs**
214211
(~32MB uncompressed)
215212
- **JPype** (Bridge between Python and the bundled JVM)

0 commit comments

Comments
 (0)