View Issue Details
ID | Project | Category | View Status | Date Submitted | Last Update |
---|---|---|---|---|---|
0005938 | Composr | core | public | 2024-09-13 02:02 | 2024-09-13 02:10 |
Reporter | Patrick Schmalstig | Assigned To | |||
Severity | Feature-request | ||||
Status | non-assigned | Resolution | open | ||
Product Version | |||||
Fixed in Version | |||||
Summary | 0005938: Refactor core Comcode and Tempcode symbols into hooks | ||||
Description | Core Comcode tags and Tempcode symbols exist within source files. Refactor these out of the source files into appropriate hooks. The advantages include the following: 1. Saves on memory (in most cases) - We only load up code for tags and symbols that we are going to use* 2. Allows for easier overriding with custom code / addons for changing functionality (e.g. an addon which rewrites external URLs to an internal redirect URL that displays a warning / confirmation about proceeding to an external site) 3. Current core tags and symbols can be remapped to their appropriate bundled addon instead of them all being core *Hooks are classes which by nature take up more memory. But we can optimise by only loading the hooks on-demand, and by unsetting the hooks when no longer needed (though this comes at a performance cost if the hook might be needed down the road; perhaps the hook can define a property "is_commonly_used", and if true, will not be unloaded after use [ecv_ symbols would have this true and ecv2_ ones false, for example]) | ||||
Additional Information | We should also remove ecv_* and ecv2_* functionality once this is done; won't be necessary if all Tempcode symbols will be hooks. | ||||
Tags | Roadmap: Over the horizon | ||||
Time estimation (hours) | |||||
Sponsorship open | |||||
Date Modified | Username | Field | Change |
---|---|---|---|
2024-09-13 02:02 | Patrick Schmalstig | New Issue | |
2024-09-13 02:02 | Patrick Schmalstig | Tag Attached: Roadmap: Over the horizon | |
2024-09-13 02:03 | Patrick Schmalstig | Description Updated | View Revisions |
2024-09-13 02:04 | Patrick Schmalstig | Description Updated | View Revisions |
2024-09-13 02:06 | Patrick Schmalstig | Additional Information Updated | View Revisions |
2024-09-13 02:08 | Patrick Schmalstig | Description Updated | View Revisions |
2024-09-13 02:10 | Patrick Schmalstig | Description Updated | View Revisions |