Movatterモバイル変換


[0]ホーム

URL:


Skip to content
DEV Community
Log in Create account

DEV Community

Francesco Menghi
Francesco Menghi

Posted on

     

Finishing Up

I recently wrote apost explaining how to get started using thepnpm package manager withtelescope. Today I want to talk about the process of getting to the "Merged PR" finish line.

Navigating through problems

Gettingpnpm to work on telescope was far from smooth. It all started with silly bugs. For example I removed a dependency (npm-run-all) that I thought was not needed just to realize that the front-end would break in all sorts of ways.

GitHub Actions

Once I fixed all the small errors and was satisfied with the local implementation, I started to work on changing the GitHub Actions CI to also usepnpm. After many unsuccessful attempts, I was relieved to see that all the GitHub Actions jobs passed. Mypnpm implementation worked!

But things were not over... After making a small change in the docs, I pushed a new commit and then saw this:

ERR_PNPM_OUTDATED_LOCKFILE  Cannot install with "frozen-lockfile" because pnpm-lock.yaml is not up-to-date with package.json

How was this possible? I did not make any new changes to any of thepackage.json orpnpm-lock.yaml files and now CI stopped working.

After speaking withDavid, he suggested to tackle a problem thatcould have been the cause of this error:Standardize package versions across package.json files (Spoiler, this wasn't the problem).

Standardize package versions

While working on this secondary issue, I changed all the dependencies to use the caret (^) version and the only one that gave me some trouble wasPrettier. It turns out that a minor update from Prettier could create new formatting changes to the files and since we were usingnpm without a lock file, our CI was failing (ThanksDuke for finding this out!).
It took a few more failed CI attempts (mainly due to connection issues) for thisPR to be ready.

Back topnpm

Before including the changes made in my secondary PR, I decided to try one more time to wipe allnpm_modules, reinstallpnpm, rebase my branch, runpnpm install and finally push the newly createdpnpm-lock.yaml file.

Just likemagic, all the GitHub Actions jobs passed!

The simple explanation is that thepnpm-lock.yaml file had problems and despite my many attempts to generate aworking copy, it took thisone extra try to fix it. I suspect it was due to having originally installedpnpm from ascript and then not having it properly removed from my system before reinstalling it withnpm install -g pnpm.

Sticking with it

I had a few days where I felt like all the work was for nothing because there were numerous problems that I could not figure out.

In a way I am glad that I encountered so many obstacles because it allowed me to dive deeper in my understanding of package managers and Continuous Integration with GitHub Actions.

I want to end this post by saying that I am very pleased with the feedback I received from everyone in the telescope community after they started usingpnpm. Seeing all the positive comments made everything I worked on in the last few week even more worth it!

Top comments(1)

Subscribe
pic
Create template

Templates let you quickly answer FAQs or store snippets for re-use.

Dismiss
CollapseExpand
 
zaabta profile image
ali almanea
  • Joined
• Edited on• Edited

I still get ERROR
ERR_PNPM_FROZEN_LOCKFILE_WITH_OUTDATED_LOCKFILE  Cannot perform a frozen installation because the lockfile needs updates

Are you sure you want to hide this comment? It will become hidden in your post, but will still be visible via the comment'spermalink.

For further actions, you may consider blocking this person and/orreporting abuse

Read next

mikeyoung44 profile image

New 32B AI Model Masters Complex Reasoning Through Systematic Training Approach

Mike Young -

abhishek-dave-008 profile image

Java 24 Launches with JEP 483 for Enhanced Application Performance and Future Plans for 2025

Abhishek Dave -

rachellovestowrite profile image

Navigating the Landscape of Fair Code Licenses: The AFPL Unveiled

Rachel Duncan -

hayato8807 profile image

How to Build a Data App with Google Sheets Backend Using Evidence

hayato onodera -

  • Location
    Toronto, Canada
  • Joined

More fromFrancesco Menghi

DEV Community

We're a place where coders share, stay up-to-date and grow their careers.

Log in Create account

[8]ページ先頭

©2009-2025 Movatter.jp