Skip to content

Upgrade to Blueprint v5 #2718

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 20 commits into from
Feb 12, 2024

Conversation

RichDom2185
Copy link
Member

@RichDom2185 RichDom2185 commented Dec 8, 2023

Description

Upgrades the version of BlueprintJS and related dependencies to v5 to future-proof the platform.

Type of change

  • Bug fix (non-breaking change which fixes an issue)
  • New feature (non-breaking change which adds functionality)
  • Breaking change (fix or feature that would cause existing functionality to not work as expected)
  • This change requires a documentation update
  • Code quality improvements

How to test

All components work and look correct.

Checklist

  • I have tested this code
  • I have updated the documentation

Fixes a compile error following the version upgrade.
Resolves the issue with the deprecated `DateInput` component. Also made
the necessary API changes for the migration.
Fixes the breaking change introduced by the Blueprint v5 upgrade.
@RichDom2185 RichDom2185 requested a review from chownces December 8, 2023 13:07
@RichDom2185 RichDom2185 self-assigned this Dec 8, 2023
@RichDom2185
Copy link
Member Author

Despite no more compile errors, there are still some UI regressions, thus I'm keeping this PR as draft for now.

@chownces
Copy link
Contributor

Despite no more compile errors, there are still some UI regressions, thus I'm keeping this PR as draft for now.

Do you recall what are the UI regressions here?

@RichDom2185
Copy link
Member Author

Despite no more compile errors, there are still some UI regressions, thus I'm keeping this PR as draft for now.

Do you recall what are the UI regressions here?

Yes, some tables/styles look wrong. I believe they might be because of conflicts with our custom stylesheets, but I have yet to look into them in more detail.

Though notably, the date/time picker component has been revamped in v5, so the UX there suffered a lot too (though I believe functionality still works).

@RichDom2185 RichDom2185 requested a review from sayomaki February 8, 2024 18:00
Copy link
Member Author

@RichDom2185 RichDom2185 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'm of the opinion that we should merge this ASAP so that the CP3108 frontend teams can test and perhaps report bugs in the styles (if any) before it's actually deployed for the next semester.

Thoughts? @chownces @sayomaki

@coveralls
Copy link

coveralls commented Feb 9, 2024

Pull Request Test Coverage Report for Build 7862853337

  • -5 of 6 (16.67%) changed or added relevant lines in 4 files are covered.
  • No unchanged relevant lines lost coverage.
  • Overall coverage remained the same at 37.204%

Changes Missing Coverage Covered Lines Changed/Added Lines %
src/features/remoteExecution/RemoteExecutionDeviceDialog.tsx 0 1 0.0%
src/pages/academy/groundControl/subcomponents/GroundControlEditCell.tsx 0 2 0.0%
src/pages/academy/storySimulator/subcomponents/StorySimulatorAssetSelection.tsx 0 2 0.0%
Totals Coverage Status
Change from base Build 7862778078: 0.0%
Covered Lines: 5723
Relevant Lines: 14458

💛 - Coveralls

@RichDom2185 RichDom2185 marked this pull request as ready for review February 9, 2024 07:43
Copy link
Contributor

@sayomaki sayomaki left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM so far, thanks! Let's approve and merge this, so that users are able to test the interface and look out for any missed regressions.

@RichDom2185 RichDom2185 merged commit 7011a41 into source-academy:master Feb 12, 2024
InfinityTwo pushed a commit to InfinityTwo/sourceacademy-frontend that referenced this pull request Feb 12, 2024
* Replace deprecated `ITreeNode` with `TreeNodeInfo`

Done as per migration guide.

* Upgrade BlueprintJS dependencies to v5

* Use public `IconName` type instead of internal API

Fixes a compile error following the version upgrade.

* Migrate to `Datetime2` package

Resolves the issue with the deprecated `DateInput` component. Also made
the necessary API changes for the migration.

* Update prop name

Fixes the breaking change introduced by the Blueprint v5 upgrade.

* Update test snapshots

* Reran `yarn install` post-merge

* Update snapshots post-merge

* Update SCSS namespace

* Fix popover styles

Update the target classes to match the new components.

* Revert Env Vizualiser snapshot change

* Fix TreeNode comparison to compare id instead of object reference

---------

Co-authored-by: sayomaki <sayomayomaki@gmail.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants