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
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .gitattributes
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
* text=auto eol=lf

# 共通テストベクタはバイナリとして厳密に扱う(改行変換されると検証が壊れるため)
# 共通テストベクタはバイナリとして厳密に扱う(改行変換されると検証がおかしくなるため)
spec/testdata/**/*.nbt binary
spec/testdata/**/*.mca binary
spec/testdata/**/*.mcc binary
Expand Down
15 changes: 7 additions & 8 deletions .github/release-common.md
Original file line number Diff line number Diff line change
@@ -1,24 +1,23 @@
Minecraft **Java版 26.1 以降**のワールドデータ・NBTファイルを
読み書きするライブラリです。
Minecraft **Java版26.1以降**のワールドデータ・NBTファイルを読み書きするライブラリです。

下の成果物をダウンロードして、自分のプロジェクトへ組み込んでください。

## 成果物

| 言語 | ファイル | 組み込み方 |
|---|---|---|
| C# | `SpringNBTLibrary.*.nupkg` | 置き場所を `nuget.config` で教えて `dotnet add package` |
| C# | `SpringNBTLibrary-*-dotnet8.zip` | 展開して `.dll` を参照に追加(`.xml` を隣に置くと補完が効く) |
| Java | `spring-nbt-library-*.jar` | クラスパスへ追加、またはローカルリポジトリへ install |
| C# | `SpringNBTLibrary.*.nupkg` | 置き場所を`nuget.config`で教えて`dotnet add package` |
| C# | `SpringNBTLibrary-*-dotnet8.zip` | 展開して`.dll`を参照に追加(`.xml`を隣に置くと補完が効く) |
| Java | `spring-nbt-library-*.jar` | クラスパスへ追加、またはローカルリポジトリへinstall |
| TypeScript | `spring-nbt-library-*.tgz` | `npm install ./spring-nbt-library-*.tgz` |
| Python | `spring_nbt_library-*.whl` | `pip install spring_nbt_library-*.whl` |
| Rust | `spring-nbt-library-*.crate` | 展開してパス参照。git 参照でも使えます |
| Rust | `spring-nbt-library-*.crate` | 展開してパス参照。git参照でも使えます |

