Merge pull request #18779 from jaapjansma/dev_report_53
[civicrm-core.git] / ext / afform / docs / roadmap.md
index 3ef1bd771ff35eb29263d1cf52bb43b63ac47e95..3b0b0c6b1fc07d32f6219560a9163aac2aa1d94f 100644 (file)
@@ -20,10 +20,16 @@ This extension is expected to be the base for a suite of related extensions:
 * `afform_auditor`: Report on upgrade compatibility. Test changesets. Highlight dangerous/unknown/unsupported form elements.
    Score maintainability of the system.
 
+## Documentation
+
+* Development and Refactoring: A guide for making changes to supported markup in a maintainable fashion.
+  (*What if I need to rename a tag? What if I need to deprecate a tag? Ad nauseum*)
+
 ## Known Issues
 
 Within this extension, there are things which need updating/addressing:
 
+* Test coverage for key Angular directives (e.g. `af-api4-ctrl`, `af-api4-action`)
 * There are several `FIXME`/`TODO` declarations in the code for checking pre-conditions, reporting errors, handling edge-cases, etc.
 * Although afforms can be used in AngularJS, they don't fully support tooling like `cv ang:html:list`
   and `hook_civicrm_alterAngular` changesets. We'll need a core patch to allow that. (Ex: Define partials via callback.)
@@ -44,3 +50,7 @@ Within this extension, there are things which need updating/addressing:
   support batching (i.e. all API calls issued within a 5ms window are sent as a batch).
 * Default CSS: There's no mechanism for defining adhoc CSS. This is arguably a feature, though, because the CSS classes
   should be validated (to ensure theme interoperability).
+* `Civi/Angular/ChangeSet.php` previously had an integrity check that activated in developer mode
+  (`\CRM_Core_Config::singleton()->debug && $coder->checkConsistentHtml($html)`). This has been removed because it was a bit brittle
+  about self-closing HTML tags. However, the general concept of HTML validation should be reinstated as part of the `afform_auditor`.
+* `hook_alterAngular` is used to inject APIv4 metadata for certain tags. This behavior needs a unit-test.