Skip to content
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

Make emsdk-npm package versions follow EMSDK releases #1

Open
15 tasks done
devappd opened this issue Jan 2, 2021 · 1 comment
Open
15 tasks done

Make emsdk-npm package versions follow EMSDK releases #1

devappd opened this issue Jan 2, 2021 · 1 comment

Comments

@devappd
Copy link
Owner

devappd commented Jan 2, 2021

To follow this versioning scheme, make the NPM releases consistent with EMSDK. (This concerns emsdk-npm only).

  • Implement this by git branching for each EMSDK version. Branches are named v2.0.11, v2.0.10, etc. In each branch, store a default_version.js file that contains the EMSDK version string. This file sets the release to download for the rest of the package. Don't make the version string modifiable by the user. package.json is also edited to reflect the version.
  • Install EMSDK on npm install step when version is hardcoded
  • Make a CI runner to:
    • Mergemain changes to each version branch
    • Publish updated version branches
  • Make a CI runner to:
  • Investigate whether NPM recognizes +build version syntax and ranges them correctly. The +build part will track each main code merge. (e.g. v2.0.11+1609425262 represents the main revision dated 12/31/2020 that serves EMSDK 2.0.11)
  • Track separate NPM packages for the following scenarios:
    • emscripten-sdk: Versioned packages in llvm backend, e.g., emscripten-sdk@2.0.11, emscripten-sdk@2.0.10, etc.
    • emscripten-sdk-npm: Generic package for full control: e.g., requesting latest, fastcomp, tot

Versioning syntax

devappd added a commit that referenced this issue Jan 3, 2021
devappd added a commit that referenced this issue Jan 3, 2021
devappd added a commit that referenced this issue Jan 3, 2021
devappd added a commit that referenced this issue Jan 4, 2021
devappd added a commit that referenced this issue Jan 4, 2021
devappd added a commit that referenced this issue Jan 4, 2021
devappd added a commit that referenced this issue Jan 5, 2021
devappd added a commit that referenced this issue Jan 13, 2021
See #1

Install EMSDK on npm install if versioned

validateVersion(): Handle falsy input
@devappd
Copy link
Owner Author

devappd commented Jan 13, 2021

EDIT: This now works in every version except 1.39.9

Log
npm publish --tag=${GITHUB_REF##*/} --access public
  shell: /bin/bash -e {0}
  env:
    NPM_CONFIG_USERCONFIG: /home/runner/work/_temp/.npmrc
    NODE_AUTH_TOKEN: ***
npm notice 
npm notice 📦  emscripten-sdk@1.40.0-1
npm notice === Tarball Contents === 
npm notice 1.1kB LICENSE                           
npm notice 99B   test/example-build/main.cpp       
npm notice 3.9kB src/common.js                     
npm notice 1.8kB src/emsdk-checkout.js             
npm notice 1.8kB src/emsdk-pull.js                 
npm notice 4.2kB src/emsdk-run.js                  
npm notice 2.0kB src/emsdk.js                      
npm notice 4.9kB src/index.js                      
npm notice 3.2kB src/path.js                       
npm notice 1.8kB src/postinstall.js                
npm notice 4.5kB test/test.js                      
npm notice 3.9kB src/version.js                    
npm notice 801B  package.json                      
npm notice 681B  docs/How-It-Works.md              
npm notice 1.2kB .github/workflows/README.md       
npm notice 3.6kB readme.md                         
npm notice 1.3kB .github/workflows/deploy-emsdk.yml
npm notice 1.5kB .github/workflows/deploy-npm.yml  
npm notice 624B  .github/workflows/test-branch.yml 
npm notice === Tarball Details === 
npm notice name:          emscripten-sdk                          
npm notice version:       1.40.0-1                                
npm notice package size:  10.0 kB                                 
npm notice unpacked size: 42.9 kB                                 
npm notice shasum:        415459464b398504db3965decffc10bdfa253bb9
npm notice integrity:     sha512-+jyB336qgecx0[...]GBEmTJlA9ZoyQ==
npm notice total files:   19                                      
npm notice 
npm ERR! code E400
npm ERR! 400 Bad Request - PUT https://registry.npmjs.org/emscripten-sdk - Must associate a single dist tag with new publishes.

npm ERR! A complete log of this run can be found in:
npm ERR! /home/runner/.npm/_logs/2021-01-13T19_02_00_638Z-debug.log

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

No branches or pull requests

1 participant