microsoft / microsoft/pxt

Unable to update multi-layer dependencies

Open
#9,740 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
TypeScript
Stars
2.3k
Forks
641
Avg merge
12h 4m
Merged PRs (30d)
57

Description

We have an extension (pxt-fwd-edu) that depends on pxt-jacdac. Ran into an issue where jacdac was updated to v1.9.19, but even when starting a new project with our extension, it would use my cached version (v1.9.13).

  • Using the refresh button for our extension in the javascript code explorer did not update the dependency
  • There is no similar button to refresh the dependencies
  • Adding jacdac separately added the current version's files in addition to the old version, but the new code didn't get used by the extension
  • Adding jacdac first, then our extension had the same issue
  • Opening chrome dev tools and choosing "Empty Cache and Hard Reload" did not resolve the issue.
  • Opening incognito and creating a new project worked as expected, so that jacdac v1.9.19 was added automatically

The issue was solved by going to chrome settings, and deleting all makecode.org data (chrome://settings/content/all?search=data)

This would be a challenge in the classroom since many boards don't allow the use of incognito or access to Chrome settings.

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

Start by reproducing the dependency behavior in the JavaScript code explorer with pxt-fwd-edu and pxt-jacdac, comparing a regular browser session with incognito or deleted makecode.org data. Trace how cached extension dependencies are selected and how refresh actions work. Done means a new dependency version is used without requiring users to delete site data.

Written by the indexing model from the issue text.

Assessment

Tech stack
typescript
Domain
developer-experience, tooling
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.