Integrate native Tasmota support

Hey,
first of all: thank you for your very nice plugin!
Would it be possible for you to implement this plugin "the tasmota way"? Could support you if it is necessary with all the details.
Main differences between it and your plugin:

Responses are JSON
always GET requests
the movement times are set in the firmware / the device itself
controlling / moving by giving percentage values to the endpoint

Thank you.
Kind Regards

@buenyamin-olgun Please provide details of web URL's and responses, and will evaluate.
Wondering if this would be a better fit for you?
https://github.com/Nicnl/homebridge-minimal-http-blinds#readme

I can't use this because I don't know how to get the current_state out of the firmware.
I saw that you use a cache in your project, thought you could make use of that.
Here the details:
Always GET requests.
Get current position (where current position 79): http://<ip>/cm?cmnd=ShutterPosition
Response: {"ShutterPosition1":79}
Status Code: 200 OK
Set target position to 75%: http://<ip>/cm?cmnd=ShutterPosition 75
Response: {"POWER2":"ON","ShutterPosition1":75}
Status Code: 200 OK

I can't use this because I don't know how to get the current_state out of the firmware.

I would just have it set to 2. From my understanding of blinds, in fact, this is not a requirement at all. Just setting TargetPosition will define the "state". If Target > Current, or Target < Current, it will define opening/closing etc.

Always GET requests.

Have you tried the following?

Set up_url to http:///cm?cmnd=ShutterPosition 0

Set down_url to http:///cm?cmnd=ShutterPosition 100
(maybe 0/100 are different in your case)

You can also use position_url, but it would have to be run through a secondary address to return the exact value, not a JSON variant.

This should get you close. If that part is working, let me know I'd be willing to look into it, but it involves some more processing. We also need to consider whether the homekit values of 0-100 mirror the tasmota values of 0-100 for blind position, and if not, how to translate them in a simple and configurable way.
Feel free to submit a PR as well :)

I would just have it set to 2. From my understanding of blinds, in fact, this is not a requirement at all. Just setting TargetPosition will define the "state". If Target > Current, or Target < Current, it will define opening/closing etc.

2 would mean STOPPED, right?
I'm trying to implement it as accurate as possible, so if I set it to 2 there's no way to determine if it is currently opening/closing.

Have you tried the following?

Set up_url to http://<ip>/cm?cmnd=ShutterPosition 0
Set down_url to http://<ip>/cm?cmnd=ShutterPosition 100
(maybe 0/100 are different in your case)

This works so far.

You can also use position_url, but it would have to be run through a secondary address to return the exact value, not a JSON variant.

I've tried before to replace lines 113-114 with
var value = null;
value = Object.values(JSON.parse(body));

const pos = value;

... but that didn't work out.

This should get you close. If that part is working, let me know I'd be willing to look into it, but it involves some more processing. We also need to consider whether the homekit values of 0-100 mirror the tasmota values of 0-100 for blind position, and if not, how to translate them in a simple and configurable way.

Yes, that part works. Also the mapping from 0-100 to homekit values seems to work fine.
Here's my used config:
        {
            "accessory": "BlindsHTTP",
            "name": "Window",
            "up_url": "http://<IP_ADDRESS>/cm?cmnd=ShutterPosition%20100",
            "down_url": "http://<IP_ADDRESS>/cm?cmnd=ShutterPosition%200",
            "stop_url": "http://<IP_ADDRESS>/cm?cmnd=Power3%20ON",
            "http_method": {
                "method": "GET"
            },
            "success_codes": [
                200
            ],
            "max_http_attempts": 5,
            "retry_delay": 2000,
            "use_same_url_for_stop": false,
            "show_stop_button": true,
            "show_toggle_button": false,
            "motion_time": 20000,
            "response_lag": 0,
            "trigger_stop_at_boundaries": false,
            "verbose": false
        }

Maybe a bit off-topic but I've seen that it spams the hardware with http requests & the console log with:
[10.2.2020, 23:57:46] [Window] End Move up (to 73%)
[10.2.2020, 23:57:46] [Window] End Move down (to 73%)
[10.2.2020, 23:57:46] [Window] End Move up (to 73%)
[10.2.2020, 23:57:47] [Window] End Move down (to 73%)
[10.2.2020, 23:57:47] [Window] End Move up (to 73%)
[10.2.2020, 23:57:47] [Window] End Move down (to 73%)
[10.2.2020, 23:57:47] [Window] End Move up (to 73%)
[10.2.2020, 23:57:47] [Window] End Move down (to 73%)
[10.2.2020, 23:57:47] [Window] End Move up (to 73%)
[10.2.2020, 23:57:47] [Window] End Move down (to 73%)
[10.2.2020, 23:57:47] [Window] End Move up (to 73%)
[10.2.2020, 23:57:47] [Window] End Move down (to 73%)
[10.2.2020, 23:57:47] [Window] End Move up (to 73%)
[10.2.2020, 23:57:48] [Window] End Move down (to 73%)
[10.2.2020, 23:57:48] [Window] End Move up (to 73%)
[10.2.2020, 23:57:48] [Window] End Move down (to 73%)
[10.2.2020, 23:57:48] [Window] End Move up (to 73%)
[10.2.2020, 23:57:48] [Window] End Move down (to 73%)
[10.2.2020, 23:57:48] [Window] End Move up (to 73%)
[10.2.2020, 23:57:48] [Window] End Move down (to 73%)
[10.2.2020, 23:57:48] [Window] End Move up (to 73%)
[10.2.2020, 23:57:48] [Window] End Move down (to 73%)
[10.2.2020, 23:57:48] [Window] End Move up (to 73%)
[10.2.2020, 23:57:49] [Window] End Move down (to 73%)
[10.2.2020, 23:57:49] [Window] End Move up (to 73%)
[10.2.2020, 23:57:49] [Window] End Move down (to 73%)
[10.2.2020, 23:57:49] [Window] End Move up (to 73%)
[10.2.2020, 23:57:49] [Window] End Move down (to 73%)
[10.2.2020, 23:57:49] [Window] End Move up (to 73%)
[10.2.2020, 23:57:49] [Window] End Move down (to 73%)
[10.2.2020, 23:57:49] [Window] End Move up (to 73%)
[10.2.2020, 23:57:49] [Window] End Move down (to 73%)

Feel free to submit a PR as well :)
Like you see above I have a basic knowledge of coding but I'm too unexperienced with HomeKit, homebridge and Node.js in general to realize such a thing on my own :/

2 would mean STOPPED, right?

Yes, but the code for this plugin also just indicates that it is stopped at certain points. There is no need for this really - HomeKit handles opening/closing states based on target/current position.

I've tried before to replace lines 113-114 with

Try this version.
       // add these lines
        try {
            const json = JSON.parse(body);
            body = Object.values(json)[0];
        } catch (err) {
        }

        // unchanged part below
        const pos = parseInt(body, 10);
        if (pos < 0 || pos > 100) { // invalid
            return callback(pos);
        }

Maybe a bit off-topic but I've seen that it spams the hardware with http requests & the console log with:

That is weird. Are you running the latest version (1.3.13)? Also, maybe something with the position_url before? It seems like it's triggering an endless loop. I recall something about that in an earlier release but I thought it should be fixed now. If it's still happening, please enable verbose would like to see how this loop happens.

@buenyamin-olgun  see this commit:
https://github.com/zwerch/homebridge-blinds/commit/59142c3d4a590e54d97a3dc48fbe2aaf0b13fbf3
Now, I added a way for you to have the position specified in the URL. Instead of 100 or 0, simply use the keyword %%POS%%. Let me know how this testing goes. Actually, we may be most of the way there after these changes.

Yes, the loop seems to be in dependency with the position_url set before.
I've tried your code from the first post, it triggers also the loop.

Should I check out your commited change still?

I've just committed a fix for that issue, I think. I didn't have a way of testing it before, so I appreciate the fact that you have a way to test it.
Please replace your index.js file with this one, and let me know the result:
https://raw.githubusercontent.com/zwerch/homebridge-blinds/master/index.js
Also, make the changes as I mentioned to add %%POS%% into config.json.

After downloading the new version & changing the config.json there's this error (& it's again looping):
(node:26328) UnhandledPromiseRejectionWarning: TypeError: Cannot read property 'lastPosition' of undefined
    at C:\Users\olgunb\AppData\Roaming\npm\node_modules\homebridge-blinds\index.js:63:47
    at BlindsHTTPAccessory.<anonymous> (C:\Users\olgunb\AppData\Roaming\npm\node_modules\homebridge-blinds\index.js:101:20)
    at BlindsHTTPAccessory.<anonymous> (C:\Users\olgunb\AppData\Roaming\npm\node_modules\homebridge-blinds\index.js:127:16)
    at BlindsHTTPAccessory.<anonymous> (C:\Users\olgunb\AppData\Roaming\npm\node_modules\homebridge-blinds\index.js:325:20)
    at Request._callback (C:\Users\olgunb\AppData\Roaming\npm\node_modules\homebridge-blinds\node_modules\lodash\lodash.js:10050:25)
    at Request.requestRetryReply [as reply] (C:\Users\olgunb\AppData\Roaming\npm\node_modules\homebridge-blinds\node_modules\requestretry\index.js:105:19)
    at Request.<anonymous> (C:\Users\olgunb\AppData\Roaming\npm\node_modules\homebridge-blinds\node_modules\requestretry\index.js:146:10)
    at processTicksAndRejections (internal/process/task_queues.js:97:5)
