Upgrade datatables.net-dt from 1.13 to 3.x and check every table (#7248)

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

メンテナーはふだん 1 日以内に返信

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

評価

難易度
4/5
見積もり時間
3〜5日
初心者へのやさしさ
67/100
issue の種類
機能追加
明瞭さ
明確に書かれている
活発さ
活発
技術スタック
javascript, jquery, rails
領域
frontend

調査の方向性

Read the DataTables 2.0 and 3.0 upgrade notes, then inspect app/javascript/datatable.js, app/javascript/src/all_casa_admin/tables.js, app/javascript/src/emancipations.js, and their import in app/javascript/application.js. Run bin/dev with the README seed logins and check sorting, search, pagination, and styling on each table; rerun the named system spec on main to assess flakiness. Done means the upgrade works across the tables and the PR includes before-and-after screenshots.

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

説明

🖥️ Frontend dependencies Difficulty: Intermediate Help Wanted javascript

Problem

Dependabot's #7248 bumps datatables.net-dt from 1.13.11 to 3.1.4, skipping a whole major version (2.x). Its CI failed docker with one system spec:

rspec ./spec/system/volunteers/edit_spec.rb:155  # saves the user as inactive, but only if the admin confirms
Unable to find modal dialog

That spec may just be flaky, since it isn't obviously related to tables. But a jump across two majors needs a real check of every table in the app, not only green CI.

Where DataTables is used

  • app/javascript/datatable.js: $(selector).DataTable({ searching: true, order: [[0, 'asc']] })
  • app/javascript/src/all_casa_admin/tables.js: admin and organization lists on the All CASA admin pages
  • app/javascript/src/emancipations.js: table#all-case-emancipations
  • Imported from app/javascript/application.js; styles come from the -dt package

Tasks

  • Read the DataTables 2.0 and 3.0 upgrade notes. Check how the jQuery plugin is imported and initialised, and whether the options we pass changed.
  • Check each table above in the browser (bin/dev, seed logins in the README): sorting, search box, pagination, styling
  • Rerun the volunteers/edit_spec.rb:155 system spec on main a few times. If it fails there too, it's flaky: file it per our flaky-test process instead of blocking this.
  • Open a PR with the bump plus any code changes, with before/after screenshots of each table
  • Longer term (separate issue): the redesign is moving tables to Tailwind and Stimulus, so check whether these tables still need DataTables at all

Difficulty: intermediate.

主要言語
Ruby
スター
382
フォーク
547
平均マージ
2日 19時間
マージ済み PR(30日)
49

環境構築

Codespaces で開く

このプロジェクトの開発コンテナを、あなたの GitHub アカウントでブラウザ上に起動します。

はじめの一歩

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

rubyforgood/casa のほかの issue

rubyforgood/casa の issue をすべて見る

似ている issue

Ruby の issue をもっと見る

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

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