-
Notifications
You must be signed in to change notification settings - Fork 12
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
Proposal: Improving the package #45
Comments
@dieghernan I think one huge component that is missing from Phase 2 is addressing the underlying memory leaks. Or is this what "alternative solutions" means? I should note that work was initially started by @matthewwiese in #40. |
I did start work on fixing the rchk warnings some months back and made good progress, although I never updated the PR because I wasn’t able to eliminate
However, my changes still didn’t solve problems like #42, which suggests something more fundamental. I can update the PR with what I have if it'll be of benefit, but unfortunately I don't have the time to devote the proper attention to this. I agree that any project to improve the package is moot unless the memory bugs are addressed. |
Thanks both for your comments. For clarity, what I am talking about in Phase 2 is to rewrite the package using base R rather to fix the current one, i.e. dropping the C code. This is kind of risky, so it is important to have a full battery of tests covering the most extreme cases. I am aware that Phase 2 may not be satisfactory, but even in the case you decide not to adopt it (it would be fine for me) I think it is worth to try |
For what it's worth, I think rewriting in R is a good idea. It eases future maintenance and allows existing users of the package to keep on working with only a minor performance penalty. If for some reason the parsing of BibTeX files is a bottleneck, one could always switch to rbibutils which appears to roll a hand-written C parser. I don't know whether you're a student @dieghernan, but this could make for a great GSoC project if @coatless is up for it. |
* Upgrade testing suite to testthat 3 * Add testing for previous issues #45 * Add tests for standard bibtex entries As defined in BibTEX version 0.99b https://ctan.javinator9889.com/biblio/bibtex/base/btxdoc.pdf * Update actions * Add testing for examples * Add snapshots for examples read.bib This may fail on some platforms * Skip on non windows Possibly a character problem related with #20 and #43 * Not test on R 3.4 Some changes in default parsing (snapshot), but results are still ok * Add more tests * Try to increase coverage * One more tests for do_read_bib * Fix test for do_read_bib * Revert actions * Add devtools for testing * Add more tests * Add test for multiline string * Add non standard field names * Add myself as author * Move issues to inst/bib files * Refactor tests for avoiding cluttering
* Upgrade testing suite to testthat 3 * Add testing for previous issues #45 * Add tests for standard bibtex entries As defined in BibTEX version 0.99b https://ctan.javinator9889.com/biblio/bibtex/base/btxdoc.pdf * Update actions * Add testing for examples * Add snapshots for examples read.bib This may fail on some platforms * Skip on non windows Possibly a character problem related with #20 and #43 * Not test on R 3.4 Some changes in default parsing (snapshot), but results are still ok * Add more tests * Try to increase coverage * One more tests for do_read_bib * Fix test for do_read_bib * Revert actions * Add devtools for testing * Add more tests * Add test for multiline string * Add non standard field names * Add myself as author * Move issues to inst/bib files * Refactor tests for avoiding cluttering * Modify do_read_bib() Also bump version * Remove C code :) * Recreate snapshots on Linux * Check reverse dependencies * Add backports * Deprecate arguments * Use seq_along Co-authored-by: James J Balamuta <coatless@users.noreply.github.com> * Use seq_along again Co-authored-by: James J Balamuta <coatless@users.noreply.github.com> * Remove completely header and footer * Document internal functions * Rename internal params * Use vapply and new tests * Rerun revdeps * Update docs and snapshots * Update revdep and check action Some snapshots changes due to changes on toBibTex() on later versions of R, not related with the package * Fix action and snapshots Co-authored-by: James J Balamuta <coatless@users.noreply.github.com>
Closed as #47 is now in and the package is back on CRAN. |
Hi
Following #28 find here a proposed roadmap for improving the package. This is to be discussed:
Phase 1: Current state
Add test ideally based in snapshot (testthat >= 3):
Tests
Phase 2: Alternative solution
Phase 3: Agree on changes
Nice to have
bibtex.R
Happy to get feedback on this
The text was updated successfully, but these errors were encountered: