parse-community / parse-community/parse-dashboard

Dashboard doesn't load when there is value in non-Date "expiresAt" column

Open
#1,927 1 comment 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

type:bug
Dominant language
JavaScript
Stars
3.8k
Forks
1.4k
PR merge metrics
No merged PRs in 30d

Description

New Issue Checklist
Issue Description

If a column named "expiresAt" is added to a class with a type other than Date (e.g. String), populating this column with a value will make the dashboard unable to load.

Steps to reproduce
  1. In any class, create a new column called "expiresAt" with "String" type
  2. For any object in this class, add a value to the expiresAt column
  3. Refresh the class or the webpage
Actual Outcome

Dashboard doesn't successfully load. It briefly loads the left panel of classes, then eventually shows a blank/white page.

Expected Outcome

Dashboard successfully loads and displays the class and all the objects in it.

Environment

Dashboard

  • Parse Dashboard version: 3.2.1
  • Browser (Safari, Chrome, Firefox, Edge, etc.): Chrome
  • Browser version: 95.0.4638.69

Server

  • Parse Server version: 4.10.4
  • Operating system: Node.js 14 running on 64bit Amazon Linux 2/5.4.7
  • Local or remote host (AWS, Azure, Google Cloud, Heroku, Digital Ocean, etc): AWS

Database

  • System (MongoDB or Postgres): MongoDB
  • Database version: 5.0.3
  • Local or remote host (MongoDB Atlas, mLab, AWS, Azure, Google Cloud, etc): MongoDB Atlas
Logs

Chrome console shows this error when issue happens:

dashboard.bundle.js:2 
Error: Minified React error #31; visit https://reactjs.org/docs/error-decoder.html?invariant=31&args[]=Sun%20Dec%2031%202000%2016%3A00%3A00%20GMT-0800%20(Pacific%20Standard%20Time)&args[]= for the full message or use the non-minified dev environment for full errors and additional helpful warnings.
    at So (dashboard.bundle.js:2)
    at dashboard.bundle.js:2
    at Da (dashboard.bundle.js:2)
    at _s (dashboard.bundle.js:2)
    at pl (dashboard.bundle.js:2)
    at dl (dashboard.bundle.js:2)
    at rl (dashboard.bundle.js:2)
    at dashboard.bundle.js:2
    at t.unstable_runWithPriority (dashboard.bundle.js:2)
    at qi (dashboard.bundle.js:2)

dashboard.bundle.js:2 
Uncaught (in promise) Error: Minified React error #31; visit https://reactjs.org/docs/error-decoder.html?invariant=31&args[]=Sun%20Dec%2031%202000%2016%3A00%3A00%20GMT-0800%20(Pacific%20Standard%20Time)&args[]= for the full message or use the non-minified dev environment for full errors and additional helpful warnings.
    at So (dashboard.bundle.js:2)
    at dashboard.bundle.js:2
    at Da (dashboard.bundle.js:2)
    at _s (dashboard.bundle.js:2)
    at pl (dashboard.bundle.js:2)
    at dl (dashboard.bundle.js:2)
    at rl (dashboard.bundle.js:2)
    at dashboard.bundle.js:2
    at t.unstable_runWithPriority (dashboard.bundle.js:2)
    at qi (dashboard.bundle.js:2)

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Reproduce the issue by adding a String expiresAt column and value, then run npm run dev to inspect the non-minified React error instead of dashboard.bundle.js. Trace the dashboard rendering path for the expiresAt value and verify that the class and its objects load normally with the non-Date value.

Written by the indexing model from the issue text.

Assessment

Tech stack
javascript, react
Domain
frontend
Issue type
Bug
Difficulty
3/5
Estimated time
1-2 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
45/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.