@biorate/migrations 1.69.0 → 1.72.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.
@@ -25,7 +25,7 @@
25
25
  <div class='fl pad1y space-right2'>
26
26
  <span class="strong">100% </span>
27
27
  <span class="quiet">Statements</span>
28
- <span class='fraction'>33/33</span>
28
+ <span class='fraction'>35/35</span>
29
29
  </div>
30
30
 
31
31
 
@@ -46,7 +46,7 @@
46
46
  <div class='fl pad1y space-right2'>
47
47
  <span class="strong">100% </span>
48
48
  <span class="quiet">Lines</span>
49
- <span class='fraction'>33/33</span>
49
+ <span class='fraction'>35/35</span>
50
50
  </div>
51
51
 
52
52
 
@@ -57,7 +57,7 @@
57
57
  <template id="filterTemplate">
58
58
  <div class="quiet">
59
59
  Filter:
60
- <input oninput="onInput()" type="search" id="fileSearch">
60
+ <input type="search" id="fileSearch">
61
61
  </div>
62
62
  </template>
63
63
  </div>
@@ -113,7 +113,9 @@
113
113
  <a name='L48'></a><a href='#L48'>48</a>
114
114
  <a name='L49'></a><a href='#L49'>49</a>
115
115
  <a name='L50'></a><a href='#L50'>50</a>
116
- <a name='L51'></a><a href='#L51'>51</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">1x</span>
116
+ <a name='L51'></a><a href='#L51'>51</a>
117
+ <a name='L52'></a><a href='#L52'>52</a>
118
+ <a name='L53'></a><a href='#L53'>53</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">1x</span>
117
119
  <span class="cline-any cline-yes">1x</span>
118
120
  <span class="cline-any cline-neutral">&nbsp;</span>
119
121
  <span class="cline-any cline-yes">1x</span>
@@ -128,6 +130,7 @@
128
130
  <span class="cline-any cline-yes">1x</span>
129
131
  <span class="cline-any cline-yes">1x</span>
130
132
  <span class="cline-any cline-yes">1x</span>
133
+ <span class="cline-any cline-yes">1x</span>
131
134
  <span class="cline-any cline-neutral">&nbsp;</span>
132
135
  <span class="cline-any cline-yes">1x</span>
133
136
  <span class="cline-any cline-yes">1x</span>
@@ -163,6 +166,7 @@
163
166
  <span class="cline-any cline-yes">1x</span>
164
167
  <span class="cline-any cline-yes">1x</span>
165
168
  <span class="cline-any cline-yes">1x</span>
169
+ <span class="cline-any cline-yes">1x</span>
166
170
  <span class="cline-any cline-neutral">&nbsp;</span></td><td class="text"><pre class="prettyprint lang-js">import { container, Types } from '@biorate/inversion';
167
171
  import { IConfig, Config } from '@biorate/config';
168
172
  import { ConfigLoader } from '@biorate/config-loader';
@@ -176,6 +180,7 @@ import { IMongoDBConnector, MongoDBConnector } from '@biorate/mongodb';
176
180
  import { IClickhouseConnector, ClickhouseConnector } from '@biorate/clickhouse';
177
181
  import { IAmqpConnector, AmqpConnector } from '@biorate/amqp';
178
182
  import { IKafkaJSAdminConnector, KafkaJSAdminConnector } from '@biorate/kafkajs';
183
+ import { IProxyConnector, ProxyConnector } from '@biorate/proxy';
179
184
  import { Root } from './';
180
185
  import * as Migrations from './types';
181
186
  &nbsp;
@@ -205,6 +210,7 @@ container
205
210
  .bind&lt;IKafkaJSAdminConnector&gt;(Types.Kafka)
206
211
  .to(KafkaJSAdminConnector)
207
212
  .inSingletonScope();
213
+ container.bind&lt;IProxyConnector&gt;(Types.Proxy).to(ProxyConnector).inSingletonScope();
208
214
  container.bind&lt;Migrations.Sequelize&gt;(Migrations.Sequelize).toSelf().inSingletonScope();
209
215
  container.bind&lt;Migrations.Minio&gt;(Migrations.Minio).toSelf().inSingletonScope();