言語ごとの詳しい手順は [はじめに](https://github.com/ScriptArts/SpringNBTLibrary/tree/main/docs/getting-started) を参照してください。
言語ごとの詳しい手順は[はじめに](https://github.com/ScriptArts/SpringNBTLibrary/tree/main/docs/getting-started)を参照してください。

## 確認

`SHA256SUMS.txt` で、落としたファイルが壊れていないか確かめられます。
`SHA256SUMS.txt`で、落としたファイルが破損していないか確かめられます。

```bash
sha256sum -c SHA256SUMS.txt
Expand Down
8 changes: 4 additions & 4 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -5,13 +5,13 @@ on:
branches: [main]
pull_request:

# 同じブランチへ続けて push したら、前の実行は打ち切る
# 同じブランチへ続けてpushしたら、前の実行は打ち切る
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true

jobs:
# 言語ごとの単体テスト。1 つ落ちても他の結果を見たいので fail-fast は切る
# 言語ごとの単体テスト。1つ落ちても他の結果を見たいのでfail-fastは切る
test:
name: ${{ matrix.language }}
runs-on: ubuntu-latest
Expand Down Expand Up @@ -85,7 +85,7 @@ jobs:
working-directory: rust
run: cargo test --all-features

# このライブラリの核。全言語に同じ入力を与えて出力バイト列を突き合わせる
# このライブラリでいちばん肝心な検査。全言語に同じ入力を与えて出力バイト列を比べる
conformance:
name: クロス言語適合性
runs-on: ubuntu-latest
Expand Down Expand Up @@ -122,7 +122,7 @@ jobs:
- name: 全言語の出力を突き合わせる
run: ./spec/run-conformance.sh

# 最低限の MSRV を割っていないか
# 最低限のMSRVを割っていないか
msrv:
name: Rust MSRV (1.75)
runs-on: ubuntu-latest
Expand Down
5 changes: 2 additions & 3 deletions .github/workflows/lint.yml
Original file line number Diff line number Diff line change
Expand Up @@ -7,8 +7,7 @@ on:

# ドキュメント・コメントの規約から外れたものを検出する。
#
# 人手で5言語ぶんを揃え続けるのは必ず破綻するので、ここで機械的に守る
# (docs/adr/0009-static-api-extraction.md)。
# 人手で5言語ぶんを揃え続けると必ずうまくいかなくなるので、ここで機械的に守る。
jobs:
check:
name: ドキュメントとコメントの規約
Expand All @@ -28,6 +27,6 @@ jobs:
run: python3 spec/tools/check_links.py

# 「if / ループにコメントを入れる」は独自の規約なので、
# 各言語の標準 Linter には該当ルールが無い。自前で見るしかない
# 各言語の標準Linterには該当ルールが無い。自前で見るしかない
- name: コメントと禁止記法の規約適合を調べる
run: python3 spec/tools/check_comments.py
18 changes: 9 additions & 9 deletions .github/workflows/release.yml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
name: release

# タグを打つとビルドして GitHub Releases へ成果物を添付する。
# タグを打つとビルドしてGitHub Releasesへ成果物を添付する。
#
# パッケージレジストリ(NuGet / Maven Central / npm / PyPI / crates.io)へは公開せず、
# ここに置いたファイルを利用者が自分のプロジェクトへ組み込む形をとる。
Expand All @@ -10,7 +10,7 @@ on:
# タグを打つ前に組み立てだけ試せるようにしておく
workflow_dispatch:

# gh release create で成果物を上げるために要る
# gh release createで成果物を上げるために要る
permissions:
contents: write

Expand Down Expand Up @@ -44,7 +44,7 @@ jobs:

- uses: dtolnay/rust-toolchain@stable

# タグ名から版を取る。手動実行のときは Cargo.toml の版を使う
# タグ名から版を取る。手動実行のときはCargo.tomlの版を使う
- name: 版を決める
id: version
run: |
Expand All @@ -56,7 +56,7 @@ jobs:
echo "value=${version}" >> "$GITHUB_OUTPUT"
echo "組み立てる版: ${version}"

# 壊れたものを配らないよう、公開前に必ず全部通す
# 正しく動かないものを配らないよう、公開前に必ず全部通す
- name: 全言語のテスト
run: |
(cd csharp && dotnet test --configuration Release)
Expand All @@ -68,8 +68,8 @@ jobs:
- name: 全言語の挙動が一致することの検証
run: ./spec/run-conformance.sh

# dll を直接参照したい人向け。xml を隣に置かないと補完に説明が出ないので、
# LICENSE と合わせてひとまとめにする
# dllを直接参照したい人向け。xmlを隣に置かないと補完に説明が出ないので、
# LICENSEと合わせてひとまとめにする
- name: C# (zip)
run: |
dotnet build csharp/src/SpringNBTLibrary/SpringNBTLibrary.csproj \
Expand All @@ -82,7 +82,7 @@ jobs:
(cd artifacts/csharp && zip -q -r \
"../SpringNBTLibrary-${{ steps.version.outputs.value }}-dotnet8.zip" .)

# NuGet へは公開しないが、落としたファイルをローカルのソースにできる
# NuGetへは公開しないが、落としたファイルをローカルのソースにできる
- name: C# (nupkg)
run: |
dotnet pack csharp/src/SpringNBTLibrary/SpringNBTLibrary.csproj \
Expand Down Expand Up @@ -113,14 +113,14 @@ jobs:
mkdir -p artifacts
cp rust/target/package/spring-nbt-library-*.crate artifacts/

# 落としたファイルが壊れていないか、利用者が確かめられるようにする
# 落としたファイルが元のままか、利用者が確かめられるようにする
- name: チェックサムを作る
run: |
rm -rf artifacts/csharp
(cd artifacts && sha256sum * > SHA256SUMS.txt)
ls -la artifacts

# CHANGELOG からその版の節を取り出し、案内文と合わせて本文にする
# CHANGELOGからその版の節を取り出し、案内文と合わせて本文にする
# 節が無ければここで落ちるので、変更点を書き忘れたまま公開できない
- name: リリース本文を組み立てる
run: |
Expand Down
2 changes: 1 addition & 1 deletion .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@
# --- TypeScript / Node ---
node_modules/
/typescript/dist/
# npm pack が作る配布用の tarball
# npm packが作る配布用のtarball
/typescript/*.tgz

# --- Python ---
Expand Down
Loading
Loading