[dashboard | statistics] Add Project Size to dashboard charts#3
Open
jeffersoncasimir wants to merge 249 commits intomainfrom
Open
[dashboard | statistics] Add Project Size to dashboard charts#3jeffersoncasimir wants to merge 249 commits intomainfrom
jeffersoncasimir wants to merge 249 commits intomainfrom
Conversation
Fixing typo in README.md inside 02_GETTING_STARTED in wiki * Resolves aces#9782
In MariaDB 10.5, if you’re using an init script like 0004-sql-user.sql, it may not execute as expected because of differences in how MariaDB/MySQL handle CREATE USER, GRANT, and init scripts in /docker-entrypoint-initdb.d.
Fix bug with error log not showing correct message
IBIS candidate dataset has empty value in sex for some candidates.
Page was incorrectly checking permissions for an issue that does not exist, because the user is attempting to create a new issue.
Fixes even further what was fixed in aces#9534. The fix in the previous PR did not account for arguments coming after the `?` in the URL, this new parameter should account for it.
…le (aces#9916) Fix incorrect path that prevents module overrides
…oading (aces#9882) 1. An error is thrown for empty CSVs for both choices in the 'CSV containing list of' dropdown (Candidates and Sessions) 2. If an incorrectly formatted csv is uploaded, it is cleared from selection and not allowed to submit. 3. If user clicks on 'Submit' without uploading a csv, an error is thrown. * Resolves aces#9880
…9784) This change modifies the transformation of csvData in the DataTable component by replacing .flatMap() with .map(). • Before: csvData was a flattened array of mapped cells across all fields and rows. • After: csvData is now a nested array (Array<Array<Cell>>), preserving the structure of rows. • This aligns better with expected downstream usage or fixes unintended flattening issues in CSV processing.
Tab does not load because column 'cohort.CohortID' in on clause is ambiguous. Fixes aces#9970
Fix inability to source upgrade from IBIS.
b56d573 to
d76e4b5
Compare
All examiners are returned for the data dictionary when `empty($this->getCommentID())`. Closes aces#9852
Fix broken links in LORIS footer
This translates the recruitment widget (the last widget) on the LORIS dashboard, so that the entire dashboard is now translated (The recruitment widget had been waiting on aces#9937 to be merged before translating it.). Japanese is used as a test language. It also fixes a regression on the study progression translation introduced by aces#9937 as new filters that are shared between the two were added.
a375840 to
b2077af
Compare
All changes mentioned in aces#10232 are addressed, except for the following, which are either from the database or otherwise out of our current control: - Admin account - Loris Website - Site names (ex: DCC) - Table content - Notification descriptions - Help text - "All Projects" on login page - Terms of Use (button and content) - Instrument fields and metadata - Caveat text from an RB candidate - Emails - Calendar picker (browser language) Bug: - Male/Female is not pluralizing on dashboard (`modules/statistics/jsx/widgets/helpers/progressbarBuilder.js`)
…0355) The `testFilter` test in `BatteryManagerTest.php` fails intermittently in CI (PHP 8.3 and 8.4). The failures are unrelated to any PR's changes. Re-running the tests typically makes them pass. This makes CI unreliable for all contributors. ### Root Cause: Race Condition The existing `_filterTest` helper (from `LorisIntegrationTest`) has a timing bug: 1. It sets a filter value (e.g., selects "AOSI" from the dropdown) 2. It **immediately** reads the display text (`"X rows displayed of Y"`) 3. It asserts on the expected row count The problem is that `safeFindElement` only waits for the element to be **visible**; but the display element is *always* visible on the page. After a filter change, React needs time to re-render the table with filtered results. Sometimes React finishes before the read (test passes), sometimes it doesn't (test fails with stale data like `"0 rows displayed of 0"`). The same issue occurs after clicking "Clear Filters", the next filter test starts before the previous filter state has fully reset. ### Secondary Issue: Wrong Expected Count The test expected `'2 rows'` for the AOSI filter, but `RB_test_battery.sql` contains **3** AOSI entries (IDs 131, 132, 133). The query in `TestProvisioner` has no `WHERE Active='Y'` clause, it returns all rows. ### Change Summary **File:** `modules/battery_manager/test/BatteryManagerTest.php` 1. **Replaced `_filterTest` calls with `WebDriverWait`-based polling**: instead of reading the display text once and hopes React has re-rendered, the test now polls every 500ms (up to 10s) until the expected text appears. 2. **Added waits after "Clear Filters" clicks**: ensures each filter test starts with a clean state. 3. **Moved `testFilter()` before DB-mutating tests**: `testEditform`, `testAddNew`, and `testActivebtn` modify the `test_battery` table without cleanup. Running `testFilter` first ensures it sees the original RaisinBread data. 4. **Corrected AOSI expected count** from `'2 rows'` to `'3 rows'` to match the actual test data. ### Design Decisions - **10-second timeout**: The full `testFilter` completes in ~5 seconds across all three filter operations. A 10-second ceiling provides a 2x safety margin without making slow failures take unreasonably long. - **500ms polling interval**: Balances responsiveness with CPU overhead. React re-renders typically complete in under 500ms, so most polls succeed on the first or second check. - **Local helper instead of modifying `_filterTest`**: The shared `_filterTest` in `LorisIntegrationTest` is used by other modules. Adding a private `_waitForFilterResult` method in `BatteryManagerTest` avoids touching shared infrastructure.
This updates the version number to LORIS 28 in the same places done for 27 in PR#9868. It also creates the release patch by concatenating all the SQL files in new_patches, as that was apparently missed.
Bumps [ajv](https://github.com/ajv-validator/ajv) from 6.12.6 to 6.14.0. <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/ajv-validator/ajv/commit/e3af0a723b4b7ad86eff43be355c706d31e0e915"><code>e3af0a7</code></a> 6.14.0</li> <li><a href="https://github.com/ajv-validator/ajv/commit/b552ed66191eb338498df3196065c777e3bb71f2"><code>b552ed6</code></a> add regExp option to address $data exploit via a regular expression (CVE-2025...</li> <li><a href="https://github.com/ajv-validator/ajv/commit/72f228665859eed5e2be3a66f8c4a7aff6b34dcf"><code>72f2286</code></a> docs: update v7 info</li> <li><a href="https://github.com/ajv-validator/ajv/commit/231e52b3bca62559202b95e5fb5cee02145b226a"><code>231e52b</code></a> Merge pull request <a href="https://redirect.github.com/ajv-validator/ajv/issues/1320">#1320</a> from philsturgeon/patch-1</li> <li><a href="https://github.com/ajv-validator/ajv/commit/d3475fc20416c33fe030c8aa3b09fa411f325bbd"><code>d3475fc</code></a> Add spectral, an AJV util from a sponsor</li> <li><a href="https://github.com/ajv-validator/ajv/commit/413afe01f518ea74d1740a7cb211df787c585544"><code>413afe0</code></a> docs: v7.0.0-beta.3</li> <li><a href="https://github.com/ajv-validator/ajv/commit/11e997bda2f3eecb445c1e5a07d96ef7e81c5f5d"><code>11e997b</code></a> update readme for v7</li> <li>See full diff in <a href="https://github.com/ajv-validator/ajv/compare/v6.12.6...v6.14.0">compare view</a></li> </ul> </details> <br /> [](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores) Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`. [//]: # (dependabot-automerge-start) [//]: # (dependabot-automerge-end) --- <details> <summary>Dependabot commands and options</summary> <br /> You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot show <dependency name> ignore conditions` will show all of the ignore conditions of the specified dependency - `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself) You can disable automated security fix PRs for this repo from the [Security Alerts page](https://github.com/aces/Loris/network/alerts). </details> Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Push28 to main
Bumps and [minimatch](https://github.com/isaacs/minimatch). These dependencies needed to be updated together. Updates `minimatch` from 3.1.2 to 3.1.5 <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/isaacs/minimatch/commit/7bba97888a27a6162983056bcce2a6e28f668712"><code>7bba978</code></a> 3.1.5</li> <li><a href="https://github.com/isaacs/minimatch/commit/bd259425b2ca17b42897997f93e890314155522d"><code>bd25942</code></a> docs: add warning about ReDoS</li> <li><a href="https://github.com/isaacs/minimatch/commit/1a9c27c75725474dbde57db2995b6281b267756d"><code>1a9c27c</code></a> fix partial matching of globstar patterns</li> <li><a href="https://github.com/isaacs/minimatch/commit/1a2e084af579731af66c221214e3ca8222c9bf23"><code>1a2e084</code></a> 3.1.4</li> <li><a href="https://github.com/isaacs/minimatch/commit/ae24656237c3d58067442f790ce17eff84463a47"><code>ae24656</code></a> update lockfile</li> <li><a href="https://github.com/isaacs/minimatch/commit/b1003749228b2a79e1f237963a0d559ef7a0941e"><code>b100374</code></a> limit recursion for **, improve perf considerably</li> <li><a href="https://github.com/isaacs/minimatch/commit/26ffeaa091b9f660833e23f42e07165b33e85c13"><code>26ffeaa</code></a> lockfile update</li> <li><a href="https://github.com/isaacs/minimatch/commit/9eca892a4e5dbb20534f9f30483b85cdeee6c2eb"><code>9eca892</code></a> lock node version to 14</li> <li><a href="https://github.com/isaacs/minimatch/commit/00c323b188b704e5d4bc534ecec2268cfa70a32a"><code>00c323b</code></a> 3.1.3</li> <li><a href="https://github.com/isaacs/minimatch/commit/30486b2048929264f44d18822891cfffa02af78b"><code>30486b2</code></a> update CI matrix and actions</li> <li>Additional commits viewable in <a href="https://github.com/isaacs/minimatch/compare/v3.1.2...v3.1.5">compare view</a></li> </ul> </details> <br /> Updates `minimatch` from 5.1.6 to 5.1.9 <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/isaacs/minimatch/commit/7bba97888a27a6162983056bcce2a6e28f668712"><code>7bba978</code></a> 3.1.5</li> <li><a href="https://github.com/isaacs/minimatch/commit/bd259425b2ca17b42897997f93e890314155522d"><code>bd25942</code></a> docs: add warning about ReDoS</li> <li><a href="https://github.com/isaacs/minimatch/commit/1a9c27c75725474dbde57db2995b6281b267756d"><code>1a9c27c</code></a> fix partial matching of globstar patterns</li> <li><a href="https://github.com/isaacs/minimatch/commit/1a2e084af579731af66c221214e3ca8222c9bf23"><code>1a2e084</code></a> 3.1.4</li> <li><a href="https://github.com/isaacs/minimatch/commit/ae24656237c3d58067442f790ce17eff84463a47"><code>ae24656</code></a> update lockfile</li> <li><a href="https://github.com/isaacs/minimatch/commit/b1003749228b2a79e1f237963a0d559ef7a0941e"><code>b100374</code></a> limit recursion for **, improve perf considerably</li> <li><a href="https://github.com/isaacs/minimatch/commit/26ffeaa091b9f660833e23f42e07165b33e85c13"><code>26ffeaa</code></a> lockfile update</li> <li><a href="https://github.com/isaacs/minimatch/commit/9eca892a4e5dbb20534f9f30483b85cdeee6c2eb"><code>9eca892</code></a> lock node version to 14</li> <li><a href="https://github.com/isaacs/minimatch/commit/00c323b188b704e5d4bc534ecec2268cfa70a32a"><code>00c323b</code></a> 3.1.3</li> <li><a href="https://github.com/isaacs/minimatch/commit/30486b2048929264f44d18822891cfffa02af78b"><code>30486b2</code></a> update CI matrix and actions</li> <li>Additional commits viewable in <a href="https://github.com/isaacs/minimatch/compare/v3.1.2...v3.1.5">compare view</a></li> </ul> </details> <br /> Updates `minimatch` from 6.1.8 to 6.2.3 <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/isaacs/minimatch/commit/7bba97888a27a6162983056bcce2a6e28f668712"><code>7bba978</code></a> 3.1.5</li> <li><a href="https://github.com/isaacs/minimatch/commit/bd259425b2ca17b42897997f93e890314155522d"><code>bd25942</code></a> docs: add warning about ReDoS</li> <li><a href="https://github.com/isaacs/minimatch/commit/1a9c27c75725474dbde57db2995b6281b267756d"><code>1a9c27c</code></a> fix partial matching of globstar patterns</li> <li><a href="https://github.com/isaacs/minimatch/commit/1a2e084af579731af66c221214e3ca8222c9bf23"><code>1a2e084</code></a> 3.1.4</li> <li><a href="https://github.com/isaacs/minimatch/commit/ae24656237c3d58067442f790ce17eff84463a47"><code>ae24656</code></a> update lockfile</li> <li><a href="https://github.com/isaacs/minimatch/commit/b1003749228b2a79e1f237963a0d559ef7a0941e"><code>b100374</code></a> limit recursion for **, improve perf considerably</li> <li><a href="https://github.com/isaacs/minimatch/commit/26ffeaa091b9f660833e23f42e07165b33e85c13"><code>26ffeaa</code></a> lockfile update</li> <li><a href="https://github.com/isaacs/minimatch/commit/9eca892a4e5dbb20534f9f30483b85cdeee6c2eb"><code>9eca892</code></a> lock node version to 14</li> <li><a href="https://github.com/isaacs/minimatch/commit/00c323b188b704e5d4bc534ecec2268cfa70a32a"><code>00c323b</code></a> 3.1.3</li> <li><a href="https://github.com/isaacs/minimatch/commit/30486b2048929264f44d18822891cfffa02af78b"><code>30486b2</code></a> update CI matrix and actions</li> <li>Additional commits viewable in <a href="https://github.com/isaacs/minimatch/compare/v3.1.2...v3.1.5">compare view</a></li> </ul> </details> <br /> Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`. [//]: # (dependabot-automerge-start) [//]: # (dependabot-automerge-end) --- <details> <summary>Dependabot commands and options</summary> <br /> You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot show <dependency name> ignore conditions` will show all of the ignore conditions of the specified dependency - `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself) You can disable automated security fix PRs for this repo from the [Security Alerts page](https://github.com/aces/Loris/network/alerts). </details> Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Adds project sizes to the dashboard: