pycodedj 0.5.0__tar.gz → 0.6.0__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (39) hide show
  1. {pycodedj-0.5.0 → pycodedj-0.6.0}/.gitignore +1 -0
  2. {pycodedj-0.5.0 → pycodedj-0.6.0}/CHANGELOG.md +25 -0
  3. {pycodedj-0.5.0 → pycodedj-0.6.0}/PKG-INFO +10 -3
  4. {pycodedj-0.5.0 → pycodedj-0.6.0}/README.ja.md +8 -2
  5. {pycodedj-0.5.0 → pycodedj-0.6.0}/README.md +8 -2
  6. {pycodedj-0.5.0 → pycodedj-0.6.0}/docs/index.html +5 -3
  7. pycodedj-0.6.0/docs/manual.html +1668 -0
  8. pycodedj-0.5.0/docs/manual.html → pycodedj-0.6.0/docs/manual.ja.html +73 -19
  9. {pycodedj-0.5.0 → pycodedj-0.6.0}/docs/manual.ja.md +62 -12
  10. {pycodedj-0.5.0 → pycodedj-0.6.0}/docs/manual.md +62 -12
  11. pycodedj-0.6.0/examples/club_set.py +107 -0
  12. {pycodedj-0.5.0 → pycodedj-0.6.0}/pyproject.toml +2 -1
  13. {pycodedj-0.5.0 → pycodedj-0.6.0}/src/pycodedj/__init__.py +1 -1
  14. {pycodedj-0.5.0 → pycodedj-0.6.0}/src/pycodedj/__main__.py +22 -0
  15. {pycodedj-0.5.0 → pycodedj-0.6.0}/src/pycodedj/osc_bridge.py +6 -0
  16. pycodedj-0.6.0/tests/test_cli.py +34 -0
  17. {pycodedj-0.5.0 → pycodedj-0.6.0}/tests/test_osc_bridge.py +25 -0
  18. pycodedj-0.5.0/examples/club_set.py +0 -150
  19. {pycodedj-0.5.0 → pycodedj-0.6.0}/.github/workflows/workflow.yml +0 -0
  20. {pycodedj-0.5.0 → pycodedj-0.6.0}/LICENSE +0 -0
  21. {pycodedj-0.5.0 → pycodedj-0.6.0}/docs/CNAME +0 -0
  22. {pycodedj-0.5.0 → pycodedj-0.6.0}/examples/demo.py +0 -0
  23. {pycodedj-0.5.0 → pycodedj-0.6.0}/examples/hello_sc.py +0 -0
  24. {pycodedj-0.5.0 → pycodedj-0.6.0}/examples/sound_showcase.py +0 -0
  25. {pycodedj-0.5.0 → pycodedj-0.6.0}/sc/synths.scd +0 -0
  26. {pycodedj-0.5.0 → pycodedj-0.6.0}/src/pycodedj/_loop.py +0 -0
  27. {pycodedj-0.5.0 → pycodedj-0.6.0}/src/pycodedj/analyzer.py +0 -0
  28. {pycodedj-0.5.0 → pycodedj-0.6.0}/src/pycodedj/block_parser.py +0 -0
  29. {pycodedj-0.5.0 → pycodedj-0.6.0}/src/pycodedj/engine.py +0 -0
  30. {pycodedj-0.5.0 → pycodedj-0.6.0}/src/pycodedj/mapper.py +0 -0
  31. {pycodedj-0.5.0 → pycodedj-0.6.0}/src/pycodedj/pattern.py +0 -0
  32. {pycodedj-0.5.0 → pycodedj-0.6.0}/src/pycodedj/watcher.py +0 -0
  33. {pycodedj-0.5.0 → pycodedj-0.6.0}/tests/__init__.py +0 -0
  34. {pycodedj-0.5.0 → pycodedj-0.6.0}/tests/test_analyzer.py +0 -0
  35. {pycodedj-0.5.0 → pycodedj-0.6.0}/tests/test_block_parser.py +0 -0
  36. {pycodedj-0.5.0 → pycodedj-0.6.0}/tests/test_engine.py +0 -0
  37. {pycodedj-0.5.0 → pycodedj-0.6.0}/tests/test_mapper.py +0 -0
  38. {pycodedj-0.5.0 → pycodedj-0.6.0}/tests/test_pattern.py +0 -0
  39. {pycodedj-0.5.0 → pycodedj-0.6.0}/tests/test_watcher.py +0 -0
