计划执行与检查节点
executing-plans
按既定实施计划完成工作,保持过程检查和反馈。
submit-to-cran【效率与协作】Vollstaendiges Verfahren zur Einreichung eines R-Pakets bei CRAN, einschliesslich Vorpruefungen (lokal, win-builder, R-hub), Vorbereitung der cran-comments.md, URL- und Rechtschreibpruefung sowie der eigentlichen Einreichung. Deckt Ersteinreichungen und Aktualisierungen ab. Verwenden, wenn ein Paket fuer die erstmalige Veroeffentlichung auf CRAN bere…
独立 GitHub 快照 · 自动分类 · 以原作者文档为准
Den vollstaendigen CRAN-Einreichungsworkflow von den Vorabpruefungen bis zur Einreichung ausfuehren.
R CMD check mit 0 Fehlern und 0 Warnungen bestehtVersion in DESCRIPTION verifizieren:
desc::desc_get_version()
Sicherstellen, dass NEWS.md einen Eintrag fuer diese Version enthaelt. Der Eintrag sollte benutzerseitige Aenderungen zusammenfassen.
Erwartet: Version folgt semantischer Versionierung. NEWS.md hat einen passenden Eintrag fuer diese Version.
Bei Fehler: Version mit usethis::use_version() aktualisieren (Auswahl: "major", "minor" oder "patch"). Einen NEWS.md-Eintrag mit benutzerseitigen Aenderungen hinzufuegen.
devtools::check()
Erwartet: 0 Fehler, 0 Warnungen, 0 Hinweise (1 Hinweis bei Ersteinreichungen akzeptabel: "New submission").
Bei Fehler: Alle Fehler und Warnungen vor dem Fortfahren beheben. Das Pruefprotokoll unter <pkg>.Rcheck/00check.log fuer Details lesen. Hinweise sollten in cran-comments.md erlaeutert werden.
devtools::spell_check()
Legitime Woerter zu inst/WORDLIST hinzufuegen (ein Wort pro Zeile, alphabetisch sortiert).
Erwartet: Keine unerwarteten Rechtschreibfehler. Alle markierten Woerter sind entweder korrigiert oder zu inst/WORDLIST hinzugefuegt.
Bei Fehler: Echte Rechtschreibfehler beheben. Fachbegriffe zu inst/WORDLIST hinzufuegen (ein Wort pro Zeile, alphabetisch sortiert).
urlchecker::url_check()
Erwartet: Alle URLs liefern HTTP 200 zurueck. Keine defekten oder weitergeleiteten Links.
Bei Fehler: Defekte URLs ersetzen. \doi{} fuer DOI-Links anstelle von rohen URLs verwenden. Links zu nicht mehr vorhandenen Ressourcen entfernen.
devtools::check_win_devel()
devtools::check_win_release()
Auf E-Mail-Ergebnisse warten (in der Regel 15-30 Minuten).
Erwartet: 0 Fehler, 0 Warnungen fuer Win-builder release und devel. Ergebnisse kommen per E-Mail innerhalb von 15-30 Minuten an.
Bei Fehler: Plattformspezifische Probleme beheben. Haeufige Ursachen: unterschiedliche Compiler-Warnungen, fehlende Systemabhaengigkeiten, Pfadtrennzeichen-Unterschiede. Lokal beheben und erneut an Win-builder senden.
rhub::rhub_check()
Prueft auf mehreren Plattformen (Ubuntu, Windows, macOS).
Erwartet: Alle Plattformen bestehen mit 0 Fehlern und 0 Warnungen.
Bei Fehler: Wenn eine bestimmte Plattform fehlschlaegt, das R-hub-Build-Protokoll nach plattformspezifischen Fehlern durchsuchen. testthat::skip_on_os() oder bedingten Code fuer plattformabhaengiges Verhalten verwenden.
cran-comments.md im Paketstammverzeichnis erstellen oder aktualisieren:
## R CMD check results
0 errors | 0 warnings | 1 note
* This is a new release.
## Test environments
* local: Windows 11, R 4.5.0
* win-builder: R-release, R-devel
* R-hub: ubuntu-latest (R-release), windows-latest (R-release), macos-latest (R-release)
## Downstream dependencies
There are currently no downstream dependencies for this package.
Fuer Aktualisierungen Folgendes einschliessen:
Erwartet: cran-comments.md fasst die Pruefergebnisse aller Testumgebungen korrekt zusammen und erlaeutert alle Hinweise.
Bei Fehler: Wenn Pruefergebnisse zwischen Plattformen abweichen, alle Abweichungen dokumentieren. CRAN-Pruefer werden diese Angaben mit eigenen Tests vergleichen.
# One last check
devtools::check()
# Verify the built tarball
devtools::build()
Erwartet: Abschliessender devtools::check() wird sauber bestanden. Ein .tar.gz-Tarball wird im uebergeordneten Verzeichnis erstellt.
Bei Fehler: Wenn ein letztes Problem auftaucht, es beheben und alle Pruefungen ab Schritt 2 erneut ausfuehren. Nicht mit bekannten Fehlern einreichen.
devtools::release()
Fuehrt interaktive Pruefungen durch und reicht ein. Alle Fragen ehrlich beantworten.
Alternativ manuell unter https://cran.r-project.org/submit.html einreichen, indem das Tarball hochgeladen wird.
Erwartet: Bestaetigung per E-Mail von CRAN kommt innerhalb weniger Minuten an. Auf den Bestaetigunslink klicken, um die Einreichung abzuschliessen.
Bei Fehler: E-Mail auf Ablehnungsgruende pruefen. Haeufige Probleme: Beispiele zu langsam, fehlende \value-Tags, nicht portierbarer Code. Probleme beheben und erneut einreichen, dabei in cran-comments.md vermerken, was geaendert wurde.
Nach der Annahme:
# Tag the release
usethis::use_github_release()
# Bump to development version
usethis::use_dev_version()
Erwartet: GitHub-Release mit dem angenommenen Versions-Tag erstellt. DESCRIPTION auf die Entwicklungsversion (x.y.z.9000) angehoben.
Bei Fehler: Wenn das GitHub-Release fehlschlaegt, es manuell mit gh release create erstellen. Wenn die CRAN-Annahme verzoegert ist, auf die Bestaetigung per E-Mail warten, bevor getaggt wird.
R CMD check liefert 0 Fehler, 0 Warnungen auf dem lokalen Rechnercran-comments.md beschreibt die Pruefergebnisse korrekt\donttest{} einschliessen. CRAN setzt Zeitlimits durch..Rbuildignore pruefen)\value in Dokumentation: Alle exportierten Funktionen benoetigen ein @return-Tag.Renviron gebaut werden koennenrevdepcheck::revdep_check() ausfuehren# Full pre-submission workflow
devtools::spell_check()
urlchecker::url_check()
devtools::check()
devtools::check_win_devel()
rhub::rhub_check()
# Wait for results...
devtools::release()
release-package-version - Versionserhoehung und Git-Taggingwrite-roxygen-docs - Dokumentation sicherstellen, die CRAN-Standards erfuelltsetup-github-actions-ci - CI-Pruefungen, die CRAN-Anforderungen spiegelnbuild-pkgdown-site - Dokumentationswebsite fuer angenommene Pakete