Skip to content

chore: menage packaging, imports et scories#56

Merged
VincentGuyader merged 1 commit into
audit-0.4.10from
chore/issue-34-cleanup
Jul 3, 2026
Merged

chore: menage packaging, imports et scories#56
VincentGuyader merged 1 commit into
audit-0.4.10from
chore/issue-34-cleanup

Conversation

@VincentGuyader

Copy link
Copy Markdown
Member

Closes #34

Packaging

  • inst/templates/rules_template.yaml orphelin supprime (reference nulle part, verifie system.file)
  • imports purges : dplyr::arrange/across retires du NAMESPACE (arrange inutilise, across toujours qualifie), stats::setNames remplace par une construction base (stats sort de DESCRIPTION - c'etait la note du check) ; ^dev$ etait deja arrive par la PR docs: RFC surface d'API 0.5 (design a discuter, rien d'implemente) #54

Scories de code (equivalences verifiees par la review interne)

  • numeric_abs = 1e-9 lisible (au lieu du litteral a 9 zeros)
  • is_non_local() reutilise is_arrow() (liste de classes Arrow definie une fois)
  • abs(ref_vals) et la constante IEEE hisses hors des kernels et boucles (bit-identique, garde d'equivalence verte)
  • tol_col_counts() : length(ok) - sum(ok, na.rm = TRUE) sans allocations intermediaires (equivalence algebrique + empirique TRUE/FALSE/NA)
  • format_key_examples() tronque a 3 groupes AVANT de formater
  • preprocess_dataframe() lazy : UNE mutate() composee pour toutes les colonnes normalisees (l'anti-pattern O(colonnes) dbplyr elimine partout ailleurs en 0.4.8)
  • variables de boucle c renommees col_nm (masquaient base::c) dans 4 fichiers
  • note d'overflow integer documentee sur le kernel tolerance

Ecarte sciemment (motive dans NEWS)

  • rendu gt en session non interactive : print = rendu, comportement voulu
  • garde DBI : transitive via duckdb, statu quo

Suite complete : 1023 PASS / 0 FAIL. Check --as-cran 0 erreur / 0 warning (la note stats disparait avec cette PR).

Review interne

pr-reviewer : APPROVE (equivalences setNames/structure, comptage NA, head-avant-format verifiees empiriquement), nit d'indentation applique.

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR is a maintenance-focused cleanup addressing issue #34: it removes orphan packaging artifacts, trims unused imports/dependencies, and applies small performance/clarity refactors in hot-path code without changing user-visible behavior (per PR description and green test suite).

Changes:

  • Packaging/deps cleanup: remove unused imports (dplyr::arrange/across, stats::setNames) and drop stats from DESCRIPTION; delete orphan inst/templates/rules_template.yaml.
  • Performance/memory tweaks in comparison internals (tolerance kernels, coverage counting, and lazy preprocessing query construction).
  • Minor readability cleanups (loop variable renames to avoid shadowing base::c, clearer numeric literal defaults, reduced duplication for Arrow class detection).

Reviewed changes

Copilot reviewed 11 out of 11 changed files in this pull request and generated 1 comment.

Show a summary per file
File Description
R/utils.R Deduplicates Arrow class checks via is_arrow() reused by is_non_local().
R/tolerance.R Hoists repeated computations out of kernels/loops; documents integer overflow caveat; avoids c shadowing.
R/preprocessing.R Refactors lazy normalization to accumulate expressions and apply a single mutate() (dbplyr plan size reduction).
R/pointblank_setup.R Renames loop variables to avoid shadowing base::c.
R/duplicate_keys.R Truncates displayed key groups before formatting examples (less work on large key sets).
R/coverage.R Counts tolerance failures without allocating intermediate logical vectors; avoids c shadowing.
R/compare_datasets_from_yaml.R Replaces stats::setNames usage with base construction; updates defaults/readability; avoids c shadowing.
NEWS.md Documents the packaging + internal cleanup outcomes and deliberate non-changes.
NAMESPACE Removes unused imports (across, arrange, setNames).
inst/templates/rules_template.yaml Deletes orphan template file.
DESCRIPTION Drops stats from Imports.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread R/tolerance.R Outdated
Comment on lines +24 to +27
#' @note Integer columns are compared through the same double arithmetic:
#' \code{cand - ref} on integer vectors can overflow to NA with a warning
#' near \code{.Machine$integer.max}; cast to double upstream if your keys
#' or values approach that range.

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Valide : la soustraction est bien entiere quand les deux colonnes le sont (le double n'intervient qu'apres, pour thresh), et « keys » n'avait rien a faire la. Note reecrite : overflow de la DIFFERENCE au-dela de integer.max -> NA + warning, NA compte comme echec, caster en double en amont.

- .Rbuildignore ^dev$ (le RFC et les benchs ne partent plus dans le
  tarball) ; inst/templates/rules_template.yaml orphelin supprime
- imports : dplyr arrange/across retires, stats::setNames remplace par
  une construction base ; numeric_abs = 1e-9 lisible
- is_non_local reutilise is_arrow (liste de classes Arrow definie une
  fois) ; abs(ref_vals) et la constante IEEE hisses hors des kernels et
  boucles ; tol_col_counts compte sans allocations intermediaires ;
  format_key_examples tronque avant de formater
- preprocess_dataframe lazy : UNE seule mutate() composee pour toutes
  les colonnes normalisees (anti-pattern O(colonnes) dbplyr)
- variables de boucle c renommees (masquaient base::c) dans
  pointblank_setup, coverage, tolerance, compare
- note d'overflow integer documentee sur le kernel
- ecartes explicitement (wontfix motives dans NEWS) : rendu gt en session
  non interactive (print = rendu), garde DBI transitive via duckdb
@VincentGuyader
VincentGuyader force-pushed the chore/issue-34-cleanup branch from 75d489c to b928347 Compare July 3, 2026 10:41
@VincentGuyader
VincentGuyader merged commit aa5fa6f into audit-0.4.10 Jul 3, 2026
6 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants