[refactor] Update test examples

What does this PR do?

This PR adds the examples to be run within subprocesses.
I have observed the examples could hang which doesn't happen while running within a subprocess.
Fixes #<issue_number>
Does your PR introduce any breaking changes? If yes, please list them.

Before submitting

[ ] Was this discussed/approved via a GitHub issue? (not for typos and docs)
[ ] Did you read the contributor guideline, Pull Request section?
[ ] Did you make sure your PR does only one thing, instead of bundling different changes together?
[ ] Did you make sure to update the documentation with your changes? (if necessary)
[ ] Did you write any new necessary tests? (not for typos and docs)
[ ] Did you verify new and existing tests pass locally with your changes?
[ ] Did you list all the breaking changes introduced by this pull request?
[ ] Did you update the CHANGELOG? (not for typos, docs, test updates, or internal minor changes/refactorings)

PR review
Anyone in the community is welcome to review the PR.
Before you start reviewing make sure you have read Review guidelines. In short, see the following bullet-list:

[ ] Is this pull request ready for review? (if not, please submit in draft mode)
[ ] Check that all items from Before submitting are resolved
[ ] Make sure the title is self-explanatory and the description concisely explains the PR
[ ] Add labels and milestones (and optionally projects) to the PR so it can be classified

Did you have fun?
Make sure you had fun coding 🙃

This might not be necessary after the examples changes in https://github.com/PyTorchLightning/pytorch-lightning/commit/0dfc6a18bd0887261d238819cfaba6a54e6fe4e2

@carmocca potentially... these test are still failing on my PR #9161 after pulling latest from master, but now instead of timing out it fails immediately. some assistance/input there would be great because I lack familiarity with what could be the issue. Doesn't seem like something related to the parts of the code that I touched

but now instead of timing out it fails immediately. some assistance/input there would be great because I lack familiarity with what could be the issue. Doesn't seem like something related to the parts of the code that I touched

When it fails immediately it's usually due to lack of resources on the GPU pool. I've re-run the job.


Escape backslashes else it's considered as unicode character

:+1:

:+1:

@dunglas I'm happy to change it to use single quotes but we should use it everywhere so. Else I think that it's not clear enough that it's because of escaping.

Updated using single quotes.


Add support for another Color From overloads

First thanks for the great extension, it helps a lot in my work!
I found some overloads that are (i think)  not handled properly.
Sample (attached the image):
//Works
Color color = Color.FromArgb(40, 255, 255, 155);

//Not works
Color color1 = Color.FromKnownColor(KnownColor.ControlDark); //It would be great if you could support this format
Color color2 = Color.FromName("Red"); //This is not so necessary, but it may be worth thinking about

//Not working properly
Color color3 = Color.FromArgb(10, Color.Red);
Color color4 = Color.FromArgb(40, Color.Red);

Could these overrides be included at some point?

Nice suggestions

Support coming soon
teaser:

And all the above works without full namespace qualification too.

Thank you, I will test it.


MLAG for only 1 node_group not possible

Issue Summary
HI there,
I am trying to implement MLAG with eos_design role. I added the mlag config to group 1. But I dont want the MLAG config group B. But the AVD build playbook outputs an error. The eos_design role needs to have a mlag_interface configured for "Name-of-L3Leaf2A". But I dont want to configure MLAG on group 2 and this is the regarding code:
Is this normal behaviour or is there something wrong?
node_groups:
    - group: Group_1
      bgp_as: "64901.11"
      mlag_interfaces: ["Ethernet52/1", "Ethernet52/1"]
      mlag_peer_ipv4_pool: <IP_ADDRESS>/24
      mlag_peer_l3_ipv4_pool: <IP_ADDRESS>/24
      nodes:
        - name: Name-of-L3Leaf-1A
          id: 21
         .......
        - name: Name-of-L3Leaf-1B
          id: 22
    - group: Group_2
      nodes:
        - name: Name-of-L3Leaf-2A

Best regards
Stefan
Which component(s) of AVD impacted
eos_designs
How do you run AVD ?
Ansible CLI with AVD Runner
Steps to reproduce
No response
Relevant log output
: Set eos_designs facts] **************************
An exception occurred during task execution. To see the full traceback, use -vvv. The error was: ansible_collections.arista.avd.plugins.plugin_utils.errors.errors.AristaAvdMissingVariableError: 'mlag_interfaces' not set on 'Name-of-L3Leaf-2A.
fatal: [Name-of-L3Leaf-2A]: FAILED! => {"changed": false, "msg": "'mlag_interfaces' not set on 'Name-of-L3Leaf-2A. is required but was not found for host 'Name-of-L3Leaf-2A'"}

Contributing Guide

[X] I agree to follow this project's Code of Conduct

Made a mistake in the grouping of the nodes. Issue is resolved :)


[ENG-5011] Fix/subject iri

Purpose
fix "browse by subject" links on osf preprints landing pages

Changes
fix bug in Subject.get_semantic_iri -- a custom subject should identified by the bepress-subject iri when its text is identical to the bepress-subject, and by its own iri when its text is different (not the other way 'round)

QA Notes
Please make verification statements inspired by your code and what your code touches.

Verify
Verify

What are the areas of risk?
Any concerns/considerations/questions that development raised?
Documentation

Side Effects

Ticket
ENG-5011

@mfraezz no recatalog needed, tho i agree it should have been -- get_semantic_iri is used when querying subjects but not when gathering metadata to index (with this pr, that code comment is made truthful)
that duplicated logic seems like a bug, even tho it's convenient at the moment -- added a one-line "fix" to use get_semantic_iri there instead of absolute_api_v2_subject_url, and any future breaking changes to get_semantic_iri will (correctly?) require recatalog_metadata for whatever's affected

Squashed in as 754e0627c6d903314f13c3852b029c8e7fdf0ab0, consider this merged 🦦


#283 Full width and text-align to left for .detail-container

Fix #283
In .has-mobile-cards mobile tr td:before, is padding-right: 0.5em really useful ? It takes up place for nothing in detail rows.

In .has-mobile-cards mobile tr td:before, is padding-right: 0.5em really useful ? It takes up place for nothing in detail rows.

You're right, I'll remove it for detail rows, thanks!


Release tags

Would be great to have these; https://github.com/punkave/sanitize-html/releases if it's not too much work.

+1 plz tag version

+1

Been doing this for a little bit now.


package name is not found when there are two different google-services.json files

Hello,
I have two flavours setup in my android project: giorgos and giorgosDebug
They are both connected to firebase but they use different project so they have a different/separate google-services.json.
I added the 2 json files under app/giorgos/ and app/giorgosDebug/ respectively.
PROBLEM:
./gradlew processGiorgosDebugGoogleServices fails with:
No matching client found for package name 'nl.giorgos.debug'
If I remove the google-services.json from app/giorgos then the aforementioned gradle task builds successfully. So, I suspect that it is looking only the first json found and ignores the second one.
Thank you in advance for your time.
PS: Where can I find the source code of the processGoogleServices gradle task?

@ktiniatros can you re-download the google-services.json file for each case, place it in both folders, and try again?  It may be that one of your two files is outdated and that's why you're seeing this behavior.

I tried it but no luck:

Task :app:processGiorgosDebugGoogleServices FAILED
Parsing json file: /Users/pap/Documents/android/aNewApp/app/src/giorgos/google-services.json

As you can see, it detects the json file from the giorgos flavor and it stops there.
If I remove the json file from the giorgos flavor, then it detects properly the one from giorgosDebug flavor.
PS: If anyone can point me where I can find the source code for this part, let me know, I would like to try to debug it.

@ktiniatros the plugin is not currently open source (but we're working on it!).
Do your giorgios and giorgiosDebug flavors both have the same package name or different package names?  If different, are they both present in the google-services.json file>

@samtstern they have different package names com.giorgos.giorgos and com.giorgos.giorgos.debug respectively. They are both present in the google-services.json file.


Readme refactor + icon documentation

I took the liberty to refactor the readme a little bit while adding the icon documentation.
Feel free to use or cherry pick as you please.

Basically I added some line breaks, header indentation and quite a few code blocks.
Beyond the feature list, I didn't really edit any wording though.

Great stuff


Incorrect sample request example when using an enum

Context
When using an enum, the example displayed in the sample request is the first element of the enum instead of the provided example
Current Behavior
When using enum:
info:
  version: "0"
servers:
  - url: https://example.com
openapi: 3.0.3
paths:
  /test:
    post:
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                gender:
                  type: string
                  enum:
                    - male
                    - female
                  example: female
              required:
                - gender

Expected Behavior
Spotlight elements should display my example in the sample request.
For example: this is what happens if I remove the enum:
info:
  version: "0"
servers:
  - url: https://example.com
openapi: 3.0.3
paths:
  /test:
    post:
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                gender:
                  type: string
                  example: female
              required:
                - gender

Version used: 7.7.10
Environment name and version (e.g. Chrome 39, node.js 5.4): Chrome
Operating System and version (desktop or mobile): Desktop, Ubuntu

@bokub Great find! Would you mind creating a PR for this?

I'll try to see what I can do

I think a "default" value usually means that this value will be used if not provided.
Using defaut instead of example is a workaround, but I think it's confusing for the users to mark a value as default when it's not the case.
The bug on example is not solved, and I don't understand why you closed this issue... 🤔

When I first looked into the issue I didn't think this may actually be a bug. I could see an argument for using default vs. example values in the Sample Request section - it seems more of a preference than an expected functionality. As a secondary note, I don't find there to be a strong link between the sample request and the examples defined on specific properties. I think body and model examples should be defined and used in the Try-It request and sample body components.
However, I did some digging to make sure we are consistent with how we use examples and default values in the sample requests. I did see that we actually do use the example values of strings in the sample request if provided and so not using the example in enums is a bug. I'll reopen this issue for that reason.
I will note though that if a default and an example value are provided for strings, we use the default value in the sample request. I think it's up for debate whether we should prioritize one over the other, but I do think the bug still stands that if no default enum is provided and an example enum is set, we should use that in the sample requests to be consistent with other data types.
I hope that explains why I initially close the issue (and why I've reopened it as well!).

Great! 🎉
Thanks for taking the time to dig into this!


kubelet service won't start!

**Rancher Version:**1.0.1
**Docker Version:**1.10.3
**OS and where are the hosts located? (cloud, bare metal, etc):**AWS cloud.
Setup Details: (single node vs. single node, internal DB vs. external DB)
Environment Type: (Cattle/Kubernetes/Swarm/Mesos) Kubernetes
Steps to Reproduce:
Rancher wth version 1.0.1 running on ubuntu 14.04
Add an environment (host on  ubuntu 14.04)  with Kubernetes.
Results:
5/16/2016 4:45:14 PMtime="2016-05-16T06:45:14Z" level=fatal msg="open /host/var/run/docker/execdriver/native: no such file or directory"
5/16/2016 4:46:43 PMtime="2016-05-16T06:46:43Z" level=fatal msg="open /host/var/run/docker/execdriver/native: no such file or directory"
kubelet wont start .
kubectl version
Client Version: version.Info{Major:"1", Minor:"1", GitVersion:"v1.1.7", GitCommit:"e4e6878293a339e4087dae684647c9e53f1cf
9f0", GitTreeState:"clean"}
Server Version: version.Info{Major:"1", Minor:"2+", GitVersion:"v1.2.0-rancher-1", GitCommit:"ed6532f975cff184196dbe214d
e8fa0198b415ef", GitTreeState:"clean"}

need to downgrade docker to 1.10.03
sudo apt-get install docker-engine=1.10.3-0~trusty
Fixed


Scenario_runner.py is not working windows 10

I have installed carla from source and scenario runner also.
carla is working i also tried to play it from UEeditor app. after pressing Play button i was trying to run scenario using scenario runner and i got below error.
Expected behavior
C:\scenario_runner>python scenario_runner.py
Traceback (most recent call last):
File "scenario_runner.py", line 35, in
from srunner.scenarioconfigs.openscenario_configuration import OpenScenarioConfiguration
File "C:\scenario_runner\srunner\scenarioconfigs\openscenario_configuration.py", line 24, in
from srunner.tools.openscenario_parser import OpenScenarioParser, ParameterRef
File "C:\scenario_runner\srunner\tools\openscenario_parser.py", line 26, in
from srunner.scenariomanager.scenarioatomics.atomic_behaviors import (TrafficLightStateSetter,
File "C:\scenario_runner\srunner\scenariomanager\scenarioatomics\atomic_behaviors.py", line 30, in
import networkx
File "C:\Users\sgp98\AppData\Roaming\Python\Python38\site-packages\networkx_init_.py", line 117, in
import networkx.readwrite
File "C:\Users\sgp98\AppData\Roaming\Python\Python38\site-packages\networkx\readwrite_init_.py", line 15, in
from networkx.readwrite.graphml import *
File "C:\Users\sgp98\AppData\Roaming\Python\Python38\site-packages\networkx\readwrite\graphml.py", line 314, in
class GraphML(object):
File "C:\Users\sgp98\AppData\Roaming\Python\Python38\site-packages\networkx\readwrite\graphml.py", line 346, in GraphML
(np.int, "int"), (np.int8, "int"),
File "C:\Users\sgp98\AppData\Roaming\Python\Python38\site-packages\numpy_init_.py", line 305, in getattr
raise AttributeError(former_attrs[attr])
AttributeError: module 'numpy' has no attribute 'int'.
np.int was a deprecated alias for the builtin int. To avoid this error in existing code, use int by itself. Doing this will not modify any behavior and is safe. When replacing np.int, you may wish to use e.g. np.int64 or np.int32 to specify the precision. If you wish to review your current use, check the release note link for additional information.
The aliases was originally deprecated in NumPy 1.20; for more details and guidance see the original release note at:
https://numpy.org/devdocs/release/1.20.0-notes.html#deprecations
can someone please help me regarding the issue?
Screenshots

Desktop (please complete the following information):

OS: Windows 10
CARLA Version CARLA 0.9.13
Scenario runner version 0.9.13
Python version 3.8

Hello there, how did you solve this problem? I encountered this one too.


"Format document" for xml documents

Format document function is available for html docs.
Would be cool for XML as well.

Duplicate of #71. Consider using an extension for that as described in #71 🙂


[Feature Request] Display Lyrics on the Now Playing panel

I'm currently using Material Skin on the PiCorePlayer interface v3.4.4 and have installed the Music and Artis Information plugin.
Would be nice to have the ability to display current song's lyrics on the Now Playing area as an alternate or additional view for the current song information panel.

Sorry, there is insufficient space - and lyrics are context info that is shown with the other info.


This contract has a payable fallback function, but no receive ether function.

I get this warning if I compile it through truffle
My Contract:
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.19;

import { SolidStateDiamond } from<EMAIL_ADDRESS>
contract Diamond is SolidStateDiamond {}

The Error:
Compilation warnings encountered:

    Warning: This contract has a payable fallback function, but no receive ether function. Consider adding a receive ether function.
 --> @solidstate/contracts/proxy/diamond/fallback/IDiamondFallback.sol:7:1:
  |
7 | interface IDiamondFallback is IDiamondBase {
  | ^ (Relevant source part starts here and spans across multiple lines).
Note: The payable fallback function is defined here.
 --> @solidstate/contracts/proxy/IProxy.sol:8:5:
  |
8 |     fallback() external payable;
  |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^

,Warning: This contract has a payable fallback function, but no receive ether function. Consider adding a receive ether function.
  --> @solidstate/contracts/proxy/diamond/fallback/DiamondFallback.sol:15:1:
   |
15 | abstract contract DiamondFallback is
   | ^ (Relevant source part starts here and spans across multiple lines).
Note: The payable fallback function is defined here.
  --> @solidstate/contracts/proxy/Proxy.sol:19:5:
   |
19 |     fallback() external payable virtual {
   |     ^ (Relevant source part starts here and spans across multiple lines).

This error is meaningless.  If you want to suppress it, there might be a plugin you can use (there is one for Hardhat, not sure about Truffle).  You could also add something like this:
receive () external {
  revert('unimplemented');
}


[BUG] No enchantments in JEI

Summary
You previously closed the issue without fixing the bug, simply ignoring it. Normal developers don't do that. You definitely did not completed this issue report, so don't close it, especially without granting the ability to the requester to reopen it.
Describe the bug
Enchantments from this mod don't show uses in JEI tabs.
To Reproduce
Steps to reproduce the behavior:

Get a pickaxe (for example).
Notice that «Blazing» enchantment is applicable to it.
Check uses for the pickaxe or mentioned enchantment.
Observe the absence of modded enchantments in tabs.

Expected behavior
Observe enchantments from this mod in the tab (showed in pictures).
Screenshots

Piercing vanilla enchantment as an example of what should be seen.

Versions (please complete the following information):

Forge/Fabric Loader Version: Forge 43.2.8
MC Version: 1.19.2
Mod Version: VanillaTweaks-forge-1.19.2-1.5.65
JEI Version (if present) : jei-1.19.2-forge-<IP_ADDRESS>3
Fabric API Version (if present) :

Additional context
Other mods, at least most of them, don't have this problem.

If you didn't understand, the issue roots in the fact that this mod only supports vanilla enchantments, ignoring modded.

I closed the issue as I wasn't able to reproduce the issue with VanillaTweaks and JEI given version. JEI is responsible for displaying the enchantment in that menu so it isn't an issue of VanillaTweaks.

Now this is the answer! Ok, will be talking to them then


Scanner descriptions

Adding the scanner descriptions doc Henry authored and updating structure, adding link to new content.

This should be good to go; conflicts should resolve without any difficulty since the changes affect different parts of the page.

I think I got everything updated; apologies on the weird bulleted list spacing, I used an auto-format and missed that it had done that.


add materialized views and devcontainer

We don't need the .devcontainer folder folder this repo.

@pinakidas updated the PR to remove the .devcontainer folder


Issue #4450: Support parsing of Order By clause in PQL compiler.

This is the first of several PR's to come for implementing group-by +
order-by support in PQL. The changes in this PR are limited to parsing
the order-by clause.

Added a top level orderBy field in BrokerRequest. The existing
selectionSort field is tied to selection only queries, and removing it
will break backward compatibility. Once the code is moved to use
PinotQuery instead of BrokerRequest, this will get cleaned up
automatically.

Moved to latest Thrift version 0.12.0. This required removing the
org.apache.commons.lang3 exclusion from pom.xml.

Added unit test for order-by compilation.

@snleee Thanks for bringing up the concern. Although I would be surprised if these versions of Thrift generates incompatible code for same input, I did go ahead and test the scenario you mentioned and it works as expected.


header parameter does not return request.headers

This is my code:

and this is the response:

What is expected:

There is also this case:
If I define my hello in Headers class as:
hello: str = Field("what's up")
then no matter what I place in my "hello" header, I always get the default "what's up" value.

P.D. Thanks so much for this great library!

It is caused by the case of initial letters. I'll fix it.


Automatically delete announcement when stream goes offline.

I'll second this, I currently have an announcements channel and a cleanup would be awesome.


Tax calculation disregards discounts [CRITICAL]

- Do you want to request a feature or report a bug?
Bug.
- What is the current behavior?
The total tax stays the same even if a discount code is applied
(while it actually should be based to the final price, including the
discount)
- What is the expected behavior?
Tax calculation should be based to the final price, including the
discount
Duplicate of https://github.com/netlify/gocommerce-js/issues/16

Hi @phae, do we have any news on this? The total tax still stays the same even if a discount code is applied. See the below screenshots for comparison! + @biilmann @ChrBach @pukhalski

I was just setting up two typical examples of how we may want to reroute tax calculation with fixed and relative discounts: (link) @mraerino

I didn't mean to reopen this.  Not sure how that happened.


Report crashes from tasks in minidump form

One thing that has come up from our use of OneFuzz is that our fuzzers may occasionally crash in production from unintentional bugs.
Because we're adding more complexity to our fuzzers and allowing third parties to write their own fuzzers, it's becoming more important that we're able to properly report errors in the fuzzers themselves as they are discovered in production so that we can either triage and fix the bugs ourselves or forward the relevant information to the third-party fuzzer developers so that they can fix the bugs.
However, while debugging panics printed to stdout is effective when that occurs from Rust or Go panics, we may still be faced with traditional access violations and other bugs from our particular setup that do not print any output.
In that case, it'd be best if crashes could be intercepted and dumped into minidump form, using the rust-minidump library suite. They can then be logged to some other service like Sentry that can be set up to notify us via Teams.
AB#35863

@DrChat  - we will not be looking into this till next semester.
If you are planning to commit any work to this and create a proof of concept - we will be able to leverage your work.

Related: #3274


Support sqlalchemy 1.4

sqlalchemy 1.4 has some breaking changes. At the very least, we need to remove all uses of contextual_connect (which appears to be safe since we don't appear to use threadlocal anywhere).
Once sqlalchemy is supported in core records-mover, we should make sure that we only lift the restriction once all sqlalchemy packages have updated their own version constraints to account for their own support. (For example, sqlalchemy bigquery support does not currently support 1.4 but they have updated their constraints to reflect this)

Looks like bigquery sqlalchemy 1.4 support is close: https://github.com/googleapis/python-bigquery-sqlalchemy/pull/177

bigquery compatibility has been achieved since just a few days after Chris's last message above, see: https://github.com/googleapis/python-bigquery-sqlalchemy/releases/tag/v0.8.0

Completed in #208


[Accessibility] [Screen Reader] Add a screen reader announcement when the toggle full-screen option is enable or disable

Fixes ADO Issue: #64005
Describe the issue
If users Navigate on toggle full-screen menu item and selection of that control also exit full screen, the screen reader announces same information for both times and it would be confusing for screen reader users if the action is completed or not.
Actual behavior:
Navigating on View menu item and select toggle full-screen and exit full screen with shortcut key which provided with control, screen reader provided same information after performing the action on both times.
Expected behavior:
Navigating on View menu item and select toggle full screen and exit full screen with shortcut key which provided with control, screen reader should be provided proper information at full screen, it should announce full screen at exit full screen. it should be announced as exit full screen.
Repro Steps:

Open Bot Framework Emulator installed on the system.
Bot Framework Emulator Application with Welcome screen opens.
Navigate on the welcome screen and select Create a New BOT configuration link.
New BOT Configuration dialog opens.
Navigate on the dialog and enter inputs in edit fields then select the save and connect button.
Navigate to View Menu on the ribbon and select it.
View menu opens, navigate to Toggle Full-screen control and Select it. The application gets full screen.
Verify the screen reader provide correct information or not.

Changes included in the PR

Added a screen reader announcement when the full-screen option is toggled on/off

Screenshots
Test cases executed successfully
eventHandlers component

appMenuTemplate component

Coverage decreased (-0.03%) to 67.839% when pulling 57fa3f794726c16afddc9b52d9ece95e51f04732 on southworks:external/southworks/fix/view-menu/add-toggle-fullscreen-message into a09833d1b09d244ea22f51b77bf53ed763ce2ab4 on microsoft:main.

Hey @tonyanziano,
Sorry, I got the same error, fixed it and forgot to push the change. Now it should pass.


Correcting typo-error in shebang

Signed-off-by: ajeetrai707<EMAIL_ADDRESS>Correcting typo-error in shebang in launch.sh file .

@AJEETRAI707 Can you raise it for staging branch

Closing this PR, Can you raise this fix for staging branch


Add support for custom tags

It would be nice to support adding custom tags, especially to set Unified Service Tagging ones: env, service, version, team, etc

Now this action supports datadog-tags option. Thank you for the feature request.

Awesome, thank you :+1:


Laravel and laravel-echo-server TokenMismatch

Hi all.
Disclaimer. This works curectly with Pusher (so at least that's out of the way).
I started yesterday working on a project using Laravel echo and i wanted to use socket.io instead of pusher. So as suggested by Taylor on the official documentation, i went ahead and pulled in https://github.com/tlaverdure/laravel-echo-server
Doing this on Homestead.
Got everything working fine with public events.
The issues started with private channels.
As expected, and defined in the BroadcastServiceProvider, i need to send auth requests to /broadcasting/auth. The problem is i get a constant token mismatch exception.
Investigating further in Illuminate\Foundation\Http\Middleware\VerifyCsrfToken and specifically in the tokensMatch function, i notice that
$sessionToken = $request->session()->token();

and
 $token = $request->input('_token') ?: $request->header('X-CSRF-TOKEN');

have two different values. The one in the headers being the one of the authenticated session (so the correct one).
Moving further i was initially using redis as session store. Then i moved into file and noticed that for every request to /boadcasting/auth a new session was being generated.
In the end starting storing sessions into the database. Here's where the final clue came.
For every request coming from homestead (where node and laravel are, thus Echo is running) I am getting a new session generated with Homestead's ip <IP_ADDRESS> for every time i load the page. So naturally the sessions would not match but i can't figure out how to avoid it.
Additionally, even moving the application out of homestead yielded the same results.
-Basically echo server is unable to tell Laravel the currently logged in user.
I've cleared all caches, dumped autoload, cleared compiled, even rebuilt the vendor folder a couple of times.
At this point i have no idea anymore. I'd really appreciate if someone could shed some light.
Thanks in advance

https://laravel.com/docs/5.3/broadcasting#introduction

CSRF Token
Laravel Echo will need access to the current session's CSRF token. If available, Echo will pull the token from the Laravel.csrfToken JavaScript object. This object is defined in the  resources/views/layouts/app.blade.php layout that is created if you run the make:auth Artisan command. If you are not using this layout, you may define a meta tag in your application's head HTML element:

<meta name="csrf-token" content="{{ csrf_token() }}">
Also in bootstrap.js assuming you're using Vue resource to send the requests should have
/**
 * We'll register a HTTP interceptor to attach the "CSRF" header to each of
 * the outgoing requests issued by this application. The CSRF middleware
 * included with Laravel will automatically verify the header's value.
 */

Vue.http.interceptors.push((request, next) => {
    request.headers['X-CSRF-TOKEN'] = Laravel.csrfToken;

    next();
});

@jonnywilliamson the Laravel.csrfToken wont work unless u have the script part in the layout file to bind it so instead u can use
Vue.http.interceptors.push((request, next) => {
    const csrfToken = document.querySelector('meta[name="csrf-token"]').getAttribute('content')
    request.headers.set('X-CSRF-TOKEN', csrfToken);
    next();
});

@ctf0 Thanks! I wasn't having the issue it was @sidis405 .
Hopefully he got sorted.

@sidis405 Did you find the solution? I'm having the same issue.

I just ignored the CSRF protection on the broadcasting route.. But CSRF protection works for me out of the box when I do this:  <meta name="csrf-token" content="<?= csrf_token() ?>" /> in the <head>, only problem is that it expires after inactivity

Is you authentication domain exactly the same as the app you're viewing? Can you verify that the Cookies are sent with your Socket (eg. open the WebSocket tab in Chrome dev tools and view the request headers)

i have the same problem.
i think the laravel-echo-server sent the request with new session.
and if i disable  CSRF verification middleware  ,  the request->user() is return null.
this is the problem.

See my questions in previous comment.
If no valid cookies are sent, the session id isn't correctly passed through and will generate a new session.

please see the snapshot.

So no laravel session cookies. What if you visit the website also on http://localhost instead of <IP_ADDRESS>?

thanks for your help @barryvdh , the problem fixed .
i'm must access the applecation used localhost not the ip .
this is the problem.

Yes you must connect to the web socket over the same domain as the app to share cookies, or use state less login with jwt headers or something.

Tip, try something like this in your client side code:
window.Echo = new Echo({
broadcaster: 'socket.io',
host: window.location.hostname + ':6001'
});

I am getting a TokenMismatch too, I have gone into Echo.js to see what happens when the request is sent and i logged out the headers. It is adding in the CSRF token itself which is great.
However, when the auth tries to authenticate I am getting

Client can not be authenticated, got HTTP status 419

Which looking at HttpException refers to TokenMismatch. Is there any reason why even with the CSRF token in place that i would get a mismatch?
Authorization:"Bearer blahblah"
X-CSRF-TOKEN:"ix7T4lZA9mfCxrd9jDAbeGvSglMeoge7X7fG8LLi"

Hey there, this issue was opened a while ago. I'm going to close this issue, if this issue still exists, please open a new issue or open a Pull Request.

I have same problem. TokenMismatchException, and if i disable csrf the request user is null. I'm using different domain on websocket, and the webserver, I'm using a subdomain with different IP address for the websocket  (https://ws.example.com:443). I must use another domain on port 443, because some on some networks has been disabled every port except the main ports (HTTP, HTTPS, IMAP, POP3, etc).
Update: I solved the problem: changed session.php 'domain' changed to: .example.com

It's funny when years later you have the same problem and you bump on your own issue only to find a solution from 3 hours ago. Thank you @marothyzsolt 💯

I've faced this issue on my local dev environment.
In my case I solved it by replacing <IP_ADDRESS> by localhost.

Thanks to @barryvdh and @marothyzsolt , your comments help me a so much.

i set localhost and ip and  APP_URL  and host to <IP_ADDRESS> thhen i send CSRF token
some time may thay have diffrent destination that why i set them in one (<IP_ADDRESS>) and it works !
and csrf like this
window.Echo = new MyEcho({
broadcaster: 'socket.io',
host: '<IP_ADDRESS>:6001', // this is laravel-echo-server host
auth:{
headers: {
'X-CSRF-TOKEN': '{{csrf_token()}}'
}}
});


How to train VeRi dataset? I cannot reproduce the result listed in your paper.

At first, thanks a lot for your excellent works to the re-ID community.
In this repo, you claim the results are as below:
Method         |  Pretrained | Rank@1 | mAP   | mINP  | download
SBS(R50-ibn) | ImageNet   | 97.0%    | 81.9% | 46.3% |
I have tried to reproduce this. However, I can only get the following results:
Datasets   | Rank-1   | Rank-5   | Rank-10   | mAP    | mINP
| VeRi       | 95.53%   | 98.15%   | 98.81%    | 73.67% | 31.53%
I used the default config file: SBS(R50-ibn), and the command to train the model is: CUDA_VISIBLE_DEVICES=2,3 python tools/train_net.py --config-file configs/VeRi/sbs_R50-ibn.yml --num-gpus 2
The complete config is as below:
[08/06 23:43:14] fastreid INFO: Contents of args.config_file=./configs/VeRi/sbs_R50-ibn.yml:
BASE: "../Base-Strongerbaseline.yml"
INPUT:
SIZE_TRAIN: [256, 256]
SIZE_TEST: [256, 256]
MODEL:
BACKBONE:
WITH_IBN: True
SOLVER:
OPT: "SGD"
BASE_LR: 0.01
ETA_MIN_LR: 7.7e-5
IMS_PER_BATCH: 64
MAX_ITER: 60
DELAY_ITERS: 30
WARMUP_ITERS: 10
FREEZE_ITERS: 10
CHECKPOINT_PERIOD: 20
DATASETS:
NAMES: ("VeRi",)
TESTS: ("VeRi",)
TEST:
EVAL_PERIOD: 20
IMS_PER_BATCH: 128
OUTPUT_DIR: "logs/veri/sbs_R50-ibn"
[08/06 23:43:14] fastreid INFO: Running with full config:
CUDNN_BENCHMARK: True
DATALOADER:
NAIVE_WAY: True
NUM_INSTANCE: 16
NUM_WORKERS: 8
PK_SAMPLER: True
DATASETS:
COMBINEALL: False
NAMES: ('VeRi',)
TESTS: ('VeRi',)
INPUT:
CJ:
BRIGHTNESS: 0.15
CONTRAST: 0.15
ENABLED: False
HUE: 0.1
PROB: 0.8
SATURATION: 0.1
DO_AUGMIX: False
DO_AUTOAUG: True
DO_FLIP: True
DO_PAD: True
FLIP_PROB: 0.5
PADDING: 10
PADDING_MODE: constant
REA:
ENABLED: True
MEAN: [123.675, 116.28, 103.53]
PROB: 0.5
RPT:
ENABLED: False
PROB: 0.5
SIZE_TEST: [256, 256]
SIZE_TRAIN: [256, 256]
MODEL:
BACKBONE:
DEPTH: 50x
LAST_STRIDE: 1
NAME: build_resnet_backbone
NORM: BN
NORM_SPLIT: 1
PRETRAIN: True
PRETRAIN_PATH:
WITH_IBN: True
WITH_NL: True
WITH_SE: False
DEVICE: cuda
FREEZE_LAYERS: ['backbone']
HEADS:
CLS_LAYER: circleSoftmax
IN_FEAT: 2048
MARGIN: 0.35
NAME: BNneckHead
NECK_FEAT: after
NORM: BN
NORM_SPLIT: 1
NUM_CLASSES: 0
POOL_LAYER: gempool
REDUCTION_DIM: 512
SCALE: 64
LOSSES:
CE:
ALPHA: 0.2
EPSILON: 0.1
SCALE: 1.0
CIRCLE:
ALPHA: 128
MARGIN: 0.25
SCALE: 1.0
FL:
ALPHA: 0.25
GAMMA: 2
SCALE: 1.0
NAME: ('CrossEntropyLoss', 'TripletLoss')
TRI:
HARD_MINING: True
MARGIN: 0.0
NORM_FEAT: False
SCALE: 1.0
META_ARCHITECTURE: Baseline
PIXEL_MEAN: [123.675, 116.28, 103.53]
PIXEL_STD: [58.395, 57.120000000000005, 57.375]
WEIGHTS:
OUTPUT_DIR: logs/veri/sbs_R50-ibn
SOLVER:
BASE_LR: 0.01
BIAS_LR_FACTOR: 1.0
CHECKPOINT_PERIOD: 20
DELAY_ITERS: 30
ETA_MIN_LR: 7.7e-05
FREEZE_ITERS: 10
GAMMA: 0.1
HEADS_LR_FACTOR: 1.0
IMS_PER_BATCH: 64
MAX_ITER: 60
MOMENTUM: 0.9
OPT: SGD
SCHED: WarmupCosineAnnealingLR
STEPS: [40, 90]
SWA:
ENABLED: False
ETA_MIN_LR: 3.5e-06
ITER: 10
LR_FACTOR: 10.0
LR_SCHED: False
PERIOD: 2
WARMUP_FACTOR: 0.01
WARMUP_ITERS: 10
WARMUP_METHOD: linear
WEIGHT_DECAY: 0.0005
WEIGHT_DECAY_BIAS: 0.0005
TEST:
AQE:
ALPHA: 3.0
ENABLED: False
QE_K: 5
QE_TIME: 1
EVAL_PERIOD: 20
IMS_PER_BATCH: 128
METRIC: cosine
PRECISE_BN:
DATASET: Market1501
ENABLED: False
NUM_ITER: 300
RERANK:
ENABLED: False
K1: 20
K2: 6
LAMBDA: 0.3

Could you help me to train VeRi in a right way!
Thanks a lot for your assisstance!

I had a similar problem in VehicleID dataset too, and I used the default config: configs/VehicleID/bagtricks_R50_ibn.yml. The difference is that I set the batch size to 256 instead of 512 and used 4 gpus.
As mentioned above, I get the following results:

Datasets
Rank-1
Rank-5
Rank-10
mAP
mINP
TPR@FPR=1e-04
TPR@FPR=1e-03
TPR@FPR=1e-02

SmallVehicleID
78.97%
91.82%
96.00%
79.20%
79.20%
11.19%
28.58%
93.66%

MediumVehicleID
73.83%
87.43%
93.06%
75.08%
75.08%
9.25%
44.20%
93.21%

LargeVehicleID
74.17%
86.25%
92.26%
74.99%
74.99%
3.05%
26.55%
95.24%

And you claim the results are as below:

Datasets
Rank-1
Rank-5

SmallVehicleID
86.6%
97.9%

MediumVehicleID
82.9%
96.0%

LargeVehicleID
80.6%
93.9%

Looking foward your reply. Thanks your help.

At first, thanks a lot for your excellent works to the re-ID community.
In this repo, you claim the results are as below:
Method | Pretrained | Rank@1 | mAP | mINP | download
SBS(R50-ibn) | ImageNet | 97.0% | 81.9% | 46.3% |
I have tried to reproduce this. However, I can only get the following results:
Datasets | Rank-1 | Rank-5 | Rank-10 | mAP | mINP
| VeRi | 95.53% | 98.15% | 98.81% | 73.67% | 31.53%
I used the default config file: SBS(R50-ibn), and the command to train the model is: CUDA_VISIBLE_DEVICES=2,3 python tools/train_net.py --config-file configs/VeRi/sbs_R50-ibn.yml --num-gpus 2
The complete config is as below:
[08/06 23:43:14] fastreid INFO: Contents of args.config_file=./configs/VeRi/sbs_R50-ibn.yml:
BASE: "../Base-Strongerbaseline.yml"
INPUT:
SIZE_TRAIN: [256, 256]
SIZE_TEST: [256, 256]
MODEL:
BACKBONE:
WITH_IBN: True
SOLVER:
OPT: "SGD"
BASE_LR: 0.01
ETA_MIN_LR: 7.7e-5
IMS_PER_BATCH: 64
MAX_ITER: 60
DELAY_ITERS: 30
WARMUP_ITERS: 10
FREEZE_ITERS: 10
CHECKPOINT_PERIOD: 20
DATASETS:
NAMES: ("VeRi",)
TESTS: ("VeRi",)
TEST:
EVAL_PERIOD: 20
IMS_PER_BATCH: 128
OUTPUT_DIR: "logs/veri/sbs_R50-ibn"
[08/06 23:43:14] fastreid INFO: Running with full config:
CUDNN_BENCHMARK: True
DATALOADER:
NAIVE_WAY: True
NUM_INSTANCE: 16
NUM_WORKERS: 8
PK_SAMPLER: True
DATASETS:
COMBINEALL: False
NAMES: ('VeRi',)
TESTS: ('VeRi',)
INPUT:
CJ:
BRIGHTNESS: 0.15
CONTRAST: 0.15
ENABLED: False
HUE: 0.1
PROB: 0.8
SATURATION: 0.1
DO_AUGMIX: False
DO_AUTOAUG: True
DO_FLIP: True
DO_PAD: True
FLIP_PROB: 0.5
PADDING: 10
PADDING_MODE: constant
REA:
ENABLED: True
MEAN: [123.675, 116.28, 103.53]
PROB: 0.5
RPT:
ENABLED: False
PROB: 0.5
SIZE_TEST: [256, 256]
SIZE_TRAIN: [256, 256]
MODEL:
BACKBONE:
DEPTH: 50x
LAST_STRIDE: 1
NAME: build_resnet_backbone
NORM: BN
NORM_SPLIT: 1
PRETRAIN: True
PRETRAIN_PATH:
WITH_IBN: True
WITH_NL: True
WITH_SE: False
DEVICE: cuda
FREEZE_LAYERS: ['backbone']
HEADS:
CLS_LAYER: circleSoftmax
IN_FEAT: 2048
MARGIN: 0.35
NAME: BNneckHead
NECK_FEAT: after
NORM: BN
NORM_SPLIT: 1
NUM_CLASSES: 0
POOL_LAYER: gempool
REDUCTION_DIM: 512
SCALE: 64
LOSSES:
CE:
ALPHA: 0.2
EPSILON: 0.1
SCALE: 1.0
CIRCLE:
ALPHA: 128
MARGIN: 0.25
SCALE: 1.0
FL:
ALPHA: 0.25
GAMMA: 2
SCALE: 1.0
NAME: ('CrossEntropyLoss', 'TripletLoss')
TRI:
HARD_MINING: True
MARGIN: 0.0
NORM_FEAT: False
SCALE: 1.0
META_ARCHITECTURE: Baseline
PIXEL_MEAN: [123.675, 116.28, 103.53]
PIXEL_STD: [58.395, 57.120000000000005, 57.375]
WEIGHTS:
OUTPUT_DIR: logs/veri/sbs_R50-ibn
SOLVER:
BASE_LR: 0.01
BIAS_LR_FACTOR: 1.0
CHECKPOINT_PERIOD: 20
DELAY_ITERS: 30
ETA_MIN_LR: 7.7e-05
FREEZE_ITERS: 10
GAMMA: 0.1
HEADS_LR_FACTOR: 1.0
IMS_PER_BATCH: 64
MAX_ITER: 60
MOMENTUM: 0.9
OPT: SGD
SCHED: WarmupCosineAnnealingLR
STEPS: [40, 90]
SWA:
ENABLED: False
ETA_MIN_LR: 3.5e-06
ITER: 10
LR_FACTOR: 10.0
LR_SCHED: False
PERIOD: 2
WARMUP_FACTOR: 0.01
WARMUP_ITERS: 10
WARMUP_METHOD: linear
WEIGHT_DECAY: 0.0005
WEIGHT_DECAY_BIAS: 0.0005
TEST:
AQE:
ALPHA: 3.0
ENABLED: False
QE_K: 5
QE_TIME: 1
EVAL_PERIOD: 20
IMS_PER_BATCH: 128
METRIC: cosine
PRECISE_BN:
DATASET: Market1501
ENABLED: False
NUM_ITER: 300
RERANK:
ENABLED: False
K1: 20
K2: 6
LAMBDA: 0.3
Could you help me to train VeRi in a right way!
Thanks a lot for your assisstance!

Thanks for your attention to our repo!
I find that you use 2 GPUs to train VeRi, I advice you to train it by one GPU. And I recently found it would be better to set "MODEL.LOSSES.CE.ALPHA=0.8, DATALOADER.NAIVE_WAY=False", you can try it.
Moreover, because of the code changes, some setting in the config also need to be modified, we are also debugging recently, will upload the latest config and model, thank you for your attention!

I had a similar problem in VehicleID dataset too, and I used the default config: configs/VehicleID/bagtricks_R50_ibn.yml. The difference is that I set the batch size to 256 instead of 512 and used 4 gpus.
As mentioned above, I get the following results:
Datasets	Rank-1	Rank-5	Rank-10	mAP	mINP	TPR@FPR=1e-04	TPR@FPR=1e-03	TPR@FPR=1e-02
SmallVehicleID	78.97%	91.82%	96.00%	79.20%	79.20%	11.19%	28.58%	93.66%
MediumVehicleID	73.83%	87.43%	93.06%	75.08%	75.08%	9.25%	44.20%	93.21%
LargeVehicleID	74.17%	86.25%	92.26%	74.99%	74.99%	3.05%	26.55%	95.24%
but you claim the results are as below:
Datasets	Rank-1	Rank-5
SmallVehicleID	86.6%	97.9%
MediumVehicleID	82.9%	96.0%
LargeVehicleID	80.6%	93.9%
Looking foward your reply. Thanks your help.

Thank you for your attention!
When I use "256 batch size, 4GPUs" to train VehicleID, I also get poor results.
In addition, because of the code changes, some setting in the config also need to be modified, we are also debugging recently, will upload the latest config and model, thank you again for your attention!

I had a similar problem in VehicleID dataset too, and I used the default config: configs/VehicleID/bagtricks_R50_ibn.yml. The difference is that I set the batch size to 256 instead of 512 and used 4 gpus.
As mentioned above, I get the following results:
Datasets	Rank-1	Rank-5	Rank-10	mAP	mINP	TPR@FPR=1e-04	TPR@FPR=1e-03	TPR@FPR=1e-02
SmallVehicleID	78.97%	91.82%	96.00%	79.20%	79.20%	11.19%	28.58%	93.66%
MediumVehicleID	73.83%	87.43%	93.06%	75.08%	75.08%	9.25%	44.20%	93.21%
LargeVehicleID	74.17%	86.25%	92.26%	74.99%	74.99%	3.05%	26.55%	95.24%
but you claim the results are as below:
Datasets	Rank-1	Rank-5
SmallVehicleID	86.6%	97.9%
MediumVehicleID	82.9%	96.0%
LargeVehicleID	80.6%	93.9%
Looking foward your reply. Thanks your help.

Thank you for your attention!
When I use "256 batch size, 4GPUs" to train VehicleID, I also get poor results.
In addition, because of the code changes, some setting in the config also need to be modified, we are also debugging recently, will upload the latest config and model, thank you again for your attention!

Thanks for your reply. I'll keep attention. thanks a lot for your outstanding works to the re-ID community.

At first, thanks a lot for your excellent works to the re-ID community.
In this repo, you claim the results are as below:
Method | Pretrained | Rank@1 | mAP | mINP | download
SBS(R50-ibn) | ImageNet | 97.0% | 81.9% | 46.3% |
I have tried to reproduce this. However, I can only get the following results:
Datasets | Rank-1 | Rank-5 | Rank-10 | mAP | mINP
| VeRi | 95.53% | 98.15% | 98.81% | 73.67% | 31.53%
I used the default config file: SBS(R50-ibn), and the command to train the model is: CUDA_VISIBLE_DEVICES=2,3 python tools/train_net.py --config-file configs/VeRi/sbs_R50-ibn.yml --num-gpus 2
The complete config is as below:
[08/06 23:43:14] fastreid INFO: Contents of args.config_file=./configs/VeRi/sbs_R50-ibn.yml:
BASE: "../Base-Strongerbaseline.yml"
INPUT:
SIZE_TRAIN: [256, 256]
SIZE_TEST: [256, 256]
MODEL:
BACKBONE:
WITH_IBN: True
SOLVER:
OPT: "SGD"
BASE_LR: 0.01
ETA_MIN_LR: 7.7e-5
IMS_PER_BATCH: 64
MAX_ITER: 60
DELAY_ITERS: 30
WARMUP_ITERS: 10
FREEZE_ITERS: 10
CHECKPOINT_PERIOD: 20
DATASETS:
NAMES: ("VeRi",)
TESTS: ("VeRi",)
TEST:
EVAL_PERIOD: 20
IMS_PER_BATCH: 128
OUTPUT_DIR: "logs/veri/sbs_R50-ibn"
[08/06 23:43:14] fastreid INFO: Running with full config:
CUDNN_BENCHMARK: True
DATALOADER:
NAIVE_WAY: True
NUM_INSTANCE: 16
NUM_WORKERS: 8
PK_SAMPLER: True
DATASETS:
COMBINEALL: False
NAMES: ('VeRi',)
TESTS: ('VeRi',)
INPUT:
CJ:
BRIGHTNESS: 0.15
CONTRAST: 0.15
ENABLED: False
HUE: 0.1
PROB: 0.8
SATURATION: 0.1
DO_AUGMIX: False
DO_AUTOAUG: True
DO_FLIP: True
DO_PAD: True
FLIP_PROB: 0.5
PADDING: 10
PADDING_MODE: constant
REA:
ENABLED: True
MEAN: [123.675, 116.28, 103.53]
PROB: 0.5
RPT:
ENABLED: False
PROB: 0.5
SIZE_TEST: [256, 256]
SIZE_TRAIN: [256, 256]
MODEL:
BACKBONE:
DEPTH: 50x
LAST_STRIDE: 1
NAME: build_resnet_backbone
NORM: BN
NORM_SPLIT: 1
PRETRAIN: True
PRETRAIN_PATH:
WITH_IBN: True
WITH_NL: True
WITH_SE: False
DEVICE: cuda
FREEZE_LAYERS: ['backbone']
HEADS:
CLS_LAYER: circleSoftmax
IN_FEAT: 2048
MARGIN: 0.35
NAME: BNneckHead
NECK_FEAT: after
NORM: BN
NORM_SPLIT: 1
NUM_CLASSES: 0
POOL_LAYER: gempool
REDUCTION_DIM: 512
SCALE: 64
LOSSES:
CE:
ALPHA: 0.2
EPSILON: 0.1
SCALE: 1.0
CIRCLE:
ALPHA: 128
MARGIN: 0.25
SCALE: 1.0
FL:
ALPHA: 0.25
GAMMA: 2
SCALE: 1.0
NAME: ('CrossEntropyLoss', 'TripletLoss')
TRI:
HARD_MINING: True
MARGIN: 0.0
NORM_FEAT: False
SCALE: 1.0
META_ARCHITECTURE: Baseline
PIXEL_MEAN: [123.675, 116.28, 103.53]
PIXEL_STD: [58.395, 57.120000000000005, 57.375]
WEIGHTS:
OUTPUT_DIR: logs/veri/sbs_R50-ibn
SOLVER:
BASE_LR: 0.01
BIAS_LR_FACTOR: 1.0
CHECKPOINT_PERIOD: 20
DELAY_ITERS: 30
ETA_MIN_LR: 7.7e-05
FREEZE_ITERS: 10
GAMMA: 0.1
HEADS_LR_FACTOR: 1.0
IMS_PER_BATCH: 64
MAX_ITER: 60
MOMENTUM: 0.9
OPT: SGD
SCHED: WarmupCosineAnnealingLR
STEPS: [40, 90]
SWA:
ENABLED: False
ETA_MIN_LR: 3.5e-06
ITER: 10
LR_FACTOR: 10.0
LR_SCHED: False
PERIOD: 2
WARMUP_FACTOR: 0.01
WARMUP_ITERS: 10
WARMUP_METHOD: linear
WEIGHT_DECAY: 0.0005
WEIGHT_DECAY_BIAS: 0.0005
TEST:
AQE:
ALPHA: 3.0
ENABLED: False
QE_K: 5
QE_TIME: 1
EVAL_PERIOD: 20
IMS_PER_BATCH: 128
METRIC: cosine
PRECISE_BN:
DATASET: Market1501
ENABLED: False
NUM_ITER: 300
RERANK:
ENABLED: False
K1: 20
K2: 6
LAMBDA: 0.3
Could you help me to train VeRi in a right way!
Thanks a lot for your assisstance!
Thanks for your attention to our repo!
I find that you use 2 GPUs to train VeRi, I advice you to train it by one GPU. And I recently found it would be better to set "MODEL.LOSSES.CE.ALPHA=0.8, DATALOADER.NAIVE_WAY=False", you can try it.
Moreover, because of the code changes, some setting in the config also need to be modified, we are also debugging recently, will upload the latest config and model, thank you for your attention!

Thanks for your reply. By the way, to help others, I would like to keep this issue open until the expected result is achieved.

At first, thanks a lot for your excellent works to the re-ID community.
In this repo, you claim the results are as below:
Method | Pretrained | Rank@1 | mAP | mINP | download
SBS(R50-ibn) | ImageNet | 97.0% | 81.9% | 46.3% |
I have tried to reproduce this. However, I can only get the following results:
Datasets | Rank-1 | Rank-5 | Rank-10 | mAP | mINP
| VeRi | 95.53% | 98.15% | 98.81% | 73.67% | 31.53%
I used the default config file: SBS(R50-ibn), and the command to train the model is: CUDA_VISIBLE_DEVICES=2,3 python tools/train_net.py --config-file configs/VeRi/sbs_R50-ibn.yml --num-gpus 2
The complete config is as below:
[08/06 23:43:14] fastreid INFO: Contents of args.config_file=./configs/VeRi/sbs_R50-ibn.yml:
BASE: "../Base-Strongerbaseline.yml"
INPUT:
SIZE_TRAIN: [256, 256]
SIZE_TEST: [256, 256]
MODEL:
BACKBONE:
WITH_IBN: True
SOLVER:
OPT: "SGD"
BASE_LR: 0.01
ETA_MIN_LR: 7.7e-5
IMS_PER_BATCH: 64
MAX_ITER: 60
DELAY_ITERS: 30
WARMUP_ITERS: 10
FREEZE_ITERS: 10
CHECKPOINT_PERIOD: 20
DATASETS:
NAMES: ("VeRi",)
TESTS: ("VeRi",)
TEST:
EVAL_PERIOD: 20
IMS_PER_BATCH: 128
OUTPUT_DIR: "logs/veri/sbs_R50-ibn"
[08/06 23:43:14] fastreid INFO: Running with full config:
CUDNN_BENCHMARK: True
DATALOADER:
NAIVE_WAY: True
NUM_INSTANCE: 16
NUM_WORKERS: 8
PK_SAMPLER: True
DATASETS:
COMBINEALL: False
NAMES: ('VeRi',)
TESTS: ('VeRi',)
INPUT:
CJ:
BRIGHTNESS: 0.15
CONTRAST: 0.15
ENABLED: False
HUE: 0.1
PROB: 0.8
SATURATION: 0.1
DO_AUGMIX: False
DO_AUTOAUG: True
DO_FLIP: True
DO_PAD: True
FLIP_PROB: 0.5
PADDING: 10
PADDING_MODE: constant
REA:
ENABLED: True
MEAN: [123.675, 116.28, 103.53]
PROB: 0.5
RPT:
ENABLED: False
PROB: 0.5
SIZE_TEST: [256, 256]
SIZE_TRAIN: [256, 256]
MODEL:
BACKBONE:
DEPTH: 50x
LAST_STRIDE: 1
NAME: build_resnet_backbone
NORM: BN
NORM_SPLIT: 1
PRETRAIN: True
PRETRAIN_PATH:
WITH_IBN: True
WITH_NL: True
WITH_SE: False
DEVICE: cuda
FREEZE_LAYERS: ['backbone']
HEADS:
CLS_LAYER: circleSoftmax
IN_FEAT: 2048
MARGIN: 0.35
NAME: BNneckHead
NECK_FEAT: after
NORM: BN
NORM_SPLIT: 1
NUM_CLASSES: 0
POOL_LAYER: gempool
REDUCTION_DIM: 512
SCALE: 64
LOSSES:
CE:
ALPHA: 0.2
EPSILON: 0.1
SCALE: 1.0
CIRCLE:
ALPHA: 128
MARGIN: 0.25
SCALE: 1.0
FL:
ALPHA: 0.25
GAMMA: 2
SCALE: 1.0
NAME: ('CrossEntropyLoss', 'TripletLoss')
TRI:
HARD_MINING: True
MARGIN: 0.0
NORM_FEAT: False
SCALE: 1.0
META_ARCHITECTURE: Baseline
PIXEL_MEAN: [123.675, 116.28, 103.53]
PIXEL_STD: [58.395, 57.120000000000005, 57.375]
WEIGHTS:
OUTPUT_DIR: logs/veri/sbs_R50-ibn
SOLVER:
BASE_LR: 0.01
BIAS_LR_FACTOR: 1.0
CHECKPOINT_PERIOD: 20
DELAY_ITERS: 30
ETA_MIN_LR: 7.7e-05
FREEZE_ITERS: 10
GAMMA: 0.1
HEADS_LR_FACTOR: 1.0
IMS_PER_BATCH: 64
MAX_ITER: 60
MOMENTUM: 0.9
OPT: SGD
SCHED: WarmupCosineAnnealingLR
STEPS: [40, 90]
SWA:
ENABLED: False
ETA_MIN_LR: 3.5e-06
ITER: 10
LR_FACTOR: 10.0
LR_SCHED: False
PERIOD: 2
WARMUP_FACTOR: 0.01
WARMUP_ITERS: 10
WARMUP_METHOD: linear
WEIGHT_DECAY: 0.0005
WEIGHT_DECAY_BIAS: 0.0005
TEST:
AQE:
ALPHA: 3.0
ENABLED: False
QE_K: 5
QE_TIME: 1
EVAL_PERIOD: 20
IMS_PER_BATCH: 128
METRIC: cosine
PRECISE_BN:
DATASET: Market1501
ENABLED: False
NUM_ITER: 300
RERANK:
ENABLED: False
K1: 20
K2: 6
LAMBDA: 0.3
Could you help me to train VeRi in a right way!
Thanks a lot for your assisstance!
Thanks for your attention to our repo!
I find that you use 2 GPUs to train VeRi, I advice you to train it by one GPU. And I recently found it would be better to set "MODEL.LOSSES.CE.ALPHA=0.8, DATALOADER.NAIVE_WAY=False", you can try it.
Moreover, because of the code changes, some setting in the config also need to be modified, we are also debugging recently, will upload the latest config and model, thank you for your attention!

Thanks for your reply. By the way, to help others, I would like to keep this issue open until the expected result is achieved.

@JinkaiZheng
Thanks for your reply.
I will have a try. By the way, to help others, I would like to keep this issue open until the expected result is achieved.

I have the same problem, if anyone has a solution for this? thanks very much

首先，非常感谢您为re-ID社区所做的出色工作。
在此仓库中，您声称结果如下：
方法 预训练| 排名@ 1 | 行动计划| mINP | 下载
SBS（R50-ibn）| ImageNet | 97.0％| 81.9％| 46.3％|
我试图重现这一点。但是，我只能得到下面的结果：
数据集| 等级1 | 等级5 | 排名10 | 行动计划| mINP
| VeRi | 95.53％| 98.15％| 98.81％| 73.67％| 31.53％
我使用了默认配置文件：SBS（R50-ibn），训练模型的命令是：CUDA_VISIBLE_DEVICES = 2,3 python tools / train_net.py --config-file configs / VeRi / sbs_R50-ibn.yml- num-gpus 2
完整的配置如下：
[08/06 23:43:14] fastreid INFO：args.config_file =。/ configs / VeRi / sbs_R50-ibn.yml的内容：
BASE：“ ../
非常感谢您的协助！

感谢您对我们的回购的关注！
我发现您使用2个GPU训练VeRi，建议您使用一个GPU训练它。我最近发现最好将其设置为“ MODEL.LOSSES.CE.ALPHA = 0.8，DATALOADER.NAIVE_WAY = False”，您可以尝试一下。
而且，由于代码的变化，配置中的一些设置也需要修改，我们最近也在调试中，将上传最新的配置和型号，谢谢您的关注！

请问你用两块gpu跑了多久，iteration是多少？

I have same problem

Try with 1 gpu training


Use insertAdjacentHTML maybe?

https://developer.mozilla.org/en-US/docs/Web/API/Element/insertAdjacentHTML

https://developer.mozilla.org/en-US/docs/Web/API/Element/insertAdjacentElement removes the first child selector.  Might be slightly simpler instructions.


Implement Create as An OffsetBasedSource

Be sure to do all of the following to help us incorporate your contribution
quickly and easily:

[x] Make sure the PR title is formatted like:
[BEAM-<Jira issue #>] Description of pull request
[x] Make sure tests pass via mvn clean verify. (Even better, enable
Travis-CI on your fork and ensure the whole test matrix passes).
[x] Replace <Jira issue #> in the title with the actual Jira issue
number, if there is one.
[x] If this contribution is large, please file an Apache
Individual Contributor License Agreement.

This removes the requirement to implement a primtiive Create for runners
that support Reads from a Bounded Source.
Remove the override in the InProcessRunner
This is part of the new Beam Runner API, which removes Create as a primitive PTransform
https://docs.google.com/document/d/1bao-5B6uBuf-kwH1meenAuXXS0c9cBQ1B2J59I3FiyI/edit#heading=h.p6lvszfbmyj6

R: @dhalperi

@tgroh not passing, will move on to other review ;)

Tests are passing with #214 in the history.
PTAL.

LGTM, ping me when travis is green again and I can merge ;)


4634 - Add the Delete button on the Partner Group Page

Resolves #4634
Description
Add the Delete Button Functionality in User group that doesn't have partners in it
Type of change

Bug fix (non-breaking change which fixes an issue)

How Has This Been Tested?

[x] Created the New Parent-Group and Deleted the User Group by clicking on the Alert window
[x] On Pre-Existing Parent-Group that has partners Delete button is disable
[x] Added Automated Test To Support it

ScreenCast
Screencast from 2024-09-13 00-04-23.webm

Other than the one wording change ("destroyed" to "deleted") mentioned in an earlier comment, it looks good functionally.

Donw With changes @cielf

Looks good on my end!


I want to get the hero's health

Hello,  I don't know how to get the hero's blood volume. I tried some methods, but I still can't get the hero's blood volume.

entity.getProperty("m_iHealth")

Good brother, thank you! I'll try

if you want to find more, use clarity-analyzer


createChromeStorageStateHookLocal returns initial value first then the persisted one

I've been using createChromeStorageStateHookLocal for some time now for my Chrome extension but I noticed an annoying rerender issue that I couldn't debug, for some reason, the hook always returns the initial values on the first render then rerenders again with the persisted values.
The expected behavior:
on the first render, the hook should return the persisted values if they exist and fallback to the initial values, and should not render twice.
How I'm using it right now:
const SETTINGS_KEY = 'settings';
const INITIAL_VALUE: Settings = {
  isDark: false,
};

export const useSettingsStore = createChromeStorageStateHookLocal(SETTINGS_KEY, INITIAL_VALUE);

    const [{ isDark }] = useSettingsStore()

    // assuming that the persisted value of isDark is "true"
    console.log(isDark)  // 1st render: false, 2nd render: true

Hi @Othmanosx
Take a look at the documentation. At Initial value flow.
Hook returns boolean isInitialStateResolved which will be set to true once synchronized with chrome.storage.
const [{ isDark }, setValue, isPersistent, error, isInitialStateResolved] = useSettingsStore()

{isInitialStateResolved &&
isDark: {isDark}
}

it would be nice to have it as a global config so it always waits for it to be synced and then returns the initial value first, something like:
export const useSettingsStore = createChromeStorageStateHookLocal(SETTINGS_KEY, INITIAL_VALUE, { waitForInitialToBeResolved: true });

Hi @Othmanosx
It sounds like a good idea! PR is welcome!


Expose more information in the results map

Basic implementation of the results map in V3 is just a list of paths for each bundle, which could potentially include things like source maps as no filtering is in place. And I don't want to filter these out, and they could have value under certain scenarios.
We can improve things rather easily however. The Vinyl object has a great deal of useful path information available. I'm specifically thinking of exposing the extension to make filtering easier for people using the library (no point processing a string more than it has too right?).

I'm thinking a callback would be the best bet for this. A Promise would run after the stream as finished and things might end up getting weird.

Turns out this was an excellent use case for the Vinyl NullFile.


new(config): add container_engines config to falco.yaml

What type of PR is this?

Uncomment one (or more) /kind <> lines:

/kind bug

/kind cleanup

/kind design

/kind documentation

/kind failing-test

/kind feature

/kind release

Any specific area of the project related to this PR?

Uncomment one (or more) /area <> lines:

/area build

/area engine

/area tests

/area proposals

/area CI

What this PR does / why we need it:
Fixes https://github.com/falcosecurity/falco/issues/3258
Which issue(s) this PR fixes:

Fixes #
Special notes for your reviewer:
Does this PR introduce a user-facing change?:

new(config): add `container_engines` config to falco.yaml

[APPROVALNOTIFIER] This PR is APPROVED
This pull-request has been approved by: incertum
The full list of commands accepted by this bot can be found here.
The pull request process is described here

Needs approval from an approver in each of these files:

OWNERS [incertum]

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

/milestone 0.39.0

I'd also add a debug print of enabled container engines during the startup of Falco ;)

And / or likely more tests in libs make more sense given we just call some API here?

Yes, agree! Also, you could add some tests to https://github.com/falcosecurity/testing/blob/main/tests/falco/config_test.go; for example you could test that enabling each container engine yields a debug log (aforementioned) with the requested engine enabled.

Aside from :point_up: , LGTM!

 I don't get it though, since the Falco version one is logged by load_config that is the first app::run step, while your new logs come from init_inspectors step.

The test should not be dependent on the order? If so, we should adjust the test anyways. Above ones are generated while parsing the config.

The test should not be dependent on the order?

Yes but the test enforces that the very first log line should be Falco version..., and that makes sense from an UX perspective IMHO.
I'd move the logs here from config loading to inspector init time (also if you think that makes sense because in that case, we would only log when the syscall inspector is actually in use, but we won't log if we are eg: plugin only).

We need to fix #3270 in order to fix CI, since centos7 is eol.

We need to fix #3270 in order to fix CI, since centos7 is eol.

Is https://github.com/falcosecurity/falco/pull/3274 enough? :thinking:

Hey Melissa, we were finally able to bump libs in Falco master, can you rebase this one? :)

Hey Melissa, we were finally able to bump libs in Falco master, can you rebase this one? :)

Thanks @FedeDP

[APPROVALNOTIFIER] This PR is APPROVED
This pull-request has been approved by: FedeDP, incertum
The full list of commands accepted by this bot can be found here.
The pull request process is described here

Needs approval from an approver in each of these files:

OWNERS [FedeDP,incertum]

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

LGTM label has been added.  Git tree hash: 4a0d14e5afced1c00a54495c6fbb28b65032016c


Add parse_macro_input2 for proc_macro2::TokenStream

Now there is only a variant for proc_macro. In the case when we have a function like fn testable_proc_macro_variant(input: proc_macro2::TokenStream) -> proc_macro2::TokenStream you need to manually paint the macro. It would be grate to have the parse_macro_input2.
P. S. I can make the pull request.

I would prefer not to build this into this crate.


Change access level of LoggerHandler.formatByteBuf() to public

Netty version: 5.0.0.Alpha2
When using as a generic library (especially ByteBufs) to see the contents of it it'd be nice to have some  convenient API to print out ByteBuf's content like LoggingHandler does.
Also it seems that Unppoled.java has incorrect javadoc about hex dumps.
...This class also provides various utility methods to help implementation
of a new buffer type, generation of hex dump and swapping an integer's
byte order...
There's actually no such methods. In 5.0.0.Alpha2

It's probably a good idea to add a similar method to ByteBufUtil?

@trustin @flirtomania +1

Fixed


test for check_for_subscription() fails

It always returns False, with an "unauthorized" response from the server. I can't figure out what the issue is, because I cannot reproduce it in ipython. But it fails every time when I test it using pytest.

I have /no/ idea what is working here. It works every time in iPython; it never works using pytest. The access token is being set correctly in the header... I just have /zero/ idea where this problem is.


Anaconda static libpython is no more compatible, error: "libpython3.9.a: error adding symbols: File format not recognized"

Nuitka version:
0.7.7
Commercial: None
Python: 3.9.7 (default, Sep 16 2021, 13:09:58)
Flavor: Anaconda Python
Executable: /home/tac/miniconda3/envs/normal/bin/python
OS: Linux
Arch: x86_64
Distribution: Ubuntu (based on Debian) 18.04.6

target a.py:
print("hello world!")

nuitka command:
nuitka a.py

error output:
Nuitka-Options:INFO: Used command line options: a.py
Nuitka-Options:WARNING: You did not specify to follow or include anything but main program. Check options and make sure that is intended.
Nuitka:INFO: Starting Python compilation with Nuitka '0.7.7' on Python '3.9' commercial None.
Nuitka:INFO: Completed Python level compilation and optimization.
Nuitka:INFO: Generating source code for C backend compiler.
Nuitka:INFO: Running data composer tool for optimal constant value handling.
Nuitka:INFO: Running C compilation via Scons.
Nuitka-Scons:INFO: Backend C compiler: gcc (gcc).
Nuitka-Scons:INFO: Backend linking program (no progress information available).
/usr/bin/ld: /home/tac/miniconda3/envs/normal/lib/libpython3.9.a(abstract.o): unable to initialize decompress status for section .debug_info
/usr/bin/ld: /home/tac/miniconda3/envs/normal/lib/libpython3.9.a(abstract.o): unable to initialize decompress status for section .debug_info
/home/tac/miniconda3/envs/normal/lib/libpython3.9.a: error adding symbols: File format not recognized
collect2: error: ld returned 1 exit status

I've install libpython-static via command conda install -c conda-forge libpython-static

question
Which part lead to this problem? I know adding an argument can skip this libpython part. But what if I want this feature enabled?

That's pretty bad. I wasn't aware, maybe Anaconda gcc is so old now the debug format is not supported anymore by winlibs gcc, in which case we would have to give up on it. I wonder if --mscc=latest would have to work there.

I am disabling static libpython for Windows Anaconda, it's basically unmaintained. Their gcc is stuck at 5.3.0 and will apparently never update, which is why we use winlibs. The static libpython is only providing DLL bindings, and it's unclear how much this helps anyway, maybe it did, but we no longer need to care it seems.

However, I got "please enable libpython if you are running under anaconda" under ubuntu, not windows. I've declared it in my nuitka version output. Why is that?

Ah, my bad, I misread that. I think this is a very similar issue likely. Try to use CondaCC, i.e. the gcc you can install through conda install, it would seem this could be the reverse situation, Ubuntu gcc being to old, and CondaCC producing too new one. Thanks for pointing out my oversight here. The symptom of mismatch is of course not limited to Windows.
On Linux, you actually want to use libpython for all reasons, performance, protection, distribution size, that is why the warning is very real.
I am assuming, that some sort of gcc version check needs to be added for Anaconda Python on Linux. Maybe --condacc should become an option and be required with too old gcc. I forgot how to install CondaCC though. Nuitka needs only the C compiler of it. I will have access to an Ubuntu 18.04 later this week, and will check things out there. There used to be a time when CondaCC was used on Windows, but like I said, no more.
With LTO there is also something going on. If I am not mistaken CondaCC and system gcc are easily incompatible. Therefore the LTO linking is not enabled by default with Anaconda.
I would be grateful if you figured out what to conda install to get CondaCC installed. I think it is not the default, it wasn't on Windows at least.

That's very nice of you too, being so patient on this details. I would reply to it ASAP once I figure it out :)

try conna install gcc and build it.

Part of the 0.9 release that I just made.

hi, so how to solve this problem, I have update nuitka to 0.9 but encounter same issue, should I install CondaCC ? @kayhayen

@Jackiexiao are you sure you have the same problem?

Nuitka-Scons:INFO: Backend linking program with 108 modules (no progress information available).
/usr/bin/ld: /data1/jackie/anaconda3/envs/frontend2.0/lib/libpython3.8.a(abstract.o): unable to initialize decompress status for section .debug_info
/data1/jackie/anaconda3/envs/frontend2.0/lib/libpython3.8.a: error adding symbols: File format not recognized
collect2: error: ld returned 1 exit status
scons: *** [/data1/jackie/zhuiyi/tts/frontend2.0/temp/temp.dist/temp] Error 1
Makefile:2: recipe for target 'compile' failed
make: *** [compile] Error 1
(frontend2.0) ➜  temp git:(v2.0) ✗ python3 -m nuitka --version
0.9
Commercial: None
Python: 3.8.12 (default, Oct 12 2021, 13:49:34)
Flavor: Anaconda Python
Executable: /data1/jackie/anaconda3/envs/frontend2.0/bin/python3
OS: Linux
Arch: x86_64
Distribution: Ubuntu (based on Debian) 18.04.6

You are using a too old gcc, that is why. Nuitka doesn't pick up CondaCC unless it's installed. This apparently got closed, because of the unrelated Windows issue, where it shouldn*t be used at all.

The information I had been seeking, was that CondaCC is named gcc_linux-64 on Linux. If you install that, maybe the issue already goes away. For me that set CC to point to a supported gcc, but as some people like to use it without an environment activately, also added automatic preference when Anaconda is running.
As an aside, with Anaconda-Python you can use any Linux you like, going to very old sysems is only needed if you use a self compiled Python or a Debian Python.
Now I need to check if we can enable LTO by default in this configuration, and make a similar change for macOS.

yep, the easiest way to upgrade gcc in anaconda is
conda install gcc_linux-64

the installed gcc is named  x86_64-conda-linux-gnu-gcc, check gcc version using
x86_64-conda-linux-gnu-gcc --version

It's not necessarily an upgrade, but it's kind of making sure, it matches the libpython which is what this is mainly about.
So LTO is now enabled on macOS in any case, seems to work with all flavors with no issue, but with Anaconda it should give a nice performance boost.
The CondaCC on macOS is older than the one I have on not too new macOS, so that makes no sense, unless the same issue surfaces, but I think Clang is generally not breaking compatibilit for its bytecode as often as gcc.
So with that, I consider this one solved, just needs to hit releases now.

This is part of 1.0 release.

Such a bravo new.

For me this has worked sofar:
conda install -c conda-forge libpython-static

I have added a dependency to the Anaconda package, that should make that need go away.

yep, the easiest way to upgrade gcc in anaconda is
conda install gcc_linux-64

the installed gcc is named x86_64-conda-linux-gnu-gcc, check gcc version using
x86_64-conda-linux-gnu-gcc --version

it works for me

What does --version output for you with these?


Dark mode doesn't seem to work in 114.

System Details

OS: Arch Linux
DE/WM: AwesomeWM + KDE on Xorg in light mode.
Thorium Version 114.0.5735.134

Problem
Dark mode flag no worky no more.

@p7r0x7 Can you explain more and provide screenshots?

The issue seems to have resolved itself, meaning it was likely a KDE update regression or something; music.apple.com is the only site that still exhibits the issue of no longer rendering in dark mode.

Though:

Sites with manually set dark mode work, but others don't:

YouTube is another notable one:

On another note, it seems like v114 fixed the hwdec issue for youtube.com I'd been having since I started using Thorium a couple releases ago. Thanks!

Regarding the internal pages of the Thorium browser (pages starting with chrome://), the dark mode cannot be applied. It may be a bug in the upstream version, or it may be intentional by Google.
Regarding external pages, please check if there are any settings related to dark mode and make sure that there is no problem with the related settings.
@p7r0x7

I can confirm dark mode is broken in "Version 117.0.5938.157 (Official Build) stable, built on Linux (64-bit)" still.
Debian Testing / Cinnamon / GTK / Dark Mode.
I tested in vanilla Chromium "Version 114.0.5735.198 (Official Build) built on Debian 12.0, running on Debian 12.1 (64-bit)"
and it exhibits the same behavior, so it's probably an "upstream" thing.
it's as though it's aware the DE wants dark mode (it itself is largely in dark mode) it's just not passing the hints through to the website like firefox does to actually make dark mode happen.
I have also changed the settings mentioned at the top of this issue, it has made no change.


Proper version management in release folder

Right now, all compiled apk's are named lemmyredirect.apk / mastodonredirect.apk, so on my phone I've got all iterations from lemmyredirect.apk to lemmyredirect(21).apk; which makes it a bit troublesome to refer to the current release - every now and again I download it but forget to install right away, so have to check back (or usually just redownload since it's  easier than manually checking for the version).
Would be neat if the new releases can be named lemmyredirect_1.5.0.apk or something to instantly see the file version.

The next version will have the format {Variant}Redirect_{Version}-release.apk.


Add symbol for D3D_DestroyResource

This pattern works for all known XDK versions, from 3911-5933
Fix #82

I do not approve this pull request for the main reason, 38 OVs is too much. We do not have OVs over 20s more or less. I'm sure there is better optimization than this.

The more entries, the less chance of false positives, a few more bytes then average doesn't really hurt, and perhaps for some OOVPA, a relatively large amount of offset+value pairs is necessary to make it unique. There's no rule that I'm aware of (yet) that we must minimize the size of OOVPA?

The more entries, the longer the scan process will take. 😉 I'll make my review to demonstrate what's not really needed soon.
We do have minimal requirement of 10 - 12 (maybe 8? base in the codebase).


allow entity diagram scrolling on overflow

With web-components PR #218, resolves #428
Goal: Add scroll bar to entity diagram when it is wider than the window.
A first attempt at simply adding overflow-x: auto failed, in that the left portion was unreachable with the scroll bar. Thanks to the good people at SO, I learned about and implemented this approach. Required giving a class name to the expanded diagram, hence the need for the web-components PR.

Nice work, @asizemore. As a reminder, you will want to upgrade @veupathdb/components once https://github.com/VEuPathDB/web-components/pull/218 is merged:
yarn add @veupathdb/components@latest


CE merge

This is the final merge for the API client. This merge will be tied to a pre-release.

Thanks a lot @jtuttle! I'll get 5.0.0.pre to RubyGems via Jenkins and we can iterate there briefly before 5.0.0 release.


Store refactor

This PR does a few smaller refactors.

add soft-deletion and update/creation/deletion times to the db by adding the corresponding columns to the database tables.
Refactor the database types into a single one that simply implements the corresponding interfaces.
Moves the methods for the hostsets into a separate file. That way every interface gets its own file.

nice little refactor 👍 also great we're adding soft deletion here I think that's a good call


Can't Take Items Out of Magic Pouch

Latest version: 1.0.6
Could be an issue with another mod not being compatible, but these are all the same mods I've had for a while, just updated. They worked fine together before, without issue.

BepInEx
BerryLoader
BugFixes
HigherSidebar
BetterInfo
BetterCrane (New)
GolemAutomation
Infinite_Save_Files
CompactStorage
FasterEndOfMonths
Show_Actual_Available_Food
BetterMouseControls
CardZones
BottledTime
Stack_Further

Does this still happen? It works fine for me but I'm not using all those mods on the list, so presumably, one of those is interfering.


requirements-dev.txt needed

make check requires black and isort, which aren't included in requirements.txt.  We should make a requirements-dev.txt containing them.
Should the requirements for building docs go in there, too?  Otherwise people installing pyjanitor will get Sphinx, etc. whether they ever want to build the documentation or not.

requirements.txt are for applications, what about using extras_require in setup.py, or even setup.cfg?

Great idea. In turn, we should be sure to update the "Contributing" part of the docs!

Thanks @catherinedevlin, @Juanlu001 and @NapsterInBlue! Let me finalize the checklist here:

[ ] Create a requirements-dev.txt with black, isort, sphinx, nbsphinx, and others.
[ ] Update the CONTRIBUTING.rst file.
[ ] (optional) Update Azure pipelines with a venv-based setup on macOS, Linux and Windows.

OK, I'll work this one myself if that's good with everybody!


Disabled ScreenOS Rules converted to Junos enabled rules

Screenos Disabled rules are converted to Junos equivalent and enabled.
Either need to convert as disabled too or not convert the disabled screenos rules when found.

fixed under d80ea495274f07e61682d38a8f08ac160c303713


missing -jar parameter in Java runtime startup in README.md

The "-jar" parameter is missing while trying to start up the application manually.
It must be "java -jar kafkahq.jar prod" instead of "java kafkahq.jar prod"
And by the way, it also runs successfully in Java 10.0, not only Java 8.

I'll correct the README.md and also include the min version of java.
For the java 8 version, I'm quite surprise since the docker image is based on java8 : https://github.com/tchiotludo/kafkahq/blob/master/Dockerfile.
Can you paste the error please ?


Reduce Repository Cache Test

As requested here in #3046. @neonichu
No network operations remain.
Print statements (not included) have confirmed the test still passes through the code that once contained the error and do not bypass it through any mock.

@swift-ci please smoke test

Thanks a lot @SDGGiesbrecht


Add JValue field, sidecar, to OreAggregation

Allows mapped records to carry additional information within a JValue object. We can be more nuaunced about
what we track without forcing everything into a (String,String) map. The JValue is converted to a String
in the RowConverter.

@mdellabitta suggestion implemented

Sweet.


<EMAIL_ADDRESS>

Describe the Bug
May I ask what this request file is for? It always takes a long time to request and may even fail. How can I solve this problem
Steps to Reproduce
Just enter the page
The current behavior

The expected behavior
How to terminate this request, or how to make the request speed faster
OS
Window 10
Node version
v16.14.0
Browser
Chrome 120.0.6099.71

I have also encountered this problem，hope the official solution

import { init as csRenderInit } from '@cornerstonejs/core';
await csRenderInit({
detectGPUConfig: { benchmarksURL: '../../../node_modules/detect-gpu/dist/benchmarks' },
});
like this, you can change config and import local file

This is for GPU tier identification to decide whether to GPU render vs CPU render


Retry connection failures

When our service terminates the HTTP2 connection that the Node SDK starts, the SDK returns this error back to the client:
    Error: 13 INTERNAL: Received RST_STREAM with code 2 (Internal server error)
    at h (webpack:///spice/node_modules/@grpc/grpc-js/build/src/call.js:31:19)
    at Object.onReceiveStatus (webpack:///spice/node_modules/@grpc/grpc-js/build/src/client.js:192:56)
    at status (webpack:///spice/node_modules/@grpc/grpc-js/build/src/client-interceptors.js:360:141)
    at status (webpack:///spice/node_modules/@grpc/grpc-js/build/src/client-interceptors.js:323:181)
    at <anonymous> (webpack:///spice/node_modules/@grpc/grpc-js/build/src/resolving-call.js:99:78)
    at process.processTicksAndRejections (node:internal/process/task_queues:77:11)
for call at
    at o.makeUnaryRequest (webpack:///spice/node_modules/@grpc/grpc-js/build/src/client.js:160:32)
    at o.<anonymous> (webpack:///spice/node_modules/@grpc/grpc-js/build/src/make-client.js:105:19)
    at N (webpack:///spice/node_modules/@spiceai/spice/dist/client.js:92:20)
    at new Promise (<anonymous>)
    at S.getResultStream (webpack:///spice/node_modules/@spiceai/spice/dist/client.js:90:34)
    at S.query (webpack:///spice/node_modules/@spiceai/spice/dist/client.js:139:35)
    at <anonymous> (webpack:///spice/integrations/spice-integration.ts:773:36)
    at le (/var/task/handlers/handler.js:404:662578)
    at Object.next (/var/task/handlers/handler.js:404:661808)
    at /var/task/handlers/handler.js:404:661496 {
  code: 13,
  details: 'Received RST_STREAM with code 2 (Internal server error)',
  metadata: c { internalRepr: Map(0) {}, options: {} }
}

This is a normal error that occurs when Nginx kills the connection for being open too long, or serving too many requests. We should improve the SDK to automatically retry these failures and re-open a connection and retry the request.

SDK version 1.0.1 with retry logic implementation has been just released. The customer reported this problem has been notified to confirm the issue is actually gone. Will re-open if it is not.


Firebase data is displayed on dedicated webpages

The views and API can now be disabled and enabled through the .env file.


[Transaction] UI Tag Element Color & Naming Scheme

This is fixed. Just not reflecting for a swap because of #265


Changed polygon method in Vector.coffee to accept an array of points …

…instead of a splat.
Change the polygon method in Vector.coffee to accept an array of points instead of points passed in manually as a splat.
I exported a svg file from Illustrator that contained a polygon with the below data (as a string).
'4.473,84.225 75.847,84.225 81.847,79.225 87.847,84.225 160.517,84.225 160.528,5.377 157.374,7.073 154.222,5.377 151.069,7.073 147.919,5.377 144.767,7.073 141.614,5.377 138.463,7.073 135.312,5.377 132.161,7.073 129.013,5.377 125.862,7.073 122.715,5.377 119.563,7.073 116.418,5.377 113.272,7.073 110.126,5.377 106.976,7.073 103.828,5.377 100.679,7.073 97.529,5.377 94.38,7.073 91.229,5.377 88.083,7.073 84.935,5.377 81.785,7.073 78.638,5.377 75.49,7.073 72.34,5.377 69.192,7.073 66.046,5.377 62.9,7.073 59.751,5.377 56.604,7.073 53.456,5.377 50.311,7.073 47.166,5.377 44.02,7.073 40.871,5.377 37.723,7.073 34.578,5.377 31.434,7.073 28.289,5.377 25.145,7.073 22,5.377 18.854,7.073 15.705,5.377 12.559,7.073 9.415,5.377 6.271,7.073 4.471,6.102 '

It seems that the polygon method only takes points passed in manually. E.g. polygon([1,2], [4,2]). i needed to break up the SVG string into an array and pass it to the polygon method.
I wrote this function to convert the string polygon points to an array of points. The array is in the format: [ [x,y], [x, y], [x, y] ].
// converts a svg polygon's points to an array.
function polygonPointsToArray(points){

	var pointsArray = [];

	// pattern to breakup points by the space followed by a number or a decimal
	var pattern = /\s(?=\d+\.?\d*|\.\d+)/g;

	// break up each pair by the separating space
	points.split(pattern).forEach(function(value, index, arr){

		// break up the value by the separating comma
		var point = value.split(',');
		pointsArray.push([parseFloat(point[0]), parseFloat(point[1])]);
	});

	return pointsArray;
}

Now I passed the array of points ([ [x,y], [x, y], [x, y] ] to the polygon method. This allows the the polygon method to accept points dynamically.
This is the modified polygon method in coffeescript.
  #PATCH - Jorge Lopez
  # Changed argument for polygon method
  #used to take in a splat
  # Now accepts an array of points. ie. [[x, y]]

  polygon : (points) ->
    if not points or points.length < 1
      return false

    @moveTo points.shift()...
    @lineTo point... for point in points
    @closePath()

Produces js
	polygon: function(points) {
      var i, len, point;
      if (!points || points.length < 1) {
        return false;
      }
      this.moveTo.apply(this, points.shift());
      for (i = 0, len = points.length; i < len; i++) {
        point = points[i];
        this.lineTo.apply(this, point);
      }
      return this.closePath();
    }

If you want to support passing an array here, fine, but we need to be backward compatible with the current API as well or everyone's existing programs will break.
Another option: in your code, you can call use doc.polygon.apply(doc, points), where points is an array. That will work with the existing API.

// test if the argument passed is an array of points instead of points passed in individually
      // An array of points should be a 3 dimensional array after the slice method
      if(typeof points[0][0] === 'object' && Array.isArray(points[0][0])){

        points = points[0];

        console.log('it is an array of points');
      }

Adding this will make the polygon method backwards compatible.
The polygon function becomes:
polygon: function() {
      var i, len, point, points;

      points = 1 <= arguments.length ? slice.call(arguments, 0) : [];

      // test if the argument passed is an array of points instead of points passed in individually
      // An array of points should be a 3 dimensional array after the slice method
      if(typeof points[0][0] === 'object' && Array.isArray(points[0][0])){

        points = points[0];
        // An array of points was passed
      }

      this.moveTo.apply(this, points.shift());
      for (i = 0, len = points.length; i < len; i++) {
        point = points[i];
        this.lineTo.apply(this, point);
      }
      return this.closePath();
    }


import node-forge size.

See also:
https://github.com/digitalbazaar/forge/issues/711
https://github.com/digitalbazaar/forge/issues/482


Menu selection colors are hard to see

The latest change that adds better contrast when selecting something from a list (command pallet, file chooser, theme chooser, etc.) helps, but if just using the keyboard, it's all but impossible to see which is the current selection, or which is the selected command:
Night Wolf Gray: (gray is the current selection)

Night Wolf Blue: (blue is the current selection)

the file/command chooser is a little better, but not much:

I added this in settings.json as a workaround:
"workbench.colorCustomizations": {
    "[Night Wolf [dark gray]]": {
        "list.focusBackground": "#333"
    }
}

For completeness I added:
        "[Night Wolf [dark blue]]": {
            "list.focusBackground": "#152739",
        },

fixed in v1.2.2, thanks


Increase strictness of base types

Fixes #303.

There is an inconsistency with the base types where some types with a numeric post-fix value accept only that quantity and other accept up to that quantity. This PR makes it so all types accept only that quantity (e.g. Bytes32 requires exactly 32 bytes), with the exception of integers. They will continue to accept values up to their quantity (e.g. 0x1 will match uint256).
There is an error where Bytes65 was copied from Bytes512 and the bound was not updated. This has been resolved.
There is an error with uint256 where 0x matched validly. It's been updated to follow the same pattern matching as other uint sizes, requiring no leading zeros.
Some byte values actually have caps. I've added BytesMax32 for use with storage keys. They don't quite fall within the domain of uint256 (especially with the above fix) and they don't always serialize to 32 full bytes. This is the main issue in #303.
Generally improved the readability of the definitions a bit.

Can this be merged?

Yep should be good to go. I will merge it.


Port thunk pool support to CoreRT

Interop team needs a way to dynamically allocate executable thunks (from a pool, or created on-demand) pointing to a stub function, and retrieve the thunk ID from the stub function to collect custom information regarding the thunk. This is needed for implementing reverse P/invoke delegates.

@fadimounir Was this fixed in 4e29f019e860dfcf8ddfee9b47376f76e51af2ae or do we need to keep this open?

@MichalStrehovsky this was fixed yes, however the portable version of the thunk pool is still not working (not part of this fix).
We can c;lose this issue and track the portable version in another issue.


Create pull request for adding helm index to main branch

Description
Please include the following:
This PR introduce new release step: Create pull request for adding helm index to main branch
How can this be tested?
TODO:
related to https://github.com/Dynatrace/dynatrace-operator/pull/2078
Checklist

[x] Unit tests have been updated/added
[x] PR is labeled accordingly with a single label
[x] I have read and understood the contribution guidelines

Codecov Report

Merging #2086 (e4e4962) into feature/build-helm-in-actions (87f33fd) will increase coverage by 0.01%.
The diff coverage is n/a.

:exclamation: Your organization is not using the GitHub App Integration. As a result you may experience degraded service beginning May 15th. Please install the GitHub App Integration for your organization. Read more.
@@                        Coverage Diff                        @@
##           feature/build-helm-in-actions    #2086      +/-   ##
=================================================================
+ Coverage                          63.18%   63.20%   +0.01%
=================================================================
  Files                                242      242
  Lines                              15357    15357
=================================================================
+ Hits                                9703     9706       +3
+ Misses                              4911     4909       -2
+ Partials                             743      742       -1

see 1 file with indirect coverage changes

tested in my fork and it worked https://github.com/andriisoldatenko/dynatrace-operator/pull/47


Area counted twice in plastic algorithm

I have come across a case where the plastic algorithm can count an area twice and affect the plastic properties. See below example:
import sectionproperties.pre.library.primitive_sections as ps
from sectionproperties.analysis.section import Section

rect1 = ps.rectangular_section(d=600, b=300)
rect2 = ps.rectangular_section(d=100, b=100).shift_section(100, 450)
geom = rect1 + rect2
geom.create_mesh(100)
geom.plot_geometry()

sec = Section(geom)
sec.plot_mesh()

sec.calculate_geometric_properties()
print(sec.get_area())

sec.calculate_plastic_properties()
print(sec.get_pc())

The section meshes as expected and the correct area is calculated (area = 180000), however I believe the .split_section() method used by the plastic algorithm returns geometries that overlap for the top half of the section (i.e. two boxes are returned from the method and there is no hole in the larger box to accomodate the smaller box). This results in a plastic centroid shifted up the section (y_pc = 306.14, expecting y_pc = 300).
This is not the expected behaviour and it would be great to get a fix to this as this results in the incorrect reporting of plastic properties.

Nice catch!
I will have to think about this one because it relates to modelling practice also. In my immediate understanding, this can be solved by subtracting the inner from the outer before combining. However, this is of course related to the nested geometries modelling example so I will have to check if the plastic properties are the same or not (I expect not) for the two approaches described.

On Feb 17, 2022, at 01:11, Robbie van Leeuwen @.***> wrote:

I have come across a case where the plastic algorithm can count an area twice and affect the plastic properties. See below example:
import sectionproperties.pre.library.primitive_sections as ps
from sectionproperties.analysis.section import Section
rect1 = ps.rectangular_section(d=600, b=300)
rect2 = ps.rectangular_section(d=100, b=100).shift_section(100, 450)
geom = rect1 + rect2
geom.create_mesh(100)
geom.plot_geometry()
sec = Section(geom)
sec.plot_mesh()
sec.calculate_geometric_properties()
print(sec.get_area())
sec.calculate_plastic_properties()
print(sec.get_pc())
The section meshes as expected and the correct area is calculated (area = 180000), however I believe the .split_section() method used by the plastic algorithm returns geometries that overlap for the top half of the section (i.e. two boxes are returned from the method and there is no hole in the larger box to accomodate the smaller box). This results in a plastic centroid shifted up the section (y_pc = 306.14, expecting y_pc = 300).
This is not the expected behaviour and it would be great to get a fix to this as this results in the incorrect reporting of plastic properties.
—
Reply to this email directly, view it on GitHub, or unsubscribe.
You are receiving this because you were assigned.

this effectively solves the issue, so it is something to do with the compond geometry having both geometries and double counting?
import sectionproperties.pre.library.primitive_sections as ps
from sectionproperties.analysis.section import Section

rect1 = ps.rectangular_section(d=600, b=300)
rect2 = ps.rectangular_section(d=100, b=100).shift_section(0, 500)

geom1 = rect1 - rect2
geom = geom1 + rect2
geom.create_mesh(100)
geom.plot_geometry()
print(geom)
sec = Section(geom)
sec.plot_mesh()

sec.calculate_geometric_properties()
print(sec.get_area())
sec.calculate_plastic_properties()
print(sec.get_pc())

Gives both plastic centroids correctly.

@connorferster, as I noted at bottom :)
Gives both plastic centroids correctly.
I get the following for the plastic centroid
(149.99999999999997,<PHONE_NUMBER>9999994)```

I was using the intermediate variable geom and geom1 rather than just geom, it works as intended one way but not the other

Just to clarify, I realised I stuffed up on the first example I mentioned where it did not work as I had just redefined geom back to the original example... instead of doing further manipulation of geom!
To explain, this is incorrect and what I inadvertently did when I said it did not work and got the same answer as original example:-
geom= rect1 - rect2
geom = rect1 + rect2

But doing this works as intended: -
geom = rect1 - rect2
geom = geom + rect2

So in effect whats going on is it's a compound geometry with the two individual geometries, but it is maybe not doing the union of them (to 'flatten' the geometry to a single geometry), so it double counts the area or something in the plastic caculation?

It sounds like my hypothesis was correct: that by following the subtractive modelling procedure, the correct result is calculated. When geometries are overlap, however, you do not have the correct result because you in fact have two overlaid rectangles and not two embedded rectangles. Am I correct in this understanding?

Yes I believe this is correct. When you dive into the plastic algorithm and plot each geometry after the section is split this is what appears to be happening.
While the modelling approach may not be the most correct, there is an issue in that interrogating the geometric results would lead you to believe their isn't an issue. Further I'm not sure what is the best way to build this geometry? I note that @Agent6-6-6's code worked with:
rect2 = ps.rectangular_section(d=100, b=100).shift_section(0, 500)

However when this is changed to the original:
rect2 = ps.rectangular_section(d=100, b=100).shift_section(100, 450)

the code will not run as there is a hole generated and sectionproperties is expecting two different materials.

Working on this...

My solution for this is to test to see if there are any overlapping geometries in the shapely geometry. If so then prior to calculating the plastic properties, warn the user (but do not stop the calculation) that the plastic properties may be incorrect because the overlapping regions will be double counted in the calculation. Guide the user to use "subtractive modelling" and point them to the "Advanced Geometry" page in the docs for more information.

By using two analysis methods (shapely + FEM) and because these two geometry processors interpret overlapping geometries differently, I think this problem will be inevitable. Overlapping geometry creates ambiguity (did the user intend for "geometry 1" to take precedence or "geometry 2"?). I think the best way to deal with this issue (for now) is to post a warning and guide the user to a better solution.