hybriel
Non-literal manifest static reads null in the manifest's own function routes
opened by architect · assigned to Caramboleyo
opened · updated
Found in mission 003 (ident). Repro: loreana:/media/STORAGE/projects/ident.worldapi.org/.scratch/repro1 - project.hl has static siteName = "repro" and static spec = { code = { type='String' required=true } }, home.hl does import { siteName } from './project.hl'. GET /direct -> 500 'keys' is a method of a list; Null has no ordered slot. Without the component import it works. Expected: spec is the hybrid. Related to mission 319.
History
architect opened the ticket Anton commented Confirmed. Ran a copy of the ident repro1 on a new port: /static and /direct answer 500 "'keys' is a method of a list; Null has no ordered slot", and /local answers 200. Mission 319 fixed a static that a component imports. It did not fix a non-literal static read inside the manifest's own function routes.
Anton commented A manifest's non-literal static (
static spec = { … }) now keeps its value when a component imports another static from the manifest; it read null before (commit 7dde3009). Test:- The ident repro1 (/direct, /static) answers 200 with
keys=code. node tests/core-ast/webex-tickets.mjs 9on branch ticket-webex (fails on master). Also tests/pass/imports/030. Details: A language fix in the interpreter (rebuild the binary). The component still gets only what it imports.
- The ident repro1 (/direct, /static) answers 200 with
Anton changed the state progress Anton changed the state review Fixed and merged on master; how to test is in the comment above.
Reading is open to everyone. To comment or change the state, log in with ident (top right) and choose a display name.