forked from 1b-agent/opencadstudio-upstream
docs: make the change ready for upstream review
Remove personal names, local paths and fork-only process notes from code comments, docs and the plugin manifest (repository now points at the upstream project), and drop the handoff section from the plan. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
This commit is contained in:
1 parent
c7c698eaad
commit
8f68006bea
8 files changed
+26
-45
No files matched your search
@@ -119,7 +119,7 @@ expression, not statements). Phases 1.2 (read), 1.3 (2D write) and part of
|
||||
| `ocs.remove_record(handle, app_name)` | Removes the XDATA record for `app_name` from `handle`, if any. Returns `True` if a record was actually removed. |
|
||||
| `ocs.command(cmd)` | Superseded. Only the `experimental-command-replay` build has it (the old fire-and-forget replay). Use `doc.command`, `doc.start_command` and `doc.modify` from the document model (see "Running OCS commands" below). |
|
||||
| `ocs.select(handles)` | Replaces the selection with exactly these handles, in order (document-model build); `doc.selection = [...]` is the same. |
|
||||
| `ocs.system_variable(name)` / `ocs.set_system_variable(name, value)` | Development-only `experimental-host-settings` feature. Reads or sets host-managed CLAYER (text) and SNAPANG (degrees) without nested command dispatch. Requires the Felix OCS fork's `plugin/host-model-api` branch; absent from the portable default build. |
|
||||
| `ocs.system_variable(name)` / `ocs.set_system_variable(name, value)` | Development-only `experimental-host-settings` feature. Reads or sets host-managed CLAYER (text) and SNAPANG (degrees) without nested command dispatch. Needs the host API v7 build that provides `system_variable`; absent from the portable default build. |
|
||||
|
||||
`add_line`/`add_circle`/`add_arc` take plain Python numbers —
|
||||
`ocs.add_line(0, 0, 10, 10)` works with ints, not just floats. (Needed an
|
||||
|
||||
@@ -24,7 +24,7 @@ needs.
|
||||
|
||||
| | Host-embedded | Plugin (this plan) |
|
||||
|---|---|---|
|
||||
| Requires OCS core changes / Hakan's buy-in | Yes | No — ships from an independent repo, installed via the existing Plugin Manager |
|
||||
| Requires OCS core changes and maintainer sign-off | Yes | No — ships from an independent repo, installed via the existing Plugin Manager |
|
||||
| Crash isolation | Relies on RustPython's memory safety alone | Gets OS-process isolation for free (plugins already run out-of-process) |
|
||||
| Distribution | Bundled into every OCS release, forever | Opt-in install, versioned independently, can iterate fast |
|
||||
| Cost | New maintenance burden on the host | Same ABI-pinning cost every plugin already has (see Phase 1, Risk) |
|
||||
|
||||
@@ -90,7 +90,7 @@ pub struct FieldOverride {
|
||||
#[serde(default)]
|
||||
pub exclude: bool,
|
||||
/// `ocs.add()` errors if this field is missing rather than silently
|
||||
/// defaulting it to zero/empty (Felix's Phase 1 review: "add should
|
||||
/// defaulting it to zero/empty (Phase 1 review feedback: "add should
|
||||
/// reject missing required geometry rather than defaulting to zero").
|
||||
/// Only meaningful on the generic (non-`rust_getter`/`rust_setter`)
|
||||
/// path — `ocs.update()` never requires a field (a merge onto an
|
||||
|
||||
@@ -5,7 +5,7 @@ version = "0.1.0"
|
||||
description = "Embedded Python scripting (RustPython) for Open CAD Studio."
|
||||
author = "Felix Riestra"
|
||||
license = "GPL-3.0-only"
|
||||
repository = "felixriestra/OpenCADStudio"
|
||||
repository = "HakanSeven12/OpenCADStudio"
|
||||
|
||||
[opencad]
|
||||
api_version = 7
|
||||
|
||||
@@ -4257,7 +4257,7 @@ mod ocs {
|
||||
//
|
||||
// `get_entity` is deliberately a *new*, separate function rather than a
|
||||
// change to `get()` above: existing scripts already depend on `get()`'s
|
||||
// small `{handle, kind, layer, point}` shape (Felix's Phase 1 review —
|
||||
// small `{handle, kind, layer, point}` shape (Phase 1 review feedback —
|
||||
// don't break that compatibility to hand out the fuller schema).
|
||||
|
||||
/// Full entity schema for `handle` (every field the type registry knows
|
||||
@@ -4552,7 +4552,7 @@ mod ocs {
|
||||
|
||||
/// Update `handle` by merging `entity`'s keys onto its *current* value —
|
||||
/// a key `entity` doesn't mention is left exactly as it was, not reset to
|
||||
/// a type default (Felix's Phase 1 review: reconstructing from a partial
|
||||
/// a type default (Phase 1 review feedback: reconstructing from a partial
|
||||
/// dict could silently drop properties this generic API can't represent
|
||||
/// at all, e.g. color/line-weight/XDATA). Errors if `handle` doesn't
|
||||
/// exist or isn't a supported kind.
|
||||
@@ -5396,7 +5396,7 @@ mod ocs {
|
||||
#[test]
|
||||
fn add_rejects_missing_required_geometry_instead_of_defaulting_to_zero() {
|
||||
with_vm(|vm| {
|
||||
// Felix's Phase 1 review: a Circle with no center/radius must
|
||||
// Phase 1 review feedback: a Circle with no center/radius must
|
||||
// error, not silently become a zero-radius circle at the origin.
|
||||
let dict = vm.ctx.new_dict();
|
||||
dict.set_item("kind", vm.new_pyobj("Circle"), vm).unwrap();
|
||||
@@ -5571,7 +5571,7 @@ mod ocs {
|
||||
});
|
||||
}
|
||||
|
||||
/// The concrete Phase 1 acceptance test Felix asked for: create, read,
|
||||
/// The concrete Phase 1 acceptance test: create, read,
|
||||
/// edit, delete, save, and reopen a Line and an Ellipse, with common
|
||||
/// properties preserved — exercised against a real
|
||||
/// `acadrust::CadDocument` and a real DWG round trip (not a fake
|
||||
|
||||
Reference in new issue
Block a user