Skip to content

Fix theme registry security and race conditions - #221

Merged
ZhuchkaTriplesix merged 1 commit into
devfrom
fix/217-theme-registry-security-bugs
Jun 21, 2026
Merged

Fix theme registry security and race conditions#221
ZhuchkaTriplesix merged 1 commit into
devfrom
fix/217-theme-registry-security-bugs

Conversation

@ZhuchkaTriplesix

Copy link
Copy Markdown
Member

Resolves #217, #218, #219, #220

@github-actions github-actions Bot added the bug Something isn't working label Jun 21, 2026
@ZhuchkaTriplesix
ZhuchkaTriplesix merged commit 002058e into dev Jun 21, 2026
4 checks passed
ZhuchkaTriplesix added a commit that referenced this pull request Jun 21, 2026
* Fix #211: Execute only selected SQL text and strip SQLite comments (#213)

* feat(extensions): implement LocalExtensionRegistry (EXT-2) (#214)

- Add ExtensionPaths for locating ~/.querya/extensions
- Add LocalExtensionRegistry for parsing manifest.json from extensions dir
- Add installPath to ExtensionManifest

* Test: Unit Tests for Extension Registry (EXT-4) (#215)

* test(extensions): add unit tests for LocalExtensionRegistry (EXT-4)

- Mock ExtensionPaths.extensionsDirectory for testing
- Verify registry parses valid manifests
- Verify invalid manifests and plain files are ignored
- Verify registry cache logic

* fix(extensions): use flutter foundation for @VisibleForTesting instead of meta to satisfy linter

* Feat: Migrate Custom Themes to Extension Registry (EXT-3) (#216)

* fix(theme): use braces for multiline if statement

* fix(theme): fix theme registry migration unit tests and watcher path

* fix(theme): remove unused import theme_paths.dart

* test(settings): fix preferences appearance section widget test by mocking extensions dir and utilizing pumpAndSettle

* Fix TOCTOU, ID collisions, redundant scans, and remove legacy theme code (#221)

* chore(release): prepare release 0.4.7
ZhuchkaTriplesix added a commit that referenced this pull request Jun 22, 2026
* Fix #211: Execute only selected SQL text and strip SQLite comments (#213)

* feat(extensions): implement LocalExtensionRegistry (EXT-2) (#214)

- Add ExtensionPaths for locating ~/.querya/extensions
- Add LocalExtensionRegistry for parsing manifest.json from extensions dir
- Add installPath to ExtensionManifest

* Test: Unit Tests for Extension Registry (EXT-4) (#215)

* test(extensions): add unit tests for LocalExtensionRegistry (EXT-4)

- Mock ExtensionPaths.extensionsDirectory for testing
- Verify registry parses valid manifests
- Verify invalid manifests and plain files are ignored
- Verify registry cache logic

* fix(extensions): use flutter foundation for @VisibleForTesting instead of meta to satisfy linter

* Feat: Migrate Custom Themes to Extension Registry (EXT-3) (#216)

* fix(theme): use braces for multiline if statement

* fix(theme): fix theme registry migration unit tests and watcher path

* fix(theme): remove unused import theme_paths.dart

* test(settings): fix preferences appearance section widget test by mocking extensions dir and utilizing pumpAndSettle

* Fix TOCTOU, ID collisions, redundant scans, and remove legacy theme code (#221)

* chore(release): prepare release 0.4.7

* feat(menu): implement File -> Exit to close the application window (#230)

* feat(menu): implement File -> New, Open..., Save actions (#231)

* feat(menu): implement File -> New, Open..., Save actions via Intents/Actions

* refactor(menu): remove unnecessary widgets import in title bar

* feat: implement connection management improvements and read-only mode (Issues #225, #226) (#232)

* feat(connection): implement connection actions and fix layout test hang

* feat(connection): implement Invalidate/Reconnect menu item

* feat: implement Connection -> Read-only mode for database connections

* fix ci

* docs: document SQLite support, read-only mode, and connection actions

* chore(release): prepare pre-release 0.4.7-a
@ZhuchkaTriplesix ZhuchkaTriplesix self-assigned this Jul 12, 2026
@ZhuchkaTriplesix
ZhuchkaTriplesix deleted the fix/217-theme-registry-security-bugs branch July 26, 2026 14:37
ZhuchkaTriplesix added a commit that referenced this pull request Jul 27, 2026
* Fix #211: Execute only selected SQL text and strip SQLite comments (#213)

* feat(extensions): implement LocalExtensionRegistry (EXT-2) (#214)

- Add ExtensionPaths for locating ~/.querya/extensions
- Add LocalExtensionRegistry for parsing manifest.json from extensions dir
- Add installPath to ExtensionManifest

* Test: Unit Tests for Extension Registry (EXT-4) (#215)

* test(extensions): add unit tests for LocalExtensionRegistry (EXT-4)

- Mock ExtensionPaths.extensionsDirectory for testing
- Verify registry parses valid manifests
- Verify invalid manifests and plain files are ignored
- Verify registry cache logic

* fix(extensions): use flutter foundation for @VisibleForTesting instead of meta to satisfy linter

* Feat: Migrate Custom Themes to Extension Registry (EXT-3) (#216)

* fix(theme): use braces for multiline if statement

* fix(theme): fix theme registry migration unit tests and watcher path

* fix(theme): remove unused import theme_paths.dart

* test(settings): fix preferences appearance section widget test by mocking extensions dir and utilizing pumpAndSettle

* Fix TOCTOU, ID collisions, redundant scans, and remove legacy theme code (#221)

* chore(release): prepare release 0.4.7
ZhuchkaTriplesix added a commit that referenced this pull request Jul 27, 2026
* Fix #211: Execute only selected SQL text and strip SQLite comments (#213)

* feat(extensions): implement LocalExtensionRegistry (EXT-2) (#214)

- Add ExtensionPaths for locating ~/.querya/extensions
- Add LocalExtensionRegistry for parsing manifest.json from extensions dir
- Add installPath to ExtensionManifest

* Test: Unit Tests for Extension Registry (EXT-4) (#215)

* test(extensions): add unit tests for LocalExtensionRegistry (EXT-4)

- Mock ExtensionPaths.extensionsDirectory for testing
- Verify registry parses valid manifests
- Verify invalid manifests and plain files are ignored
- Verify registry cache logic

* fix(extensions): use flutter foundation for @VisibleForTesting instead of meta to satisfy linter

* Feat: Migrate Custom Themes to Extension Registry (EXT-3) (#216)

* fix(theme): use braces for multiline if statement

* fix(theme): fix theme registry migration unit tests and watcher path

* fix(theme): remove unused import theme_paths.dart

* test(settings): fix preferences appearance section widget test by mocking extensions dir and utilizing pumpAndSettle

* Fix TOCTOU, ID collisions, redundant scans, and remove legacy theme code (#221)

* chore(release): prepare release 0.4.7

* feat(menu): implement File -> Exit to close the application window (#230)

* feat(menu): implement File -> New, Open..., Save actions (#231)

* feat(menu): implement File -> New, Open..., Save actions via Intents/Actions

* refactor(menu): remove unnecessary widgets import in title bar

* feat: implement connection management improvements and read-only mode (Issues #225, #226) (#232)

* feat(connection): implement connection actions and fix layout test hang

* feat(connection): implement Invalidate/Reconnect menu item

* feat: implement Connection -> Read-only mode for database connections

* fix ci

* docs: document SQLite support, read-only mode, and connection actions

* chore(release): prepare pre-release 0.4.7-a
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

bug Something isn't working

Projects

None yet

1 participant