Closed samreid closed 5 years ago
In query-string-machine, we identified the buggy sha 570fe1febbd045d44b9d6d88433a7f8a9d84a1d6
and the fixed sha 1f64976a20ac1cf35c91c560f5e33df474eceec5
Therefore we used grunt maintenance
to run the following:
Maintenance.reset()
Maintenance.createPatch( 'query-string-machine', 'https://github.com/phetsims/query-string-machine/issues/34' )
Maintenance.addNeededPatchesAfter( 'query-string-machine', '570fe1febbd045d44b9d6d88433a7f8a9d84a1d6' )
Maintenance.removeNeededPatchesAfter( 'query-string-machine', '1f64976a20ac1cf35c91c560f5e33df474eceec5' )
Maintenance.list()
The result is:
maintenance> Maintenance.list()
area-model-algebra 1.2 phet (unreleased)
needs: query-string-machine
area-model-decimals 1.2 phet (unreleased)
needs: query-string-machine
area-model-introduction 1.2 phet (unreleased)
needs: query-string-machine
area-model-multiplication 1.2 phet (unreleased)
needs: query-string-machine
blackbody-spectrum 1.0 phet
needs: query-string-machine
capacitor-lab-basics 1.7 phet,phet-io (unreleased)
needs: query-string-machine
circuit-construction-kit-dc-virtual-lab 1.1 phet (unreleased)
needs: query-string-machine
energy-forms-and-changes 1.1 phet (unreleased)
needs: query-string-machine
fraction-matcher 1.2 phet (unreleased)
needs: query-string-machine
fractions-equality 1.1 phet (unreleased)
needs: query-string-machine
isotopes-and-atomic-mass 1.1 phet
needs: query-string-machine
ohms-law 1.4 phet
needs: query-string-machine
ph-scale 1.3 phet (unreleased)
needs: query-string-machine
ph-scale-basics 1.3 phet (unreleased)
needs: query-string-machine
phet-io-test-sim 1.1 phet-io
needs: query-string-machine
[query-string-machine] https://github.com/phetsims/query-string-machine/issues/34
area-model-algebra 1.2 phet
area-model-decimals 1.2 phet
area-model-introduction 1.2 phet
area-model-multiplication 1.2 phet
blackbody-spectrum 1.0 phet
capacitor-lab-basics 1.7 phet,phet-io
circuit-construction-kit-dc-virtual-lab 1.1 phet
energy-forms-and-changes 1.1 phet
fraction-matcher 1.2 phet
fractions-equality 1.1 phet
isotopes-and-atomic-mass 1.1 phet
ohms-law 1.4 phet
ph-scale 1.3 phet
ph-scale-basics 1.3 phet
phet-io-test-sim 1.1 phet-io
Summarizing, the published sims with this flaw (according to this process) are:
blackbody-spectrum 1.0 phet isotopes-and-atomic-mass 1.1 phet ohms-law 1.4 phet phet-io-test-sim 1.1 phet-io
It would be possible to do a maintenance release just for these 4 simulations, and that would fix the Android app. However, the other (unreleased)
simulations should get this fix too so that when they are published they will have the fix. Therefore @chrisklus and I recommend to run the full maintenance release process for this set.
From Slack:
Sam Reid [9:35 PM]
@chrisklus and I are starting a maintenance release process to address https://github.com/phetsims/query-string-machine/issues/34. Please do not make changes to any release branch until we give the go-ahead.
Chris Malley [9:36 PM]
Will that include unpublished release branches?
Sam Reid [9:39 PM]
In https://github.com/phetsims/query-string-machine/issues/34#issuecomment-512087941 we identified 4 published release branches with the symptom and 11 (unreleased) release branches. We thought it would be best to patch them all. (edited)
Do you concur?
Chris Malley [9:40 PM]
I’m not familiar with the issue. I was wondering mainly about pH Scale and pH Scale: Basics, which are both in the RC test phase on unpublished release branches.
Looks like they are in your list.
Sam Reid [9:43 PM]
So will this process publish new RCs?
Chris Malley [9:53 PM]
I would think that you don’t want to publish RCs for unpublished release branches. I’d prefer not for pH Scale & pH Scale: Basics, because there is still work to be done before the next RC. If you have to publish, I’ll just skip the version that you publish, and live with the discontinuity in RC version numbering. (edited)
Sam Reid [10:00 PM]
I’m not understanding the problem. ph-scale 1.3 branch will still need the fix. Are you requesting us to skip it so you can do it yourself later?
Or are you saying you want all of the problems identified in ph-scale 1.3.0-rc.1 to be fixed in ph-scale 1.3.0-rc.2 (including this problem)?
Sam Reid [10:08 PM]
After discussion, @chrisklus and I agreed we should go forward with patching this for as many branches as we can. We will manually remove ph-scale and ph-scale-basics so that @pixelzoom may apply the patch as part of his release candidate process.
@chrisklus and I manually removed entries from .maintenance.json for:
Here is the result of Maintenance.listLinks()
Release Candidate links
blackbody-spectrum 1.0 (https://github.com/phetsims/query-string-machine/issues/34)
isotopes-and-atomic-mass 1.1 (https://github.com/phetsims/query-string-machine/issues/34)
ohms-law 1.4 (https://github.com/phetsims/query-string-machine/issues/34)
Testing https://phet-dev.colorado.edu/html/blackbody-spectrum/1.0.1-rc.3/phet/blackbody-spectrum_en_phet.html, everything seems OK, but when we did a text diff between it and 1.0.0, there are numerous changes that we do not understand.
~/Desktop$ diff blackbody-spectrum_all_debug_PUB.html blackbody-spectrum_all_phet_debug-RC3.html
We'll check the others to see if there's a similar pattern.
UPDATE: We noted there were many changes in an RC that hadn't been published yet. Here is the RC issue that indicates no problems: https://github.com/phetsims/QA/issues/362. There was one commit after that, which we tested that is a good commit (constrains width of one panel to match another). So we are confident this can be published.
We tested isotopes and atomic mass and it seemed good. The diff indicated expected changes:
So we are confident about publishing that one.
Similar diff for Ohm's Law.
Since @chrisklus and I performed QA testing ourselves, and additional diff testing to make sure the changes were all intentional, we are ready to deploy the changes to production.
We deployed the changes to production and double-checked that they seem reasonable by testing in the browser and running text diffs between the RCs and the published versions. @ariel-phet can you please assign someone to verify that these 3 sims (blackbody-spectrum, isotopes-and-atomic-mass, ohms-law) now work properly in the android app?
For completeness, here are the maintenance steps we applied:
Maintenance.reset()
Maintenance.createPatch( 'query-string-machine', 'https://github.com/phetsims/query-string-machine/issues/34' )
Maintenance.addNeededPatchesAfter( 'query-string-machine', '570fe1febbd045d44b9d6d88433a7f8a9d84a1d6' )
Maintenance.removeNeededPatchesAfter( 'query-string-machine', '1f64976a20ac1cf35c91c560f5e33df474eceec5' )
Maintenance.list()
Maintenance.addPatchSHA( 'query-string-machine', '1f64976a20ac1cf35c91c560f5e33df474eceec5' )
Maintenance.applyPatches()
Maintenance.updateDependencies()
Maintenance.deployReleaseCandidates()
Maintenance.listLinks()
Maintenance.deployProduction()
@samreid just check this morning, all opening fine now, and did some quick spot checking just to make sure all was functioning.
Thanks to you and @chrisklus for handling this on a short time scale.
From https://github.com/phetsims/phet-android-app/issues/71, @ariel-phet requested that we publish maintenance releases for sims that use
localStorage
without try/catch.Some notes from slack: