Update Letters “always-prioritise-your-health”

Automatically generated by Netlify CMS

👷 Deploy Preview for effortless-brioche-210b80 processing.

Name
Link

🔨 Latest commit
696dd03e8c533f06f397e1198c1f87ec2daafa01

🔍 Latest deploy log
https://app.netlify.com/sites/effortless-brioche-210b80/deploys/63e7ee881c74e50007a9b9b3


Converts tests to pytest

Converts tests from nosetests to pytest. The only real change needed was to convert the yield statements that nosetests uses to function calls. pytest shows the duration of test runs by default. nose is still a test requirement because of assert_array_equal from the sklearn library.
#220

Codecov Report

Merging #368 into master will not change coverage.
The diff coverage is n/a.

@@          Coverage Diff           @@
##           master    #368   +/-   ##
======================================
  Coverage    85.1%   85.1%
======================================
  Files          22      22
  Lines        1376    1376
======================================
  Hits         1171    1171
  Misses        205     205

Impacted Files
Coverage Δ

skopt/__init__.py
100% <ø> (ø)
:arrow_up:

skopt/space/space.py
92.49% <0%> (-0.4%)
:arrow_down:

skopt/acquisition.py
97.36% <0%> (+1.31%)
:arrow_up:

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 9557580...9905ad6. Read the comment docs.

This is great! Thanks a lot :)
I'll try to have a look tomorrow, unless @MechCoder or @betatim come by in the meantime.

While we are at it, one thing that was tedious about our old test setup (and extensive use of yield) was that nosetest would tell you that check_xyz with arguments <foobar repr...> failed. Which often felt like I had to debug the tests to help me debug the real problem. Basically it was too hard to tell which of the arguments combos to the check_func failed.
Here my question: should we be switching to using https://docs.pytest.org/en/latest/example/parametrize.html? This seems to generate nicer messages in the output but it does mean switching a lot of stuff around. (Even if we decide yes this is a good idea we might want to delay it to a future PR and not slow this one down.) Just hoping to have the attention of someone with some pytest knowledge to get some advice :)

My latest commit refactors the original tests into smaller tests using pytest's parametrize framework. These smaller tests accept parameters through the @pytest.mark.parametrize decorator, which were originally iterated by a for loop. If a test were to fail, pytest will display the parameters that caused that test to fail.

Refactoring the benchmark tests into smaller tests allows for all tests to run less than 10 minutes. This removes the need for travis_wait 25 in the .travis.yml file.

LGTM.

Thanks a lot for contributing :)
This looks good to me too... Merging!

:tada: this is super! Now we can mark the heavy tests as heavy -> faster local execution!

Thanks!


Fatal Error

Issue Description:
Fatal error was detected during the transition from POSTINITIALIZATION to AVAILABLE.
What happens:
Once Forge reaches the Postinitializtion stage, Minecraft crashes.
What you expected to happen:
Nothing
Steps to reproduce:

Place EnderCore-1.7.10-<IP_ADDRESS>_beta.jar or EnderCore-1.7.10-<IP_ADDRESS>_beta.jar &
EnderIO-1.7.10-<IP_ADDRESS>9.jar into Forge Mods Folder
Launch Forge.

...

Affected Versions (Do not use "latest"):

EnderIO: EnderIO-1.7.10-<IP_ADDRESS>9.jar
EnderCore: EnderCore-1.7.10-<IP_ADDRESS>_beta.jar or EnderCore-1.7.10-<IP_ADDRESS>_beta.jar
Minecraft: 1.7.10
Forge:

Your most recent log file where the issue was present:
(https://github.com/SleepyTrousers/EnderIO/files/1289619/latest.-.Copy.1.txt)

Your config file is invalid:
com.google.gson.JsonSyntaxException: com.google.gson.stream.MalformedJsonException: Unterminated array at line 15 column 21


Solve the issue of casting using 'as' keyword in .tsx files

When the user migrate the existing React JS project to support Typescript a parsing error will raise during the build when using 'as' keyword in any .tsx file, the solution is to add a missing "eslintConfig" entry configuration to 'package.json'

Hi @amehdaly, this is done as a part of our initial set up in CRA, and isn't required.
Can you give some more context around this issue, where you hit it?

Hi @mrmckeb
Yes, in the initial CRA it's already done and added to the package.json file, but the steps to make an existing React application working using Typescript do not tell the user he/she should add the mentioned json settings manually in package.json, I had this issue when I migrated my application to support TS, here is a thread talking about it.
https://stackoverflow.com/questions/64717567/typescript-in-a-react-project-is-no-longer-recognizing-the-as-keyword

What version of react-scripts was the project bootstrapped with? It might be good to have a clearer migration guide overall.
Users would also hit this if they had their own ESLint config.

What version of react-scripts was the project bootstrapped with? It might be good to have a clearer migration guide overall.
Users would also hit this if they had their own ESLint config.
I assume your issue - and correct me if I'm wrong - is that your ESLint config didn't support TypeScript?

react-scripts version is "4.0.2", here is Gist link for the used package.json after adding the mentioned JSON entries in my PR.
https://gist.github.com/f3e60b1e98d63a7d0ac2b2df0b864448


Merge sdk.zig into build.zig

Zig can now import build.zig files if you have it as a dependency in build.zig.zon and import it like this:
const std = @import("std");
const flatbufferz = @import("flatbufferz");

pub fn build(b: *std.Build) void {
    const target = b.standardTargetOptions(.{});
    const optimize = b.standardOptimizeOption(.{});

    const fbz = b.dependency("flatbufferz", .{});
    const gen_step = try flatbufferz.GenStep.create(b, exe, &.{
        "src/schema/myschema.fbs",
    }, &.{}, "flatc-zig");
    const gen_mod = b.createModule(.{
        .root_source_file = gen_step.module.root_source_file,
        .imports = &.{.{ .name = "flatbufferz", .module = fbz.module("flatbufferz") }},
    });

    const exe = b.addExecutable(.{
        .name = "sspm",
        .root_source_file = b.path("src/main.zig"),
        .target = target,
        .optimize = optimize,
    });
    exe.root_module.addImport("flatbufferz", fbz.module("flatbufferz"));
    exe.root_module.addImport("generated", gen_mod);
    b.installArtifact(exe);

    const run_cmd = b.addRunArtifact(exe);
    run_cmd.step.dependOn(b.getInstallStep());
    if (b.args) |args| {
        run_cmd.addArgs(args);
    }

    const run_step = b.step("run", "Run the app");
    run_step.dependOn(&run_cmd.step);
}

Looks good. Thanks! I've been meaning to do this.
I checked that it builds locally with 0.14.0-dev.1671+085cc54aa and ran scripts/test-all.sh which looks as good as it usually does - still some name spacing issues i need to fix.  But of course that has nothing to do with this.

Thanks again for the nice build.zig example! I added a link here to the readme near the top.

I noticed the build.zig above doesn't compile and added one that (almost) does to the readme


Provide bitmap_max/bitmap_min functions to starrocks.

bitmap_max: input: Bitmap output: Bigint
return the max value of bitmap, if input was null return null

We need to implement the max/min functions in the class BitmapValue in be/src/util/bitmap_value.h
define bitmap_max and bitmap_min in be/src/exprs/vectorized/bitmap_functions.h
implement bitmap_min and bitmap_max in bitmap_function.cpp, you can refer to bitmap_count for the implementation of the function
Register bitmap_max or bitmap_min in gensrc/script/vectorized/vectorized_functions.py, you can refer to the bitmap_count function

optional:
Add UT to be/test/exprs/vectorized/bitmap_functions_test.cpp
Submit the function documentation in https://github.com/StarRocks/docs
Welcome newcomers to solve this issue
If you have any difficulties you can contact me (stdpain) in slack (https://app.slack.com/client/T02EUPUD8FP/C02FAD0JSSD)

LGTM


Buggy with Turbolinks

Snackbarjs is defined and run well but does not append the snackbars after page change on Turbolink app.

I have no idea what are you talking about. Provide a codepen or something so that others can see the problem and attempt to fix it.

The snackbars are no longer being appended to body after a page change through Turbolinks. Apparently, the div#snackbar-container is removed after a page change.

Fixed it by appending div#snackbar-container to body if it doesn't exist on turbolinks:load


feat(farrow): add feature:  replace src url in generated client code when farrow build

support #64

Rewrite the src url  when build time
Unit test provided.

LGTM


save clipboard history permanently

Is your feature request related to a problem?
now xclipper can just save limited amount of clipboard history，when a new clipboard is copied, the old ones will disappear.(the clipboard history at the bottom of the app) It becames impossible to find the clipboard history several years ago which may contain important messages.
Describe the solution you'd like:
save clipboard history permanently
Describe alternatives you've considered:
save clipboard history permanently

Yes, I do reach the limit. And I haven't enabled synchronization. The limitation is really annoying. Could you please remove it?🥹

Let me check if I can remove it because the last time I did that the whole app started lagging.

https://github.com/KaustubhPatange/XClipper/issues/76#issuecomment-1760742252

@KaustubhPatange, that's indicative of a more significant problem, then. Perhaps it needs to lazy-load entries, rather than instantiate all 100 entries?

Yes, I do reach the limit. And I haven't enabled synchronization. The limitation is really annoying. Could you please remove it?🥹

i reached the limit too, easily; and it is indeed annoying that we cannot see clipboards from further than the last 100 ones

#76 (comment)

@KaustubhPatange, that's indicative of a more significant problem, then. Perhaps it needs to lazy-load entries, rather than immediately instantiate all 100 entries?

100 is small number, xclipper definitely need lazy loading if it is to store unlimited amount of clipboards

Let me check if I can remove it because the last time I did that the whole app started lagging.

it's been a while, any update yet?


Fix publisher links

What
Trello card
Change publisher links for travel-advice and collection content.
Why
Travel advice content did not correctly link to the travel advice edit page and our team decided to link to a different support form for collections content. The collections link change also needed to be reflected in the link label.

Review Checklist

[x] Changes in scope.
[x] Added/updated unit tests.
[x] Added/updated feature tests.
[x] Added/updated relevant documentation.
[x] Added to Trello card.

 (3) Add links to the correct publishing application (or support route) - part 2


[Event Request] codeunit 5632 "FA Jnl.-Post Line" - OnBeforePostGLBalAccAllocation

Hello, can you please add a new Event OnBeforePostGLBalAccAllocation in codeunit 5632 "FA Jnl.-Post Line"?
    procedure PostGLBalAcc(FALedgEntry: Record "FA Ledger Entry"; AllocatedPct: Decimal)
    begin
        OnBeforePostGLBalAccAllocation(FALedgEntry, AllocatedPct);
        if AllocatedPct > 0 then begin
            FALedgEntry."Entry No." := 0;
            FALedgEntry."Automatic Entry" := true;
            FALedgEntry.Amount := -FALedgEntry.Amount;
            FALedgEntry.Correction := not FALedgEntry.Correction;
            FAInsertLedgEntry.InsertBalDisposalAcc(FALedgEntry);
            FALedgEntry.Correction := not FALedgEntry.Correction;
            FAInsertLedgEntry.InsertBalAcc(FALedgEntry);
        end;
    end;

    [IntegrationEvent(false, false)]
    local procedure OnBeforePostGLBalAccAllocation(FALedgEntry: Record "FA Ledger Entry"; var AllocatedPct: Decimal)
    begin
    end;

Thanks for reporting this. We agree, and we’ll publish a fix asap, either in an update for the current version or in the next major release. Please do not reply to this, as we do not monitor closed issues. If you have follow-up questions or requests, please create a new issue where you reference this one.
Build ID: 11703.


update options

Hello, everyone.
How can I asynchronically update options of datepicker component?
For example, I have two datepickers. And when I select first date, I want to update minDate of second datepicker.
Can someone help me?

Uh, my bad, problem solved easily.
Just need to assign options from new object:
this.options = {
  //new options
}

Instead of reassign existing property:
this.options.minDate = this.minDate


className missing when assigned using an object

Do you want to request a feature or report a bug?
Bug.
What is the current behavior?
I have created a codesandbox to use as a reference.
When using <style jsx> while assigning a className to my component with the use of an object, the class is overwritten (pages/withJsx.js) by the one styled-jsx creates. I've also added an id on the same object in order to see if my approach is valid.

When I don't use <style jsx> this works as expected with both id and class assigned to the component (pages/withoutJsx.js).
Of course, there is an alternative approach for this one (pages/withJsxWorkaround.js) but I suppose the first one should also work like this.
Environment (include versions)

OS: macOS High Sierra 10.13.6
Browser: Chrome Version 76.0.3809.132 (Official Build) (64-bit)
styled-jsx (version): 3.2.1

Did this work in previous versions?
Not sure about this. I just noticed it.

@michalisgar thanks for the detailed bug report! Even though this is an actual bug, I think this is an edge case and probably adding a fix for it would make the compiled output way more complex than it is right now. So I'd rather not fix it.
I think that you can move the ternary in a constant inside of the render method and then use that in className.
I am closing the issue for now :)

Totally understandable! Thanks for your feedback @giuseppeg. :slightly_smiling_face:


UI - evaluations disappear when navigating to datasets and then back to model

When navigating to between the model and datasets modules, and then back to the models module, a full screen refresh is needed to see the completed evaluations.  This misleads the user.

https://github.com/harymitchell/mscs-ml/commit/13012f4b8b294d130a00aca4c2844a04de08fda4


Support for partial implemented schemas

When I'm just getting started, I personally find it useful to write out the schema and then run graphiql against it to test out queries. Unfortunately I need to write data classes for the entire schema in order to even start the application, which makes this very tedious. Being able to configure it to not care about this would be helpful so that it can be built a piece at a time.

I like this idea - would it just throw exceptions if you tried to request a field that didn't have an associated object?

I've no idea to be honest. That's the most obvious solution, but returning
null - if the field supports that - could make sense too.
On Tue, 11 Jul 2017 at 17:45 Andrew Potter<EMAIL_ADDRESS>wrote:

I like this idea - would it just throw exceptions if you tried to request
a field that didn't have an associated object?
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/graphql-java/graphql-java-tools/issues/39#issuecomment-314504044,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AAECGE39CFPM5UY7bWj_kxu6qOyVgZz3ks5sM6bAgaJpZM4OTjl5
.


Wont build in Unity.

Get the following console errors after downloading and bringing version 2.0 into Unity.
Assets/VRTK/Source/SDK/SteamVR/SDK_SteamVRBoundaries.cs(21,19): error CS0246: The type or namespace name SteamVR_PlayArea' could not be found. Are you missing Valve.VR' using directive?
Assets/VRTK/Source/SDK/SteamVR/SDK_SteamVRBoundaries.cs(123,27): error CS0246: The type or namespace name SteamVR_PlayArea' could not be found. Are you missing Valve.VR' using directive?

Sorry, the current version of VRTK does not support the SteamVR Unity Plugin. They are working on v4 of their framework, which should work with this new version fine. In the meantime you're welcome to use SteamVR Unity Plugin v1.2.3 here:  https://github.com/ValveSoftware/steamvr_unity_plugin/releases/tag/1.2.3

ok thanks


feat(protocol-kit): Add deployment functionality to Safe class

What it solves
Resolves #446
How this PR fixes it

Removed the SafeFactory class
created 2 private functions in the Safe class:

#addPreValidatedSignature: Adds a PreValidatedSignature to the transaction if the threshold is not reached.
#isReadyToExecute: Checks if the transaction has enough signatures to be executed.

Added the deploy function in the Safe class.
Added getSafeAddressFromDeploymentTx util function: Returns the address of a SafeProxy from the deployment tx receipt.

Previous PR reference
#905
#948

Pull Request Test Coverage Report for Build<PHONE_NUMBER>3
Details

2 of 2 (100.0%)  changed or added relevant lines in 2 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage remained the same at 76.73%

Totals

Change from base Build<PHONE_NUMBER>4:
0.0%

Covered Lines:
777

Relevant Lines:
948

💛  - Coveralls


feat(react-email): Add skip install flag

This change is to stop us from getting a yarn.lock file added to our project starting the email dev server.
Since we use a monorepo we don't need the react-email server to manage installing deps and this is a way to opt-out with --skip-install.
Repo for context:
https://github.com/bautistaaa/typehero/tree/main/apps/email

This would also assist in relieving #881

please

Sorry for taking long to merge this, thanks for the contribution


Scatter plots with scatter argument ignore edgecolors

Description
Scatter plots that use a colormap (and therefore need to contain the scatter bool, refer #479 ) currently do not handle marker modifications such as edgecolors correctly.
The reason behind this is that as soon as scatter is present, the marker appearances need to be accessed via
/scatter/use mapped color (refer pgfplots documentation), and the edgecolors passed to the draw keyword there (they are ignored in the \addplot comnand if scatter is present).
MWE
import numpy as np
import matplotlib.pyplot as plt
import tikzplotlib
from sklearn.datasets import make_blobs

x, y = make_blobs(centers=[[4, -4], [-4, -4], [-1.5, 3], [0, -2]], cluster_std=[0.8, 0.7, 1.0, 1.2],
               random_state=0, n_samples=400, n_features=2)

plt.scatter(x[:,0], x[:,1], c=y, edgecolors='k', cmap='viridis')

plt.savefig("test.png", dpi=600)
tikzplotlib.save("test.tex", standalone=True)

gives the following image in matplotlib:

and via tikzplotlib:

Workaround
If the edgecolor is known beforehand, it can be passed to axis via extra_axis_parameters:
import numpy as np
import matplotlib.pyplot as plt
import tikzplotlib
from sklearn.datasets import make_blobs

x, y = make_blobs(centers=[[4, -4], [-4, -4], [-1.5, 3], [0, -2]], cluster_std=[0.8, 0.7, 1.0, 1.2],
               random_state=0, n_samples=400, n_features=2)

plt.scatter(x[:,0], x[:,1], c=y, edgecolors='k', cmap='viridis')

plt.savefig("test.png", dpi=600)
tikzplotlib.save("test.tex", standalone=True, extra_axis_parameters={
        "scatter/use mapped color={draw=black,fill=mapped color}",
    },)

yields the correct image:

Btw I think this issue, #479 and #475 may all be regressions caused by #464 .

I confirm this. Even worse, plots with mapped colors forget about the marker shape itself:
import matplotlib.pyplot as plt
import tikzplotlib

plt.scatter([1.0, 2.0], [3.0, 4.0], marker="x")
plt.scatter([1.0, 2.0], [3.0, 4.0], marker="x", cmap="viridis")
plt.scatter([1.0, 2.0], [3.0, 4.0], c=[0.0, 1.0], marker="x")
plt.scatter([1.0, 2.0], [3.0, 4.0], c=[0.0, 1.0], marker="x", cmap="viridis")

tikzplotlib.save("test.tex")

% This file was created with tikzplotlib v0.10.1.
\begin{tikzpicture}

\definecolor{darkgray176}{RGB}{176,176,176}
\definecolor{darkorange25512714}{RGB}{255,127,14}
\definecolor{steelblue31119180}{RGB}{31,119,180}

\begin{axis}[
tick align=outside,
tick pos=left,
x grid style={darkgray176},
xmin=0.95, xmax=2.05,
xtick style={color=black},
y grid style={darkgray176},
ymin=2.95, ymax=4.05,
ytick style={color=black}
]
\addplot [draw=steelblue31119180, fill=steelblue31119180, mark=x, only marks]
table{%
x  y
1 3
2 4
};
\addplot [draw=darkorange25512714, fill=darkorange25512714, mark=x, only marks]
table{%
x  y
1 3
2 4
};
\addplot [colormap/viridis, only marks, scatter, scatter src=explicit]
table [x=x, y=y, meta=colordata]{%
x  y  colordata
1 3 0.0
2 4 1.0
};
\addplot [colormap/viridis, only marks, scatter, scatter src=explicit]
table [x=x, y=y, meta=colordata]{%
x  y  colordata
1 3 0.0
2 4 1.0
};
\end{axis}

\end{tikzpicture}

As you can see, the two last plots miss the mark attribute.


feat: rerun-pr-checks

:pencil: Description
:link: Related Issues

Thanks for sharing this with me, Andrew! It's really helpful to compare the way you've executed this with my previous attempt.

@aschwenn Should we be concerned that it doesn't work on this PR?
No workflow runs found on branch refs/pull/159/merge on ExpediaGroup/github-helpers

@aschwenn Should we be concerned that it doesn't work on this PR?
No workflow runs found on branch refs/pull/159/merge on ExpediaGroup/github-helpers

oops yeah i was still testing it

@aschwenn I got it working by pulling in the @octokit/request library. However, it only re-runs checks that have the pull_request trigger, not the pull_request_target trigger.

awesome, appreciate the help!


Makefile syntax highlight bug, caused by comments

VSCode Version: 1.13.1
OS Version: macOS 10.12.5

Steps to Reproduce:
In this Makefile snippet, the variable "HCC_LIB_OBJ" in the second line is not properly colored, due to comment at the end of the first line. If the comment is removed, "HCC_LIB_OBJ" is colored correctly. But "HCC_LIB_OBJ"'s colorization should not be affected by whether there is a comment in the preceding line.

Reproduced with
s = b b #eeee
c = d d d

This issue was moved to textmate/make.tmbundle#17

Fixed here: https://github.com/Microsoft/vscode/pull/27293


Refactor frontend API handler and use generated code to emit metrics

What changed?

Create a template to generate wrapper code of frontend API handler to emit metrics and logs on error
Refactor frontend API handler code

Why?
Tidy the messy code and make it maintainable

How did you test it?
unit tests

Potential risks

Release notes

Documentation Changes

Pull Request Test Coverage Report for Build 018d5d6f-e849-4ae2-a8b7-03f67671d4d9

-411 of 635 (35.28%)  changed or added relevant lines in 5 files are covered.
75 unchanged lines in 8 files lost coverage.
Overall coverage increased (+0.07%) to 62.733%

Changes Missing Coverage
Covered Lines
Changed/Added Lines
%

common/types/shared.go
0
5
0.0%

service/frontend/wrappers/metered/metered.go
160
250
64.0%

service/frontend/api/handler.go
60
376
15.96%

Files with Coverage Reduction
New Missed Lines
%

common/peerprovider/ringpopprovider/config.go
2
81.58%

common/task/weighted_round_robin_task_scheduler.go
2
88.06%

service/history/task/transfer_active_task_executor.go
2
72.22%

service/history/task/transfer_standby_task_executor.go
2
87.42%

common/archiver/filestore/historyArchiver.go
4
80.95%

service/history/task/fetcher.go
4
86.08%

service/history/execution/mutable_state_task_refresher.go
7
71.2%

service/frontend/api/handler.go
52
61.19%

Totals

Change from base Build 018d5cc7-1e74-4d61-a6e6-c60bbefb60ae:
0.07%

Covered Lines:
92249

Relevant Lines:
147050

💛  - Coveralls


expect.not.arrayContaining() unexpected behavior

🐛 Bug Report
I'm experiencing an unexpected behavior when using expect.not.arrayContaining() with multiple expected array items.
To Reproduce
eg.
Case 1: using multiple expected array elements
it ("example test", async () => {
      let items = [
        {
          key1: 'item1',
          key2: [ 'value', 'value' ],
          key3: 'value'
        },
        {
          key1: 'item2',
          key2: [ 'value', 'value' ],
          key3: 'value'
        },
        {
          key1: 'item3',
          key2: [ 'value', 'value' ],
          key3: 'value'
        },
      ];

      const notExpectedItems = [
        {
          key1: 'item4',
          key2: [ 'value', 'value' ],
          key3: 'value'
        },
        {
          key1: 'item5',
          key2: [ 'value', 'value' ],
          key3: 'value'
        },
        {
          key1: 'item2',
          key2: [ 'value', 'value' ],
          key3: 'value'
        }
      ];

      expect(items).toEqual(
        expect.not.arrayContaining([
          notExpectedItems[0],
          notExpectedItems[1],
          notExpectedItems[2]
        ])
      );
    });

Result: the test passes, this is not the expected behavior.
Test Suites: 1 passed, 1 total

Case 2: using only 1 expected array element
But if I use expect.not.arrayContaining only with 1 expected array, it works properly:
eg.
      expect(items).toEqual(
        expect.not.arrayContaining([
          notExpectedItems[2]
        ])
      );

Result: the test fails because notExpectedItems[2] is already present in items, this is the expected behavior.
Test Suites: 1 failed, 1 total
Expected: ArrayNotContaining [{"key1": "item2", "key2": ["value", "value"], "key3": "value"}]
    Received: [{"key1": "item1", "key2": ["value", "value"], "key3": "value"}, {"key1": "item2", "key2": ["value", "value"], "key3": "value"}, {"key1": "item3", "key2": ["value", "value"], "key3": "value"}]

Expected behavior
Case 1:
As notExpectedItems[2] is already part of items, the expected behavior is that the test should fail. But currently the test pass OK, even when notExpectedItems[2] is part of the original items array. In other words, items already contain notExpectedItems[2] so the expect.not.arrayContaining seems not to be working properly.
Case 2:
In the second case, instead of using multiple expected array items, I'm using only 1 array item, in that case arrayContaining works as expected.
In both cases, the notExpectedItems[2] is already part of items, but in the first case it passes OK (this seems a bug), and in the second tests it fails (correct behavior).
It should fail in both cases.
Based on jest documentation: "expect.not.arrayContaining(array) matches a received array which does not contain all of the elements in the expected array."
Link to repl or repo (highly encouraged)
Example jest test:
https://github.com/sarce/jest-issue/blob/master/example.test.js
Run npx envinfo --preset jest
  System:
    OS: macOS High Sierra 10.13.6
    CPU: (8) x64 Intel(R) Core(TM) i7-4770HQ CPU @ 2.20GHz
  Binaries:
    Node: 10.15.3 - /usr/local/bin/node
    npm: 6.4.1 - /usr/local/bin/npm
  npmPackages:
    jest: ^24.8.0 => 24.8.0

This looks correct to me, the array is not an array containing 2,4, and 5, to put it into words.

thanks @jeysal for your fast answer!
My understanding about:
expect(items).toEqual(
        expect.not.arrayContaining([
          notExpectedItems[0],
          notExpectedItems[1],
          notExpectedItems[2]
        ])
      );

was that the items array should be an array that does not contain none of the specified items in not.arrayContaining.
When I read the jest doc and I saw: "expect.not.arrayContaining(array) matches a received array which does not contain all of the elements in the expected array." I think the confusion was the word all vs none.
Thanks again for the clarification.


stage 2 traning error

thanks for your excellent job!
could you help me deal with the problems below i met when i train 2nd stage:
validated_self = self.pydantic_validator.validate_python(data, self_instance=self)
pydantic_core._pydantic_core.ValidationError: 1 validation error for DeepSpeedZeroConfig
stage3_prefetch_bucket_size
Input should be a valid integer, got a number with a fractional part [type=int_from_float, input_value=15099494.4, input_type=float]

pip install deepspeed==0.14.0


gRPC-web client filter: design proposal

Add a gRPC-web client filter that can be used by Envoy Mobile to unblock native clients who have an http1 limitation on any network hop

Description:
Envoy on the server through (https://github.com/grpc/grpc/pull/8667) allow for servers to transparently support the grpc-web protocol. However gRPC-web officially only supports Javascript clients. Native Clients however often have the same limitations that gRPC-web solves for. However, there isn't any official way for native clients to talk gRPC-web protocol to the server. By creating a client for gRPC-web this will help create an end to end HTTP1 compatible gRPC-web experience.
The gRPC-Web spec starts from the point of view of the HTTP/2 spec, and then defines the differences. These notably include:

Supporting both HTTP/1.1 and HTTP/2.
Sending of gRPC trailers at the very end of request/response bodies as indicated by a new bit in the gRPC message header 4.
A mandatory proxy for translating between gRPC-Web requests and gRPC HTTP/2 responses.

gRPC Blog
The above situations are quite a common limitation on popular infrastructure stacks, people using AWS load balancers or popular EDGE provider such as Cloudflare, Akamai, and Cloudfront enforce HTTP1 to origin, as such gRPC-web is a great solution, however, a client counterpart is missing as gRPC-web is officially JS only library.
CF HTTP1 to Origin
Akamai HTTP1 to Origin
CloudFront HTTP1 to Origin
gRPC Load Balancing
Rokt gRPC on AWS
Load balancing on Bugsnag

IIUC the request here is to create a reverse grpc-web filter, which is similar to what grpc_http1_reverse_bridge does to grpc_http1_bridge. I'm not object to implement such a filter, though meanwhile you should be also able to try those filter to workaround those edge / lb doesn't support http2 to origin.

Correct. Thanks for the reply @lizan, you worded that much better than I. I've updated the issue.
Is it correct to assume for our web clients to use, we have to use grpc-web? Or is there some way to also use grpc_http1_reverse_bridge for web also?
Not an expert on  grpc_http1_reverse_bridge/grpc_http1_bridge but what are the major differences between the bridge and grpc-web?

Is it correct to assume for our web clients to use grpc, we will have to use grpc-web? Or is there an equivalent way of applying a grpc_http1_reverse_bridge for web clients also?

Right, if you have JS client you have to use grpc-web. They shouldn't interfere each other so you should be able to do both in same Envoy.


Create README.md

Description

[ ] I have added a folder(Named it as my GitHub user id)
[x] I have added a Readme.md file inside the folder
[ ] I understand the GitHub Forking Concept fully

thank you


Added a pre-commit config and linting.

Hello,
Thank you for a nice repository.
I added a pre-commit-config.yaml to this repo,
To use it, do:

pip install pre-commit
pre-commit install (while standing in the folder).

The code will then be linted upon commit. This can be ignored using --no-verify as an argument to git commit.
To run it before even committing, you can do pre-commit run --all-files.
Thanks again for a great repo!! Will use it for experimenting. I will report any bugs I might find.
best,

Hi @Filco306 thanks for your contribution. Why do we need exclusions and an ignored rule in the flake8 config file?

Hello again :)
The exclusions are for the following reasons:

__pycache__ is unnecessary since it is in the .gitignore
docs/source/conf.py is excluded because it is a standard file from a package, and linting this yields errors although it can still do documentation.
build is usually ignored as best practice.
setup.py is, like docs/source/conf.py ignored as it is a standard file.
old is just a standard folder name with old code, so no need to lint that one in general (but it has no value here).
dist as old
sample/stream_ig.py and sample/rest_ig.py I chose to ignore because there were a few unused variables; however, since these are for educational purposes to show samples of the repo, I thought the unused variables might have
ignore = E501

Regarding ignore = E501: E501 is the rule for too long lines. Code lines will still be divided automatically if they are too long, but it will still not lint comments. If you unignore this, a lot of comments and commented code will have to be divided into separate lines, and for me that was a lot of work, so I decided to ignore that for now, but feel free to unignore it. Also feel free to remove unnecessary exclusions, they neither harm nor contribute to better linting :)

Great, thank you. Could you remove 'ignore = E501' from the flake8 config file please?

Fixed!

I will also add some other things to improve the coding, such as specifying errors for except etc.; more to come!


[Help]Cycle detected TorchSharp -> TorchSharp >=0.971

Hello
I was trying to add the TorchSharp NuGet package to my VS project. I kept getting the following strange error:
Cycle detected TorchSharp -> TorchSharp >=0.971
I got the same error with a different version too. The Cuda native package installed fine though. I am wondering how I go about it. Is there something with my dev environment?
I also noticed I got the same error if I try to install DiffSharp
Thank you

Hello @ewdlop -- when are you seeing this error, specifically? I just tried to update a project from 0.96.7 to 0.97.1, and it worked fine.
Also, are you including TorchSharp-cpu or TorchSharp-cuda, and on what OS?

I think I know what happened. There was a namespace conflict with my visual studio project  Thank you for the help.
It was on Windows btw.


update path to match dockerfile, et al.

Codecov Report

Merging #416 into master will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##           master     #416   +/-   ##
=======================================
  Coverage   97.94%   97.94%
=======================================
  Files          33       33
  Lines        1950     1950
  Branches      128      128
=======================================
  Hits         1910     1910
  Misses         27       27
  Partials       13       13

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 87287fb...445750f. Read the comment docs.


TOC Candidate Nomination for Chris McGowan

Candidate Name: Chris McGowan
Candidate GitHub Username: @ChrisMcGowan
Affiliation: cloud.gov
Nomination Statement:
Chris is a senior engineer with cloud.gov, the U.S. government's primary public sector Cloud Foundry service. He's a seasoned Cloud Foundry engineer who has supported operations at GE Predix, Home Depot and for clients of Stark & Wayne. His open-source contributions include numerous repos at cloud.gov, various kits, including BOSH and CF App Autoscaler, for Genesis Community, and Shield, an open-source backup utility.
I'm nominating Chris because the CFF and the TOC have benefited from public sector representation, as shown by the UK's Lee Porte and Andy Hunt.  Chris is well-suited to carry on that tradition with his deep engineering knowledge coupled with an understanding of compliance and sustainability. He considers deeply the tradeoffs of engineering and architectural decisions, explains technical concepts well, and is a generous colleague.
In all, he's ideally suited to help Cloud Foundry to continue to grow and thrive.

I accept the nomination.

TOC, please indicate your approval or objection via 👍 / 👎 reaction on this comment or reply on the discussion

Closing as the 2023 TOC election has concluded.


Promote use of Shields in application tickets

Inspired by https://github.com/gratipay/project-review/issues/579, we could drop the code in when the ticket is automatically created:

Add to your repo when approved:
[![Gratipay](https://img.shields.io/gratipay/project/tarsana.svg)](https://gratipay.com/Tarsana/)

Or we could add it back to the profile where widgets used to be. Or both.

I like it!

https://github.com/gratipay/gratipay.com/blob/1985e43033edd87bd16cdb46c16adbcda0bb6bc4/gratipay/project_review_process.py#L54


NOISSUE - Bump version to 0.8

Signed-off-by: nmarcetic<EMAIL_ADDRESS>What does this do?
Bump Mainflux version to 0.8
Which issue(s) does this PR fix/relate to?
NA
List any changes that modify/break current functionality
NA
Have you included tests for your changes?
NA
Did you document any new/modified functionality?
NA
Notes
NA

Codecov Report

Merging #668 into master will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##           master     #668   +/-   ##
=======================================
  Coverage   86.29%   86.29%
=======================================
  Files          62       62
  Lines        3722     3722
=======================================
  Hits         3212     3212
  Misses        353      353
  Partials      157      157

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update d504c4f...bb6c931. Read the comment docs.


INVALID_FIELD_NAME_POSITIONAL reported even when there is no conflict

The specification says: A field name that collides with the synthesized getter name of a positional field. For example: (int, $0: int) since the named field '$0' collides with the getter for the first positional field.
The example (int, $0: int) is weird and probably should be (int, {int $0}), but the intention seems to disallow only when there is a conflict, not always.
Happens for co19/LanguageFeatures/Records/record_type_annotations_A07_t02.

The fix should wait until we have clarity on which names should be checked.

co19/LanguageFeatures/Records/record_type_annotations_A05_t05

I believe that this should now be fixed by https://dart-review.googlesource.com/c/sdk/+/260682


A force closed dlc channel does not seem to calculate the correct payout for the trader

I had channel with 90,000 sats and an open long position with a margin of 13,443 sats and force closed the dlc channel. After the confirmed force closure I've lost the complete margin of the trade + additional 3,869 sats (I think thats the reserve).

The buffer transaction has not been broadcasted yet, as it was missing the attestation from the oracle, which has to be waited for until the maturity time.
I re-tested with setting a maturity time in the past and force-closing the dlc channel. Eventually the funds returned to the app.


How to identify high-norm patches

In "VISION TRANSFORMERS NEED REGISTERS" you wrote:
We clearly see that the norm of artifact patches is much higher than the norm of other patches
Could you please tell which norm (function) and at which dimensions (axis) you used?
Suppose we have a tensor of size [batch, 1 (cls_tok) + N (patches), channels]. What should we do to find (and visualize) such artifact patches?

Which norms have you tried so far on the tokens ?

It's L2 norm as per the graph in the paper. It makes most sense for it to betaken on the channels of the patches (no CLS) and they seem to say its at the output layer, so at the output of the model.


Node: add binary variant to function commands

Can we add at least one test for function commands with GlideString?

I will work on adding tests next.


TREC iKAT 2023/2024

Dataset Information:
The purpose is to add the processed TREC iKAT collection (same collection for years 2023 and 2024 [subset of ClueWeb22-B]).
The Shared Task of iKAT can be defined as personalized retrieval-based "candidate response retrieval" in context of the conversation.
Collection with around 116,838,987 passages (with id in the form: clueweb22-en0004-50-00170:0).
Links to Resources:
Guidelines from year 2023: https://www.trecikat.com/guidelines/
Overview of year 2023: https://arxiv.org/abs/2401.01330
Github of year 2023: https://github.com/irlabamsterdam/iKAT
Test topics and qrels 2023: https://trec.nist.gov/data/ikat2023.html
Dataset ID(s) & supported entities:
We can provide with the documents, and flatten version of the conversation:
trec_ikat23/doc : collection of passages, 116M passages
trec_ikat23/queries : the flatten conversations (156 entrees from the 24 topics)
trec_ikat23/qrels : qrels from the flatten conversations
Checklist
Mark each task once completed. All should be checked prior to merging a new dataset.

[ ] Dataset definition (in ir_datasets/datasets/[topid].py)
[ ] Tests (in tests/integration/[topid].py)
[ ] Metadata generated (using ir_datasets generate_metadata command, should appear in ir_datasets/etc/metadata.json)
[ ] Documentation (in ir_datasets/etc/[topid].yaml)

[ ] Documentation generated in https://github.com/seanmacavaney/ir-datasets.com/

[ ] Downloadable content (in ir_datasets/etc/downloads.json)

[ ] Download verification action (in .github/workflows/verify_downloads.yml). Only one needed per topid.
[ ] Any small public files from NIST (or other potentially troublesome files) mirrored in https://github.com/seanmacavaney/irds-mirror/. Mirrored status properly reflected in downloads.json.

Additional comments/concerns/ideas/etc.
The collection requires a licence approved by CMU, is it possible to restrict the access of the collection? (more details below)

💥 Document Collection: TREC iKAT 2023 ClueWeb22-B
The collection distribution is being handled directly by CMU and not the iKAT organizers. Please follow these steps to get your data license ASAP:
Sign the license form available on the ClueWeb22 project web page.
Send the form to CMU for approval<EMAIL_ADDRESS>Please give enough time to the CMU licensing office to accept your request. A download link will be sent to you by the ClueWeb22 team at CMU.
Note:
CMU requires a signature from the organization (i.e., the university or company), not an individual who wants to use the data. This can slow down the process at your end too. So, it’s useful to start the process ASAP.
If you already have an accepted license for ClueWeb22, you don’t need a new form. Please let us know if that’s the case.

Awesome!
What's the corpus download process like? We can handle the case like we do for other licensed datasets: provide instructions in the software, and ask them to link the downloaded file somewhere that ir-datasets can pick it up.

As far as the structure goes -- can you clarify if the dataset is a typical clueweb22 split, or a special subset for ikat?
If the former, we have a PR already set for CW22, and it should go under there. Something like clueweb22/trec-ikat-2023 and clueweb22/trec-ikat-2024
If the latter, then it's probably a different top-level dataset? And it'd probably be structured like: ikat/trec-2023 and ikat/trec-2024 (or similar)

I realized that we already have an agreement for cw22, so I can request a copy and check :)

yes, the raw dataset is included in clueweb22 (clueweb22-iKAT), but it needs a lot of processing to create the passages splits. So instead, we had a processed version, hosted on your server https://ikattrecweb.grill.science/, that could be accessed by contacting Andrew Ramsay to get the credential.

as for the hierarchy, if we want to add the queries and qrels I don't think we can do it under clueweb22/trec-ikat-2023, so it might be better to have a dedicated one?

I have integrated the code, @seanmacavaney can you have a check? I am not sure about the next steps for the PR to be accepted.
Hierarchy is a following:
trec-ikat/2023 -> doc collection - qrels - both train and test queries
trec-ikat/2023/judged -> subset of queries with relevance judgement in the qrels from NIST assessors.
trec-ikat/2023/judged/ptkb -> qrels of the ptkb (see ikat description)
As for the doc collection, we kindly ask people to link the 16 downloaded chunks of the collection in the folder .ir_datasets/trec-ikat/TREC-Ikat-CW22-passage/  (.jsonl.bz2)

Getting the license to use the collection can be time-consuming and would be handled by CMU, not the iKAT organizers. Please follow these steps to get your data license ASAP:

Sign the license form available on the ClueWeb22 project web page: https://lemurproject.org/clueweb22/obtain.php and send the form to CMU for approval (jlm4@andrew.cmu.edu).
Once you have the license, send a mail to Andrew Ramsay<EMAIL_ADDRESS>to have access to a download link with the preprocessed iKAT passage collection (here are the 16 chunks)


fixed typo.

Signed-off-by: Shubham Koli<EMAIL_ADDRESS>
Type of change

Documentation update

Description

Additional details

Related issues

Signed-off-by: Shubham Koli<EMAIL_ADDRESS>

DCO problem has not been fixed, make sure you do git commit --amend -s (not manually adding the sign off line)

I think DCO error has been resolved.


Add CheckMissingFiles option to Engine

Current behavior:

Add torrent file to the app
Close app
Delete downloaded files
Open app
The engine restores a state of the torrent. I can Pause/Resume torrent, but Paused/Downloading are incorrect states here.

Suggestion:
Add an option to the engine, that will additionally check the existence of files.
IO is expensive, but Monotorrent opens these files anyway. It would be great if the library would do it, otherwise the library customers should duplicate IO-requests and handle with .State + bool isMissing logic.
Question:
Should be MissingFiles displayed too when the user changes files (a wrong file's hash)?

Hmm, It's works correctly.
I have saw "the file is busy by some process" exceptions when calling Resume few times. I will try to find who is blocking the file.

I have saw "the file is busy by some process" exceptions when calling Resume few times. I will try to find who is blocking the file.

Hrmm, do you know if monotorrent is holding those files open, or if you have a second application opening the files? If a second application is involved, and you're in control of that application, make sure you open files with the FileShare.Read or FileShare.ReadWrite permissions otherwise monotorrent won't be able to open them for reading/writing.
If MonoTorrent is incorrectly keeping these files open let me know and i'll look into it!

Nobody uses files. OneDrive doesn't scan the folder.
I have played with two 1GB torrent files.
After some hours running of VS, I have 0b on disk C.  When I close the VS, it frees 30GB. The RAM pressure is ~80%. (8Gb of RAM). I don't checked yet is it due to the page swapping or the files generate infinitely somewhere.
The MonoTorrent folder is 50Kb, so I think I somewhere have a memory leak, but Win11/VS2022/WinUI3 not frees it after closing the debug app.


shiny UI

@aappling-usgs this is ready for a look and to be used. I didn't focus on getting this into the package (or even fixing powstreams...since we broke a lot of it), so it will really just be shiny::runApp() from within the powstreamsUI directory.
you will need:
library(mda.streams)
library(dygraphs)
library(unitted)
library(magrittr)
library(xts)
library(RColorBrewer)
library(shiny)

works for me. we have a lot of cleanup to do here, but not yet.


Support parallel build(-j) for Debian package

@chobits would you please take a look? Thanks!

ack

Possible to get merged please?

thanks, merged

Thank you.


Adaptor: elastic adaptor v2 and v5 add failed detail info

I think some error info should be warning or debug

[ ] CHANGELOG.md updated (feel free to wait until changes have been reviewed by a maintainer)
[ ] README.md updated (if needed)

done @jipperinbham

thanks @pmjhonwang


Initial README

Pull Request Test Coverage Report for Build 119

0 of 0   changed or added relevant lines in 0 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage remained the same at 98.396%

Totals

Change from base Build 115:
0.0%

Covered Lines:
184

Relevant Lines:
187

💛  - Coveralls

Codecov Report

Merging #9 into master will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##           master       #9   +/-   ##
=======================================
  Coverage   98.41%   98.41%
=======================================
  Files           5        5
  Lines         189      189
=======================================
  Hits          186      186
  Misses          3        3

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update edc3998...272bd67. Read the comment docs.


'NoneType' object is not iterable during finetune training

Hi team,
Thank you so much for open sourcing such an amazing project! I thought this would be my perfect opportunity to learn about behavioral cloning of robots.
However, during the learning process, I encountered an error message of unknown reason. I tried to change the order of imports as mentioned in issue 4(https://github.com/notmahi/dobb-e/issues/4). This worked, but a new error was prompted.
My error message is as follows, could you please check it for me:

$ python train.py --config-name=finetune
/home/me/dobbe/dobb-e/imitation-in-homes
checkpoints/2024-03-20/Drawer_Opening-Env1-moco-18-46-33
[2024-03-20 18:46:33,636][main][INFO] - Working in /home/me/dobbe/dobb-e/imitation-in-homes
[2024-03-20 18:46:34,283][main][INFO] - Setting up dataloaders.
Filtering trajectories: 100%|███████████████| 81/81 [00:00<00:00, 159426.85it/s]
/home/me/dobbe/dobb-e/imitation-in-homes/dataloaders/utils.py:283: UserWarning: No trajectories were found matching the specified criteria. Make sure you have the correct dataset root and trajectory roots, and the correct include/exclude criteria.
warnings.warn(
Filtering trajectories: 100%|███████████████| 81/81 [00:00<00:00, 172106.70it/s]
[2024-03-20 18:46:35,192][timm.models._builder][INFO] - Loading pretrained weights from Hugging Face hub (notmahi/dobb-e)
[2024-03-20 18:46:35,481][timm.models._hub][INFO] - [notmahi/dobb-e] Safe alternative available for 'pytorch_model.bin' (as 'model.safetensors'). Loading weights using safetensors.
Using static action normalization
act_mean: tensor([ 7.2950e-05,  5.2102e-03,  9.5942e-04, -1.9970e-04, -1.5271e-03,
3.3574e-04,  0.0000e+00])
act_std: tensor([0.0144, 0.0221, 0.0110, 0.0158, 0.0465, 0.0253, 1.0000])
0it [00:00, ?it/s]                                       | 0/50 [00:00<?, ?it/s]
Epoch 1:   0%|                                           | 0/50 [00:00<?, ?it/s]
Error executing job with overrides: []
Traceback (most recent call last):
File "/home/me/dobbe/dobb-e/imitation-in-homes/train.py", line 414, in main
workspace.run()
File "/home/me/dobbe/dobb-e/imitation-in-homes/train.py", line 194, in run
self._train_epoch()
File "/home/me/dobbe/dobb-e/imitation-in-homes/train.py", line 223, in _train_epoch
self._train_step(batch, overall_loss_dict, iterator)
File "/home/me/dobbe/dobb-e/imitation-in-homes/train.py", line 240, in _train_step
batch_in_device = self.to_device(batch)
File "/home/me/dobbe/dobb-e/imitation-in-homes/train.py", line 204, in to_device
manyTensors = [
TypeError: 'NoneType' object is not iterable

Besides,My env_var.yaml settings are as follows, are there any mistakes?（I did not modify the content in finetune.yaml）

home_ssl_data_root: /home/me/dobbe/dobb-e/imitation-in-homes/iphone_data  # root to home ssl data folder
finetune_task_data_root: /home/me/dobbe/dobb-e/imitation-in-homes/finetune_directory  # root to the exported finetuning data folder
home_ssl_data_original_root: /home/me/dobbe/dobb-e/imitation-in-homes/iphone_data  # path included in the r3d_files.txt file of dataset
finetune_task_data_original_root: /home/me/dobbe/dobb-e/imitation-in-homes/finetune_directory  # path included in r3d_files.txt of dataset (may be the same as finetune_task_data_root if data has not been moved nor transferred across machines)
project_root: /home/me/dobbe/dobb-e/imitation-in-homes  # path to this repo
wandb:
entity: null  # wandb username

Below is my file path

I would be very grateful if you could help me.

Hi @winster-bai , I think the biggest issue is indicated in the line:
/home/me/dobbe/dobb-e/imitation-in-homes/dataloaders/utils.py:283: UserWarning: No trajectories were found matching the specified criteria. Make sure you have the correct dataset root and trajectory roots, and the correct include/exclude criteria.

Have you collected new data for fine-tuning on your own environment, and processed the data? The finetune config is directed towards that. If you have, what is the path to that directory? And also what's in r3d_files.txt in that finetune folder?

Hi @notmahi , Thank you very much for your reply. I did not use my iPhone to collect my own data. Instead, I downloaded the sample finetune dataset using the instructions in the tutorial.
# Sample finetuning dataset wget https://dl.dobb-e.com/datasets/finetune_directory.zip unzip finetune_directory.zip
The following is the file structure and the contents of r3d_files.txt.

Oh, is this sample finetune dataset able be used for training? Or is it just for reference data format?

Ah, I see what is going wrong.
finetune_task_data_original_root: /home/me/dobbe/dobb-e/imitation-in-homes/finetune_directory # path included in r3d_files.txt of dataset (may be the same as finetune_task_data_root if data has not been moved nor transferred across machines)

This line should match what is in the associated r3d_files.txt. Since the r3d_files contains the path /path/to/finetune_directory as the root, that line should read:
finetune_task_data_original_root: /path/to/finetune_directory # path included in r3d_files.txt of dataset (may be the same as finetune_task_data_root if data has not been moved nor transferred across machines)

Update this and then check if it works.

That worked! Thank you so much! @notmahi

Ah, I see what is going wrong. In env_vars.yaml:
finetune_task_data_original_root: /home/me/dobbe/dobb-e/imitation-in-homes/finetune_directory # path included in r3d_files.txt of dataset (may be the same as finetune_task_data_root if data has not been moved nor transferred across machines)

This line should match what is in the associated r3d_files.txt. Since the r3d_files contains the path /path/to/finetune_directory as the common root, that line should read:
finetune_task_data_original_root: /path/to/finetune_directory # path included in r3d_files.txt of dataset (may be the same as finetune_task_data_root if data has not been moved nor transferred across machines)

Update this and then check if it works.
Hi，I don't see what has been modified here, could you describe it in more detail?

@songhat the finetune_task_data_original_root variable should contain the root folder described in r3d_files.txt. That's what was updated in the previous comment.


Missing wasm-c-api functions

Hi all!
I'm trying to import wamr runtime using wasm-c-api.
But I found that there are some missing api as follows.

wasm_ref_t functions
bool wasm_module_validate(wasm_store_t*, const wasm_byte_vec_t* binary)
wasm_memory_pages_t wasm_memory_size(const wasm_memory_t*)
bool wasm_memory_grow(wasm_memory_t*, wasm_memory_pages_t delta)
wasm_ref_t* wasm_table_get(const wasm_table_t*, wasm_table_size_t index)
bool wasm_table_set(wasm_table_t*, wasm_table_size_t index, wasm_ref_t*)
wasm_table_size_t wasm_table_size(const wasm_table_t*)
bool wasm_table_grow(wasm_table_t*, wasm_table_size_t delta, wasm_ref_t* init)

It would be great if you support the above features.
Thanks a lot!

thanks for asking. we'll make a plan about it.
BTW,  would you mind sharing your project information with us?  because those APIs are rarely used by others and I am curious about the scenario.

BTW, would you mind sharing your project information with us? because those APIs are rarely used by others and I am curious about the scenario.

Sure, I'm updating wasm-js interface spec in our JavaScript engine.
(wabt is currently used but it's performance is too low. So, I searched other wasm engines and found that wamr is much more faster than wabt.)
According to the wasm-js specification, JavaScript built-in Objects such as Module, Instance, Memory, Table and Global represent wasm object each and should support its relative operations.
For example, Table object has a wasm table address internally and could set/get table members.

Jumping on this ticket rather than making a new one - there is also wasm_engine_new_with_args which I can't find in a header, and is crucial if we want to use our own allocator.
I would have opened a PR for this, but I saw this issue is marked WIP so didn't want to conflict (Also the parameters are defined in wasm_export.h and I wasn't sure whether to move them to another header).

@andrewrch wasm_engine_new_with_args() and the related structures are declared in wasm_c_api.h, please include it if you want to call this function, thanks.

The latest commit includes more missing wasm-c-api functions. You might want to take a look. Good day.

@lum1n0us
Thanks a lot! It seems that most of the wasm-c-api functions are now supported.
BTW, according to the wasm-c-api doc

we tend to grow a table or a memory by opcode only and not support growing both by host-side function callings.

You don't have a plan for grow api such as wasm_table_grow, wasm_memory_grow, right?

We will treat it as a design limitation until implementing the GC feature.


[Feature]: Add -y flag to install browsers without prompting user for confirmation

Steps to reproduce
root@b5a583fbfdd7:/app# /npx @puppeteer/browsers install --path /app/browsers chrome@stable
Need to install the following packages:
<EMAIL_ADDRESS>Ok to proceed? (y)

Expected results
There should be a -y flag you can pass so that it automatically installs without prompting the user for confirmation interactively.
Actual results
It hangs indefinitely when called from Dockerfile or via non-interactive script, waiting forever for the user to press (y).

The question comes from npx and not from Puppeteer. If you want to avoid it, preinstall the package using npm i @puppeteer/browsers

Ah ok thanks, that was the tip I needed. I didn't realize the prompt was from npx and not puppeteer.
It turns out you can add npx --yes ... or env npm_config_yes=true npx ...
https://stackoverflow.com/a/69006263/2156113


Overlay for food and slayer broken

The overlay for how much food heals/whether it's a good time to eat food depending on your health and slayer task doesn't seem to work now. This is only if you are using prayer, whether it be protection or just a simple preserve boosted stats prayer.

This is already fixed


gopls isn't emitting warnings

What version of Go are you using (go version)?

go version go1.12.1 darwin/amd64

Does this issue reproduce with the latest release?
yes
What operating system and processor architecture are you using (go env)?
go env Output
seth@snoopy:~/dev/go/src/github.com/sbromberger/test$ go env
GOARCH="amd64"
GOBIN=""
GOCACHE="/Users/seth/Library/Caches/go-build"
GOEXE=""
GOFLAGS=""
GOHOSTARCH="amd64"
GOHOSTOS="darwin"
GOOS="darwin"
GOPATH="/Users/seth/dev/go"
GOPROXY=""
GORACE=""
GOROOT="/usr/local/Cellar/go/1.12.1/libexec"
GOTMPDIR=""
GOTOOLDIR="/usr/local/Cellar/go/1.12.1/libexec/pkg/tool/darwin_amd64"
GCCGO="gccgo"
CC="clang"
CXX="clang++"
CGO_ENABLED="1"
GOMOD=""
CGO_CFLAGS="-g -O2"
CGO_CPPFLAGS=""
CGO_CXXFLAGS="-g -O2"
CGO_FFLAGS="-g -O2"
CGO_LDFLAGS="-g -O2"
PKG_CONFIG="pkg-config"
GOGCCFLAGS="-fPIC -m64 -pthread -fno-caret-diagnostics -Qunused-arguments -fmessage-length=0 -fdebug-prefix-map=/var/folders/2s/2yph0ncn3cd9myvzw2cn8l_w0000gn/T/go-build449639304=/tmp/go-build -gno-record-gcc-switches -fno-common"
What did you do?
started gopls via vim-lsp with -logfile /tmp/gopls.log and opened a file with the following code: https://play.golang.org/p/h-brfsSp7cj
What did you expect to see?
I expected to see gopls notify of one error (line 11) and one warning (line 6).
What did you see instead?
Error was detected; warning was not:
[Trace - 12:17:24 PM] Sending request 'initialize - (1)'.
Params: {"rootUri":"file:///Users/seth/dev/go/src/github.com/sbromberger/test","capabilities":{"workspace":{"applyEdit ":true}},"rootPath":"/Users/seth/dev/go/src/github.com/sbromberger/test","processId":17906,"trace":"off"}

[Trace - 12:17:24 PM] Received response 'initialize - (1)' in 1ms.
Params: {"capabilities":{"textDocumentSync":{"openClose":true,"change":1},"hoverProvider":true,"completionProvider":{"triggerCharacters":["."]},"signatureHelpProvider":{"triggerCharacters":["(",","]},"definitionProvider":true,"codeActionProvider":true,"documentFormattingProvider":true,"documentRangeFormattingProvider":true,"typeDefinitionProvider":true},"custom":null}

[Trace - 12:17:24 PM] Sending notification 'initialized'.
Params: {}

[Trace - 12:17:24 PM] Sending notification 'textDocument/didOpen'.
Params: {"textDocument":{"uri":"file:///Users/seth/dev/go/src/github.com/sbromberger/test/test.go","version":1,"languageId":"go","text":"package main\n\nfunc test(a int) bool {\n\tif a == 5 {\n\t\treturn true\n\t} else {\n\t\treturn false\n\t}\n}\nfunc main() {\n\ta := 6\n}\n"}}

[Trace - 12:17:24 PM] Received notification 'textDocument/publishDiagnostics'.
Params: {"uri":"file:///Users/seth/dev/go/src/github.com/sbromberger/test/test.go","diagnostics":[{"range":{"start":{"line":10,"character":1},"end":{"line":10,"character":2}},"severity":1,"source":"LSP","message":"a declared but not used"}]}

After discussion with @stamblerre , I understand that gopls does not (yet?) support linting. This is why the warning isn't showing up.


Create Project From Database fails when launched without DB context

The code checks to see if the connection profile is undefined, but a property is getting set on it unexpectedly, so the undefined check doesn't trigger, and an incomplete connection profile is getting passed to the connection service instead of skipping that flow.
Proposed fix: update conditional to check that the object is defined && that the connection profile at least has a the server set

verified this is fixed with the latest RC build and new version of the sql projects extension from the RC build drop


Refactor Nix build logic

Game version is now inferred from the pack.mcmeta.
Necessary files are automatically included
Moved the builder to its own mkDerivation wrapper function

The new builder logic is easier to extend in the future and better documented. It's also possible for other people to use it.
Still to do:

[x] Add an example and template to the repository with built in GitHub CI
[x] More documentation, put a basic intro in the readme
[x] Improve logic for the builder, maybe take some inspiration from buildGoApplication

[ ] Add a check that, if supported_formats exists, the minimum is the pack_format
[ ] Add logic for if there is an unknown pack format (currently just fails)

Actually, I can get around to that at some point in the future. Going to merge this now because it works.


Do not store a temporary file

Great article and tutorial @davidefiocco!
Just a tiny detail but I'm pretty sure you can just send the binary data from the image using https://pillow.readthedocs.io/en/latest/reference/Image.html#PIL.Image.Image.tobytes and a raw starlette.Response
Would love to read more about those subjects in the future!

Hi @julien-c ! Thanks for your interest and feedback.
That's a good point, those tempfiles would eventually accumulate and crash the container...
Following your suggestion, I tried as a possibly better solution:
bytes_io = io.BytesIO()
segmented_image.save(bytes_io, format='PNG')
return Response(bytes_io.getvalue(), media_type="image/png")

Let me know if this looks OK or you have better options in mind: I avoided using to_bytes because it returns the raw image data from the internal storage, and in my attempts the annotated image didn't render fine in the FastAPI documentation page.

Oh yeah, looks perfect that way.

Cool! I updated the post https://davidefiocco.github.io/2020/06/27/streamlit-fastapi-ml-serving.html accordingly, and I am closing this.
Thanks again @julien-c , indeed that'd be great to keep the content coming, let's see how it goes! :)


util/github: set User-Agent per API requirements

If this header is not set, the request is blocked.
See for more: https://developer.github.com/v3/#user-agent-required
Fixes #18.

/cc @vbardales in case you wanna :eyes:

Thanks! I merged it on my fork.


Don't rebuild OTP on every push to the CI server

Right now we clone and build OTP on every CI server push. This makes the builds unnecessarily slow.

We'll actually just fix this by merging all the relevant code back into OTP master.

Fixed.


Karaf version is detected using Maven.

Karaf version is detected using Maven. Previously there was constant 2.4.2 in the code. The user has to specify a version of Karaf container in the case he wants to test against custom Karaf container.

It is because it was possible to set the Karaf version using this property even before my PR. I wanted it to be backward compatible. However, maybe I should change it to karaf.version to be more consistent with other settings. What is your opinion Peter?

I am not sure that property was actually used at all (we were always using the Karaf version defined in the project). I would go with changing the property to karaf.version.

Ok, I've renamed that system property.

Merged into master. Let me know if this needs to go into 6.3.x as well (the cherry-pick wasn't clean, so there are probably some other commits missing).


current version still has broken scrolling

i cannot scroll and the video is automatically paused

This should be fixed in the latest version (2.6)


should package.json main be index.js ?

So people can also use craftyjs as a lib ?

When you use a module, it uses the main as the import anyway, does it not? If you require craftjs it'll load app.js.
app.js however does not do a module.export.

I would suggest that index.js exports all our types and factory functions, and app.js requires './index.js' or '.'

yes that's what we do. Hence the issue.


After Upgrading to 24.25.0, Still receive Unable to write content to request stream; content would exceed Content-Length on Schema Export

I originally had a Oct 2023 version of bc2adls.  Unfortunately BC was upgraded to V24 and I experienced the following issue when exporting the schema:
"Unable to write content to request stream; content would exceed Content-Length"
From other issues logged, my understanding is that this would be resolved with the latest version of bc2adls.  Our BC developers have now upgraded to version 24.25.0 and after upgrading to this version in my test environment, I am still experiencing this error.

I also uninstalled and reinstalled the bc2adls, but this did not resolve the error message.

I've also tried a fresh install on another sandbox and still get the same error message

Hi @greglong1 very strange. It should be resolved with pull request https://github.com/Bertverbeek4PS/bc2adls/pull/108/files
I also cannot reproduce it.
But could you change your lakehouse and workspace to the guids? Because that is also a change that we have made later on. You cannot have spaces etc in the name.
Otherwise maybe arrange a call if the guids also not working. Then I can debug it.

@greglong1 just did a try with exact the same setup as in your picture. But exporting the schema en the data is successfull. No errors.

@Bertverbeek4PS - I tested entering the guids but still the same error and have check the Entra Application setup.  I will go back to our BC developers to ensure that the code from pull 108 has been included.  If still no joy we may need to arrange a call.  Thanks for your time.  Greg

@Bertverbeek4PS - our BC developers have provided an updated version of 24.25.0 and in initial testing I no longer get the error message.  Will close this issue.  Bert - many thanks for your assistance.


error when downloading on atom 1.0

I receive the following error when I try to download a folder:
C:\Users\XXXXX\.atom\packages\SFTP-deployment\lib\observers\MessageObserver.js:47

I'm using atom 1.0.
Please fix this, because I like the idea of your package very much!
Thank!

Hi @n9iels ,
This issue is fixed.


WebP AlbumArt doesn't show as background.

Versions

foobar2000 version: 1.8
OpenLyrics version: 2.0

Steps to reproduce
Expected behavior
Debug logs
Opening track for playback: "...\Busta Rhymes\Busta Rhymes - Calm Down (Audio) ft. Eminem.mp3"
Opening track for playback: "...\NF\CLOUDS.mp3"
Opening track for playback: "...\Busta Rhymes\Busta Rhymes - Calm Down (Audio) ft. Eminem.mp3"
WARN-OpenLyrics: Failed to load album art image

Additional information

There is almost no info in this issue (no debug logs of it failing, no example images, nothing to demonstrate that fb2k itself supports webp album art, etc).
If you're not even going to put in a minimal amount of effort to demonstrate the issue you want fixed, then I'm not going to feel particularly strongly compelled to put in the effort to implement the change you're requesting.

@jacquesh please check the main thread i have added all info you asked for

WebP support in 3rd party components has nothing to do with fb2k itself. The changelog explicitly says "Default UI, properties dialog".
It's always been possible for developers to display WebP but it's up to them to decode the album_art_data_ptr they retrieve from various SDK methods.
As an example, I do it with libwebp here...
https://github.com/jscript-panel/Helpers/blob/6e9467f7bd0d6a97f36916ddc66d6c34d53c3fa1/ImageHelpers.cpp#L59-L77
It's also possible using the windows imaging component.
https://learn.microsoft.com/en-us/windows/win32/wic/-wic-about-windows-imaging-codec
WebP is supported natively on windows 10 and later.
An example of that is here...
https://github.com/jscript-panel/Helpers/blob/6e9467f7bd0d6a97f36916ddc66d6c34d53c3fa1/ImageHelpers.cpp#L46-L57
In that 2nd example, I have to go from album_art_ptr -> IStream first.

@jacquesh please fix this one

In the next release we use the windows imaging decoder, which supports WebP but you will need to have the WebP Image Extensions installed from the Microsoft store.
Thanks for the pointers @marc2k3 :)

For those not on windows 10/11 or don't use the store, this can be installed to enabled WebP via WIC as well...
https://storage.googleapis.com/downloads.webmproject.org/releases/webp/WebpCodecSetup.exe


16 update pr gate

@Jannikwendt The problem is that the rasa chatbot is not in the top level directory but in two subdirectories. Our only option so far is to move the whole chatbot into the top level directory. Because the github/workflow directory has to be in the source directory as well. See their structure: https://github.com/RasaHQ/rasa-demo/blob/main/.github/workflows/continuous_integration.yml


Less GC when reading floats and doubles thanks to a pool of byte[] + Removed a unnecessary array creation and destruction

Pull request created after a petition from @RevoluPowered. I hope it helps
I was having a little issue with some kilobytes of gc because I was reading floats that where displaced (not byte aligned) in the buffer.
See @Inverness comment
Readstring will generate garbage only if it doesn't fit on the saved buffer
The removed unnecessary array creation+destruction is due to the array being only readed inside an internal method, so no copies of it are needed

Thank you for firing this my way! I really appreciate it.


Update influx_tsm to use a backup directory

To prevent clobbering a database that a user might have named foo.bak, the conversion tool will now require that the backup directory be external to the data directory.

Can you update changelog and note that this fixes #5469.  Otherwise, :+1:

@joelegasse lgtm, just need the CHANGELOG fix @jwilder mentioned


Adding grocery static template

Description
I fixed this issue #490
I made a static grocery template page using HTML,CSS and javascript.
Type of change
Add Project
ATTACH SCREEN-SHOTS / DEPLOYMENT LINK

@AsmaIbrahimButt

Reopen this PR when ready

Hi @astha2412 Kindly review a pull request.Thanks

@AsmaIbrahimButt make it responsive

Reopen this when ready


Hardware dashboard reference document

Summary of changes:

Added reference document for the new Hardware Dashboard
Added navigation link to the sidebar nav
Added screenshots

This change is

http://cockroach-docs-review.s3-website-us-east-1.amazonaws.com/25bbb33be45e15e1d0244312e2fffd7f274e1c13/

http://cockroach-docs-review.s3-website-us-east-1.amazonaws.com/ce992cc77e72ff43349c4e872ba9e3e237a98e40/

http://cockroach-docs-review.s3-website-us-east-1.amazonaws.com/85ddd209c16bf75815092d92971fe027f4b2de86/

v2.1/admin-ui-hardware-dashboard.md, line 83 at r3 (raw file):
Previously, lhirata wrote…
Bold Capacity, Available, and Used since you're referring to the different metrics

Ummm...not sure why we would do that? :thinking:

v2.1/admin-ui-hardware-dashboard.md, line 47 at r2 (raw file):
Previously, lhirata wrote…
Suggested reword (for whenever you do try to make this clearer): "[...] the graph shows the current moving average of the number of bytes read per second by all processes (including CockroachDB) for the selected node. The average is taken across the last 10 seconds."

Ooh..just found the term "10-second moving average". Rewording our phrase: " [... ]the 10-second moving average of the number of bytes read per second [...]". Does that sound better?

v2.1/admin-ui-hardware-dashboard.md, line 47 at r2 (raw file):
Previously, lhirata wrote…
:thumbsup:

Discussion with Pete: It's not a 10-second moving avg; it is an "average over a 10-second window".

v2.1/admin-ui-hardware-dashboard.md, line 27 at r3 (raw file):
Previously, lhirata wrote…
Might be clearer to say "[...] used by the CockroachDB system calls for the selected node." Not sure if it changes the meaning though.

Discussion with Pete: Needs further reading (it's not the making of calls that takes time, it's the time required for completing the calls)

http://cockroach-docs-review.s3-website-us-east-1.amazonaws.com/394bb7d59ad5b374f7611c39d7a0223dc5610ac0/

v2.1/admin-ui-hardware-dashboard.md, line 47 at r2 (raw file):
Previously, Amruta-Ranade (Amruta Ranade) wrote…
Discussion with Pete: It's not a 10-second moving avg; it is an "average over a 10-second window".

Confirmed with Matt T.: It is a 10-second average.
Making that change everywhere relevant.

http://cockroach-docs-review.s3-website-us-east-1.amazonaws.com/f8b0cf925eb3ddb0e2b76c3a1990f77bf628cc5d/

@lhirata I have made the changes you requested. Can you please confirm?
@jseldess Ready for your review!

http://cockroach-docs-review.s3-website-us-east-1.amazonaws.com/59d6ecbb5021b81006e9ee86f6d1d279a022e2da/

http://cockroach-docs-review.s3-website-us-east-1.amazonaws.com/09a0637b5577064778c7725a15096c830233b9e6/

v2.1/admin-ui-hardware-dashboard.md, line 7 at r5 (raw file):

---

The **Hardware** dashboard lets you monitor CPU usage, disk throughput, network traffic, storage capacity, and memory. To view this dashboard, [access the Admin UI](admin-ui-access-and-navigate.html#access-the-admin-ui), click **Metrics** on the left-hand navigation bar, and then select **Dashboard** > **Hardware**.

One more thought, @Amruta-Ranade: Instead of or in addition to listing the types of metrics on this dashboard, the intro should probably make it clear why you would use this, what types of insights you would glean from it. I'd suggest looking at the airtable record, specifically the user stories there. @piyush-singh can probably help, too.

http://cockroach-docs-review.s3-website-us-east-1.amazonaws.com/3cb6cd86022a59bbc3718ec9f200cfd3a472602e/

@jseldess Created a tracking issue for Admin UI follow-up work: https://github.com/cockroachdb/docs/issues/3429

http://cockroach-docs-review.s3-website-us-east-1.amazonaws.com/5413d29852d5181fcfc8b57e09499ac06218c5e1/


add default for kotlin-language-server cmd

It is not that easy to find out what needs to happen for the language server command to be picked up. I think this can help a lot of newcomers to quickly get started with Kotlin and the language client.

hmm. i retried the builds but they keep failing...

It's weird, the linter fails because of a permission problem, it seems, and the test on macOS because some dependencies area already installed :-/ Is there a way for me to run the linter locally at least?

the permissions issue was fixed, please rebase...

CI should be fixed if you rebase.
@thchha was there a reason for not including a default cmd ? What config are you using personally?

@justinmk, I rebased and it worked :)

@jan-xyz Thank you for your PR.
I added support Windows commit to your PR and merged it.


Add organizational Unit to the Dashboard

Add organizational Unit to the Dashboard

@KellyeDC @grawdon This task is completed. We added organizational Unit to the Dashboard for Super User/Admin role.
It does not make sense to add organizational Unit to the Dashboard for State admin because State admin can see only users related to that state by default. Editor and Author can not see other users by default.


Lightning Terminal error when trying to create custodial account on version v1.9.0rc5

When I try to create a custodial account on the Lightning Terminal I get a error: "Unable to register custodial account, proxy error with context lit: invalid macaroon: permission denied" on the Raspiblitz version v1.9.0rc5.

Steps to reproduce:
https://docs.lightning.engineering/lightning-network-tools/lightning-terminal/accounts#docs-internal-guid-587703e5-7fff-5b2b-8389-3bd9e7bf6d0b

@guggero I created fresh macaroons but still getting this error - can you give an hint what else to try to make this this work?

@guggero I did a complete refresh of all lnd macaroons - especially the admin.macaroon that is named in litd.conf with remote.lnd.macaroonpath=/home/lit/.lnd/data/chain/bitcoin/mainnet/admin.macaroon, still the same error - where are the litd macaroons are located

Not sure where they are on RaspiBlitz, the default location is ~/.lit/<network>/lit.macaroon.

Yes, you can bake a new one (see lncli listpermissions and lncli bakemacaroon) and then delete the old one.

@guggero Thx.
TODO for v1.10.0: rewrite lnd.credentials.sh to rebacke/sync macaroons without restarting lnd

Solution so far: On RaspiBlitz SSH menu under "CONNECT > RESET" which then will also reset the litd macaroon now.


MaxListenersExceededWarning

Latest version causing warnings as below. added to node settings "--trace-warnings" to get the output as below.
(node:3218) MaxListenersExceededWarning: Possible EventEmitter memory leak detected. 11 message listeners added to [Socket]. Use emitter.setMaxListeners() to increase limit
at _addListener (node:events:595:17)
at Socket.addListener (node:events:617:10)
at UdpDiscoveryNetworkFactory.createRawMessages (/usr/lib/node_modules/homebridge-playstation/node_modules/playactor/dist/discovery/udp.js:132:16)
at UdpDiscoveryNetworkFactory.createMessages (/usr/lib/node_modules/homebridge-playstation/node_modules/playactor/dist/discovery/udp.js:113:21)
at UdpDiscoveryNetworkFactory.createDevices (/usr/lib/node_modules/homebridge-playstation/node_modules/playactor/dist/discovery/udp.js:148:21)
at /usr/lib/node_modules/homebridge-playstation/node_modules/playactor/dist/discovery/standard.js:16:99
at Array.map ()
at Object.createDevices (/usr/lib/node_modules/homebridge-playstation/node_modules/playactor/dist/discovery/standard.js:16:76)
at Discovery.discover (/usr/lib/node_modules/homebridge-playstation/node_modules/playactor/dist/discovery.js:22:45)
at PendingDevice. (/usr/lib/node_modules/homebridge-playstation/node_modules/playactor/dist/device/pending.js:61:55)
at Generator.next ()
at /usr/lib/node_modules/homebridge-playstation/node_modules/playactor/dist/device/pending.js:8:71
at new Promise ()
at __awaiter (/usr/lib/node_modules/homebridge-playstation/node_modules/playactor/dist/device/pending.js:4:12)
at PendingDevice.resolve (/usr/lib/node_modules/homebridge-playstation/node_modules/playactor/dist/device/pending.js:55:16)
at PendingDevice. (/usr/lib/node_modules/homebridge-playstation/node_modules/playactor/dist/device/pending.js:37:41)

I have the same issue.

This is not an error, it's just a warning.


Metrabs TensorRT

Hey István,
congrats on these great results and thanks for providing an easy-to-use way to run your models, exceptional work :)
I really like the result I get and just like everyone else in the issues, I would like to run it in real-time.
My approach was to squeeze out some speed-ups using TensorRT and its new tf-trt capability. At least for the resnet-style models, I'd expect a speed-up on the order of 10x. According to Nvidia the same should hold true for efficientnet-type models.
A tensorflow SavedModel can directly be optimized and converted into a TensorRT model using just a few lines of code:
import tensorflow as tf
from tensorflow.python.compiler.tensorrt import trt_convert as trt

converter = trt.TrtGraphConverterV2(input_saved_model_dir='models/eff2s_y4_short_sig')
converter.convert()
converter.save('models/eff2s_y4_trt')

In order for this conversion to know what to do, a default signature needs to be defined.
This can be achieved with the following:
import tensorflow as tf
model_folder = 'models/metrabs_eff2s_y4/'
out_fold='models/eff2s_y4_short_sig'
model = tf.saved_model.load(model_folder)

@tf.function()
def my_predict(my_prediction_inputs, **kwargs):
    prediction = model.detect_poses(my_prediction_inputs)
    return {"prediction": prediction['poses3d']}

my_signatures = my_predict.get_concrete_function(
   my_prediction_inputs=tf.TensorSpec([None,None, 3], dtype=tf.dtypes.uint8, name="image"))

tf.saved_model.save(model, out_fold, signatures=my_signatures)

(coincidentally, this might be a solution to the tensorflow-lite question in the issues? I haven't tried it, but just a hunch.)
Unfortunately, the conversion segfaults :D I know that this is rather an issue on Nvidia's side, but maybe we can still get this to work. I suspect that the augmentations you perform on the model in the Packaging Model section of your readme might be throwing tf-trt off.
Next, I tried to investigate this issue a little further by trying to look under the hood of the packaged SavedModel. I used
tensorflow's import_pb_to_tensorboard.py and tried to inspect the result in tensorboard.
$ python import_pb_to_tensorboard.py --model_dir models/eff2s_y4_short_sig/saved_model.pb --log_dir log
$ tensorboard --logdir log

Unfortunately again, tensorboard was not capable of displaying the computation graph and I suspect the reason is again the usage of tf.functions, but I am not sure.
What I would like to try is to convert one of your trained metrabs-models into TensorRT and take a look at the speed-up. Would it be possible for you to share a checkpoint file? or the un-augmented SavedModel as exported here: https://github.com/isarandi/metrabs/blob/master/src/main.py#L242 ? Maybe for metrabs_eff2l_y4, metrabs_eff2s_y4, metrabs_rn152_y4, and metrabs_rn18_y4 to see and compare how backbone and depth affect the inference time?

I run experiments on an RTX3090 and timed the following from a video with 1 person running on a treadmill (1000 frames)
Just like in issue #25, here some current timings for varying batchsizes:

bbone
det
bs
load
full_time
tfirst (batch)
tmean (batch)
t/sample

eff2l
y4
1
79.35
82.27
33221.14
149.97
149.97

eff2l
y4
8
73.74
108.03
31397.86
279.74
34.97

eff2l
y4
16
73.74
75.5
466.06
480.87
30.05

eff2l
y4
32
79.21
82.64
938.29
885.90
27.68

eff2l
y4
64
79.21
93.92
1853.03
1801.76
28.15

eff2l
y4
128
79.21
129.32
36806.45
3976.91
31.07

eff2l_360
y4
1
72.96
78.12
29512.30
148.57
148.57

eff2l_360
y4
8
67.72
102.14
29740.10
293.71
36.71

eff2l_360
y4
16
67.72
73.92
444.92
493.19
30.82

eff2l_360
y4
32
70.2
85.18
955.17
910.69
28.46

eff2l_360
y4
64
70.2
90.43
1857.24
1856.95
29.01

eff2l_360
y4
128
70.2
121.25
33749.48
4055.34
31.68

eff2m
y4
1
57.41
69.7
22034.85
129.54
129.54

eff2m
y4
8
69.28
102.92
22930.01
345.51
43.19

eff2m
y4
16
69.28
73.59
371.38
391.84
24.49

eff2m
y4
32
75.41
79.76
804.21
717.96
22.44

eff2m
y4
64
75.41
90.09
1455.46
1485.78
23.22

eff2m
y4
128
75.41
115.63
23679.09
3401.27
26.57

eff2s
y4
1
39.24
64.93
16928.48
119.87
119.87

eff2s
y4
8
37.01
87.53
17234.22
208.43
26.05

eff2s
y4
8
46.17

39025.55
210.69
26.34

eff2s
y4
16
37.01
70.84
444.42
341.08
21.32

eff2s
y4
32
42.79
77.82
863.95
642.54
20.08

eff2s
y4
64
42.79
89.46
1614.69
1343.52
20.99

eff2s
y4
128
42.79
113.12
26511.61
2976.25
23.25

mob3l
y4
1
28.05
78.2
21949.89
95.03
95.03

mob3l
y4
8
32.06
86.01
19962.75
165.93
20.74

mob3l
y4
16
32.06
81.02
244.84
260.80
16.30

mob3l
y4
32
27.17
79.88
597.45
498.05
15.56

mob3l
y4
64
27.17
91.02
1159.92
1111.80
17.37

mob3l
y4
128
27.17
118.33
22417.67
2577.09
20.13

mob3l
y4t
1
21.57
47.48
9542.37
52.28
52.28

mob3l
y4t
8
21.03
72.27
9644.42
131.21
16.40

mob3l
y4t
16
21.03
66.23
190.44
169.23
10.58

mob3l
y4t
32
21.61
71.97
392.98
350.23
10.94

mob3l
y4t
64
21.61
82.26
676.51
717.93
11.22

mob3l
y4t
128
21.61
90.92
11668.84
1856.07
14.50

mob3s
y4
1
24.16

52083.48
10969.11
10969.11

mob3s
y4
8
23.7
99.66
22361.51
158.68
19.83

mob3s
y4
16
23.7
76.41
253.11
260.37
16.27

mob3s
y4
32
23.7
81.05
510.25
498.53
15.58

mob3s
y4t
1
15.92
51.66
15179.46
50.78
50.78

mob3s
y4t
8
15.84
82.27
14242.68
124.19
15.52

mob3s
y4t
16
15.84
60.38
160.62
173.93
10.87

mob3s
y4t
32
15.74
73.8
333.28
337.94
10.56

mob3s
y4t
64
15.74
83.16
606.98
718.15
11.22

mob3s
y4t
128
15.74
100.41
16325.95
1875.85
14.66

rn101
y4
1
45.55
69.32
23703.08
113.88
113.88

rn101
y4
8
42.32
94.27
23748.03
220.17
27.52

rn101
y4
16
42.32
73.14
315.59
354.65
22.17

rn101
y4
32
41.79
79.59
724.29
651.06
20.35

rn101
y4
64
41.79
89.47
1337.07
1321.07
20.64

rn101
y4
128
41.79
113.91
27209.60
3061.64
23.92

rn152
y4
1
56.9
77.51
30653.02
127.11
127.11

rn152
y4
8
54.83
106.07
30717.84
225.73
28.22

rn152
y4
16
54.83
75.51
361.81
376.26
23.52

rn152
y4
32
54.83
72.16
1059.79
694.71
21.71

rn18
y4
1
21.07
75.61
21613.34
90.91
90.91

rn18
y4
8
20.3
93.12
21005.99
157.36
19.67

rn18
y4
16
20.3
73.78
246.42
256.46
16.03

rn18
y4
32
20.24
80.91
531.65
489.85
15.31

rn18
y4
64
20.24
91.2
1011.25
1059.32
16.55

rn18
y4
128
20.24
113.03
23795.51
2535.79
19.81

rn34
y4
1
28.04
64.76
20548.91
97.98
97.98

rn34
y4
8
28.28
94.69
19514.33
171.81
21.48

rn34
y4
16
28.28
72.13
250.87
270.24
16.89

rn34
y4
32
28.37
78.21
587.16
526.36
16.45

rn34
y4
64
28.37
93.74
1143.86
1150.37
17.97

rn34
y4
128
28.37
112.3
21840.20
2724.95
21.29

rn50
y4
1
36.97
69.86
25330.24
99.48
99.48

rn50
y4
8
35.58
89.12
23896.04
179.18
22.40

rn50
y4
16
35.58
80.06
289.07
299.34
18.71

rn50
y4
32
35.58
78.47
605.76
567.36

(full_time and load in s, rest in ms)
As was expected: batching up the computations leads to significant speed-up. Unfortunately this will not be feasible with low latency in a real-time processing fashion. The fastest model for batchsize=1 was mob3s_y4t with 50ms. I would like to get below 30ms or even 15ms using TensorRT.
What do you think? Is this a good avenue to go down, or should I try something other than TensorRT?
Thanks!
Tobi

Thanks a lot for the detailed analysis! I will try to come back to this soon, but meanwhile what you can do is perhaps extract out the raw model from the convenient "packaged" one, and try to make that run under TensorRT. If that works, we can look at which part of the surrounding code is the culprit.
So you can try
model = tf.saved_model.load(...)
tf.saved_model.save(model.crop_model, 'somepath')

Then try to work with this newly saved model. You can check the interface of this resulting model at the API readme.
Part of the story may be that I saved the full model with options=tf.saved_model.SaveOptions(experimental_custom_gradients=True) or perhaps something with tf.raw_ops.ImageProjectiveTransformV3.

@tobibaum ,have you solved  how to get the real time fps ?
i run it in ubuntu18+2080ti+tf2.6+cuda11.2+cudnn8.1+model.estimate_poses, the fps is 10f/s,
now i will change to use the gpu:3090 to test it in win10 and ubuntu18,
are you sucessful in TensorRT ?
if sucess, how ?

Thanks a lot for the detailed analysis! I will try to come back to this soon, but meanwhile what you can do is perhaps extract out the raw model from the convenient "packaged" one, and try to make that run under TensorRT. If that works, we can look at which part of the surrounding code is the culprit.
So you can try
model = tf.saved_model.load(...)
tf.saved_model.save(model.crop_model, 'somepath')

Then try to work with this newly saved model. You can check the interface of this resulting model at the API readme.
Part of the story may be that I saved the full model with options=tf.saved_model.SaveOptions(experimental_custom_gradients=True) or perhaps something with tf.raw_ops.ImageProjectiveTransformV3.

can you make a demo.py about it, i have seen the api, but it is too brief

@isarandi thanks for the great pointers! My current approach is to build the backbone model (effnet-l) using your original training code and then copying over the trained model weights from savedmodels in your model zoo.
With that, I am able to create an onnx version of the backbone and compare speed-ups in c++ using tiny-tensorrt.
I loosely follow the nvidia-tutorial to do so

load trained model weights

model = tf.saved_model.load(model_folder)
vars = model.crop_model.variables

create blank effnet model

from backbones.efficientnet.effnetv2_model import *
import backbones.efficientnet.effnetv2_utils as effnet_util
import tfu
effnet_util.set_batchnorm(effnet_util.BatchNormalization)
tfu.set_data_format('NHWC')
tfu.set_dtype(tf.float16)
mod = get_model('efficientnetv2-s', include_top=False, pretrained=False, with_endpoints=False)

copy over trained weights:

new_vars = mod_met.variables
var_dict = {v.name: [v, i] for i, v in enumerate(vars)}
var_dict_new = {v.name: [v, i] for i, v in enumerate(new_vars)}
inds = [var_dict[k][1] for k in var_dict_new.keys() if k in var_dict]
print(len(var_dict_new))
print(len(inds))

missing_keys = set(var_dict.keys()) - set(var_dict_new.keys())
rev_missing_keys = set(var_dict_new.keys()) - set(var_dict.keys())

print(missing_keys)
print(rev_missing_keys)
for m in missing_keys:
    d = var_dict[m][0]
    print(d.name, d.shape)
pick_vars = [vars[i] for i in inds]
print(len(pick_vars))

mod_met.set_weights(pick_vars)

save model with proper signature

@tf.function()
def my_predict(my_prediction_inputs, **kwargs):

    prediction = model([my_prediction_inputs], training=False)
    return {"prediction": prediction}

my_signatures = my_predict.get_concrete_function(
   my_prediction_inputs=tf.TensorSpec([256, 256, 3], dtype=tf.dtypes.float32, name="image")
)

tf.saved_model.save(mod, out_fold, signatures=my_signatures)

convert to onnx (install tf2onnx first)

$ python -m tf2onnx.convert  --saved-model effnet_raw_sig --output effnet.onnx

optimize runtime plan according to nvidia-tutorial

run inference in c++ with tiny-tensorrt.

@gao123qiang I will update this issue, once I had some more success on the full pipeline. The above is just my current approach to determine whether the efficientnet backbone can be sped up a sufficient amount w/ tensorrt. from my preliminary tests (no guarantee) I get the following timings:
c++ API just the efficientnet backbone (256x256x3 -> 1x8x8x1280) in
tensorflow: 25~30ms per image
tensorrt: 3~5ms.
There is of course some more overhead with image preprocessing and output post processing (plus running the metrabs head), but overall I think this looks promising.
I will update the issue, once I get a real-time system running (or abandoned the approach).
Please feel free to share any thoughts or experiments you perform to speed this whole thing up :)

thank you, i will test it.
Looking forward to your update !

@tobibaum ,
i have seen the nvidia-tutorial  and you provided,
main: savedModel --> .pb --> .onnx
the mod_met in step2 is keras.models.clone_model(model).crop_model ?
in step3, the input shape is 2562563, can i change the size ?

Hey @gao123qiang ,
if I understand correctly, the backbones of the overall models are trained on 256x256 patches. Since they are not fully convolutional nets, they therefore depend on the input being of that same size. in the packaging section of the readme, the author first describes how the metrabs core model is packaged to run on 256x256 images.

My above comments were a guideline on how to dig into the metrabs model and investigate for potential speed-ups. You will not be able to get reasonable results by following my steps.

@tobibaum,
your aproach looks very promising. Is there any progress in your approach?

I finally have a working version of my approach. I had to perform some major surgery on the provided models, but I confirmed, that the results stay approximately the same, just at higher speeds. (I use a 3rd party yolo, thus the crops and everything downstream will slightly differ). Here's what I did:
Split the saved_model into:

detection (accelerate with TensorRT)
backbone (accelerate with TensorRT)
metrabs head (run as is)

I was then able to convert the first two into tensorrt models. the metrabs head have some operations in them that tensorrt does not like, but since they are just the last layer and some function wrappers, they run very fast in tensorflow using the C-API.
I then wrapped these three models in C++ code and get the following timings on an RTX2070:

model
fps

efficientnet-l
37

efficientnet-s
50

resnet50
58

resnet152
45

check it out:
https://github.com/tobibaum/metrabs_trt
@isarandi it would be great, if you could have a look over my approach and check whether I made any breaking mistakes. thanks!!

good job

@tobibaum Thank you very much for you great how to!
With your help, I was able to generate the onnx and plan file of the backbone. Until now, I did not the last step (Compile Your C++ Version). I would prefer a python version because otherwise I have to build a cpp extension for that. For my python version I used the engine and inference code of the Nvidia tutorial. But now I get the error
[01/06/2022-14:52:12] [TRT] [I] [MemUsageChange] Init cuBLAS/cuBLASLt: CPU +0, GPU +8, now: CPU 7518, GPU 9372 (MiB)
[01/06/2022-14:52:12] [TRT] [I] [MemUsageChange] Init cuDNN: CPU +0, GPU +10, now: CPU 7518, GPU 9382 (MiB)
[01/06/2022-14:52:12] [TRT] [I] [MemUsageChange] TensorRT-managed allocation in IExecutionContext creation: CPU +0, GPU +27, now: CPU 0, GPU 248 (MiB)
[01/06/2022-14:52:12] [TRT] [E] 1: Unexpected exception

Cuda, Tensorrt and all other needed libraries are natively installed on my system. The outgoing data consists completely of zeros and there is no error in the python code. Do you have experience with that?
Does this approach also work if I set a dynamic input size in the signature? In my use case I have to change my batch size dynamically during runtime. Sorry for these questions but tensorrt is completely new to me.
In the next step, I will try your c++ version. Maybe that works for me.

Hey @Basti110 ,
unfortunately I cannot tell what the error might be here. could you try to run the nvidia inference engine with their models to pinpoint whether the problem is in the setup or the compiled model?
cheers!

Hey,
I think it is only a problem in the python enviroment. The C++ version with tiny-tensorrt works! Thank You.

Thanks for testing my implementation :)


Using StackNavigator inside scrollview

Hello,
I'm using a stack navigator inside of a scrollview to take benefit of rendering the same component on multiple screens.
The thing is that the stackNavigator is not filling the scrollview space but only the visible space, something problably related to https://medium.com/@peterpme/taming-react-natives-scrollview-with-flex-144e6ff76c08.
Which cause the content of the stack navigator being cut in the middle (when screen size is reached)
I don't know where it's located, but using flexGrow instead of grow, should fix the issue…
import CountryXFullLiveBanner from "@modules/ghjgj/components/CountryXFullLiveBanner";
import AllTeams from "@screens/main/teams/AllTeams";
import MyTeam from "@screens/main/teams/MyTeam";
import React from "react";
import { View } from "react-native";
import {
  getActiveChildNavigationOptions,
  NavigationComponent,
  NavigationParams,
  NavigationScreenConfigProps,
  ScrollView,
} from "react-navigation";
import { createStackNavigator } from "react-navigation-stack";
import { createMaterialTopTabNavigator } from "react-navigation-tabs";
import DetailledTeamNavigator from "./team/DetailledTeamNavigator";
import { AppScreens } from "./types";
import { tabsUi } from "./ui/helpers";

const MyTeamAllTeamNavigator = createMaterialTopTabNavigator(
  {
    [AppScreens.TeamsMyTeam]: MyTeam,
    [AppScreens.TeamsAllTeams]: AllTeams,
  },
  {
    tabBarOptions: tabsUi,
  },
);

const TeamStackNavigator = createStackNavigator(
  {
    MyTeamAllTeamNavigator,
    [AppScreens.ModalTeamFull]: DetailledTeamNavigator,
  },
  {
    defaultNavigationOptions: () => ({
      gesturesEnabled: false,
      header: null,
    }),
    mode: "card",
  },
);

TeamStackNavigator.navigationOptions = (props: NavigationScreenConfigProps) => ({
  tabBarLabel: props.screenProps.t("nav.teams.root"), // Set the label in the bottom navigation bar (Always TEAMS)
  // Get from child or fallback to TEAMS
  title: getActiveChildNavigationOptions(props.navigation, props.screenProps).title || props.screenProps.t("nav.teams.root"),
});

const TeamNavigatorContainer: NavigationComponent = (props: NavigationParams) => {
  return (
    <ScrollView contentContainerStyle={{ flexGrow: 1 }}>
      <CountryXFullLiveBanner isLive={false} />
      <TeamStackNavigator navigation={props.navigation} screenProps={props.screenProps} />
    </ScrollView>
  );
};

// Propagate router state
TeamNavigatorContainer.router = TeamStackNavigator.router;
TeamNavigatorContainer.navigationOptions = (props: NavigationScreenConfigProps) => {
  return {
    // Get from child or fallback to TEAMS
    title: getActiveChildNavigationOptions(props.navigation, props.screenProps).title || props.screenProps.t("nav.teams.root"),
  };
};

export default TeamNavigatorContainer;

MyTeamAllTeamNavigator is not filling the space, but only the remaining in the remaining height of the screen.
Regards

I'm using a stack navigator inside of a scrollview to take benefit of rendering the same component on multiple screens

Can you give some more context please?