Dernières étapes

Développer des packages R

Jasmin Ludolf

Content Developer

Structure d'un package R

Structure d'un package R

Développer des packages R

Versions de package

Exemple : tidyr 1.3.0

  • Format : <major>.<minor>.<patch>.<dev>
  • Par défaut : 0.0.0.9000
  • 9000 : package en développement
Développer des packages R

Règles d'incrémentation de version

Format : <major>.<minor>.<patch>.<dev>

  • dev : rarement modifié, à retirer pour une version publiée
  • patch : modifié pour des correctifs de bugs
    • Plus de bugs avant changement de fonctionnalités
  • minor : petites fonctionnalités ajoutées avant la première version
    • Le numéro patch revient à 0
  • major : package jugé stable pour publication
    • De 1.5.3 à 2.0.0 : l'ancien code peut casser

 

  • Plus en développement : 0.0.0.9000 -> 0.0.0
  • Un bug corrigé : 0.0.1
  • Un autre bug corrigé : 0.0.2
  • Fonctionnalité ajoutée : 0.1.0

 

  • Stable pour publication : 1.0.0
  • Gros changements : 2.0.0
Développer des packages R

Mettre à jour le titre, l'auteur, la version et la description

Package: unitConverter
Title: What the Package Does (One Line, Title Case)

Version: 0.0.0.9000
Authors@R: person("First", "Last", , "[email protected]", role = c("aut", "cre"), comment = c(ORCID = "YOUR-ORCID-ID"))
Description: What the package does (one paragraph).
Package: unitConverter
Title: Unit Conversion Utilities for Distance, 
    Time, Weight, and Temperature

Version: 0.1.0
Authors@R: person("Jasmin", "Ludolf", , "[email protected]", role = c("aut", "cre"))
Description: The `unitConverter` package provides a collection of utility functions for converting distance, time, weight, and temperature values. It offers seamless conversion between various units within each category, allowing users to easily transform measurement data.
Développer des packages R

Documenter un fichier de données

use_r("temperature_data")

Modifier R/temperature_data.R :

#' Temperature values and units
#'

#' Temperature values and corresponding unit (Celsius, Fahrenheit, or Kelvin)
#' @format Data frame with two columns and 1000 rows
#' \describe{ #' \item{value}{Numeric temperature value.} #' \item{unit}{Temperature unit.} #' }
#' @examples #' temperature_data
"temperature_data"
roxygenize()
Développer des packages R

Que vérifie devtools::check() ?

devtools::check()

  • Le package peut-il être installé
  • Les informations DESCRIPTION sont correctes
  • Dépendances du package
  • Erreurs de syntaxe dans le code
  • Documentation complète
  • Tests exécutés avec succès
  • Vignettes construites avec succès

Coche

Développer des packages R

Exécuter devtools::check()

Vérification de unitConverter GIF

Développer des packages R

Passons à la pratique !

Développer des packages R

Preparing Video For Download...