Skip to content

Commit 981d903

Browse files
bump: v0.9.0 (#62)
This PR was opened by the [Changesets release](https://github.com/changesets/action) GitHub action. When you're ready to do a release, you can merge this and the packages will be published to npm automatically. If you're not ready to do a release yet, that's fine, whenever you add more changesets to main, this PR will be updated. # Releases ## @9c5s/node-tcnet@0.9.0 ### Minor Changes - 0595019: fix: PitchBendの型をInt16LEからUInt16LEに修正し、波形データのバイト順を仕様に準拠させる ### Patch Changes - 1dccc2c: fix: アートワーク取得の信頼性改善とクラスタサイズ0対応 - FileパケットのclusterSize=0対応とアートワークデータ抽出の修正 - CUEデータパーサーのbyte offset修正とloopOutTime削除(byte重複) - ソケット共有設計のサブネットフィルタリングとlongest prefix match - JPEG SOIマーカー検証、fileChunksメモリ上限、requestTimeout上限の追加 - ipToNumber入力検証強化とgetClusterEndユーティリティ統一 BREAKING CHANGE: CueData.loopOutTimeを削除(byte 46-49がCUE 1と重複し信頼できない値のため) - b6748a6: fix: Windows BridgeのXTEA暗号文バイトリバースに対応 - 01ab150: fix: pending状態のcmd=1にも反応型プロトコルで応答し初回認証を高速化 - 559f137: fix: Bridgeの再認証要求(cmd=1)に応答して認証セッションを継続維持する Co-authored-by: xin <98406118+9c5s@users.noreply.github.com>
1 parent 0595019 commit 981d903

7 files changed

Lines changed: 68 additions & 89 deletions

File tree

.changeset/artwork-cluster-size.md

Lines changed: 0 additions & 13 deletions
This file was deleted.

.changeset/blue-emus-doubt.md

Lines changed: 0 additions & 5 deletions
This file was deleted.

.changeset/fair-gorillas-poke.md

Lines changed: 0 additions & 5 deletions
This file was deleted.

.changeset/pending-auth-reactive.md

Lines changed: 0 additions & 5 deletions
This file was deleted.

.changeset/sk-style-auth.md

Lines changed: 0 additions & 5 deletions
This file was deleted.

CHANGELOG.md

Lines changed: 67 additions & 55 deletions
Original file line numberDiff line numberDiff line change
@@ -1,100 +1,112 @@
11
# @9c5s/node-tcnet
22

3-
## 0.8.0
3+
## 0.9.0
44

55
### Minor Changes
66

7-
- 6eb8cdb: TCNASDP 認証プロトコルと Artwork データ受信の実装
7+
- 1dccc2c: fix: アートワーク取得の信頼性改善とクラスタサイズ0対応
88

9-
- FNV-1a Int32 ハッシュによる認証ペイロード生成 (`generateAuthPayload`)
10-
- `xteaCiphertext` 設定時に TCNASDP 認証を自動実行し、全 8 データタイプの受信を有効化
11-
- File (Type=204) / Artwork (DataType=128) パケットのマルチパケット受信対応
12-
- Error (Type=13) / ApplicationData (Type=30) パケットの実装
13-
- 認証パケットの送信元 IP 検証、認証シーケンス中断時の状態リセット
9+
BREAKING CHANGE: CueData.loopOutTimeを削除(byte 46-49がCUE 1と重複し信頼できない値のため)
1410

15-
## 0.7.0
11+
- 559f137: fix: Bridgeの再認証要求(cmd=1)に応答して認証セッションを継続維持する
12+
13+
### Patch Changes
14+
15+
- b6748a6: fix: Windows BridgeのXTEA暗号文バイトリバースに対応
16+
- 0595019: fix: PitchBendの型をInt16LEからUInt16LEに修正し、波形データのバイト順を仕様に準拠させる
17+
- 01ab150: fix: pending状態のcmd=1にも反応型プロトコルで応答し初回認証を高速化
18+
19+
## 0.8.0
1620

1721
### Minor Changes
1822

19-
- 8e46d2d: ネットワークアダプタ自動検出・手動切り替え機能を追加
23+
- 6eb8cdb: TCNASDP 認証プロトコルと Artwork データ受信の実装
24+
- FNV-1a Int32 ハッシュによる認証ペイロード生成 (`generateAuthPayload`)
25+
- `xteaCiphertext` 設定時に TCNASDP 認証を自動実行し、全 8 データタイプの受信を有効化
26+
- File (Type=204) / Artwork (DataType=128) パケットのマルチパケット受信対応
27+
- Error (Type=13) / ApplicationData (Type=30) パケットの実装
28+
- 認証パケットの送信元 IP 検証、認証シーケンス中断時の状態リセット
2029

21-
- `connect()` が全 non-internal IPv4 アダプタで listen 開始し即 resolve するよう変更 (破壊的変更)
22-
- Master OptIn 検出で自動的にアダプタに収束
23-
- `switchAdapter()` によるリトライ付き手動アダプタ切り替え
24-
- `listNetworkAdapters()` / `findIPv4Address()` ヘルパー関数
25-
- `selectedAdapter` / `isConnected` プロパティ
26-
- `adapterSelected` / `detectionTimeout` イベント
30+
## 0.7.0
31+
32+
### Minor Changes
2733

28-
- 9ec051b: TypeScript 5.x モダナイゼーション: strict: true 移行、enum → as const オブジェクト変換、satisfies 適用
29-
- b92e449: TypeDoc による API ドキュメント自動生成を導入
34+
- 8e46d2d: ネットワークアダプタ自動検出・手動切り替え機能を追加
35+
- `connect()` が全 non-internal IPv4 アダプタで listen 開始し即 resolve するよう変更 (破壊的変更)
36+
- Master OptIn 検出で自動的にアダプタに収束
37+
- `switchAdapter()` によるリトライ付き手動アダプタ切り替え
38+
- `listNetworkAdapters()` / `findIPv4Address()` ヘルパー関数
39+
- `selectedAdapter` / `isConnected` プロパティ
40+
- `adapterSelected` / `detectionTimeout` イベント
41+
42+
- 9ec051b: TypeScript 5.x モダナイゼーション: strict: true 移行、enum → as const オブジェクト変換、satisfies 適用
43+
- b92e449: TypeDoc による API ドキュメント自動生成を導入
3044

3145
### Patch Changes
3246

33-
- a2a6c07: test: 実機テストの開発フローへの組み込み (#33)
34-
- b891db8: デフォルトの nodeName/vendorName/appName を現オーナー向けに修正
35-
- b1e4c6a: ESLint 9 flat config 移行と eslint-plugin-jsdoc による JSDoc カバレッジ自動検証を導入
47+
- a2a6c07: test: 実機テストの開発フローへの組み込み (#33)
48+
- b891db8: デフォルトの nodeName/vendorName/appName を現オーナー向けに修正
49+
- b1e4c6a: ESLint 9 flat config 移行と eslint-plugin-jsdoc による JSDoc カバレッジ自動検証を導入
3650

3751
## 0.6.0
3852

3953
### Minor Changes
4054

41-
- 31a2597: 全 DataPacket タイプの専用パケットクラスを実装し、SmallWaveFormData/CUEData 等のリクエストタイムアウトを修正
42-
43-
- TCNetDataPacketCUE: CUE データのパース (436B)
44-
- TCNetDataPacketSmallWaveForm: 小波形データのパース (2442B)
45-
- TCNetDataPacketBigWaveForm: 大波形データのパース (可変長, マルチパケット対応)
46-
- TCNetDataPacketBeatGrid: ビートグリッドデータのパース (2442B, マルチパケット対応)
47-
- TCNetDataPacketMixer: ミキサーデータのパース (270B)
48-
- MultiPacketAssembler: マルチパケット組み立てクラス
49-
- receiveUnicast のマルチパケットアセンブリ対応
55+
- 31a2597: 全 DataPacket タイプの専用パケットクラスを実装し、SmallWaveFormData/CUEData 等のリクエストタイムアウトを修正
56+
- TCNetDataPacketCUE: CUE データのパース (436B)
57+
- TCNetDataPacketSmallWaveForm: 小波形データのパース (2442B)
58+
- TCNetDataPacketBigWaveForm: 大波形データのパース (可変長, マルチパケット対応)
59+
- TCNetDataPacketBeatGrid: ビートグリッドデータのパース (2442B, マルチパケット対応)
60+
- TCNetDataPacketMixer: ミキサーデータのパース (270B)
61+
- MultiPacketAssembler: マルチパケット組み立てクラス
62+
- receiveUnicast のマルチパケットアセンブリ対応
5063

51-
- bd8b681: `TCNetConfiguration.brodcastListeningAddress`
52-
`broadcastListeningAddress` にリネーム (タイポ修正)
64+
- bd8b681: `TCNetConfiguration.brodcastListeningAddress`
65+
`broadcastListeningAddress` にリネーム (タイポ修正)
5366

5467
`broadcastListeningAddress` のデフォルト値を `broadcastAddress` から `"0.0.0.0"` に変更
5568

5669
### Patch Changes
5770

58-
- 090bc6a: プロトコル実装のバグを修正
59-
60-
- OptIn パケットの writeUInt8 引数順序を修正 (バージョン情報が正しく送信されなかった)
61-
- Windows 環境でブロードキャストアドレスが正しく計算されるよう修正
62-
- デフォルトユニキャストポートを仕様準拠の 65023 に修正
63-
- requestData()の 0-based layer index を 1-based ワイヤフォーマットに正しく変換するよう修正
64-
- sendServer()で broadcastSocket を使用するよう修正 (Bridge は UDP ポート 60000 からのリクエストのみ受付)
65-
- receiveBroadcast()で Master の OptIn 検出を復元 (c2c1b7f で削除されていた)
66-
- Request タイムアウト管理を追加 (未応答リクエストによるメモリリークを防止)
67-
- disconnect 時に timestampSocket を適切にクローズするよう修正
68-
- example の packet.layer 参照を 0-based API に合わせて修正
71+
- 090bc6a: プロトコル実装のバグを修正
72+
- OptIn パケットの writeUInt8 引数順序を修正 (バージョン情報が正しく送信されなかった)
73+
- Windows 環境でブロードキャストアドレスが正しく計算されるよう修正
74+
- デフォルトユニキャストポートを仕様準拠の 65023 に修正
75+
- requestData()の 0-based layer index を 1-based ワイヤフォーマットに正しく変換するよう修正
76+
- sendServer()で broadcastSocket を使用するよう修正 (Bridge は UDP ポート 60000 からのリクエストのみ受付)
77+
- receiveBroadcast()で Master の OptIn 検出を復元 (c2c1b7f で削除されていた)
78+
- Request タイムアウト管理を追加 (未応答リクエストによるメモリリークを防止)
79+
- disconnect 時に timestampSocket を適切にクローズするよう修正
80+
- example の packet.layer 参照を 0-based API に合わせて修正
6981

7082
## 0.5.1
7183

7284
### Patch Changes
7385

74-
- 663a2a9: Allow simpler logger implementations
86+
- 663a2a9: Allow simpler logger implementations
7587

7688
## 0.5.0
7789

7890
### Minor Changes
7991

80-
- ffac14f: Make shutdown return a Promise
92+
- ffac14f: Make shutdown return a Promise
8193

8294
More cleanly wait for the client's connections to shut-down by returning a
8395
promise that only resolves once the connection is closed.
8496

85-
- e15a550: Improve parsing of TCNetTimePackets
86-
- d4179de: Remove pioneer module
97+
- e15a550: Improve parsing of TCNetTimePackets
98+
- d4179de: Remove pioneer module
8799

88100
Removing the pioneer module and related exports as package should remain
89101
vendor-agnostic,
90102
and we don't want to keep this module maintained with the more
91103
disruptive changes we're making.
92104

93-
- f8a2730: Improve interface for TCNetDataPacketMetrics
94-
- bc54603: Improve parsing of TCNetStatusPacket
95-
- 81c75e4: Improve parsing of TCNetDataPacketMetadata
96-
- 15e2ed3: Consistently use 0-based indexing for layer ID
97-
- db2eb59: Always emit data and broadcast events
105+
- f8a2730: Improve interface for TCNetDataPacketMetrics
106+
- bc54603: Improve parsing of TCNetStatusPacket
107+
- 81c75e4: Improve parsing of TCNetDataPacketMetadata
108+
- 15e2ed3: Consistently use 0-based indexing for layer ID
109+
- db2eb59: Always emit data and broadcast events
98110

99111
Ensure that data and broadcast packets are always accessible to listeners,
100112
even when the library hasn't added specific handling for it,
@@ -104,24 +116,24 @@
104116

105117
### Minor Changes
106118

107-
- Update build process and dependencies
119+
- Update build process and dependencies
108120

109121
## 0.3.1
110122

111123
### Patch Changes
112124

113-
- Fix peer dependency version for pino
125+
- Fix peer dependency version for pino
114126

115127
## 0.3.0
116128

117129
### Minor Changes
118130

119-
- 0212908: Remove usage of console, and introduce logging config using pino
131+
- 0212908: Remove usage of console, and introduce logging config using pino
120132

121133
## 0.2.0
122134

123135
First release independent of upstream
124136

125137
### Minor Changes
126138

127-
- Allow for specifying a custom broadcast listening address
139+
- Allow for specifying a custom broadcast listening address

package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "@9c5s/node-tcnet",
3-
"version": "0.8.0",
3+
"version": "0.9.0",
44
"description": "Implements the TC-Supply TCNet protocol used by ShowKontrol and ProDJLink Bridge app from Pioneer",
55
"exports": {
66
".": {

0 commit comments

Comments
 (0)