record_ids don't match: how to solve

Hi there,
I tried out your script, it works very well.
However, it turns out that the record_ids differ between me and my colleague.
Therefore, I cannot use the results.
Is there any automated way to update the record_ids so they match between the .csv files?
(e.g. by matching on title?)

Pleased to hear it's working nicely.
If I understand the issue correctly, the fix would involve comparing rater 1 and 2's coding based on something other than record_id. I have added a script to the scripts folder called title_match_example.r which makes the comparison on agreements etc based on the title of the paper, rather than the record_id. Let me know what you think.
If your record_id variables do not match, does that mean that you loaded in different RIS files into ASReview? In which case, it is possible that the title matching will not be perfect either. But, let me know how you get on.

Thanks for your help!
I'm trying it right now.
I get some errors:
Error in mutate():
! Problem while computing included = if_else(is.na(included), true = 0, false =   included).
Caused by error in if_else():
! false must be a double vector, not a character vector.
Run rlang::last_error() to see where the error occurred.

disagree1_df <- secon_rec_df %>%
filter(included == 1, primary_title %in% first_irrelevant_vec) %>%
select(record_id, authors, year, title, abstract) # For newer projects.
select(record_id, first_authors, publication_year, primary_title, notes_abstract) # For older projects.
Error in filter():
! Problem while computing ..2 = primary_title %in% first_irrelevant_vec.
Caused by error in primary_title %in% first_irrelevant_vec:
! object 'primary_title' not found
Run rlang::last_error() to see where the error occurred.

primary_title issue solved: is now called 'title'

  rater 1 rater 2

1 n uploaded                11579     11579
2 n reviewed                 1364       550
3 % reviewed                   11.8       4.75
4 n flagged relevant          125        99
5 n flagged irrelevant       1239       451
6 % flagged relevant            9.16     18
7 n unreviewed              10215     11029
8 n total irrelevant        11454     11480
9 % total relevant              1.08      0.85
10 n relevant v. irrelevant      0         0
11 n relevant v. unreviewed      0         0

agree(full_array)
Percentage agreement (Tolerance=0)

Subjects = 11579
Raters = 2
%-agree = 99.4

kappa2(full_array)
Cohen's Kappa for 2 Raters (Weights: unweighted)

Subjects = 11579
Raters = 2
Kappa = 0.703
    z = 76.1

p-value = 0

It seems to go wrong at comparing the two.
I've checked manually and know that

Bo à     Josien
0
1

0
11436
20

1
44     of which 35 unseen
79

Sorry for the delay - only just returned to this recently. I think this issue has now been solved (see #6 ). Let me know if you still identify a problem. Thanks a lot.

I think recent updates have resolved these issues, so closing for now.


API: make hints an attribute / property instead of method

There are no plans to pass it anything to control what is returned
and by making it an attribute it makes configuration easier.

Description

Motivation and Context

How Has This Been Tested?

Codecov Report

Merging #762 into master will not change coverage.
The diff coverage is 75%.

@@           Coverage Diff           @@
##           master     #762   +/-   ##
=======================================
  Coverage   85.71%   85.71%
=======================================
  Files          18       18
  Lines        4718     4718
=======================================
  Hits         4044     4044
  Misses        674      674

Impacted Files
Coverage Δ

bluesky/examples.py
78.71% <100%> (ø)
:arrow_up:

bluesky/run_engine.py
97.01% <33.33%> (ø)
:arrow_up:

bluesky/plans.py
94.25% <87.5%> (ø)
: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 9ccd412...47bccfd. Read the comment docs.


Wait for each sriov resource to be applied

On occasion an edge case can be reached where the initial wait for the sriov mcp to update is completed but a change is still pending, resulting in the nodes becoming 'unready' post script completion.
This results in failed CI runs due to the cluster being in an unexpected state.
Ensure each resource is successfully applied.

@bn222 resolved merge conflicts / updated to add change to client. PTAL


Swift 2.3 Compatibility

Ran Xcode 8 Project converter, no code changes were necessary.

Hi @gblotter. Can I run this library in Xcode 7.3.1 with Swift 2.3? Because I have some issues with setup requirements which is some definitions in AppDelegate.swift file.
Here is my code:
let slideMenuController = SlideMenuController(mainViewController: EntryDetailedTableViewController, leftMenuViewController: LeftActionsViewController, rightMenuViewController: RightActionsViewController)
self.window?.rootViewController = slideMenuController
self.window?.makeKeyAndVisible()

When I define this way, I encountered error like this:
Missing argument label 'coder:' in call
Why this is happening? Is this project incompatible with Swift 2.3 in Xcode 7.3.1?

@ttuygun Xcode 7.3.1 doesn't use Swift 2.3 out of the box.  Unless you've done special things to do download Swift source, etc. then that's outside of what I've done... But straight out of the box, Xcode 7.3.1 doesn't use/work with Swift 2.3

Sorry for information. I use Swift 2.2 but the error is the same.

Hi @gblotter & @ttuygun
The actual version works great with Swift 2.3 and Swift 3.
https://github.com/dekatotoro/SlideMenuControllerSwift/commit/a74a0a26c21a49dcd4ed0c24fb352a68f89eff33
Thanks

Paolo


Extract interface ISerialPortStream for better testing/mocking

For UnitTests, there are no actual Com ports and connected devices available, so in an ideal world creating a Mock (using Moq for example) requires no actual implementation, just an interface to mock.

This is now in v2.x branch after cleaning up.

@jcurl can you please publish new Nuget package with this new ISerialPortStream reflected?


SCRUM-8311:"fixed default anchor issue"

I changed galleria.history.js, so the default anchor function won't get overridden.

LGTM

Looks good


custom (my handle) tile in version 6-4-3 is not working

I have create tile source
var kmlSource = new ol.source.VectorTile(
{
//format: new ol.format.GeoJSON(),
tileLoadFunction: myTileFunction,
url: 'kml_' + feature.idLocation // arbitrary url, we don't use it in the tileLoadFunction
}
);
and in my tile Function i set features in tile. Features i take from my base. Can to answer - Whey tile function work only one time,

Hey, this kind of question might be better suited for stackoverflow, but did might need to call setLoader inside of your tile to have it called multiple times. If you are sure this is a bug, please provide some more code and idealy a fiddle on codesandbox. You can use https://openlayers.org/en/latest/examples/mapbox-vector-tiles-advanced.html as a starting point and click on edit in the upper right corner to immediately start a new codesandbox.

it happens when function  parameter url not change/ If url parameter change all working.  An it provide other problem —  not enouf memory/ In version 4 openlayers such not been

Вторник, 6 октября 2020, 19:17 +03:00 от Simon Seyock<EMAIL_ADDRESS>

Hey, this kind of question might be better suited for stackoverflow, but did might need to call setLoader inside of your tile to have it called multiple times. If you are sure this is a bug, please provide some more code and idealy a fiddle on codesandbox. You can use  https://openlayers.org/en/latest/examples/mapbox-vector-tiles-advanced.html as a starting point and click on edit in the upper right corner to immediately start a new codesandbox.
—
You are receiving this because you authored the thread.
Reply to this email directly,  view it on GitHub , or  unsubscribe .

Can you provide a reproduction of the bug on https://codesandbox.io ?

I can connect you to my computer via anydesc remote viewer And via whatsup you will show where openlayers have problem.
I have a lot data and code for sandbox

Среда, 7 октября 2020, 13:05 +03:00 от Simon Seyock<EMAIL_ADDRESS>

Can you provide a reproduction of the bug on  https://codesandbox.io ?
—
You are receiving this because you authored the thread.
Reply to this email directly,  view it on GitHub , or  unsubscribe .

I am sorry but I would not want to do this. Can you provide just a minimal example where this problem occurs? That means only the code that is necessary to reproduce this. No extra code around it. You can use https://openlayers.org/en/latest/examples/mapbox-vector-tiles-advanced.html as a starting point and click on edit in the upper right corner to immediately start a new codesandbox.


[AIRFLOW-1764] Move latest_runs api call to web ui

Add @login-required to dag and tasks stats call
Dear Airflow maintainers,
Please accept this PR. I understand that it will not be reviewed until I have checked off all the steps below!
JIRA

[X] My PR addresses the following Airflow JIRA issues and references them in the PR title. For example, "[AIRFLOW-XXX] My Airflow PR"

https://issues.apache.org/jira/browse/AIRFLOW-1764

Description

[X Here are some details about my PR, including screenshots of any UI changes:
I've copies the latest dag runs api call to the web uit, because the web ui should use the experimental api internally. The authentication methods differ, and hence, we cannot link them without breaking some authentication methods.

Tests

[X] My PR adds the following unit tests OR does not need testing for this extremely good reason:

Commits

[X] My commits all reference JIRA issues in their subject lines, and I have squashed multiple commits if they address the same issue. In addition, my commits follow the guidelines from "How to write a good git commit message":

Subject is separated from body by a blank line
Subject is limited to 50 characters
Subject does not end with a period
Subject uses the imperative mood ("add", not "adding")
Body wraps at 72 characters
Body explains "what" and "why", not "how"

Codecov Report

Merging #2734 into master will increase coverage by 0.01%.
The diff coverage is 100%.

@@            Coverage Diff             @@
##           master    #2734      +/-   ##
==========================================
+ Coverage   72.48%   72.49%   +0.01%
==========================================
  Files         154      154
  Lines       11843    11853      +10
==========================================
+ Hits         8584     8593       +9
- Misses       3259     3260       +1

Impacted Files
Coverage Δ

airflow/www/views.py
71.13% <100%> (+0.2%)
:arrow_up:

airflow/models.py
87.09% <0%> (-0.05%)
:arrow_down:

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 b3c247d...524d55d. Read the comment docs.

Can you let your title match what you are doing?
More importantly, I really don't like this code duplication. If we really do it this way, then it should be included in a separate file and sourced from there.
I think merging authentication/authorization is a better idea or refactoring the views into API calls.

@bolkedebruin the latest_runs api method isn't documented, hence you could argue that we could simply remove it from the experiment api. This would resolve the duplicate code issue

cc @saguziel you are the author of "latest_runs" in the API.I would agree with @NielsZeilemaker but maybe you are using it outside the the UI?

I'd like to propose a different solution for jira (that of "Web interface should not use experimental API"): remove the getJSON call entirely. Now that we have paging on the server side for the DAGs list.
This diff in the template does the same as the JSON call, without an extra round trip:
diff --git a/airflow/www/templates/airflow/dags.html b/airflow/www/templates/airflow/dags.html
index ebf638f0..f78cce82 100644
--- a/airflow/www/templates/airflow/dags.html
+++ b/airflow/www/templates/airflow/dags.html
@@ -118,6 +118,15 @@

+                  {% if dag and last_run.execution_date %}
+                    {% set last_run = dag.get_last_dagrun() %}
+                    {% if last_run %}
+
+                        {{ last_run.execution_date.strftime("%Y-%m-%d %H:%M") }}
+
+
+                    {% endif %}
+                  {% endif %}

@@ -296,21 +305,6 @@
           }
         });
       });
-      $.getJSON("{{ url_for('api_experimental.latest_dag_runs') }}", function(data) {
-        $.each(data["items"], function() {
-          var link = $("", {
-            href: this.dag_run_url,
-            text: this.execution_date
-          });
-          var info_icon = $('', {
-            "aria-hidden": "true",
-            id: "statuses_info",
-            title: "Start Date: " + this.start_date,
-            "class": "glyphicon glyphicon-info-sign"
-          });
-          $('.latest_dag_run.' + this.dag_id).append(link).append(info_icon);
-        });
-      });
       d3.json("{{ url_for('airflow.dag_stats') }}", function(error, json) {
         for(var dag_id in json) {
             states = json[dag_id];

Am I missing something that prevents this from working?

@ashb sounds good to me

@NielsZeilemaker do you want to make the change (using the diff above) or should I open a new PR? (I'm still in favour of adding the @login_required as you have here.)

Superceded by #2738


Broken recipe

Vacuum tube components appear to be using the old assembler recipe for making Vacuum tubes

If you have the harder vacuum tubes config enabled, the assembler recipe will also make the components. There should also be a crafting recipe with the config enabled. If there is not, that is a bug.

the recipe is  1 steel bolt ,  copper wires and a glass tube (for the vacuum tube components) so I am guessing that it's a bug?

Ah that is indeed a bug. It should not need two vacuum tubes total to produce.

Fixed as of ef4c843.


Migrate primary branch from master to main

See https://github.com/Senzing/stream-loader/issues/283

Pull requests:

https://github.com/Senzing/docker-db2-driver-installer/pull/31


Add "supported by" in products

Currently, the products shows 'supports' which is a directional:
Product A -> Supports -> Product B
It is going to be important to show the other direction.
Product B -> Is supported by -> Product A
For networks, this will show ALOT of results so it should be foldable. They should also be clickable as per https://github.com/The-Grid-Data/Explorer/issues/50

Note that in the new endpoint, this will change so this is POST new endpoint


[GSSOC'23]: adding mechanics materials to physitech

Describe the Feature you want to end
adding mechanics materials to physitech
Expected behavior
features-:
Stress and strain
Elasticity and Hooke's law
Mechanical properties of materials
Bending, torsion, and shear
Calculation of Stress
Calculation of Strain
Calculation of Young's Modulus
Calculation of Shear Stress
Screenshots (optional)

Additional context (optional )

@MohitGupta121 @TusharKesarwani sir kindly assign me this issue

@MohitGupta121 sir kindly assign me this issue


cartographer_ros build error

Hi,
I was having issues building Cartographer after git pulling and ended up reinstalling it, but I am now encountering the following error when running catkin_make_isolated --install --use-ninja --pkg cartographer cartographer_ros ceres-solver:
ninja -j6 -l6 in '/home/chaohui/catkin_ws/build_isolated/cartographer_ros' [15/33] Building CXX object CMakeFiles/cartographer_ros.dir/cartographer_ros/node.cc.o FAILED: /usr/bin/c++   -DROSCONSOLE_BACKEND_LOG4CXX -DROS_PACKAGE_NAME=\"cartographer_ros\" -isystem /usr/include/vtk-5.8 -isystem /usr/include/lua5.2 -isystem /usr/include/pcl-1.7 -isystem /usr/include/eigen3 -isystem /usr/include/ni -isystem /home/chaohui/catkin_ws/install_isolated/include -isystem /home/chaohui/catkin_ws/devel/.private/urdf/include -isystem /home/chaohui/catkin_ws/src/tf2_eigen/include -isystem /home/chaohui/catkin_ws/src/robot_model/urdf/include -isystem /opt/ros/indigo/include -I. -I/home/chaohui/catkin_ws/src/cartographer_ros/cartographer_ros -I/usr/src/gmock/gtest/include -isystem /usr/include/cairo -isystem /usr/include/glib-2.0 -isystem /usr/lib/x86_64-linux-gnu/glib-2.0/include -isystem /usr/include/pixman-1 -isystem /usr/include/freetype2 -isystem /usr/include/libpng12 -Wno-deprecated -O3 -DNDEBUG    -DEIGEN_USE_NEW_STDVECTOR -DEIGEN_YES_I_KNOW_SPARSE_MODULE_IS_NOT_STABLE_YET -pthread -std=c++11  -Wall -Wpedantic -Werror=format-security -Werror=missing-braces -Werror=reorder -Werror=return-type -Werror=switch -Werror=uninitialized -O3 -DNDEBUG -MD -MT CMakeFiles/cartographer_ros.dir/cartographer_ros/node.cc.o -MF CMakeFiles/cartographer_ros.dir/cartographer_ros/node.cc.o.d -o CMakeFiles/cartographer_ros.dir/cartographer_ros/node.cc.o -c /home/chaohui/catkin_ws/src/cartographer_ros/cartographer_ros/cartographer_ros/node.cc /home/chaohui/catkin_ws/src/cartographer_ros/cartographer_ros/cartographer_ros/node.cc: In member function ‘bool cartographer_ros::Node::HandleFinishTrajectory(cartographer_ros_msgs::FinishTrajectory::Request&, cartographer_ros_msgs::FinishTrajectory::Response&)’: /home/chaohui/catkin_ws/src/cartographer_ros/cartographer_ros/cartographer_ros/node.cc:456:37: error: ‘cartographer_ros_msgs::FinishTrajectory::Request’ has no member named ‘trajectory_id’    const int trajectory_id = request.trajectory_id;
I found FinishTrajectory.h in /home/chaohui/catkin_ws/install_isolated/include/cartographer_ros_msgs/FinishTrajectory.h. Any help would be appreciated.
Thank you!

Could you try to nuke everything and rebuild? rm -rf *isolated && catkin_make_isolated

Will this delete everything in my workspace?

no, this only deletes the build code which will be regenerated by the next build.

After running rm -rf *isolated && catkin_make_isolated I got the same error cartographer_ros_msgs::FinishTrajectory::Request’ has no member named ‘trajectory_id’ const int trajectory_id = request.trajectory_id

I did successfully install and build Cartographer on a different computer, on which I have not installed Cartographer before, without using Ninja.


[Bug]Column group count query

This change fixed Count query on column group.

LGTM, Merged to master.


[MoveVerifier] entry function verifier

Implement verifier extension for entry function.
verifier the entry function parameter type and return type
Ref
#148

Should we put this issue and its code solution together with the resolution for issue #64?

It is a verifier requirement, but the entry function does not need an annotation.

In this link, https://github.com/aptos-labs/aptos-core/blob/main/aptos-move/framework/src/extended_checks.rs#L116, the logic for checking the entry function is exactly what we need (I think), because it also checks the parameter types for the entry function to see if they are the specified types (without checking the entry function's annotations).
The code and analysis for the annotation and metadata generation of the entry function are placed together in the above code section, https://github.com/aptos-labs/aptos-core/blob/main/aptos-move/framework/src/extended_checks.rs#L69. My point is, if we want to quickly solve the problem with the entry function, can't we use this method first, instead of adding a new verifier to the Move codebase, as adding a new verifier would require modifications to the Move code.


torchex running pooling without decomposition

🚀 Feature
max_poolXd through decomposition is expensive in thunder. torch executor should be able to run those as a single aten call on fwd as well as bwd via a custom grad_transform
Motivation
Currently if we run the example below vvv
import torch
import torch.nn as nn

import thunder

dtype = torch.float16
batch_size = 32
test_grad = True

class Model(nn.Module):
    def __init__(self):
        super().__init__()
        layers = list()
        layers.append(nn.MaxPool2d(kernel_size=3, stride=2, padding=1))
        self.layer = nn.Sequential(*layers)

    def forward(self, inp):
        return self.layer(inp)

model = Model()

model = model.cuda()
model = model.to(dtype)

image = torch.randn(batch_size, 3, 224, 224, dtype=dtype).cuda()
if test_grad:
    image.requires_grad_()

def fn(arg):
    return model(arg)

jit_model = thunder.jit(fn)

# warm up
for i in range(20):
  o = jit_model(image)
  if test_grad:
      o.sum().backward()
  o = fn(image)
  if test_grad:
      o.sum().backward()

import time
fwd_traces = thunder.last_traces(jit_model)
print("fwd_traces:\n", fwd_traces[-1])
if test_grad:
    bwd_traces = thunder.last_backward_traces(jit_model)
    print("bwd_traces:\n", bwd_traces[-1])

torch.cuda.synchronize()

t0 = time.time()
for i in range(10):
    o = jit_model(image)
    if test_grad:
        o.sum().backward()
        image.grad = None
torch.cuda.synchronize()
print("jit_model elapsed time: ", time.time() - t0)

torch.cuda.synchronize()
t0 = time.time()
for i in range(10):
    o = fn(image)
    if test_grad:
        o.sum().backward()
        image.grad = None
torch.cuda.synchronize()
print("torch eager elapsed time: ", time.time() - t0)

jit_model elapsed time:  0.02024698257446289
torch eager elapsed time:  0.002202272415161133
fwd graph looks like
from thunder.executors.torchex import no_autocast

@torch.no_grad()
@no_autocast()
def augmented_forward_fn(arg):
  # arg: "cuda:0 f16[32, 3, 224, 224]"
  t0 = prims.pad(arg, -float('inf'), [(0, 0, 0), (0, 0, 0), (1, 1, 0), (1, 1, 0)])  # t0: "cuda:0 f16[32, 3, 226, 226]"
  t1 = ltorch.arange(9, None, 1, device=devices.Device("cuda:0"), dtype=None)  # t1: "cuda:0 i64[9]"
    # t1 = prims.iota(9, start=0, step=1, device=devices.Device("cuda:0"), dtype=dtypes.int64)  # t1: "cuda:0 i64[9]"
  t2 = prims.broadcast_in_dim(t1, [9, 1], [0])  # t2: "cuda:0 i64[9, 1]"
  t3 = prims.broadcast_in_dim(t1, [1, 9], [1])  # t3: "cuda:0 i64[1, 9]"
  t4 = prims.broadcast_in_dim(t2, (9, 9), (0, 1))  # t4: "cuda:0 i64[9, 9]"
  t5 = prims.broadcast_in_dim(t3, (9, 9), (0, 1))  # t5: "cuda:0 i64[9, 9]"
  t6 = prims.eq(t4, t5)  # t6: "cuda:0 b8[9, 9]"
  t7 = prims.convert_element_type(t6, dtypes.float16)  # t7: "cuda:0 f16[9, 9]"
  t8 = prims.reshape(t7, (1, 9, 1, 3, 3))  # t8: "cuda:0 f16[1, 9, 1, 3, 3]"
  t9 = prims.broadcast_in_dim(t8, (3, 9, 1, 3, 3), (0, 1, 2, 3, 4))  # t9: "cuda:0 f16[3, 9, 1, 3, 3]"
  t10 = prims.reshape(t9, (27, 1, 3, 3))  # t10: "cuda:0 f16[27, 1, 3, 3]"
  t11 = prims.convolution(t0, t10, None, (2,), (0,), (1,), False, (0, 0), 3)  # t11: "cuda:0 f16[32, 27, 112, 112]"
  t12 = prims.reshape(t11, (32, 3, 9, 112, 112))  # t12: "cuda:0 f16[32, 3, 9, 112, 112]"
  t13 = prims.convert_element_type(t12, dtypes.float32)  # t13: "cuda:0 f32[32, 3, 9, 112, 112]"
  t14 = prims.amax(t13, (2,))  # t14: "cuda:0 f32[32, 3, 112, 112]"
  t15 = prims.convert_element_type(t14, dtypes.float16)  # t15: "cuda:0 f16[32, 3, 112, 112]"
  return {'output': t15, 'flat_args': [arg], 'flat_output': (t15,)}, ((t10, t14, t13), (0, 0, 0, 0, 1, 1, 1, 1, 0, 1, 0, 0, 3, 32, 27, 112, 112, 32, 3, 9, 112, 112, 2))

bwd graph:
 i239 = operator.neg(i86)  # i239
    # i239 = prims.neg(i86)  # i239
  del i86
  i257 = operator.neg(i27)  # i257
    # i257 = prims.neg(i27)  # i257
  del i27
  i258 = operator.neg(i28)  # i258
    # i258 = prims.neg(i28)  # i258
  del i28
  i259 = operator.neg(i30)  # i259
    # i259 = prims.neg(i30)  # i259
  del i30
  i260 = operator.neg(i31)  # i260
    # i260 = prims.neg(i31)  # i260
  del i31
  i261 = operator.neg(i33)  # i261
    # i261 = prims.neg(i33)  # i261
  del i33
  i262 = operator.neg(i34)  # i262
    # i262 = prims.neg(i34)  # i262
  del i34
  i263 = operator.neg(i36)  # i263
    # i263 = prims.neg(i36)  # i263
  del i36
  i264 = operator.neg(i37)  # i264
    # i264 = prims.neg(i37)  # i264
  del i37
  t303 = torch.unsqueeze(t19, 2)  # t303
    # t303 = ltorch.unsqueeze(t19, 2)  # t303
      # t303 = prims.broadcast_in_dim(t19, [32, 3, 1, 2, 2], [0, 1, 3, 4])  # t303
  del t19
  t220 = Tensor.expand(t303, [32, 3, 1, 2, 2])  # t220
    # t220 = ltorch.expand(t303, [32, 3, 1, 2, 2])  # t220
      # t220 = prims.broadcast_in_dim(t303, (32, 3, 1, 2, 2), (0, 1, 2, 3, 4))  # t220
  del t303
  t221 = Tensor.expand(t220, (i104, i105, i106, i107, i108))  # t221
    # t221 = ltorch.expand(t220, (i104, i105, i106, i107, i108))  # t221
      # t221 = prims.broadcast_in_dim(t220, (i104, i105, i106, i107, i108), (0, 1, 2, 3, 4))  # t221
  del t220
  t233 = torch.permute(t15, (1, 0, 2, 3))  # t233
    # t233 = ltorch.permute(t15, (1, 0, 2, 3))  # t233
      # t233 = prims.transpose(t15, (1, 0, 2, 3))  # t233
  del t15
  t234 = torch.reshape(t233, [1, i91, 9, 3, 3])  # t234
    # t234 = ltorch.reshape(t233, [1, i91, 9, 3, 3])  # t234
      # t234 = prims.reshape(t233, (1, i91, 9, 3, 3))  # t234
  del t233
  t235 = torch.permute(t234, (1, 0, 2, 3, 4))  # t235
    # t235 = ltorch.permute(t234, (1, 0, 2, 3, 4))  # t235
      # t235 = prims.transpose(t234, (1, 0, 2, 3, 4))  # t235
  del t234
  t236 = torch.reshape(t235, [3, 9, 3, 3])  # t236
    # t236 = ltorch.reshape(t235, [3, 9, 3, 3])  # t236
      # t236 = prims.reshape(t235, (3, 9, 3, 3))  # t236
  del t235
  [t230, t282] = nvFusion0(i10, i104, i105, i106, i107, i108, i109, i9, t0, t17, t21, t221)
    # t18 = prims.convert_element_type(t17, dtypes.float32)  # t18
    # t282 = prims.pad(t0, 0.0, [(0, 0, 0), (0, 0, 0), (i9, 3, 0), (i10, 3, 0)])  # t282
    # t217 = prims.convert_element_type(t21, dtypes.float32)  # t217
    # t218 = prims.broadcast_in_dim(t217, [32, 3, 1, 2, 2], [0, 1, 3, 4])  # t218
    # t219 = prims.broadcast_in_dim(t218, (i104, i105, i106, i107, i108), (0, 1, 2, 3, 4))  # t219
    # t222 = prims.eq(t18, t221)  # t222
    # t223 = prims.sum(t222, (i109,))  # t223
    # t224 = prims.broadcast_in_dim(t223, [32, 3, 1, 2, 2], [0, 1, 3, 4])  # t224
    # t225 = prims.convert_element_type(t222, dtypes.float32)  # t225
    # t226 = prims.mul(t219, t225)  # t226
    # t227 = prims.broadcast_in_dim(t224, (32, 3, 9, 2, 2), (0, 1, 2, 3, 4))  # t227
    # t228 = prims.convert_element_type(t227, dtypes.float32)  # t228
    # t229 = prims.div(t226, t228)  # t229
    # t230 = prims.convert_element_type(t229, dtypes.float16)  # t230
  del i10, i104, i105, i106, i107, i108, i109, i9, t0, t17, t21, t221
  t283 = torch.permute(t282, (1, 0, 2, 3))  # t283
    # t283 = ltorch.permute(t282, (1, 0, 2, 3))  # t283
      # t283 = prims.transpose(t282, (1, 0, 2, 3))  # t283
  del t282
  t284 = torch.reshape(t283, [i16, 3, 32, 11, 11])  # t284
    # t284 = ltorch.reshape(t283, [i16, 3, 32, 11, 11])  # t284
      # t284 = prims.reshape(t283, (i16, 3, 32, 11, 11))  # t284
  del t283
  t285 = torch.permute(t284, (1, 0, 2, 3, 4))  # t285
    # t285 = ltorch.permute(t284, (1, 0, 2, 3, 4))  # t285
      # t285 = prims.transpose(t284, (1, 0, 2, 3, 4))  # t285
  del t284
  t286 = torch.reshape(t285, [3, 32, 11, 11])  # t286
    # t286 = ltorch.reshape(t285, [3, 32, 11, 11])  # t286
      # t286 = prims.reshape(t285, (3, 32, 11, 11))  # t286
  del t285
  t231 = torch.reshape(t230, (i97, i98, i99, i100))  # t231
    # t231 = ltorch.reshape(t230, (i97, i98, i99, i100))  # t231
      # t231 = prims.reshape(t230, (i97, i98, i99, i100))  # t231
  del t230, i97, i98, i99, i100
  t232 = torch_pad_prim_impl(t231, 0.0, [(0, 0, 0), (0, 0, 0), (0, 0, 1), (0, 0, 1)])  # t232
  del t231
  t237 = torch.flip(t236, (2, 3))  # t237
    # t237 = ltorch.flip(t236, (2, 3))  # t237
      # t237 = prims.flip(t236, (2, 3))  # t237
  del t236
  t238 = torch.convolution(t232, t237, None, (1,), [2, 2], (i87, i87), False, (i89, i90), i91)  # t238
    # t238 = ltorch.convolution(t232, t237, None, (1,), [2, 2], (i87, i87), False, (i89, i90), i91)  # t238
      # t238 = prims.convolution(t232, t237, None, (1,), [2, 2], (i87, i87), False, (i89, i90), i91)  # t238
  del t232, t237, i87, i89, i90, i91
  [t270] = nvFusion1(i239, i257, i258, i259, i260, i261, i262, i263, i264, t2, t238)
    # t241 = prims.pad(t238, 0.0, [(0, 0, 0), (0, 0, 0), (i239, 0, 0), (i239, 0, 0)])  # t241
    # t265 = prims.pad(t241, 0.0, [(i257, i258, 0), (i259, i260, 0), (i261, i262, 0), (i263, i264, 0)])  # t265
    # t266 = prims.slice(t265, [0, 0, 0, 0], [32, 3, 3, 3], [1, 1, 1, 1])  # t266
    # t267 = prims.slice(t266, [0, 0, 0, 0], [32, 3, 3, 3], [1, 1, 1, 1])  # t267
    # t268 = prims.slice(t267, [0, 0, 0, 0], [32, 3, 3, 3], [1, 1, 1, 1])  # t268
    # t269 = prims.slice(t268, [0, 0, 0, 0], [32, 3, 3, 3], [1, 1, 1, 1])  # t269
    # t270 = prims.where(t2, t269, 0.0)  # t270
  del i239, i257, i258, i259, i260, i261, i262, i263, i264, t2, t238
  t287 = torch.permute(t270, (1, 0, 2, 3))  # t287
    # t287 = ltorch.permute(t270, (1, 0, 2, 3))  # t287
      # t287 = prims.transpose(t270, (1, 0, 2, 3))  # t287
  del t270
  t288 = torch.convolution(t286, t287, None, (i11, i12), (0,), (i7, i8), False, (i14, i15), i16)  # t288
    # t288 = ltorch.convolution(t286, t287, None, (i11, i12), (0,), (i7, i8), False, (i14, i15), i16)  # t288
      # t288 = prims.convolution(t286, t287, None, (i11, i12), (0,), (i7, i8), False, (i14, i15), i16)  # t288
  del t286, t287, i11, i12, i7, i8, i14, i15, i16
  t289 = torch.permute(t288, (1, 0, 2, 3))  # t289
    # t289 = ltorch.permute(t288, (1, 0, 2, 3))  # t289
      # t289 = prims.transpose(t288, (1, 0, 2, 3))  # t289
  del t288
  return (None, t289)

Pitch
I'm prototyping this in a draft PR  (not functional yet!)
Alternatives
We can have pooling layers as we prim as well, but I don't think that's a necessity at this point.

after PR #163, the new trace looks like below. Notice how max_pool2d is running through max_pool2d_with_indices(_backward).
fwd_traces:
 # Constructed by Delete Last Used (took 0 milliseconds)
import torch
from thunder.executors.torchex import no_autocast

@torch.no_grad()
@no_autocast()
def augmented_forward_fn(arg):
  # arg: "cuda:0 f16[32, 3, 224, 224]"
  (t0, t1) = max_pool2d_with_indices(arg, 3, 2, 1, 1, False)
  return {'output': t0, 'flat_args': [arg], 'flat_output': (t0,)}, ((arg, t1), (False, 3, 2, 1, 1))
bwd_traces:
 # Constructed by Delete Last Used (took 0 milliseconds)
import torch
from thunder.executors.torchex import no_autocast

@torch.no_grad()
@no_autocast()
def backward_fn(saved_for_backward, cotangents):
  # saved_for_backward: "Collection"
  # cotangents: "Collection"
  C0, C1, = saved_for_backward
  clear_collection(saved_for_backward)
  del saved_for_backward
  t2, = cotangents
  clear_collection(cotangents)
  del cotangents
  arg, t1, = C0
  clear_collection(C0)
  del C0
  b4, i0, i1, i2, i3, = C1
  clear_collection(C1)
  del C1
  t6 = max_pool2d_with_indices_backward(t2, arg, i0, i1, i2, i3, b4, t1)  # t6: "cuda:0 f16[32, 3, 224, 224]"
  del t2, arg, i0, i1, i2, i3, b4, t1
  return (t6,)

jit_model elapsed time:  0.0022668838500976562
torch eager elapsed time:  0.001873016357421875

vs main on the head of that PR is giving me:
jit_model elapsed time:  0.015625953674316406
torch eager elapsed time:  0.0018506050109863281

jit_model is now much much closer to torch eager time and I verified that we are going through the exact kernel(s) as with eager. :partying_face:

cc'ing @nikitaved @IvanYashchuk @tfogal

Yeah, unless someone fixes conv in Torch to parallelize well with groups other than 1, I think it is a good workaround for now.

Is there an issue to track nvFuser's performance for this decomposition?

@IvanYashchuk , which decomposition do you mean? The one we had before? That was convolution-based and relied on that from PyTorch.

Is pooling in PyTorch implemented with a single CUDA kernel?
What's missing in Thunder + nvFuser to generate efficient code for convolution-based decomposition?

yeah pooling is a single kernel in pytorch. They also cache the pooling indices from forward and use that in backward for faster kernel.
I mimicked that in the custom grad_transform:
https://github.com/Lightning-AI/lightning-thunder/blob/ae86c77327bbbd74e0b9478c3ed69d15a62387d1/thunder/executors/torchex.py#L1573-L1576

What's missing in Thunder + nvFuser + PyTorch to generate efficient code for convolution-based decomposition?

A couple things I can think of:

@nikitaved mentioned in the old issue that depthwise convolution isn't giving us good perf and nvfuser doesn't handle convolution neither.
our grad transform made it worse, we are calling two convolution in the backward trace. Comparing to thunder caching the indices from max_pool in forward.


Palazzetti BIANCA LUX 9 - Ducted FAN issue

Thanks a lot for your great job on this integration.
I have an issue when I want to control the second FAN :-/

The BIANCA LUX have 2 controlable FANs.
The second FAN is detected, but FAN vakue is in fan_third ... so it doesn't work :
"_flag_has_fan_main: true
_flag_has_fan_second: true
_flag_has_fan_third: false"
[...]
"_value_power: 2
_value_fan_main: 7
_value_fan_second: 0
_value_fan_third: 2
_value_fan_limits:

0
5
0
5
0
5
_value_door_status: null"

May I do something from my side to make it work ?

Thank you for your feedback!
To debug the issue could you please send me also the Attributes of the entity "Product"? Thank you

product attibutes :
PSENSLTSH
0
HWTYPE
7
NOMINALPWR
9
AUTONOMYTYPE
1
STOVETYPE
1
CHRONOTYPE
5
SPLMIN
6
DSPFWVER
32
MOD
1 205
FAN2MODE
3
FAN2TYPE
3
SPLMAX
51
FLUID
0
PELLETTYPE
3
PSENSLMIN
0
SNCHK
1
PSENSLMAX
0
PSENSTYPE
0
CONFIG
1
BLEMBMODE
13
UICONFIG
1
BLEDSPMODE
1
MAINTPROBE
4
FWDATE
31 octobre 2019
VER
4
MBTYPE
0
CORE
30
SN
LT202007380580457225995
T2
40,7
F2LF
2
PQT
2 871
PWR
4
CHRSTATUS
0
FANLMINMAX
1, 5, 0, 5, 0, 5
FDR
0
F2V
130
DPT
0
APLWDAY
5
SETP
19
STATUS
11
T3
307
T1
0
PUMP
0
T5
20,5
F1RPM
2 222
OUT
22
F1V
2 222
EFLAGS
0
LSTATUS
11
T4
0
F3L
0
F2L
7
F4L
2
IN
11
DP
0
IGNERRORS
2
POWERTIME
10752:46
SERVICETIME
1250:14
OVERTMPERRORS
0
HEATTIME
3171:59
ONTIME
206:16
IGN
1 076
STATE
CLEANFIRE

Thank you for you quick answer.

Yes, sliders works, except "Fan L". : if I try to change it, all is grey and 'set value error' occur.

On iOS Palazzetti app, the FAN is not considered as Left Fan, but Right Fan. If it can help.

From the attributes you have sent I was aspecting F3L=2 and F4L=0. Let me check more in deep if it's an error of the asset_parser library issued by the Company or a wrong interpretation of the palazzetti_sdk_local_api.
This integration sends the command SET F3L instead of SET F4L and this is the cause of the error.
I cannot simulate the error but you could make this change to the file Input_number.py located in custom_components/palazzetti folder in your config path:
...

# slider impostazione secondo ventilatore
    if _config["_flag_has_fan_second"]:
        fan = 3
        data4 = {
            "id": f"{config_entry.unique_id}_fan2",
            "initial": _config["_value_fan_third"],
            "max": _config["_value_fan_limits"][(((fan - 1) * 2) + 1)],
            "min": _config["_value_fan_limits"][((fan - 1) * 2)],
            "mode": "slider",
            "name": "Fan R",
            "step": 1.0,
            "icon": "mdi:fan-speed-2",
        }
        slider_fan2 = MyNumber(hass, data4, product, "fan3", config_entry.unique_id)
        entity_list.append(slider_fan2)

...

I attach also a picture to understand the correction:

I cannot test it but basically we are setting the second fan as it were the third.
Remember to restart Home Assistant after having edited the file.
Hope it works 🤞🏻

Issue found: merged a PR to solve the issue. Update the integration with the new one and the problem should be solved.
THANK YOU very much for the informations, this is what makes free code better!!

Thank you a lot 👍🏻
Problem solved for FAN R !
Great job, and very quick 💪🏻 thank you 😊

Thank you again.
I’ve just seen another problem. I don’t know if I have to create another issue or not :
Main Fan slider is set with max value to 5, but 7 ( means auto ) is a correct value.
When I set auto on the IOS app, the slider change to 7. But how to set it to 7 with the slider ?

Le 25 févr. 2022 à 23:55, Marco Palazzetti @.***> a écrit :

From the attributes you have sent I was aspecting F3L=2 and F4L=0. Let me check more in deep if it's an error of the asset_parser library issued by the Company or a wrong interpretation of the palazzetti_sdk_local_api.
This integration sends the command SET F3L instead of SET F4L and this is the cause of the error.
I cannot simulate the error but you could make this change to the file Input_number.py located in custom_components/palazzetti folder in your config path:
...
slider impostazione secondo ventilatore
if _config["_flag_has_fan_second"]:
    fan = 3
    data4 = {
        "id": f"{config_entry.unique_id}_fan2",
        "initial": _config["_value_fan_third"],
        "max": _config["_value_fan_limits"][(((fan - 1) * 2) + 1)],
        "min": _config["_value_fan_limits"][((fan - 1) * 2)],
        "mode": "slider",
        "name": "Fan R",
        "step": 1.0,
        "icon": "mdi:fan-speed-2",
    }
    slider_fan2 = MyNumber(hass, data4, product, "fan3", config_entry.unique_id)
    entity_list.append(slider_fan2)

...
I attach also a picture to understand the correction:
I cannot test it but basically we are setting the second fan as it were the third.
Remember to restart Home Assistant after having edited the file.
Hope it works 🤞🏻
—
Reply to this email directly, view it on GitHub, or unsubscribe.
You are receiving this because you authored the thread.


Accounts options page

We need an options page that allows the user to see, add and edit the configured account(s).
Accounts consist of:

name
connector specific credentials (e.g. for LND: host + macaroon, for LNDHub host + API key)
status (if the connection works)

It should be possible to remove and add a new account.

@johnsBeharry do you by any chance have figma thoughts on this could look like?

we now got an account switcher. closing this and we can create new issues for smaller/specific issues.


How to visualize the embedding space

Thank you for helping me a lot before.
I try to use this model  on custom dataset now.
I could have already evaluated on custom dataset, thanks to a closed issue.
But I want to see the embedding space about my dataset.
Is it possible to visualize the embedding space on custom dataset?
Thank you.

Yes. Once you get the features, you can easily visualize them using methods such as PCA + t-SNE.
Xingyang

Yes. Once you get the features, you can easily visualize them using methods such as PCA + t-SNE.
Xingyang

Thank you very much.
I'll try that.

Thank you very much.
I'll try that.

I tried to visualize the embedding space by plt from matplotlib. But I got an warning below.
solution.py:1069: UserWarning: Matplotlib is currently using agg, which is a non-GUI backend, so cannot show the figure.
How can I visualize it in a different way ?

I tried to visualize the embedding space by plt from matplotlib. But I got an warning below.
solution.py:1069: UserWarning: Matplotlib is currently using agg, which is a non-GUI backend, so cannot show the figure.
How can I visualize it in a different way ?

This is due to matplotlib.use("Agg"). You could either comment out that line or save the figure directly to disk without showing it.
Xingyang

This is due to matplotlib.use("Agg"). You could either comment out that line or save the figure directly to disk without showing it.
Xingyang

Thank you so much.
I could save it but I think I did it on wrong variable.
To visualize the embedding space, what is the name of variable that has embedding space?

Thank you so much.
I could save it but I think I did it on wrong variable.
To visualize the embedding space, what is the name of variable that has embedding space?

Use query_image_features and gallery_image_features.
Xingyang

Use query_image_features and gallery_image_features.
Xingyang

`	distance_array = np.empty((0,4096), float)
image_file_path_list = [
os.path.join(dataset_folder_path, item) for item in [
basic_person,
people[0],
people[3]
]
]
image_content_list = [
read_image_file(image_file_path, input_shape)
for image_file_path in image_file_path_list
]
image_content_array = preprocess_input(np.array(image_content_list))
    first, second, third = inference_model.predict(image_content_array,
                                                    batch_size=batch_size)

    distance_matrix,qif,gif = test_evaluator_callback.compute_distance_matrix(
        query_image_features=[first],
        gallery_image_features=[second, third],
        metric="cosine",
        use_re_ranking=use_re_ranking)
    distance_array = np.append(distance_array, qif, axis=0)
    distance_array = np.append(distance_array, gif, axis=0)
    q_space = TSNE(n_components=2).fit_transform(distance_array)
    fig = plt.figure()
    plt.plot(q_space,'o')
    plt.title('Embedding Space')
    plt.grid()
    fig.savefig('embedding_space.png')`

I changed the code like above and got the picture.
But I don't think what I've done is not right.
Is this correct to visualize the embedding space?
basic_person,people[0] and people[3] are the path to each image.

`	distance_array = np.empty((0,4096), float)
image_file_path_list = [
os.path.join(dataset_folder_path, item) for item in [
basic_person,
people[0],
people[3]
]
]
image_content_list = [
read_image_file(image_file_path, input_shape)
for image_file_path in image_file_path_list
]
image_content_array = preprocess_input(np.array(image_content_list))
    first, second, third = inference_model.predict(image_content_array,
                                                    batch_size=batch_size)

    distance_matrix,qif,gif = test_evaluator_callback.compute_distance_matrix(
        query_image_features=[first],
        gallery_image_features=[second, third],
        metric="cosine",
        use_re_ranking=use_re_ranking)
    distance_array = np.append(distance_array, qif, axis=0)
    distance_array = np.append(distance_array, gif, axis=0)
    q_space = TSNE(n_components=2).fit_transform(distance_array)
    fig = plt.figure()
    plt.plot(q_space,'o')
    plt.title('Embedding Space')
    plt.grid()
    fig.savefig('embedding_space.png')`

I changed the code like above and got the picture.
But I don't think what I've done is not right.
Is this correct to visualize the embedding space?
basic_person,people[0] and people[3] are the path to each image.

Visualize feature_array (returned by inference_model.predict), rather than distance_array.
Also, it might be useful to apply PCA beforehand, as mentioned in here.
Xingyang

Visualize feature_array (returned by inference_model.predict), rather than distance_array.
Also, it might be useful to apply PCA beforehand, as mentioned in here.
Xingyang

`image_file_path_list = [
os.path.join(dataset_folder_path, item) for item in [
basic_person,
people[0],
people[3]
]
]
image_content_list = [
read_image_file(image_file_path, input_shape)
for image_file_path in image_file_path_list
]
image_content_array = preprocess_input(np.array(image_content_list))
    first, second, third = inference_model.predict(image_content_array,
                                                    batch_size=batch_size)
    feature_array = [first,second,third]
    distance_matrix = test_evaluator_callback.compute_distance_matrix(
        query_image_features=[first],
        gallery_image_features=[second, third],
        metric="cosine",
        use_re_ranking=use_re_ranking)

    q_space = TSNE(n_components=2).fit_transform(feature_array)
    fig = plt.figure()
    plt.plot(q_space,'o')
    plt.title('Embedding Space')
    plt.grid()
    fig.savefig('embedding_space.png')`

Is this what you meant?
people[3] is the same person as basic_person.

`image_file_path_list = [
os.path.join(dataset_folder_path, item) for item in [
basic_person,
people[0],
people[3]
]
]
image_content_list = [
read_image_file(image_file_path, input_shape)
for image_file_path in image_file_path_list
]
image_content_array = preprocess_input(np.array(image_content_list))
    first, second, third = inference_model.predict(image_content_array,
                                                    batch_size=batch_size)
    feature_array = [first,second,third]
    distance_matrix = test_evaluator_callback.compute_distance_matrix(
        query_image_features=[first],
        gallery_image_features=[second, third],
        metric="cosine",
        use_re_ranking=use_re_ranking)

    q_space = TSNE(n_components=2).fit_transform(feature_array)
    fig = plt.figure()
    plt.plot(q_space,'o')
    plt.title('Embedding Space')
    plt.grid()
    fig.savefig('embedding_space.png')`

Is this what you meant?
people[3] is the same person as basic_person.

Before applying t-SNE, it is advised to map the feature vectors to a lower-dimensional space (e.g., 64). Please check the documentation of t-SNE.
Xingyang

Before applying t-SNE, it is advised to map the feature vectors to a lower-dimensional space (e.g., 64). Please check the documentation of t-SNE.
Xingyang

`image_file_path_list = [
os.path.join(dataset_folder_path, item) for item in [
basic_person,
people[1],
people[3]
]
]
image_content_list = [
read_image_file(image_file_path, input_shape)
for image_file_path in image_file_path_list
]
image_content_array = preprocess_input(np.array(image_content_list))
    first, second, third = inference_model.predict(image_content_array,batch_size=batch_size)

    distance_matrix = test_evaluator_callback.compute_distance_matrix(
        query_image_features=[first],
        gallery_image_features=[second, third],
        metric="cosine",
        use_re_ranking=use_re_ranking)

    feature_array = [first.reshape(-1,64),second.reshape(-1,64),third.reshape(-1,64)]
    num = range(len(feature_array))
    colors = ['b','g','r']
    fig = plt.figure()
    for feature_element,i in zip(feature_array,num):
        maker = '$' + str(i+1) + '$'
        X = PCA(n_components=64).fit_transform(feature_element)
        q_space = TSNE(n_components=2).fit_transform(X)
        plt.plot(q_space,'o',color=colors[i])

    plt.title('Embedding Space')
    plt.grid()
    fig.savefig('embedding_space.png')`

I used PCA  to reduce the dimention of each feature  like above and used TSNE, but I still think what I've been doing is right to visualize the embedding space.
Sorry for making you busy and thank you for explaining every time.

`image_file_path_list = [
os.path.join(dataset_folder_path, item) for item in [
basic_person,
people[1],
people[3]
]
]
image_content_list = [
read_image_file(image_file_path, input_shape)
for image_file_path in image_file_path_list
]
image_content_array = preprocess_input(np.array(image_content_list))
    first, second, third = inference_model.predict(image_content_array,batch_size=batch_size)

    distance_matrix = test_evaluator_callback.compute_distance_matrix(
        query_image_features=[first],
        gallery_image_features=[second, third],
        metric="cosine",
        use_re_ranking=use_re_ranking)

    feature_array = [first.reshape(-1,64),second.reshape(-1,64),third.reshape(-1,64)]
    num = range(len(feature_array))
    colors = ['b','g','r']
    fig = plt.figure()
    for feature_element,i in zip(feature_array,num):
        maker = '$' + str(i+1) + '$'
        X = PCA(n_components=64).fit_transform(feature_element)
        q_space = TSNE(n_components=2).fit_transform(X)
        plt.plot(q_space,'o',color=colors[i])

    plt.title('Embedding Space')
    plt.grid()
    fig.savefig('embedding_space.png')`

I used PCA  to reduce the dimention of each feature  like above and used TSNE, but I still think what I've been doing is right to visualize the embedding space.
Sorry for making you busy and thank you for explaining every time.

No problem.
Are you visualizing features of three images? If so, you should only see three dots in the figure.
This line feature_array = [first.reshape(-1,64),second.reshape(-1,64),third.reshape(-1,64)] does not make sense. One should use PCA to map the [3, 4096] array to [3, 64], and use t-SNE to map the [3, 64] array to [3, 2].
Xingyang

No problem.
Are you visualizing features of three images? If so, you should only see three dots in the figure.
This line feature_array = [first.reshape(-1,64),second.reshape(-1,64),third.reshape(-1,64)] does not make sense. One should use PCA to map the [3, 4096] array to [3, 64], and use t-SNE to map the [3, 64] array to [3, 2].
Xingyang

   `image_content_list = [
        read_image_file(image_file_path, input_shape)
        for image_file_path in image_file_path_list
    ]
    image_content_array = preprocess_input(np.array(image_content_list))

    first, second, third = inference_model.predict(image_content_array,batch_size=batch_size)

    distance_matrix = test_evaluator_callback.compute_distance_matrix(
        query_image_features=[first],
        gallery_image_features=[second, third],
        metric="cosine",
        use_re_ranking=use_re_ranking)

    feature_array = [first, second, third]

    #PCA [3,4096] to [3,64]
    #TSNE [3,64] to [3,2]
    pca = PCA(n_components=64).fit(feature_array)
    pca_feature = pca.transform(feature_array)
    tsne_feature = TSNE(n_components=2).fit_transform(pca_feature)

    colors = ['b','g','r']
    fig = plt.figure()
    for feature,c in zip(tsne_feature,colors):
        maker = '$' + str(i+1) + '$'
        plt.scatter(feature[0],feature[1],color=c)

    plt.title('Embedding Space')
    plt.grid()
    fig.savefig('embedding_space.png')`

As you advised me, I changed the code like above. But I got an error saying Traceback (most recent call last):   File "solution.py", line 1143, in <module>     app.run(main)   File "C:\Users\####\anaconda3\envs\AdaptiveL2\lib\site-packages\absl\app.py", line 303, in run     _run_main(main, args)   File "C:\Users\####\anaconda3\envs\AdaptiveL2\lib\site-packages\absl\app.py", line 251, in _run_main     sys.exit(main(argv))   File "solution.py", line 1078, in main     pca = PCA(n_components=64).fit(feature_array)   File "C:\Users\####\anaconda3\envs\AdaptiveL2\lib\site-packages\sklearn\decomposition\_pca.py", line 351, in fit     self._fit(X)   File "C:\Users\####\anaconda3\envs\AdaptiveL2\lib\site-packages\sklearn\decomposition\_pca.py", line 423, in _fit     return self._fit_full(X, n_components)   File "C:\Users\####\anaconda3\envs\AdaptiveL2\lib\site-packages\sklearn\decomposition\_pca.py", line 442, in _fit_full     % (n_components, min(n_samples, n_features))) ValueError: n_components=64 must be between 0 and min(n_samples, n_features)=3 with svd_solver='full'
How can I sort this out?

   `image_content_list = [
        read_image_file(image_file_path, input_shape)
        for image_file_path in image_file_path_list
    ]
    image_content_array = preprocess_input(np.array(image_content_list))

    first, second, third = inference_model.predict(image_content_array,batch_size=batch_size)

    distance_matrix = test_evaluator_callback.compute_distance_matrix(
        query_image_features=[first],
        gallery_image_features=[second, third],
        metric="cosine",
        use_re_ranking=use_re_ranking)

    feature_array = [first, second, third]

    #PCA [3,4096] to [3,64]
    #TSNE [3,64] to [3,2]
    pca = PCA(n_components=64).fit(feature_array)
    pca_feature = pca.transform(feature_array)
    tsne_feature = TSNE(n_components=2).fit_transform(pca_feature)

    colors = ['b','g','r']
    fig = plt.figure()
    for feature,c in zip(tsne_feature,colors):
        maker = '$' + str(i+1) + '$'
        plt.scatter(feature[0],feature[1],color=c)

    plt.title('Embedding Space')
    plt.grid()
    fig.savefig('embedding_space.png')`

As you advised me, I changed the code like above. But I got an error saying Traceback (most recent call last):   File "solution.py", line 1143, in <module>     app.run(main)   File "C:\Users\####\anaconda3\envs\AdaptiveL2\lib\site-packages\absl\app.py", line 303, in run     _run_main(main, args)   File "C:\Users\####\anaconda3\envs\AdaptiveL2\lib\site-packages\absl\app.py", line 251, in _run_main     sys.exit(main(argv))   File "solution.py", line 1078, in main     pca = PCA(n_components=64).fit(feature_array)   File "C:\Users\####\anaconda3\envs\AdaptiveL2\lib\site-packages\sklearn\decomposition\_pca.py", line 351, in fit     self._fit(X)   File "C:\Users\####\anaconda3\envs\AdaptiveL2\lib\site-packages\sklearn\decomposition\_pca.py", line 423, in _fit     return self._fit_full(X, n_components)   File "C:\Users\####\anaconda3\envs\AdaptiveL2\lib\site-packages\sklearn\decomposition\_pca.py", line 442, in _fit_full     % (n_components, min(n_samples, n_features))) ValueError: n_components=64 must be between 0 and min(n_samples, n_features)=3 with svd_solver='full'
How can I sort this out?

The error message ValueError: n_components=64 must be between 0 and min(n_samples, n_features)=3 with svd_solver='full' is self-explanatory. In this specific case, n_samples=3, n_features=4096 and n_components=64.
This error can be easily fixed by adding more images, i.e., more than 64 - the more the merrier.
Xingyang

The error message ValueError: n_components=64 must be between 0 and min(n_samples, n_features)=3 with svd_solver='full' is self-explanatory. In this specific case, n_samples=3, n_features=4096 and n_components=64.
This error can be easily fixed by adding more images, i.e., more than 64 - the more the merrier.
Xingyang

I could visualize the embedding space.
Thank you very much for helping me.

I could visualize the embedding space.
Thank you very much for helping me.

When it's training, is there any possibilities to affect the extracted features by image of background?

When it's training, is there any possibilities to affect the extracted features by image of background?

Could you elaborate on the question?
Xingyang

Could you elaborate on the question?
Xingyang

When it's training, the model gets the feature of each image.
But every image has a background.
So, I thought that the background feature can probably affect the extracted feature.
For example, I have two pictures of the same person with same pose, same appearance and different background.

When it's training, the model gets the feature of each image.
But every image has a background.
So, I thought that the background feature can probably affect the extracted feature.
For example, I have two pictures of the same person with same pose, same appearance and different background.

Some time ago, I tried to replace the original images with the cropped images which were generated by a segmentation model. In other words, those images only contain persons, and the background is masked out. However, it decreased the mAP scores significantly. You may search for other works on this idea.
Xingyang

Some time ago, I tried to replace the original images with the cropped images which were generated by a segmentation model. In other words, those images only contain persons, and the background is masked out. However, it decreased the mAP scores significantly. You may search for other works on this idea.
Xingyang

I have one more question about learning rate.
You wrote "The learning rate increases linearly from a low value to the pre-defined base learning rate in the early stage of the training procedure, and it is divided by ten once the performance on the validation set plateaus",but why do you divide it by ten at the moment?
Thank you.

It's like a common practice.
In the AlexNet paper, it says "The heuristic which we followed was to divide the learning rate by 10 when the validation error rate stopped improving with the current learning rate.".
Of course, you can try learning rate schedules that are more complex, such as cosine annealing.
Xingyang


showImageViewerPager: Open in specific page.

Describe the Feature
As a developer I want to go to an specific page when showImageViewerPager is invoked.
I'm using the package on a chat page, so I want to show an specific picture (the tapped one) but also I want users to swipe rigth and left in order to show other chat images.
Suggested Solution
Add an "initialPage" property to showImageViewerPager
Other Information
n/a

@henry2man Hey Henry, thanks for your question. This is already possible! The imageProvider you pass into showImageViewerPager has an initialIndex property for exactly that use case. You can see an example in the example app: https://github.com/thesmythgroup/easy_image_viewer/blob/main/example/lib/main.dart#L83
I'll close this for now, but let me know if you have issues with this. Thanks!

Ok, Many thanks for the information.I didn't take notice about that.

This is already possible! The imageProvider you pass into showImageViewerPager has an initialIndex property for exactly that use case

It works like a charm! :)
Now I have another issue with desktop/probably web support and page changing... I'll report in a separate issue.


Casper app not working anymore

Seems Casper app stopped working after mainnet upgrade couple days ago. Trying to sign in in cspr.live with ledger nano jumps back to front page.

Could you please confirm that Ledger Live is closed?
Ledger Live is known to trigger a close app if it is left open in the manager mode.

Hi,
Yes, it was closed. I've been trying with 2 computers, 3 browsers and even cell phone.Nothing works.
-----Original Message-----
From: Juan Leni @.>
To: Zondax/ledger-casper @.>
Cc: Trader1976 @.>; Author @.>
Sent: Thu, Nov 25, 2021 2:00 pm
Subject: Re: [Zondax/ledger-casper] Casper app not working anymore (#62)
Could you please confirm that Ledger Live is closed?Ledger Live is known to trigger a close app if it is left open in the manager mode.—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub, or unsubscribe.
Triage notifications on the go with GitHub Mobile for iOS or Android.

Hi,Here is some more information.
I've noticed that if I clear cookies cache, I'm able to click connect button and thenconnect with ledger app. It then asks me which wallet to open and when I clickmy wallet, it goes back to front page.
Next time if I click sign in and then connect, it just goes back to front page.
So, if I empty cookies cache, then it goes further but I'm still not ableto login.
This problem started about 2 days ago and in telegram they told me thatthere was mainnet upgrade 2 days ago.
Cheers,Timo
-----Original Message-----
From: Juan Leni @.>
To: Zondax/ledger-casper @.>
Cc: Trader1976 @.>; Author @.>
Sent: Thu, Nov 25, 2021 2:00 pm
Subject: Re: [Zondax/ledger-casper] Casper app not working anymore (#62)
Could you please confirm that Ledger Live is closed?Ledger Live is known to trigger a close app if it is left open in the manager mode.—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub, or unsubscribe.
Triage notifications on the go with GitHub Mobile for iOS or Android.

cspr.live with ledger nano jumps back to front page.

Next time if I click sign in and then connect, it just goes back to front page.

Oh, I understand now. You meant that the website jumps to the frontpage? Not that the device itself changes or goes to main menu. I see.
This is very likely an issue at the website level that is not related to the Ledger app itself but to the integration.
We will contact the cspt.live team and inform them about this issue in the website. Thanks!

This was a minor state management issue after upgrading wallet synchronization across multiple browser windows & tabs. We have already fixed the issue and we'll publish it in the next cspr.live release.

Just wanted to let you all know that the hotfix v1.6.2 with Ledger fix just landed on production.


how to validate if a user buy a product and change his device..

how to check if a user purchased a product ..but later on he/she change his/her phone  and in that case how to validate that he/she already purchased  or not from his new phone?
Version of react-native-iap ^5.2.7
Version of react-native 0.63.4
Platforms you faced the error (IOS or Android or both?)

@hafeez-ullah-khan for that you need to keep track of your purchases in your own server, for iOS you may validate without server by using this method validateReceiptIos
But having your own Server is recommended

when iphone is changed, appleid should be same. are you asking about products or subscriptions?

@hafeez-ullah-khan for that you need to keep track of your purchases in your own server, for iOS you may validate without server by using this method validateReceiptIos
But having your own Server is recommended

i have only one product, and how can i validate that in android? if the the userer purchased that product, but later on he change his phone ,at that time how to check if the user has purchased or not?

when iphone is changed, appleid should be same. are you asking about products or subscriptions?
i am asking about product, and plateform is for now android?

Yes @codal-hkrishnani is right. Logically, you need to match with some unique userId so that the purchased items can be tracked.


Replacement of couchdb/reqmgr_workload_cache//spec

Looks like https://cmsweb.cern.ch/couchdb/reqmgr_workload_cache/pdmvserv_task_EXO-RunIIFall15DR76-04677__v1_T_161019_035339_1562/spec is the only place to retrieve the actual list of tasks that are created for a given workflow.
In a view to remove direct calls to couch, we would need a replacement place to retrieve that information.

Jean-Roch, could you specify  information is needed? Names of all the tasks? Could you point me the code where the information is used?

https://github.com/CMSCompOps/WmAgentScripts/blob/master/utils.py#L3896
https://github.com/CMSCompOps/WmAgentScripts/blob/master/utils.py#L3630
requires a bit of code digging.

Thanks Jean-Roch, So it seems the information needed is the splitting parameters for each task, is that correct?

@vlimant is this api what you were looking for? If so, then close the issue please


Automatically cancel overtime payments

Record payment vouchers in Payment entities, users can get them from on their next visit.
Automatically cancel overtime (maybe 15 mins by default) payments.

Payment may not need a time limit, other modules which depends on PaymentService module can decide when to cancel a payment.
For example: https://github.com/EasyAbp/EShop/issues/69


Would it be possible to have variable prices for plans?

We want to set the price of a plan variable per user, depending on the agreement. Would this be possible?

You may be able to use a preprocessor to do the dynamic calculation. The preprocessors are applied to the collection of order items right before it's processed as an order..

Thank you! The cashier_plans file says Preprocessors need to implement PreprocessesOrderItems. How do I do that? I didn't see it implemented in other Preprocessors?


Update/tekton

Changes

Updating Tekton version to version 0.34.1
Submitter Checklist

[ ] Includes tests if functionality changed/was added
[x] Includes docs if changes are user-facing
[x] Set a kind label on this PR
[x] Release notes block has been filled in, or marked NONE

See the contributor guide
for details on coding conventions, github and prow interactions, and the code review process.
Release Notes
For pull requests that require additional action from users switching to the new release, include the string "action required" (case insensitive) in the release note:
action required: Minimum required version for kubernetes is 1.21

/kind dependency-change

@karanibm6 nice, it seems you are also introducing a lot of changes regarding crds, client fakes, etc. I re-run make generate target but I'm not able to see changes. Any ideas why you have them?

@karanibm6 nice, it seems you are also introducing a lot of changes regarding crds, client fakes, etc. I re-run make generate target but I'm not able to see changes. Any ideas why you have them?

I also ran the same command make generate, maybe because we have different versions in go.mod file, so the descriptions got changed, will take a look at it.

@karanibm6 we need a separate commits to the changes in the crds files. I can work offline with you on this if needed.


Cassini ISS About page has broken links #115, partial 110 organize assets update folders

This resolves the links on the Cassini ISS about page by updating to use the holdings folder.  This update includes changes for the asset updates as well as the broken links.  No asset files are removed w/this pull request.

I don't like the term "Viewmaster holdings". Viewmaster is just a tool used to look at the holdings. I would prefer the phrase "the RMS holdings", or perhaps better "the PDS Ring-Moon Systems Node holdings" (since we never use RMS elsewhere on the site).


Getting error while using file jeelizFaceTransfer.js

i am using this file " jeelizFaceTransfer.js" in my project to call a function
but i am getting below error in the console:-
Error:-

Steps to reproduce:-

Download the project  from :- https://github.com/abhilash26/sit-straight
run index.html in chrome

it will ask for camera permission, click ok
now camera does not open and black screen with loading logo is displayed continuosly and console displays error.
Also try to run this project in Internet Explorer, camera is open and working fine
NOTE:- Issue is with browser compatibility. not working with chrome/Firefox
WEBGL1 Screenshot:-

WEBGL2 Screenshot:-

Below screenshot for the console output:-

You need to run it using an HTTPS local server, not as a local file.
I close the issue since it is not related to the lib, but to the basics of web dev.


Fix: CVE-2020-36518, CVE-2022-24823

Signed-off-by: Asif Sohail Mohammed<EMAIL_ADDRESS>Description
CVE-2020-36518:  jackson-databind-2.13.1 from gatling-charts-highcharts-3.7.4
CVE-2022-24823: netty-common-4.1.74.Final from bom-2.17.209
Issues Resolved
Check List

[ ] New functionality includes testing.
[ ] New functionality has been documented.

[ ] New functionality has javadoc added

[ ] Commits are signed with a real name per the DCO

By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.
For more information on following Developer Certificate of Origin and signing off your commits, please check here.

Codecov Report

Merging #1704 (3ae0958) into main (81d9760) will not change coverage.
The diff coverage is n/a.

@@            Coverage Diff            @@
##               main    #1704   +/-   ##
=========================================
  Coverage     93.32%   93.32%
  Complexity     1351     1351
=========================================
  Files           178      178
  Lines          3969     3969
  Branches        317      317
=========================================
  Hits           3704     3704
  Misses          189      189
  Partials         76       76

Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.

The backport has merge conflicts with 1.5 and 1.x.


Migrate existing configuration endpoints to the unified configuration API

As mentioned in #1999 once the new unified configuration API is implemented, we need to migrate the various configurations that we currently have implemented. This issue is intended to track the progress of that work. If you identify a place that needs updating, please let us know. Each of these should be handled as separate pull-requests so we can perform the migrations in a controlled fashion and split between multiple authors
Things that should be migrated

[ ] NancyInternalConfiguration (possibly?)
[x] XmlSettings (pull-request #2115)
[ ] JsonSettings (@TheCodeJunkie WIP)
[ ] NancyConventions (static content, views, localization and so on)
[ ] StaticConfiguration (this is a must)
[ ] RazorConfiguration (IRazorConfiguration + *.config stuff)
[x] DiagnosticsConfiguration (Bootstrapper method) (pull-request #2012)
[ ] CryptographicConfiguration (Bootstrapper method)
[ ] GenericFileResponse.SafePaths
[ ] Mime type registrations (issue #877)
[ ] Nancy.Hosting.Aspnet custom *.config handler

Class naming

[Word]Configuration - for the configuration class
[Word]ConfigurationExtensions - for the INancyEnvironment extension
Default[Word]ConfigurationProvider - for the INancyDefaultConfigurationProvider / NancyDefaultConfigurationProvider<T> implementation

Branch naming convention: I suggest we use a naming convention for the branches for each of these migrations. My suggested convention is configuration-migration-xxxxxxx where xxxxxxx is the name of the feature that is being migrated.

:+1:

Ping @NancyFx/most-valued-minions @NancyFx/owners these are all up-for-grabs, don't be shy :yum:

We should call the xxConfig naming convention. All existing xxSettings and xxConfiguration (and others if there are any) should be renamed to follow the convention.

In terms of naming, my :+1: goes to

[Word]Configuration
[Word]ConfigurationExtensions
Default[Word]ConfigurationProvider

@NancyFx/most-valued-minions Feel free to pick stuff from the above list

It's long winded but I prefer Default[Word]ConfigurationProvider or Default[Word]ConfigProvider simply because Default implies to the user that it can be overridden.

Updated description to reflect what will be going into 2.0 and what will end up in subsequent 2.x releases

We've done what we want to get done for 2.0. Closing this. We can come back if/when we decide to migrate more


✨ Multiple Cursors

Problem:
Sometimes, you have multiple variables or a collection and you want to edit all occurrences at the same time.
Solution:
Other code editors like Atom and even Xcode have added multiple-cursor support to conveniently edit multiple places at once, this can save lots of time. We should add a similar feature here, too. Part of supporting multiple cursors, it's also important that this feature is accompanied by ways to create multiple cursors. I suggest the following two ways:

A shortcut that select other occurrences of the currently selected text within the same file (creating multiple cursors with selection). In Atom that's Cmd+D, in Xcode it's Cmd+Alt+E. I suggest that this comparison is case-sensitive.
A keyboard-command to explicitly specify the places with the mouse cursor where the multiple text cursors should be created. In Xcode, this happens by holding the Alt key and either pressing manually into multiple places or by simply clicking the mouse and dragging it down to create multiple cursors at the same column on multiple lines.

https://user-images.githubusercontent.com/806104/171508531-bd3e7186-7808-442f-8f56-d115b4fae260.mov
Alternatives considered:
Making the search with the shortcut case-insensitive (like Xcode does by default, it changes based on your last search settingS) makes this feature error prone when there's for example a class named String and 5 variables named string and I want to just edit the variables, I might accidentally also select the class.
Atom also supports a shortcut for finding all occurrences of the currently selected text in the file and create multiple cursors for all. This seems to be an extra feature that could be added later on. In the meantime, just holding the last key of the shortcut should select all entries within the same file relatively quickly as an alternative.

@Wouter01 when the updated version is included in CodeEdit we can close this issue.

Closing as this is now possible with ⌃⇧. We will probably want a setting to change this shortcut though.

@austincondiff Thanks, sounds awesome! 🚀 But I would suggest changing to shortcut to match the Xcode shortcut which I mentioned in the initial post. That would make Xcode users feel right at home, which I think is a goal of this project.

@Jeehut I just opened https://github.com/CodeEditApp/CodeEdit/issues/1295 yesterday that may shed some light on that.


lsp: eval technique caches files too aggressively

open a .bass file
go-to-definition to something defined locally
modify the file, adding or removing a line above the go-to-definition site
try again, see that it ends up trying to find the wrong word

Hmm, maybe it's not that simple. Can't make it happen now. 🤔


Add Auto Help Builder

Make it so the bot will automatically build a help embed.
Dependencies:
Add usage method in ICommand interface.

Done.


Implementing Groups

I've a lot of subprojects in which users may have different authorizations.
As far as I've understood the package will allow me to define
proj1_role1, proj1_role2, proj1_role3,
proj2_role1, proj2_role2, proj2_role3... and so on...
Is there a way to implement "groups" (in the sense of alanning:roles) rather than adding tons of roles to each single user?

The way to do that with this package is, for example, this:
Add the allowed users ids to the object
{
  _id: "asdfiaj9enrx30m0943",
  ownedBy: ["asdfasdf", "asdfasd2"],
  ...
}

In the action of that role check if the user is in the array
myRole.allow('myAction', function(doc) {
  return _.contains(doc.ownedBy, this.userId)
});

Yeah this solves the fact that if i assign role1 to an user, then the role1 is allowed to make some actions on each projectA or projectB according to the .allow method.
However this is not what I intended: the issue is that user1 can have role1 in projectA but role2 in projctB, so I need to assign different roles according to different projects.
In this sense the "group" concept was great. I appreciated your roles implementation but I still don't understand how to create the "group" with your package

You can do it with a action
myRole.allow('hasPermissionInProject', function(doc) {
  return _.contains(doc.ownedBy, this.userId)
});

Then check if is in the group
Roles.userHasPermission(this.userId, 'hasPermissionInProject', projectA); // is in project a or no

Hi,
i'm using meteor-partitioner in my projects, the package need to use groups to properly working, any clue on how to use it with your roles package?
thanks

Hi!
This way of doing roles is not compatible with groups as other packages do.
But you can get the same functionality. Tell me about what you need to do and I can help you

Hi,
thanks, i found another way to implement it using only your (real well written) package

Great!


Unable to change font family

I've created a simple function to change all styles to use RobotoMono font in my app:
Map<String, TextStyle> getRobotoMonoFonts(Map<String, TextStyle> theme) {
  final Map<String, TextStyle> ret = {};
  for (var key in theme.keys) {
    ret[key] = theme[key]!.copyWith(fontFamily: "RobotoMono");
  }
  return ret;
}

and I call it in the following way:
CodeTheme(
  data: CodeThemeData(
    styles: getRobotoMonoFonts(monokaiSublimeTheme),
  ),
  child: SingleChildScrollView(
    child: CodeField(
      controller: codeCtrl,
    ),
  ),
),

But not every part of code is being updated to monospace. I've also tried manually editing these fields in CodeThemeData: commentStyle, functionStyle, keywordStyle, paramsStyle, quoteStyle, titleStyle, variableStyle but also without any success on getting the full code to switch to RobotoMono.

Hello, @MrCyjaneK
Please, try to pass a textStyle parameter to the CodeField and specify the fontFamily there.
CodeField(
  textStyle: const TextStyle(
    fontFamily: 'RobotoMono',
    fontSize: 12,
  ),
)

The text inside of a CodeField mainly has the style, passed to its constructor. Styles from CodeThemeData only override the styles for specific text, like comments, keywords, etc.

that.. that solved all my issues. Thanks.


Cannot get Last Exception

Description
I am working on a unit test project. I have a base test file where I have the following line in my Assembly Initialize method.
AppDomain.CurrentDomain.FirstChanceException += (s, e) => LastException = e.Exception;
This line will store the last thrown exception in the Last Exception field. This can then be called by the following line and inserted into reports.
WebUtility.HtmlEncode(LastException.Message)
This worked in the old Test Framework NuGet package:
VS.QualityTools.UnitTestFramework (version 15.0.27323.2)
but in the new Test Framework NuGet package:
MSTest.TestFramework (version 1.4.0)
I see the following error passed to the Last Exception field.
Could not load file or assembly 'Microsoft.VisualStudio.TestPlatform.MSTest.TestAdapter.resources, Version=<IP_ADDRESS>, Culture=en-GB, PublicKeyToken=b03f5f7f11d50a3a' or one of its dependencies. The system cannot find the file specified.
Steps to reproduce

Put the following line in a unit test:
AppDomain.CurrentDomain.FirstChanceException += (s, e) => LastException = e.Exception;
Follow that line with this line:
throw new System.Exception("Test Error Message");
Run the unit test in debug mode
Look at the value of Last Exception after the exception is thrown

Expected behavior
Last Exception should equal System.Exception with a message of "Test Error Message".
Actual behavior
An error is displayed:
Could not load file or assembly 'Microsoft.VisualStudio.TestPlatform.MSTest.TestAdapter.resources, Version=<IP_ADDRESS>, Culture=en-GB, PublicKeyToken=b03f5f7f11d50a3a' or one of its dependencies. The system cannot find the file specified.
Environment
Windows 10
.Net Framework 4.7.2
MSTest.TestFramework (version 1.4.0)
MSTest.TestAdapter (version 1.4.0)

@dmcdowellsqs, I tried your repro steps and it seems to be working fine for me.

Can you try to reproduce the problem in a sample project and share here?

@karanjitsingh Thanks for your quick reply. I have updated the steps slightly. I have also taken a screenshot and created an example project.

LastException.zip

@dmcdowellsqs, I'm still not able to repro this on my machine. It's possible it is because of your machine's culture info en-GB. The adapter might be trying to find the culture specific resources but fails and hence catches the exception internally. Which is why you're seeing that exception as the last one. Can you confirm this by trying the en-US language pack?

@dmcdowellsqs, since we don't support this language pack, your work around can be to ignore the exceptions thrown by mstest and only keep exceptions you're interested in.

@karanjitsingh I have added the following as the first line of the Test Method. I get the same error.
CultureInfo.DefaultThreadCurrentCulture = new CultureInfo("en-US");
If you add the following, can you reproduce my issue?
CultureInfo.DefaultThreadCurrentCulture = new CultureInfo("en-GB");

@dmcdowellsqs, I'm beginning to think problem is slightly different here, could you run this with dotnet fusion logs turned on and share the logs with me?
The command for fusion log viewer is fuslogvw in VS Developer console

Logs.zip

@dmcdowellsqs,
I've tried CultureInfo.DefaultThreadCurrentCulture = new CultureInfo("en-GB"); and I even tried changing my language pack. I'm still not able to reproduce this issue.
The exception that you're getting in LastException, can you give me the stack for it?

Do you see the issue if you open my zip of the Last Exception solution?
Have you tried pressing F10 after the exception is thrown and checking the value of e.exception?
How do I change my language pack?
Exception:
{"Could not load file or assembly 'Microsoft.VisualStudio.TestPlatform.MSTest.TestAdapter.resources, Version=<IP_ADDRESS>, Culture=en-GB, PublicKeyToken=b03f5f7f11d50a3a' or one of its dependencies. The system cannot find the file specified.":"Microsoft.VisualStudio.TestPlatform.MSTest.TestAdapter.resources, Version=<IP_ADDRESS>, Culture=en-GB, PublicKeyToken=b03f5f7f11d50a3a"}
Stack Trace:
"   at System.Reflection.RuntimeAssembly._nLoad(AssemblyName fileName, String codeBase, Evidence assemblySecurity, RuntimeAssembly locationHint, StackCrawlMark& stackMark, IntPtr pPrivHostBinder, Boolean throwOnFileNotFound, Boolean forIntrospection, Boolean suppressSecurityChecks)\r\n   at System.Reflection.RuntimeAssembly.nLoad(AssemblyName fileName, String codeBase, Evidence assemblySecurity, RuntimeAssembly locationHint, StackCrawlMark& stackMark, IntPtr pPrivHostBinder, Boolean throwOnFileNotFound, Boolean forIntrospection, Boolean suppressSecurityChecks)"

Do you see the issue if you open my zip of the Last Exception solution?
Have you tried pressing F10 after the exception is thrown and checking the value of e.exception?

I've been trying to reproduce on the project that you sent and I'm not getting that issue.

How do I change my language pack?

Search for language settings in the settings app (windows 10) and make sure it's at the top of the list

Exception:
{"Could not load file or assembly 'Microsoft.VisualStudio.TestPlatform.MSTest.TestAdapter.resources, Version=<IP_ADDRESS>, Culture=en-GB, PublicKeyToken=b03f5f7f11d50a3a' or one of its dependencies. The system cannot find the file specified.":"Microsoft.VisualStudio.TestPlatform.MSTest.TestAdapter.resources, Version=<IP_ADDRESS>, Culture=en-GB, PublicKeyToken=b03f5f7f11d50a3a"}
Stack Trace:
" at System.Reflection.RuntimeAssembly._nLoad(AssemblyName fileName, String codeBase, Evidence assemblySecurity, RuntimeAssembly locationHint, StackCrawlMark& stackMark, IntPtr pPrivHostBinder, Boolean throwOnFileNotFound, Boolean forIntrospection, Boolean suppressSecurityChecks)\r\n at System.Reflection.RuntimeAssembly.nLoad(AssemblyName fileName, String codeBase, Evidence assemblySecurity, RuntimeAssembly locationHint, StackCrawlMark& stackMark, IntPtr pPrivHostBinder, Boolean throwOnFileNotFound, Boolean forIntrospection, Boolean suppressSecurityChecks)"

Sadly this doesn't give me anything. Just dotnet failing to load the particular culture dll.

I tried changing my default language to English (US) using your steps, restarted Visual Studio and ran the test again but unfortunately, the issue persists.
@karanjitsingh As you are unable to see the issue, could I share my screen with you in a live call?

I've been following this topic - recently revisited an old framework project and discovered this behaviour too.
I've seen the same issues as dmc is facing - I'm surprised that this seems so tightly tied in to the language - does this mean that users who are using other international language packs will face the same issue?
Can share my stack traces as well if it helps

I tried changing my default language to English (US) using your steps, restarted Visual Studio and ran the test again but unfortunately, the issue persists.

@WiseJoeyD, after this, it doesn't seem so. Also since I'm not able to reproduce by changing language packs issue seems to be something else.
@dmcdowellsqs, email me at karsin @ microsoft . com so i can send you a meeting invite

Found a workaround this issue the culture needs to be set on culture en instead of en-US.
Tried Thread.CurrentThread.CurrentUICulture = new CultureInfo("en"); and it seems to be working. By the same logic CultureInfo.DefaultThreadCurrentUICulture = new CultureInfo("en"); should work as well.


Can you release the source code of the demo please?

I would like to use these as templates.
https://nuxt-app.now.sh/vue-horizontal-list
would make things easier to understand.
You could perhaps make new branch or add a demo folder.

Sorry, my bad it's in this repo: https://github.com/fuxingloh/nuxt-app/blob/master/components/examples/ExampleHorizontalList.vue
I will move it into this repo in the future.


Methods for running a DFS and BFS over all vertices

The current DFS and BFS methods require a starting vertex as an argument and will only visit vertices that are reachable from these starting vertices. There should be separate methods that don't take such an argument and traverse all vertices in the graph, even if the graph is disconnected.
Maybe, appropriate names could be FullDFS, DFSAll, DFSFull or something like that. It would make more sense to use DFS as a name and rename the method with the starting vertex to DFSFrom, but I don't think I want to break the API at this point.

It seems like exporting this method?
https://github.com/dominikbraun/graph/blob/5ad3689fd8a5c214d4fca714d1ad2d044496f4df/store.go#L26


[improve][broker] Add ref count for sticky hash to optimize the performance of Key_Shared subscription

Motivation
Add ref count for sticky hash to optimize the performance of the Key_Shared subscription.

The root cause is here. We are going to go through all the redelivery messages to check if contains the hash from a given sticky hash set.
Modifications
Introduce a ref count map for the sticky hash set to make the method containsStickyKeyHashes works more efficiently.
Verifying this change
Updated the existing test to cover the new changes.
Does this pull request potentially affect one of the following parts:

If the box was checked, please highlight the changes

[ ] Dependencies (add or upgrade a dependency)
[ ] The public API
[ ] The schema
[ ] The default values of configurations
[ ] The threading model
[ ] The binary protocol
[ ] The REST endpoints
[ ] The admin CLI options
[ ] The metrics
[ ] Anything that affects deployment

Documentation

[ ] doc
[ ] doc-required
[x] doc-not-needed
[ ] doc-complete

Codecov Report

Merging #19167 (5098773) into master (b05fddb) will decrease coverage by 8.41%.
The diff coverage is n/a.

@@             Coverage Diff              @@
##             master   #19167      +/-   ##
============================================
- Coverage     45.64%   37.22%   -8.42%
+ Complexity    11043     1988    -9055
============================================
  Files           773      209     -564
  Lines         74463    14450   -60013
  Branches       8018     1577    -6441
============================================
- Hits          33986     5379   -28607
+ Misses        36687     8487   -28200
+ Partials       3790      584    -3206

Flag
Coverage Δ

unittests
37.22% <ø> (-8.42%)
:arrow_down:

Flags with carried forward coverage won't be shown. Click here to find out more.

Impacted Files
Coverage Δ

...he/pulsar/client/impl/PartitionedProducerImpl.java
30.34% <0.00%> (-5.13%)
:arrow_down:

...va/org/apache/pulsar/client/impl/ProducerImpl.java
15.66% <0.00%> (-1.17%)
:arrow_down:

.../pulsar/client/impl/ProducerStatsRecorderImpl.java
84.04% <0.00%> (-0.62%)
:arrow_down:

...apache/pulsar/client/impl/AutoClusterFailover.java
69.44% <0.00%> (-0.56%)
:arrow_down:

...ulsar/client/impl/TransactionMetaStoreHandler.java
0.00% <0.00%> (ø)

.../apache/pulsar/broker/admin/impl/ClustersBase.java

...ervice/persistent/MessageRedeliveryController.java

...pache/pulsar/broker/admin/v2/PersistentTopics.java

...r/offload/jcloud/BlockAwareSegmentInputStream.java

...r/metadata/coordination/impl/ResourceLockImpl.java

... and 559 more


Neo4j remove privileged security context, upgrade to 3.4.x series

What this PR does / why we need it

Removes privileged: true from securityContext for both core and read replica pods.  Why we need it is twofold:  the neo4j docker container explicitly drops permissions and runs as user neo4j inside of the container whenever possible, and it's a good idea to run with least privileges as a matter of good practice.  Question about this arose in a support case for us with this helm chart, so verifying that these permissions were not needed, it seemed appropriate to remove them from defaults.

Updates to latest Neo4j 3.4 series release (3.4.5).   Neo4j version 3.4 is backwards compatible with the rest, and introduces a number of new features documented on the neo4j site that users requested in kubernetes.

Which issue this PR fixes (optional, in fixes #<issue number>(, fixes #<issue_number>, ...) format, will close that issue when PR gets merged): fixes #
N/A
Special notes for your reviewer:

/assign @sameersbn
/assign @mneedham

/ok-to-test

/lgtm

/lgtm


Odd Glasgow numeric formatting on 2020-04-12

Note the last record:
$ grep Glasgow data/covid-19-cases-uk.csv | tail
2020-04-03,Scotland,S08000031,Greater Glasgow and Clyde,779
2020-04-04,Scotland,S08000031,Greater Glasgow and Clyde,851
2020-04-05,Scotland,S08000031,Greater Glasgow and Clyde,931
2020-04-06,Scotland,S08000031,Greater Glasgow and Clyde,984
2020-04-07,Scotland,S08000031,Greater Glasgow and Clyde,1094
2020-04-08,Scotland,S08000031,Greater Glasgow and Clyde,1166
2020-04-09,Scotland,S08000031,Greater Glasgow and Clyde,1251
2020-04-10,Scotland,S08000031,Greater Glasgow and Clyde,1314
2020-04-11,Scotland,S08000031,Greater Glasgow and Clyde,1387
2020-04-12,Scotland,S08000031,Greater Glasgow and Clyde,"1,449"

Seems a bit odd to suddenly switch the way numbers are formatted.  Again, nothing that can't be dealt along with the 1 to 4 and NaN type things, and it's perfectly well formed CSV... but it does seem a bit odd when that region has never done the comma thousands numeric formatting thing before (and none of the other regions with counts over 1000 does either I think).

@timday thanks for reporting this. I agree it's inconsistent, and have fixed the data and the underlying code so that commas are removed from numbers for this case.


feat(Mathlib/Logic/Equiv/LocalEquiv): add the mfld_set_tac tactic

This PR adds the mfld_set_tac tactic. This tactic relies on a custom simp set which mostly contain lemmas about advanced math that is not yet in mathlib4. In the test file, we have created stubs of a random subset of the various definitions and lemmas it needs; this will need to be revisited during the port.
Co-authored-by: @hrmacbeth

I changed it to register the simp attribute the easy way (i.e. the way Leo showed us in the demo after we wrote the tactic). This means that now the file MfldSimpsAttr.lean contains a grand total of one line of code -- I guess we can just move it to Mathlib/Tactic/Basic...?

The linter is now complaining about the absence of docstring on the register_simp_attr line, but this currently cannot be done.

@dupuisf Like I mentioned earlier, this declaration should go near where it was placed in lean 3, not in Tactic.Basic.

Looks good to me modulo the build error.
For completeness, I should mentioned that you can also define this tactic as a macro:
local macro "mfld_set_simp_aux" : tactic =>
  `(intro h_my_y; try { simp only [*, mfld_simps] at h_my_y; simp only [*, mfld_simps] })

macro "mfld_set_simp" : tactic => `(first
  | show _ = _; apply Set.ext; intro my_y; constructor <;> { mfld_set_simp_aux }
  | show _ ⊆ _; intro my_y; mfld_set_simp_aux
  | fail "mfld_set_simp goal should be = or ⊆")

(Although show _ ⊆ _ is extremely underpowered as a goal matching tool.  For example, show (_ : Set _) ⊆ _ doesn't work because of some implicit lambda shenanigans (afaict).  We also don't have a nice way to commit to a branch in first.)

On the simp attribute, I just copied the string that is passed as an argument to the command. I assume that the string that is passed is also meant to be documentation, if this is not the case I am happy to change it.

I just copied the string that is passed as an argument to the command into the docstring.

That's a surprising duplication, but we should fix that in core.
Thanks!
bors r+


Unusual graphic glitch, missing lines, broken scroll

Does this issue occur when all extensions are disabled?: Yes

VS Code Version:  1.87.2
OS Version:  Windows 10 Home

Steps to Reproduce:

I assume you're talking about the editor sticky scroll
you can right click it

Yes. Thank you! Where do i right click? As is im trying to toggle the different areas but i can't really see if its toggled on or off.

https://code.visualstudio.com/docs/getstarted/userinterface#_sticky-scroll


Error: ResizeObserver loop completed with undelivered notifications.

I am writing to report an issue I encountered after installing a new component.
After successfully installing the component, I received an error message indicating ResizeObserver loop completed with undelivered notifications.. Despite attempting to troubleshoot the problem on my own, I have been unable to resolve it.
Could you please investigate this matter further and provide assistance in resolving the issue? If necessary, I am available to provide additional information or screenshots to help diagnose the problem.
Thank you for your attention to this matter. I look forward to your prompt response and resolution.
Sincerely

my code as zip
tree-app.zip

Had the same issue and found a fix here: https://therichpost.com/solved-resizeobserver-loop-completed-with-undelivered-notifications-in-reactjs/
Essentially you just gotta add this to a .css file near the root.
iframe#webpack-dev-server-client-overlay{display:none!important}

I've added mine to the index.css and the error messages are gone

@lefamoffat This is not a good solution - it hides the overlay that displays all errors in your code. So you could not see any errors anymore.


unable to connect cloud instance

So I have a raspberry pi running on my network and another server running up on amazon in an EC2 free tier instance. They were working fine for a week or so but now the local server is throwing an error saying it is unable to connect to the public EC2 server with the following error
2021-05-12T01:22:42.669Z] Cloud Connection Disconnected: IP and port__
[2021-05-12T01:22:44.338Z] An error occurred with the connection to IP and port__ Error: xhr poll error
[2021-05-12T01:22:44.350Z] Cloud Connection Disconnected: IP and port__
[2021-05-12T01:22:45.697Z] An error occurred with the connection to IP and port__ Error: xhr poll error
[2021-05-12T01:22:45.709Z] Cloud Connection Disconnected: IP and port__
I have a fairly standard config, 1 atem local to the server and then the cloud instance to serve up to talent remotely.
I have have tally arbiter running at boot on both servers and i rebooted both of them with no luck

Can you still access the TA cloud instance GUI?

If you can still access the GUI, than another good thing to check would be your security policy for the instance. I've had a few cases where my security policy would randomly block ports that I had opened earlier.
If you're using the dns name that's included with the server, then I would recommend that your assign an elastic IP. I found that it fixed a lot of my issues.

yes I can still access the web interface for the cloud instance.
Not sure where I would make DNS adjustments to the server. I can check about the elastic IP, I don't believe that is enabled on EC2

Are the socket io versions the same?
Are you running load balancing on the ec2?


Monthly contributions checkbox on donations page is broken

When loading the page, it acts like the "monthly contribution?" box is checked when it's not.

	<3

	Sent from my mobile

On Thu, Aug 10, 2017 at 8:15 PM -0700, "Max Wofford"<EMAIL_ADDRESS>wrote:
Closed #101 via 115511e.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub, or mute the thread.


Image for State-of-Art-website

Purpose:
The purpose of this issue is to replace the current image representing SILK's state-of-the-art website with a more modern and visually appealing representation. This image is a crucial component of SILK's advantages, showcasing our commitment to cutting-edge technology.
Importance:
In today's digital age, a website is often the first point of contact between a potential franchisee or customer and the company. The image representing our state-of-the-art website should reflect innovation, ease of use, and a visually pleasing design. It's vital to make a positive first impression and convey our dedication to staying at the forefront of technology.
Outcome:
The outcome of this issue will be an updated image that effectively conveys the advanced nature of SILK's website. This image will enhance our brand's appeal, showcasing our commitment to providing a modern and seamless online experience for franchisees and customers. It will serve as a visual testament to our tech-savvy approach, attracting individuals and entrepreneurs who value innovation and efficiency.

I'm going to work on this issue. I'll find a representative image for this issue and take our Focus bots' help. I'll resize the image as guided in the description of this issue and then create a pull request within an hour.


Value cannot be null

When running the "Spark" project from either spark-r4-master or spark-r4-develop and then try to access a patient i.e. http://localhost/patient/001 a null reference exception is thrown in src\Spark\App_Start\UnityControllerFactory.cs line 27.  controllerType is null but should not be.  Not sure how to resolve this problem.

Note that the route is case sensitive.
/Patient/001

As Brian says, route is case sensitive. In addition should be prefixed with /fhir, full relative path should look like this /fhir/Patient/001

Thank you for your reply.  I will pay closer attention to my casing.  The real problem turned out to be a database connection problem.  Some better reporting when the database can't be reached may be in order.  A null reference exception in the unity controller is thrown which was not very helpful in finding the db problem.

I just did some tests on this

if there is a database connection problem an OperationOutcome is thrown containing the error for the connection problem.
If I remove the MONGOLAB_URI completely Spark throws an ArgumentException on startup of the application because a required configuration variable is missing, this could probably be handled a bit smoother.
If the casing is off an OperationOutcome is returned suggesting the proper casing.
If I somehow try to access a route that the does not exists on the server like http://spark.kufu.no/Patient/example you will get the ArgumentNullException that you initially posted, as with the missing required configuration variable this could probably be handled a bit smoother.

I will put the issue into the backlog to try and smooth out the errors a bit

Latest version of Spark (v1.3) renders OperationOutcome to the web browser, considering this as solved


feat(docs): added new section with guides of features

An idea of introduction Guides that step by step is going to configure specific behavior/policy. This is just an example of ExternalService

Great! Will take a look later :)

this seems abandoned, @lukidzi do we still want to go ahead with this?

pinging @lukidzi once again, do we still want to go ahead with this?

any update on this @lukidzi ? do we want to go with this or not?

@lukidzi what do we have to do with this PR?

@lukidzi & @lahabana - I'm guessing this is no longer needed since Kat is working on guides, right?


Magazines spawned in container loot on live don't contain ammo

This was brought up in the Discord, on live raids magazines that spawn in containers don't spawn with ammo in them. Only loose loot magazines spawn with ammo.
I checked a few of the loot dump JSONs I have and the 5 instances of container magazine spawns I looked at all lacked ammo. Would probably want to confirm over a larger dataset before anything is done for this.
No change necessary, only opening an issue in the event it's brought up again in the future. If it's decided to keep ammo in mags, feel free to close as won't do 👍

Originally written by DrakiaXYZ

I been sayin' this forever, but Chomp keep fightin' me.

Originally written by PhantomInTime

Change made with: https://dev.sp-tarkov.com/SPT-AKI/Server/commit/1c660fcf4e050e92e1890792c820b8bcb4524c79

Originally written by chomp