tina4-nodejs 3.10.23 → 3.10.24
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/CLAUDE.md +2 -2
- package/package.json +1 -1
- package/packages/frond/src/engine.ts +6 -10
package/CLAUDE.md
CHANGED
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
# CLAUDE.md — AI Developer Guide for tina4-nodejs (v3.10.
|
|
1
|
+
# CLAUDE.md — AI Developer Guide for tina4-nodejs (v3.10.24)
|
|
2
2
|
|
|
3
3
|
> This file helps AI assistants (Claude, Copilot, Cursor, etc.) understand and work on this codebase effectively.
|
|
4
4
|
|
|
5
5
|
## What This Project Is
|
|
6
6
|
|
|
7
|
-
Tina4 for Node.js/TypeScript v3.10.
|
|
7
|
+
Tina4 for Node.js/TypeScript v3.10.24 — a convention-over-configuration structural paradigm. **Not a framework.** The developer writes TypeScript; Tina4 is invisible infrastructure.
|
|
8
8
|
|
|
9
9
|
The philosophy: zero ceremony, batteries included, file system as source of truth.
|
|
10
10
|
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "tina4-nodejs",
|
|
3
|
-
"version": "3.10.
|
|
3
|
+
"version": "3.10.24",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"description": "This is not a framework. Tina4 for Node.js/TypeScript — zero deps, 38 built-in features.",
|
|
6
6
|
"keywords": ["tina4", "framework", "web", "api", "orm", "graphql", "websocket", "typescript"],
|
|
@@ -1172,20 +1172,16 @@ export class Frond {
|
|
|
1172
1172
|
}
|
|
1173
1173
|
|
|
1174
1174
|
const debugMode = (process.env.TINA4_DEBUG || "").toLowerCase() === "true";
|
|
1175
|
-
const cached = this.compiled.get(template);
|
|
1176
1175
|
|
|
1177
|
-
if (
|
|
1178
|
-
|
|
1179
|
-
|
|
1180
|
-
|
|
1181
|
-
if (cached.mtime === mtime) {
|
|
1182
|
-
return this.executeCached(cached.tokens, context);
|
|
1183
|
-
}
|
|
1184
|
-
} else {
|
|
1185
|
-
// Production: skip mtime check, cache is permanent
|
|
1176
|
+
if (!debugMode) {
|
|
1177
|
+
// Production: use permanent cache (no filesystem checks)
|
|
1178
|
+
const cached = this.compiled.get(template);
|
|
1179
|
+
if (cached) {
|
|
1186
1180
|
return this.executeCached(cached.tokens, context);
|
|
1187
1181
|
}
|
|
1188
1182
|
}
|
|
1183
|
+
// Dev mode: skip cache entirely — always re-read and re-tokenize
|
|
1184
|
+
// so edits to partials and extended base templates are detected
|
|
1189
1185
|
|
|
1190
1186
|
// Cache miss — load, tokenize, cache
|
|
1191
1187
|
const source = readFileSync(filePath, "utf-8");
|