<feed xmlns='http://www.w3.org/2005/Atom'>
<title>modules/include, branch main</title>
<subtitle>Modules of GpgFrontend.</subtitle>
<id>http://git.bktus.com/gpgfrontend/modules/atom?h=main</id>
<link rel='self' href='http://git.bktus.com/gpgfrontend/modules/atom?h=main'/>
<link rel='alternate' type='text/html' href='http://git.bktus.com/gpgfrontend/modules/'/>
<updated>2026-09-19T12:23:07Z</updated>
<entry>
<title>refactor(module): relocate module author headers</title>
<updated>2026-09-19T12:23:07Z</updated>
<author>
<name>saturneric</name>
<email>eric@bktus.com</email>
</author>
<published>2026-09-19T12:23:07Z</published>
<link rel='alternate' type='text/html' href='http://git.bktus.com/gpgfrontend/modules/commit/?id=92f4cb0cecfa9887d3ab7395c9a88de7ec69266d'/>
<id>urn:sha1:92f4cb0cecfa9887d3ab7395c9a88de7ec69266d</id>
<content type='text'>
- remove duplicated module author headers from the top-level include path
- rely on gf_module_runtime to expose the runtime-owned interfaces
- keep only SDK headers in the global include directories
</content>
</entry>
<entry>
<title>style(formatting): apply consistent code formatting</title>
<updated>2026-09-19T10:13:22Z</updated>
<author>
<name>saturneric</name>
<email>eric@bktus.com</email>
</author>
<published>2026-09-19T10:13:22Z</published>
<link rel='alternate' type='text/html' href='http://git.bktus.com/gpgfrontend/modules/commit/?id=7b5f2d3a3afddb7d5d9e083cdb83ca13108503e5'/>
<id>urn:sha1:7b5f2d3a3afddb7d5d9e083cdb83ca13108503e5</id>
<content type='text'>
- format macro definitions and function return types
- normalize export header preprocessor indentation
- wrap long calls and deprecated attributes consistently
- apply formatting updates across email and module sources
</content>
</entry>
<entry>
<title>refactor(module): centralize module headers and identity</title>
<updated>2026-09-19T09:57:16Z</updated>
<author>
<name>saturneric</name>
<email>eric@bktus.com</email>
</author>
<published>2026-09-19T09:57:16Z</published>
<link rel='alternate' type='text/html' href='http://git.bktus.com/gpgfrontend/modules/commit/?id=cf2eebe9eea1cad1d12dd789fea13d511a63b4b0'/>
<id>urn:sha1:cf2eebe9eea1cad1d12dd789fea13d511a63b4b0</id>
<content type='text'>
- split common utilities into focused logging, event, i18n, memory,
  and conversion headers
