Skip to content

The events package was removed from the repository #111

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 3 commits into
base: main
Choose a base branch
from

Conversation

m-mdy-m
Copy link
Member

@m-mdy-m m-mdy-m commented Apr 24, 2025

PR Template

Description

This PR introduces several structural and architectural changes to the @glandjs/events package and the monorepo. The primary change involves extracting the @glandjs/events package into its own repository, decoupling it from the main monorepo. Additional refactors include removing unnecessary utilities and improving performance by minimizing dependencies.

  • Removed @glandjs/events from monorepo and moved it to a dedicated repository: @glandjs/events
  • Removed radix-tree utility from @glandjs/common and moved it to @glandjs/events
  • Removed id getter method from the internal broker registry
  • Introduced name registration for each broker instance
  • Reduced dependencies of @glandjs/events to a single package: @medishn/toolkit
  • The new version of @glandjs/events is more lightweight and optimized for high performance

Type of Change

Please check the option(s) that apply to this PR:

  • Bug fix (non-breaking change which fixes an issue)
  • Feature (non-breaking change which adds functionality)
  • Breaking change (fix or feature causing existing functionality to change)
  • Refactoring (no functional changes, no API changes)
  • Documentation update
  • Build or CI/CD related changes
  • Performance improvement
  • Other (please describe):

Checklist

  • I have read the CONTRIBUTING guidelines
  • My code follows the event-driven architecture of Gland
  • I have added tests that prove my fix/feature works
  • New and existing unit tests pass locally with my changes
  • I have made necessary documentation updates
  • My changes generate no new warnings or errors
  • I have updated examples if applicable
  • My branch is up-to-date with the base branch

Breaking Changes?

  • Yes - the @glandjs/events package has been removed from the monorepo
  • No

Documentation Impact

  • Requires updates to event flow diagrams
  • New channel API docs needed
  • No changes required

Current Behavior

The @glandjs/events package was part of the main monorepo, with dependencies and structure that made it tightly coupled to other Gland packages. Additionally, certain internal utilities like radix-tree were placed in @glandjs/common, and some unused features like id getter remained.

New Behavior

The @glandjs/events package is now fully independent, enabling easier versioning, lightweight use outside the core Gland ecosystem, and better architectural separation. It is now extremely fast and minimal, depending only on @medishn/toolkit, and has its own dedicated repository. This improves long-term maintainability and aligns with the philosophy of Gland as a protocol-agnostic architecture solution.

Additional Information

#110

m-mdy-m added 3 commits April 21, 2025 15:25
…o @glandjs/events. Also, the id getter method was removed. And name was registered for each broker. And @glandjs/events has the least dependencies. And it only has the @medishn/toolkit package and is very fast.
@m-mdy-m m-mdy-m added feature This label is used for new features or improvements that you want to add to the project. refactor For code that needs to be revised to improve or have a better structure without changing performance labels Apr 24, 2025
@m-mdy-m m-mdy-m added this to the events milestone Apr 24, 2025
@m-mdy-m m-mdy-m requested a review from bitsgenix April 24, 2025 12:21
@m-mdy-m m-mdy-m linked an issue Apr 24, 2025 that may be closed by this pull request
2 tasks
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
feature This label is used for new features or improvements that you want to add to the project. refactor For code that needs to be revised to improve or have a better structure without changing performance
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Decouple @glandjs/events from the core Gland template
2 participants