-
-
Notifications
You must be signed in to change notification settings - Fork 5.4k
Description
In the distant past there have been changes of questionable value, often breaking, often complicating and/or pessimizing the code, and sometimes removing pre-existing tests. I consider #3843 a good example of this type of change. I'm sure that example is one of many, because I encountered similar changes when I triaged the open issues and pull requests in stage 1 of #4244. In addition, I have seen many similarly unfortunate changes in Underscore, often (but not always) by the same author.
Many small changes make a big difference, and I suspect that hunting down and reverting as many of these changes as possible would slim down and speed up the code considerably. Unfortunately, this is easier said than done, for three main reasons:
- Finding the changes will be challenging in the first place.
- Since most of these changes were done at least seven years ago, they tend to have been buried under later changes, which makes reversal nontrivial.
- Since many of these changes were breaking, reverting them will be a breaking change again.
To address this, I would like to do the following:
- Curate a list of changes that should be reverted, in the current issue ticket. This is, of course, subject to discussion. Suggestions for candidates are very welcome.
- Postpone reverting the changes until a major version update is near.
- Revert the changes from the list in the reverse order of application, on a
future
branch. - Base the new major version on the
future
branch.
Candidate list (to be updated as the discussion progresses):