What's new in v1.1.0
- Aspect-correct icons — icon cells are sized from each SVG's native aspect ratio (fixed 95px height, derived width,
imageAspect=1). v1.0.0 stretched every icon ~15-20%. - Official Oracle v24.2 container styles — palette and container styles extracted from Oracle's official OCI Architecture Diagram Toolkit. Five new group types:
tenancy,availability_domain,fault_domain,oracle_services_network,onprem(hubremains as a deprecated alias ofonprem). - Orthogonal edge routing by default — port-less
add_edge()calls let draw.io's router choose the path. Explicit ports/waypoints still produce the v1.0.0 pinned behavior. - Shipped overlap checker —
scripts/check_overlaps.pyCLI (exit 0 = clean, 1 = overlaps, 2 = usage/parse error) plusDrawioBuilder.check_overlaps(), now a mandatory gate in the/drawio-architectworkflow. - Metadata & tooltips — optional
metadata=/tooltip=on icons and containers, stored as draw.io<object>attributes (visible via hover and Edit Data). - detect_settings hardening — bounded tenancy-OCID regex (no more cross-variable false matches), deterministic Terraform-directory discovery, robust OCI CLI JSON handling, optional plugin-local
logos/directory. - Quality of life — unknown icon keys raise errors with close-match suggestions; mxfile written with
compressed="false"; corrected base64 documentation (a raw;base64,marker breaks draw.io's semicolon-delimited style parsing — draw.io does not "ignore" base64). - New demo —
examples/generate_demo_diagram.pydoubles as a post-install smoke test. - Python floor is now 3.9 (was 3.8).
Compatibility
Existing v1.0.0 scripts run unchanged — positional arguments, keyword ports + waypoints, and the hub group type are all preserved. Your diagrams will look different by design: dotted-Sienna compartments with Bark labels, #9E9892 2pt services panels, centered region labels, plain dashed edges, and router-chosen paths for port-less edges — matching Oracle's official v24.2 toolkit.
Install
tar -xzf oci-drawio-architect-v1.1.0.tar.gz
cd oci-drawio-architect && ./install.sh