Skip to content

chore: update libraries of Gsify and refactor some testes and code with more tests added#29

Merged
leandromqrs merged 1 commit into
mainfrom
feat/update-libs-and-tests
May 17, 2026
Merged

chore: update libraries of Gsify and refactor some testes and code with more tests added#29
leandromqrs merged 1 commit into
mainfrom
feat/update-libs-and-tests

Conversation

@leandromqrs
Copy link
Copy Markdown
Member

This pull request introduces several key improvements and refactors across the codebase, focusing on dependency upgrades for GNOME 50 compatibility, TypeScript and code hygiene improvements, and enhancements to the build and testing workflow. The most significant changes include updating all GJS/GIR dependencies to GNOME 50, simplifying module definitions, refactoring the Bluetooth menu and icon handling, and improving the developer experience with new commands and clearer output.

Dependency and Compatibility Upgrades:

  • Updated all @girs/* dependencies in package.json to GNOME 50 versions, ensuring compatibility with the latest GNOME Shell and libraries. This includes switching to @girs/st-18, @girs/shell-18, @girs/meta-18, and related packages. [1] [2] [3] Fbef6f43L1)

Module System and TypeScript Refactoring:

  • Consolidated and simplified module type definitions by moving ModuleOption, ModuleMetadata, and ModuleDefinition from src/moduleDefinition.ts into src/module.ts, and updated all module imports accordingly. [1] [2] [3] [4] [5]
  • Removed unnecessary @ts-nocheck and @ts-ignore comments throughout the codebase, improving TypeScript strictness and code clarity. [1] [2] [3] [4] [5] [6] [7] [8]

Bluetooth Menu and Icon Handling Refactor:

  • Refactored the Bluetooth menu module to remove the IconThemeLoader class in favor of a simplified loadIcon function, streamlined the patcher lifecycle, and improved cleanup of event listeners and resources. [1] [2] [3] [4] [5] [6] [7] [8]

Build and Testing Workflow Improvements:

  • Added schema compilation (glib-compile-schemas) to the build process in justfile, and introduced a new toolbox test command for running individual integration tests. Also improved test output filtering and clarified available toolbox actions. [1] [2] [3] [4]
  • Updated metadata.json to use a numeric version field for better schema compliance.

Miscellaneous Improvements:

  • Improved extension lifecycle handling by initializing and cleaning up icons in src/extension.ts. [1] [2] [3]
  • Fixed type issues and improved class instantiation in the dock module for better compatibility with strict TypeScript settings.

These changes collectively modernize the codebase, improve maintainability, and streamline the development workflow for GNOME 50 and beyond.

@leandromqrs leandromqrs self-assigned this May 17, 2026
@leandromqrs leandromqrs merged commit ca13fc5 into main May 17, 2026
3 of 4 checks passed
@leandromqrs leandromqrs deleted the feat/update-libs-and-tests branch May 17, 2026 14:38
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant