Possible change / correction of Field export affecting four packages

オープン
#364 コメント 10 件 リアクション 0 件 担当者 0 名 GitHub で見る

まだ誰も着手していません。

評価

難易度
5/5
見積もり時間
1週間以上
初心者へのやさしさ
25/100
issue の種類
バグ
明瞭さ
説明が足りない
活発さ
停滞
技術スタック
cpp, r
領域
tooling

調査の方向性

Review the existing field-exporter fix behind its #define and the before/after reverse-depends results described in the issue. Investigate the remaining failures in carat and perccal, then clarify the compatible API behavior, fallback requirements, and timeline before implementation.

索引モデルが issue の本文から書いたものです。

説明

Issue https://github.com/RcppCore/RcppArmadillo/issues/263, opened quite some time ago by @coatless, demonstrated that we had a bug stacked away in dealing with a field exporter which dropped a dimension. I worked a bit on that in November and committed a fix albeit behind a #define. I had meant to come back to this and had time last week to run two sets of 'before' and 'after' reverse-depends checks to assess how costly it would be to enable this unconditionally.

It turns out that four (out of 950 total (!!)) packages then fail tests:

  • AlphaSimR by @gaynorr et al -- already addressed in version 1.1.2 on CRAN
  • carat by @yexiaoqingruc et al
  • odpc by @esmucler -- will revert to old behavior, see #3, #4, addressed in version 2.0.5 on CRAN
  • perccal by Dan McCarthy (not on GH, emailed 2022-02-13)

I have not yet had time to look into patches or changes. We probably want to fix this, and worst case can offer a #define to allow these four packages (and other uses like them) to get the old behavior back (in the sense of 'we published an API so we need to honor that contract') but otherwise offer 'better' code.

So "just" opening this issue to see if we can start a dialogue about what would be a suitable timeline to make the change. Maybe in three months? Too soon?

主要言語
C++
スター
211
フォーク
54
平均マージ
5分
マージ済み PR(30日)
1

コントリビューションガイド

このリポジトリのコントリビューションガイドは索引されていません

はじめの一歩

  1. issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
  2. 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
  3. リポジトリをフォークし、ブランチを切って変更します。
  4. issue 番号を参照したプルリクエストを送ります。

RcppCore/RcppArmadillo のほかの issue

RcppCore/RcppArmadillo の issue をすべて見る

似ている issue

C++ の issue をもっと見る

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。