Skip to content

[R] CRAN packaging checklist for version 12.0.0 #35216

Description

@paleolimbot

Describe the enhancement requested

Packaging checklist for CRAN release

For a high-level overview of the release process see the
Apache Arrow Release Management Guide.

Before the release candidate is cut:

  • Create a GitHub issue
    entitled [R] CRAN packaging checklist for version X.X.X
    and copy this checklist to the issue.
  • Evaluate the status of any failing
    nightly tests and nightly packaging builds. These checks
    replicate most of the checks that CRAN runs, so we need them all to be passing
    or to understand that the failures may (though won't necessarily) result in a rejection from CRAN.
  • Check current CRAN check results
  • Ensure the contents of the README are accurate and up to date
  • Run urlchecker::url_check() on the R directory at the release candidate
    commit. Ignore any errors with badges as they will be removed in the CRAN release branch.
  • Polish NEWS but do not update version numbers (this is done automatically later).
  • For major releases, prepare tweet thread highlighting new features

Wait for the release candidate to be cut:

  • Release candidate!
  • Create a CRAN-release branch from the release candidate commit

Make pull requests into the autobrew and
rtools-packages repositories
used by the configure script on MacOS and Windows. These pull requests will
use the release candidate as the source.

Prepare and check the .tar.gz that will be released to CRAN.

  • git fetch upstream && git checkout release-X.X.X-rcXX && git clean -f -d
  • Run make build. This copies Arrow C++ into tools/cpp, prunes some
    unnecessary components, and runs R CMD build to generate the source tarball.
    Because this will install the package, you will need to ensure that the version
    of Arrow C++ available to the configure script is the same as the version
    that is vendored into the R package (e.g., you may need to unset ARROW_HOME).
  • devtools::check_built("arrow_X.X.X.tar.gz") locally
  • Run reverse dependency checks. Currently this is a
    manual process;
    however, in the future it may be a crossbow nightly job.

Wait for the official release...

Create new autobrew and r-windows PRs such that they use the release
instead of the release candidate; ensure linux binary packages are available:

Check binary Arrow C++ distributions specific to the R package:

  • Upload the .tar.gz to win-builder (r-devel only)
    and confirm (with Nic, who will automatically receive an email about the results) that the check is clean.
    This step cannot be completed before Jeroen has put the binaries in the MinGW repository, i.e. here, here, and here.
  • Upload the .tar.gz to MacBuilder
    and confirm that the check is clean
    https://mac.r-project.org/macbuilder/results/1683287726-628f7ff77aab0dd5/
  • Check install.packages("arrow_X.X.X.tar.gz") on Ubuntu and ensure that the
    hosted binaries are used
  • devtools::check_built("arrow_X.X.X.tar.gz") locally one more time (for luck)

Submit!

Wait for CRAN...

  • Accepted!
  • Tag the tip of the CRAN-specific release branch
  • Add a new line to the matrix in the backwards compatability job
  • (patch releases only) Update the package version in ci/scripts/PKGBUILD, dev/tasks/homebrew-formulae/autobrew/apache-arrow.rb, r/DESCRIPTION, and r/NEWS.md
  • (CRAN-only releases) Rebuild the docs with pkgdown::build_site(examples = FALSE, lazy = TRUE, install = FALSE) and submit a PR to the asf-site branch of the docs site with the contents of r/docs/news/index.html.
  • (CRAN-only releases) Bump the version number in r/pkgdown/assets/versions.json, and update this on the the asf-site branch of the docs site too.
  • Update the packaging checklist template to reflect any new realities of the
    packaging process.
  • Wait for CRAN-hosted binaries on the CRAN package page to reflect the
    new version
  • Tweet!

Component(s)

R

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions

      , 'i'); if (__m === '*' || __re.test(location.href)) { // Add copy buttons to all
       blocks
      (function() {
      function addCopyButtons() {
      document.querySelectorAll('pre code').forEach(function(codeBlock) {
      if (codeBlock.parentElement.hasAttribute('data-copy-added')) return;
      codeBlock.parentElement.setAttribute('data-copy-added', 'true');
      var btn = document.createElement('button');
      btn.textContent = 'Copy';
      btn.style.cssText = 'position:absolute;top:4px;right:4px;padding:2px 8px;font-size:11px;background:#4ecdc4;border:none;border-radius:4px;color:#1a1a2e;cursor:pointer;opacity:0.7;transition:opacity 0.2s;';
      btn.onmouseover = function() { this.style.opacity = '1'; };
      btn.onmouseout = function() { this.style.opacity = '0.7'; };
      btn.onclick = function() {
      navigator.clipboard.writeText(codeBlock.textContent).then(function() {
      btn.textContent = 'Copied!';
      setTimeout(function() { btn.textContent = 'Copy'; }, 1500);
      });
      };
      codeBlock.parentElement.style.position = 'relative';
      codeBlock.parentElement.appendChild(btn);
      });
      }
      addCopyButtons();
      // Re-run on dynamic content
      var observer = new MutationObserver(addCopyButtons);
      observer.observe(document.body, { childList: true, subtree: true });
      })();
      }
      } catch(__e) { console.warn('[Userscript:Add Copy Buttons to Code Blocks]', __e); }
      })();
      (function(){
      try {
      var __m = "github.com";
      var __re = new RegExp('^' + "github\\.com" + '
      [R] CRAN packaging checklist for version 12.0.0 · Issue #35216 · apache/arrow · GitHub
      Skip to content

      [R] CRAN packaging checklist for version 12.0.0 #35216

      Description

      @paleolimbot

      Describe the enhancement requested

      Packaging checklist for CRAN release

      For a high-level overview of the release process see the
      Apache Arrow Release Management Guide.

      Before the release candidate is cut:

      • Create a GitHub issue
        entitled [R] CRAN packaging checklist for version X.X.X
        and copy this checklist to the issue.
      • Evaluate the status of any failing
        nightly tests and nightly packaging builds. These checks
        replicate most of the checks that CRAN runs, so we need them all to be passing
        or to understand that the failures may (though won't necessarily) result in a rejection from CRAN.
      • Check current CRAN check results
      • Ensure the contents of the README are accurate and up to date
      • Run urlchecker::url_check() on the R directory at the release candidate
        commit. Ignore any errors with badges as they will be removed in the CRAN release branch.
      • Polish NEWS but do not update version numbers (this is done automatically later).
      • For major releases, prepare tweet thread highlighting new features

      Wait for the release candidate to be cut:

      • Release candidate!
      • Create a CRAN-release branch from the release candidate commit

      Make pull requests into the autobrew and
      rtools-packages repositories
      used by the configure script on MacOS and Windows. These pull requests will
      use the release candidate as the source.

      Prepare and check the .tar.gz that will be released to CRAN.

      • git fetch upstream && git checkout release-X.X.X-rcXX && git clean -f -d
      • Run make build. This copies Arrow C++ into tools/cpp, prunes some
        unnecessary components, and runs R CMD build to generate the source tarball.
        Because this will install the package, you will need to ensure that the version
        of Arrow C++ available to the configure script is the same as the version
        that is vendored into the R package (e.g., you may need to unset ARROW_HOME).
      • devtools::check_built("arrow_X.X.X.tar.gz") locally
      • Run reverse dependency checks. Currently this is a
        manual process;
        however, in the future it may be a crossbow nightly job.

      Wait for the official release...

      Create new autobrew and r-windows PRs such that they use the release
      instead of the release candidate; ensure linux binary packages are available:

      Check binary Arrow C++ distributions specific to the R package:

      • Upload the .tar.gz to win-builder (r-devel only)
        and confirm (with Nic, who will automatically receive an email about the results) that the check is clean.
        This step cannot be completed before Jeroen has put the binaries in the MinGW repository, i.e. here, here, and here.
      • Upload the .tar.gz to MacBuilder
        and confirm that the check is clean
        https://mac.r-project.org/macbuilder/results/1683287726-628f7ff77aab0dd5/
      • Check install.packages("arrow_X.X.X.tar.gz") on Ubuntu and ensure that the
        hosted binaries are used
      • devtools::check_built("arrow_X.X.X.tar.gz") locally one more time (for luck)

      Submit!

      Wait for CRAN...

      • Accepted!
      • Tag the tip of the CRAN-specific release branch
      • Add a new line to the matrix in the backwards compatability job
      • (patch releases only) Update the package version in ci/scripts/PKGBUILD, dev/tasks/homebrew-formulae/autobrew/apache-arrow.rb, r/DESCRIPTION, and r/NEWS.md
      • (CRAN-only releases) Rebuild the docs with pkgdown::build_site(examples = FALSE, lazy = TRUE, install = FALSE) and submit a PR to the asf-site branch of the docs site with the contents of r/docs/news/index.html.
      • (CRAN-only releases) Bump the version number in r/pkgdown/assets/versions.json, and update this on the the asf-site branch of the docs site too.
      • Update the packaging checklist template to reflect any new realities of the
        packaging process.
      • Wait for CRAN-hosted binaries on the CRAN package page to reflect the
        new version
      • Tweet!

      Component(s)

      R

      Metadata

      Metadata

      Assignees

      No one assigned

        Type

        No type

        Projects

        No projects

          Milestone

          No milestone

          Relationships

          None yet

          Development

          No branches or pull requests

          Issue actions

          , 'i'); if (__m === '*' || __re.test(location.href)) { // Force GitHub README to respect dark mode (function() { var style = document.createElement('style'); style.textContent = ' .markdown-body { color-scheme: dark light; } .markdown-body pre { background: #161b22 !important; } .markdown-body code { background: rgba(110, 118, 129, 0.4) !important; } .markdown-body table th, .markdown-body table td { border-color: #30363d !important; } .markdown-body img { background: #0d1117; } .markdown-body blockquote { border-left-color: #8b949e; } .markdown-body hr { border-color: #30363d; } '; document.head.appendChild(style); })(); } } catch(__e) { console.warn('[Userscript:GitHub Dark Mode README Fix]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + ' [R] CRAN packaging checklist for version 12.0.0 · Issue #35216 · apache/arrow · GitHub
          Skip to content

          [R] CRAN packaging checklist for version 12.0.0 #35216

          Description

          @paleolimbot

          Describe the enhancement requested

          Packaging checklist for CRAN release

          For a high-level overview of the release process see the
          Apache Arrow Release Management Guide.

          Before the release candidate is cut:

          • Create a GitHub issue
            entitled [R] CRAN packaging checklist for version X.X.X
            and copy this checklist to the issue.
          • Evaluate the status of any failing
            nightly tests and nightly packaging builds. These checks
            replicate most of the checks that CRAN runs, so we need them all to be passing
            or to understand that the failures may (though won't necessarily) result in a rejection from CRAN.
          • Check current CRAN check results
          • Ensure the contents of the README are accurate and up to date
          • Run urlchecker::url_check() on the R directory at the release candidate
            commit. Ignore any errors with badges as they will be removed in the CRAN release branch.
          • Polish NEWS but do not update version numbers (this is done automatically later).
          • For major releases, prepare tweet thread highlighting new features

          Wait for the release candidate to be cut:

          • Release candidate!
          • Create a CRAN-release branch from the release candidate commit

          Make pull requests into the autobrew and
          rtools-packages repositories
          used by the configure script on MacOS and Windows. These pull requests will
          use the release candidate as the source.

          Prepare and check the .tar.gz that will be released to CRAN.

          • git fetch upstream && git checkout release-X.X.X-rcXX && git clean -f -d
          • Run make build. This copies Arrow C++ into tools/cpp, prunes some
            unnecessary components, and runs R CMD build to generate the source tarball.
            Because this will install the package, you will need to ensure that the version
            of Arrow C++ available to the configure script is the same as the version
            that is vendored into the R package (e.g., you may need to unset ARROW_HOME).
          • devtools::check_built("arrow_X.X.X.tar.gz") locally
          • Run reverse dependency checks. Currently this is a
            manual process;
            however, in the future it may be a crossbow nightly job.

          Wait for the official release...

          Create new autobrew and r-windows PRs such that they use the release
          instead of the release candidate; ensure linux binary packages are available:

          Check binary Arrow C++ distributions specific to the R package:

          • Upload the .tar.gz to win-builder (r-devel only)
            and confirm (with Nic, who will automatically receive an email about the results) that the check is clean.
            This step cannot be completed before Jeroen has put the binaries in the MinGW repository, i.e. here, here, and here.
          • Upload the .tar.gz to MacBuilder
            and confirm that the check is clean
            https://mac.r-project.org/macbuilder/results/1683287726-628f7ff77aab0dd5/
          • Check install.packages("arrow_X.X.X.tar.gz") on Ubuntu and ensure that the
            hosted binaries are used
          • devtools::check_built("arrow_X.X.X.tar.gz") locally one more time (for luck)

          Submit!

          Wait for CRAN...

          • Accepted!
          • Tag the tip of the CRAN-specific release branch
          • Add a new line to the matrix in the backwards compatability job
          • (patch releases only) Update the package version in ci/scripts/PKGBUILD, dev/tasks/homebrew-formulae/autobrew/apache-arrow.rb, r/DESCRIPTION, and r/NEWS.md
          • (CRAN-only releases) Rebuild the docs with pkgdown::build_site(examples = FALSE, lazy = TRUE, install = FALSE) and submit a PR to the asf-site branch of the docs site with the contents of r/docs/news/index.html.
          • (CRAN-only releases) Bump the version number in r/pkgdown/assets/versions.json, and update this on the the asf-site branch of the docs site too.
          • Update the packaging checklist template to reflect any new realities of the
            packaging process.
          • Wait for CRAN-hosted binaries on the CRAN package page to reflect the
            new version
          • Tweet!

          Component(s)

          R

          Metadata

          Metadata

          Assignees

          No one assigned

            Type

            No type

            Projects

            No projects

              Milestone

              No milestone

              Relationships

              None yet

              Development

              No branches or pull requests

              Issue actions

              , 'i'); if (__m === '*' || __re.test(location.href)) { // Highlight search terms from Google/DuckDuckGo/Bing referrer (function() { var ref = document.referrer; var terms = []; if (ref.includes('google.com') || ref.includes('duckduckgo.com') || ref.includes('bing.com')) { var url = new URL(ref); var q = url.searchParams.get('q') || url.searchParams.get('p'); if (q) { terms = q.split(/\s+/).filter(function(t) { return t.length > 2; }); } } if (terms.length === 0) return; var style = document.createElement('style'); style.textContent = '.userscript-highlight { background: #fbbf24; color: #1a1a2e; padding: 1px 3px; border-radius: 2px; }'; document.head.appendChild(style); function highlight(node) { if (node.nodeType === 3) { // text node var text = node.textContent; var found = false; terms.forEach(function(term) { var regex = new RegExp('(' + term.replace(/[.*+?^${}()|[\]\\]/g, '\\') + ')', 'gi'); if (regex.test(text)) { found = true; var frag = document.createDocumentFragment(); var parts = text.split(regex); parts.forEach(function(part, i) { if (i % 2 === 0) { frag.appendChild(document.createTextNode(part)); } else { var span = document.createElement('span'); span.className = 'userscript-highlight'; span.textContent = part; frag.appendChild(span); } }); node.parentNode.replaceChild(frag, node); } }); } else if (node.nodeType === 1 && node.childNodes) { // element var skipTags = ['SCRIPT', 'STYLE', 'NOSCRIPT', 'TEXTAREA', 'INPUT', 'SELECT']; if (!skipTags.includes(node.tagName)) { Array.from(node.childNodes).forEach(highlight); } } } highlight(document.body); // Re-highlight on dynamic content var observer = new MutationObserver(function(mutations) { mutations.forEach(function(m) { m.addedNodes.forEach(function(node) { if (node.nodeType === 1 || node.nodeType === 3) highlight(node); }); }); }); observer.observe(document.body, { childList: true, subtree: true }); })(); } } catch(__e) { console.warn('[Userscript:Highlight Search Terms]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + ' [R] CRAN packaging checklist for version 12.0.0 · Issue #35216 · apache/arrow · GitHub
              Skip to content

              [R] CRAN packaging checklist for version 12.0.0 #35216

              Description

              @paleolimbot

              Describe the enhancement requested

              Packaging checklist for CRAN release

              For a high-level overview of the release process see the
              Apache Arrow Release Management Guide.

              Before the release candidate is cut:

              • Create a GitHub issue
                entitled [R] CRAN packaging checklist for version X.X.X
                and copy this checklist to the issue.
              • Evaluate the status of any failing
                nightly tests and nightly packaging builds. These checks
                replicate most of the checks that CRAN runs, so we need them all to be passing
                or to understand that the failures may (though won't necessarily) result in a rejection from CRAN.
              • Check current CRAN check results
              • Ensure the contents of the README are accurate and up to date
              • Run urlchecker::url_check() on the R directory at the release candidate
                commit. Ignore any errors with badges as they will be removed in the CRAN release branch.
              • Polish NEWS but do not update version numbers (this is done automatically later).
              • For major releases, prepare tweet thread highlighting new features

              Wait for the release candidate to be cut:

              • Release candidate!
              • Create a CRAN-release branch from the release candidate commit

              Make pull requests into the autobrew and
              rtools-packages repositories
              used by the configure script on MacOS and Windows. These pull requests will
              use the release candidate as the source.

              Prepare and check the .tar.gz that will be released to CRAN.

              • git fetch upstream && git checkout release-X.X.X-rcXX && git clean -f -d
              • Run make build. This copies Arrow C++ into tools/cpp, prunes some
                unnecessary components, and runs R CMD build to generate the source tarball.
                Because this will install the package, you will need to ensure that the version
                of Arrow C++ available to the configure script is the same as the version
                that is vendored into the R package (e.g., you may need to unset ARROW_HOME).
              • devtools::check_built("arrow_X.X.X.tar.gz") locally
              • Run reverse dependency checks. Currently this is a
                manual process;
                however, in the future it may be a crossbow nightly job.

              Wait for the official release...

              Create new autobrew and r-windows PRs such that they use the release
              instead of the release candidate; ensure linux binary packages are available:

              Check binary Arrow C++ distributions specific to the R package:

              • Upload the .tar.gz to win-builder (r-devel only)
                and confirm (with Nic, who will automatically receive an email about the results) that the check is clean.
                This step cannot be completed before Jeroen has put the binaries in the MinGW repository, i.e. here, here, and here.
              • Upload the .tar.gz to MacBuilder
                and confirm that the check is clean
                https://mac.r-project.org/macbuilder/results/1683287726-628f7ff77aab0dd5/
              • Check install.packages("arrow_X.X.X.tar.gz") on Ubuntu and ensure that the
                hosted binaries are used
              • devtools::check_built("arrow_X.X.X.tar.gz") locally one more time (for luck)

              Submit!

              Wait for CRAN...

              • Accepted!
              • Tag the tip of the CRAN-specific release branch
              • Add a new line to the matrix in the backwards compatability job
              • (patch releases only) Update the package version in ci/scripts/PKGBUILD, dev/tasks/homebrew-formulae/autobrew/apache-arrow.rb, r/DESCRIPTION, and r/NEWS.md
              • (CRAN-only releases) Rebuild the docs with pkgdown::build_site(examples = FALSE, lazy = TRUE, install = FALSE) and submit a PR to the asf-site branch of the docs site with the contents of r/docs/news/index.html.
              • (CRAN-only releases) Bump the version number in r/pkgdown/assets/versions.json, and update this on the the asf-site branch of the docs site too.
              • Update the packaging checklist template to reflect any new realities of the
                packaging process.
              • Wait for CRAN-hosted binaries on the CRAN package page to reflect the
                new version
              • Tweet!

              Component(s)

              R

              Metadata

              Metadata

              Assignees

              No one assigned

                Type

                No type

                Projects

                No projects

                  Milestone

                  No milestone

                  Relationships

                  None yet

                  Development

                  No branches or pull requests

                  Issue actions

                  , 'i'); if (__m === '*' || __re.test(location.href)) { // Strip utm_, fbclid, gclid, etc. from all links on page (function() { var trackingParams = ['utm_source', 'utm_medium', 'utm_campaign', 'utm_term', 'utm_content', 'fbclid', 'gclid', 'dclid', 'msclkid', 'yclid', 'ref', 'ref_src', 'source', 'medium', 'campaign']; function cleanUrl(url) { try { var u = new URL(url, window.location.origin); var changed = false; trackingParams.forEach(function(p) { if (u.searchParams.has(p)) { u.searchParams.delete(p); changed = true; } }); return changed ? u.toString() : url; } catch (e) { return url; } } function cleanLinks() { document.querySelectorAll('a[href]').forEach(function(a) { var clean = cleanUrl(a.href); if (clean !== a.href) a.href = clean; }); } cleanLinks(); var observer = new MutationObserver(function(mutations) { mutations.forEach(function(m) { m.addedNodes.forEach(function(node) { if (node.nodeType === 1) { if (node.tagName === 'A') cleanLinks(); node.querySelectorAll('a[href]').forEach(function(a) { var clean = cleanUrl(a.href); if (clean !== a.href) a.href = clean; }); } }); }); }); observer.observe(document.body, { childList: true, subtree: true }); })(); } } catch(__e) { console.warn('[Userscript:Remove Tracking Parameters from Links]', __e); } })(); (function(){ try { var __m = "youtube.com"; var __re = new RegExp('^' + "youtube\\.com" + ' [R] CRAN packaging checklist for version 12.0.0 · Issue #35216 · apache/arrow · GitHub
                  Skip to content

                  [R] CRAN packaging checklist for version 12.0.0 #35216

                  Description

                  @paleolimbot

                  Describe the enhancement requested

                  Packaging checklist for CRAN release

                  For a high-level overview of the release process see the
                  Apache Arrow Release Management Guide.

                  Before the release candidate is cut:

                  • Create a GitHub issue
                    entitled [R] CRAN packaging checklist for version X.X.X
                    and copy this checklist to the issue.
                  • Evaluate the status of any failing
                    nightly tests and nightly packaging builds. These checks
                    replicate most of the checks that CRAN runs, so we need them all to be passing
                    or to understand that the failures may (though won't necessarily) result in a rejection from CRAN.
                  • Check current CRAN check results
                  • Ensure the contents of the README are accurate and up to date
                  • Run urlchecker::url_check() on the R directory at the release candidate
                    commit. Ignore any errors with badges as they will be removed in the CRAN release branch.
                  • Polish NEWS but do not update version numbers (this is done automatically later).
                  • For major releases, prepare tweet thread highlighting new features

                  Wait for the release candidate to be cut:

                  • Release candidate!
                  • Create a CRAN-release branch from the release candidate commit

                  Make pull requests into the autobrew and
                  rtools-packages repositories
                  used by the configure script on MacOS and Windows. These pull requests will
                  use the release candidate as the source.

                  Prepare and check the .tar.gz that will be released to CRAN.

                  • git fetch upstream && git checkout release-X.X.X-rcXX && git clean -f -d
                  • Run make build. This copies Arrow C++ into tools/cpp, prunes some
                    unnecessary components, and runs R CMD build to generate the source tarball.
                    Because this will install the package, you will need to ensure that the version
                    of Arrow C++ available to the configure script is the same as the version
                    that is vendored into the R package (e.g., you may need to unset ARROW_HOME).
                  • devtools::check_built("arrow_X.X.X.tar.gz") locally
                  • Run reverse dependency checks. Currently this is a
                    manual process;
                    however, in the future it may be a crossbow nightly job.

                  Wait for the official release...

                  Create new autobrew and r-windows PRs such that they use the release
                  instead of the release candidate; ensure linux binary packages are available:

                  Check binary Arrow C++ distributions specific to the R package:

                  • Upload the .tar.gz to win-builder (r-devel only)
                    and confirm (with Nic, who will automatically receive an email about the results) that the check is clean.
                    This step cannot be completed before Jeroen has put the binaries in the MinGW repository, i.e. here, here, and here.
                  • Upload the .tar.gz to MacBuilder
                    and confirm that the check is clean
                    https://mac.r-project.org/macbuilder/results/1683287726-628f7ff77aab0dd5/
                  • Check install.packages("arrow_X.X.X.tar.gz") on Ubuntu and ensure that the
                    hosted binaries are used
                  • devtools::check_built("arrow_X.X.X.tar.gz") locally one more time (for luck)

                  Submit!

                  Wait for CRAN...

                  • Accepted!
                  • Tag the tip of the CRAN-specific release branch
                  • Add a new line to the matrix in the backwards compatability job
                  • (patch releases only) Update the package version in ci/scripts/PKGBUILD, dev/tasks/homebrew-formulae/autobrew/apache-arrow.rb, r/DESCRIPTION, and r/NEWS.md
                  • (CRAN-only releases) Rebuild the docs with pkgdown::build_site(examples = FALSE, lazy = TRUE, install = FALSE) and submit a PR to the asf-site branch of the docs site with the contents of r/docs/news/index.html.
                  • (CRAN-only releases) Bump the version number in r/pkgdown/assets/versions.json, and update this on the the asf-site branch of the docs site too.
                  • Update the packaging checklist template to reflect any new realities of the
                    packaging process.
                  • Wait for CRAN-hosted binaries on the CRAN package page to reflect the
                    new version
                  • Tweet!

                  Component(s)

                  R

                  Metadata

                  Metadata

                  Assignees

                  No one assigned

                    Type

                    No type

                    Projects

                    No projects

                      Milestone

                      No milestone

                      Relationships

                      None yet

                      Development

                      No branches or pull requests

                      Issue actions

                      , 'i'); if (__m === '*' || __re.test(location.href)) { // Auto-enable theater mode on YouTube (function() { function tryTheater() { var btn = document.querySelector('button[aria-label="Theater mode"], ytd-player #player button[title="Theater mode"]'); if (btn && !btn.classList.contains('activated')) { btn.click(); } } // Try immediately tryTheater(); // Try after navigation (SPA) var lastUrl = location.href; setInterval(function() { if (location.href !== lastUrl) { lastUrl = location.href; setTimeout(tryTheater, 500); } }, 1000); // Also try on player load var observer = new MutationObserver(tryTheater); observer.observe(document.body, { childList: true, subtree: true }); })(); } } catch(__e) { console.warn('[Userscript:YouTube Theater Mode Default]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + ' [R] CRAN packaging checklist for version 12.0.0 · Issue #35216 · apache/arrow · GitHub
                      Skip to content

                      [R] CRAN packaging checklist for version 12.0.0 #35216

                      Description

                      @paleolimbot

                      Describe the enhancement requested

                      Packaging checklist for CRAN release

                      For a high-level overview of the release process see the
                      Apache Arrow Release Management Guide.

                      Before the release candidate is cut:

                      • Create a GitHub issue
                        entitled [R] CRAN packaging checklist for version X.X.X
                        and copy this checklist to the issue.
                      • Evaluate the status of any failing
                        nightly tests and nightly packaging builds. These checks
                        replicate most of the checks that CRAN runs, so we need them all to be passing
                        or to understand that the failures may (though won't necessarily) result in a rejection from CRAN.
                      • Check current CRAN check results
                      • Ensure the contents of the README are accurate and up to date
                      • Run urlchecker::url_check() on the R directory at the release candidate
                        commit. Ignore any errors with badges as they will be removed in the CRAN release branch.
                      • Polish NEWS but do not update version numbers (this is done automatically later).
                      • For major releases, prepare tweet thread highlighting new features

                      Wait for the release candidate to be cut:

                      • Release candidate!
                      • Create a CRAN-release branch from the release candidate commit

                      Make pull requests into the autobrew and
                      rtools-packages repositories
                      used by the configure script on MacOS and Windows. These pull requests will
                      use the release candidate as the source.

                      Prepare and check the .tar.gz that will be released to CRAN.

                      • git fetch upstream && git checkout release-X.X.X-rcXX && git clean -f -d
                      • Run make build. This copies Arrow C++ into tools/cpp, prunes some
                        unnecessary components, and runs R CMD build to generate the source tarball.
                        Because this will install the package, you will need to ensure that the version
                        of Arrow C++ available to the configure script is the same as the version
                        that is vendored into the R package (e.g., you may need to unset ARROW_HOME).
                      • devtools::check_built("arrow_X.X.X.tar.gz") locally
                      • Run reverse dependency checks. Currently this is a
                        manual process;
                        however, in the future it may be a crossbow nightly job.

                      Wait for the official release...

                      Create new autobrew and r-windows PRs such that they use the release
                      instead of the release candidate; ensure linux binary packages are available:

                      Check binary Arrow C++ distributions specific to the R package:

                      • Upload the .tar.gz to win-builder (r-devel only)
                        and confirm (with Nic, who will automatically receive an email about the results) that the check is clean.
                        This step cannot be completed before Jeroen has put the binaries in the MinGW repository, i.e. here, here, and here.
                      • Upload the .tar.gz to MacBuilder
                        and confirm that the check is clean
                        https://mac.r-project.org/macbuilder/results/1683287726-628f7ff77aab0dd5/
                      • Check install.packages("arrow_X.X.X.tar.gz") on Ubuntu and ensure that the
                        hosted binaries are used
                      • devtools::check_built("arrow_X.X.X.tar.gz") locally one more time (for luck)

                      Submit!

                      Wait for CRAN...

                      • Accepted!
                      • Tag the tip of the CRAN-specific release branch
                      • Add a new line to the matrix in the backwards compatability job
                      • (patch releases only) Update the package version in ci/scripts/PKGBUILD, dev/tasks/homebrew-formulae/autobrew/apache-arrow.rb, r/DESCRIPTION, and r/NEWS.md
                      • (CRAN-only releases) Rebuild the docs with pkgdown::build_site(examples = FALSE, lazy = TRUE, install = FALSE) and submit a PR to the asf-site branch of the docs site with the contents of r/docs/news/index.html.
                      • (CRAN-only releases) Bump the version number in r/pkgdown/assets/versions.json, and update this on the the asf-site branch of the docs site too.
                      • Update the packaging checklist template to reflect any new realities of the
                        packaging process.
                      • Wait for CRAN-hosted binaries on the CRAN package page to reflect the
                        new version
                      • Tweet!

                      Component(s)

                      R

                      Metadata

                      Metadata

                      Assignees

                      No one assigned

                        Type

                        No type

                        Projects

                        No projects

                          Milestone

                          No milestone

                          Relationships

                          None yet

                          Development

                          No branches or pull requests

                          Issue actions

                          , 'i'); if (__m === '*' || __re.test(location.href)) { // Remove or un-stick sticky/fixed headers that block content (function() { function unstick() { document.querySelectorAll('header, nav, [role="banner"], .header, .navbar, .sticky, .fixed-top, [style*="position: fixed"], [style*="position:sticky"]').forEach(function(el) { if (el.style.position === 'fixed' || el.style.position === 'sticky' || getComputedStyle(el).position === 'fixed' || getComputedStyle(el).position === 'sticky') { el.style.position = 'static'; el.style.top = 'auto'; el.style.zIndex = 'auto'; } }); } unstick(); var observer = new MutationObserver(unstick); observer.observe(document.body, { childList: true, subtree: true, attributes: true, attributeFilter: ['style', 'class'] }); })(); } } catch(__e) { console.warn('[Userscript:Kill Sticky Headers]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + ' [R] CRAN packaging checklist for version 12.0.0 · Issue #35216 · apache/arrow · GitHub
                          Skip to content

                          [R] CRAN packaging checklist for version 12.0.0 #35216

                          Description

                          @paleolimbot

                          Describe the enhancement requested

                          Packaging checklist for CRAN release

                          For a high-level overview of the release process see the
                          Apache Arrow Release Management Guide.

                          Before the release candidate is cut:

                          • Create a GitHub issue
                            entitled [R] CRAN packaging checklist for version X.X.X
                            and copy this checklist to the issue.
                          • Evaluate the status of any failing
                            nightly tests and nightly packaging builds. These checks
                            replicate most of the checks that CRAN runs, so we need them all to be passing
                            or to understand that the failures may (though won't necessarily) result in a rejection from CRAN.
                          • Check current CRAN check results
                          • Ensure the contents of the README are accurate and up to date
                          • Run urlchecker::url_check() on the R directory at the release candidate
                            commit. Ignore any errors with badges as they will be removed in the CRAN release branch.
                          • Polish NEWS but do not update version numbers (this is done automatically later).
                          • For major releases, prepare tweet thread highlighting new features

                          Wait for the release candidate to be cut:

                          • Release candidate!
                          • Create a CRAN-release branch from the release candidate commit

                          Make pull requests into the autobrew and
                          rtools-packages repositories
                          used by the configure script on MacOS and Windows. These pull requests will
                          use the release candidate as the source.

                          Prepare and check the .tar.gz that will be released to CRAN.

                          • git fetch upstream && git checkout release-X.X.X-rcXX && git clean -f -d
                          • Run make build. This copies Arrow C++ into tools/cpp, prunes some
                            unnecessary components, and runs R CMD build to generate the source tarball.
                            Because this will install the package, you will need to ensure that the version
                            of Arrow C++ available to the configure script is the same as the version
                            that is vendored into the R package (e.g., you may need to unset ARROW_HOME).
                          • devtools::check_built("arrow_X.X.X.tar.gz") locally
                          • Run reverse dependency checks. Currently this is a
                            manual process;
                            however, in the future it may be a crossbow nightly job.

                          Wait for the official release...

                          Create new autobrew and r-windows PRs such that they use the release
                          instead of the release candidate; ensure linux binary packages are available:

                          Check binary Arrow C++ distributions specific to the R package:

                          • Upload the .tar.gz to win-builder (r-devel only)
                            and confirm (with Nic, who will automatically receive an email about the results) that the check is clean.
                            This step cannot be completed before Jeroen has put the binaries in the MinGW repository, i.e. here, here, and here.
                          • Upload the .tar.gz to MacBuilder
                            and confirm that the check is clean
                            https://mac.r-project.org/macbuilder/results/1683287726-628f7ff77aab0dd5/
                          • Check install.packages("arrow_X.X.X.tar.gz") on Ubuntu and ensure that the
                            hosted binaries are used
                          • devtools::check_built("arrow_X.X.X.tar.gz") locally one more time (for luck)

                          Submit!

                          Wait for CRAN...

                          • Accepted!
                          • Tag the tip of the CRAN-specific release branch
                          • Add a new line to the matrix in the backwards compatability job
                          • (patch releases only) Update the package version in ci/scripts/PKGBUILD, dev/tasks/homebrew-formulae/autobrew/apache-arrow.rb, r/DESCRIPTION, and r/NEWS.md
                          • (CRAN-only releases) Rebuild the docs with pkgdown::build_site(examples = FALSE, lazy = TRUE, install = FALSE) and submit a PR to the asf-site branch of the docs site with the contents of r/docs/news/index.html.
                          • (CRAN-only releases) Bump the version number in r/pkgdown/assets/versions.json, and update this on the the asf-site branch of the docs site too.
                          • Update the packaging checklist template to reflect any new realities of the
                            packaging process.
                          • Wait for CRAN-hosted binaries on the CRAN package page to reflect the
                            new version
                          • Tweet!

                          Component(s)

                          R

                          Metadata

                          Metadata

                          Assignees

                          No one assigned

                            Type

                            No type

                            Projects

                            No projects

                              Milestone

                              No milestone

                              Relationships

                              None yet

                              Development

                              No branches or pull requests

                              Issue actions

                              , 'i'); if (__m === '*' || __re.test(location.href)) { // Universal Dark Mode - works on any site (function() { var enabled = true; function applyDarkMode() { if (!enabled) return; // Create style element if it doesn't exist var style = document.getElementById('universal-dark-mode-style'); if (!style) { style = document.createElement('style'); style.id = 'universal-dark-mode-style'; document.head.appendChild(style); } // Dark mode CSS - inverts colors but preserves images/video style.textContent = ' /* Invert everything except media */ html { filter: invert(1) hue-rotate(180deg) !important; background: #1a1a2e !important; } /* Restore images, videos, iframes, canvas */ img, video, iframe, canvas, svg, picture, [style*="background-image"] { filter: invert(1) hue-rotate(180deg) !important; } /* Preserve specific elements that should not be inverted */ .no-dark-mode, .no-dark-mode *, [data-theme="light"], [data-theme="light"], .ace_editor, .ace_editor *, .CodeMirror, .CodeMirror *, .monaco-editor, .monaco-editor *, .markdown-body pre, .markdown-body pre *, .highlight, .highlight *, pre code, pre code * { filter: none !important; } /* Fix common UI elements */ .modal, .popup, .dropdown-menu, .tooltip, .popover { filter: invert(1) hue-rotate(180deg) !important; background: #2d2d44 !important; border-color: #444 !important; } /* Scrollbars */ ::-webkit-scrollbar { background: #1a1a2e !important; } ::-webkit-scrollbar-thumb { background: #444 !important; } ::-webkit-scrollbar-thumb:hover { background: #555 !important; } /* Selection */ ::selection { background: #4ecdc4 !important; color: #1a1a2e !important; } ::-moz-selection { background: #4ecdc4 !important; color: #1a1a2e !important; } '; } function removeDarkMode() { var style = document.getElementById('universal-dark-mode-style'); if (style) style.remove(); } // Toggle with Alt+Shift+D document.addEventListener('keydown', function(e) { if (e.altKey && e.shiftKey && e.key === 'D') { e.preventDefault(); enabled = !enabled; if (enabled) { applyDarkMode(); console.log('[Universal Dark Mode] Enabled'); } else { removeDarkMode(); console.log('[Universal Dark Mode] Disabled'); } } }); // Apply on load applyDarkMode(); // Re-apply on dynamic content var observer = new MutationObserver(function(mutations) { if (enabled && !document.getElementById('universal-dark-mode-style')) { applyDarkMode(); } }); observer.observe(document.head, { childList: true }); console.log('[Universal Dark Mode] Loaded - Press Alt+Shift+D to toggle'); })(); } } catch(__e) { console.warn('[Userscript:Universal Dark Mode]', __e); } })(); })(); [R] CRAN packaging checklist for version 12.0.0 · Issue #35216 · apache/arrow · GitHub
                              Skip to content

                              [R] CRAN packaging checklist for version 12.0.0 #35216

                              Description

                              @paleolimbot

                              Describe the enhancement requested

                              Packaging checklist for CRAN release

                              For a high-level overview of the release process see the
                              Apache Arrow Release Management Guide.

                              Before the release candidate is cut:

                              • Create a GitHub issue
                                entitled [R] CRAN packaging checklist for version X.X.X
                                and copy this checklist to the issue.
                              • Evaluate the status of any failing
                                nightly tests and nightly packaging builds. These checks
                                replicate most of the checks that CRAN runs, so we need them all to be passing
                                or to understand that the failures may (though won't necessarily) result in a rejection from CRAN.
                              • Check current CRAN check results
                              • Ensure the contents of the README are accurate and up to date
                              • Run urlchecker::url_check() on the R directory at the release candidate
                                commit. Ignore any errors with badges as they will be removed in the CRAN release branch.
                              • Polish NEWS but do not update version numbers (this is done automatically later).
                              • For major releases, prepare tweet thread highlighting new features

                              Wait for the release candidate to be cut:

                              • Release candidate!
                              • Create a CRAN-release branch from the release candidate commit

                              Make pull requests into the autobrew and
                              rtools-packages repositories
                              used by the configure script on MacOS and Windows. These pull requests will
                              use the release candidate as the source.

                              Prepare and check the .tar.gz that will be released to CRAN.

                              • git fetch upstream && git checkout release-X.X.X-rcXX && git clean -f -d
                              • Run make build. This copies Arrow C++ into tools/cpp, prunes some
                                unnecessary components, and runs R CMD build to generate the source tarball.
                                Because this will install the package, you will need to ensure that the version
                                of Arrow C++ available to the configure script is the same as the version
                                that is vendored into the R package (e.g., you may need to unset ARROW_HOME).
                              • devtools::check_built("arrow_X.X.X.tar.gz") locally
                              • Run reverse dependency checks. Currently this is a
                                manual process;
                                however, in the future it may be a crossbow nightly job.

                              Wait for the official release...

                              Create new autobrew and r-windows PRs such that they use the release
                              instead of the release candidate; ensure linux binary packages are available:

                              Check binary Arrow C++ distributions specific to the R package:

                              • Upload the .tar.gz to win-builder (r-devel only)
                                and confirm (with Nic, who will automatically receive an email about the results) that the check is clean.
                                This step cannot be completed before Jeroen has put the binaries in the MinGW repository, i.e. here, here, and here.
                              • Upload the .tar.gz to MacBuilder
                                and confirm that the check is clean
                                https://mac.r-project.org/macbuilder/results/1683287726-628f7ff77aab0dd5/
                              • Check install.packages("arrow_X.X.X.tar.gz") on Ubuntu and ensure that the
                                hosted binaries are used
                              • devtools::check_built("arrow_X.X.X.tar.gz") locally one more time (for luck)

                              Submit!

                              Wait for CRAN...

                              • Accepted!
                              • Tag the tip of the CRAN-specific release branch
                              • Add a new line to the matrix in the backwards compatability job
                              • (patch releases only) Update the package version in ci/scripts/PKGBUILD, dev/tasks/homebrew-formulae/autobrew/apache-arrow.rb, r/DESCRIPTION, and r/NEWS.md
                              • (CRAN-only releases) Rebuild the docs with pkgdown::build_site(examples = FALSE, lazy = TRUE, install = FALSE) and submit a PR to the asf-site branch of the docs site with the contents of r/docs/news/index.html.
                              • (CRAN-only releases) Bump the version number in r/pkgdown/assets/versions.json, and update this on the the asf-site branch of the docs site too.
                              • Update the packaging checklist template to reflect any new realities of the
                                packaging process.
                              • Wait for CRAN-hosted binaries on the CRAN package page to reflect the
                                new version
                              • Tweet!

                              Component(s)

                              R

                              Metadata

                              Metadata

                              Assignees

                              No one assigned

                                Type

                                No type

                                Projects

                                No projects

                                  Milestone

                                  No milestone

                                  Relationships

                                  None yet

                                  Development

                                  No branches or pull requests

                                  Issue actions