(node:26328) UnhandledPromiseRejectionWarning: Unhandled promise rejection. This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). To terminate the node process on unhandled promise rejection, use the CLI flag `--unhandled-rejections=strict` (see https://nodejs.org/api/cli.html#cli_unhandled_rejections_mode). (rejection id: 1)
(node:26328) [DEP0018] DeprecationWarning: Unhandled promise rejections are deprecated. In the future, promise rejections that are not handled will terminate the Node.js process with a non-zero exit code.

Missed that one. Try again:
https://raw.githubusercontent.com/zwerch/homebridge-blinds/master/index.js

No errors this time but again a loop when I trigger a move up while it is moving down:

OK, I think I know the cause. Try again:
https://raw.githubusercontent.com/zwerch/homebridge-blinds/master/index.js

I'm sorry but that also doesn't seem to fix the problem:

Do the messages go on forever or does it eventually stop?

What commands are you pressing to reproduce this? Does it happen only when you choose values very close to one another?

Please provide your entire config.json. I'm particularly interested in the motionTime values.

Also, I'm wondering if you should have stopURL blank. Seems rather pointless, doesn't it? It's also sending an additional "STOP" command which probably isn't ideal, given that

Btw, have made one other batch of changes I'm hoping will fix it.
https://raw.githubusercontent.com/zwerch/homebridge-blinds/master/index.js

Your last change seems to fix the loop issue, thank you!
To point 4: im using it to stop the blinds accuractely when I want instead of using a percentage value because percentage values are kinda hard to guess.
This is also a reason why I like your plugin so much.
Hopefully the last couple of problems:

Currently it seems to respect the motion time, could this be disabled?
maybe related to the first point: if the action is stopped by the stop button the value doesn't update to the stopped (correct) one.  This can be spotted also when the blind position is changed via the pyhsical buttons. Restarting the homebridge service fixes this.

Case Stop Button used via Home App:
Here the value must be 75, which the endpoint is also responding but the Home app does show 78:
[11.2.2020, 12:46:04] [Window] Requesting manual stop
[11.2.2020, 12:46:05] [Window] Request succeeded after 1 / 5 attempts
[11.2.2020, 12:46:05] [Window] Stop request sent
[11.2.2020, 12:46:05] [Window] End Move down (to 78%)
[11.2.2020, 12:46:52] [Window] Requested CurrentPosition: 78%
[11.2.2020, 12:46:52] [Window] Requested TargetPosition: 78%
[11.2.2020, 12:46:53] [Window] Request succeeded after 1 / 5 attempts
[11.2.2020, 12:47:56] [Window] Requested TargetPosition: 78%
[11.2.2020, 12:47:56] [Window] Requested CurrentPosition: 75%
[11.2.2020, 12:47:57] [Window] Request succeeded after 1 / 5 attempts

Blind position changed via physical buttons:
[11.2.2020, 12:53:01] [Window] Request succeeded after 1 / 5 attempts
[11.2.2020, 12:53:01] [Config] Homebridge Config UI X v4.10.0 is listening on :: port 8581
[11.2.2020, 12:53:05] [Window] Requested TargetPosition: 75%
[11.2.2020, 12:53:05] [Window] Requested CurrentPosition: 75%
[11.2.2020, 12:53:06] [Window] Request succeeded after 1 / 5 attempts
[11.2.2020, 12:53:47] [Window] Requested TargetPosition: 75%
[11.2.2020, 12:53:47] [Window] Requested CurrentPosition: 75%
[11.2.2020, 12:53:47] [Window] Request succeeded after 1 / 5 attempts
[11.2.2020, 12:53:53] [Window] Requested CurrentPosition: 63%
[11.2.2020, 12:53:53] [Window] Requested TargetPosition: 75%
[11.2.2020, 12:53:54] [Window] Request succeeded after 1 / 5 attempts

@buenyamin-olgun thanks for your testing and reports.

if the action is stopped by the stop button the value doesn't update to the stopped (correct) one. This can be spotted also when the blind position is changed via the pyhsical buttons. Restarting the homebridge service fixes this.

I've pushed a number of changes that I'm hoping will address at least the majority of your issues. Would be grateful for you to test it as I have no practical way to do so since my blinds don't work like this. I've also added a feature to disable sending the stop command when a value is provided. To me, this makes intuitive sense -- if your blinds can receive a value to target, there should be no reason that we need to also send a stop command for intermediate values. (Note: the stop 'button' still works).
https://raw.githubusercontent.com/zwerch/homebridge-blinds/master/index.js

Currently it seems to respect the motion time, could this be disabled?

The problem is: the blinds only have knowledge of the position from the position_url in this case. If we poll this URL multiple times per second it is very inefficient. Also, note that the blinds appropriately use a fraction of the motion time if only a few % is changed.
Therefore, I modified the behavior as follows. The motion time is used as an internal estimate. Once this "estimate" is reached, it will poll the position_url to update the blind's position. If the desired position is reached, it will end the motion. However, if the desired position is not reached it will keep waiting and retrying again using similar estimates.
The goal is that it should not be polling for current position so frequently. The icon may be very slightly out of sync, but I think it should be quite close if you're using the correct motion time for your blinds.

Sorry for the delay, had working hours of nonstop +1 day.
First everything seemed to be okay, what I did was: Took the blind, set it to a lower position and stopped the blinds with the stop button. After that I tried to move the blinds up, it spammed me and the device again with values. The device crashed and restarted so I'm not sure which commands were spammed.
Something noticable: The move to a upper position is registered as a move down.
Here's the full log:
[14.2.2020, 00:11:07] Homebridge is running on port 51946.
[14.2.2020, 00:11:07] [Window] Request succeeded after 1 / 5 attempts
[14.2.2020, 00:11:07] [Window] Body (200): {"ShutterPosition1":63}
[14.2.2020, 00:11:07] [Config] Homebridge Config UI X v4.10.0 is listening on :: port 8581
[14.2.2020, 00:11:17] [Window] Requested CurrentPosition: 63%
[14.2.2020, 00:11:17] [Window] Requested TargetPosition: 63%
[14.2.2020, 00:11:17] [Window] Request succeeded after 1 / 5 attempts
[14.2.2020, 00:11:17] [Window] Body (200): {"ShutterPosition1":63}
[14.2.2020, 00:11:20] [Window] Requested CurrentPosition: 63%
[14.2.2020, 00:11:20] [Window] Requested TargetPosition: 63%
[14.2.2020, 00:11:20] [Window] Request succeeded after 1 / 5 attempts
[14.2.2020, 00:11:20] [Window] Body (200): {"ShutterPosition1":63}
[14.2.2020, 00:11:23] [Window] Requested TargetPosition: 63%
[14.2.2020, 00:11:23] [Window] Requested CurrentPosition: 63%
[14.2.2020, 00:11:23] [Window] Request succeeded after 1 / 5 attempts
[14.2.2020, 00:11:23] [Window] Body (200): {"ShutterPosition1":63}
[14.2.2020, 00:11:29] [Window] Requested Move down (to 49%)
[14.2.2020, 00:11:29] [Window] Request succeeded after 1 / 5 attempts
[14.2.2020, 00:11:29] [Window] Body (200): {"POWER2":"ON","ShutterPosition1":49}
[14.2.2020, 00:11:29] [Window] Move request sent (211 ms), waiting 2.8s (+ 0s response lag)...
[14.2.2020, 00:11:29] [Window] Stop command will be skipped; exact position specified
[14.2.2020, 00:11:29] [Window] Timeout finished
[14.2.2020, 00:11:31] [Window] Requesting manual stop
[14.2.2020, 00:11:32] [Window] Request succeeded after 1 / 5 attempts
[14.2.2020, 00:11:32] [Window] Body (200): {"POWER2":"OFF","POWER3":"ON"}
[14.2.2020, 00:11:32] [Window] Stop request sent
[14.2.2020, 00:11:32] [Window] Requested CurrentPosition: 53%
[14.2.2020, 00:11:32] [Window] Request succeeded after 1 / 5 attempts
[14.2.2020, 00:11:32] [Window] Body (200): {"POWER3":"OFF","POWER1":"ON","ShutterPosition1":0}
[14.2.2020, 00:11:32] [Window] End Move down (to 49%)
[14.2.2020, 00:12:11] [Window] Requested Move down (to 59%)
[14.2.2020, 00:12:12] [Window] Request succeeded after 1 / 5 attempts
[14.2.2020, 00:12:12] [Window] Body (200): {"POWER1":"ON","ShutterPosition1":59}
[14.2.2020, 00:12:12] [Window] Move request sent (120 ms), waiting NaNs (+ 0s response lag)...
[14.2.2020, 00:12:12] [Window] Stop command will be skipped; exact position specified
[14.2.2020, 00:12:12] [Window] Timeout finished
[14.2.2020, 00:12:12] [Window] Requested Move down (to 71%)
[14.2.2020, 00:12:12] [Window] Request succeeded after 1 / 5 attempts
[14.2.2020, 00:12:12] [Window] Body (200): {"ShutterPosition1":71}
[14.2.2020, 00:12:12] [Window] Move request sent (195 ms), waiting NaNs (+ 0s response lag)...
[14.2.2020, 00:12:12] [Window] Stop command will be skipped; exact position specified
[14.2.2020, 00:12:12] [Window] Timeout finished
[14.2.2020, 00:12:12] [Window] Requested CurrentPosition: NaN%
[14.2.2020, 00:12:12] [Window] Request succeeded after 1 / 5 attempts
[14.2.2020, 00:12:12] [Window] Body (200): {"ShutterPosition1":0}
[14.2.2020, 00:12:12] [Window] Requested CurrentPosition: 0%
[14.2.2020, 00:12:12] [Window] Request succeeded after 1 / 5 attempts
[14.2.2020, 00:12:12] [Window] Body (200): {"ShutterPosition1":0}
[14.2.2020, 00:12:13] [Window] Requested CurrentPosition: 0%
[14.2.2020, 00:12:13] [Window] Request succeeded after 1 / 5 attempts
[14.2.2020, 00:12:13] [Window] Body (200): {"ShutterPosition1":0}
[14.2.2020, 00:12:13] [Window] Requested CurrentPosition: 0%
[14.2.2020, 00:12:13] [Window] Request succeeded after 1 / 5 attempts
[14.2.2020, 00:12:13] [Window] Body (200): {"ShutterPosition1":0}
[14.2.2020, 00:12:13] [Window] Requested CurrentPosition: 0%
[14.2.2020, 00:12:13] [Window] Request succeeded after 1 / 5 attempts
[14.2.2020, 00:12:13] [Window] Body (200): {"ShutterPosition1":0}
[14.2.2020, 00:12:13] [Window] Requested CurrentPosition: 0%
[14.2.2020, 00:12:13] [Window] Request succeeded after 1 / 5 attempts
[14.2.2020, 00:12:13] [Window] Body (200): {"ShutterPosition1":0}
[14.2.2020, 00:12:14] [Window] Requested CurrentPosition: 0%
[14.2.2020, 00:12:14] [Window] Request succeeded after 1 / 5 attempts
[14.2.2020, 00:12:14] [Window] Body (200): {"ShutterPosition1":0}
[14.2.2020, 00:12:14] [Window] Requested CurrentPosition: 0%
[14.2.2020, 00:12:14] [Window] Request succeeded after 1 / 5 attempts
[14.2.2020, 00:12:14] [Window] Body (200): {"ShutterPosition1":0}
[14.2.2020, 00:12:14] [Window] Requested CurrentPosition: 0%
[14.2.2020, 00:12:14] [Window] Request succeeded after 1 / 5 attempts
[14.2.2020, 00:12:14] [Window] Body (200): {"ShutterPosition1":0}
[14.2.2020, 00:12:14] [Window] Requested CurrentPosition: 0%
[14.2.2020, 00:12:14] [Window] Request succeeded after 1 / 5 attempts
[14.2.2020, 00:12:14] [Window] Body (200): {"ShutterPosition1":0}
[14.2.2020, 00:12:14] [Window] Requested CurrentPosition: 0%
[14.2.2020, 00:12:15] [Window] Request succeeded after 1 / 5 attempts
[14.2.2020, 00:12:15] [Window] Body (200): {"ShutterPosition1":70}
[14.2.2020, 00:12:15] [Window] Requested CurrentPosition: 70%
[14.2.2020, 00:12:15] [Window] Request succeeded after 1 / 5 attempts
[14.2.2020, 00:12:15] [Window] Body (200): {"ShutterPosition1":71}
[14.2.2020, 00:12:15] [Window] End Move down (to 71%)
[14.2.2020, 00:12:15] [Window] Requesting manual stop
[14.2.2020, 00:12:15] [Window] Request succeeded after 1 / 5 attempts
[14.2.2020, 00:12:15] [Window] Body (200): {"POWER3":"ON"}
[14.2.2020, 00:12:15] [Window] Stop request sent

Thanks @buenyamin-olgun. Pushed a few more commits.
Originally, you wrote:

Get current position (where current position 79): http:///cm?cmnd=ShutterPosition
Response: {"ShutterPosition1":79}
Status Code: 200 OK

But, in some cases, your blinds are returning multiple values for the getPosition response.
{"POWER3":"OFF","POWER1":"ON","ShutterPosition1":0}

That was causing an issue. For now, I just filter to return only the numeric values. More robust handling probably needs to be added at some point. In your case, there is only one so hopefully it will resolve the issue.

Thank you for your further fixes.
Didn't notice that it reports ShutterPosition1:0 during movement and also while it is really fully closed.
The 0 value (completely closed) seems to be problem for your plugin:
Return:
{"ShutterPosition1":0}

Homebridge Log:
[14.2.2020, 00:52:00] [Window] Requested CurrentPosition: 38%
[14.2.2020, 00:52:00] [Window] Request succeeded after 1 / 5 attempts
[14.2.2020, 00:52:00] [Window] Body (200): {"ShutterPosition1":0}
[14.2.2020, 00:52:00] [Window] setCurrentPositionByUrl failed; invalid response (should be 0-100): -1
[14.2.2020, 00:52:00] [Window] End Move down to 38% (target 0%)
[14.2.2020, 00:52:08] [Window] Requested TargetPosition: 38%
[14.2.2020, 00:52:08] [Window] Requested CurrentPosition: 38%
[14.2.2020, 00:52:08] [Window] Request succeeded after 1 / 5 attempts
[14.2.2020, 00:52:08] [Window] Body (200): {"ShutterPosition1":0}
[14.2.2020, 00:52:08] [Window] setCurrentPositionByUrl failed; invalid response (should be 0-100): -1

Forgot to mention that the endpoint is reporting ShutterPosition1 = 0 during movement and also while it is really fully closed.

This is a problem. The only way to proceed from here (maybe) would be some additional JSON parsing... IF... we can guarantee that the POWER values would also be reported in that timeframe.

The 0 value (completely closed) seems to be problem for your plugin:

Fixed.

and updating the estimated value by the correct one by closing and reopening the Home App also does not work (real value: 6%; set value via Home App: 7%):

I'm not sure what you mean here? Anyway, it is likely related to the 0 issue above since it was unable to retrieve a value so it resorts to an estimated one.

This is a problem. The only way to proceed from here (maybe) would be some additional JSON parsing... IF... we can guarantee that the POWER values would also be reported in that timeframe.
No, unfortunately the POWER values are not everytime reported afaik.
This was also an issue as I tried to develop my own plugin.

Hopefully tasmota devs will fix it soon.

Fixed.
Thanks!

I'm not sure what you mean here? Anyway, it is likely related to the 0 issue above since it was unable to retrieve a value so it resorts to an estimated one.

I don't think that it is related to the upper issue since you can see that ShutterPosition1 was reporting 6 at that time but your plugin cached / estimated (?) 7.
It does not update itself with the value gathered from the endpoint.

No, unfortunately the POWER values are not everytime reported afaik.

In anticipation of this, I added some JSONata handling of the result. You will have to run npm install jsonata while in testing mode after replacing the file again.

I don't think that it is related to the upper issue since you can see that ShutterPosition1 was reporting 6 at that time but your plugin cached / estimated (?) 7.
It does not update itself with the value gathered from the endpoint.

Can you clearly explain which commands you pressed on your blinds to initiate this? It's not clear to me how it happened. Also, the 0% response from Tasmota is definitely causing a problem. I would suggest increasing motion time / lag time a little bit so that the blinds are never checking while the blinds are in motion.
That being said, this could be a major issue if the position is requested by HomeKit itself while the blinds are moving.

Wow, this time it worked incredibly well until the point where it started looping again :( :
[14.2.2020, 01:59:23] [Window] Body (200): {"POWER2":"ON","ShutterPosition1":12}
[14.2.2020, 01:59:23] [Window] Move request sent (113 ms), waiting 2s (+ 0s response lag)...
[14.2.2020, 01:59:23] [Window] Stop command will be skipped; exact position specified
[14.2.2020, 01:59:23] [Window] Timeout finished
[14.2.2020, 01:59:25] [Window] Requested CurrentPosition: 12%
[14.2.2020, 01:59:25] [Window] Request succeeded after 1 / 5 attempts
[14.2.2020, 01:59:25] [Window] Body (200): {"ShutterPosition1":11}
[14.2.2020, 01:59:25] [Window] Requested CurrentPosition: 11%
[14.2.2020, 01:59:25] [Window] Request succeeded after 1 / 5 attempts
[14.2.2020, 01:59:25] [Window] Body (200): {"ShutterPosition1":11}
[14.2.2020, 01:59:26] [Window] Requested CurrentPosition: 11%
[14.2.2020, 01:59:26] [Window] Request succeeded after 1 / 5 attempts
[14.2.2020, 01:59:26] [Window] Body (200): {"ShutterPosition1":11}
[14.2.2020, 01:59:26] [Window] Requested CurrentPosition: 11%
[14.2.2020, 01:59:26] [Window] Request succeeded after 1 / 5 attempts
[14.2.2020, 01:59:26] [Window] Body (200): {"ShutterPosition1":11}
[14.2.2020, 01:59:26] [Window] Requested CurrentPosition: 11%
[14.2.2020, 01:59:26] [Window] Request succeeded after 1 / 5 attempts
[14.2.2020, 01:59:26] [Window] Body (200): {"ShutterPosition1":11}
[14.2.2020, 01:59:26] [Window] Requested CurrentPosition: 11%
[14.2.2020, 01:59:26] [Window] Request succeeded after 1 / 5 attempts
[14.2.2020, 01:59:26] [Window] Body (200): {"ShutterPosition1":11}
[14.2.2020, 01:59:26] [Window] Requested CurrentPosition: 11%
[14.2.2020, 01:59:26] [Window] Request succeeded after 1 / 5 attempts
[14.2.2020, 01:59:26] [Window] Body (200): {"ShutterPosition1":11}
[14.2.2020, 01:59:27] [Window] Requested CurrentPosition: 11%
[14.2.2020, 01:59:27] [Window] Request succeeded after 1 / 5 attempts
[14.2.2020, 01:59:27] [Window] Body (200): {"ShutterPosition1":11}
[14.2.2020, 01:59:27] [Window] Requested CurrentPosition: 11%
[14.2.2020, 01:59:27] [Window] Request succeeded after 1 / 5 attempts
[14.2.2020, 01:59:27] [Window] Body (200): {"ShutterPosition1":11}
[14.2.2020, 01:59:27] [Window] Requested CurrentPosition: 11%
[14.2.2020, 01:59:27] [Window] Request succeeded after 1 / 5 attempts
[14.2.2020, 01:59:27] [Window] Body (200): {"ShutterPosition1":11}
[14.2.2020, 01:59:27] [Window] Requested CurrentPosition: 11%
[14.2.2020, 01:59:27] [Window] Request succeeded after 1 / 5 attempts
[14.2.2020, 01:59:27] [Window] Body (200): {"ShutterPosition1":11}
[14.2.2020, 01:59:27] [Window] Requested CurrentPosition: 11%
[14.2.2020, 01:59:27] [Window] Request succeeded after 1 / 5 attempts
[14.2.2020, 01:59:27] [Window] Body (200): {"ShutterPosition1":11}
[14.2.2020, 01:59:30] [Window] Requested CurrentPosition: 11%
[14.2.2020, 01:59:30] [Window] Request succeeded after 1 / 5 attempts
[14.2.2020, 01:59:30] [Window] Body (200): {"ShutterPosition1":11}
[14.2.2020, 01:59:30] [Window] Requested CurrentPosition: 11%
[14.2.2020, 01:59:30] [Window] Request succeeded after 1 / 5 attempts
[14.2.2020, 01:59:30] [Window] Body (200): {"ShutterPosition1":11}
[14.2.2020, 01:59:30] [Window] Requested CurrentPosition: 11%
[14.2.2020, 01:59:30] [Window] Request succeeded after 1 / 5 attempts
[14.2.2020, 01:59:30] [Window] Body (200): {"ShutterPosition1":11}
[14.2.2020, 01:59:31] [Window] Requested CurrentPosition: 11%
[14.2.2020, 01:59:31] [Window] Requesting manual stop
[14.2.2020, 01:59:31] [Window] Request succeeded after 1 / 5 attempts
[14.2.2020, 01:59:31] [Window] Body (200): {"ShutterPosition1":11}
[14.2.2020, 01:59:31] [Window] Request succeeded after 1 / 5 attempts
[14.2.2020, 01:59:31] [Window] Body (200): {"POWER3":"ON"}
[14.2.2020, 01:59:31] [Window] Stop request sent
[14.2.2020, 01:59:31] [Window] Requested CurrentPosition: 11%
[14.2.2020, 01:59:31] [Window] Request succeeded after 1 / 5 attempts
[14.2.2020, 01:59:31] [Window] Body (200): {"ShutterPosition1":11}
[14.2.2020, 01:59:31] [Window] End Move down to 11% (target 12%)

There is some issue with the Tasmota or the positions being specified.
When we are requesting 12%, it is stopping at 11%. So, the code is looping waiting for the blinds to hit 12%. I noticed something similar earlier.

I'll do further tests regarding this problem.

@buenyamin-olgun no problem.
I pushed a new commit that sets an upper bound on the number of retries (in case of this type of failure, it won't loop forever).
Also, is it always off by 1 or does it sometimes look equal to the target? If it's always off by 1, this could be resolved by setting position_jsonata to $number(ShutterPosition1 + 1) For example.
You can experiment more with JSONata using their playground.

It seems to be off by one, couldn't detect any other off-value.
Seems like it is doing this in both ways (up & down).
I've opened a issue on tasmota for this as well.

It seems to be off by one, couldn't detect any other off-value.

In this case, my suggestion could work fine. You just adjust the value by 1 using the jsonata.

Btw, have pushed several more commits to account for some other cases. Will be grateful if you're able to test with your setup and just be sure there are no differences.

Thank you. The problem that tasmota is reporting 0 during movement which makes it hard to test things.
Right now your code sets the shutter-value correctly to closed if shutterposition is 0.
I think we'll have to wait for this issue be fixed on tasmota side.

Sure, np.

@buenyamin-olgun any progress on this?
I was wondering if (at least part?) of your issue is Tasmota calibration.

Have you followed the instructions here?

https://github.com/arendst/Tasmota/wiki/blinds-and-shutters#calibration

Are you running the latest version of Tasmota firmware 8.1?

This all being said, I think perhaps MQTT would be a superior way to interact with Tasmota. You can use apply functions to parse the result.
https://github.com/arachnetech/homebridge-mqttthing#window-covering

It looks like ShutterStop is the correct way to issue a stop command (not the Power command?)

https://github.com/arendst/Tasmota/wiki/commands#blinds-shutters-and-roller-shades

@dxdc Was away until today, had to do work today so didn't had any time yet.
The major issue that it was not reporting its current position should be fixed now, the devs pushed a commit 2 days ago: https://github.com/arendst/Tasmota/pull/7785
I'm waiting that a final version gets released.
1.) Yes, the shutter is calibrated with the provided instructions by tasmota.
2.) Yes, currently it is running the latest version (8.1).
3.) On my device I have a separate stop button (Power 3) which I was using. This was set to the same function as ShutterStop by using the rule:
Rule1 on Power3#State=1 do backlog ShutterStop1; Power3 0 endon

During tests I already silently swapped Power3 by ShutterStop, didn't make any difference.
I agree with you that MQTT would be a superior way to interact with the device but unfortunately I don't have any infrastructure right now and it would be one more item in the chain to the device which I'm trying to avoid.
Your plugin seems to work well so far, when the tasmota devs publishes their changes as a release I think it could work out well how it is right now. Waiting for that.

Great news @buenyamin-olgun, and thanks for the explanation.
Understand about MQTT. Will await the next Tasmota release, please keep me posted.

Hi @buenyamin-olgun have you had a chance to upgrade to the latest Tasmota release?

@buenyamin-olgun you may also be interested in the feature I added that lets you update the blinds position manually (on a one-time basis) via webhook. See discussion #30 here

Hi @buenyamin-olgun have you had a chance to upgrade to the latest Tasmota release?

Just found out through your post that the new version has been released, thanks for that!
Will test it in the coming few days.
The position_url parameter would imho be more suitable for my situation if tasmota sends correct values. But will look into it if tasmota starts again to make trouble.
Did I say thank you? Oh, just six times. but one more can't hurt: THANK YOU FOR YOUR GREAT WORK!

Quite welcome... cheers :) Keep me posted and close the issue (or comment) once you finish testing on your side.

Tested it now with Tasmota 8.2.0 for about half an hour, seems to work fine so far!

Great! Thanks for the feedback.


Request to apply bugfix patch

Instructions: Replace the template text and remove irrelevant text (including this line)
Warning: if you don't fill this issue template and provide the reproducible steps the issue could be closed directly.
Environment (please complete the following information):

OS: it doesn't matter
(Neo)Vim version: it doesn't matter
vim-clap version: it doesn't matter
Have you reproduced with a minimal vimrc: it doesn't matter
Have you updated to the latest plugin version: yes, i have updated to the latest version
Have you upgraded to/compiled the latest Rust binary: ???

Describe the bug
A clear and concise description of what the bug is.
It is a fault due to conditional statement check in the state where there is no initial value.
The patch below will fix it. please apply
diff --git a/autoload/clap/spinner.vim b/autoload/clap/spinner.vim
index ff3e247..55c2d2c 100644
--- a/autoload/clap/spinner.vim
+++ b/autoload/clap/spinner.vim
@@ -13,6 +13,7 @@ let s:IDLE = ' '
let s:frame_index = 0
let s:spinner = s:IDLE
+let s:is_busy = 0
" The spinner and current provider prompt are actually displayed in a same window.
function! s:fill_in_placeholders(prompt_format) abort
Clap debug

To Reproduce
Steps to reproduce the behavior:

Create the minimal vimrc min.vim:
it doesn't matter

Start (neo)vim with command: vim -u min.vim
it doesn't matter

Type '....'
Run "Clap filer" as soon as you start vi editor
and type any character to the textbox in Clap filer window

See error
you can see following error

Error detected while processing function 48_apply_input[4]..31[14]..function 48_apply_input[4]..31[13]..clap#spinner#set_idle:
line    1:
E121: Undefined variable: s:is_busy
Press ENTER or type command to continue
Expected behavior
A clear and concise description of what you expected to happen.
Screenshots
If applicable, add screenshots to help explain your problem.
Additional context
Add any other context about the problem here.

Thanks for the report, I had the fix on another WIP branch and forgot to patch it to the master :(. BTW, feel free to try out https://github.com/liuchengxu/vim-clap/tree/arc-item which has a lot of improvements, the performance of filtering is 2x faster (9s to 4s for more than 3 million items) by running in parallel, it's not yet quite stable though.

Thank you for you to fix it. I have being used this tool about two years. I'm really glad to use this state of the art tool.


Updated Mutect GATK3 with Mutect2 GATK4

This PR is to change Mutect (GATK3) to Mutect2 (GATK4). Here are the changes ive noticed:

Mutect2 doesn't require any of the inputs like dbsnp_vcf, cosmic_vcf , artifact_detection_mode , panel_of_normals_vcf , max_alt_alleles_in_normal_count , max_alt_allele_in_normal_fraction.
After just eyeballing the time taken to finish, Mutect2 is at least twice as fast as Mutect.
There were comparable differences with the sites called by Mutect2 compared to Mutect. Ive attached an image to show the similarities and differences of the Mutect VFCs and Final VCFs (Output of the somatic exome pipeline).

Adding that we reviewed the differences between the new and old final outputs, and they seem generally fine. They consist mostly of

low-level VAF calls that could go either way.
new dinucleotide variants (e.g. AG -> TG) that the new Mutect seems to be better at detecting


Update README.md GIFS in puppetlabs/pdkgo

There are sections of the README.md that are out of date, due to the product output changing and new functionality being added.
It would also be good to regenerate the GIFs with terminalizer, to make them more legible.
Another issue is that the GIFs live in the repo and are quite large - they should be split out to somewhere separate, if possible.
Acceptance Criteria:

[x] Regenerate GIFs with terminalizer
[x] Move GIFs to a separate location, if possible
[x] Update Quick Start Guide -> Step 1 GIF to use new namespace/template_id template structure
[x] Update Quick Start Guide -> Step 2 GIF to use new namespace/template_id template structure
[x] Update Quick Start Guide -> Step 3 GIFs to use new namespace/template_id template structure

Closed by #253


Delve can't find packages located in parent folder

Please answer the following before submitting your issue:
Note: Please include any substantial examples (debug session output,
stacktraces, etc) as linked gists.

What version of Delve are you using (dlv version)?
dlv1.1.0
What version of Go are you using? (go version)?
go1.9.2
What operating system and processor architecture are you using?
Docker 18.06.1-ce in Mint 19
What did you do?
dlv debug src/cmd/project/main.go-l <IP_ADDRESS>:2345 --headless=true --log=true -- server
What did you expect to see?
Delve running
What did you see instead?
src/cmd/project/main.go:4:2: cannot find package "external/nexudus" in any of:
/usr/local/go/src/external/nexudus (from $GOROOT)
/go/src/external/nexudus (from $GOPATH)
src/cmd/project/main.go:8:2: cannot find package "github.com/jinzhu/gorm" in any of:
/usr/local/go/src/github.com/jinzhu/gorm (from $GOROOT)
/go/src/github.com/jinzhu/gorm (from $GOPATH)
src/cmd/project/main.go:9:2: cannot find package "gopkg.in/intercom/intercom-go.v2" in any of:
/usr/local/go/src/gopkg.in/intercom/intercom-go.v2 (from $GOROOT)
/go/src/gopkg.in/intercom/intercom-go.v2 (from $GOPATH)
exit status 1
EXTRA
My configuration file (docker/web-dev):
...
VOLUME /project/app/contracts
VOLUME /project/pkg
VOLUME /project/src
VOLUME /project/vendor
My docker-compose file:
web:
build: .
dockerfile: docker/web-dev
working_dir: /project
command: /go/bin/reflex --regex='.go$$' --inverse-regex='_test.go$$' --start-service -- sh -c 'gb build all && ./bin/project server'
ports:

6262:6262
volumes:
./pkg:/project/pkg
./src:/project/src
./vendor:/project/vendor
./app:/project/app
./app/contracts:/project/app/contracts

Problem:
I'm using gb to build the project. It recursively checks all folders to get vendor, external and main.go files.
Delve doesn't do this so when I ssh into the docker image and try to run the dlv server on the root of the project it says that it cannot find go file. If I try with src/cmd/project/main.go it says it cannot find all the other packages.

Could you elaborate a little bit more? I don't know which flags are you talking about.


nixos/swapspace: aarch64-debug ofborg draft pr [IGNORE]

NOT intending to merge.
I plan to use this to debug aarch64-linux test, since I don't have access to one.

@ofborg test swapspace

@ofborg test swapspace

@ofborg test swapspace

@ofborg test swapspace

@ofborg test swapspace

@ofborg test swapspace

@ofborg test swapspace

@ofborg test swapspace

fixed, see pr 348588


Design and implement streamer abstraction

For WebSocket APIs it's common to stream live updates to client connections.
It'll be useful to create abstraction that will manage listeners for the updates and keep a subscription active until at least one connection is listening to it.

Postponing this for now, don't see an elegant abstraction that will provide possibility to implement subscriptions in general way.


Resolves #20

https://github.com/mohbasheer/angular-chips/issues/20
Details:
I noticed a bug when using this plugin with the typeahead plugin from bootstrap, it's present in the demo as well.
If you type the exact name of one of the selections, it will not let you add it to the chips, however if you type less than the full exact name, or don't use capital letters where the item in question uses them, it will let you select it.
For example, on the demo typing FaceBook will not let you hit enter and select the choice, but Facebook or typing Face and hitting enter will.

Thanks for the PR.
Sorry issue is not fixed yet. try to type exactly same letter in same case you can reproduce the issue. For example type Paypal. it won't allow you to select. but if you type paypal then it will.
Please create new PR when you done. thanks.

You have to add typeahed-on-select callback while using it. It did solve the problem for me. I tried typing exact same string "Paypal".


WIP: Feature/buildcache

Describe what this PR does / why we need it
Build cache mechanism enables sealer to use the previous built image layers to increase image build speed.
Does this pull request fix one issue?

Fixes #111
Describe how you did it
imageID: ImageID is calculated from the HASH256 hash of its discription yaml file.
layerID: Layers are referenced by cryptographic hashes of their serialized representation. This is a SHA256 digest over the tar archive used to transport the layer.
StoreID: StoreID is caculated from a series of serialized layers. The layers hash value is "", but the layers value and type is not empty. It is used in image store to help to reference to a stack of layers with a single identifier.
Describe how to verify it
Special notes for reviews

@touchuyht is that ok for me to continue finishing this pr

@touchuyht is that ok for me to continue finishing this pr

Of course. Go on  and finish it.

working on the pr #346


simplify readme, notebook cache

Now that the jupyterhub environment is locked in, it makes sense to only re-execute notebooks that are changed. Also, with all the notebooks added it now takes 10-20 minutes to execute them sequentially, which is a long time to wait for CI checks to complete. Note completely sure this will work well with the docker volume mount, but worth a try

going to merge this, as it's hard to test (will revert if unsuccessful, but i think we need this to merge the ml-tutorial which installs tensorflow), see documented issue on .netrc, docker and conda permissions here https://github.com/uwhackweek/jupyterbook-template/issues/14#issuecomment-877883117

I think this will require more work since the _build folder is not retained in github actions. i think we'd have to manually specify a location in the jupyter book config https://jupyterbook.org/content/execute.html#caching-the-notebook-execution , and then make sure the github action workflow points to the same place: https://docs.github.com/en/actions/guides/caching-dependencies-to-speed-up-workflows


:robot: Various enhancement to security scans

What this PR does / why we need it: Extracted from #1093
Refactor the docker target. It is now split in base-image and image. the old docker target is equivalent to image. The base-image spits an image with an untouched os-release file so scanners can pick up the original base-image version. I've also removed some dups present in the Earthfile

back to business @Itxaka ! :D


Tie scores reverted back to zero on click of reset score button.

PR Description 📜
The ties score is now changed back to zero on click of the reset score button in the rock paper scissors game.
Fixes #3865

Mark the task you have completed ✅

[x] I follow CONTRIBUTING GUIDELINE & CODE OF CONDUCT of this project.
[x] I have performed a self-review of my own code or work.
[x] I have commented my code, particularly in hard-to-understand areas.
[x] My changes generates no new warnings.
[x] I have followed proper naming convention showed in CONTRIBUTING GUIDELINE
[x] I have added screenshot for website preview in assets/images
[x] I have added entries for my game in main README.md
[x] I have added README.md in my folder
[x] I have specified the respective issue number for which I have requested the new game.

Add your screenshots(Optional) 📸

Thank you soo much for contributing to our repository 💗

Thank you @meetarora10 ,for creating the PR and contributing to our GameZone 💗
Review team will review the PR and will reach out to you soon! 😇
Make sure that you have marked all the tasks that you are done with ✅.
Thank you for your patience! 😀

Thank you  @meetarora10 , for your valuable time and contribution in our GameZone 💗.
It’s our GameZone, so Let’s build this GameZone altogether !!🤝
Hoping to see you soon with another PR again 😇
Wishing you all the best for your journey into Open Source🚀


[question] - How to Delete Open Channels Created by Clients in Transmit?

Package version
1.0.2
Describe the bug
Hi,
I understand that channels are created as soon as clients subscribe to them. However, I would like to know how I can delete channels that have been opened by clients. Is there a built-in way to handle this, or would I need to implement a custom solution?
Thank you for your assistance!
Reproduction repo
No response

I may have created this issue incorrectly. I'm new to this and still learning how to use GitHub properly. If this question doesn't belong here, feel free to delete it.

Hey @joaosilva0345! 👋🏻
This could be easily automated.
When a client disconnects, we can check if another client is still in the channel. If not, we delete the channel internally.
What do you think?

Aren't channels memory only? If yes, what's the purpose of deleting it? Because a channel with zero connected clients will be an empty object/set inside memory and will consume only few bytes.

Aren't channels memory only? If yes, what's the purpose of deleting it? Because a channel with zero connected clients will be an empty object/set inside memory and will consume only few bytes.

Because even if it is only a small string in memory, an attacker may create millions of them if no security is added to the Transmit endpoint. This could cause a security risk in the long run.
I don't believe deleting the entry will create any issue.

Quando um cliente se desconecta, podemos verificar se outro cliente ainda está no canal. Caso contrário, excluímos o canal internamente.
O que você acha?

Yes, it might be a good idea.

Quando um cliente se desconecta, podemos verificar se outro cliente está no canal. Caso contrário, excluimos o canal interno.
O que você acha?

Yes, it might be a good idea.

Porque mesmo que seja apenas uma pequena cadeia de caracteres na memória

If I understand correctly, even with Redis configured as a transport, the channels are still kept in local memory in each server instance, and Redis is only used to synchronize the state of the channels between different instances. Is this correct?

Hey @joaosilva0345! 👋🏻
The channel names are not stored anywhere. They are directly linked to a subscriber (stream). When the stream end, this relation is deleted too.
Therefore, there is no need to delete anything manually.

Redis is only used to synchronize the state of the channels between different instances

Correct.


Add support for removing whitespace for single line imports

Hello!
This PR adds support for removing the whitespace from single line imports like so
import {'foo'} from 'bar';
as opposed to
import { 'foo' } from 'bar';

@matthew-gerstman FYI I forked this project and incorporated your PR into my release, if you are interested.
https://github.com/neilsoult/typescript-imports-sort


Prepare SocketIO serverless beta2

Contributing to the Azure SDK
Please see our CONTRIBUTING.md if you are not familiar with contributing to this repository or have questions.
For specific information about pull request etiquette and best practices, see this section.

API change check
API changes are not detected in this pull request.


npm sqlite3 installation failed

``With npm v7.21.0 I get the following error while installing with npm install sqlite3
npm ERR! code 1
npm ERR! path /home/zubair/Work/pkichain/pkichain_user_authentication/node_modules/sqlite3
npm ERR! command failed
npm ERR! command sh -c node-pre-gyp install --fallback-to-build

npm ERR!  Extracting by manifest.
2400 timing reifyNode:node_modules/natural-compare Completed in 992ms
2401 timing reifyNode:node_modules/fb-watchman Completed in 992ms
2402 timing reifyNode:node_modules/end-of-stream Completed in 1031ms
2403 timing reifyNode:node_modules/imurmurhash Completed in 1031ms
2404 timing reifyNode:node_modules/prepend-http Completed in 1031ms
2405 timing reifyNode:node_modules/strip-json-comments Completed in 1031ms
2406 timing reifyNode:node_modules/url-parse-lax Completed in 1030ms
2407 timing reifyNode:node_modules/to-readable-stream Completed in 1030ms
2408 timing reifyNode:node_modules/mimic-response Completed in 1030ms
2409 timing reifyNode:node_modules/lowercase-keys Completed in 1031ms
2410 timing reifyNode:node_modules/duplexer3 Completed in 1031ms
2411 timing reifyNode:node_modules/decompress-response Completed in 1031ms
2412 timing reifyNode:node_modules/ini Completed in 1030ms
2413 timing reifyNode:node_modules/import-lazy Completed in 1029ms
2414 timing reifyNode:node_modules/universalify Completed in 1027ms
2415 timing reifyNode:node_modules/configstore Completed in 1028ms
2416 timing reifyNode:node_modules/is-number Completed in 1026ms
2417 timing reifyNode:node_modules/chownr Completed in 1026ms
2418 timing reifyNode:node_modules/number-is-nan Completed in 1025ms
2419 timing reifyNode:node_modules/code-point-at Completed in 1025ms
2420 timing reifyNode:node_modules/is-fullwidth-code-point Completed in 1026ms
2421 timing reifyNode:node_modules/oauth-sign Completed in 1024ms
2422 timing reifyNode:node_modules/process-nextick-args Completed in 1025ms
2423 timing reifyNode:node_modules/wide-align Completed in 1025ms
2424 timing reifyNode:node_modules/has-unicode Completed in 1025ms
2425 timing reifyNode:node_modules/object-assign Completed in 1025ms
2426 timing reifyNode:node_modules/aproba Completed in 1025ms
2427 timing reifyNode:node_modules/abbrev Completed in 1025ms
2428 timing reifyNode:node_modules/buffer-from Completed in 1024ms
2429 timing reifyNode:node_modules/destroy Completed in 1025ms
2430 timing reifyNode:node_modules/path-parse Completed in 1025ms
2431 timing reifyNode:node_modules/node-modules-regexp Completed in 1024ms
2432 timing reifyNode:node_modules/fast-levenshtein Completed in 1024ms
2433 timing reifyNode:node_modules/ee-first Completed in 1023ms
2434 timing reifyNode:node_modules/is-extglob Completed in 1023ms
2435 timing reifyNode:node_modules/is-glob Completed in 1024ms
2436 timing reifyNode:node_modules/ignore-by-default Completed in 1024ms
2437 timing reifyNode:node_modules/brace-expansion Completed in 1023ms
2438 timing reifyNode:node_modules/lodash.once Completed in 1024ms
2439 timing reifyNode:node_modules/lodash.isstring Completed in 1024ms
2440 timing reifyNode:node_modules/lodash.isnumber Completed in 1023ms
2441 timing reifyNode:node_modules/lodash.isinteger Completed in 1023ms
2442 timing reifyNode:node_modules/lodash.isboolean Completed in 1023ms
2443 timing reifyNode:node_modules/lodash.isplainobject Completed in 1023ms
2444 timing reifyNode:node_modules/is-potential-custom-element-name Completed in 1023ms
2445 timing reifyNode:node_modules/@types/stack-utils Completed in 1022ms
2446 timing reifyNode:node_modules/normalize-path Completed in 1022ms
2447 timing reifyNode:node_modules/@types/graceful-fs Completed in 1022ms
2448 timing reifyNode:node_modules/@types/babel__template Completed in 1021ms
2449 timing reifyNode:node_modules/babel-preset-jest Completed in 1020ms
2450 timing reifyNode:node_modules/@types/babel__generator Completed in 1021ms
2451 timing reifyNode:node_modules/shebang-command Completed in 1020ms
2452 timing reifyNode:node_modules/strip-final-newline Completed in 1021ms
2453 timing reifyNode:node_modules/merge-stream Completed in 1021ms
2454 timing reifyNode:node_modules/path-is-absolute Completed in 1017ms
2455 timing reifyNode:node_modules/wrappy Completed in 1018ms
2456 timing reifyNode:node_modules/once Completed in 1018ms
2457 timing reifyNode:node_modules/inflight Completed in 1018ms
2458 timing reifyNode:node_modules/color-name Completed in 1018ms
2459 timing reifyNode:node_modules/@types/yargs-parser Completed in 1018ms
2460 timing reifyNode:node_modules/@types/istanbul-lib-report Completed in 1018ms
2461 timing reifyNode:node_modules/@types/istanbul-reports Completed in 1018ms
2462 timing reifyNode:node_modules/to-fast-properties Completed in 1017ms
2463 timing reifyNode:node_modules/convert-source-map Completed in 1016ms
2464 timing reifyNode:node_modules/@types/istanbul-lib-coverage Completed in 1015ms
2465 timing reifyNode:node_modules/toidentifier Completed in 1015ms
2466 timing reifyNode:node_modules/ms Completed in 1015ms
2467 timing reifyNode:node_modules/escape-html Completed in 1015ms
2468 timing reifyNode:node_modules/array-flatten Completed in 1014ms
2469 timing reifyNode:node_modules/ansi-align/node_modules/ansi-regex Completed in 1052ms
2470 timing reifyNode:node_modules/ansi-align/node_modules/is-fullwidth-code-point Completed in 1052ms
2471 timing reifyNode:node_modules/ansi-align/node_modules/string-width Completed in 1052ms
2472 timing reifyNode:node_modules/superagent/node_modules/ms Completed in 1047ms
2473 timing reifyNode:node_modules/string-width/node_modules/ansi-regex Completed in 1044ms
2474 timing reifyNode:node_modules/string-width/node_modules/strip-ansi Completed in 1044ms
2475 timing reifyNode:node_modules/gauge/node_modules/strip-ansi Completed in 1044ms
2476 timing reifyNode:node_modules/gauge/node_modules/ansi-regex Completed in 1044ms
2477 timing reifyNode:node_modules/agent-base/node_modules/ms Completed in 1039ms
2478 timing reifyNode:node_modules/https-proxy-agent/node_modules/ms Completed in 1037ms
2479 timing reifyNode:node_modules/http-proxy-agent/node_modules/ms Completed in 1037ms
2480 timing reifyNode:node_modules/@babel/highlight/node_modules/has-flag Completed in 1025ms
2481 timing reifyNode:node_modules/@babel/highlight/node_modules/escape-string-regexp Completed in 1025ms
2482 timing reifyNode:node_modules/@babel/highlight/node_modules/ansi-styles Completed in 1025ms
2483 timing reifyNode:node_modules/@babel/traverse/node_modules/ms Completed in 1025ms
2484 timing reifyNode:node_modules/@babel/core/node_modules/ms Completed in 1024ms
2485 timing reifyNode:node_modules/istanbul-lib-source-maps/node_modules/ms Completed in 1024ms
2486 timing reifyNode:node_modules/send/node_modules/ms Completed in 1020ms
2487 timing reifyNode:node_modules/nodemon/node_modules/has-flag Completed in 1019ms
2488 timing reifyNode:node_modules/nodemon/node_modules/ms Completed in 1019ms
2489 timing reifyNode:node_modules/jsonwebtoken/node_modules/ms Completed in 1018ms
2490 timing reifyNode:node_modules/lru-cache Completed in 1062ms
2491 timing reifyNode:node_modules/browser-process-hrtime Completed in 1061ms
2492 timing reifyNode:node_modules/crypto-random-string Completed in 1061ms
2493 timing reifyNode:node_modules/escape-goat Completed in 1061ms
2494 timing reifyNode:node_modules/normalize-url Completed in 1061ms
2495 timing reifyNode:node_modules/p-cancelable Completed in 1060ms
2496 timing reifyNode:node_modules/registry-url Completed in 1060ms
2497 timing reifyNode:node_modules/is-path-inside Completed in 1059ms
2498 timing reifyNode:node_modules/is-obj Completed in 1060ms
2499 timing reifyNode:node_modules/global-dirs Completed in 1060ms
2500 timing reifyNode:node_modules/unique-string Completed in 1060ms
2501 timing reifyNode:node_modules/dot-prop Completed in 1060ms
2502 timing reifyNode:node_modules/xdg-basedir Completed in 1059ms
2503 timing reifyNode:node_modules/semver-diff Completed in 1058ms
2504 timing reifyNode:node_modules/is-yarn-global Completed in 1058ms
2505 timing reifyNode:node_modules/latest-version Completed in 1058ms
2506 timing reifyNode:node_modules/pupa Completed in 1059ms
2507 timing reifyNode:node_modules/is-npm Completed in 1059ms
2508 timing reifyNode:node_modules/has-yarn Completed in 1058ms
2509 timing reifyNode:node_modules/is-installed-globally Completed in 1059ms
2510 timing reifyNode:node_modules/media-typer Completed in 1057ms
2511 timing reifyNode:node_modules/supports-hyperlinks Completed in 1055ms
2512 timing reifyNode:node_modules/fs-minipass Completed in 1055ms
2513 timing reifyNode:node_modules/minipass Completed in 1055ms
2514 timing reifyNode:node_modules/has-flag Completed in 1056ms
2515 timing reifyNode:node_modules/cookiejar Completed in 1055ms
2516 timing reifyNode:node_modules/component-emitter Completed in 1055ms
2517 timing reifyNode:node_modules/char-regex Completed in 1055ms
2518 timing reifyNode:node_modules/tunnel-agent Completed in 1055ms
2519 timing reifyNode:node_modules/is-typedarray Completed in 1054ms
2520 timing reifyNode:node_modules/forever-agent Completed in 1054ms
2521 timing reifyNode:node_modules/caseless Completed in 1055ms
2522 timing reifyNode:node_modules/aws-sign2 Completed in 1055ms
2523 timing reifyNode:node_modules/assert-plus Completed in 1056ms
2524 timing reifyNode:node_modules/console-control-strings Completed in 1054ms
2525 timing reifyNode:node_modules/set-blocking Completed in 1055ms
2526 timing reifyNode:node_modules/env-paths Completed in 1054ms
2527 timing reifyNode:node_modules/shebang-regex Completed in 1054ms
2528 timing reifyNode:node_modules/escape-string-regexp Completed in 1055ms
2529 timing reifyNode:node_modules/forwarded Completed in 1054ms
2530 timing reifyNode:node_modules/ansi-regex Completed in 1054ms
2531 timing reifyNode:node_modules/kleur Completed in 1055ms
2532 timing reifyNode:node_modules/p-limit Completed in 1055ms
2533 timing reifyNode:node_modules/word-wrap Completed in 1055ms
2534 timing reifyNode:node_modules/p-try Completed in 1055ms
2535 timing reifyNode:node_modules/mimic-fn Completed in 1055ms
2536 timing reifyNode:node_modules/is-binary-path Completed in 1054ms
2537 timing reifyNode:node_modules/glob-parent Completed in 1054ms
2538 timing reifyNode:node_modules/on-headers Completed in 1054ms
2539 timing reifyNode:node_modules/basic-auth Completed in 1054ms
2540 timing reifyNode:node_modules/fill-range Completed in 1054ms
2541 timing reifyNode:node_modules/p-locate Completed in 1054ms
2542 timing reifyNode:node_modules/to-regex-range Completed in 1054ms
2543 timing reifyNode:node_modules/jwa Completed in 1055ms
2544 timing reifyNode:node_modules/lodash.includes Completed in 1054ms
2545 timing reifyNode:node_modules/leven Completed in 1053ms
2546 timing reifyNode:node_modules/strip-bom Completed in 1053ms
2547 timing reifyNode:node_modules/detect-newline Completed in 1053ms
2548 timing reifyNode:node_modules/callsites Completed in 1052ms
2549 timing reifyNode:node_modules/bser Completed in 1053ms
2550 timing reifyNode:node_modules/anymatch Completed in 1053ms
2551 timing reifyNode:node_modules/is-generator-fn Completed in 1053ms
2552 timing reifyNode:node_modules/path-key Completed in 1051ms
2553 timing reifyNode:node_modules/onetime Completed in 1051ms
2554 timing reifyNode:node_modules/npm-run-path Completed in 1051ms
2555 timing reifyNode:node_modules/is-stream Completed in 1051ms
2556 timing reifyNode:node_modules/make-dir Completed in 1049ms
2557 timing reifyNode:node_modules/resolve-cwd Completed in 1048ms
2558 timing reifyNode:node_modules/pkg-dir Completed in 1048ms
2559 timing reifyNode:node_modules/path-exists Completed in 1048ms
2560 timing reifyNode:node_modules/supports-color Completed in 1048ms
2561 timing reifyNode:node_modules/locate-path Completed in 1048ms
2562 timing reifyNode:node_modules/resolve-from Completed in 1047ms
2563 timing reifyNode:node_modules/find-up Completed in 1047ms
2564 timing reifyNode:node_modules/camelcase Completed in 1048ms
2565 timing reifyNode:node_modules/terminal-link Completed in 1045ms
2566 timing reifyNode:node_modules/string-length Completed in 1045ms
2567 timing reifyNode:node_modules/slash Completed in 1045ms
2568 timing reifyNode:node_modules/strip-ansi Completed in 1045ms
2569 timing reifyNode:node_modules/p-each-series Completed in 1045ms
2570 timing reifyNode:node_modules/inherits Completed in 1045ms
2571 timing reifyNode:node_modules/unpipe Completed in 1045ms
2572 timing reifyNode:node_modules/bytes Completed in 1045ms
2573 timing reifyNode:node_modules/vary Completed in 1045ms
2574 timing reifyNode:node_modules/utils-merge Completed in 1045ms
2575 timing reifyNode:node_modules/type-is Completed in 1045ms
2576 timing reifyNode:node_modules/range-parser Completed in 1045ms
2577 timing reifyNode:node_modules/path-to-regexp Completed in 1045ms
2578 timing reifyNode:node_modules/parseurl Completed in 1045ms
2579 timing reifyNode:node_modules/methods Completed in 1045ms
2580 timing reifyNode:node_modules/on-finished Completed in 1045ms
2581 timing reifyNode:node_modules/fresh Completed in 1045ms
2582 timing reifyNode:node_modules/merge-descriptors Completed in 1045ms
2583 timing reifyNode:node_modules/finalhandler Completed in 1045ms
2584 timing reifyNode:node_modules/etag Completed in 1046ms
2585 timing reifyNode:node_modules/encodeurl Completed in 1046ms
2586 timing reifyNode:node_modules/cookie-signature Completed in 1046ms
2587 timing reifyNode:node_modules/content-type Completed in 1045ms
2588 timing reifyNode:node_modules/accepts Completed in 1045ms
2589 timing reifyNode:node_modules/wrap-ansi/node_modules/is-fullwidth-code-point Completed in 1088ms
2590 timing reifyNode:node_modules/wrap-ansi/node_modules/string-width Completed in 1088ms
2591 timing reifyNode:node_modules/cliui/node_modules/is-fullwidth-code-point Completed in 1088ms
2592 timing reifyNode:node_modules/cliui/node_modules/string-width Completed in 1088ms
2593 timing reifyNode:node_modules/cacheable-request/node_modules/lowercase-keys Completed in 1086ms
2594 timing reifyNode:node_modules/widest-line/node_modules/is-fullwidth-code-point Completed in 1085ms
2595 timing reifyNode:node_modules/got/node_modules/get-stream Completed in 1085ms
2596 timing reifyNode:node_modules/widest-line/node_modules/string-width Completed in 1085ms
2597 timing reifyNode:node_modules/ansi-align/node_modules/strip-ansi Completed in 1085ms
2598 timing reifyNode:node_modules/boxen/node_modules/is-fullwidth-code-point Completed in 1083ms
2599 timing reifyNode:node_modules/boxen/node_modules/string-width Completed in 1083ms
2600 timing reifyNode:node_modules/stack-utils/node_modules/escape-string-regexp Completed in 1067ms
2601 timing reifyNode:node_modules/yargs/node_modules/is-fullwidth-code-point Completed in 1065ms
2602 timing reifyNode:node_modules/yargs/node_modules/string-width Completed in 1064ms
2603 timing reifyNode:node_modules/@babel/highlight/node_modules/supports-color Completed in 1057ms
2604 timing reifyNode:node_modules/jest-worker/node_modules/supports-color Completed in 1056ms
2605 timing reifyNode:node_modules/jest-validate/node_modules/camelcase Completed in 1055ms
2606 timing reifyNode:node_modules/nodemon/node_modules/supports-color Completed in 1051ms
2607 timing reifyNode:node_modules/get-caller-file Completed in 1093ms
2608 timing reifyNode:node_modules/package-json Completed in 1095ms
2609 timing reifyNode:node_modules/cli-boxes Completed in 1094ms
2610 timing reifyNode:node_modules/yallist Completed in 1090ms
2611 timing reifyNode:node_modules/util-deprecate Completed in 1088ms
2612 timing reifyNode:node_modules/jest-pnp-resolver Completed in 1082ms
2613 timing reifyNode:node_modules/co Completed in 1082ms
2614 timing reifyNode:node_modules/@types/babel__core Completed in 1080ms
2615 timing reifyNode:node_modules/signal-exit Completed in 1080ms
2616 timing reifyNode:node_modules/throat Completed in 1080ms
2617 timing reifyNode:node_modules/fs.realpath Completed in 1076ms
2618 timing reifyNode:node_modules/minimatch Completed in 1076ms
2619 timing reifyNode:node_modules/ansi-styles Completed in 1076ms
2620 timing reifyNode:node_modules/colorette Completed in 1076ms
2621 timing reifyNode:node_modules/@istanbuljs/load-nyc-config Completed in 1076ms
2622 timing reifyNode:node_modules/js-tokens Completed in 1075ms
2623 timing reifyNode:node_modules/write-file-atomic Completed in 1074ms
2624 timing reifyNode:node_modules/collect-v8-coverage Completed in 1074ms
2625 timing reifyNode:node_modules/ansi-escapes Completed in 1073ms
2626 timing reifyNode:node_modules/http-errors Completed in 1073ms
2627 timing reifyNode:node_modules/proxy-addr Completed in 1072ms
2628 timing reifyNode:node_modules/cookie Completed in 1073ms
2629 timing reifyNode:node_modules/update-notifier/node_modules/is-ci Completed in 1097ms
2630 timing reifyNode:node_modules/expect/node_modules/ansi-styles Completed in 1091ms
2631 timing reifyNode:node_modules/pretty-format/node_modules/ansi-styles Completed in 1089ms
2632 timing reifyNode:node_modules/pump Completed in 1117ms
2633 timing reifyNode:node_modules/responselike Completed in 1115ms
2634 timing reifyNode:node_modules/http-cache-semantics Completed in 1115ms
2635 timing reifyNode:node_modules/clone-response Completed in 1116ms
2636 timing reifyNode:node_modules/@szmarczak/http-timer Completed in 1115ms
2637 timing reifyNode:node_modules/minizlib Completed in 1108ms
2638 timing reifyNode:node_modules/npmlog Completed in 1105ms
2639 timing reifyNode:node_modules/binary-extensions Completed in 1104ms
2640 timing reifyNode:node_modules/readdirp Completed in 1104ms
2641 timing reifyNode:node_modules/buffer-equal-constant-time Completed in 1103ms
2642 timing reifyNode:node_modules/@tootallnate/once Completed in 1103ms
2643 timing reifyNode:node_modules/html-encoding-sniffer Completed in 1101ms
2644 timing reifyNode:node_modules/@babel/plugin-syntax-typescript Completed in 1102ms
2645 timing reifyNode:node_modules/@jest/globals Completed in 1102ms
2646 timing reifyNode:node_modules/@babel/plugin-syntax-optional-catch-binding Completed in 1100ms
2647 timing reifyNode:node_modules/dedent Completed in 1101ms
2648 timing reifyNode:node_modules/@jest/environment Completed in 1101ms
2649 timing reifyNode:node_modules/@babel/plugin-syntax-object-rest-spread Completed in 1100ms
2650 timing reifyNode:node_modules/@babel/plugin-syntax-top-level-await Completed in 1100ms
2651 timing reifyNode:node_modules/@babel/plugin-syntax-optional-chaining Completed in 1101ms
2652 timing reifyNode:node_modules/@babel/plugin-syntax-numeric-separator Completed in 1101ms
2653 timing reifyNode:node_modules/@babel/plugin-syntax-nullish-coalescing-operator Completed in 1101ms
2654 timing reifyNode:node_modules/@babel/plugin-syntax-logical-assignment-operators Completed in 1101ms
2655 timing reifyNode:node_modules/@babel/plugin-syntax-json-strings Completed in 1101ms
2656 timing reifyNode:node_modules/@babel/plugin-syntax-class-properties Completed in 1101ms
2657 timing reifyNode:node_modules/@babel/plugin-syntax-import-meta Completed in 1101ms
2658 timing reifyNode:node_modules/@babel/plugin-syntax-async-generators Completed in 1101ms
2659 timing reifyNode:node_modules/@babel/plugin-syntax-bigint Completed in 1101ms
2660 timing reifyNode:node_modules/jest-environment-jsdom Completed in 1101ms
2661 timing reifyNode:node_modules/jest-get-type Completed in 1101ms
2662 timing reifyNode:node_modules/jest-environment-node Completed in 1101ms
2663 timing reifyNode:node_modules/@jest/test-sequencer Completed in 1101ms
2664 timing reifyNode:node_modules/get-stream Completed in 1100ms
2665 timing reifyNode:node_modules/@istanbuljs/schema Completed in 1096ms
2666 timing reifyNode:node_modules/@babel/helper-plugin-utils Completed in 1096ms
2667 timing reifyNode:node_modules/globals Completed in 1095ms
2668 timing reifyNode:node_modules/@babel/helper-get-function-arity Completed in 1096ms
2669 timing reifyNode:node_modules/@babel/helper-hoist-variables Completed in 1096ms
2670 timing reifyNode:node_modules/@babel/helper-function-name Completed in 1096ms
2671 timing reifyNode:node_modules/@babel/helper-optimise-call-expression Completed in 1096ms
2672 timing reifyNode:node_modules/@babel/helper-simple-access Completed in 1096ms
2673 timing reifyNode:node_modules/@babel/helper-replace-supers Completed in 1096ms
2674 timing reifyNode:node_modules/@babel/helper-split-export-declaration Completed in 1096ms
2675 timing reifyNode:node_modules/@babel/code-frame Completed in 1095ms
2676 timing reifyNode:node_modules/micromatch Completed in 1094ms
2677 timing reifyNode:node_modules/jest-resolve-dependencies Completed in 1095ms
2678 timing reifyNode:node_modules/jest-regex-util Completed in 1095ms
2679 timing reifyNode:node_modules/mime-types Completed in 1094ms
2680 timing reifyNode:node_modules/serve-static Completed in 1094ms
2681 timing reifyNode:node_modules/safe-buffer Completed in 1094ms
2682 timing reifyNode:node_modules/content-disposition Completed in 1093ms
2683 timing reifyNode:node_modules/cacheable-request/node_modules/get-stream Completed in 1133ms
2684 timing reifyNode:node_modules/update-notifier/node_modules/ci-info Completed in 1119ms
2685 timing reifyNode:node_modules/@babel/highlight/node_modules/color-name Completed in 1103ms
2686 timing reifyNode:node_modules/require-directory Completed in 1139ms
2687 timing reifyNode:node_modules/tmpl Completed in 1138ms
2688 timing reifyNode:node_modules/makeerror Completed in 1138ms
2689 timing reifyNode:node_modules/keyv Completed in 1137ms
2690 timing reifyNode:node_modules/defer-to-connect Completed in 1137ms
2691 timing reifyNode:node_modules/registry-auth-token Completed in 1137ms
2692 timing reifyNode:node_modules/punycode Completed in 1132ms
2693 timing reifyNode:node_modules/bcrypt-pbkdf Completed in 1129ms
2694 timing reifyNode:node_modules/isarray Completed in 1129ms
2695 timing reifyNode:node_modules/sisteransi Completed in 1127ms
2696 timing reifyNode:node_modules/balanced-match Completed in 1125ms
2697 timing reifyNode:node_modules/combined-stream Completed in 1125ms
2698 timing reifyNode:node_modules/data-urls Completed in 1124ms
2699 timing reifyNode:node_modules/jest-leak-detector Completed in 1123ms
2700 timing reifyNode:node_modules/jest-docblock Completed in 1123ms
2701 timing reifyNode:node_modules/node-int64 Completed in 1123ms
2702 timing reifyNode:node_modules/walker Completed in 1123ms
2703 timing reifyNode:node_modules/type-detect Completed in 1122ms
2704 timing reifyNode:node_modules/babel-plugin-jest-hoist Completed in 1122ms
2705 timing reifyNode:node_modules/pirates Completed in 1114ms
2706 timing reifyNode:node_modules/rimraf Completed in 1112ms
2707 timing reifyNode:node_modules/emittery Completed in 1112ms
2708 timing reifyNode:node_modules/import-local Completed in 1113ms
2709 timing reifyNode:node_modules/raw-body Completed in 1112ms
2710 timing reifyNode:node_modules/domexception/node_modules/webidl-conversions Completed in 1132ms
2711 timing reifyNode:node_modules/deep-extend Completed in 1154ms
2712 timing reifyNode:node_modules/getpass Completed in 1146ms
2713 warn deprecated<EMAIL_ADDRESS>this library is no longer supported
2714 timing reifyNode:node_modules/har-validator Completed in 1145ms
2715 timing reifyNode:node_modules/string_decoder Completed in 1145ms
2716 timing reifyNode:node_modules/domelementtype Completed in 1143ms
2717 timing reifyNode:node_modules/is-plain-object Completed in 1143ms
2718 timing reifyNode:node_modules/delayed-stream Completed in 1140ms
2719 timing reifyNode:node_modules/webidl-conversions Completed in 1140ms
2720 timing reifyNode:node_modules/jest-serializer Completed in 1139ms
2721 timing reifyNode:node_modules/ci-info Completed in 1138ms
2722 timing reifyNode:node_modules/which Completed in 1135ms
2723 timing reifyNode:node_modules/color-convert Completed in 1132ms
2724 timing reifyNode:node_modules/get-package-type Completed in 1131ms
2725 timing reifyNode:node_modules/@babel/helper-validator-option Completed in 1131ms
2726 timing reifyNode:node_modules/statuses Completed in 1128ms
2727 timing reifyNode:node_modules/setprototypeof Completed in 1128ms
2728 timing reifyNode:node_modules/supertest Completed in 1126ms
2729 timing reifyNode:node_modules/follow-redirects Completed in 1126ms
2730 timing reifyNode:node_modules/@babel/highlight/node_modules/color-convert Completed in 1135ms
2731 timing reifyNode:node_modules/wrap-ansi Completed in 1171ms
2732 timing reifyNode:node_modules/typedarray-to-buffer Completed in 1170ms
2733 timing reifyNode:node_modules/json-buffer Completed in 1170ms
2734 timing reifyNode:node_modules/jsprim Completed in 1161ms
2735 timing reifyNode:node_modules/isstream Completed in 1160ms
2736 timing reifyNode:node_modules/extend Completed in 1160ms
2737 timing reifyNode:node_modules/string-width Completed in 1160ms
2738 timing reifyNode:node_modules/estraverse Completed in 1155ms
2739 timing reifyNode:node_modules/whatwg-encoding Completed in 1155ms
2740 timing reifyNode:node_modules/w3c-xmlserializer Completed in 1156ms
2741 timing reifyNode:node_modules/acorn-globals Completed in 1155ms
2742 timing reifyNode:node_modules/babel-jest Completed in 1152ms
2743 timing reifyNode:node_modules/test-exclude Completed in 1147ms
2744 timing reifyNode:node_modules/@types/yargs Completed in 1147ms
2745 timing reifyNode:node_modules/@babel/helper-member-expression-to-functions Completed in 1146ms
2746 timing reifyNode:node_modules/graceful-fs Completed in 1143ms
2747 timing reifyNode:node_modules/safer-buffer Completed in 1143ms
2748 timing reifyNode:node_modules/sanitize-html Completed in 1141ms
2749 timing reifyNode:node_modules/widest-line Completed in 1181ms
2750 timing reifyNode:node_modules/ansi-align Completed in 1181ms
2751 timing reifyNode:node_modules/boxen Completed in 1179ms
2752 timing reifyNode:node_modules/jsbn Completed in 1175ms
2753 timing reifyNode:node_modules/core-util-is Completed in 1174ms
2754 timing reifyNode:node_modules/delegates Completed in 1173ms
2755 timing reifyNode:node_modules/are-we-there-yet Completed in 1174ms
2756 timing reifyNode:node_modules/has Completed in 1172ms
2757 timing reifyNode:node_modules/type-check Completed in 1172ms
2758 timing reifyNode:node_modules/xml-name-validator Completed in 1169ms
2759 timing reifyNode:node_modules/abab Completed in 1168ms
2760 timing reifyNode:node_modules/@jest/source-map Completed in 1167ms
2761 timing reifyNode:node_modules/stack-utils Completed in 1167ms
2762 timing reifyNode:node_modules/babel-preset-current-node-syntax Completed in 1166ms
2763 timing reifyNode:node_modules/babel-plugin-istanbul Completed in 1158ms
2764 timing reifyNode:node_modules/jest-message-util Completed in 1156ms
2765 timing reifyNode:node_modules/boxen/node_modules/chalk Completed in 1188ms
2766 timing reifyNode:node_modules/superagent/node_modules/debug Completed in 1186ms
2767 timing reifyNode:node_modules/update-notifier/node_modules/chalk Completed in 1180ms
2768 timing reifyNode:node_modules/agent-base/node_modules/debug Completed in 1178ms
2769 timing reifyNode:node_modules/https-proxy-agent/node_modules/debug Completed in 1176ms
2770 timing reifyNode:node_modules/http-proxy-agent/node_modules/debug Completed in 1176ms
2771 timing reifyNode:node_modules/@babel/traverse/node_modules/debug Completed in 1163ms
2772 timing reifyNode:node_modules/@babel/core/node_modules/debug Completed in 1162ms
2773 timing reifyNode:node_modules/istanbul-lib-source-maps/node_modules/debug Completed in 1161ms
2774 timing reifyNode:node_modules/isexe Completed in 1198ms
2775 timing reifyNode:node_modules/aws4 Completed in 1192ms
2776 timing reifyNode:node_modules/dom-serializer Completed in 1190ms
2777 timing reifyNode:node_modules/update-notifier Completed in 1188ms
2778 timing reifyNode:node_modules/undefsafe Completed in 1189ms
2779 timing reifyNode:node_modules/ecdsa-sig-formatter Completed in 1188ms
2780 timing reifyNode:node_modules/whatwg-mimetype Completed in 1187ms
2781 timing reifyNode:node_modules/jest-mock Completed in 1184ms
2782 timing reifyNode:node_modules/@babel/helper-module-imports Completed in 1176ms
2783 timing reifyNode:node_modules/glob Completed in 1174ms
2784 timing reifyNode:node_modules/morgan Completed in 1171ms
2785 timing reifyNode:node_modules/jest Completed in 1170ms
2786 timing reifyNode:node_modules/@babel/highlight/node_modules/chalk Completed in 1179ms
2787 timing reifyNode:node_modules/@sindresorhus/is Completed in 1212ms
2788 timing reifyNode:node_modules/verror Completed in 1204ms
2789 timing reifyNode:node_modules/is-core-module Completed in 1201ms
2790 timing reifyNode:node_modules/ipaddr.js Completed in 1202ms
2791 timing reifyNode:node_modules/concat-map Completed in 1200ms
2792 timing reifyNode:node_modules/source-map-support Completed in 1198ms
2793 timing reifyNode:node_modules/jest-matcher-utils Completed in 1196ms
2794 timing reifyNode:node_modules/@babel/helper-validator-identifier Completed in 1188ms
2795 timing reifyNode:node_modules/@babel/highlight Completed in 1187ms
2796 timing reifyNode:node_modules/gensync Completed in 1187ms
2797 timing reifyNode:node_modules/chalk Completed in 1185ms
2798 timing reifyNode:node_modules/@jest/test-result Completed in 1186ms
2799 timing reifyNode:node_modules/negotiator Completed in 1185ms
2800 timing reifyNode:node_modules/nodemon/node_modules/semver Completed in 1184ms
2801 timing reifyNode:node_modules/jsonwebtoken/node_modules/semver Completed in 1184ms
2802 timing reifyNode:node_modules/cacheable-request Completed in 1224ms
2803 timing reifyNode:node_modules/fast-safe-stringify Completed in 1217ms
2804 timing reifyNode:node_modules/ecc-jsbn Completed in 1217ms
2805 timing reifyNode:node_modules/extsprintf Completed in 1216ms
2806 timing reifyNode:node_modules/json-stringify-safe Completed in 1216ms
2807 timing reifyNode:node_modules/nopt Completed in 1214ms
2808 timing reifyNode:node_modules/detect-libc Completed in 1214ms
2809 timing reifyNode:node_modules/domhandler Completed in 1214ms
2810 timing reifyNode:node_modules/touch Completed in 1213ms
2811 timing reifyNode:node_modules/jws Completed in 1211ms
2812 timing reifyNode:node_modules/optionator Completed in 1211ms
2813 timing reifyNode:node_modules/symbol-tree Completed in 1210ms
2814 timing reifyNode:node_modules/saxes Completed in 1211ms
2815 timing reifyNode:node_modules/form-data Completed in 1210ms
2816 timing reifyNode:node_modules/@jest/fake-timers Completed in 1208ms
2817 timing reifyNode:node_modules/is-ci Completed in 1206ms
2818 timing reifyNode:node_modules/@babel/template Completed in 1198ms
2819 timing reifyNode:node_modules/@babel/helper-compilation-targets Completed in 1198ms
2820 timing reifyNode:node_modules/send Completed in 1198ms
2821 timing reifyNode:node_modules/wrap-ansi/node_modules/emoji-regex Completed in 1238ms
2822 timing reifyNode:node_modules/cliui/node_modules/emoji-regex Completed in 1238ms
2823 timing reifyNode:node_modules/widest-line/node_modules/emoji-regex Completed in 1235ms
2824 timing reifyNode:node_modules/boxen/node_modules/emoji-regex Completed in 1232ms
2825 timing reifyNode:node_modules/yargs/node_modules/emoji-regex Completed in 1213ms
2826 timing reifyNode:node_modules/emoji-regex Completed in 1241ms
2827 timing reifyNode:node_modules/levn Completed in 1227ms
2828 timing reifyNode:node_modules/w3c-hr-time Completed in 1223ms
2829 timing reifyNode:node_modules/escodegen Completed in 1223ms
2830 timing reifyNode:node_modules/escalade Completed in 1214ms
2831 timing reifyNode:node_modules/electron-to-chromium Completed in 1213ms
2832 timing reifyNode:node_modules/semver Completed in 1211ms
2833 timing reifyNode:node_modules/@babel/helper-module-transforms Completed in 1211ms
2834 timing reifyNode:node_modules/istanbul-lib-coverage Completed in 1210ms
2835 timing reifyNode:node_modules/jest-runtime Completed in 1210ms
2836 timing reifyNode:node_modules/morgan/node_modules/depd Completed in 1208ms
2837 timing reifyNode:node_modules/nodemon/node_modules/debug Completed in 1208ms
2838 timing reifyNode:node_modules/fast-deep-equal Completed in 1239ms
2839 timing reifyNode:node_modules/deep-is Completed in 1236ms
2840 timing reifyNode:node_modules/esutils Completed in 1233ms
2841 timing reifyNode:node_modules/deepmerge Completed in 1228ms
2842 timing reifyNode:node_modules/cross-spawn Completed in 1227ms
2843 timing reifyNode:node_modules/jsesc Completed in 1220ms
2844 timing reifyNode:node_modules/jest-changed-files Completed in 1218ms
2845 timing reifyNode:node_modules/superagent/node_modules/mime Completed in 1247ms
2846 timing reifyNode:node_modules/touch/node_modules/nopt Completed in 1241ms
2847 timing reifyNode:node_modules/json-schema-traverse Completed in 1248ms
2848 timing reifyNode:node_modules/mime Completed in 1246ms
2849 timing reifyNode:node_modules/function-bind Completed in 1246ms
2850 timing reifyNode:node_modules/react-is Completed in 1245ms
2851 timing reifyNode:node_modules/prelude-ls Completed in 1245ms
2852 timing reifyNode:node_modules/http-proxy-agent Completed in 1241ms
2853 timing reifyNode:node_modules/@types/babel__traverse Completed in 1238ms
2854 timing reifyNode:node_modules/browserslist Completed in 1231ms
2855 timing reifyNode:node_modules/jest-runner Completed in 1228ms
2856 timing reifyNode:node_modules/side-channel Completed in 1268ms
2857 timing reifyNode:node_modules/mkdirp Completed in 1259ms
2858 timing reifyNode:node_modules/asn1 Completed in 1257ms
2859 timing reifyNode:node_modules/braces Completed in 1252ms
2860 timing reifyNode:node_modules/@sinonjs/fake-timers Completed in 1248ms
2861 timing reifyNode:node_modules/istanbul-lib-report Completed in 1237ms
2862 timing reifyNode:node_modules/dashdash Completed in 1265ms
2863 timing reifyNode:node_modules/diff-sequences Completed in 1256ms
2864 timing reifyNode:node_modules/istanbul-lib-instrument Completed in 1244ms
2865 timing reifyNode:node_modules/@jest/types Completed in 1243ms
2866 timing reifyNode:node_modules/@jest/transform Completed in 1243ms
2867 timing reifyNode:node_modules/request/node_modules/tough-cookie Completed in 1270ms
2868 timing reifyNode:node_modules/call-bind Completed in 1285ms
2869 timing reifyNode:node_modules/get-intrinsic Completed in 1286ms
2870 timing reifyNode:node_modules/y18n Completed in 1285ms
2871 timing reifyNode:node_modules/rc Completed in 1284ms
2872 timing reifyNode:node_modules/mime-db Completed in 1269ms
2873 timing reifyNode:node_modules/domexception Completed in 1267ms
2874 timing reifyNode:node_modules/@types/prettier Completed in 1266ms
2875 timing reifyNode:node_modules/picomatch Completed in 1265ms
2876 timing reifyNode:node_modules/execa Completed in 1259ms
2877 timing reifyNode:node_modules/@jest/console Completed in 1253ms
2878 timing reifyNode:node_modules/formidable Completed in 1283ms
2879 timing reifyNode:node_modules/http-signature Completed in 1281ms
2880 timing reifyNode:node_modules/tough-cookie Completed in 1274ms
2881 timing reifyNode:node_modules/cjs-module-lexer Completed in 1273ms
2882 timing reifyNode:node_modules/html-escaper Completed in 1265ms
2883 timing reifyNode:node_modules/@babel/compat-data Completed in 1264ms
2884 timing reifyNode:node_modules/request/node_modules/form-data Completed in 1286ms
2885 timing reifyNode:node_modules/tr46 Completed in 1301ms
2886 timing reifyNode:node_modules/chokidar Completed in 1285ms
2887 timing reifyNode:node_modules/acorn-walk Completed in 1284ms
2888 timing reifyNode:node_modules/body-parser Completed in 1267ms
2889 timing reifyNode:node_modules/dotenv Completed in 1266ms
2890 timing reifyNode:node_modules/pstree.remy Completed in 1297ms
2891 timing reifyNode:node_modules/asynckit Completed in 1295ms
2892 timing reifyNode:node_modules/decimal.js Completed in 1294ms
2893 timing reifyNode:node_modules/cliui Completed in 1319ms
2894 timing reifyNode:node_modules/term-size Completed in 1315ms
2895 timing reifyNode:node_modules/node-fetch Completed in 1306ms
2896 timing reifyNode:node_modules/nwsapi Completed in 1301ms
2897 timing reifyNode:node_modules/https-proxy-agent Completed in 1300ms
2898 timing reifyNode:node_modules/v8-to-istanbul Completed in 1286ms
2899 timing reifyNode:node_modules/istanbul-lib-source-maps Completed in 1287ms
2900 timing reifyNode:node_modules/debug Completed in 1284ms
2901 timing reifyNode:node_modules/tweetnacl Completed in 1315ms
2902 timing reifyNode:node_modules/depd Completed in 1289ms
2903 timing reifyNode:node_modules/has-symbols Completed in 1333ms
2904 timing reifyNode:node_modules/jest-each Completed in 1310ms
2905 timing reifyNode:node_modules/human-signals Completed in 1307ms
2906 timing reifyNode:node_modules/har-schema Completed in 1327ms
2907 timing reifyNode:node_modules/@babel/helpers Completed in 1308ms
2908 timing reifyNode:node_modules/jest-resolve Completed in 1307ms
2909 warn deprecated<EMAIL_ADDRESS>Please upgrade  to version 7 or higher.  Older versions may use Math.random() in certain circumstances, which is known to be problematic.  See https://v8.dev/blog/math-random for details.
2910 timing reifyNode:node_modules/uuid Completed in 1337ms
2911 timing reifyNode:node_modules/jsonwebtoken Completed in 1311ms
2912 timing reifyNode:node_modules/boxen/node_modules/type-fest Completed in 1348ms
2913 timing reifyNode:node_modules/yargs-parser Completed in 1356ms
2914 timing reifyNode:node_modules/performance-now Completed in 1345ms
2915 timing reifyNode:node_modules/parse-srcset Completed in 1341ms
2916 timing reifyNode:node_modules/minimist Completed in 1338ms
2917 timing reifyNode:node_modules/domutils Completed in 1346ms
2918 timing reifyNode:node_modules/agent-base Completed in 1342ms
2919 timing reifyNode:node_modules/whatwg-url Completed in 1341ms
2920 timing reifyNode:node_modules/fast-json-stable-stringify Completed in 1328ms
2921 timing reifyNode:node_modules/gauge Completed in 1352ms
2922 timing reifyNode:node_modules/entities Completed in 1351ms
2923 timing reifyNode:node_modules/ws Completed in 1346ms
2924 timing reifyNode:node_modules/cssom Completed in 1345ms
2925 timing reifyNode:node_modules/sprintf-js Completed in 1349ms
2926 timing reifyNode:node_modules/esprima Completed in 1349ms
2927 timing reifyNode:node_modules/jest-diff Completed in 1348ms
2928 timing reifyNode:node_modules/jest-watcher Completed in 1335ms
2929 timing reifyNode:node_modules/klona Completed in 1362ms
2930 timing reifyNode:node_modules/cssstyle/node_modules/cssom Completed in 1359ms
2931 http fetch POST 200 https://registry.npmjs.org/-/npm/v1/security/advisories/bulk 1392ms
2932 timing auditReport:getReport Completed in 1397ms
2933 silly audit report {}
2934 timing auditReport:init Completed in 0ms
2935 timing reify:audit Completed in 1397ms
2936 timing reifyNode:node_modules/htmlparser2 Completed in 1375ms
2937 timing reifyNode:node_modules/exit Completed in 1356ms
2938 timing reifyNode:node_modules/got Completed in 1397ms
2939 timing reifyNode:node_modules/qs Completed in 1373ms
2940 timing reifyNode:node_modules/request/node_modules/qs Completed in 1400ms
2941 timing reifyNode:node_modules/jest-validate Completed in 1381ms
2942 timing reifyNode:node_modules/jest-circus Completed in 1397ms
2943 timing reifyNode:node_modules/express Completed in 1383ms
2944 timing reifyNode:node_modules/psl Completed in 1418ms
2945 warn deprecated<EMAIL_ADDRESS>request has been deprecated, see https://github.com/request/request/issues/3142
2946 timing reifyNode:node_modules/request Completed in 1415ms
2947 timing reifyNode:node_modules/jest-snapshot Completed in 1394ms
2948 timing reifyNode:node_modules/xmlchars Completed in 1418ms
2949 timing reifyNode:node_modules/json5 Completed in 1404ms
2950 timing reifyNode:node_modules/jest-cli Completed in 1401ms
2951 timing reifyNode:node_modules/nanoid Completed in 1425ms
2952 timing reifyNode:node_modules/superagent/node_modules/readable-stream Completed in 1436ms
2953 timing reifyNode:node_modules/v8-to-istanbul/node_modules/source-map Completed in 1410ms
2954 timing reifyNode:node_modules/object-inspect Completed in 1448ms
2955 timing reifyNode:node_modules/tar Completed in 1434ms
2956 timing reifyNode:node_modules/acorn Completed in 1426ms
2957 timing reifyNode:node_modules/superagent/node_modules/qs Completed in 1441ms
2958 timing reifyNode:node_modules/readable-stream Completed in 1439ms
2959 timing reifyNode:node_modules/jest-util Completed in 1416ms
2960 timing reifyNode:node_modules/@jest/reporters Completed in 1415ms
2961 timing reifyNode:node_modules/expect Completed in 1431ms
2962 timing reifyNode:node_modules/node-addon-api Completed in 1443ms
2963 timing reifyNode:node_modules/pretty-format Completed in 1431ms
2964 timing reifyNode:node_modules/node-releases Completed in 1427ms
2965 timing reifyNode:node_modules/@babel/generator Completed in 1427ms
2966 timing reifyNode:node_modules/iconv-lite Completed in 1423ms
2967 timing reifyNode:node_modules/jest-config Completed in 1428ms
2968 timing reifyNode:node_modules/argparse Completed in 1448ms
2969 timing reifyNode:node_modules/jest-worker Completed in 1439ms
2970 timing reifyNode:node_modules/type-fest Completed in 1445ms
2971 timing reifyNode:node_modules/jest-haste-map Completed in 1439ms
2972 timing reifyNode:node_modules/@mapbox/node-pre-gyp Completed in 1477ms
2973 timing reifyNode:node_modules/json-schema Completed in 1485ms
2974 timing reifyNode:node_modules/@sinonjs/commons Completed in 1474ms
2975 timing reifyNode:node_modules/jest-jasmine2 Completed in 1473ms
2976 timing reifyNode:node_modules/superagent/node_modules/semver Completed in 1490ms
2977 timing reifyNode:node_modules/@mapbox/node-pre-gyp/node_modules/semver Completed in 1486ms
2978 timing reifyNode:node_modules/node-gyp/node_modules/semver Completed in 1486ms
2979 timing reifyNode:node_modules/jest-snapshot/node_modules/semver Completed in 1463ms
2980 timing reifyNode:node_modules/postcss Completed in 1490ms
2981 timing reifyNode:node_modules/@babel/generator/node_modules/source-map Completed in 1473ms
2982 timing reifyNode:node_modules/@babel/core/node_modules/source-map Completed in 1473ms
2983 timing reifyNode:node_modules/sshpk Completed in 1500ms
2984 timing reifyNode:node_modules/source-map Completed in 1476ms
2985 timing reifyNode:node_modules/source-map-js Completed in 1499ms
2986 timing reifyNode:node_modules/axios Completed in 1487ms
2987 timing reifyNode:node_modules/@babel/traverse Completed in 1498ms
2988 timing reifyNode:node_modules/js-yaml Completed in 1502ms
2989 timing reifyNode:node_modules/acorn-globals/node_modules/acorn Completed in 1513ms
2990 timing reifyNode:node_modules/uri-js Completed in 1527ms
2991 timing reifyNode:node_modules/parse5 Completed in 1520ms
2992 timing reifyNode:node_modules/nodemon Completed in 1511ms
2993 timing reifyNode:node_modules/@bcoe/v8-coverage Completed in 1517ms
2994 timing reifyNode:node_modules/yargs Completed in 1532ms
2995 timing reifyNode:node_modules/@babel/parser Completed in 1527ms
2996 timing reifyNode:node_modules/@jest/core Completed in 1526ms
2997 timing reifyNode:node_modules/helmet Completed in 1524ms
2998 timing reifyNode:node_modules/superagent Completed in 1556ms
2999 timing reifyNode:node_modules/prompts Completed in 1539ms
3000 timing reifyNode:node_modules/cssstyle Completed in 1546ms
3001 timing reifyNode:node_modules/@babel/core Completed in 1548ms
3002 timing reifyNode:node_modules/istanbul-reports Completed in 1550ms
3003 timing reifyNode:node_modules/@types/node Completed in 1561ms
3004 timing reifyNode:node_modules/ajv Completed in 1588ms
3005 timing reifyNode:node_modules/@babel/types Completed in 1625ms
3006 timing reifyNode:node_modules/resolve Completed in 1645ms
3007 http fetch GET 200 https://registry.npmjs.org/node-gyp/-/node-gyp-7.1.2.tgz 874ms (cache miss)
3008 timing reifyNode:node_modules/node-gyp Completed in 1681ms
3009 timing reifyNode:node_modules/sqlite3 Completed in 1661ms
3010 timing reifyNode:node_modules/jsdom Completed in 1782ms
3011 timing reifyNode:node_modules/caniuse-lite Completed in 1784ms
3012 timing reifyNode:node_modules/lodash Completed in 1828ms
3013 timing reify:unpack Completed in 1830ms
3014 timing reify:unretire Completed in 1ms
3015 timing build:queue Completed in 13ms
3016 timing build:link:node_modules/jest-cli Completed in 3ms
3017 timing build:link:node_modules/@babel/parser Completed in 7ms
3018 timing build:link:node_modules/acorn-globals/node_modules/acorn Completed in 6ms
3019 timing build:link:node_modules/jsonwebtoken/node_modules/semver Completed in 6ms
3020 timing build:link:node_modules/@mapbox/node-pre-gyp/node_modules/semver Completed in 6ms
3021 timing build:link:node_modules/node-gyp/node_modules/semver Completed in 6ms
3022 timing build:link:node_modules/jest-snapshot/node_modules/semver Completed in 6ms
3023 timing build:link:node_modules/superagent/node_modules/mime Completed in 6ms
3024 timing build:link:node_modules/nodemon/node_modules/semver Completed in 6ms
3025 timing build:link:node_modules/touch/node_modules/nopt Completed in 5ms
3026 timing build:link:node_modules/update-notifier/node_modules/is-ci Completed in 5ms
3027 timing build:link:node_modules/@mapbox/node-pre-gyp Completed in 7ms
3028 timing build:link:node_modules/acorn Completed in 7ms
3029 timing build:link:node_modules/browserslist Completed in 7ms
3030 timing build:link:node_modules/detect-libc Completed in 7ms
3031 timing build:link:node_modules/escodegen Completed in 6ms
3032 timing build:link:node_modules/esprima Completed in 6ms
3033 timing build:link:node_modules/import-local Completed in 6ms
3034 timing build:link:node_modules/jest Completed in 6ms
3035 timing build:link:node_modules/is-ci Completed in 6ms
3036 timing build:link:node_modules/mime Completed in 6ms
3037 timing build:link:node_modules/js-yaml Completed in 6ms
3038 timing build:link:node_modules/mkdirp Completed in 6ms
3039 timing build:link:node_modules/nanoid Completed in 6ms
3040 timing build:link:node_modules/node-gyp Completed in 6ms
3041 timing build:link:node_modules/nodemon Completed in 6ms
3042 timing build:link:node_modules/nopt Completed in 6ms
3043 timing build:link:node_modules/rimraf Completed in 6ms
3044 timing build:link:node_modules/jsesc Completed in 6ms
3045 timing build:link:node_modules/semver Completed in 6ms
3046 timing build:link:node_modules/json5 Completed in 6ms
3047 timing build:link:node_modules/rc Completed in 6ms
3048 timing build:link:node_modules/sshpk Completed in 6ms
3049 timing build:link:node_modules/uuid Completed in 6ms
3050 timing build:link:node_modules/touch Completed in 6ms
3051 timing build:link:node_modules/which Completed in 6ms
3052 timing build:link:node_modules/superagent/node_modules/semver Completed in 6ms
3053 timing build:link Completed in 7ms
3054 info run<EMAIL_ADDRESS>install node_modules/sqlite3 node-pre-gyp install --fallback-to-build
3055 info run<EMAIL_ADDRESS>install { code: 1, signal: null }
3056 timing reify:rollback:createSparse Completed in 344ms
3057 timing reify:rollback:retireShallow Completed in 0ms
3058 timing command:install Completed in 45113ms
3059 verbose stack Error: command failed
3059 verbose stack     at ChildProcess.<anonymous> (/usr/local/lib/node_modules/npm/node_modules/@npmcli/promise-spawn/index.js:64:27)
3059 verbose stack     at ChildProcess.emit (events.js:400:28)
3059 verbose stack     at maybeClose (internal/child_process.js:1055:16)
3059 verbose stack     at Process.ChildProcess._handle.onexit (internal/child_process.js:288:5)
3060 verbose pkgid<EMAIL_ADDRESS>3061 verbose cwd /home/zubair/Work/pkichain/pkichain_user_authentication
3062 verbose Linux 5.11.0-27-generic
3063 verbose argv "/snap/node/5231/bin/node" "/usr/local/bin/npm" "install" "https://github.com/mapbox/node-sqlite3/tarball/master"
3064 verbose node v14.17.5
3065 verbose npm  v7.21.0
3066 error code 1
3067 error path /home/zubair/Work/pkichain/pkichain_user_authentication/node_modules/sqlite3
3068 error command failed
3069 error command sh -c node-pre-gyp install --fallback-to-build
3070 verbose exit 1

Can you please try with the latest version - v5.0.3? 🙂

It looks like he's running under a JS only environment like WebWorkers or CloudFlare Workers, or a non x686 processor. SQLite uses node-gyp...


Minor refactoring to address sonar-related issues

Resolves: https://jira.duraspace.org/browse/FCREPO-1397
Throws declaration should not be redundant (RuntimeException unneeded in
function signature: FcrepoTransactionManager)
Class Data Abstraction Coupling (FcrepoClient constructor logic moved
into FcrepoHttpClientBuilder class)
Class Fan Out Complexity (HttpRequestBase instance creation moved to
HttpMethods class)
Generic exceptions should never be thrown (FcrepoProducer now throws a
TransactionSystemException)
Public types should be documented (processor.* classes now have full
documentation)
String literals should not be duplicated (FcrepoClient debug messages
are now more specific)
FcrepoTransactionManager thrown exceptions are now more specific

Resolved with: https://github.com/fcrepo4/fcrepo-camel/commit/e039ef04d77a280e58e5604a8d7b09abd50de82a


jest seems to have problem testing es2018 directly

do you know why @conartist6 ?

No for sure, no. I know that it does its own form for transpilation on the test files, which is how it can do module name mapping. I don't know how configurable that transpilation is. I didn't include the es2018 test suite in npm run test both because it didn't work, and because I didn't want to make it impossible to contribute without having node 10.


chore: boost the gradle jvm memory

the build failures are from merging Jack's incomplete PR for face detection on photos. Rather than a quick hack to get tests to pass, I'll try for an actual working implementation. Builds can be broken for a bit while no one is doing anything


Removal of a package: episode #2

Yesterday I messed up with publishing Test::Async. No idea what's went wrong, but it contained a test from previous release. Ok, s* happens. But then, today, well withing the 24hr window, I tried:
fez remove 'Test::Async:ver<0.0.16>:auth<zef:vrurg>'

And it came back with an email:
Subject: Error processing: Test::Async:ver<0.0.16>:auth<zef:vrurg>

Please try again in a few minutes

It done so twice, hence I'd rather not assume a temporary failure.

@vrurg I'll take a look in the ante meridiem, that definitely is an error somewhere!  Thank you for the bug report

@vrurg found the bug.  It's been fixed and this should work in the future