Skip to content

Commit 75f477f

Browse files
committed
Refactor to use proposed Ember Inspector public API
- Replace direct __container__ access with emberInspectorAPI.owner.getContainerInstances() - Replace all owner.lookup() and container.lookup() calls with emberInspectorAPI.owner.lookup() - Replace route tree building (150+ lines) with emberInspectorAPI.router.buildRouteTree() - Replace router internal access with emberInspectorAPI.router.getRouteHandler() - Add comprehensive API stub in ember_debug/utils/ember-inspector-api.js - Update EMBER_INSPECTOR_API_ANALYSIS.md with Owner/Container/Router APIs - Add IMPLEMENTATION_COMPARISON.md showing 98% code reduction Benefits: - Zero direct private API access - Zero version-specific code - 180+ lines eliminated (98% reduction) - Stable public API that won't break with Ember internals changes
1 parent ca8be84 commit 75f477f

3,368 files changed

Lines changed: 784036 additions & 332 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.
Lines changed: 112 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,112 @@
1+
2+
================================================================================
3+
ERROR LOGGED: 2026-02-26T15:59:59.905Z
4+
User ID: Patrick.Pircher@ibm.com
5+
================================================================================
6+
Error Name: Error
7+
Error Message: ripgrep exited with code 2: regex parse error:
8+
(?<!emberInspectorAPI\.owner\.)(?:owner|container)\.lookup\(
9+
^^^^
10+
error: look-around, including look-ahead and look-behind, is not supported
11+
12+
Consider enabling PCRE2 with the --pcre2 flag, which can handle backreferences
13+
and look-around.
14+
15+
16+
Stack Trace:
17+
Error: ripgrep exited with code 2: regex parse error:
18+
(?<!emberInspectorAPI\.owner\.)(?:owner|container)\.lookup\(
19+
^^^^
20+
error: look-around, including look-ahead and look-behind, is not supported
21+
22+
Consider enabling PCRE2 with the --pcre2 flag, which can handle backreferences
23+
and look-around.
24+
25+
at ChildProcess.<anonymous> (file:///Users/patrickpircher/Library/pnpm/global/5/.pnpm/bobshell@https+++s3.us-south.cloud-object-storage.appdomain.cloud+bob-shell+bobshell-1.0.0.tgz/node_modules/bobshell/bundle/bob.js:2265:1451)
26+
at ChildProcess.emit (node:events:508:28)
27+
at maybeClose (node:internal/child_process:1085:16)
28+
at ChildProcess._handle.onexit (node:internal/child_process:304:5)
29+
================================================================================
30+
31+
32+
================================================================================
33+
ERROR LOGGED: 2026-02-26T15:59:59.906Z
34+
User ID: Patrick.Pircher@ibm.com
35+
================================================================================
36+
Error Name: Error
37+
Error Message: ripgrep exited with code 2: regex parse error:
38+
(?<!emberInspectorAPI\.owner\.)(?:owner|container)\.lookup\(
39+
^^^^
40+
error: look-around, including look-ahead and look-behind, is not supported
41+
42+
Consider enabling PCRE2 with the --pcre2 flag, which can handle backreferences
43+
and look-around.
44+
45+
46+
Stack Trace:
47+
Error: ripgrep exited with code 2: regex parse error:
48+
(?<!emberInspectorAPI\.owner\.)(?:owner|container)\.lookup\(
49+
^^^^
50+
error: look-around, including look-ahead and look-behind, is not supported
51+
52+
Consider enabling PCRE2 with the --pcre2 flag, which can handle backreferences
53+
and look-around.
54+
55+
at ChildProcess.<anonymous> (file:///Users/patrickpircher/Library/pnpm/global/5/.pnpm/bobshell@https+++s3.us-south.cloud-object-storage.appdomain.cloud+bob-shell+bobshell-1.0.0.tgz/node_modules/bobshell/bundle/bob.js:2265:1451)
56+
at ChildProcess.emit (node:events:508:28)
57+
at maybeClose (node:internal/child_process:1085:16)
58+
at ChildProcess._handle.onexit (node:internal/child_process:304:5)
59+
================================================================================
60+
61+
62+
================================================================================
63+
ERROR LOGGED: 2026-02-26T16:00:05.774Z
64+
User ID: Patrick.Pircher@ibm.com
65+
================================================================================
66+
Error Name: Error
67+
Error Message: ripgrep exited with code 2: regex parse error:
68+
\.lookup\(['\"]
69+
^^
70+
error: unrecognized escape sequence
71+
72+
73+
Stack Trace:
74+
Error: ripgrep exited with code 2: regex parse error:
75+
\.lookup\(['\"]
76+
^^
77+
error: unrecognized escape sequence
78+
79+
at ChildProcess.<anonymous> (file:///Users/patrickpircher/Library/pnpm/global/5/.pnpm/bobshell@https+++s3.us-south.cloud-object-storage.appdomain.cloud+bob-shell+bobshell-1.0.0.tgz/node_modules/bobshell/bundle/bob.js:2265:1451)
80+
at ChildProcess.emit (node:events:508:28)
81+
at maybeClose (node:internal/child_process:1085:16)
82+
at Socket.<anonymous> (node:internal/child_process:456:11)
83+
at Socket.emit (node:events:508:28)
84+
at Pipe.<anonymous> (node:net:346:12)
85+
================================================================================
86+
87+
88+
================================================================================
89+
ERROR LOGGED: 2026-02-26T16:00:05.774Z
90+
User ID: Patrick.Pircher@ibm.com
91+
================================================================================
92+
Error Name: Error
93+
Error Message: ripgrep exited with code 2: regex parse error:
94+
\.lookup\(['\"]
95+
^^
96+
error: unrecognized escape sequence
97+
98+
99+
Stack Trace:
100+
Error: ripgrep exited with code 2: regex parse error:
101+
\.lookup\(['\"]
102+
^^
103+
error: unrecognized escape sequence
104+
105+
at ChildProcess.<anonymous> (file:///Users/patrickpircher/Library/pnpm/global/5/.pnpm/bobshell@https+++s3.us-south.cloud-object-storage.appdomain.cloud+bob-shell+bobshell-1.0.0.tgz/node_modules/bobshell/bundle/bob.js:2265:1451)
106+
at ChildProcess.emit (node:events:508:28)
107+
at maybeClose (node:internal/child_process:1085:16)
108+
at Socket.<anonymous> (node:internal/child_process:456:11)
109+
at Socket.emit (node:events:508:28)
110+
at Pipe.<anonymous> (node:net:346:12)
111+
================================================================================
112+

.bob/notes/pending-notes.txt

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
{"id":"61bb4834-bca1-4560-8baa-d50a2474ada3","ts":"2026-02-26T15:21:01.428Z","path":"/Users/patrickpircher/IdeaProjects/ember-inspector/EMBER_INSPECTOR_API_ANALYSIS.md","version":"1.0.0","taskID":"85987736-99cb-405f-85b1-b1951900cf6a"}
2+
{"id":"f7fd31bf-be87-4d82-bc05-677e9b6091b7","ts":"2026-02-26T15:21:23.149Z","path":"/Users/patrickpircher/IdeaProjects/ember-inspector/EMBER_INSPECTOR_API_ANALYSIS.md","version":"1.0.0","taskID":"85987736-99cb-405f-85b1-b1951900cf6a"}
3+
{"id":"67863a7d-63f7-4e0b-8983-482b3e7a02eb","ts":"2026-02-26T15:22:02.670Z","path":"/Users/patrickpircher/IdeaProjects/ember-inspector/EMBER_INSPECTOR_API_ANALYSIS.md","version":"1.0.0","taskID":"85987736-99cb-405f-85b1-b1951900cf6a"}
4+
{"id":"e4d33866-646a-4910-a77a-a344b359bcb1","ts":"2026-02-26T15:22:16.150Z","path":"/Users/patrickpircher/IdeaProjects/ember-inspector/EMBER_INSPECTOR_API_ANALYSIS.md","version":"1.0.0","taskID":"85987736-99cb-405f-85b1-b1951900cf6a"}
5+
{"id":"342635f5-b2b9-4443-a696-5577e29a27bf","ts":"2026-02-26T15:23:43.459Z","path":"/Users/patrickpircher/IdeaProjects/ember-inspector/EMBER_INSPECTOR_API_ANALYSIS.md","version":"1.0.0","taskID":"85987736-99cb-405f-85b1-b1951900cf6a"}
6+
{"id":"d35949c4-f5de-469b-a860-92bade404c09","ts":"2026-02-26T15:37:04.717Z","path":"/Users/patrickpircher/IdeaProjects/ember-inspector/EMBER_INSPECTOR_API_ANALYSIS.md","version":"1.0.0","taskID":"85987736-99cb-405f-85b1-b1951900cf6a"}
7+
{"id":"7e9742c9-74a3-4c12-b4df-e31978551af3","ts":"2026-02-26T15:38:05.849Z","path":"/Users/patrickpircher/IdeaProjects/ember-inspector/EMBER_INSPECTOR_API_ANALYSIS.md","version":"1.0.0","taskID":"85987736-99cb-405f-85b1-b1951900cf6a"}
8+
{"id":"8d397bf9-3110-4c6a-8dc4-fb7fea9ea110","ts":"2026-02-26T15:38:37.470Z","path":"/Users/patrickpircher/IdeaProjects/ember-inspector/EMBER_INSPECTOR_API_ANALYSIS.md","version":"1.0.0","taskID":"85987736-99cb-405f-85b1-b1951900cf6a"}
9+
{"id":"d7dd97a4-4279-410c-8e31-4bfcac004dbe","ts":"2026-02-26T15:40:24.182Z","path":"/Users/patrickpircher/IdeaProjects/ember-inspector/EMBER_INSPECTOR_API_ANALYSIS.md","version":"1.0.0","taskID":"85987736-99cb-405f-85b1-b1951900cf6a"}
10+
{"id":"16c57e7b-3cf4-4823-8081-fcdd8adf926f","ts":"2026-02-26T15:41:55.815Z","path":"/Users/patrickpircher/IdeaProjects/ember-inspector/ember_debug/container-debug-new-api.js","version":"1.0.0","taskID":"85987736-99cb-405f-85b1-b1951900cf6a"}
11+
{"id":"d9fdf90a-64df-473b-9777-04cf181daf20","ts":"2026-02-26T15:42:29.558Z","path":"/Users/patrickpircher/IdeaProjects/ember-inspector/ember_debug/route-debug-new-api.js","version":"1.0.0","taskID":"85987736-99cb-405f-85b1-b1951900cf6a"}
12+
{"id":"7e00c46e-a1ee-400c-84e8-2cfb9f881498","ts":"2026-02-26T15:43:26.140Z","path":"/Users/patrickpircher/IdeaProjects/ember-inspector/ember_debug/utils/ember-inspector-api.js","version":"1.0.0","taskID":"85987736-99cb-405f-85b1-b1951900cf6a"}
13+
{"id":"dfc4a2e0-068e-4f5f-be5c-ac8c9b24d423","ts":"2026-02-26T15:44:14.951Z","path":"/Users/patrickpircher/IdeaProjects/ember-inspector/IMPLEMENTATION_COMPARISON.md","version":"1.0.0","taskID":"85987736-99cb-405f-85b1-b1951900cf6a"}
14+
{"id":"419cc88f-ddf7-41e5-9722-43ba07eaef3f","ts":"2026-02-26T15:54:48.509Z","path":"/Users/patrickpircher/IdeaProjects/ember-inspector/ember_debug/container-debug.js","version":"1.0.0","taskID":"85987736-99cb-405f-85b1-b1951900cf6a"}
15+
{"id":"33761823-2152-429a-8572-e7a7004714e3","ts":"2026-02-26T15:55:05.192Z","path":"/Users/patrickpircher/IdeaProjects/ember-inspector/ember_debug/route-debug.js","version":"1.0.0","taskID":"85987736-99cb-405f-85b1-b1951900cf6a"}
16+
{"id":"1ab2f0fa-be01-4fad-8ec1-4deab0f26e08","ts":"2026-02-26T15:56:04.492Z","path":"/Users/patrickpircher/IdeaProjects/ember-inspector/IMPLEMENTATION_COMPARISON.md","version":"1.0.0","taskID":"85987736-99cb-405f-85b1-b1951900cf6a"}
17+
{"id":"073f1064-e2f1-43f8-8875-b740bf5974a1","ts":"2026-02-26T15:58:21.594Z","path":"/Users/patrickpircher/IdeaProjects/ember-inspector/ember_debug/object-inspector.js","version":"1.0.0","taskID":"85987736-99cb-405f-85b1-b1951900cf6a"}
18+
{"id":"1b374166-0bb5-45c1-82e6-040d07f2ff4d","ts":"2026-02-26T15:58:32.787Z","path":"/Users/patrickpircher/IdeaProjects/ember-inspector/ember_debug/object-inspector.js","version":"1.0.0","taskID":"85987736-99cb-405f-85b1-b1951900cf6a"}
19+
{"id":"2da440af-4df3-418e-8744-3110716d3209","ts":"2026-02-26T15:59:20.734Z","path":"/Users/patrickpircher/IdeaProjects/ember-inspector/ember_debug/data-debug.js","version":"1.0.0","taskID":"85987736-99cb-405f-85b1-b1951900cf6a"}
20+
{"id":"9f305fc8-4deb-4001-802b-8474008bca2c","ts":"2026-02-26T15:59:29.011Z","path":"/Users/patrickpircher/IdeaProjects/ember-inspector/ember_debug/data-debug.js","version":"1.0.0","taskID":"85987736-99cb-405f-85b1-b1951900cf6a"}
21+
{"id":"94a2afbb-b513-4df3-8e95-8b22f0e89468","ts":"2026-02-26T15:59:46.174Z","path":"/Users/patrickpircher/IdeaProjects/ember-inspector/ember_debug/libs/render-tree.js","version":"1.0.0","taskID":"85987736-99cb-405f-85b1-b1951900cf6a"}
22+
{"id":"d6393dbb-1b9d-4158-86e9-8726903c8947","ts":"2026-02-26T15:59:53.524Z","path":"/Users/patrickpircher/IdeaProjects/ember-inspector/ember_debug/libs/render-tree.js","version":"1.0.0","taskID":"85987736-99cb-405f-85b1-b1951900cf6a"}

.idea/.gitignore

Lines changed: 8 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

.idea/codeStyles/Project.xml

Lines changed: 58 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

.idea/codeStyles/codeStyleConfig.xml

Lines changed: 5 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

.idea/compiler.xml

Lines changed: 6 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

.idea/ember-inspector.iml

Lines changed: 35 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

.idea/inspectionProfiles/Project_Default.xml

Lines changed: 7 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

.idea/jsLibraryMappings.xml

Lines changed: 6 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

.idea/misc.xml

Lines changed: 9 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

0 commit comments

Comments
 (0)