v0.2.2 9100209

history of templates/go at v0.2.2

2026-03-22

f14f9b6refactor: fork from jwijenbergh, improve codegen import handling GPG Verifiedbrice

2026-03-19

2b95a8drefactor: replace custom purego fork with upstream ebitengine/purego v0.10.0 GPG Verifiedbrice

2026-02-13

6182b1efeat(glib): implement trampoline pattern for source callbacks to avoid purego slot exhaustion GPG Verifiedbrice

2026-02-12

02837fafeat(lifecycle): add refcounted callback lifecycle for GLib sources and signals GPG Verifiedbrice

2026-02-08

b182548fix(gen): marshal callback strings from C ABI pointers GPG Verifiedbrice

2026-02-07

abab680fix(gen): use g_strdup for nullable string params GPG Verifiedbrice

2026-02-06

53bd89cfix(gen) fix 4 confirmed template generator bugs GPG Verifiedbnema

2025-12-22

7393052fix(glib): keep callbacks alive to avoid GC brice

2025-12-18

d6a13f5fix(core): make NullableStringToPtr GC-safe with runtime.KeepAlive GPG Unverifiedbnema

2025-12-16

8b4a1ddfeat(gir): add support for detailed signals in code generation brice

2025-12-12

12c19f8Handle nullable strings for nullable params brice
98b19e9fix(gir): consolidate callback wrapper logic and prevent namespace prefixing of builtin types brice

2025-12-10

c2d6ab6fix: wrap callback parameters with closures brice

2025-12-01

ce1ffcbGIR: Add getters and setters for `[]byte` and `[]uintptr` to generator Felicitas Pojtinger
86a6933GIR: Decompose setters and getters for `[]string` and scalar types Felicitas Pojtinger
9aaf3ffGIR: Add property getters and setters generation support for `[]string` Felicitas Pojtinger
db73800GIR: Port new property comment syntax to overrides Felicitas Pojtinger
4bdfabfGIR: Add property getters and setters generation support for primitive types Felicitas Pojtinger

2025-10-22

e97e9feGIR: Move `tryRegister` back into core with `PuregoSafeRegister` Felicitas Pojtinger
2fa804aGIR: Implement support for multiple libraries to be in `shared-library` key in GIR by iterating over all registered ones in the GIR and using the first one that linking succeeds with Felicitas Pojtinger

2025-10-16

1ba02a9GIR: Use OverrideX and GetX as callback override functions Felicitas Pojtinger
fe4d51fGIR: Implement support for generating getters and setters for callbacks based on GIR instead of generating untyped pointers Felicitas Pojtinger
c8c33c3GIR: Expose callbacks in structs as function pointers to Go to allow overwriting vfuncs Felicitas Pojtinger

2025-10-13

517498fTemplates Go: Fix shared lib newlines SSH UnverifiedJeroen Wijenbergh
cdca4b5GIR: Read pkg-config and shared library names from GIR file, then extend list of known libraries at `init` time Felicitas Pojtinger
ddbf717GIR: Export core functions to allow generating from 3rd party repos Felicitas Pojtinger

2025-08-12

f02acecUpdate puregotk & re-run gen SSH UnverifiedJeroen Wijenbergh
f867f22Update purego SSH UnverifiedJeroen Wijenbergh
b09dca9Templates: Allow GoPointer to return nil sewn

2025-04-07

d0403f8Use structs.HostLayout Jeroen Wijenbergh
0299370GIR: Generate GLib get-type Jeroen Wijenbergh

2024-03-05

867f32fTemplates: early return from Connect method for readability. Peter Fern
c2a1f08Core: Migrate to requiring function pointers for all callback arguments Peter Fern
cd00a46Core: Allow callbacks to be re-used and unreferenced Peter Fern

2024-01-14

562a1aaGir + Templates: Generate more Go friendly constructor names GPG Unverifiedjwijenbergh
db0ebd3Gir + templates: Cleanup old imports code GPG Unverifiedjwijenbergh

2024-01-03

fd80be9Gen: Add constants Peter Fern
dfc009cGen: Add methods for records Peter Fern
8fc4929Gen: Add functions for classes Peter Fern
c57ccf3Gen: Add constructors for records Peter Fern

2023-10-09

9d80213All: Use SignalConnectData instead of ObjectConnect GPG Unverifiedjwijenbergh

2023-08-16

4bd1055Core + Gen + GIR + Templates: Support error returns when throws=1 GPG Unverifiedjwijenbergh

2023-08-15

7d292f2initial commit GPG Unverifiedjwijenbergh

Keyboard shortcuts

Single-key shortcuts are on. ctrl k and esc work whatever this says.

ctrl k :
go to a section, branch, tag, file or repository
?
this list
j k
move the row cursor down / up
enter
open the row under the cursor; on Files, a directory opens or closes in place
↑ ↓ ← → home end
in the file tree (focus on a row): previous / next row, close / open a directory or go to its parent / first entry, first / last row. They never open a file
l h
on Files: open a directory or a file / close a directory or go up to its parent, then to the parent page. Elsewhere: into the side panel (on a merge request, its files) / back to the content; there j k move between its controls
g g G
first / last row
/
filter the list; on Files, find a file anywhere in the repository (esc clears, enter opens the best match)
b
switch branch or tag
g s g f g c g b g m g i g r g a
tabs: summary, files, commits, branches & tags, merge requests, issues, releases, actions (when available)
g h
home
w
wide mode: use the whole width of the screen, or not (remembered)
y
copy a permalink pinned to the commit
d u x
diff: split / unified / collapse or expand all
e E
diff: the whole file in view / every file, with the lines the hunks hide
n
merge request: next note in the diff
esc
close a dialog, leave a field

Branches 1

Tags 102

↑↓ moveenter openesc close