Conventions
Commit style
One convention across the whole Nexigrid repo: a scoped, lowercase title — and a body that explains what and why when the change isn't obvious.
Titles are written in English or Italian as the repo history flows; bodies are written in Italian by convention. What matters is the structure:
Format
<scope>: <short lowercase description>
<optional body: explains WHAT and WHY>
Scopes
Playground | Changes inside assets/playground/. |
|---|---|
Playground <component> | A specific playground snippet or module. |
ng_<component> | Patch to a single component (e.g. ng_observer: ...). |
NG <ver> freeze [Fase <N>] | Structured release work (e.g. NG 1.0 freeze [Fase D.1]: ...). |
Cleanup | Removing old snapshots, dead code, unused files. |
Fix | Targeted bugfix. |
SCSS | General styling updates. |
Updates | Mixed changes to components / partials / tests in one go. |
Real titles from the history
ng_observer: skip unmount per nodi spostati (non realmente rimossi)
Playground page-loader: fix classi corrette + UI dimostrativa
Playground: aggiunti 8 snippet mancanti (aux, count, formatter, header, ...)
NG 1.0 freeze [Fase E static]: snackbar listener + docs overlay riclassificato
NG 1.0 freeze [Fase D.1]: 6 componenti core 100% conformi al contratto
Cleanup: rimossi vecchi snapshot di ng_table (v1..v2.37) e app_master-old
Commit body
When the change needs explaining (bugfix, non-obvious refactor): blank line after the title, then cause and fix choice; link related commits, list the main files when there are many.
ng_observer: skip unmount per nodi spostati (non realmente rimossi)
Bug: _flushRemoved() chiamava ng.unmount() su qualsiasi nodo rimosso
dal MutationObserver, inclusi quelli soltanto SPOSTATI da un parent
all'altro. Tipico caso: popover.open() porta il root in document.body
via appendChild — l'observer vede 'removed from original parent' e
smonta l'istanza, cancellando TUTTI i listener.
Fix: in _flushRemoved(), prima di chiamare ng.unmount(removed), check
if (document.contains(removed)) → skip. Un nodo ancora nel document
non è stato realmente rimosso, è stato spostato.
Co-author & tags
Commits made with AI assistance append a co-author trailer:
Co-Authored-By: Claude <noreply@anthropic.com>
Notable versions get an annotated tag, named <scope>-v<MAJOR.MINOR>[-stable]:
git tag -a playground-v0.4-stable -m "version description"