ThinkR-open / ThinkR-open/datadiff

[API] Surface d'export à assainir et contradictions NEWS : %||% ré-exporté, défaut lang="fr" non documenté, exports sans usage documenté

Open
#26 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
R
Stars
6
Forks
0
PR merge metrics
No merged PRs in 30d

Description

Contexte

Plusieurs écarts entre le NEWS, la doc et le code, vérifiés dans l'historique git :

  1. %||% : NEWS 0.4.4 affirme « no longer exported to avoid namespace conflicts with rlang » — et le commit de release 0.4.4 (099544a) l'avait bien dé-exporté. Le commit suivant « Perf (#1) » (d98ae33) a ré-introduit @export + export("%||%") sans entrée NEWS, et test-utils.R:8-10 verrouille même l'export. Le NEWS et le test affirment donc le contraire l'un de l'autre. L'export masque rlang::%||% et base::%||% (R ≥ 4.4) au chargement.
  2. Langue par défaut : NEWS 0.4.4 annonce le passage à "en"/"en_US" ; le même commit « Perf (#1) » l'a re-basculée à "fr"/"fr_FR" sans entrée NEWS (code actuel : lang = "fr"). La vignette §14 affirme « By default, pointblank reports are rendered in English » — faux. Ni le README ni la vignette ne signalent le défaut réel.
  3. Label franglais : NEWS 0.4.4 annonce la correction du préfixe « comparaison » → « comparison » dans write_rules_template(), mais le code génère toujours paste("comparaison", ...).
  4. Exports sans usage documenté : normalize_text, validate_row_counts, setup_pointblank_agent n'apparaissent ni dans le README ni dans la vignette (grep vide) — candidats à l'internalisation. Le noyau utilisateur réel tient en ~6 fonctions (compare_datasets_from_yaml, write_rules_template, read_rules, datadiff_report_html, analyze_columns, add_tolerance_columns pour le debug).

Reprex

library(rlang)
library(datadiff)
#> Attachement du package : 'datadiff'
#> L'objet suivant est masqué depuis 'package:rlang' : %||%

formals(datadiff::compare_datasets_from_yaml)$lang   # "fr" — la vignette dit "en"

Critères de succès

  • Décision tranchée et documentée dans NEWS pour chacun : %||% (proposition : ré-internaliser, conforme au NEWS 0.4.4), défaut lang (garder "fr" et corriger vignette/README, ou passer à "en" comme annoncé), label « comparaison ».
  • test-utils.R aligné sur la décision (plus de test verrouillant un export contredit par le NEWS).
  • Exports sans usage documenté : internalisés avec cycle de dépréciation, ou documentés dans la vignette avec un cas d'usage réel.
  • library(datadiff) après library(rlang) ne masque plus aucun objet (si internalisation retenue).

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by reading NEWS 0.4.4, test-utils.R, the README, and the vignette, then inspect the exports and lang default referenced in the issue. Trace write_rules_template() and the undocumented helpers, and compare their current behavior with the documented claims. Done means each discrepancy has a documented decision, aligned tests and documentation, and no unintended namespace masking.

Written by the indexing model from the issue text.

Assessment

Tech stack
r
Domain
api, documentation, testing-qa
Issue type
Refactor
Difficulty
5/5
Estimated time
Over a week
Activity status
Quiet
Clarity
Mostly clear
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.