-
Notifications
You must be signed in to change notification settings - Fork 59
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
[WIP] Aegir@next #134
[WIP] Aegir@next #134
Conversation
dignifiedquire
commented
Jul 2, 2017
•
edited
Loading
edited
- Extract eslint config into eslint-config-aegir
- Improve cli interface
- Refactor task runner to hopefully drop gulp
- lint
- build
- test
- coverage
- release
- docs
- Upgrade uglify to uglify-es
- Update to webpack@3
- tests
- setup
- lint
- build
- test
- coverage
- release
- docs
- update docs
- migration guide
- test with js-ipfs
- ensure all test options are available on release and coverage
- remove sauce labs
- remove old binary references
- Now uses eslint-config-aegir for rules. - Updated to the latest version of standard - Updated to the eslint@4
wooooooot! :D ❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️ |
Please make things like docs and pushing a changelog mandatory (i.e check for the Github token and fail if it is not there) |
I like the new |
|
that's already the case with the new structure, it is now |
I get excited every time I get a notification that there has been a new commit in this PR :D |
Codecov Report
@@ Coverage Diff @@
## master #134 +/- ##
=========================================
Coverage ? 32.05%
=========================================
Files ? 32
Lines ? 418
Branches ? 0
=========================================
Hits ? 134
Misses ? 284
Partials ? 0
Continue to review full report at Codecov.
|
src/config/custom.js
Outdated
@@ -1,5 +1,5 @@ | |||
'use strict' | |||
|
|||
module.exports = { | |||
timeout: 80 * 1000 | |||
timeout: 40 * 1000 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
What about 5 secs and any test that needs more either should get it running below 5 secs or explicitly signal that? (and I say 5 and not 2 just because of CI vs user machines)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I have seen many many tests that take longer than 5 seconds on both CI and locally so I am not sure this will just result in tons of test manually extending the timeout, which is worse imho than setting a relative high value here
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think that is a symptom of us not having something to remind us that certain operations should be fast and/or that tests should be a unit and not a massive set of operations.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
} | ||
``` | ||
|
||
You can also specify `hooks.browser` and `hooks.node` if you have a different setup for browser and/or node based tests. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
what about hooks.electron and hooks.cordova? Will it be easy to extend to support those runtimes as well?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
if we support running tests in them yes
README.md
Outdated
|
||
### Renamed binaries | ||
|
||
`aegir` is now a single binary with subcommands. While something like `aegir-test` still works, we recommend to switch to the new `aegir test` syntax. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Since this is going to be a major release, you might just want to clean all of that old code anyway :)
README.md
Outdated
|
||
### Switch from Mocha to Jest | ||
|
||
Because the mocha binary was the source of many pains tests in node are now run using [Jest](https://facebook.github.io/jest/). All important features should work as before, but if you were relying on a mocha specific feature it might break now. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
👍
Status update, most of the work inside this project is done. But before we can move forward we need to fix jestjs/jest#2059 which impacts us in a strong way as most of our tests are written in this particular style that causes issues in Jest. I have started looking into this, but not figured out all details yet. |
Jest work is happening here: https://github.com/dignifiedquire/jest/tree/fix/async-tests |
One thing to consider is that we keep bumping the limit of nested callbacks to 8, maybe set that as the sane default? |
When you say that |
Checking in here. I know this PR is blocked due to |
We would loose some of the nice things and one of the main issues I moved away from mocha is that it had this great issue where it couldn't be properly killed, so that issue would be partially back. Going to work on the jest pr in the next days and see if I can either get it merged or otherwise publish my fork in a way we can start using it |
Merging this, this branch was open long enough |