mirror of
https://github.com/Foundry376/Mailspring.git
synced 2024-12-29 20:04:59 +08:00
c629967c3d
commit423cf4f407
Author: Ben Gotow <ben@foundry376.com> Date: Fri Oct 11 22:33:53 2019 -0500 Replace belcard with homegrown VCard parser because our needs are minimal and the linux binary has relocation issues commit4ae19c0ed5
Author: Ben Gotow <ben@foundry376.com> Date: Fri Oct 11 10:38:26 2019 -0500 Skip building a few more belr components, still looking for relocation error cause commita7ec02a449
Author: Ben Gotow <ben@foundry376.com> Date: Thu Oct 10 22:16:15 2019 -0500 Fix windows SRV record lookups for contact directory autodiscovery commit318a31d279
Author: Ben Gotow <ben@foundry376.com> Date: Thu Oct 10 20:50:06 2019 -0500 Leave vcard_grammar unpacked so mailsync can find it at runtime commitbf7e43e37d
Author: Ben Gotow <ben@foundry376.com> Date: Thu Oct 10 20:43:01 2019 -0500 Fix bug in icon case sensitivity commitc283513653
Author: Ben Gotow <ben@foundry376.com> Date: Thu Oct 10 17:29:24 2019 -0500 Renew Windows Authenticode code signing cert (there goes $500…) commitd13235f65b
Author: Ben Gotow <ben@foundry376.com> Date: Wed Oct 9 23:25:34 2019 -0500 Bump mailsync to move belr dlls commit00ca6431df
Author: Ben Gotow <ben@foundry376.com> Date: Wed Oct 9 23:22:53 2019 -0500 Bump to xcode9 to fix odd C++11 error commit47903c99c4
Author: Ben Gotow <ben@foundry376.com> Date: Wed Oct 9 23:01:32 2019 -0500 Bump mailsync to build belr as a dll instead of a static lib commit21d645d4e7
Author: Ben Gotow <ben@foundry376.com> Date: Wed Oct 9 22:38:24 2019 -0500 Bump mailsync commit3f943031cb
Author: Ben Gotow <ben@foundry376.com> Date: Wed Oct 9 21:57:39 2019 -0500 Bump mailsync to fix windows libetpan failure commit8fb55ca0fc
Author: Ben Gotow <ben@foundry376.com> Date: Wed Oct 9 21:36:57 2019 -0500 Bump mailsync, add grammar commitb959c54e50
Author: Ben Gotow <ben@foundry376.com> Date: Wed Oct 9 21:20:13 2019 -0500 Bump mailsync for linux / win32 commitddb5229d67
Author: Ben Gotow <ben@foundry376.com> Date: Tue Oct 8 22:44:12 2019 -0500 Bump mailsync commitf80e1bc422
Author: Ben Gotow <ben@foundry376.com> Date: Tue Oct 8 11:11:39 2019 -0500 Fix LESS linter failures commit66dc60a731
Author: Ben Gotow <ben@foundry376.com> Date: Tue Oct 8 11:00:37 2019 -0500 Extend participant search to return / expand groups commit3bded91307
Author: Ben Gotow <ben@foundry376.com> Date: Tue Oct 8 03:18:11 2019 -0500 Add comments, etc commit4ede5446de
Author: Ben Gotow <ben@foundry376.com> Date: Tue Oct 8 02:38:50 2019 -0500 Google People API contacts CRUD alongside CardDav commit96c6a64e46
Author: Ben Gotow <ben@foundry376.com> Date: Mon Oct 7 14:00:34 2019 -0500 Build ContactBook concept to track which accounts have sync running commit1f6aab1083
Author: Ben Gotow <ben@foundry376.com> Date: Mon Oct 7 11:38:03 2019 -0500 Contact and contact group CRUD, address book menus commitb877c58d48
Author: Ben Gotow <ben@foundry376.com> Date: Sun Oct 6 16:32:33 2019 -0500 Editing contact names working commit761079304c
Author: Ben Gotow <ben@foundry376.com> Date: Mon Sep 30 15:42:59 2019 -0500 Improved styling of YYYYMMDD field commit71a567276b
Author: Ben Gotow <ben@foundry376.com> Date: Mon Sep 30 15:06:28 2019 -0500 UI for edit + move + delete contacts commitf1967dd603
Author: Ben Gotow <ben@foundry376.com> Date: Thu Sep 26 13:50:44 2019 -0500 Allow you to turn on / off the “Found in Mail” autocompletions commit0c2b0eb03b
Author: Ben Gotow <ben@foundry376.com> Date: Thu Sep 26 13:50:14 2019 -0500 Improve contacts window launch perf by lazy loading composer support, scanning less of fs for themes commit07abd6cb71
Author: Ben Gotow <ben@foundry376.com> Date: Thu Sep 26 04:36:10 2019 -0500 Support for CardDav contact display, better groups presentation commit0a9e166d79
Author: Ben Gotow <ben@foundry376.com> Date: Tue Sep 24 12:42:37 2019 -0500 Add hidden attribute to the model in prep for deletion of auto-created contacts commite6ce3b2af9
Author: Ben Gotow <ben@foundry376.com> Date: Tue Sep 24 12:12:52 2019 -0500 Initial pass at address book commit740d7e8655
Author: Ben Gotow <ben@foundry376.com> Date: Tue Sep 24 08:27:06 2019 -0500 Make headers of Preferences > Accounts consistent with General
106 lines
2.8 KiB
TypeScript
106 lines
2.8 KiB
TypeScript
/*
|
|
* decaffeinate suggestions:
|
|
* DS001: Remove Babel/TypeScript constructor workaround
|
|
* DS101: Remove unnecessary use of Array.from
|
|
* DS102: Remove unnecessary code created because of implicit returns
|
|
* DS207: Consider shorter variations of null checks
|
|
* Full docs: https://github.com/decaffeinate/decaffeinate/blob/master/docs/suggestions.md
|
|
*/
|
|
import _ from 'underscore';
|
|
import { jasmine } from './jasmine';
|
|
|
|
export default class TimeReporter extends jasmine.Reporter {
|
|
constructor() {
|
|
super();
|
|
|
|
window.timedSpecs = [];
|
|
window.timedSuites = {};
|
|
|
|
window.logLongestSpec = () => this.logLongestSpecs(1);
|
|
window.logLongestSpecs = number => this.logLongestSpecs(number);
|
|
window.logLongestSuite = () => this.logLongestSuites(1);
|
|
window.logLongestSuites = number => this.logLongestSuites(number);
|
|
}
|
|
|
|
logLongestSuites(number, log) {
|
|
if (number == null) {
|
|
number = 10;
|
|
}
|
|
if (!(window.timedSuites.length > 0)) {
|
|
return;
|
|
}
|
|
|
|
if (log == null) {
|
|
log = line => console.log(line);
|
|
}
|
|
log('Longest running suites:');
|
|
const suites = _.map(window.timedSuites, (key, value) => [value, key]);
|
|
for (let suite of Array.from(_.sortBy(suites, suite => -suite[1]).slice(0, number))) {
|
|
const time = Math.round(suite[1] / 100) / 10;
|
|
log(` ${suite[0]} (${time}s)`);
|
|
}
|
|
}
|
|
|
|
logLongestSpecs(number, log) {
|
|
if (number == null) {
|
|
number = 10;
|
|
}
|
|
if (!(window.timedSpecs.length > 0)) {
|
|
return;
|
|
}
|
|
|
|
if (log == null) {
|
|
log = line => console.log(line);
|
|
}
|
|
log('Longest running specs:');
|
|
for (let spec of Array.from(_.sortBy(window.timedSpecs, spec => -spec.time).slice(0, number))) {
|
|
const time = Math.round(spec.time / 100) / 10;
|
|
log(`${spec.description} (${time}s)`);
|
|
}
|
|
}
|
|
|
|
reportSpecStarting(spec) {
|
|
const stack = [spec.description];
|
|
let { suite } = spec;
|
|
while (suite) {
|
|
stack.unshift(suite.description);
|
|
this.suite = suite.description;
|
|
suite = suite.parentSuite;
|
|
}
|
|
|
|
const reducer = function(memo, description, index) {
|
|
if (index === 0) {
|
|
return `${description}`;
|
|
} else {
|
|
return `${memo}\n${' '.repeat(index)}${description}`;
|
|
}
|
|
};
|
|
this.description = _.reduce(stack, reducer, '');
|
|
this.time = Date.now();
|
|
}
|
|
|
|
reportSpecResults(spec) {
|
|
if (this.time == null || this.description == null) {
|
|
return;
|
|
}
|
|
|
|
const duration = Date.now() - this.time;
|
|
|
|
if (duration > 0) {
|
|
window.timedSpecs.push({
|
|
description: this.description,
|
|
time: duration,
|
|
fullName: spec.getFullName(),
|
|
});
|
|
|
|
if (window.timedSuites[this.suite]) {
|
|
window.timedSuites[this.suite] += duration;
|
|
} else {
|
|
window.timedSuites[this.suite] = duration;
|
|
}
|
|
}
|
|
|
|
this.time = null;
|
|
this.description = null;
|
|
}
|
|
}
|