@@ -32,6 +32,7 @@ env/
32
32
  dist/
33
33
  build/
34
34
  .pytest_cache/
35
+ .coverage
35
36
  .mypy_cache/
36
37
  .ruff_cache/
37
38
 
@@ -1,5 +1,30 @@
1
1
  # Changelog
2
2
 
3
+ ## [0.6.0] - 2026-05-08
4
+
5
+ ### Features
6
+
7
+ - `pycodedj stop NAME` を追加。指定したループだけを停止し、通常ループの `voice_count=0` と `pattern()` ループの `pattern_stop` を同時に送信する
8
+
9
+ ### Docs
10
+
11
+ - README とマニュアルに `pycodedj stop` の使い方を追加
12
+ - `docs/manual.html` を英語版HTMLに変更し、日本語版HTMLを `docs/manual.ja.html` として分離
13
+ - `pyproject.toml` に PyPI 用の `description` を追加
14
+
15
+ ## [0.5.1] - 2026-05-08
16
+
17
+ ### Improvements
18
+
19
+ - `examples/club_set.py` を `pattern()` / `synth=` ベースの重低音クラブセットに刷新。4つ打ちキック、ランブル、サブ、アシッド、ハット、フィル、空間ノイズを含む 11 ループ構成に変更
20
+ - `pycodedj --version` を追加し、公開前チェックでパッケージバージョンを確認できるようにした
21
+
22
+ ### Docs
23
+
24
+ - `docs/manual.ja.md` / `docs/manual.md` / `docs/manual.html` — ループ名と音色名の違いを明確化し、音色は `synth=` で指定することを追記
25
+ - `docs/manual.ja.md` / `docs/manual.md` / `docs/manual.html` — `examples/club_set.py` の重低音クラブセットの使い方と主要レイヤー一覧を追加
26
+ - `README.ja.md` / `README.md` — `examples/club_set.py` の説明を現在の 11 ループ構成に更新
27
+
3
28
  ## [0.5.0] - 2026-05-08
4
29
 
5
30
  ### Features
@@ -1,6 +1,7 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: pycodedj
3
- Version: 0.5.0
3
+ Version: 0.6.0
4
+ Summary: A live-coding performance tool that turns Python code structure into music via SuperCollider.
4
5
  License: MIT License with Commons Clause
5
6
 
6
7
  "Commons Clause" License Condition v1.0
@@ -188,7 +189,13 @@ From here, just write code and save. Every save re-evaluates all loops.
188
189
  pycodedj panic
189
190
  ```
190
191
 
191
- **5. Mute / unmute**
192
+ **5. Stop one loop**
193
+
194
+ ```bash
195
+ pycodedj stop bass
196
+ ```
197
+
198
+ **6. Mute / unmute**
192
199
 
193
200
  ```bash
194
201
  pycodedj mute bass
@@ -247,7 +254,7 @@ Token reference:
247
254
  | File | Contents |
248
255
  | :--- | :--- |
249
256
  | `examples/demo.py` | Intro demo: bass / melody / pad |
250
- | `examples/club_set.py` | EDM groove: 8 loops (kick, bass, hat, chords, pad) |
257
+ | `examples/club_set.py` | Sub-heavy club set: 11 loops with kick, rumble, sub, acid, hats, and room noise |
251
258
  | `examples/sound_showcase.py` | All 30 synths — evaluate one at a time to audition |
252
259
 
253
260
  ---
@@ -126,7 +126,13 @@ pycodedj watch demo.py
126
126
  pycodedj panic
