thegrumpys / odop

Open Design Optimization Platform (ODOP) - Coil spring design app; mechanical springs; compression spring, extension spring, torsion spring
https://www.springdesignsoftware.org
MIT License
4 stars 5 forks source link

Migrate to latest version of Okta React #438

Closed 1fifoto closed 3 years ago

1fifoto commented 3 years ago

See: https://www.npmjs.com/package/@okta/okta-react and "Migrating between versions" and its "Migrating from 1.x to 2.0". We are currently using 1.4. This is a breaking update and coding changes are needed.

1fifoto commented 3 years ago

Initial work: Removed all of OKTA. Went back to what it was before Okta except set default user to 'public' Okta user. Cleaned it in preparation for going forward and using the new okta-react.

grumpyinca commented 3 years ago

First round of testing - notes & feedback

  1. When not signed-in (immediately after launch and also after Sign-Out) File : Open
    • Design type dropdown does not drop
    • No [ReadOnly] designs are listed for selection

Is it possible that I need to run "npm install" at the server level as well as client ?

  1. When signed in, File : Open Spring/Compression shows Bri's test designs (aaa, bbb, fff, sss) not marked [ReadOnly] as well as the expected [ReadOnly] designs. Not seeing expected private designs that should be associated with my ID.

  2. In order to facilitate the use of Tutor & demo in testing, it would be helpful to have the latest fix to loadInitialState in branch 438.

  3. I understand that promptForDesign will return to allow loading initialState (and do other stuff) when in the development environment.

  4. Someday, Help : About should show the signed in user name as opposed to the "0oa ... 357" string.

  5. Just F.Y.I. Session continuity seems to be working well (or as expected at least).

    • Being signed in and inactive for >> 2 hours allows signed-in activity to resume without incident
    • Closing the browser while signed in then immediately re-opening localhost:3000 allows signed-in activity to resume without incident
    • Closing the browser while signed in, then shutting down the Node client and server overnight requires a new Sign-in when re-opening the app.
    • Closing the browser while signed in and waiting > 2 hours requires a new Sign-in when re-opening the app.
1fifoto commented 3 years ago

Per your request # 5 in "First round of testing - notes & feedback" comment Screen Shot 2020-12-20 at 8 27 00 PM

1fifoto commented 3 years ago

Per your request # 4 in "First round of testing - notes & feedback" comment I added into File Open the ability to Load Initial State, Load Metric Initial State and Load Auto Save, because PromptForDesign no longer exists. Screen Shot 2020-12-20 at 9 14 48 PM

grumpyinca commented 3 years ago

Second round of testing - notes & feedback

  1. When logged in, I am not seeing expected private designs that should be associated with my ID. If I Save As a design, there is no error message, but a design with that name is not available for selection.

  2. Load extension spring metric initial state. Get traceback:

    
    ReferenceError: MIN is not defined
    Module.<anonymous>
    C:/Users/Mike/git/odop/client/src/designtypes/Spring/Extension/initialState_metric_units.js:63
    60 |     "tooltip": "Minimum force required to separate coils",
    61 |     "type": "equationset",
    62 |     "hidden": false,
    > 63 |     "propagate": [{ name: "Force_1", minmax: MIN }]
     | ^  64 | },
    65 | {
    66 |     "input": true,

This problem happens signed-in or not.  No equivalent problem with compression & torsion metric initialState(s).  I belatedly confirmed this is happening in master.  It is not specific to 438.

3. Reset app (click logo in upper left) changes design type to compression.  It is not terrible, but is probably not what the user expected.

Note:  The design-type switch does not occur if there is an AutoSave design available.  Thus, enhancing AutoSave (See #416) will mitigate this problem without further coding.

4. Attempt to login as "public", get message "User is not assigned to the client application.".  This could be unique to the development (localhost:3000) environment.

5. If in Calculator view, either sign-in or sign-out will leave the user in Advanced view.

6. Not sure that this is a problem, but sign-in or sign-out in the middle of an exec / tutor / demo session exits the session.
1fifoto commented 3 years ago

1 But had to remove the null filter in the server. 2 Fixed. 3 Let's talk about it on the weekend. That is, should the view be saved in the root of the model? 4 Yes, the public user is not assigned to the development environment. 5 See 3. 6 Should the exec / tutor / demo session be saved in the root of the model?

Note: #6 carried forward to #468.

grumpyinca commented 3 years ago

Reminder:

Since it will be challenging to "back out" the changes of this branch after merging into master, it is likely helpful to create a GitHub tag before doing the merge. At least that will make it easy to identify the exact point of the merge.

1fifoto commented 3 years ago

Merged into #388 and then master, closing