question-mark
Stuck on an issue?

Lightrun Answers was designed to reduce the constant googling that comes with debugging 3rd party libraries. It collects links to all the places you might be looking at while hunting down a tough bug.

And, if you’re still stuck at the end, we’re happy to hop on a call to see how we can help out.

Split the repository in two

See original GitHub issue

Brought up in #227, this issue raises the possibility of splitting this repository in two.

In my opinion, Snabbdom is too bloated: my use case requires a custom h function; custom modules; and I have no use for thunks. The core patching algorithm (together with the vnode representation) is the only part of Snabbdom that I try to keep untouched in my own fork (I made some simplifications).

With this, I would like to propose the splitting of this repository in two repositories: something like snabbdom-core, which would mainly contain the core algorithm, possibly with vnode (I’d be okay with removing vnode from it too); and some other repository, say snabbdom-utils or even simply snabbdom, containing the h function, modules, thunks, DOM API, and anything else that might be useful for the “common” users of the library.

What do you guys think?

Issue Analytics

  • State:closed
  • Created 7 years ago
  • Reactions:1
  • Comments:17 (14 by maintainers)

github_iconTop GitHub Comments

3reactions
TylorScommented, Jan 26, 2017

I’m not sure of the impacts of splitting diff and patch; it seems to me like it would be a whole different algorithm

I’m pretty sure that splitting the diffing and patching in snabbdom is going to lead to more downsides than upsides. Combining the 2 processes, to my best knowledge, has a lot to do with the performance that snabbdom achieves. A lot of the hook/module behavior is dependent on knowing a lot of information about the process as a whole, and my own investigation to split the 2 usually lead to trade-offs around the types of vNode/module hooks that are achievable. One thing I’ve always loved about snabbdom is its modules and the ability to create very cool things using modules. So personally, I’d be very unexcited to see that behavior change.

2reactions
TylorScommented, Jan 26, 2017

I’d propose using npm scoped packages if this is decided upon. Then the name of this “core” could be @snabbdom/core. It’s a good way to differentiate what are “official” snabbdom packages and which are 3rd party snabbdom-foo.

Read more comments on GitHub >

github_iconTop Results From Across the Web

Splitting a subfolder out into a new repository - GitHub Docs
Splitting a subfolder out into a new repository · Open TerminalTerminalGit Bash. · Change the current working directory to the location where you...
Read more >
Splitting Your Git Repo While Maintaining Commit History
How to Split your Repo: · 1. Check you are in the root directory of your repo. · 2. Check you are in...
Read more >
How to split Git repositories into two - End Point Dev
What you need to do is to go through each and every commit in git history for every branch and filter out commits...
Read more >
Detach (move) subdirectory into separate Git repository
install git splits . · Split the directories into a local branch #change into your repo's directory cd /path/to/repo #checkout the branch git ......
Read more >
Howto split a git repository into two (Example) - Coderwall
Howto split a git repository into two ; git clone --no ; git remote rm origin % git remote ; cd foo %...
Read more >

github_iconTop Related Medium Post

No results found

github_iconTop Related StackOverflow Question

No results found

github_iconTroubleshoot Live Code

Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start Free

github_iconTop Related Reddit Thread

No results found

github_iconTop Related Hackernoon Post

No results found

github_iconTop Related Tweet

No results found

github_iconTop Related Dev.to Post

No results found

github_iconTop Related Hashnode Post

No results found