Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
2 changes: 1 addition & 1 deletion docs/benchmarks/index.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
---
title: Benchmarks
title: Results
sidebar_position: 1
id: index
license: |
Expand Down
4 changes: 2 additions & 2 deletions docs/benchmarks/object-serialization/xlang/swift/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,11 +2,11 @@

This benchmark compares serialization and deserialization throughput for Apache Fory, Protocol Buffers, and JSON in Swift.

## Benchmark Products
## Benchmark Executables

The ordinary/xlang cases are built by `swift-benchmark`. External-type and
carrier comparisons are built by the separate `swift-external-benchmark`
product, so building the ordinary product does not compile those models or
executable, so building the ordinary executable does not compile those models or
serializer specializations.

## Throughput Plot
Expand Down
2 changes: 1 addition & 1 deletion docs/community/how_to_release.md
Original file line number Diff line number Diff line change
Expand Up @@ -446,7 +446,7 @@ To learn more about Fory, please see https://fory.apache.org/
[ ] No compiled archives bundled in source archive.
[ ] Can compile from source.

How to Build and Test, please refer to: https://github.com/apache/fory/blob/main/docs/development/building.md
How to Build and Test, please refer to: https://github.com/apache/fory/blob/main/docs/development/index.md


Thanks,
Expand Down
2 changes: 1 addition & 1 deletion docs/compiler/generated-code/index.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
---
title: Generated Code
title: Overview
sidebar_position: 1
id: index
license: |
Expand Down
135 changes: 0 additions & 135 deletions docs/development/building.md

This file was deleted.

6 changes: 3 additions & 3 deletions docs/development/cpp-debugging.md
Original file line number Diff line number Diff line change
Expand Up @@ -18,9 +18,9 @@ license: |
limitations under the License.
---

import JumpGeneratedFile from "@site/docs/images/jmp_generate_file.png";
import VscodeDebugFory from "@site/docs/images/vscode_debug_fory.jpg";
import VscodeSelectDebugRun from "@site/docs/images/vscode_select_debug_run.png";
import JumpGeneratedFile from "@site/docs/development/jmp_generate_file.png";
import VscodeDebugFory from "@site/docs/development/vscode_debug_fory.jpg";
import VscodeSelectDebugRun from "@site/docs/development/vscode_select_debug_run.png";

## Debugging C++

Expand Down
120 changes: 115 additions & 5 deletions docs/development/index.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
---
title: Development
title: Build and Test
sidebar_position: 1
id: index
license: |
Expand All @@ -22,11 +22,121 @@ license: |
Contributor documentation covers repository setup, builds, tests, debugging, and release-oriented
workflows. It is separate from the user guides for released artifacts.

## Start here
Clone the source tree from https://github.com/apache/fory.

- [Build and test the repository](building.md)
- [Debug the C++ implementation](cpp-debugging.md)
- [Contributing guide](https://github.com/apache/fory/blob/main/CONTRIBUTING.md)
## Java

```bash
cd java
mvn -T16 package
```

Requirements:

- JDK 17+
- Maven 3.6.3+

## Python

```bash
cd python
pip install -v -e .

# Optional: build Cython extension (replace X.Y with your Python version)
bazel build //:cp_fory_so --@rules_python//python/config_settings:python_version=X.Y
```

Requirements:

- CPython 3.8+
- Bazel 8+ (required when building Cython extensions)

## C++

```bash
cd cpp
bazel build //cpp/...
```

Requirements:

- C++17 compiler
- Bazel 8+

## Go

```bash
cd go/fory
go test -v ./...
```

Run Go xlang tests from the Java test module:

```bash
cd java
mvn -T16 install -DskipTests
cd fory-core
FORY_GO_JAVA_CI=1 ENABLE_FORY_DEBUG_OUTPUT=1 mvn test -Dtest=org.apache.fory.xlang.GoXlangTest
```

Requirement: Go 1.24+.

## Rust

```bash
cd rust
cargo build
cargo test --features tests

# Debug a specific test
RUST_BACKTRACE=1 FORY_PANIC_ON_ERROR=1 ENABLE_FORY_DEBUG_OUTPUT=1 \
cargo test --test mod $dir$::$test_file::$test_method -- --nocapture
```

Requirements:

- Rust toolchain via rustup
- `cargo-expand` (optional, for macro expansion debugging)

## JavaScript

```bash
cd javascript
npm install

npm run build
node ./node_modules/.bin/jest --ci --reporters=default --reporters=jest-junit
```

Requirements:

- Node.js (LTS)
- npm

## Markdown

```bash
cd docs
npx prettier --write "**/*.md"
```

Requirements:

- Node.js (LTS)
- npm

## Debugging

See [Debugging C++](cpp-debugging.md) for the repository's VS Code, Bazel, LLDB, and GDB setup.

Runtime-specific contributor instructions remain in each runtime's source tree and contributor
README when they are not part of the shared repository build.

## Contributing

For contribution details, see
[How to contribute to Apache Fory™](https://github.com/apache/fory/blob/main/CONTRIBUTING.md).
For AI-assisted contributions, follow the
[AI Contribution Policy](https://github.com/apache/fory/blob/main/AI_POLICY.md), including the
required self-review, two-reviewer AI review loop, disclosure, and verification evidence for
substantial AI assistance.
41 changes: 0 additions & 41 deletions docs/grpc/architecture.md

This file was deleted.

Loading
Loading