210
216
  container.bind&lt;Migrations.Mongodb&gt;(Migrations.Mongodb).toSelf().inSingletonScope();
@@ -220,7 +226,7 @@ container.get&lt;Root&gt;(Root).$run().catch(console.error);
220
226
  <div class='footer quiet pad2 space-top1 center small'>
221
227
  Code coverage generated by
222
228
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
223
- at 2024-03-04T12:55:12.928Z
229
+ at 2024-05-20T14:35:25.115Z
224
230
  </div>
225
231
  <script src="../prettify.js"></script>
226
232
  <script>
@@ -25,7 +25,7 @@
25
25
  <div class='fl pad1y space-right2'>
26
26
  <span class="strong">100% </span>
27
27
  <span class="quiet">Statements</span>
28
- <span class='fraction'>58/58</span>
28
+ <span class='fraction'>61/61</span>
29
29
  </div>
30
30
 
31
31
 
@@ -46,7 +46,7 @@
46
46
  <div class='fl pad1y space-right2'>
47
47
  <span class="strong">100% </span>
48
48
  <span class="quiet">Lines</span>
49
- <span class='fraction'>56/56</span>
49
+ <span class='fraction'>59/59</span>
50
50
  </div>
51
51
 
52
52
 
@@ -57,7 +57,7 @@
57
57
  <template id="filterTemplate">
58
58
  <div class="quiet">
59
59
  Filter:
60
- <input oninput="onInput()" type="search" id="fileSearch">
60
+ <input type="search" id="fileSearch">
61
61
  </div>
62
62
  </template>
63
63
  </div>
@@ -84,13 +84,13 @@
84
84
  <div class="chart"><div class="cover-fill cover-full" style="width: 100%"></div><div class="cover-empty" style="width: 0%"></div></div>
85
85
  </td>
86
86
  <td data-value="100" class="pct high">100%</td>
87
- <td data-value="33" class="abs high">33/33</td>
87
+ <td data-value="35" class="abs high">35/35</td>
88
88
  <td data-value="100" class="pct high">100%</td>
89
89
  <td data-value="0" class="abs high">0/0</td>
90
90
  <td data-value="100" class="pct high">100%</td>
91
91
  <td data-value="0" class="abs high">0/0</td>
92
92
  <td data-value="100" class="pct high">100%</td>
93
- <td data-value="33" class="abs high">33/33</td>
93
+ <td data-value="35" class="abs high">35/35</td>
94
94
  </tr>
95
95
 
96
96
  <tr>
@@ -114,13 +114,13 @@
114
114
  <div class="chart"><div class="cover-fill cover-full" style="width: 100%"></div><div class="cover-empty" style="width: 0%"></div></div>
115
115
  </td>
116
116
  <td data-value="100" class="pct high">100%</td>
117
- <td data-value="20" class="abs high">20/20</td>
117
+ <td data-value="21" class="abs high">21/21</td>
118
118
  <td data-value="100" class="pct high">100%</td>
119
119
  <td data-value="0" class="abs high">0/0</td>
120
120
  <td data-value="100" class="pct high">100%</td>
121
121
  <td data-value="1" class="abs high">1/1</td>
122
122
  <td data-value="100" class="pct high">100%</td>
123
- <td data-value="18" class="abs high">18/18</td>
123
+ <td data-value="19" class="abs high">19/19</td>
124
124
  </tr>
125
125
 
126
126
  </tbody>
@@ -131,7 +131,7 @@
131
131
  <div class='footer quiet pad2 space-top1 center small'>
132
132
  Code coverage generated by
133
133
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
134
- at 2024-03-04T12:55:12.928Z
134
+ at 2024-05-20T14:35:25.115Z
135
135
  </div>
136
136
  <script src="../prettify.js"></script>
137
137
  <script>
@@ -57,7 +57,7 @@
57
57
  <template id="filterTemplate">
58
58
  <div class="quiet">
59
59
  Filter:
60
- <input oninput="onInput()" type="search" id="fileSearch">
60
+ <input type="search" id="fileSearch">
61
61
  </div>
62
62
  </template>
63
63
  </div>
@@ -100,7 +100,7 @@ require(process.env.MIGRATIONS_ROOT
100
100
  <div class='footer quiet pad2 space-top1 center small'>
101
101
  Code coverage generated by
102
102
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
103
- at 2024-03-04T12:55:12.928Z
103
+ at 2024-05-20T14:35:25.115Z
104
104
  </div>
105
105
  <script src="../prettify.js"></script>
106
106
  <script>
@@ -25,7 +25,7 @@
25
25
  <div class='fl pad1y space-right2'>
26
26
  <span class="strong">100% </span>
27
27
  <span class="quiet">Statements</span>
28
- <span class='fraction'>20/20</span>
28
+ <span class='fraction'>21/21</span>
29
29
  </div>
30
30
 
31
31
 
@@ -46,7 +46,7 @@
46
46
  <div class='fl pad1y space-right2'>
47
47
  <span class="strong">100% </span>
48
48
  <span class="quiet">Lines</span>
49
- <span class='fraction'>18/18</span>
49
+ <span class='fraction'>19/19</span>
50
50
  </div>
51
51
 
52
52
 
@@ -57,7 +57,7 @@
57
57
  <template id="filterTemplate">
58
58
  <div class="quiet">
59
59
  Filter:
60
- <input oninput="onInput()" type="search" id="fileSearch">
60
+ <input type="search" id="fileSearch">
61
61
  </div>
62
62
  </template>
63
63
  </div>
@@ -90,24 +90,50 @@
90
90
  <a name='L25'></a><a href='#L25'>25</a>
91
91
  <a name='L26'></a><a href='#L26'>26</a>
92
92
  <a name='L27'></a><a href='#L27'>27</a>
93
- <a name='L28'></a><a href='#L28'>28</a></td><td class="line-coverage quiet"><span class="cline-any cline-neutral">&nbsp;</span>
94
- <span class="cline-any cline-yes">1x</span>
93
+ <a name='L28'></a><a href='#L28'>28</a>
94
+ <a name='L29'></a><a href='#L29'>29</a>
95
+ <a name='L30'></a><a href='#L30'>30</a>
96
+ <a name='L31'></a><a href='#L31'>31</a>
97
+ <a name='L32'></a><a href='#L32'>32</a>
98
+ <a name='L33'></a><a href='#L33'>33</a>
99
+ <a name='L34'></a><a href='#L34'>34</a>
100
+ <a name='L35'></a><a href='#L35'>35</a>
101
+ <a name='L36'></a><a href='#L36'>36</a>
102
+ <a name='L37'></a><a href='#L37'>37</a>
103
+ <a name='L38'></a><a href='#L38'>38</a>
104
+ <a name='L39'></a><a href='#L39'>39</a>
105
+ <a name='L40'></a><a href='#L40'>40</a>
106
+ <a name='L41'></a><a href='#L41'>41</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">1x</span>
95
107
  <span class="cline-any cline-neutral">&nbsp;</span>
96
108
  <span class="cline-any cline-yes">1x</span>
109
+ <span class="cline-any cline-neutral">&nbsp;</span>
110
+ <span class="cline-any cline-neutral">&nbsp;</span>
97
111
  <span class="cline-any cline-yes">1x</span>
98
112
  <span class="cline-any cline-neutral">&nbsp;</span>
99
113
  <span class="cline-any cline-neutral">&nbsp;</span>
100
114
  <span class="cline-any cline-yes">1x</span>
101
115
  <span class="cline-any cline-yes">1x</span>
116
+ <span class="cline-any cline-neutral">&nbsp;</span>
102
117
  <span class="cline-any cline-yes">1x</span>
118
+ <span class="cline-any cline-neutral">&nbsp;</span>
103
119
  <span class="cline-any cline-yes">1x</span>
120
+ <span class="cline-any cline-neutral">&nbsp;</span>
104
121
  <span class="cline-any cline-yes">1x</span>
122
+ <span class="cline-any cline-neutral">&nbsp;</span>
105
123
  <span class="cline-any cline-yes">1x</span>
124
+ <span class="cline-any cline-neutral">&nbsp;</span>
125
+ <span class="cline-any cline-yes">1x</span>
126
+ <span class="cline-any cline-neutral">&nbsp;</span>
106
127
  <span class="cline-any cline-yes">1x</span>
128
+ <span class="cline-any cline-neutral">&nbsp;</span>
107
129
  <span class="cline-any cline-yes">1x</span>
130
+ <span class="cline-any cline-neutral">&nbsp;</span>
108
131
  <span class="cline-any cline-yes">1x</span>
132
+ <span class="cline-any cline-neutral">&nbsp;</span>
109
133
  <span class="cline-any cline-yes">1x</span>
134
+ <span class="cline-any cline-neutral">&nbsp;</span>
110
135
  <span class="cline-any cline-yes">1x</span>
136
+ <span class="cline-any cline-neutral">&nbsp;</span>
111
137
  <span class="cline-any cline-yes">1x</span>
112
138
  <span class="cline-any cline-neutral">&nbsp;</span>
113
139
  <span class="cline-any cline-yes">1x</span>
@@ -117,24 +143,37 @@
117
143
  <span class="cline-any cline-neutral">&nbsp;</span>
118
144
  <span class="cline-any cline-neutral">&nbsp;</span>
119
145
  <span class="cline-any cline-yes">1x</span>
120
- <span class="cline-any cline-neutral">&nbsp;</span></td><td class="text"><pre class="prettyprint lang-js">import { IConfig } from '@biorate/config';
146
+ <span class="cline-any cline-neutral">&nbsp;</span></td><td class="text"><pre class="prettyprint lang-js">import { init, injectable, inject, Types, Core } from '@biorate/inversion';
147
+ import { IConfig } from '@biorate/config';
121
148
  import { ConfigLoader } from '@biorate/config-loader';
122
149
  import { IVaultConnector } from '@biorate/vault';
123
- import { init, injectable, inject, Types, Core } from '@biorate/inversion';
150
+ import { IProxyConnector } from '@biorate/proxy';
124
151
  import * as Migrations from './types';
125
152
  &nbsp;
126
153
  @injectable()
127
154
  export class Root extends Core() {
128
155
  @inject(Types.Config) public config: IConfig;
156
+ &nbsp;
129
157
  @inject(Types.ConfigLoaderEnv) public configLoaderEnv: ConfigLoader;
158
+ &nbsp;
130
159
  @inject(Types.ConfigLoaderFs) public configLoaderFs: ConfigLoader;
160
+ &nbsp;
131
161
  @inject(Types.ConfigLoaderVault) public configLoaderVault: ConfigLoader;
162
+ &nbsp;
132
163
  @inject(Types.Vault) public vault: IVaultConnector;
164
+ &nbsp;
165
+ @inject(Types.Proxy) public proxy: IProxyConnector;
166
+ &nbsp;
133
167
  @inject(Migrations.Sequelize) public sequelize: Migrations.Sequelize;
168
+ &nbsp;
134
169
  @inject(Migrations.Minio) protected minio: Migrations.Minio;
170
+ &nbsp;
135
171
  @inject(Migrations.Mongodb) protected mongodb: Migrations.Mongodb;
172
+ &nbsp;
136
173
  @inject(Migrations.Kafka) public kafkaJSAdmin: Migrations.Kafka;
174
+ &nbsp;
137
175
  @inject(Migrations.Clickhouse) public clickhouse: Migrations.Clickhouse;
176
+ &nbsp;
138
177
  @inject(Migrations.Amqp) public amqp: Migrations.Amqp;
139
178
  &nbsp;
140
179
  @init() protected async initialize() {
@@ -151,7 +190,7 @@ Core.log = null;
151
190
  <div class='footer quiet pad2 space-top1 center small'>
152
191
  Code coverage generated by
153
192
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
154
- at 2024-03-04T12:55:12.928Z
193
+ at 2024-05-20T14:35:25.115Z
155
194
  </div>
156
195
  <script src="../prettify.js"></script>
157
196
  <script>
@@ -57,7 +57,7 @@
57
57
  <template id="filterTemplate">
58
58
  <div class="quiet">
59
59
  Filter:
60
- <input oninput="onInput()" type="search" id="fileSearch">
60
+ <input type="search" id="fileSearch">
61
61
  </div>
62
62
  </template>
63
63
  </div>
@@ -103,7 +103,14 @@
103
103
  <a name='L38'></a><a href='#L38'>38</a>
104
104
  <a name='L39'></a><a href='#L39'>39</a>
105
105
  <a name='L40'></a><a href='#L40'>40</a>
106
- <a name='L41'></a><a href='#L41'>41</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">1x</span>
106
+ <a name='L41'></a><a href='#L41'>41</a>
107
+ <a name='L42'></a><a href='#L42'>42</a>
108
+ <a name='L43'></a><a href='#L43'>43</a>
109
+ <a name='L44'></a><a href='#L44'>44</a>
110
+ <a name='L45'></a><a href='#L45'>45</a>
111
+ <a name='L46'></a><a href='#L46'>46</a>
112
+ <a name='L47'></a><a href='#L47'>47</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">1x</span>
113
+ <span class="cline-any cline-neutral">&nbsp;</span>
107
114
  <span class="cline-any cline-neutral">&nbsp;</span>
108
115
  <span class="cline-any cline-neutral">&nbsp;</span>
109
116
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -125,6 +132,11 @@
125
132
  <span class="cline-any cline-neutral">&nbsp;</span>
126
133
  <span class="cline-any cline-neutral">&nbsp;</span>
127
134
  <span class="cline-any cline-yes">1x</span>
135
+ <span class="cline-any cline-neutral">&nbsp;</span>
136
+ <span class="cline-any cline-neutral">&nbsp;</span>
137
+ <span class="cline-any cline-neutral">&nbsp;</span>
138
+ <span class="cline-any cline-neutral">&nbsp;</span>
139
+ <span class="cline-any cline-neutral">&nbsp;</span>
128
140
  <span class="cline-any cline-yes">1x</span>
129
141
  <span class="cline-any cline-yes">1x</span>
130
142
  <span class="cline-any cline-yes">2x</span>
@@ -150,6 +162,7 @@ import {
150
162
  IAmqpConfig,
151
163
  IAmqpConnection,
152
164
  ChannelWrapper,
165
+ CreateChannelOpts,
153
166
  } from '@biorate/amqp';
154
167
  import { Migration } from './migration';
155
168
  /**
@@ -164,7 +177,12 @@ export class Amqp extends Migration {
164
177
  await this.forEach&lt;IAmqpConfig, IAmqpConnection&gt;(
165
178
  'Amqp',
166
179
  async (config, connection, paths) =&gt; {
167
- const channel = connection.createChannel();
180
+ const channel = connection.createChannel(
181
+ this.config.get&lt;CreateChannelOpts&gt;(
182
+ `migrations.Amqp.${config.name}.amqpChannelOptions`,
183
+ {},
184
+ ),
185
+ );
168
186
  await channel.waitForConnect();
169
187
  await this.forEachPath(paths, async (file, name) =&gt; {
170
188
  try {
@@ -190,7 +208,7 @@ export class Amqp extends Migration {
190
208
  <div class='footer quiet pad2 space-top1 center small'>
191
209
  Code coverage generated by
192
210
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
193
- at 2024-03-04T12:55:12.928Z
211
+ at 2024-05-20T14:35:25.115Z
194
212
  </div>
195
213
  <script src="../../prettify.js"></script>
196
214
  <script>
@@ -23,9 +23,9 @@
23
23
  <div class='clearfix'>
24
24
 
25
25
  <div class='fl pad1y space-right2'>
26
- <span class="strong">81.25% </span>
26
+ <span class="strong">94.11% </span>
27
27
  <span class="quiet">Statements</span>
28
- <span class='fraction'>13/16</span>
28
+ <span class='fraction'>16/17</span>
29
29
  </div>
30
30
 
31
31
 
@@ -44,9 +44,9 @@
44
44
 
45
45
 
46
46
  <div class='fl pad1y space-right2'>
47
- <span class="strong">80% </span>
47
+ <span class="strong">100% </span>
48
48
  <span class="quiet">Lines</span>
49
- <span class='fraction'>12/15</span>
49
+ <span class='fraction'>16/16</span>
50
50
  </div>
51
51
 
52
52
 
@@ -57,7 +57,7 @@
57
57
  <template id="filterTemplate">
58
58
  <div class="quiet">
59
59
  Filter:
60
- <input oninput="onInput()" type="search" id="fileSearch">
60
+ <input type="search" id="fileSearch">
61
61
  </div>
62
62
  </template>
63
63
  </div>
@@ -111,7 +111,21 @@
111
111
  <a name='L46'></a><a href='#L46'>46</a>
112
112
  <a name='L47'></a><a href='#L47'>47</a>
113
113
  <a name='L48'></a><a href='#L48'>48</a>
114
- <a name='L49'></a><a href='#L49'>49</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">1x</span>
114
+ <a name='L49'></a><a href='#L49'>49</a>
115
+ <a name='L50'></a><a href='#L50'>50</a>
116
+ <a name='L51'></a><a href='#L51'>51</a>
117
+ <a name='L52'></a><a href='#L52'>52</a>
118
+ <a name='L53'></a><a href='#L53'>53</a>
119
+ <a name='L54'></a><a href='#L54'>54</a>
120
+ <a name='L55'></a><a href='#L55'>55</a>
121
+ <a name='L56'></a><a href='#L56'>56</a>
122
+ <a name='L57'></a><a href='#L57'>57</a>
123
+ <a name='L58'></a><a href='#L58'>58</a>
124
+ <a name='L59'></a><a href='#L59'>59</a>
125
+ <a name='L60'></a><a href='#L60'>60</a>
126
+ <a name='L61'></a><a href='#L61'>61</a>
127
+ <a name='L62'></a><a href='#L62'>62</a>
128
+ <a name='L63'></a><a href='#L63'>63</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">1x</span>
115
129
  <span class="cline-any cline-yes">1x</span>
116
130
  <span class="cline-any cline-yes">1x</span>
117
131
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -140,6 +154,12 @@
140
154
  <span class="cline-any cline-neutral">&nbsp;</span>
141
155
  <span class="cline-any cline-neutral">&nbsp;</span>
142
156
  <span class="cline-any cline-yes">1x</span>
157
+ <span class="cline-any cline-neutral">&nbsp;</span>
158
+ <span class="cline-any cline-neutral">&nbsp;</span>
159
+ <span class="cline-any cline-neutral">&nbsp;</span>
160
+ <span class="cline-any cline-neutral">&nbsp;</span>
161
+ <span class="cline-any cline-neutral">&nbsp;</span>
162
+ <span class="cline-any cline-neutral">&nbsp;</span>
143
163
  <span class="cline-any cline-yes">1x</span>
144
164
  <span class="cline-any cline-yes">3x</span>
145
165
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -147,13 +167,21 @@
147
167
  <span class="cline-any cline-neutral">&nbsp;</span>
148
168
  <span class="cline-any cline-neutral">&nbsp;</span>
149
169
  <span class="cline-any cline-yes">3x</span>
150
- <span class="cline-any cline-no">&nbsp;</span>
151
- <span class="cline-any cline-no">&nbsp;</span>
170
+ <span class="cline-any cline-yes">3x</span>
171
+ <span class="cline-any cline-yes">3x</span>
152
172
  <span class="cline-any cline-neutral">&nbsp;</span>
153
173
  <span class="cline-any cline-neutral">&nbsp;</span>
154
174
  <span class="cline-any cline-neutral">&nbsp;</span>
155
175
  <span class="cline-any cline-neutral">&nbsp;</span>
156
- <span class="cline-any cline-no">&nbsp;</span>
176
+ <span class="cline-any cline-neutral">&nbsp;</span>
177
+ <span class="cline-any cline-yes">3x</span>
178
+ <span class="cline-any cline-neutral">&nbsp;</span>
179
+ <span class="cline-any cline-neutral">&nbsp;</span>
180
+ <span class="cline-any cline-neutral">&nbsp;</span>
181
+ <span class="cline-any cline-neutral">&nbsp;</span>
182
+ <span class="cline-any cline-neutral">&nbsp;</span>
183
+ <span class="cline-any cline-neutral">&nbsp;</span>
184
+ <span class="cline-any cline-yes">3x</span>
157
185
  <span class="cline-any cline-neutral">&nbsp;</span>
158
186
  <span class="cline-any cline-neutral">&nbsp;</span>
159
187
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -187,21 +215,35 @@ export class Clickhouse extends Migration {
187
215
  ENGINE = MergeTree()
188
216
  PRIMARY KEY (name);
189
217
  `;
190
- await connection.query(createQuery, { params: { tableName } }).toPromise();
218
+ await connection.command({
219
+ query: createQuery,
220
+ query_params: { tableName },
221
+ clickhouse_settings: {
222
+ wait_end_of_query: 1,
223
+ },
224
+ });
191
225
  await this.forEachPath(paths, async (file, name) =&gt; {
192
- const item = await connection
193
- .query(`SELECT * FROM {tableName:Identifier} WHERE name = {name:String};`, {
194
- params: { name, tableName },
195
- })
196
- .toPromise();
197
- <span class="missing-if-branch" title="else path not taken" >E</span>if (item.length) return;
198
- <span class="cstat-no" title="statement not covered" > await connection.query(await fs.readFile(file, 'utf8')).toPromise();</span>
199
- <span class="cstat-no" title="statement not covered" > await connection</span>
200
- .query(`INSERT INTO {tableName:Identifier} (name) VALUES ({name:String})`, {
201
- params: { name, tableName },
202
- })
203
- .toPromise();
204
- <span class="cstat-no" title="statement not covered" > this.log(config.name, name);</span>
226
+ const cursor = await connection.query({
227
+ query: `SELECT * FROM {tableName:Identifier} WHERE name = {name:String};`,
228
+ query_params: { name, tableName },
229
+ format: 'JSON',
230
+ });
231
+ const { data } = await cursor.json&lt;{ name: string }&gt;();
232
+ <span class="missing-if-branch" title="if path not taken" >I</span>if (data.length) <span class="cstat-no" title="statement not covered" >return;</span>
233
+ await connection.command({
234
+ query: await fs.readFile(file, 'utf8'),
235
+ clickhouse_settings: {
236
+ wait_end_of_query: 1,
237
+ },
238
+ });
239
+ await connection.command({
240
+ query: `INSERT INTO {tableName:Identifier} (name) VALUES ({name:String})`,
241
+ query_params: { name, tableName },
242
+ clickhouse_settings: {
243
+ wait_end_of_query: 1,
244
+ },
245
+ });
246
+ this.log(config.name, name);
205
247
  });
206
248
  },
207
249
  );
@@ -214,7 +256,7 @@ export class Clickhouse extends Migration {
214
256
  <div class='footer quiet pad2 space-top1 center small'>
215
257
  Code coverage generated by
216
258
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
217
- at 2024-03-04T12:55:12.928Z
259
+ at 2024-05-20T14:35:25.115Z
218
260
  </div>
219
261
  <script src="../../prettify.js"></script>
220
262
  <script>
@@ -23,9 +23,9 @@
23
23
  <div class='clearfix'>
24
24
 
25
25
  <div class='fl pad1y space-right2'>
26
- <span class="strong">88.28% </span>
26
+ <span class="strong">94.64% </span>
27
27
  <span class="quiet">Statements</span>
28
- <span class='fraction'>98/111</span>
28
+ <span class='fraction'>106/112</span>
29
29
  </div>
30
30
 
31
31
 
@@ -44,9 +44,9 @@
44
44
 
45
45
 
46
46
  <div class='fl pad1y space-right2'>
47
- <span class="strong">89.52% </span>
47
+ <span class="strong">97.16% </span>
48
48
  <span class="quiet">Lines</span>
49
- <span class='fraction'>94/105</span>
49
+ <span class='fraction'>103/106</span>
50
50
  </div>
51
51
 
52
52
 
@@ -57,7 +57,7 @@
57
57
  <template id="filterTemplate">
58
58
  <div class="quiet">
59
59
  Filter:
60
- <input oninput="onInput()" type="search" id="fileSearch">
60
+ <input type="search" id="fileSearch">
61
61
  </div>
62
62
  </template>
63
63
  </div>
@@ -95,17 +95,17 @@
95
95
 
96
96
  <tr>
97
97
  <td class="file high" data-value="clickhouse.ts"><a href="clickhouse.ts.html">clickhouse.ts</a></td>
98
- <td data-value="81.25" class="pic high">
99
- <div class="chart"><div class="cover-fill" style="width: 81%"></div><div class="cover-empty" style="width: 19%"></div></div>
98
+ <td data-value="94.11" class="pic high">
99
+ <div class="chart"><div class="cover-fill" style="width: 94%"></div><div class="cover-empty" style="width: 6%"></div></div>
100
100
  </td>
101
- <td data-value="81.25" class="pct high">81.25%</td>
102
- <td data-value="16" class="abs high">13/16</td>
101
+ <td data-value="94.11" class="pct high">94.11%</td>
102
+ <td data-value="17" class="abs high">16/17</td>
103
103
  <td data-value="50" class="pct medium">50%</td>
104
104
  <td data-value="2" class="abs medium">1/2</td>
105
105
  <td data-value="100" class="pct high">100%</td>
106
106
  <td data-value="3" class="abs high">3/3</td>
107
- <td data-value="80" class="pct high">80%</td>
108
- <td data-value="15" class="abs high">12/15</td>
107
+ <td data-value="100" class="pct high">100%</td>
108
+ <td data-value="16" class="abs high">16/16</td>
109
109
  </tr>
110
110
 
111
111
  <tr>
@@ -154,33 +154,33 @@
154
154
  </tr>
155
155
 
156
156
  <tr>
157
- <td class="file medium" data-value="minio.ts"><a href="minio.ts.html">minio.ts</a></td>
158
- <td data-value="78.57" class="pic medium">
159
- <div class="chart"><div class="cover-fill" style="width: 78%"></div><div class="cover-empty" style="width: 22%"></div></div>
157
+ <td class="file high" data-value="minio.ts"><a href="minio.ts.html">minio.ts</a></td>
158
+ <td data-value="100" class="pic high">
159
+ <div class="chart"><div class="cover-fill cover-full" style="width: 100%"></div><div class="cover-empty" style="width: 0%"></div></div>
160
160
  </td>
161
- <td data-value="78.57" class="pct medium">78.57%</td>
162
- <td data-value="14" class="abs medium">11/14</td>
161
+ <td data-value="100" class="pct high">100%</td>
162
+ <td data-value="14" class="abs high">14/14</td>
163
163
  <td data-value="100" class="pct high">100%</td>
164
164
  <td data-value="0" class="abs high">0/0</td>
165
165
  <td data-value="100" class="pct high">100%</td>
166
166
  <td data-value="3" class="abs high">3/3</td>
167
- <td data-value="78.57" class="pct medium">78.57%</td>
168
- <td data-value="14" class="abs medium">11/14</td>
167
+ <td data-value="100" class="pct high">100%</td>
168
+ <td data-value="14" class="abs high">14/14</td>
169
169
  </tr>
170
170
 
171
171
  <tr>
172
172
  <td class="file high" data-value="mongodb.ts"><a href="mongodb.ts.html">mongodb.ts</a></td>
173
- <td data-value="80" class="pic high">
174
- <div class="chart"><div class="cover-fill" style="width: 80%"></div><div class="cover-empty" style="width: 20%"></div></div>
173
+ <td data-value="100" class="pic high">
174
+ <div class="chart"><div class="cover-fill cover-full" style="width: 100%"></div><div class="cover-empty" style="width: 0%"></div></div>
175
175
  </td>
176
- <td data-value="80" class="pct high">80%</td>
177
- <td data-value="10" class="abs high">8/10</td>
176
+ <td data-value="100" class="pct high">100%</td>
177
+ <td data-value="10" class="abs high">10/10</td>
178
178
  <td data-value="100" class="pct high">100%</td>
179
179
  <td data-value="0" class="abs high">0/0</td>
180
180
  <td data-value="100" class="pct high">100%</td>
181
181
  <td data-value="3" class="abs high">3/3</td>
182
- <td data-value="80" class="pct high">80%</td>
183
- <td data-value="10" class="abs high">8/10</td>
182
+ <td data-value="100" class="pct high">100%</td>
183
+ <td data-value="10" class="abs high">10/10</td>
184
184
  </tr>
185
185
 
186
186
  <tr>
@@ -206,7 +206,7 @@
206
206
  <div class='footer quiet pad2 space-top1 center small'>
207
207
  Code coverage generated by
208
208
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
209
- at 2024-03-04T12:55:12.928Z
209
+ at 2024-05-20T14:35:25.115Z
210
210
  </div>
211
211
  <script src="../../prettify.js"></script>
212
212
  <script>