-
Notifications
You must be signed in to change notification settings - Fork 610
Description
Hi everyone,
I would like to propose an alignment around the maintenance and future of RulesEngine.
Summary of recent events:
- In Repo maintained anymore? #604, @abbasc52 announced that he could no longer maintain the project after leaving Microsoft, and had received no clear response from Microsoft regarding a handover.
- As a result, community members like @timophe-91, @asulwer, and others created forks and started maintaining the project independently.
- @asulwer has been actively fixing issues and planning improvements, although with possible breaking changes ahead.
- Some users, including myself, are heavily relying on RulesEngine for critical business applications and have a strong preference for stability and backward compatibility (discussed in Repo maintained anymore? #604 as well).
- Meanwhile, there has been some small activity on the original repository, as seen in ExecuteAllRulesAsync should support a CancellationToken as argument #609.
- Recently, @evan361425 suggested in 5.0.3 to 5.0.6: Method 'SomeMethod' on type 'SomeType' is not accessible. #667 that we contribute back to the original Microsoft repository instead of maintaining forks separately.
Why am I creating this post?
We all have the same goal: keep RulesEngine alive, stable, and evolving.
However, right now we risk fragmentation between forks and the original repo.
This could confuse new users and harm adoption of the library.
Personally, I would be happy to contribute no matter the repository, but it’s crucial that we have alignment on:
- Which repository should be considered the "official" RulesEngine?
- What should be the maintenance and contribution model (governance)?
- How do we balance stability (backward compatibility) vs innovation (new features)?
- If moving to a fork: should we migrate issue tracking and community there?
- If reviving the original repo: can we get Microsoft's blessing/permission to proceed?
Suggestion:
- Start a formal discussion involving all active contributors (e.g., @pbhal, @abbasc52, @timophe-91, @asulwer, @evan361425, myself, and anyone else).
- Define together the future home for RulesEngine.
- Organize clear roles (who can approve PRs, manage releases, etc.).
Additional contribution:
While working with RulesEngine, I also started building a sample project to demonstrate how a RulesEngine-based application could work in practice:
- [Playground Demo (WIP)](http://rules-engine-pro.com/)
- [API Repository](https://github.com/RenanCarlosPereira/rules-engine-pro-api)
- [UI Repository](https://github.com/RenanCarlosPereira/rules-engine-pro-ui)
The goal is to provide a playground where users can easily test rule creation and execution, and also get inspiration on how to build UIs and services around RulesEngine.
If this project can be helpful to the official RulesEngine ecosystem, I’d be happy to collaborate and evolve it alongside the main project.
Thanks again to everyone who's been contributing so far!
Let's work together to keep this amazing project thriving for the long term. 🚀
Looking forward to hearing your thoughts!