terp-cli 0.1.0__tar.gz → 0.2.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.
@@ -0,0 +1,16 @@
1
+ Metadata-Version: 2.4
2
+ Name: terp-cli
3
+ Version: 0.2.0
4
+ Summary: Terp command-line tool — inspect, scaffolding, migrations, checks, api-docs.
5
+ License-Expression: Apache-2.0
6
+ Requires-Python: >=3.13
7
+ Requires-Dist: terp-arch==0.2.0
8
+ Requires-Dist: terp-core==0.2.0
9
+ Requires-Dist: terp-migrations==0.2.0
10
+ Provides-Extra: jobs
11
+ Requires-Dist: terp-cap-outbox==0.2.0; extra == 'jobs'
12
+ Requires-Dist: terp-cap-scheduler-apscheduler==0.2.0; extra == 'jobs'
13
+ Provides-Extra: scheduler
14
+ Requires-Dist: terp-cap-scheduler-apscheduler==0.2.0; extra == 'scheduler'
15
+ Provides-Extra: worker
16
+ Requires-Dist: terp-cap-outbox==0.2.0; extra == 'worker'
@@ -4,29 +4,29 @@ build-backend = "hatchling.build"
4
4
 
5
5
  [project]
6
6
  name = "terp-cli"
7
- version = "0.1.0"
7
+ version = "0.2.0"
8
8
  description = "Terp command-line tool — inspect, scaffolding, migrations, checks, api-docs."
9
9
  requires-python = ">=3.13"
10
10
  license = "Apache-2.0"
11
11
  dependencies = [
12
- "terp-core==0.1.0",
12
+ "terp-core==0.2.0",
13
13
  # `terp migrate` delegates to terp-migrations (lazily imported), keeping Alembic
14
14
  # off the path for `terp inspect` / `terp guide` while making migrations work.
15
- "terp-migrations==0.1.0",
15
+ "terp-migrations==0.2.0",
16
16
  # `terp guide rules` projects the live rule registry; terp-arch is imported lazily
17
17
  # (only when that topic is rendered), so it stays off the common `terp guide` path.
18
- "terp-arch==0.1.0",
18
+ "terp-arch==0.2.0",
19
19
  ]
20
20
 
21
21
  # Job-process adapters stay optional: the base CLI must not install the table-owning outbox
22
22
  # or a scheduler engine into apps that only use inspect/check/migrate. Deployments can select
23
23
  # one process role, while `jobs` is the convenient complete jobs-process bundle.
24
24
  [project.optional-dependencies]
25
- worker = ["terp-cap-outbox==0.1.0"]
26
- scheduler = ["terp-cap-scheduler-apscheduler==0.1.0"]
25
+ worker = ["terp-cap-outbox==0.2.0"]
26
+ scheduler = ["terp-cap-scheduler-apscheduler==0.2.0"]
27
27
  jobs = [
28
- "terp-cap-outbox==0.1.0",
29
- "terp-cap-scheduler-apscheduler==0.1.0",
28
+ "terp-cap-outbox==0.2.0",
29
+ "terp-cap-scheduler-apscheduler==0.2.0",
30
30
  ]
31
31
 
32
32
  [project.scripts]
@@ -409,13 +409,13 @@ Database migrations (terp migrate)
409
409
  upgrade(db_url, app_root); assert_migrations_match_models(db_url, app_root)
410
410
  """,
411
411
  "frontend": """\
412
- Frontend module screens (@terp/react-core)
412
+ Frontend module screens (@terpjs/react-core)
413
413
 
414
414
  - A module's frontend slot is frontend/src/modules/<name>/ with a module.tsx manifest;
415
- everything composes the token-styled @terp/react-core surface. The full catalog (with
416
- per-export "Use" guidance) is the @terp/react-core README; each export also carries
415
+ everything composes the token-styled @terpjs/react-core surface. The full catalog (with
416
+ per-export "Use" guidance) is the @terpjs/react-core README; each export also carries
417
417
  JSDoc, so your editor shows the same guidance inline.
418
- - The boundary lint (@terp/eslint-boundaries) refuses, fail-closed:
418
+ - The boundary lint (@terpjs/eslint-boundaries) refuses, fail-closed:
419
419
  raw <button>/<input>/<select>/<textarea> -> Button / Input / Select / Textarea
