Skip to content
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

docs: add important note for contributors before introducing new features #2269

Merged
merged 1 commit into from
Sep 22, 2024

Conversation

EchoEllet
Copy link
Collaborator

Description

Add an important note for contributors before introducing new features.

Related Issues

We don't have any specific issue or discussion that's related at the moment but a discussion was made in unrelated issue #2235

Once we have a separate issue, this PR will be updated.

Type of Change

  • New feature: Adds new functionality without breaking existing features.
  • 🛠️ Bug fix: Resolves an issue without altering current behavior.
  • 🧹 Code refactor: Code restructuring that does not affect behavior.
  • Breaking change: Alters existing functionality and requires updates.
  • 🧪 Tests: Adds new tests or modifies existing tests.
  • 📝 Documentation: Updates or additions to documentation.
  • 🗑️ Chore: Routine tasks, or maintenance.
  • Build configuration change: Changes to build or deploy processes.

Suggestions

I still highly suggest putting the library in maintenance mode, only accepting critical bug fixes to the master branch, and having a dev branch that accepts all kind of bug fixes and code quality improvements that have been explained, documented well, and possible to understand, carefully tested with different features, breaking changes will occur, will be only releasing those changes as pre-release. We don't want to worry too much about introducing breaking changes as it's not our first priority at the moment, and we don't want to keep releasing major versions one after the other only to fix some design issues by introducing a breaking change. We already made some breaking changes in the past.

This dev branch will be released as pre-release for a long time, new features will not be added especially if not clear, and bug fixes should be manually tested (I prefer if we write unit, widget, and maybe integration tests for them but will not happen anytime soon).

Why is this necessary?

What we're doing at the moment is that we fix a issue, see if the issue was fixed, submit a PR, and then merge it, once we discover the other 15 issues, we will revert it or deprecate the change. We should be more cautious about introducing new changes, new changes should be at least understood by one maintainer to ensure it's possible to understand, well documented, and doesn't have quality issues.

Having a variable called _restoreToolbar to fix a magnifier bug to a file (that has over 1500 lines of code) with different variables, classes, and things is not ideal, and requires contacting the contributor to understand the details after the changes have been merged. Doesn't matter what kind of knowledge or experience you have, you will never able to understand those changes without introducing more issues (in best cases). Which is why more maintainers and contributors are leaving the project, one of the main reasons why I left previously.

I have introduced issues myself, especially in 2023 but I have fixed almost most of them and still working on fixing more issues. I have tested my recent change #2230 very well and I still find bug fixes and design issues, which is why it's not up for merge yet I'm still thinking about having integration tests and it's still not qualified enough. @AtlasAutocode and @CatHood0 are even more cautious and introduce much fewer issues.

I'm saying all of this because I want all maintainers, contributors, and users to take the issues we have more seriously. At least most of them.

@EchoEllet EchoEllet marked this pull request as draft September 22, 2024 14:55
@EchoEllet EchoEllet marked this pull request as ready for review September 22, 2024 14:58
@EchoEllet EchoEllet merged commit 1583e5d into master Sep 22, 2024
2 checks passed
@EchoEllet EchoEllet deleted the docs/contributing-notice branch September 22, 2024 17:08
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.

2 participants