-
Notifications
You must be signed in to change notification settings - Fork 2
Conversation
Move from CoffeeScript to JavaScript so the code is actually readable, and allowing things like `async`/`await`. Also moves the configuration to a `configSchema` in the `package.json` file. Dependencies are deferred till they are actually needed, with an opportunistic load during an "idle" time.
Convert the specs to JavaScript and utilize `async`/`await` to clean them up.
Update the Linter API to v2 so this provider isn't stuck in the past.
Add a configuration for `commitlint` that enforces Angular-like commit messages in preparation for adding of `semantic-release`.
In I see from your Travis build that you added the I see that you are using In your - after_success:
- - npm run travis-deploy-once "npm run semantic-release"
+ jobs:
+ include:
+ - stage: release
+ node_js: node
+ os: linux
+ after_success:
+ - npm run semantic-release And in your "scripts": {
"commitmsg": "commitlint -e $GIT_PARAMS",
"semantic-release": "semantic-release",
- "travis-deploy-once": "travis-deploy-once"
}, This way you will have your 2 regular jobs running, and when they are both successful, the release job would run and do a release if necessary. It has the advantage of relying on Travis itself rather than the If you decide to go with |
Looks great to me! Address what @pvdlg brought up and I think this will make a great standard for AtomLinter packages. |
Hmmm, I thought we had that exporting in that script, I'll fix it there (with a temporary workaround here) if not.
There are actually two
I actually looked into that, but as Of course if I was going to go that far I'd probably just get this running correctly in CircleCI as I much prefer their infrastructure. |
Fixed btw, missed it in one of the rebases. |
Utilize the new shared config for APM for `semantic-release` in order to automate deployment from CI. Notes: Uses `travis-deploy-once` instead of Build Stages since we would need to reconfigure Atom in the deploy job if using Build Stages.
Update the TravisCI configuration to match the current `atom/ci` recommendation.
@pvdlg Is there a way to see what changelog will be generated?
I'd messed up the declaration, that's why only the second one was showing up. |
I think it add
Sorry I missed that :)
You can run |
semantic-release/apm-config#5 is fixed. Everything should be good to go I think. Let me know if any other issue happens. |
Note: The following breaking change was implemented and documented in 3e6355b, before `semantic-release` was brought in. BREAKING CHANGE: The `executablePath` setting has been removed and is no longer available. `linter-pug` will now use your project's local `pug-lint` when one can be found using the standard `require.resolve` implementation. If one can't be found local to your project then the bundled one will be used as a fallback.
The changelog needs some work (every newline is a new breaking change???), but it will work "good enough" for this small test, merging! |
The checks are not evaluated in a PR, we skip the release right away. The release failed because If you push a commit that adds |
Hmmm, what do you think about running in |
We skip everything in PR because the environment variables are not available in PR done from a downstream repo.
So we can't run anything in a PR as most verification check the validity of auth token and we can't access them. The Ideally we'd like to run the verification in PRs and inform the users about the release that will be performed by merging the PR, but that would require a GitHub App. See semantic-release/semantic-release#585. |
Excellent point, thanks for the issue reference! |
Regarding the change log,
The changelog is generated by conventional-changelog. Issues/PR can be opened there for improvement. If you have a suggestion for a better tool to generate the changelog we can certainly consider to use it in semantic-release. In the current implementation, in my experience each no new line doesn't generate a breaking change. I usually format my breaking change commit like this:
Maybe the problem happens if you have a new line directly after |
Btw, regarding the I can do it if you'd like. |
I helped write most of those scripts, I'll be debugging that and thinking of a solution there 😉. |
Btw @pvdlg it looks like the changelog is generated correctly for the actual release, the CLI gave me this:
|
This PR accomplishes several things:
async
/await
where possible.semantic-release
andcommitlint
I'm using this as a testbed for
semantic-release
in order to test it before larger use through AtomLinter. See AtomLinter/Meta#18 for a bit more information.@keplersj / @pvdlg I'd appreciate a look over the
semantic-release
related bits (or the rest if you want 😛) to make sure I haven't missed something or that there isn't a better way to do things since I'm basically starting from scratch for CD here 😉.