Commit Graph

59 Commits

Author SHA1 Message Date
filipenevola
62c0f6c5c8 Improves tests and logs
Added new options to be easier to run in batches
- skip
- limit
- plan
2021-02-11 15:05:28 -04:00
filipenevola
883d58106c Improves tests and logs 2021-02-10 18:49:23 -04:00
Ben Newman
9cba123401 Restore CLI progress messages by revisiting progress.ts conversion.
I noticed recently that progress messages were no longer displayed (though
the ASCII spinner was still animating). I bisected the problem to the
progress.ts conversion in #10650, and I attempted to reproduce the
conversion, step by step. The problem ended up being the renaming of
._title to .title, which was a mistake because external code accesses
progress._title. Once I updated those invasive access points, progress
messages began displaying once again.
2019-09-19 19:01:33 -04:00
Michael Newman
26c0d5cf16 Convert tools/console/progress.js to TypeScript (#10650) 2019-07-26 09:22:19 -04:00
zodern
eb5c0b5eed Fix checking for a rerender timeout (#10523) 2019-05-02 19:35:44 -04:00
zodern
f9d17aaf0f Fix delaying render 2019-01-16 22:17:28 -06:00
zodern
a985bf4b22 Throttle rendering progress in updateProgress 2019-01-04 22:55:52 -06:00
Ben Newman
6b3cc2e94f Avoid displaying package stats errors in headless mode.
Console.isInteractive() will be false during our Circle CI test runs,
since we set the METEOR_HEADLESS environment variable, so this change
should help prevent spurious test failures like these:
https://circleci.com/gh/meteor/meteor/15305.
2018-04-02 12:32:50 -04:00
Jesse Rosenberger
20307f8d72 Change top-level const-like variables to actual consts. 2017-12-12 17:19:55 +02:00
Jesse Rosenberger
b70d01c5b0 Remove Underscore from Meteor "console" module. 2017-12-12 17:19:50 +02:00
Jesse Rosenberger
d35b1e240e Use Object.create(null) rather than object literal notation.
To avoid any unintended inheritance of non-"own" properties.
2017-12-12 17:19:35 +02:00
Jesse Rosenberger
0f18f96a18 Switch to using import syntax in Meteor console module. 2017-12-12 17:19:27 +02:00
Jesse Rosenberger
7268fb8ca0 Improve Emacs shell support by auto-detecting Emacs.
This adds a memoized helper function for detecting Emacs throughout the
CLI tool and automatically resorts to "ProgressDisplayStatus" mode when
Emacs is enabled.

In my tests with both Emacs 22 and 27, this nearly doubled performance
when using Meteor from within the Emacs shell (i.e. `M-x shell`).
2017-12-12 17:19:16 +02:00
David Glasser
c8fd6e855e tools: allow explicitly opting in to low-fi status display
I think this was originally designed for Emacs shell but at some point Emacs or
Node improved so that Node finds columns for Emacs shell and switches to the
full display.

Switching to the status-only display leads to massive speedups when doing builds
in my Emacs shell.
2017-11-09 18:11:37 -08:00
Jesse Rosenberger
d86b0c712e Be more considerate of interactive environments and expired tokens. (#9015)
If a login token is expired, or no longer valid, make sure that Meteor doesn't
just sit there at a login prompt that the user can't see.

This currently only applies if `headless` mode is enabled, though a follow-up
to this commit might consider setting `headless = true` automatically
in a CI environment using environment variables such as: `CI`, `TRAVIS`,
`JENKINS_URL`, etc., as the npm-registry-client does in a similar way.

See: https://github.com/npm/npm-registry-client/pull/129/files

Fixes #8839.
2017-08-16 11:21:53 -04:00
Ben Newman
21d2dab151 Merge branch 'master' into devel 2017-07-12 18:43:27 -04:00
Rob Fallows
7d2416435b (re)fixes #8879 Build phase command line output jumps 2017-07-12 14:43:45 -04:00
Jesse Rosenberger
3a6e4eb199 Replace remaining selfs with this in new Console classes. 2017-07-10 12:42:07 -07:00
Jesse Rosenberger
d54631f78b Change most function expressions into ES arrow functions. 2017-07-10 12:42:06 -07:00
Jesse Rosenberger
200627168c Change ProgressDisplayNone to an ES class. 2017-07-10 12:42:05 -07:00
Jesse Rosenberger
ca9034147b Change some var constants to use const. 2017-07-10 12:42:04 -07:00
Jesse Rosenberger
bc044092dd Finish changing ProgessBarRenderer to an ES class. 2017-07-10 12:42:04 -07:00
Jesse Rosenberger
bf67d802fc Begin changing ProgressBarRenderer to an ES class. 2017-07-10 12:42:03 -07:00
Jesse Rosenberger
edeaa5814e Finish changing ProgessDisplayStatus to an ES class. 2017-07-10 12:42:02 -07:00
Jesse Rosenberger
95cdc19795 Begin changing ProgressDisplayStatus to an ES class. 2017-07-10 12:42:01 -07:00
Jesse Rosenberger
eafb26aac9 Finish changing StatusPoller to an ES class. 2017-07-10 12:42:01 -07:00
Jesse Rosenberger
bfed1ab7b5 Begin changing StatusPoller to an ES class. 2017-07-10 12:42:00 -07:00
Jesse Rosenberger
e077a71fed Change SpinnerRenderer into an ES class. 2017-07-10 12:41:59 -07:00
Jesse Rosenberger
cee5a3e5d6 Finish moving ProgressDisplayFull to an ES class. 2017-07-10 12:41:58 -07:00
Jesse Rosenberger
1187034bb9 Begin changing ProgressDisplayFull into a ES class. 2017-07-10 12:41:58 -07:00
Jesse Rosenberger
1b7b4cffbc Move the CARRIAGE_RETURN constant with the other constants. 2017-07-10 12:41:57 -07:00
Jesse Rosenberger
b01a2fe0be Change self to this in new Console class.
This also involved changing `function`s into arrow-functions, sometimes
for the sake of posterity.
2017-07-10 12:41:56 -07:00
Jesse Rosenberger
dc242340a8 Preserve the LEVEL_* static properties above the Console class.
Though they don't appear to actually be used anywhere by Meteor, it's
probably worth preserving them in case they are somehow exposed
elsewhere.  Static class properties would avoid this, but the TC39
proposal is still progressing.
2017-07-10 12:41:55 -07:00
Jesse Rosenberger
f757154c12 Begin changing Console to an ES class. 2017-07-10 12:41:54 -07:00
Jesse Rosenberger
774ac5fdba Change ConsoleOptions into a class. 2017-07-10 12:41:54 -07:00
Jesse Rosenberger
7fda52c681 Move LEVEL_CODE_* constants above where they are used. 2017-07-10 12:41:53 -07:00
Jesse Rosenberger
8e5ad19f17 Console#readLine into existing _.extend(Console.prototype, {...});. 2017-07-10 12:41:49 -07:00
Ben Newman
5d0da71e27 Use process.env.METEOR_HEADLESS in CI tests.
This should also fix a bug where Console.isHeadless() was returning false
in tests.

Follow-up to #8037.
2016-12-06 12:47:05 -05:00
Ben Newman
e804c00e97 Merge pull request #8037 from mitar/headless
Respect METEOR_HEADLESS environment variable.
2016-12-01 10:18:52 -05:00
Mitar
fca0dccd20 Parse JSON for the flag. 2016-11-30 03:18:52 -08:00
Rhywden
b029732a11 Fix for console output in PowerShell on Win10
See https://github.com/meteor/meteor/issues/6785

Basically, 
```
new Array(249).join('\b')
```
is not a good idea for a carriage return. Code has been tested with CMD, PowerShell and PowerShell in Legacy Mode and seems to solve the issue.
2016-11-21 20:34:11 +01:00
Mitar
3ee60f57e5 Allow global headless setting. 2016-11-09 22:53:28 -08:00
Ben Newman
2553958c38 Merge branch 'devel' into release-1.4.2 2016-10-07 19:30:30 -04:00
Ben Newman
a24448e7a7 Merge pull request #7885 from abernix/feature/fix-console-success
`Console.success` should provide an indicator when pretty is disabled
2016-10-07 09:58:36 -04:00
Jesse Rosenberger
58a6d743c8 Console.success should provide an indicator when pretty is disabled
`Console.success` is currently called in only one place but it relies on the fact that `pretty` console mode is enabled for it to make any sense.  This adds the ability to pass an "ugly" (less pretty?) message to `Console.success` (default: "success") and changes the Cordova dependency checker to use "installed" when showing a met-dependency.

Fixes meteor/meteor#7883
2016-10-07 13:41:39 +03:00
Jesse Rosenberger
1d3d6c2bda Fix for Console.failInfo and Console.failWarn when pretty is false
These functions were both using the `Console._fail` function which is passed a severity of failure as a string (e.g. "warn", "error", etc.) which corresponds to the appropriate `Console` function.  Previously, the string was just being called as if it was a function.

Fixes meteor/meteor#7882
2016-10-07 13:36:59 +03:00
Ben Newman
9304f76b52 Fix tests by avoiding printing inotify warning when Console.isHeadless(). 2016-09-27 11:09:46 -04:00
Ben Newman
93d8281f48 Implement Console.setHeadless instead of Console.{enable,disable}Spinner. 2016-05-17 19:53:12 -04:00
Ben Newman
05dfe24438 Avoid test timeouts by printing keepalive message every 5min.
Even though @abernix set the circle.yml timeout to 1200 seconds, I'm still
seeing tests occasionally time out. This commit should prevent timeouts by
printing a "[ProgressDisplayFull keepalive]" message every five minutes,
if nothing else has been printed in the meantime.

Related: https://github.com/meteor/meteor/pull/7063
2016-05-17 14:41:17 -04:00
Ben Newman
b3bcdbafda Disable progress spinner when running headless CI tests. 2016-05-09 18:00:32 -04:00