heroku 11.0.2 → 11.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +12 -0
- package/README.md +14 -16
- package/bin/run.js +13 -49
- package/dist/commands/domains/add.d.ts +1 -1
- package/dist/commands/pg/backups/schedule.d.ts +1 -1
- package/dist/commands/spaces/index.d.ts +1 -1
- package/dist/commands/spaces/vpn/connections.d.ts +1 -1
- package/dist/hooks/command_not_found/performance_analytics.js +5 -4
- package/dist/hooks/finally/sentry.d.ts +3 -0
- package/dist/hooks/finally/sentry.js +42 -0
- package/dist/hooks/init/performance_analytics.js +5 -4
- package/dist/hooks/postrun/performance_analytics.js +6 -6
- package/dist/hooks/prerun/analytics.js +14 -7
- package/dist/lib/analytics-telemetry/global-telemetry.d.ts +30 -0
- package/dist/lib/analytics-telemetry/global-telemetry.js +103 -0
- package/dist/lib/analytics-telemetry/honeycomb-client.d.ts +15 -0
- package/dist/lib/analytics-telemetry/honeycomb-client.js +135 -0
- package/dist/lib/analytics-telemetry/sentry-client.d.ts +9 -0
- package/dist/lib/analytics-telemetry/sentry-client.js +58 -0
- package/dist/lib/analytics-telemetry/telemetry-utils.d.ts +68 -0
- package/dist/lib/analytics-telemetry/telemetry-utils.js +115 -0
- package/dist/lib/analytics-telemetry/telemetry-worker.d.ts +5 -0
- package/dist/lib/analytics-telemetry/telemetry-worker.js +37 -0
- package/dist/lib/analytics-telemetry/worker-client.d.ts +15 -0
- package/dist/lib/analytics-telemetry/worker-client.js +44 -0
- package/dist/lib/api.d.ts +1 -1
- package/dist/lib/apps/app-transfer.d.ts +1 -1
- package/dist/lib/apps/error_info.d.ts +1 -1
- package/dist/lib/apps/generation.d.ts +3 -3
- package/dist/lib/buildpacks/buildpacks.d.ts +1 -1
- package/dist/lib/container/docker_helper.d.ts +4 -4
- package/dist/lib/data/types.d.ts +37 -37
- package/dist/lib/domains/domains.js +15 -8
- package/dist/lib/pg/download.d.ts +1 -1
- package/dist/lib/pg/push_pull.d.ts +1 -1
- package/dist/lib/pg/setter.d.ts +1 -1
- package/dist/lib/pg/types.d.ts +31 -31
- package/dist/lib/pipelines/setup/validate.d.ts +1 -1
- package/dist/lib/redis/api.d.ts +7 -7
- package/dist/lib/spaces/hosts.d.ts +1 -1
- package/dist/lib/types/app_errors.d.ts +1 -1
- package/dist/lib/types/completion.d.ts +1 -1
- package/dist/lib/types/favorites.d.ts +2 -2
- package/dist/lib/types/notifications.d.ts +3 -3
- package/dist/lib/utils/multisort.d.ts +1 -1
- package/npm-shrinkwrap.json +837 -842
- package/oclif.manifest.json +1018 -1018
- package/package.json +7 -5
- package/dist/global_telemetry.d.ts +0 -62
- package/dist/global_telemetry.js +0 -216
package/dist/lib/pg/setter.d.ts
CHANGED
|
@@ -11,6 +11,6 @@ export declare abstract class PGSettingsCommand extends Command {
|
|
|
11
11
|
};
|
|
12
12
|
run(): Promise<void>;
|
|
13
13
|
}
|
|
14
|
-
export
|
|
14
|
+
export type BooleanAsString = 'on' | 'ON' | 'true' | 'TRUE' | 'off' | 'OFF' | 'false' | 'FALSE';
|
|
15
15
|
export declare const booleanConverter: (value: BooleanAsString) => boolean;
|
|
16
16
|
export declare const numericConverter: (value: string) => number;
|
package/dist/lib/pg/types.d.ts
CHANGED
|
@@ -1,15 +1,15 @@
|
|
|
1
1
|
import * as Heroku from '@heroku-cli/schema';
|
|
2
|
-
export
|
|
2
|
+
export type TransferSchedule = {
|
|
3
3
|
hour: number;
|
|
4
4
|
name: string;
|
|
5
5
|
timezone: string;
|
|
6
6
|
uuid: string;
|
|
7
7
|
};
|
|
8
|
-
export
|
|
8
|
+
export type PublicUrlResponse = {
|
|
9
9
|
url: string;
|
|
10
10
|
};
|
|
11
|
-
|
|
12
|
-
export
|
|
11
|
+
type TransferTargetType = 'pg_dump' | 'pg_restore' | 'gof3r' | 'htcat';
|
|
12
|
+
export type BackupTransfer = {
|
|
13
13
|
uuid: string;
|
|
14
14
|
num: number;
|
|
15
15
|
from_name: string;
|
|
@@ -42,12 +42,12 @@ export declare type BackupTransfer = {
|
|
|
42
42
|
message: string;
|
|
43
43
|
}>;
|
|
44
44
|
};
|
|
45
|
-
export
|
|
45
|
+
export type ExtendedAddon = {
|
|
46
46
|
addon_service: Required<Heroku.AddOnService>;
|
|
47
47
|
plan: Required<Heroku.Plan>;
|
|
48
48
|
} & Required<Heroku.AddOn>;
|
|
49
|
-
|
|
50
|
-
export
|
|
49
|
+
type ServiceInfo = 'Status' | 'Fork/Follow' | 'Rollback' | 'Created' | 'Region' | 'Data Encryption' | 'Continuous Protection' | 'Enhanced Certificates' | 'Upgradable Extensions' | 'Plan' | 'HA Status' | 'Behind By' | 'Data Size' | 'Tables' | 'PG Version' | 'Connections' | 'Connection Pooling' | 'Credentials' | 'Restricted Credentials' | 'Mutual TLS' | 'Customer Encryption Key' | 'Following' | 'Forked From' | 'Followers' | 'Forks' | 'Maintenance' | 'Maintenance window' | 'Infrastructure' | 'Warning';
|
|
50
|
+
export type PgDatabaseService = {
|
|
51
51
|
addon_id: string;
|
|
52
52
|
name: string;
|
|
53
53
|
heroku_resource_id: string;
|
|
@@ -88,24 +88,24 @@ export declare type PgDatabaseService = {
|
|
|
88
88
|
values: string[];
|
|
89
89
|
}>;
|
|
90
90
|
};
|
|
91
|
-
export
|
|
91
|
+
export type PgStatus = {
|
|
92
92
|
'waiting?': boolean;
|
|
93
93
|
'error?': boolean;
|
|
94
94
|
message: string;
|
|
95
95
|
};
|
|
96
|
-
export
|
|
96
|
+
export type PgUpgradeStatus = {
|
|
97
97
|
'waiting?': boolean;
|
|
98
98
|
'error?': boolean;
|
|
99
99
|
message: string;
|
|
100
100
|
step: string;
|
|
101
101
|
};
|
|
102
|
-
|
|
103
|
-
export
|
|
102
|
+
type TenantInfoNames = 'Plan' | 'Status' | 'Connections' | 'PG Version' | 'Created' | 'Data Size' | 'Tables' | 'Fork/Follow' | 'Rollback' | 'Continuous Protection' | 'Billing App' | 'Add-on';
|
|
103
|
+
export type TenantInfo = {
|
|
104
104
|
name: TenantInfoNames;
|
|
105
105
|
values: string[];
|
|
106
106
|
resolve_db_name?: boolean;
|
|
107
107
|
};
|
|
108
|
-
export
|
|
108
|
+
export type PgDatabaseTenant = {
|
|
109
109
|
addon_id: string;
|
|
110
110
|
name: string;
|
|
111
111
|
plan: string;
|
|
@@ -118,17 +118,17 @@ export declare type PgDatabaseTenant = {
|
|
|
118
118
|
num_bytes: number;
|
|
119
119
|
info: Array<TenantInfo>;
|
|
120
120
|
};
|
|
121
|
-
export
|
|
122
|
-
export
|
|
121
|
+
export type PgDatabase = PgDatabaseService & PgDatabaseTenant;
|
|
122
|
+
export type PgUpgradeResponse = {
|
|
123
123
|
message: string;
|
|
124
124
|
};
|
|
125
|
-
export
|
|
125
|
+
export type PgUpgradeError = {
|
|
126
126
|
body: {
|
|
127
127
|
id: string;
|
|
128
128
|
message: string;
|
|
129
129
|
};
|
|
130
130
|
};
|
|
131
|
-
export
|
|
131
|
+
export type Link = {
|
|
132
132
|
id: string;
|
|
133
133
|
created_at: string;
|
|
134
134
|
name: string;
|
|
@@ -138,24 +138,24 @@ export declare type Link = {
|
|
|
138
138
|
attachment_name: string;
|
|
139
139
|
};
|
|
140
140
|
};
|
|
141
|
-
export
|
|
141
|
+
export type MaintenanceApiResponse = {
|
|
142
142
|
message: string;
|
|
143
143
|
};
|
|
144
|
-
export
|
|
144
|
+
export type PgDatabaseConfig = {
|
|
145
145
|
[key: string]: any;
|
|
146
146
|
'log_lock_waits': {
|
|
147
147
|
value: boolean;
|
|
148
148
|
};
|
|
149
149
|
};
|
|
150
|
-
export
|
|
151
|
-
export
|
|
150
|
+
export type SettingKey = 'log_lock_waits' | 'log_connections' | 'log_min_duration_statement' | 'log_min_error_statement' | 'log_statement' | 'track_functions' | 'pgbouncer_max_client_conn' | 'pg_bouncer_max_db_conns' | 'pg_bouncer_default_pool_size' | 'data_connector_details_logs' | 'auto_explain' | 'auto_explain.log_min_duration' | 'auto_explain.log_analyze' | 'auto_explain.log_triggers' | 'auto_explain.log_buffers' | 'auto_explain.log_verbose' | 'auto_explain.log_nested_statements' | 'auto_explain.log_format';
|
|
151
|
+
export type Setting<T> = {
|
|
152
152
|
value: T;
|
|
153
153
|
values: Record<string, string>;
|
|
154
154
|
desc: string;
|
|
155
155
|
default: T;
|
|
156
156
|
};
|
|
157
|
-
export
|
|
158
|
-
export
|
|
157
|
+
export type SettingsResponse = Record<SettingKey, Setting<unknown>>;
|
|
158
|
+
export type PGDiagnoseResponse = {
|
|
159
159
|
id: string;
|
|
160
160
|
app: string;
|
|
161
161
|
database: string;
|
|
@@ -170,21 +170,21 @@ export declare type PGDiagnoseResponse = {
|
|
|
170
170
|
PGDiagnoseCheck<BlockingResult>
|
|
171
171
|
];
|
|
172
172
|
};
|
|
173
|
-
export
|
|
173
|
+
export type PGDiagnoseCheck<T extends PGDiagnoseResult = PGDiagnoseResult> = {
|
|
174
174
|
name: string;
|
|
175
175
|
status: 'red' | 'yellow' | 'green';
|
|
176
176
|
results: T[];
|
|
177
177
|
};
|
|
178
|
-
export
|
|
179
|
-
export
|
|
178
|
+
export type PGDiagnoseResult = ConnCountResult | QueriesResult | UnusedIndexesResult | BloatResult | HitRateResult | BlockingResult;
|
|
179
|
+
export type ConnCountResult = {
|
|
180
180
|
count: number;
|
|
181
181
|
};
|
|
182
|
-
export
|
|
182
|
+
export type QueriesResult = {
|
|
183
183
|
pid: number;
|
|
184
184
|
duration: string;
|
|
185
185
|
query: string;
|
|
186
186
|
};
|
|
187
|
-
export
|
|
187
|
+
export type UnusedIndexesResult = {
|
|
188
188
|
reason: string;
|
|
189
189
|
index: string;
|
|
190
190
|
index_scan_pct: string;
|
|
@@ -192,17 +192,17 @@ export declare type UnusedIndexesResult = {
|
|
|
192
192
|
index_size: string;
|
|
193
193
|
table_size: string;
|
|
194
194
|
};
|
|
195
|
-
export
|
|
195
|
+
export type BloatResult = {
|
|
196
196
|
type: string;
|
|
197
197
|
object: string;
|
|
198
198
|
bloat: number;
|
|
199
199
|
waste: string;
|
|
200
200
|
};
|
|
201
|
-
export
|
|
201
|
+
export type HitRateResult = {
|
|
202
202
|
name: string;
|
|
203
203
|
ratio: number;
|
|
204
204
|
};
|
|
205
|
-
export
|
|
205
|
+
export type BlockingResult = {
|
|
206
206
|
blocked_pid: number;
|
|
207
207
|
blocking_statement: string;
|
|
208
208
|
blocking_duration: string;
|
|
@@ -210,7 +210,7 @@ export declare type BlockingResult = {
|
|
|
210
210
|
blocked_statement: string;
|
|
211
211
|
blocked_duration: string;
|
|
212
212
|
};
|
|
213
|
-
export
|
|
213
|
+
export type PGDiagnoseRequest = {
|
|
214
214
|
url: string;
|
|
215
215
|
plan: string;
|
|
216
216
|
app: string;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
export declare const STAGING_APP_INDICATOR = "-staging";
|
|
2
|
-
|
|
2
|
+
type ValidatedResponse = [false, string] | [true];
|
|
3
3
|
export declare function pipelineName(name: any): ValidatedResponse;
|
|
4
4
|
export declare function repoName(repo: any): ValidatedResponse;
|
|
5
5
|
export declare function nameAndRepo({ name, repo }: {
|
package/dist/lib/redis/api.d.ts
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import { APIClient } from '@heroku-cli/command';
|
|
2
2
|
import * as Heroku from '@heroku-cli/schema';
|
|
3
|
-
export
|
|
3
|
+
export type RedisApiResponse = {
|
|
4
4
|
message: string;
|
|
5
5
|
};
|
|
6
|
-
export
|
|
6
|
+
export type RedisFormationConfigResponse = {
|
|
7
7
|
maxmemory_policy: {
|
|
8
8
|
default: RedisEvictionPolicies;
|
|
9
9
|
desc: string;
|
|
@@ -26,7 +26,7 @@ export declare type RedisFormationConfigResponse = {
|
|
|
26
26
|
value: number;
|
|
27
27
|
};
|
|
28
28
|
};
|
|
29
|
-
export
|
|
29
|
+
export type RedisFormationResponse = {
|
|
30
30
|
addon_id: string;
|
|
31
31
|
created_at: string;
|
|
32
32
|
customer_encryption_key?: string;
|
|
@@ -46,16 +46,16 @@ export declare type RedisFormationResponse = {
|
|
|
46
46
|
resource_url: string;
|
|
47
47
|
version: string;
|
|
48
48
|
};
|
|
49
|
-
export
|
|
49
|
+
export type RedisFormationWaitResponse = {
|
|
50
50
|
message: string;
|
|
51
51
|
'waiting?': boolean;
|
|
52
52
|
};
|
|
53
|
-
export
|
|
53
|
+
export type RedisMaintenanceWindowResponse = {
|
|
54
54
|
scheduled_at?: string;
|
|
55
55
|
window: null | string;
|
|
56
56
|
};
|
|
57
|
-
|
|
58
|
-
|
|
57
|
+
type HttpVerb = 'DELETE' | 'GET' | 'PATCH' | 'POST' | 'PUT';
|
|
58
|
+
type RedisEvictionPolicies = 'allkeys-lfu' | 'allkeys-lru' | 'allkeys-random' | 'noeviction' | 'volatile-lfu' | 'volatile-lru' | 'volatile-random' | 'volatile-ttl';
|
|
59
59
|
declare const _default: (app: string, database: string | undefined, json: boolean, heroku: APIClient) => {
|
|
60
60
|
getRedisAddon(addons?: Required<Heroku.AddOn>[]): Promise<Required<Heroku.AddOn>>;
|
|
61
61
|
info(): Promise<void>;
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
|
|
1
|
+
type FollowUp = {
|
|
2
2
|
created_at: string;
|
|
3
3
|
body: string;
|
|
4
4
|
};
|
|
5
|
-
export
|
|
5
|
+
export type Notification = {
|
|
6
6
|
id: string;
|
|
7
7
|
created_at: string;
|
|
8
8
|
title: string;
|
|
@@ -16,5 +16,5 @@ export declare type Notification = {
|
|
|
16
16
|
resource_name: string;
|
|
17
17
|
type: string;
|
|
18
18
|
};
|
|
19
|
-
export
|
|
19
|
+
export type Notifications = Notification[];
|
|
20
20
|
export {};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export
|
|
1
|
+
export type Comparator = (a: any, b: any) => number;
|
|
2
2
|
/**
|
|
3
3
|
* The multiSortCompareFn function is used to build a single comparator function for use
|
|
4
4
|
* in Array.sort when multiple sort criteria is needed on an object type. The indices of
|