420
420
  raw <table> -> DataView (terp guide dataview)
421
421
  raw <dialog> -> ConfirmDialog
@@ -424,11 +424,11 @@ Frontend module screens (@terp/react-core)
424
424
  WebSocket / EventSource / sendBeacon -> the generated client (one egress path)
425
425
  style={} / className / module stylesheets -> layout via Stack/DetailList; design tokens
426
426
  <a href="/..."> -> the router's Link (role-aware, no reload)
427
- deep imports (@terp/*/src, @terp/*/dist) -> import from the package root only
427
+ deep imports (@terpjs/*/src, @terpjs/*/dist) -> import from the package root only
428
428
  - Frontend security defaults (each its own lint rule, same error-only footing):
429
429
  dangerouslySetInnerHTML and DOM HTML-injection sinks (innerHTML/outerHTML/
430
430
  insertAdjacentHTML/document.write) are refused — render text, or Markdown from
431
- @terp/react-core for rich text; eval() / new Function() are refused; javascript:
431
+ @terpjs/react-core for rich text; eval() / new Function() are refused; javascript:
432
432
  URLs in href/src are refused; a static target="_blank" link needs rel="noopener".
433
433
  - Every routed view renders a page archetype (Page / OverviewPage / DetailPage / HubPage);
434
434
  buildAppRouter refuses an unframed view at runtime, fail closed. An app can ratchet
@@ -208,7 +208,7 @@ def _files(name: str, package: str, profile: ModuleProfile) -> dict[str, str]:
208
208
 
209
209
 
210
210
  _MODULE_TSX = """\
211
- import { defineModuleManifest } from "@terp/contract";
211
+ import { defineModuleManifest } from "@terpjs/contract";
212
212
 
213
213
  import { __PASCAL__List } from "./__PASCAL__List";
214
214
 
@@ -229,7 +229,7 @@ _VIEW_TSX = """\
229
229
  //
230
230
  // uv run terp openapi && npm --prefix frontend run generate // -> src/api/schema.d.ts
231
231
  //
232
- // import { useResource, useTerpClient } from "@terp/react-core";
232
+ // import { useResource, useTerpClient } from "@terpjs/react-core";
233
233
  // import type { paths, components } from "../../api/schema";
234
234
  // type __PASCAL__ = components["schemas"]["__PASCAL__Read"];
235
235
  // const client = useTerpClient<paths>();
@@ -239,7 +239,7 @@ _VIEW_TSX = """\
239
239
  // });
240
240
  // // ...then pass createPlaceholder="New __NAME__" to <ResourceList> so writers can add rows.
241
241
  //
242
- import { OverviewPage, ResourceList, useResource } from "@terp/react-core";
242
+ import { OverviewPage, ResourceList, useResource } from "@terpjs/react-core";
243
243
 
244
244
  export function __PASCAL__List() {
245
245
  // Placeholder until you wire the typed client above: an empty, read-only list (compiles pre-codegen).
terp_cli-0.1.0/PKG-INFO DELETED
@@ -1,16 +0,0 @@
1
- Metadata-Version: 2.4
2
- Name: terp-cli
3
- Version: 0.1.0
4
- Summary: Terp command-line tool — inspect, scaffolding, migrations, checks, api-docs.
5
- License-Expression: Apache-2.0
6
- Requires-Python: >=3.13
7
- Requires-Dist: terp-arch==0.1.0
8
- Requires-Dist: terp-core==0.1.0
9
- Requires-Dist: terp-migrations==0.1.0
10
- Provides-Extra: jobs
11
- Requires-Dist: terp-cap-outbox==0.1.0; extra == 'jobs'
12
- Requires-Dist: terp-cap-scheduler-apscheduler==0.1.0; extra == 'jobs'
13
- Provides-Extra: scheduler
14
- Requires-Dist: terp-cap-scheduler-apscheduler==0.1.0; extra == 'scheduler'
15
- Provides-Extra: worker
16
- Requires-Dist: terp-cap-outbox==0.1.0; extra == 'worker'
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes