You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Commit 175d100
Browse filesBrowse the repository at this point in the historyBrowse files
jun0
committed
[S8] upstream 동기 — 컷 bd42427 (개명 스윕 · 충돌 8) · ★우리 픽스처 5/5 보존
착수 재측정(신 서식): 컷 bd42427 = ★누적 8 · 델타 +8(base 3fb08a8 · merge-base ba5797b).
「재서 8 이었다」— 12커밋 전부 crates.io 공개 준비(크레이트 개명) 스윕이다.
★개명 대응표(upstream 이력 실측 · --find-renames): 6개 디렉터리 · A/D 0 · 전건 R.
java_runtime → rustjava-runtime(2홉: →java-runtime→) 379건 최소 R079
test_data → test-data 243건 R083 · jvm_rust → jvm-bytecode 12건 R066
java_class_proto → jvm-class-proto 4건 R056 · java_constants → jvm-types 2건 R061
test_utils → test-utils 2건 R061
★★modify/delete = «0건»이었다 — 위험 예측이 빗나간 «좋은» 쪽이다.
git 이 CONFLICT (file location) + AU 로 처리해 우리 고유 6건을 새 경로로 «이미 옮겨» 두고
이동 확인만 요구했다. ⇒ 처분은 「간다」 전건이고, origin/main 블롭과 대조해 6건 전부
★바이트 동일을 확인했다. 픽스처 수 5 → 5.
★★그런데 개명이 «우리 자산 2건»을 낡게 만들었다(5회째 형태 · 축은 CI/경로):
⑴.github/workflows/rust.yml — `--exclude test_utils` 가 옛 크레이트 이름이라 wasm32 셀이
깨진다(실측: 옛 이름 rc=101 ↔ 새 이름 rc=0). test-utils 로 고쳤다.
⑵tests/test_class_format.rs(PR #3 픽스처) — "test_data/Hello.class" 경로 4곳을 test-data/ 로.
⇒ 둘 다 «우리 파일»이라 충돌이 날 수가 없다. 개명 대응표를 그대로 적용했을 뿐이다.
★Cargo.lock — 계약6⒞ 가 «또» 잡았다: --theirs + build 가 tracing 0.1.44 → 0.1.41,
tracing-subscriber 0.3.23 → 0.3.20, syn 3.0.4 → 3.0.2 로 «내렸다».
★tracing 하강은 PR #4(tracing-attributes 상한 핀 제거 = 0.1.41 → 0.1.44 언프리즈)를 되돌리는 것이다.
⇒ S5 와 같은 처방: origin/main 의 lock 에서 출발해 다시 cargo build ⇒ 내려간 것 0 ·
tracing 0.1.44 유지 · tracing-attributes 부재 유지.
thread.rs 유일 내용 충돌 = import 블록 «직교» 합집합(upstream 크레이트 개명 import 2줄 +
우리 tracing::Instrument). 수동 span 2요소 생존.
green: stable 4종 + beta 2종 rc=0 · 554 passed / 0 failed / 1 ignored(baseline 554 · 증감 0 이고
그것이 맞다 — upstream 테스트 함수도 547 → 547) · #[ignore] 1 → 1 · 우리 테스트 함수 558 → 558.
Copy file name to clipboardExpand all lines: AGENTS.md
+8-7Lines changed: 8 additions & 7 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -21,11 +21,12 @@
21
21
22
22
## Project Structure
23
23
-`jvm/` - Core JVM implementation (`#![no_std]`)
24
-
-`jvm_rust/` - Rust-based JVM interpreter
25
-
-`java_runtime/` - Java standard library implementations
24
+
-`jvm-bytecode/` - JVM class and bytecode implementation
25
+
-`rustjava-runtime/` - Java standard library implementations
26
26
-`classfile/` - Class file parser
27
-
-`java_class_proto/` - Java class prototypes
28
-
-`test_utils/` - Shared test utilities
27
+
-`jvm-class-proto/` - Java class prototypes
28
+
-`jvm-types/` - Shared JVM metadata types
29
+
-`test-utils/` - Shared test utilities
29
30
30
31
## Round Worklog `docs/worklog/` — human `.md` + machine `.json`, always a pair
31
32
When a round leaves follow-up proposals or their disposition, drop **two files with the same
@@ -80,9 +81,9 @@ print('open cards:',p-a)"
80
81
- ⒝ **< 5** ⇒ 의무화해도 카드가 늘지 않았다는 뜻이므로 **의무 자체를 재검토**하라.
81
82
Baseline measured 2026-09-04: 9 proposals − 4 disposed = **5 open**. So ⒝ means "fewer than today".
82
83
## Testing Boundaries
83
-
- Keep `java_runtime/tests/classes` limited to Java standard library class and API behavior.
84
-
- Test JVM and interpreter semantics, including class initialization, bytecode execution, and monitor behavior, with compiled Java fixtures under `test_data/src` and expected output under `test_data`, executed by `tests/test_class.rs`.
85
-
- Do not place JVM core behavior tests in the `java_runtime` standard library test tree.
84
+
- Keep `rustjava-runtime/tests/classes` limited to Java standard library class and API behavior.
85
+
- Test JVM and interpreter semantics, including class initialization, bytecode execution, and monitor behavior, with compiled Java fixtures under `test-data/src` and expected output under `test-data`, executed by `tests/test_class.rs`.
86
+
- Do not place JVM core behavior tests in the `rustjava-runtime` standard library test tree.
86
87
87
88
## Compatibility Sources
88
89
- Implement Java compatibility from public specifications, Javadocs, and observable behavior tests. Do not consult or reproduce OpenJDK or other Java runtime implementation source code; keep the implementation independent to avoid licensing and provenance concerns.
0 commit comments