Open
Conversation
dburkhart07
approved these changes
Feb 17, 2026
dburkhart07
left a comment
There was a problem hiding this comment.
Waiting fix on the food request form but this looks good to me. tysmmmmm for looking into this. goated tl fr fr fr! 🙏 🧇
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.

ℹ️ Issue
We were having an issue where adding a new dependency would work fine locally but would cause the CI to fail.
📝 Description
TL;DR: Updated
package.jsondependency resolutions to avoid conflicts with aliased packages, and upgraded Nx and Vite to resolve subsequent errors.I was able to reproduce the issue locally by clearing my
node_modulesbefore runningyarn install(the CI generates freshnode_moduleseach time it runs).On running
yarn installwith nonode_modules, we were getting warnings like the following forstrip-ansi,string-width, andwrap-ansi:These "is trying to unpack in the same destination" warnings are problematic and mean that multiple versions of a dependency are trying to install in the same location, and so one or more are skipped. Since some were supposed to be accessed directly (
string-width) and some through an alias (string-width-cjs), only having the dependency installed through one of the names meant that modules trying to access it through the other name would not be able to find it, causing the error that ultimately caused theyarn installto fail:Cannot find module 'string-width'Fixing this meant updating the
package.jsonresolutions to resolve the aliases to the same version as the main package so there wouldn't be a conflict (these are the key changes that resolve the dependency issue):It's important to note for future reference that, as Swar did for
strip-ansiandstring-widthin her recent dependency fix PR, it's important that the versions we are resolving to are the most recent major versions of these dependencies that still use CommonJS - resolving to an ESM version can cause issues likes.stringWidth is not a functionsince some dependencies still use CommonJS, and CommonJS modules cannot import ESM modules.Unfortunately, after this change, serving using
nxgave this error:This is due to an issue with older versions of Nx that just surfaced after having to add resolutions for the package aliases. As a result, I had to upgrade Nx - pretty much all the other changes in this PR were auto-generated from running the migration script (as well as a few manual changes). To make sure our Vite version was compatible with the new Nx version, I had to remove the Vite resolution we had, which required updating the Vite config to make sure the frontend serve would still work on the new version of Vite.
✔️ Verification
🏕️ (Optional) Future Work / Notes
Direct usage of
fetchin the frontend, which there was a ticket last semester to remove in favor of using theApiClient, now tries to make requests to the frontend rather than the backend (haven't looked into why, but I'd say this is a good thing for making sure it can't sneak back in!). This has broken creating a food request, which still makes an API call usingfetch. I'll fix this tomorrow before merging