127
127
  ```
128
128
 
129
- **5. ミュート / アンミュート**
129
+ **5. 1 つのループを停止**
130
+
131
+ ```bash
132
+ pycodedj stop bass
133
+ ```
134
+
135
+ **6. ミュート / アンミュート**
130
136
 
131
137
  ```bash
132
138
  pycodedj mute bass
@@ -185,7 +191,7 @@ def chord():
185
191
  | ファイル | 内容 |
186
192
  | :--- | :--- |
187
193
  | `examples/demo.py` | bass / melody / pad の 3 ループ入門デモ |
188
- | `examples/club_set.py` | EDM クラブグルーヴ(キック・ベース・ハット・コード・パッドを含む 8 ループ) |
194
+ | `examples/club_set.py` | 重低音クラブセット(キック、ランブル、サブ、アシッド、ハット、空間ノイズを含む 11 ループ) |
189
195
  | `examples/sound_showcase.py` | 全 30 音色 — 1 音ずつ eval して確認できる |
190
196
 
191
197
  ---
@@ -126,7 +126,13 @@ From here, just write code and save. Every save re-evaluates all loops.
126
126
  pycodedj panic
127
127
  ```
128
128
 
129
- **5. Mute / unmute**
129
+ **5. Stop one loop**
130
+
131
+ ```bash
132
+ pycodedj stop bass
133
+ ```
134
+
135
+ **6. Mute / unmute**
130
136
 
131
137
  ```bash
132
138
  pycodedj mute bass
@@ -185,7 +191,7 @@ Token reference:
185
191
  | File | Contents |
186
192
  | :--- | :--- |
187
193
  | `examples/demo.py` | Intro demo: bass / melody / pad |
188
- | `examples/club_set.py` | EDM groove: 8 loops (kick, bass, hat, chords, pad) |
194
+ | `examples/club_set.py` | Sub-heavy club set: 11 loops with kick, rumble, sub, acid, hats, and room noise |
189
195
  | `examples/sound_showcase.py` | All 30 synths — evaluate one at a time to audition |
190
196
 
191
197
  ---
@@ -525,7 +525,8 @@
525
525
  <div class="nav-links">
526
526
  <a href="#how">How it works</a>
527
527
  <a href="#install">Install</a>
528
- <a href="https://github.com/kanekoyuichi/pycodedj/blob/main/docs/manual.md" target="_blank">Docs</a>
528
+ <a href="manual.html">Manual</a>
529
+ <a href="manual.ja.html">日本語</a>
529
530
  <a href="https://github.com/kanekoyuichi/pycodedj" target="_blank">GitHub</a>
530
531
  </div>
531
532
  </nav>
@@ -543,6 +544,7 @@
543
544
  </p>
544
545
  <div class="hero-ctas">
545
546
  <a href="#install" class="btn btn-primary">Get started</a>
547
+ <a href="manual.html" class="btn btn-ghost">Read manual</a>
546
548
  <a href="https://github.com/kanekoyuichi/pycodedj" target="_blank" class="btn btn-ghost">GitHub</a>
547
549
  </div>
548
550
 
@@ -770,8 +772,8 @@
770
772
  <div class="footer-links">
771
773
  <a href="https://github.com/kanekoyuichi/pycodedj" target="_blank">GitHub</a>
772
774
  <a href="https://pypi.org/project/pycodedj/" target="_blank">PyPI</a>
773
- <a href="https://github.com/kanekoyuichi/pycodedj/blob/main/docs/manual.md" target="_blank">Manual (EN)</a>
774
- <a href="https://github.com/kanekoyuichi/pycodedj/blob/main/docs/manual.ja.md" target="_blank">マニュアル (JA)</a>
775
+ <a href="manual.html">Manual (EN)</a>
776
+ <a href="manual.ja.html">マニュアル (JA)</a>
775
777
  <a href="https://github.com/kanekoyuichi/pycodedj/blob/main/README.ja.md" target="_blank">README (JA)</a>
776
778
  </div>
777
779
  <p class="footer-copy">MIT + Commons Clause · Yuichi Kaneko</p>