bundler-site icon indicating copy to clipboard operation
bundler-site copied to clipboard

Unify duplicated use of rdiscount/kramdown and hpricot/nokogiri

Open tnir opened this issue 2 years ago • 1 comments

Use nronn to unify use of rdiscount with kramdown, and to unify use of hpricot with nokogiri.

  1. rdiscount and kramdown both provide similar functionality: avoid to use rdicount
  2. hpricot and nokogiri both provide similar functionality: avoid to use hpricot
  3. Tested with Ruby 3.1 in CI (ronn has never continuously tested 😭).

Signed-off-by: Takuya Noguchi [email protected]>

tnir avatar Aug 01 '22 11:08 tnir

I think it's a bit unfair to not mention ronn-ng at all here, since it's ronn-ng which took care of removing this dependency duplication. I think you should try to get ronn-ng mantainer to hand over maintenance to you, to save the whole community yet another migration to a different gem (I think OS packagers are already using ronn-ng).

If you don't succeed on taking over maintenance, then I think you should at least credit ronn-ng in this PR and in nronn's README. Also, I'm not sure why you didn't create nronn as a fork of ronn-ng, since that's what it is.

deivid-rodriguez avatar Aug 02 '22 07:08 deivid-rodriguez

We're getting segfaults with ronn-ng now for some reason. Maybe nronn fixes them? What was the regression that you found, @tnir? The new fork looked pretty great. I think as long as we give proper attribution to ronn-ng, we could move forward with it!

deivid-rodriguez avatar Dec 25 '22 18:12 deivid-rodriguez

@deivid-rodriguez Thanks. Were you looking at this failure only in GitHub Actions environment? I was not able to find failures even with ronn-ng on my local.

  • Failed job: https://github.com/rubygems/bundler-site/actions/runs/3776821410/attempts/1
  • and re-run succeeded job: https://github.com/rubygems/bundler-site/actions/runs/3776821410

tnir avatar Dec 25 '22 21:12 tnir

Anyway merge conflicts are now all resolved.

tnir avatar Dec 25 '22 22:12 tnir

@tnir Yes, I was looking at those failures indeed. Sometimes it does work, but they seem more frequent now. Since the crash happens deep inside hpricot's gem code, I figure moving away from that gem would do the trick.

Hpricot hasn't received updates for almost 10 years and declares itself as dead in its README, recommending to move on to nokogiri like nronn does.

I had a look at the site built from this PR and everything looks fine!

deivid-rodriguez avatar Dec 26 '22 10:12 deivid-rodriguez

@tnir Would you be willing to take over ronn-ng maintenance? If current maintainer is ok with that, that'd be probably best for the community.

deivid-rodriguez avatar Dec 26 '22 18:12 deivid-rodriguez

We can ask the current maintainer and see what he thinks. I don't think that needs to block this PR though, we could ask and merge this PR, and then switch back to ronn-ng in the future if the answer is positive.

deivid-rodriguez avatar Dec 26 '22 18:12 deivid-rodriguez

Actually I'm doubly confused now that I double checked dependencies, since ronn-ng has also dropped the dependency on both nokogiri and rdiscount. What's the difference between nronn and ronn-ng?

deivid-rodriguez avatar Dec 27 '22 10:12 deivid-rodriguez