@hoox-sh/pynets 0.1.0 → 0.2.0

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.
package/CHANGELOG.md CHANGED
@@ -7,6 +7,26 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
7
7
 
8
8
  ## [Unreleased]
9
9
 
10
+ ## [0.2.0] - 2026-08-16
11
+
12
+ JS compile backend (`mode: "compile" | "auto"`). Interpret unchanged.
13
+
14
+ ### Added
15
+
16
+ - JS compile backend (`mode: "compile" | "auto"`) — emit a bar-loop function. No Numba.
17
+ - Compile object-mode strategy (`__h.strategy` / fills / events) and UDF series state (`src[1]`, `var` locals)
18
+ - Compile array / map / matrix, UDT (`Type.new` / field get-set), drawings (`label`/`line`/`box`), named UDF kwargs
19
+ - Compile input overrides, `color.*` / named colors, enums, extra array/matrix/drawing mutators; `mode: "auto"` no longer skips compile when inputs are set
20
+ - Compile `request.security` same-symbol passthrough (foreign → `na`), `barstate.*` / `syminfo` stubs, calendar `year`/`month`/…, `str.*`, UDT `method` calls
21
+ - Compile Heikin-Ashi `ticker.heikinashi` + `timestamp` / `timeframe.in_seconds` / `weekofyear`
22
+ - Compile `import`: inline registered library sources; unresolved aliases stub to `na`. `str.format` / `str.format_time`
23
+ - Compile `session.*` / `chart.*`, `log.*` (result `logs`), `ticker.new/standard`, `request.currency_rate`, `alertcondition`
24
+
25
+ ### Notes
26
+
27
+ - Compile is JS emit (Python object-mode analog), not Numba
28
+ - `import` / foreign `request.*` stay interpret-or-na; no invented bars
29
+
10
30
  ## [0.1.0] - 2026-08-15
11
31
 
12
32
  First public `@hoox-sh/pynets` release. TypeScript / Bun port of PYNE interpret.
package/README.md CHANGED
@@ -24,6 +24,8 @@ const out = new Runtime("AAPL").run(src, [
24
24
  { close: 1 }, { close: 2 }, { close: 3 }, { close: 4 },
25
25
  ]);
26
26
  // out.plots, out.series, out.count
27
+ // new Runtime("AAPL", { mode: "compile" }) — JS bar-loop emit (not Numba)
28
+ // mode: "auto" tries compile, then interpret
27
29
  ```
28
30
 
29
31
  Install with Bun (published TypeScript source — no bundle needed):
@@ -82,9 +84,9 @@ Family map — library vs edge host, same SoT:
82
84
  | | [pynescript](https://github.com/hoox-sh/pyne) | [pyne-worker](https://github.com/hoox-sh/pyne-worker) | **PyneTS** |
83
85
  |---|---|---|---|
84
86
  | Role | SoT library | Production **Python** Cloudflare Worker | TS / Bun library + CLI |
85
- | Engine | interpret + Numba compile | Vendors `pynescript.runtime` | interpret only |
87
+ | Engine | interpret + Numba compile | Vendors `pynescript.runtime` | interpret + **JS compile** |
86
88
  | Grammar | `*.g4` | Same Python engine (not a fork) | **same `.g4`**, TS ANTLR target |
87
- | How you call it | `Runtime.run` | `POST /run` (`interpret` / `compile` / `auto`) | `Runtime.run` / `stream` / `runProvider` |
89
+ | How you call it | `Runtime.run` | `POST /run` (`interpret` / `compile` / `auto`) | `Runtime.run` (`interpret` / `compile` / `auto`) |
88
90
  | Extra | LSP, Pro API | R2 OHLCV, 1m cron, alerts, trade-worker | Local TTY (`check` / `format` / `run` / `dump`) |
89
91
 
90
92
  [pyne-worker](https://github.com/hoox-sh/pyne-worker) is the edge evaluate host of the **Python** engine. PyneTS is the TypeScript library you import and the CLI you run on a laptop. They share the PYNE contract; this repo is not a Worker.
@@ -318,7 +320,7 @@ After a plain clone: `git submodule update --init --recursive`.
318
320
 
319
321
  ## Non-goals
320
322
 
321
- Numba / compile, Worker packaging, ASDL codegen. Interpret is the only backend.
323
+ Numba nopython, Worker packaging, ASDL codegen. Compile is JS emit (Python object-mode analog), not a JIT.
322
324
 
323
325
  ---
324
326