- add GFModule.h as the unified module include
- derive bootstrap identity and translation context from generated metadata
- replace parameterized bootstrap macros with GF_MODULE_BOOTSTRAP()
- retain deprecated compatibility headers and allocation helper names
- remove the obsolete GFModuleDeclare.h interface
- correct non-debug logging macros to use their intended levels
</content>
</entry>
<entry>
<title>refactor(module): remove legacy export macros</title>
<updated>2026-09-14T21:51:56Z</updated>
<author>
<name>saturneric</name>
<email>eric@bktus.com</email>
</author>
<published>2026-09-14T21:51:56Z</published>
<link rel='alternate' type='text/html' href='http://git.bktus.com/gpgfrontend/modules/commit/?id=8c92af69c76ae564fdec14c82feb83ac0c18cf4c'/>
<id>urn:sha1:8c92af69c76ae564fdec14c82feb83ac0c18cf4c</id>
<content type='text'>
- remove obsolete GF_MODULE_API_DEFINE macro variants
- document the bootstrap table as the new module interface
- retain shared includes for module compatibility
</content>
</entry>
<entry>
<title>refactor(utils): clarify SDK argument ownership</title>
<updated>2026-09-14T21:43:53Z</updated>
<author>
<name>saturneric</name>
<email>eric@bktus.com</email>
</author>
<published>2026-09-14T21:43:53Z</published>
<link rel='alternate' type='text/html' href='http://git.bktus.com/gpgfrontend/modules/commit/?id=6cc861b4a4785a1a6342320ab2ccfacf663c1968'/>
<id>urn:sha1:6cc861b4a4785a1a6342320ab2ccfacf663c1968</id>
<content type='text'>
- document borrowed argument and owned return conventions
- remove obsolete QDUP and QSECDUP duplication macros
- pass GUI handles directly as temporary UTF-8 data
</content>
</entry>
<entry>
<title>refactor(sdk): stop allocating borrowed API arguments</title>
<updated>2026-09-14T21:34:10Z</updated>
<author>
<name>saturneric</name>
<email>eric@bktus.com</email>
</author>
<published>2026-09-14T21:34:10Z</published>
<link rel='alternate' type='text/html' href='http://git.bktus.com/gpgfrontend/modules/commit/?id=531c1e4513c625b66b6961b301e24241aedd57a5'/>
<id>urn:sha1:531c1e4513c625b66b6961b301e24241aedd57a5</id>
<content type='text'>
- return static module identity strings without duplicating them
- remove unnecessary DUP allocations from SDK registration and calls
- convert temporary Qt strings directly to UTF-8 API arguments
- preserve ownership for transferred command execution contexts
- avoid leaks now that SDK arguments are borrowed
</content>
</entry>
<entry>
<title>feat(modules): add single-symbol module bootstrap API</title>
<updated>2026-09-14T21:25:42Z</updated>
<author>
<name>saturneric</name>
<email>eric@bktus.com</email>
</author>
<published>2026-09-14T21:25:42Z</published>
<link rel='alternate' type='text/html' href='http://git.bktus.com/gpgfrontend/modules/commit/?id=13ce0f5eb5dbeafc830eee41ca97c00fbcfe2bed'/>
<id>urn:sha1:13ce0f5eb5dbeafc830eee41ca97c00fbcfe2bed</id>
<content type='text'>
- define versioned host and module API bootstrap tables
- adapt classic module lifecycle functions to the new API
- validate host ABI compatibility before exposing modules
- migrate email, GnuPG, key server, and version modules
- retain legacy metadata and event handling compatibility
</content>
</entry>
<entry>
<title>feat(module): expose SDK ABI version metadata</title>
<updated>2026-09-14T21:05:06Z</updated>
<author>
<name>saturneric</name>
<email>eric@bktus.com</email>
</author>
<published>2026-09-14T21:05:06Z</published>
<link rel='alternate' type='text/html' href='http://git.bktus.com/gpgfrontend/modules/commit/?id=79858bdac0c2d17a3e21766159a15653a148923f'/>
<id>urn:sha1:79858bdac0c2d17a3e21766159a15653a148923f</id>
<content type='text'>
- add the SDK ABI version export to module declarations and definitions
- terminate allocated buffers safely for C-string consumers
- return null when SDK buffer allocation fails
- document the non-secure behavior of Secure helper names
</content>
</entry>
<entry>
<title>fix(email): preserve binary data across crypto</title>
<updated>2026-09-12T21:16:42Z</updated>
<author>
<name>saturneric</name>
<email>eric@bktus.com</email>
</author>
<published>2026-09-12T21:16:42Z</published>
<link rel='alternate' type='text/html' href='http://git.bktus.com/gpgfrontend/modules/commit/?id=793d30835b337cec34b00b3311ce70000329ad0d'/>
<id>urn:sha1:793d30835b337cec34b00b3311ce70000329ad0d</id>
<content type='text'>
- use QByteArray for MIME, signing, encryption, and decryption data
- call sized SDK APIs to preserve embedded NULs and non-UTF-8 bytes
- hash and verify the exact serialized octets
- add crypto boundary tests for binary data and output sizes
</content>
</entry>
<entry>
<title>chore(license): add headers to project files</title>
<updated>2026-09-11T20:35:44Z</updated>
<author>
<name>saturneric</name>
<email>eric@bktus.com</email>
</author>
<published>2026-09-11T20:35:44Z</published>
<link rel='alternate' type='text/html' href='http://git.bktus.com/gpgfrontend/modules/commit/?id=5c34f6d544f8d9fd3e86df8bf67a5cd8d77edb92'/>
<id>urn:sha1:5c34f6d544f8d9fd3e86df8bf67a5cd8d77edb92</id>
<content type='text'>
- document copyright and GPL-3.0-or-later licensing
- cover CMake flags and module export definitions
</content>
</entry>
</feed>
