Skip to content

refactor: 💡 convert prototype to class #728

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

Draft
wants to merge 5 commits into
base: master
Choose a base branch
from

Conversation

jamashita
Copy link
Contributor

Hi there!
I convert the prototype-based implementation to a class-based implementation! Please have a look!

@markstos
Copy link
Collaborator

markstos commented May 1, 2023

👍🏼 Looks like this doesn't cause any new test failures.

@markstos
Copy link
Collaborator

markstos commented May 1, 2023

I'm in favor of merging this, but would like to get #704 resolved first. You are welcome to take a look if you'd like.

@markstos
Copy link
Collaborator

markstos commented May 1, 2023

This appears to conflict with your other PR. I'll merge it when the conflicts are resolved.

@jamashita
Copy link
Contributor Author

Hi sir! I've resolved all the conflicts! I believe it should be good to go now! 💪 😊

@jdmarshall
Copy link
Collaborator

I would love to get util factored completely out, but it is stateful in a couple of places that make that tricky.

this might be a step toward that eventuality, or at least it doesn’t seem to make things worse..

LGTM

@jdmarshall
Copy link
Collaborator

I think we could also start using nullish operators, but that would necessitate bumping to node 14 and trunk is still on 10.0.0

@jdmarshall
Copy link
Collaborator

@markstos can we land this in 3.x or should this be 4.0?

@markstos
Copy link
Collaborator

@jdmarshall It's /probably/ not breaking, but as we are making good progress towards 4.0. But since I think 4.0 will be the next release, we can go ahead and merge.

@jdmarshall
Copy link
Collaborator

I got a merge conflict when I tried to rebase to see if this was still viable. util is a very very weird class. maybe making it into a Class doesn't change that for better or worse.

@markstos markstos marked this pull request as draft April 24, 2025 17:28
@markstos
Copy link
Collaborator

Converting back to draft as there are conflicts to resolve again.

@jdmarshall
Copy link
Collaborator

I may try to land this after #816
I’m a little surprised this didn’t break unit tests for extendDeep

@jdmarshall
Copy link
Collaborator

jdmarshall commented Jul 1, 2025

I'm now thinking this would be a good candidate for 4.2. I'm hoping to remove most of the deprecated forwarding functions in config.js then, which will make this change have less to touch.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants
pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy