Skip to content
This repository has been archived by the owner on Dec 15, 2022. It is now read-only.

fix #2 - fuzzaldrin-plus #20

Open
wants to merge 4 commits into
base: master
Choose a base branch
from
Open

fix #2 - fuzzaldrin-plus #20

wants to merge 4 commits into from

Conversation

mateusvahl
Copy link
Contributor

This aims to fix issue #2.
As as far as I checked, the difference between fuzzaldrin and fuzzaldrin-plus is the better result quality. There's no API differences for score method, all tests are passing.

@50Wliu Could you please confirm if this resolves the issue?
Thanks.

@50Wliu
Copy link
Contributor

50Wliu commented Oct 2, 2017

I am of course 👍 on this but I'd like @as-cii to voice his thoughts on it as well.

@as-cii
Copy link
Contributor

as-cii commented Oct 2, 2017

Thanks for this pull-request, @Mateuspv. And thanks @50Wliu for the heads-up. ⚡️

I am cool with switching to fuzzaldrin-plus, but it'd be nice to confirm it works well with all the packages that currently use atom-select-list:

  • bookmarks
  • command-palette
  • encoding-selector
  • fuzzy-finder
  • git-diff
  • grammar-selector
  • line-ending-selector
  • snippets
  • spell-check
  • styleguide
  • symbols-view

@50Wliu @Mateuspv: are you interested in helping out with that? It should be enough to npm link this branch on each of the above package, ensure specs still pass and perform a manual test of the basic functionality.

@mateusvahl
Copy link
Contributor Author

Hi @as-cii , I can review this next weekend, but wold be great if someone else double check.
thnx.

@as-cii
Copy link
Contributor

as-cii commented Oct 3, 2017

Nice @Mateuspv, thanks! ✨

@ungb @Ben3eeE: could you help @Mateuspv test his upcoming pull-requests that upgrade atom-select-list on the aforementioned packages in order to use fuzzaldrin-plus?

@Ben3eeE
Copy link
Contributor

Ben3eeE commented Oct 3, 2017

@as-cii Happy to help test the PRs ✨

@Mateuspv You can @mention me in the upcoming PRs and I will take a look at them.

@caesarsol
Copy link

Hello guys, thanks for your work on this, exactly what I was looking for!

Do you have any idea on when this PR can be merged?
Do you need any help on testing out the mentioned list of 3rd party packages?

@as-cii
Copy link
Contributor

as-cii commented Jan 15, 2018

Hello @caesarsol, and thanks for offering your help! 🙇

Unfortunately it seems like no progress has been made on upgrading the packages I mentioned in #20 (comment). However, if you are interested, we would welcome your contributions on the aforementioned packages! Like I said earlier, it should be enough to:

  • npm link this branch on each package
  • Ensure specs still pass
  • Perform a manual test of the basic functionality

@olsonpm
Copy link

olsonpm commented Jan 23, 2018

Well this took me some time as I haven't built atom from source or used ubuntu in a while nor was I familiar with most of those packages, but I went through all the testing you outlined @as-cii

To be specific, for each package I ran atom --test spec before and after npm linking atom-select-list.
Then I manually tested the atom-select-list behavior for each package before and after npm linking.

This was done on a fresh ubuntu 16.04 vm.

Edit: Just realized the README should also be updated (it mentions/links fuzzaldrin)

@as-cii
Copy link
Contributor

as-cii commented Feb 5, 2018

Nice work, @olsonpm. Thanks for your help! 💯

Can you open a pull request on each of the aforementioned packages and link them here? After doing that, I would love to get extra 👀 from @Ben3eeE and @50Wliu to ensure we are not introducing any regression.

@olsonpm
Copy link

olsonpm commented Feb 9, 2018

Hmm I'm confused. Mind explaining what the PR would contain? Would it be a placeholder with a "to-be" bump in the minor revision for "atom-select-list"?

I will definitely do whatever though.

@as-cii
Copy link
Contributor

as-cii commented Feb 9, 2018

Hmm I'm confused. Mind explaining what the PR would contain? Would it be a placeholder with a "to-be" bump in the minor revision for "atom-select-list"?

Good point, for some of those packages we can't really open a pull request because it would just be a version bump (and we can't really bump the version until we merge this pull request and release a new version of atom-select-list).

However, I think there is a subset of those packages that require more complex changes. For example, after a quick look, it seems like fuzzy-finder contains some logic to explicitly use fuzzaldrin-plus instead of fuzzaldrin, and if we use fuzzaldrin-plus by default we will have to invert that logic (or consider removing the useAlternateScoring setting altogether).

So here's a proposal:

  • List out all the packages that are simple version bumps.
  • Open pull requests for packages that require a more complex change (e.g. fuzzy-finder) and list them as well.

After doing that, we can start QA'ing them all and ensure we're not breaking anything. What do you think, @olsonpm?

@olsonpm
Copy link

olsonpm commented Feb 9, 2018

ha thanks for the link into fuzzy-finder's usage of fuzzaldrin-plus. Makes sense and I'll do that.

@olsonpm
Copy link

olsonpm commented Feb 10, 2018

Looks like there's only two packages that will require PRs, symbols-view and fuzzy-finder. Command-palette depends on fuzzaldrin & plus but it overrides atom-select-list's filter altogether so is unaffected.

One question before I create the PRs though - what those three packages have in common is they use fuzzaldrin's match to highlight the characters which match the query. I don't want to work heavily in coffeescript, but I could add a PR to at least expose the match used by this library so consumers have the choice of using that as opposed to hard-depending on fuzzaldrin itself. Let me know what you think when you're able - the PRs for the symbols-view and fuzzy-finder will differ depending on whether we expose match.

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

Successfully merging this pull request may close these issues.

None yet

6 participants