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

Cleanup our release process. #361

Closed
jimmyhchan opened this issue Nov 8, 2013 · 6 comments
Closed

Cleanup our release process. #361

jimmyhchan opened this issue Nov 8, 2013 · 6 comments

Comments

@jimmyhchan
Copy link
Contributor

What we are doing today:

  • write a lot of code
  • possibly update the version in package.json
  • possibly run make dust maybe...
  • commit
  • at some point, tag in git and npm publish

Proposal -- separate everyday commits and release commits:

  • add a build directory that is .gitignored and .npmignored
  • change make dust write to this build directory
  • change make test so that it makes dust and uses the built dust to run tests
  • change make clean to empty out the buid directory
  • change make release so that it makes dust, tests and copies the results into dist

everyday commits will improve:

  • pull requests will not include dist/* changes
  • pull requests will not change the package.json
  • tests will be against the built code which includes the compiler and parsers which was directly referenced before.

release process will improve:

  • releasing will also run a build and tests
  • releases will have a release commit so it's pretty obvious when we bump the version
@rragan
Copy link
Contributor

rragan commented Nov 11, 2013

+1

@andrewwakeling
Copy link

+1.

It would be great if:

  • there were only the latest versions of the core and full libraries in "dist"
  • the minified versions of the libraries were always part of the release too ("make" isn't very Windows friendly)

@jimmyhchan
Copy link
Contributor Author

@andrewwakeling can you elaborate on the issue with minified versions in the release. I assume you are referring to the github release zipfiles/tarballs. They appears to have the entire dist folder which has every version with uncompressed and minified.

@andrewwakeling
Copy link

@jimmyhchan Yes. I'm referring to the github release zipfiles/tarballs. I assuming that people who want to get dustjs will always download these (as they are the ones linked on http://linkedin.github.io/dustjs/).
Not every version that exists in "dist" has an equivalent minified version (e.g. I can see dust-full-2.2.0.js but there is no dust-full-2.2.0.min.js).
I don't think it's great to store previous versions in this manner, but my biggest issue is that there isn't always a minified version for the latest version.
It's made slightly worse because the current process of producing a minified version of the library is to use "make", which isn't so great for Windows developers.

Edit: I just confirmed that there's no 2.2.0 minified JS files when using "npm install dustjs-linkedin" as well.

@jimmyhchan
Copy link
Contributor Author

Confirmed as well. That's definitely bad.

Adding to the list of TODOs

  • add a command to make release that creates a zip and a tarball
  • checkout each tagged version and remake all the releases
  • upload them to http://linkedin.github.io/dustjs/ as "previous releases"

@jimmyhchan
Copy link
Contributor Author

Pulled & closing

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants