panda3d-1.10.12 makes MetaDrive works in Mac with M1 chip (without renderer)!!

I think it's a good time to consider upgrade the dependency of panda3d!!!!!!!

Report:
Can run profile_metadrive example,
but can't use the Panda3d native renderer as:
pengzhenghao@ examples % python drive_in_multi_agent_env.py
Successfully registered the following environments: ['MetaDrive-validation-v0', 'MetaDrive-10env-v0', 'MetaDrive-100envs-v0', 'MetaDrive-1000envs-v0', 'SafeMetaDrive-validation-v0', 'SafeMetaDrive-10env-v0', 'SafeMetaDrive-100envs-v0', 'SafeMetaDrive-1000envs-v0', 'MARLTollgate-v0', 'MARLBottleneck-v0', 'MARLRoundabout-v0', 'MARLIntersection-v0', 'MARLParkingLot-v0', 'MARLMetaDrive-v0'].
Known pipe types:
  CocoaGraphicsPipe
(all display modules loaded.)
:display:cocoadisplay(error): Could not find a usable pixel format.
:ShowBase(warning): Unable to open 'onscreen' window.

Do they officially announce that it supports M1 chips? If so, you can report this bug to the panda3D forum and ask for help

The Panda3d rendering is still problematic. But I can run successfully without Panda3d rendering and I can workaround by using Pygame renderer!!
So it helps a lot. I can debug in my mac!

We have updated Panda3d requirement to allow high version that are compatible with M1/2 Mac


Ontology colored circles too big and overlap

This is on macOS 10.13, both Chrome and Safari.

The same issue occurs within the term popups, when multiple ontologies have the same term.


Don't run interpreterInfo.py for workspace interpreters unless "Select interpreter

Codecov Report

Merging #14862 (8235e96) into main (bc4eb21) will decrease coverage by 0%.
The diff coverage is 40%.

@@          Coverage Diff           @@
##            main   #14862   +/-   ##
======================================
- Coverage     65%      65%   -1%
======================================
  Files        551      552    +1
  Lines      25887    25909   +22
  Branches    3672     3677    +5
======================================
+ Hits       16900    16908    +8
- Misses      8294     8308   +14
  Partials     693      693

Impacted Files
Coverage Δ

src/client/pythonEnvironments/security.ts
25% <25%> (ø)

src/client/pythonEnvironments/legacyIOC.ts
35% <40%> (-1%)
:arrow_down:

...ts/base/locators/composite/environmentsResolver.ts
95% <100%> (+<1%)
:arrow_up:

src/client/testing/display/main.ts
85% <0%> (+<1%)
:arrow_up:

src/client/providers/symbolProvider.ts
88% <0%> (+<1%)
:arrow_up:

There's a broader issue here that's worth discussing, related to the concept of "trusted workspace".  I recognize that it may make sense to move forward at the moment with the focused solution of this PR in lieu of a broader one.  However, I want to be sure we take the broader matter into account first.
Basically, with this PR we're saying "as soon as you deliberately interact with the Python extension, you are indicating that your workspace is trusted".  So I have the following questions:

shouldn't we mark the workspace as "trusted" in every place users deliberately interact with the extension, and not just in the one place in this PR?
the idea extends beyond environments, so why don't we have a separate "security" component with the following API?

interface ISecurity {
    markAsTrustedWorkspace(): void;
    isTrustedWorkspace(): boolean;
}

shouldn't we use a consistent check for "trusted workspace" everywhere we need to in the extension (e.g. before running anything in the workspace), not just in the pyenvs component?
how will any approach we take for this (including the one in this PR) change with VSCode's proposed "trusted workspaces" feature?

CC @karthiknadig

@ericsnowcurrently Here's my understanding, @karthiknadig can clarify further:

Basically, with this PR we're saying "as soon as you deliberately interact with the Python extension, you are indicating that your workspace is trusted"

I'll correct myself here, the interaction here refers particularly to the interaction with the discovery component, not a general interaction with the extension like Running unrelated commands (eg. Run linting).
So with this PR we're saying "as soon as you deliberately interact with the Discovery component (explicitly trigger discovery by clicking the Select interpreter button for example), you are indicating that workspace interpreters are trusted to execute".

how will any approach we take for this (including the one in this PR) change with VSCode's proposed "trusted workspaces" feature?

We can simply assume that the extension activates for a workspace only if the workspace is trusted. So we can run anything within it., and hence this will no longer be needed.


Set Database Path ?

How would you set the database path with this library  (using LVL) ? Currently its using the project directory. I would want to bundle this.

Also how to create multiple databases ?.. Seems to be getting stuck

Hello Vikrant!
You've already submitted a PR for the first question, so I'll skip that one. :)
To make a second DB you just need to create a new nanosql instance:
import { NanoSQLInstance } from "nano-sql";

const newDB = new NanoSQLInstance().table;

newDB("table")
.model(...)
.connect().then...

You can create as many instances as you want, each one being it's own separate database.
Best
Scott

@ClickSimply Hey I figured it out thanks, was just going to just update the issue ! I was calling config()  twice on both the instances.
Looks to be working fine.. Thanks .. great work on this !
going ahead and closing the issue


User with only "Systems" permission will encounter error 403

Describe the bug
A user with only "Systems" permission encounter error 403 when accessing /admin/systems. Same error encountered while trying to logout by manually go to /admin/logout
To Reproduce
Steps to reproduce the behavior:

Create a new user at /admin/users/create
On permissions section, tick all except "Main"
Save and view the user, then click "Impersonate user"

Expected behavior
User will directly redirected to System page or at least allowed to access when entered manually

Hi @faizfizy, this is normal behavior.
The mandate "system" allows visiting it. But first, you need to access the main one.
Here is a real-life example that makes this clear:

We have the keys to the office in the business center, but nothing else. The security will not let you go beyond the reception, no matter how much you shake the keys, because they expect to see a badge or a card.


UX Testing: Help button breaks for some plugin with table to div changes

Summary: Some help buttons when clicked jumps to the top or the bottom of the page.
Tested docker run --rm -ti -p 8080:8080 -e ID=3895 jenkins/core-pr-tester

Folders plugin (see screenshot and screen recordings attached)
Jenkins Health Advisor plugin (see screenshot)
...

In the PR test version, when you click on the help button, the navigation jumps to the top of the page, without showing the help text. This behavior does not occur in a previous version.
A similar "jumpy" behavior was observed with the Bitbucket Branch Source plugin in both the previous and the PR test version. When you select the checkbox, it jumps to the bottom of the page. This does not happen when you unselect the checkbox (see screen recording bitbucket.mov.zip).
Links
N/A
Screenshots

Folders plugin - Health metrics in Configure System
See also screen recordings in folder-health-metric.zip

Health Advisor Plugin

Thanks for your contribution!
@all-contributors please add @megathaum for testing

Still need to republish it in Jira

@megathaum Hi. Would it be possible to also post this defect in Jenkins Jira?

I have reported this issue in the OSS JIRA tracker https://issues.jenkins-ci.org/browse/JENKINS-62500

Thanks a lot!


x/sys/unix: clean up the AIX Timespec/StTimespec difference

(From discussion on https://go-review.googlesource.com/c/sys/+/177437)
AIX is the only GOOS in x/sys/unix that has Stat_t fields of type StTimespec instead of Timespec. But AIX also is unique in that it has both Timespec and StTimespec.
But seems like we could fix that if we re-generate the AIX Go files with __USE_XOPEN2K8 set?
/cc @trex58 @tklauser @paulzhol @ianlancetaylor @Helflym

There is no __USE_XOPEN2K8 on AIX.
Looking at the code Yuval gave in this CL :
 111 # ifdef __USE_XOPEN2K8
 112     /* Nanosecond resolution timestamps are stored in a format
 113        equivalent to 'struct timespec'.  This is the type used
 114        whenever possible but the Unix namespace rules do not allow the
 115        identifier 'timespec' to appear in the <sys/stat.h> header.
 116        Therefore we have to handle the use of this header in strictly
 117        standard-compliant sources special.  */
 118     struct timespec st_atim;            /* Time of last access.  */
 119     struct timespec st_mtim;            /* Time of last modification.  */
 120     struct timespec st_ctim;            /* Time of last status change.  */
 121 # else
 122     __time_t st_atime;                  /* Time of last access.  */
 123     unsigned long int st_atimensec;     /* Nscecs of last access.  */
 124     __time_t st_mtime;                  /* Time of last modification.  */
 125     unsigned long int st_mtimensec;     /* Nsecs of last modification.  */
 126     __time_t st_ctime;                  /* Time of last status change.  */
 127     unsigned long int st_ctimensec;     /* Nsecs of last status change.  */
 128 # endif

we have something similar on AIX.
However, when using the equivalent of __USE_XOPEN2K8,
 118     struct timespec st_atim;            /* Time of last access.  */
 119     struct timespec st_mtim;            /* Time of last modification.  */
 120     struct timespec st_ctim;            /* Time of last status change.  */

are being replaced by
 118     st_timespec_t st_atim;            /* Time of last access.  */
 119     st_timespec_t st_mtim;            /* Time of last modification.  */
 120     st_timespec_t st_ctim;            /* Time of last status change.  */

Therefore, we can't remove the use of st_timespec_t inside Stat_t.
I think the only way to harmonise AIX with other GOOS is to have getters(and setters ?) on Atim, Mtim and Ctim fields of Stat_t.

Are the AIX headers available somwhere? I've found this snippet
in struct stat
#if _XOPEN_SOURCE>=700
        st_timespec_t st_atim;  /* Time of last access  */
        st_timespec_t st_mtim;  /* Time of last data modification */
        st_timespec_t st_ctim;  /* Time of last file status change */
#else
        time_t  st_atime;       /* Time of last access  */
        int     st_atime_n;
        time_t  st_mtime;       /* Time of last data modification */
        int     st_mtime_n;
        time_t  st_ctime;       /* Time of last file status change */
        int     st_ctime_n;
#endif

in struct stat64
#if _XOPEN_SOURCE>=700
        struct timespec64 st_atim;      /* 16: Time of last access */
        struct timespec64 st_mtim;      /* 16: Time of last data mod */
        struct timespec64 st_ctim;      /* 16: Time of last status change */
#else
        time64_t        st_atime;       /* 8: Time of last access */
        int32_t         st_atime_n;     /* 4: nanoseconds */
        int32_t         st_pad1;        /* 4: padding */
        time64_t        st_mtime;       /* 8: Time of last data modification */
        int32_t         st_mtime_n;     /* 4: nanoseconds */
        int32_t         st_pad2;        /* 4: padding */
        time64_t        st_ctime;       /* 8: Time of last file status change */
        int32_t         st_ctime_n;     /* 4: nanoseconds */
        int32_t         st_pad3;        /* 4: padding */
#endif

and the struct timespec and st_timespec
#if _XOPEN_SOURCE>=700
#ifndef _TIMESPEC
#define _TIMESPEC
struct timespec {
        time_t  tv_sec;         /* seconds */
        long    tv_nsec;        /* and nanoseconds */
};
#endif

/* internal timespec to preserve binary compatibility */
typedef struct st_timespec {
        time_t  tv_sec;         /* seconds */
        int     tv_nsec;        /* and nanoseconds */
A
} st_timespec_t;
#endif

Is this  still the representation? If so I'm not sure I understand what is causing the extra padding at the end of the StTimespec struct (I would expect cgo -godefs to inject the padding in between the tv_sec and tv_nsec fields).

I'm not sure if it's a good idea, but we could rewrite the Stat_t members to be Timespec:
on GOARCH==ppc StTimespec and Timespec are identical.
on GOARCH==ppc64 they occupy the same memory layout and because this is a big-endian architecture (correct me if I'm mistaken) if we do a Timespec.Nsec >> 4 in the syscall wrapper the nsec values should be the same as if they returned as StTimespec.

Are the AIX headers available somwhere?

I don't think so. But the snippet you gave is the correct one. Not idea about the cgo padding though.

I'm not sure if it's a good idea, but we could rewrite the Stat_t members to be Timespec:
on GOARCH==ppc StTimespec and Timespec are identical.
on GOARCH==ppc64 they occupy the same memory layout and because this is a big-endian architecture (correct me if I'm mistaken) if we do a Timespec.Nsec >> 4 in the syscall wrapper the nsec values should be the same as if they returned as StTimespec.

GOARCH==ppc is not available on Go toolchain only on gccgo. But, it should also be possible to modify the script generating the ztypes equivalent quite easily.
About ppc64, I don't see any reason why your idea won't work. But as you say "is it a good idea" to modify Stat_t ? People might not understand with Stat_t has not the correct layout and it might cause problems with the Go1 compatibility.
Anyway, if @ianlancetaylor, @bradfitz or others do agree with this kind of solution, I'll give it a try.

People might not understand with Stat_t has not the correct layout and it might cause problems with the Go1 compatibility.

This is for x/sys/unix for now, so I think there are no issues with Go1 compatibility.
BTW we already have something of the sorts for FreeBSD 11 where we return FreeBSD 12 compatible structures (mostly extending inode numbers to 64 bit).
It works pretty well with Stat_t,  Statvfs_t type of structures. There are some pain points with byte buffers containing Dirent's though.

Arf, I thought it was for syscall package, my bad.
Ok I'll check as soon as I can.


Allow only one program's draft to be published

Is your feature request related to a problem? Please describe.
An admin may be making edits to multiple programs at the same time.  One program may be ready to publish so that the edits can be tested and reviewed by others, while the other program's edits are still in draft and it isn't ready to be published yet.
Describe the solution you'd like
In the program admin home page, add a publish draft option button next to each individual program, rather than just one common 'Publish all drafts' button.  Ideally, get this UX reviewed/designed, and build the ability on the BE
Additional context
This is a real pain point for users, as well as a point of frustration.  As cities scale civiform and roll it out to more and more programs, the need for this feature will increase.
Done when

BE ability build
UX design
FE button build out and tested with full browser tests.  (bug bash?)

PRD started here: https://docs.google.com/document/d/1kDWF94YMDE_SOCYrhayLs4qFtT0_hoLsUZ8XtSXo0d8/edit
TDD started here: https://docs.google.com/document/d/1c9hbptNFeD_107E_YQaflKVDTNXyszwWWWLXFPHaW60/edit


scoped_session is missing session attributes

Describe the bug
scoped_session can proxy to the underlying session, but these attributes are not present in the stubs. I'm not sure if we just want to copy them or have a mixin, therefore first this issue
Expected behavior
No error
To Reproduce
from sqlalchemy import create_engine
from sqlalchemy.orm import scoped_session, sessionmaker

session_factory = sessionmaker(bind=create_engine("sqlite:////:memory:"))
scoped_session(session_factory).query

Error
x.py:6:1: error: "scoped_session" has no attribute "query"  [attr-defined]
    scoped_session(session_factory).query

Versions.

OS: Linux
Python: 3.7.1
SQLAlchemy: 1.4.22
mypy: 0.910
SQLAlchemy2-stubs: 0.0.2a6

Hi,
this is a duplicate of #61. closing in favor of that one. Thanks for reporting in any case

Thanks!


Improved Australian addresses and general secondary addresses.

Codecov Report

Merging #806 (63c3077) into main (936da84) will increase coverage by 0.11%.
The diff coverage is n/a.

:mega: This organization is not using Codecov’s GitHub App Integration. We recommend you install it so Codecov can continue to function properly for your repositories. Learn more
@@             Coverage Diff              @@
##               main     #806      +/-   ##
============================================
+ Coverage     92.66%   92.78%   +0.11%
- Complexity     2653     2655       +2
============================================
  Files           286      286
  Lines          5264     5264
  Branches        553      553
============================================
+ Hits           4878     4884       +6
+ Misses          244      240       -4
+ Partials        142      140       -2

see 4 files with indirect coverage changes
:mega: We’re building smart automated test selection to slash your CI/CD build times. Learn more

Rebase would be cleaner

Rebase would be cleaner

I probably don't understand git, but I had a conflict, then I did a rebase from master, resolved the conflicts, and then pushed them, and my push got rejected for whatever reason, and then I did a merge.
Yeah, I probably don't understand git.


Tracking issue: account abstraction in Conflux

Motivations
Ethereum's community is discussing the account abstraction, which enables the users to

create 'account contracts' that perform any desired signature/nonce checks instead of using the mechanism that is currently hard-coded into transaction processing.

They also provides several cases which can benefit from this feature in EIP-86

Multisig wallets: currently, sending from a multisig wallet requires each operation to be ratified by the participants, and each ratification is a transaction. This could be simplified by having one ratification transaction include signatures from the other participants, but even still it introduces complexity because the participants' accounts all need to be stocked up with ETH. With this EIP, it will be possible to just have the contract store the ETH, send a transaction containing all signatures to the contract directly, and the contract can pay the fees.
Ring signature mixers: the way that ring signature mixers work is that N individuals send 1 coin into a contract, and then use a linkable ring signature to withdraw 1 coin later on. The linkable ring signature ensures that the withdrawal transaction cannot be linked to the deposit, but if someone attempts to withdraw twice then those two signatures can be linked and the second one prevented. However, currently there is a privacy risk: to withdraw, you need to have coins to pay for gas, and if these coins are not properly mixed then you risk compromising your privacy. With this EIP, you can pay for gas straight our of your withdrawn coins.
Custom cryptography: users can upgrade to ed25519 signatures, Lamport hash ladder signatures or whatever other scheme they want on their own terms; they do not need to stick with ECDSA.
Non-cryptographic modifications: users can require transactions to have expiry times (this being standard would allow old empty/dust accounts to be flushed from the state securely), use k-parallelizable nonces (a scheme that allows transactions to be confirmed slightly out-of-order, reducing inter-transaction dependence), or make other modifications.

and in EIP-2938.

Smart contract wallets that use signature verification other than ECDSA (eg. Schnorr, BLS, post-quantum...)
Smart contract wallets that include features such as multisig verification or social recovery, reducing the highly prevalent risk of funds being lost or stolen
Privacy-preserving systems like tornado.cash
Attempts to improve gas efficiency of DeFi protocols by preventing transactions that don't satisfy high-level conditions (eg. existence of a matching order) from being included on chain
Users being able to pay for transaction fees in a token other than ETH (eg. by converting that token into the ETH needed for fees inside the transaction in real-time)

Besides that, there is another important case for Conflux

Sign Conflux transactions by Metamask: If a message signed by Metamask can be accepted as a valid transaction on the mainnet of Conflux, the user can do almost everything on Conflux without installing. This can reduce the barrier to experience Conflux.

Why Conflux can have a better solution than Ethereum?
In EIP-2938, Ethereum community provides a complicated solution to implement account abstraction, which includes two addtional opcode and the gas price/gas limit can be changed during transaction execution. This makes the transaction packing logic much more complicated.
Fortunately, Conflux has sponsorship mechanism, which enables a more elegant solution for account abstraction. Even without any upgrade, Conflux can still support some use cases in account abstraction.
For example, consider the cUSDT token contract want to support account controlled by ed25519 public keys. The contract developer can implement a function called submitEd25519TransactionWithSign(address sender, address receiver, uint value, bytes signature) and sponsor for all the addresses. A user can use a normal Conflux address to call this function and submit ed25519 signature. Benefit from the sponsorship mechanism, it is not necessary that the sender has CFX tokens. So the sender can generate a random string as private key, sign the transaction and send it.
What to do next?
This example still has several drawbacks.

Since it doesn't matter who is the sender, it is not neccessary to verify the ECDSA signature for such transaction. This wasted about 6000 gas.
The attacker may run out the sponsor balance by submitting invalid signature.
The supporting for ed25519 must be implemented by the contract developer. The ed25519 account can not act like a normal account in Conflux Network.

So, we have the following CIPs:

CIP-45: Introduce Flexible Account Authorization Methods. This CIP proposes to support SECP-256k1 directly.
CIP-52: Customized Rule for Eligibility to be Sponsored. This CIP proposed to allow the contract developer to specify a short script to check if the sender can be sponsored. All the miners should avoid packing. In the implementation view, we need to replace checking whitelist by running short script. (We also needs some design for backward compatible.) This CIP can support all the use cases in EIP-2938 and solve the second drawbacks in our example. A side effect for this CIP is this enables the contract developer customize the sponsorship rule. E.g., only the addressed staked enough contract token can be sponsored.
TBA, a CIP for drawback 3.

Closing due to inactivity. Feel free to comment if you'd like to continue the discussion. Thank you!


⚠ Solomon Ninja has degraded performance

In 83ac349, Solomon Ninja (https://solomon.ninja) experienced degraded performance:

HTTP code: 200
Response time: 10379 ms

Resolved: Solomon Ninja performance has improved in 998e275.


 I created a 3D tri-mesh based wedge, like so...
   |\
x  | \
^  |  \
|  |___\
    -> y

I found that a ball rolling on it would behave strangely, like rolling down a "seam" between the two triangles that make up its top side (even though they form a perfectly smooth plane) or "sinking" into the wedge.
Similarly, if you reduce the number of ramp segments to 3 in the included example, you'll see this:
https://user-images.githubusercontent.com/321861/105569487-01b44100-5d96-11eb-8996-ed0b38032ee1.mp4
I haven't gotten any further than this, but I figured having a way to visualize 3D tri-mesh and an easy way to repro the problem might be worth a PR.

I implemented this to help me debug something. I created a 3D tri-mesh based wedge, like so...
   |\
x  | \
^  |  \
|  |___\
    -> y

I found that a ball rolling on it would behave strangely, like rolling down a "seam" between the two triangles that make up its top side (even though they form a perfectly smooth plane) or "sinking" into the wedge.
Similarly, if you reduce the number of ramp segments to 3 in the included example, you'll see this:
https://user-images.githubusercontent.com/321861/105569487-01b44100-5d96-11eb-8996-ed0b38032ee1.mp4
I haven't gotten any further than this, but I figured having a way to visualize 3D tri-mesh and an easy way to repro the problem might be worth a PR.

Thank you for this PR! The problem you are experiencing here is likely caused by the common physics-engine problem called the "internal edges problem". Basically, your ball hits the edges between two triangles, and this edge contact ends up having a normal that is not parallel to the adjacent triangles faces' normals. So this deviates the ball from its trajectory since it is as if the floor isn't actually flat.
This problem is not easy to solve. It would be great to move your screenshots to a separate issue dedicated to this problem.

Thank you for this PR! The problem you are experiencing here is likely caused by the common physics-engine problem called the "internal edges problem". Basically, your ball hits the edges between two triangles, and this edge contact ends up having a normal that is not parallel to the adjacent triangles faces' normals. So this deviates the ball from its trajectory since it is as if the floor isn't actually flat.
This problem is not easy to solve. It would be great to move your screenshots to a separate issue dedicated to this problem.


fix: docker --format

I believe the docker/podman ps command to get container status is incorrect as the JSON fields are all capitalized.

Thank you for your contribution.


Template format error: Every AllowedValues member must be a list

cfn-lint 0.26.2
Checking .yaml file, block
Parameters:
  Env:
    Type: "String"
    Description: "Environment"
    Default: "staging"
    AllowedValues:
            staging
            mock
            production
            DEVOPS

Lint says no errors, but when run aws cloudformation:
An error occurred (ValidationError) when calling the CreateStack operation: Template format error: Every AllowedValues member must be a list.

Should be an easy one to do.  Thanks for submitting this.

after this PR is in.
E2001 Property Parameters/Env/AllowedValues should be of type List
test/fixtures/templates/bad/parameters/configuration.yaml:Line:Column

Hi I'm having the same error when trying to deploy a stack
Parameters:
  EnvironmentSize:
    Type: String
    Default: SMALL
    AllowedValues:
      - SMALL
      - MEDIUM
      - LARGE


ReportStream Landing Page Redesign

Problem statement
Redesign ReportsStream Landing Page
What you need to know
[Links to documents, workflows, or list of key people and contact info]

Document 1
Document 2
...

Acceptance criteria

[ ] ...

To do

[ ] ...

Duplicate of #5076


doc: explain vendoring

How to Write Go Code should mention vendoring feature under "Remote packages" section.
We also need to replace all the mentions of GO15VENDOREXPERIMENT on the wiki with the proper official document.

This is already tracked in  #16495, so closing this since it's an exact dup of an older issue.


feat: add development support

closes #200

/cc @Snugug check the PR and the docs here: https://deploy-preview-202--vite-plugin-pwa.netlify.app/guide/development.html


reading excel localisation columns seems incomplete

anatomical_regions in group_columns.py:
def anatomical_regions(df):
    localisation_labels = df.columns[17:72]

    return localisation_labels

seems like it should be:
def anatomical_regions(df):
    localisation_labels = df.columns[17:103]  # 17:72  # March excel updated to 17:103

    return localisation_labels

but this causes the modules to break when melting (melt_then_pivot_query). could be another high-level function calling the lateralisation or id_vars isn't updated, as can't seem to find the problem.

I have no idea, I never touch the Excel columns/rows.

there are a lot of legacy issues such as having a double named mega_analysis folder and an unnecessary crosstab folder, but I won't change these for now. This resulted in me ignoring semiology_all_localisations.py which contains:
all_localisations

will create a pull request combining the following changes:
semiology_all_localisations
def all_localisations(localisation_columns="R:CZ"):

group_columns.py
def anatomical_regions(df):
    localisation_labels = df.columns[17:103]  # 17:72  # March excel updated to 17:103

    return localisation_labels

this seems to have been fixed in a previous merge,  Ihave double checked and vermis comes up as a region in the logging after running MEGA_ANALYSIS
THESE ARE THE REMOVED EMPTY LABELS:"#

related to #71 actually this was only fixed in the combo commits:
3684468 and
6ce476f


grant/kol 7429 programmatic retrieval of significance

add functionality to display performance delta when using download_quality_standard_result
added test

Linked issue(s)
What change does this PR introduce and why?
Please check if the PR fulfills these requirements

[ ] Include reference to internal ticket and/or GitHub issue "Fixes #NNNN" (if applicable)
[ ] Relevant tests for the changes have been added
[ ] Relevant docs have been added / updated

Can you share an example of how to run this? I'm trying to figure out how to best set up a dataset / QS for this -- is there an example that you already have set up that I can play with?

Yes, I have played around with this dataset on my tenant
from kolena._experimental import download_quality_standard_result
qs_result = download_quality_standard_result("attack_on_llms_small", ["databricks_dbrx-instruct", "gpt-4-turbo"], confidence_level = 0.95, reference_model = "gpt-4-turbo")

from kolena._experimental import download_quality_standard_result
qs_result = download_quality_standard_result("attack_on_llms_small", ["databricks_dbrx-instruct", "gpt-4-turbo"], confidence_level = 0.95, reference_model = "gpt-4-turbo")

I tried playing around with this, and it looks like the colors aren't matching with the webapp (link)
One example (from when I dumped this to CSV):
model,,databricks_dbrx-instruct,databricks_dbrx-instruct,gpt-4-turbo,gpt-4-turbo,databricks_dbrx-instruct,databricks_dbrx-instruct,gpt-4-turbo,gpt-4-turbo
eval_config,,null,null,null,null,null,null,null,null
metric_group,,Metric Group,Metric Group,Metric Group,Metric Group,Metric Group,Metric Group,Metric Group,Metric Group
metric,,rate rejected,Mean Metadata.count,rate rejected,Mean Metadata.count,rate rejected,Mean Metadata.count,rate rejected,Mean Metadata.count
type,,metric_value,metric_value,metric_value,metric_value,performance_delta,performance_delta,performance_delta,performance_delta
stratification,test_case,,,,,,,,
...
type,Raw,0.03333333333333333,,0.1,0.0,regressed,unknown,similar,similar

vs webapp

The endpoint seems to indicate regressed, but there's no coloration on the webapp (both at confidence level of 0.95)

from kolena._experimental import download_quality_standard_result
qs_result = download_quality_standard_result("attack_on_llms_small", ["databricks_dbrx-instruct", "gpt-4-turbo"], confidence_level = 0.95, reference_model = "gpt-4-turbo")

I tried playing around with this, and it looks like the colors aren't matching with the webapp (link)
One example (from when I dumped this to CSV):
model,,databricks_dbrx-instruct,databricks_dbrx-instruct,gpt-4-turbo,gpt-4-turbo,databricks_dbrx-instruct,databricks_dbrx-instruct,gpt-4-turbo,gpt-4-turbo
eval_config,,null,null,null,null,null,null,null,null
metric_group,,Metric Group,Metric Group,Metric Group,Metric Group,Metric Group,Metric Group,Metric Group,Metric Group
metric,,rate rejected,Mean Metadata.count,rate rejected,Mean Metadata.count,rate rejected,Mean Metadata.count,rate rejected,Mean Metadata.count
type,,metric_value,metric_value,metric_value,metric_value,performance_delta,performance_delta,performance_delta,performance_delta
stratification,test_case,,,,,,,,
...
type,Raw,0.03333333333333333,,0.1,0.0,regressed,unknown,similar,similar
type,Role Playing,0.15555555555555556,0.6666666666666666,0.12222222222222222,,improved,unknown,similar,unknown

vs webapp
The endpoint seems to indicate regressed and improved, but there's no coloration on the webapp (both at confidence level of 0.95)

Weird, the algorithm is exactly the same, I will calculate it again to confirm. Could it be that the color on webapp is too light to see

from kolena._experimental import download_quality_standard_result
qs_result = download_quality_standard_result("attack_on_llms_small", ["databricks_dbrx-instruct", "gpt-4-turbo"], confidence_level = 0.95, reference_model = "gpt-4-turbo")

I tried playing around with this, and it looks like the colors aren't matching with the webapp (link)
One example (from when I dumped this to CSV):
model,,databricks_dbrx-instruct,databricks_dbrx-instruct,gpt-4-turbo,gpt-4-turbo,databricks_dbrx-instruct,databricks_dbrx-instruct,gpt-4-turbo,gpt-4-turbo
eval_config,,null,null,null,null,null,null,null,null
metric_group,,Metric Group,Metric Group,Metric Group,Metric Group,Metric Group,Metric Group,Metric Group,Metric Group
metric,,rate rejected,Mean Metadata.count,rate rejected,Mean Metadata.count,rate rejected,Mean Metadata.count,rate rejected,Mean Metadata.count
type,,metric_value,metric_value,metric_value,metric_value,performance_delta,performance_delta,performance_delta,performance_delta
stratification,test_case,,,,,,,,
...
type,Raw,0.03333333333333333,,0.1,0.0,regressed,unknown,similar,similar
type,Role Playing,0.15555555555555556,0.6666666666666666,0.12222222222222222,,improved,unknown,similar,unknown

vs webapp
The endpoint seems to indicate regressed and improved, but there's no coloration on the webapp (both at confidence level of 0.95)

Weird, the algorithm is exactly the same, I will calculate it again to confirm. Could it be that the color on webapp is too light to see

this matches with the UI now, not sure what type of test would be meaningful to these mathematical calculations, it is hard to identify edge cases here. We already have a test case to check if the produced performance delta match the expected result.

this matches with the UI now, not sure what type of test would be meaningful to these mathematical calculations, it is hard to identify edge cases here. We already have a test case to check if the produced performance delta match the expected result.

What was the issue, the check for and max_value > 0:? Is there anything we can do to test around that case specifically, since it was something that was missed? Change looks good otherwise.

this matches with the UI now, not sure what type of test would be meaningful to these mathematical calculations, it is hard to identify edge cases here. We already have a test case to check if the produced performance delta match the expected result.

What was the issue, the check for and max_value > 0:? Is there anything we can do to test around that case specifically, since it was something that was missed? Change looks good otherwise.

I missed the part where the max value for performance delta is the max across the stratification, except for when the max value is 0 or less.

Approving to unblock, pending test to track the latest (now fixed) issue.

created this ticket to track


scatter, public schema

Hello,
method scatter create temporary view in public schema, but we don't have access to this schema.
the error is :

can you add parameter schema for this method to write temporary object?
Regards,
Alexandre

Hi Alexandr,
The vdf used as input can include the "writing schema".
vdf.set_schema_writing("my_schema")
vdf.scatter(...)

I think, we should add a general variable to solve this problem. We will add an extra parameter to the "set_option" function for v0.9.0.
Badr

Hello,
We could consider the following scenario:
• By default, the function looks at the vDataFrame passed as a parameter, and retrieves:
o The schema of the associated table OR the schema of the set_schema_writing parameter
o They can be potentially different: if the set_schema_writing is specified, it is priority
o Problem, this is not enough here, because on some functions you can directly pass a table and not a vDataFrame, you would then have to retrieve the schema linked to the table in question
• Then, if set_option is defined, then it takes the given schema
o This is then applied to all the functions, and replaces/overwrites the other possibilities
It's ok for you?
Alexandre

Are you sure you're using the right version. When reading at the code to build the PCA:
if isinstance(dimensions, Iterable):
            model_name = gen_tmp_name(
                schema=verticapy.options["temp_schema"], name="pca_plot"
            )
            from verticapy.learn.decomposition import PCA

            model = PCA(model_name)

We can clearly see that the temp schema is used. Can you confirm the issue and the version?

it's weird :

the problematic line is 8765, but in source code -> https://github.com/vertica/VerticaPy/blob/master/verticapy/vdataframe.py the line is 9345. I have checked and I am in 0.8.1 version on my notebook.
The version 0.8.1 in conda forge is ok?
Alexandre

I checked and it is working for me but I am using the 0.9.0-beta. So in all cases, it will work in the next release.


Everytime the user enters data, [object object] gets written

Hi avallete, great package 👌🏻 Thank you for creating it.
I have the following problem: When the user enters a value, never writes the value, but
{
  value: <entered value>,
  label: <entered value>
}

I'd also like any value to be entered (not only the auto complete suggestions).
Here is my code:
function contactInformationFormatter(params) {
  if (params.value) {
    // Me trying to extract the value so that not `[object object]` gets returned.
    return strings[params.value] || params.value.value || params.value;
  }
  return '';
}

function ContactList({
  autoSuggestions,
  contacts,
  onCellValueChanged,
  searchValue,
}) {
  const columnDefs = R.map(
    R.pipe(x => ({
      headerName: strings[x.name],
      field: x.name,
      valueFormatter: contactInformationFormatter,
      cellEditor: keysThatShouldHaveAutoSuggestions.includes(x.name)
        ? AutocompleteSelectCellEditor
        : componentToCellEditors[x.component],
      cellEditorParams:
        x.component === 'select'
          ? cellEditorParams[x.name]
          : keysThatShouldHaveAutoSuggestions.includes(x.name)
          ? {
              selectData: autoSuggestions[x.name].map(x => ({
                value: x,
                label: x,
              })),
            }
          : null,
      getQuickFilterText: function(params) {
        return x.component === 'select' ? null : params.value;
      },
      cellClassRules: {
        'search-value-found':
          'api.gridOptionsWrapper.gridOptions.quickFilterText && x.toLowerCase().includes(api.gridOptionsWrapper.gridOptions.quickFilterText)',
      },
    })),
    contactInformationCells
  );

Do you have any idea, what I'm doing wrong?

For the 'any' option, I created another issue to ask about this feature request, and formalize what need to be done, feel free to participate and give your opinion about the described implementation: https://github.com/avallete/ag-grid-autocomplete-editor/issues/16
For your problem, I don't spot any obvious error apart from the (return strings[params.value] ) into the Formatter who look very strange to me. Since params.value will contain an object of type {value: x, label: y}. You probably want to do params.value.value to select your actual value.
Maybe try to post an basic example with some data on https://stackblitz.com so I will be able to help you better.

I answered on that issue, too.
I have strings[params.value] as part of some other selects, where I use i18n (but they do not get their values from this package).

Ok, so if I understood the first 'strings[params.value]' return undefined, so after that it's the params.value.value who are sent ?
If that the case, that should work since it's what I do into my own examples:
   valueFormatter: (params) => {
       if (params.value) {
           return params.value.label || params.value.value || params.value;
       }
       return "";
   },

But, as I said before, there is too much going on into your code to me. The multiples loop and imbricated ternary confuse me a bit.
Could you please try to console.log(params) inside the valueFormatter to see what is returned by the cellEditor ? Or as I said before, please try to reproduce your bug on a minimal working code example into https://stackblitz.com/ .

In the mean time, I close the issue.
Feel free to reopen it with minimal working code error if your problem persist.


Feature: Reorder/sort/color default output format for better legibility

Is your feature request related to a problem? Please describe.
In the default output (examples) it's difficult to visually find the failing items.
Describe the solution you'd like
Swap the column order to for example:
Fail  3 Automatic-Dependency-Update
Pass 10 Binary-Artifacts
Fail  0 Branch-Protection
Pass 10 CI-Tests
Pass 10 CII-Best-Practices
Pass 10 Code-Review
Pass 10 Contributors
Fail 10 Frozen-Deps
Pass 10 Fuzzing
Fail  0 Packaging
Pass 10 Pull-Requests
Fail 10 SAST
Fail  5 Security-Policy
Fail 10 Signed-Releases
Fail 10 Signed-Tags
Pass 10 Token-Permissions

Describe alternatives you've considered

coloring: red/green or only red for Fail
sorting the Fail to either the top of bottom of the list.

Both "alternatives" could be combined with the re-ordering, though.
Additional context
CSV & JSON are cool for reporting, but sometimes one just wants to interactively find a problem to work on. An easier-to-read default output would help a lot.

@katrinleinweber  Thanks for the suggestion! In the initial fix, we aren't including the color.

Wow, that's fast :-) Thank you!


Where is enum SpanType?

Please answer these questions before submitting your issue.

Why do you submit this issue?
Question or discussion

Question
我下载了5.0.0-RC2的源代码，想对它进行修改使其支持6.*版本的ES，但由于无法找到枚举org.apache.skywalking.apm.network.proto.SpanType，编译失败，请问我可以从哪里找到这个枚举呢？

Read compiling document. You will have everything you need.

Wow, it just looks error, now i compiled successfully, thanks!


[Azure Monitor] OpenTelemetry Exporter refactor

Packages impacted by this PR
@azure/monitor-opentelemetry-exporter
Refactored code and addressing feedback we got in last arch review, simplifying what we expose to customers.

API change check
APIView has identified API level changes in this PR and created following API reviews.
azure-monitor-opentelemetry-exporter


Nitro Protocol test failure due to timeout

Another failure https://app.circleci.com/pipelines/github/statechannels/monorepo/7412/workflows/e114e689-14b3-4b7e-a5c5-fbd26ee30060/jobs/34522:
@statechannels/nitro-protocol: Error: timeout
@statechannels/nitro-protocol:     at Timeout.timeoutFunc (/home/circleci/project/node_modules/tcp-port-used/index.js:204:25)

@statechannels/nitro-protocol:     at ontimeout (timers.js:436:11)
@statechannels/nitro-protocol:     at tryOnTimeout (timers.js:300:5)
@statechannels/nitro-protocol:     at listOnTimeout (timers.js:263:5)
@statechannels/nitro-protocol:     at Timer.processTimers (timers.js:223:10)
@statechannels/nitro-protocol: error Command failed with exit code 1.

This failure looks like it's due to server.ready timing out here. We could look at increasing the timeout as it's currently 5 seconds.
Originally posted by @lalexgap in https://github.com/statechannels/monorepo/issues/2178#issuecomment-644285266

The test stats might shine some light, thought a cursory look indicates that the server was started around 72 seconds, and the test failed around 75 seconds (maybe tthe server was noto yet ready).


write_svg number resolution

Not a bug, just a feedback. SVGs could be smaller, and maybe faster to open.
The generated SVG file uses three decimal places behind the decimal point, but some of them have many additional ones. It is due to the number storage in a binary system, but displaying in decimal. I believe the SVG size and the speed of viewing it could benefit from consequently writing out only a given number of decimal places.
An excerpt from the generated svg file:
<polygon class="l15d0" points="-8.395000000000001,5.0649999999999995 -8.395000000000001,5.025 -9.935,5.025 -9.935,5.0649999999999995"/>
<polygon class="l15d0" points="-10.475,4.1450000000000005 -10.435,4.1450000000000005 -10.435,4.065 -10.475,4.065"/>
<polygon class="l15d0" points="-10.174999999999999,4.1450000000000005 -10.135,4.1450000000000005 -10.135,4.025 -10.174999999999999,4.025"/>
<polygon class="l15d0" points="-10.135,4.0649999999999995 -10.135,4.025 -10.225,4.025 -10.225,4.0649999999999995"/>
<polygon class="l15d0" points="-7.375,4.025 -7.375,4.0649999999999995 -7.2700000000000005,4.0649999999999995 -7.2700000000000005,4.025"/>
<polygon class="l15d0" points="-6.7749999999999995,4.1450000000000005 -6.735,4.1450000000000005 -6.735,4.025 -6.7749999999999995,4.025"/>
<polygon class="l15d0" points="-6.795000000000001,4.0649999999999995 -6.795000000000001,4.025 -6.875,4.025 -6.875,4.0649999999999995"/>
<polygon class="l15d0" points="-7.074999999999999,4.1450000000000005 -7.035,4.1450000000000005 -7.035,4.045 -7.074999999999999,4.045"/>

I don't see how to fix the precision without possibly causing other problems. If we fix to 3 (.3f), for example, then coordinates below 0.001 will be lost. Who's to say they are not important? If we use a large enough number of places for a reasonable resolution (I don't really know what that would be, maybe 6?), then all coordinates will use that number of digits, which might end up increasing the total file size.
Any ideas?

What if this would be a argument for the write_svg function? In that case the user could tune it. The default behaviour could stay as it is now. I think numpy's format_float_positional function does the trick. What do you think?
>>> import numpy as np
>>> np.format_float_positional(np.pi, trim='-', precision=3)
'3.142'
>>> np.format_float_positional(np.pi*100, trim='-', precision=3)
'314.159'

It seems good to me. Though I am no expert. Thanks!


POC: keep pointers nil if not touched

Hmm - this would be a breaking change. envconfig's promise is that it will deeply-initialize any nested pointers.

Yea, I understand. Let's first discuss whether this behavior indeed makes sense (to me: both behaviors has its own use). Maybe we can have an option or a different func or a global flag to switch.

I'm thinking this should be a per-field configuration:
type Foo struct {
  Field *Bar `env:"..., noinit"`
}


Using plugin to scan a barcone on Zebra TC57

Hello @darryncampbell ,
I am trying to use the plugin on a TC57 device. Actually I am having troubles even just running the test application on that device and it seems that I can send the command to the zebra to start scanning, I can even get some event back, but I don't get any data but if the IR is fired and is reading something.
I Can also tell you that I can enumerate the scanners, but it seems i can't set the profile I want.
I wonder if you can give me any advice on how to let it work
I'll attach the service I am using (mostly the same from your example).
Thanks for your help,
Alessandro
import { BehaviorSubject } from 'rxjs';
import { Injectable } from '@angular/core';
import { Platform } from 'ionic-angular';
import { Events } from 'ionic-angular/util/events';@Injectable()

export class BarcodeProvider {
  private requestResultCodes = "false";

  constructor(public events: Events, private platform: Platform) {
    this.platform.ready().then((readySource) => {
      let constructorInstance = this;
      (<any>window).plugins.intentShim.registerBroadcastReceiver({
        filterActions: [
          'com.zebra.mycart.ACTION',           //  Response from scan (needs to match value in output plugin)
          'com.symbol.datawedge.api.ACTION',
          'com.symbol.datawedge.api.RESULT_ACTION'//  Response from DataWedge service (as defined by API)
        ],
        filterCategories: [
          'android.intent.category.DEFAULT'
        ]
      },
        function (intent) {
          //  Broadcast received
          console.log('my intent: ' + JSON.stringify(intent));
          console.log('Received Intent: ' + JSON.stringify(intent.extras));
          //  Emit a separate event for the result associated with this scan.  This will only be present in response to
          //  API calls which included a SEND_RESULT extra
          if (intent.extras.hasOwnProperty('RESULT_INFO')) {
            let commandResult = intent.extras.RESULT + " (" +
              intent.extras.COMMAND.substring(intent.extras.COMMAND.lastIndexOf('.') + 1, intent.extras.COMMAND.length) + ")";  // + JSON.stringify(intent.extras.RESULT_INFO);
            constructorInstance.events.publish('data:commandResult', commandResult.toLowerCase());
          }

          if (intent.extras.hasOwnProperty('com.symbol.datawedge.api.RESULT_GET_VERSION_INFO')) {
            var versionInfo = intent.extras['com.symbol.datawedge.api.RESULT_GET_VERSION_INFO'];
            console.log('Version Info: ' + JSON.stringify(versionInfo));
            let datawedgeVersion = versionInfo['DATAWEDGE'];
            console.log("Datawedge version: " + datawedgeVersion);
            if (datawedgeVersion >= "6.3")
              constructorInstance.events.publish('status:dw63ApisAvailable', true);
            if (datawedgeVersion >= "6.4")
              constructorInstance.events.publish('status:dw64ApisAvailable', true);
            if (datawedgeVersion >= "6.5")
              constructorInstance.events.publish('status:dw65ApisAvailable', true);
          }
          else if (intent.extras.hasOwnProperty('com.symbol.datawedge.api.RESULT_ENUMERATE_SCANNERS')) {
            //  Return from our request to enumerate the available scanners
            let enumeratedScanners = intent.extras['com.symbol.datawedge.api.RESULT_ENUMERATE_SCANNERS'];
            constructorInstance.events.publish('data:enumeratedScanners', enumeratedScanners);
          }

          else if (intent.extras.hasOwnProperty('com.symbol.datawedge.api.RESULT_GET_ACTIVE_PROFILE')) {
            //  Return from our request to obtain the active profile
            let activeProfile = intent.extras['com.symbol.datawedge.api.RESULT_GET_ACTIVE_PROFILE'];
            constructorInstance.events.publish('data:activeProfile', activeProfile);
          }

          else if (!intent.extras.hasOwnProperty('RESULT_INFO')) {
            //  A barcode has been scanned
            console.log('data:scan', intent)
            constructorInstance.events.publish('data:scan', {scanData: intent, time: new Date().toLocaleTimeString()});
          }
        }
      );
    });
  }

  requestResult(requestCodes: boolean) {
    this.requestResultCodes = "" + requestCodes;
  }

  sendCommand(extraName: string, extraValue) {
    console.log("Sending Command: " + extraName + ", " + JSON.stringify(extraValue));
    (<any>window).plugins.intentShim.sendBroadcast({
      action: 'com.symbol.datawedge.api.ACTION',
      extras: {
        [extraName]: extraValue,
        "SEND_RESULT": this.requestResultCodes
      }
    },
      function () { },
      function () { }
    );
  }
}

Hi,

Which test app are you trying to run?
Which version of DataWedge does your device have (https://techdocs.zebra.com/datawedge/7-0/guide/about/#whichversionisinstalled)?
Is the DataWedge profile being created?
Can you please try restoring DataWedge and launching the test app again (DataWedge app --> Settings --> Restore)?

Hello Darryn and thank you very much,
I am trying to run this https://github.com/ZebraDevs/DataWedge-Ionic-Demo
DataWedge version: 8.0.37
Scanning Framework version: <IP_ADDRESS>
The DataWedge profile ZebraIonicDemo is being created but is not used by the app (in the app the active profile is alway Profile0).
I did try to restore the DataWedge and launching the app, but i have the same results.
Thank you for your help.

Hi, strange, can you please confirm that the 'associated applications' in the ZebraIonicDemo profile points to the demo application?  That version of DataWedge should be sufficient to run the demo

Hello,
yes I can post you here some pics from the Zebra, it seems that the profile points to the demo application.

I tried changing the language of my TC52 in case this was related to language but it still works fine for me.  I can install the ZebraIonicDemo and the Active Profile shows as "ZebraIonicDemo" rather than "Profile0 (default)" which is what you see.
I do have a TC57 in my drawer.  What BSP are you running?  Settings --> About Phone --> Build number.  I will then test it on a device configured exactly the same as yours.

@darryncampbell Thank you very much, reading your answers we could find out what was going wrong. Actually it was just my mistake in giving the wrong name to the ionic App. The app ID wasnt matching properly the DataWedge profile so it wouldn't "connect" and the events were missing.
I could change the App ID and recompiled the app and now it works perfectly!
Thank you very much for your precious help!
Alessandro


Fix config center properties log level

What is the purpose of the change
Brief changelog
Verifying this change

Checklist

[x] Make sure there is a GitHub_issue field for the change (usually before you start working on it). Trivial changes like typos do not require a GitHub issue. Your pull request should address just this issue, without pulling in other changes - one PR resolves one issue.
[ ] Each commit in the pull request should have a meaningful subject line and body.
[ ] Write a pull request description that is detailed enough to understand what the pull request does, how, and why.
[ ] Check if is necessary to patch to Dubbo 3 if you are work on Dubbo 2.7
[ ] Write necessary unit-test to verify your logic correction, more mock a little better when cross module dependency exist. If the new feature or significant change is committed, please remember to add sample in dubbo samples project.
[ ] Add some description to dubbo-website project if you are requesting to add a feature.
[ ] GitHub Actions works fine on your own branch.
[ ] If this contribution is large, please follow the Software Donation Guide.

Codecov Report

Merging #12555 (cd2db3a) into 3.2 (5f39404) will increase coverage by 0.59%.
The diff coverage is n/a.

@@              Coverage Diff              @@
##                3.2   #12555       +/-   ##
=============================================
+ Coverage     68.64%   69.24%    +0.59%
+ Complexity      338        2      -336
=============================================
  Files          3607     1637     -1970
  Lines        168096    67523   -100573
  Branches      27971     9907    -18064
=============================================
- Hits         115391    46754    -68637
+ Misses        42698    16244    -26454
+ Partials      10007     4525     -5482

see 2061 files with indirect coverage changes
:mega: We’re building smart automated test selection to slash your CI/CD build times. Learn more


Update enabling-bpf.md

Description
Fixed spelling error.

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.You have signed the CLA already but the status is still pending? Let us recheck it.

@crossett, thanks for this PR. If you are able to click through the CLA link then we can get this PR merged.


Fix for #166 - New dialog "Size" property causes manifest validation to fail

update to fix property name clash for #166

Thanks!


Update nf-winbase-createprocesswithtokenw.md

This change is based on attempts to use this API to start a process in an existing interactive desktop session and as the desktop user, from a session 0 process running as local system. I finally found the page below, where then-Microsoft dev Eric Perlin says that CreateProcessWithTokenW and CreateProcessWithLogon start the new process in the caller's session.
https://social.msdn.microsoft.com/Forums/en-US/f38b0dd4-d69f-4b7e-b85c-af40a1425636/createprocesswithtokenw-succeeds-but-is-not-using-the-token

@AaronMargosis : Thanks for your contribution! The author(s) have been notified to review your proposed change.

#sign-off

@QuinnRadich: I'm sorry - only the author of this article, @lastnameholiu, can sign off on your changes. But we do have an exception process - if you are on the Microsoft content or product team for this product area, you can ask the PR review team to review and merge it by sending mail to the techdocprs alias.

#sign-off

@QuinnRadich: I'm sorry - only the author of this article, @lastnameholiu, can sign off on your changes. But we do have an exception process - if you are on the Microsoft content or product team for this product area, you can ask the PR review team to review and merge it by sending mail to the techdocprs alias.

Documenting for posterity that, despite PR merger's objections, Alexis has assigned this PR to me to handle as his peer and fellow doc writer. Thus, merging.


Add MSBuild tasks for creating and deleting IIS vdirs

Add MSBuild tasks for creating and deleting IIS vdirs to replace VBS scripts
This work item was migrated from CodePlex
CodePlex work item ID: '3742'
Assigned to: 'tfabraham'
Vote count: '0'

[UnknownUser@2/3/2009]
Resolved with changeset 18268.

[UnknownUser@2/21/2013]

[UnknownUser@5/16/2013]


ScalingFactor failing if output above 3.000 Watt

Describe The Bug:
In my system the 0.10 plugin reports 0 Watt as soon as my SolarEdge output more than 3.000 Watt. I see it relates to the scale factor SF value which becomes "0" but I guess it should become 1 (10^0)
To Reproduce:
Use a SolarEdge Inverter with more than 3 kW output
Expected behavior:
I modified the solaredgeInverter.ts code to convert the signed integer (i16) number as shown below, and I have verified this on my local setup, and it should work on any SolarEdge Inverter compliant with SunSpec Logging.
computeResult(factor : number, scalingFactor : number) : number | undefined {
// Converting (i16) value from inverter
if ((scalingFactor & 0x8000) > 0) {
  scalingFactor = scalingFactor - 0x10000;
}
const result = factor * 10 ** (scalingFactor);
this.platform.log.debug('Computed:', result);
return Math.max(result, 0.0001);

}
Logs:
From debugging before fix:
[30/03/2022, 10:22:54] [SolaredgeRealTime] Connected
[30/03/2022, 10:22:54] [SolaredgeRealTime] Received Power: [ 29990 ]
[30/03/2022, 10:22:54] [SolaredgeRealTime] Interpreted power value: 29990
[30/03/2022, 10:22:54] [SolaredgeRealTime] Received SF: [ 65535 ]
[30/03/2022, 10:22:54] [SolaredgeRealTime] Computed: 2999
[30/03/2022, 10:22:54] [SolaredgeRealTime] Updating Ambient Light Level: 2999
[30/03/2022, 10:22:54] [SolaredgeRealTime] closed connection to xx
[30/03/2022, 10:22:57] [SolaredgeRealTime] Connecting to Inverter at xx
[30/03/2022, 10:22:57] [SolaredgeRealTime] Connected
[30/03/2022, 10:22:57] [SolaredgeRealTime] Received Power: [ 3017 ]
[30/03/2022, 10:22:57] [SolaredgeRealTime] Interpreted power value: 3017
[30/03/2022, 10:22:57] [SolaredgeRealTime] Received SF: [ 0 ]
[30/03/2022, 10:22:57] [SolaredgeRealTime] Computed: 0
[30/03/2022, 10:22:57] [SolaredgeRealTime] Updating Ambient Light Level: 0.0001
Environment:
SolarEdge SE5000

Plugin Version:0.10
Homebridge Version: 1.4.0

Hi! Thank you for posting this! Seems that I can reproduce the issue too. Could you please give an advise how to implement that in my plugin installation?

Oups... when I'm above some other value the same happens again...
Connecting to Wechselrichter at x
[6/6/2022, 5:47:57 PM] [SolaredgeRealTime] Connected
[6/6/2022, 5:47:57 PM] [SolaredgeRealTime] Received Power:  [ 6683 ]
[6/6/2022, 5:47:57 PM] [SolaredgeRealTime] Interpreted power value:  6683
[6/6/2022, 5:47:57 PM] [SolaredgeRealTime] Received SF:  [ 0 ]
[6/6/2022, 5:47:57 PM] [SolaredgeRealTime] Computed: 0
[6/6/2022, 5:47:57 PM] [SolaredgeRealTime] Updating Ambient Light Level:  0.0001
[6/6/2022, 5:47:57 PM] [SolaredgeRealTime] closed connection to x

This is very weird behaviour. I removed a sanity check, that I thought to be useful and hope this fixes this. But the computation is very straight forward and should not have any unexpected edge case behaviour. Try Version 0.12


Update currentRule when changing active pluralExtension

When using addRule, currentRule stays unmodified, so the new rule is not active.
Calling setCurrentLng also did not help, because the language does not change,
and currentRule is already defined.
With this patch, when you addRule it checks if you are modifying the current language.
If it's the case, it clears the currentRule.lng  and calls setCurrentLng.
I'm not sure if this is the best approach. Another approach would be to set currentRule to false
and call setCurrentLng(). Or avoid this change altogether and let people delete the currentRule themselves?
But that would mean 3 steps: addRule(..), currentRule = false, setCurrentLng(..).

Hi,
As some time pass since this PR, can you confirm that it is still in use by you without issues?
Would love to merge it, thanks!
-Daniel

I'm not using addRule anymore. I hardcoded the rules I needed, and removed the ones I did not need (about 1000 lines of code).


Cccp-4009 update ipxe binaries to better support UEFI chain loading

Old version didn't seem to work with UEFI when returning exit (or exit 1) from boot.py.
Compiled new versions with merged https://github.com/wapolinar/ipxe/tree/uefi_boot
So now we should be able to have pxe as default and just return exit 1 to fallback to next item on UEFI
boot list.

After discussing with Chris, I think it will be good to implement the new ipxe binaries only for cpouta_maint_dhcp6_ansible nodes.

I have tried new binary to an existing node (p33.pouta.csc.fi) and found that boot order is working fine with new binary. OS could switch from pxe to next boot option(ie disk). The part of the configuration in cpouta-gw1 is a follows.

`host p33.pouta.csc.fi {
hardware ethernet B8:59:9F:CC:9E:70;
fixed-address <IP_ADDRESS>;
send host-name "p33.pouta.csc.fi";
if exists ipxe.http or exists ipxe.efi {
filename "http://<IP_ADDRESS>/cgi-bin/boot.py";
}
elsif exists user-class and option user-class = "iPXE" {
# We're already using iPXE, but not a feature-full version,
# and possibly an out-of-date version from ROM, so load a more
# complete version with native drivers
# Allow both legacy BIOS and EFI architectures
if option arch = 00:07 {
filename "ipxe-new.efi";
} elsif option arch = 00:00 {
filename "undionly-new";
}
}
elsif exists user-class and option user-class = "gPXE" {
# If someone has an old version of gPXE burned into their ROM,
# load a more recent iPXE
filename "undionly-new";
}
elsif option arch = 00:07 {
# EFI 64-bit
# I like to use iPXE-provided drivers, so therefore give ipxe.efi
# to all non-iPXE clients, use snponly.efi if you have unsupported
# or misbehaving NICs
filename "ipxe-new.efi";
}
elsif option arch = 00:00 {
# Legacy BIOS x86 mode
# I like to use iPXE-provided drivers, so therefore give ipxe.pxe
# to all non-iPXE clients, use undionly.kpxe if you have unsupported
# or misbehaving NICs
filename "undionly-new";
}
}
`

I have tested if the new binaries whether will work for other batch of HW. I have tested on the following nodes and the test was fine.

c6420: p33, i33
c6320: i1
atos: k37

I have reinstalled the p33 and i1 to check if the kickstart, OS installation and the rebooting work fine.

We have discussed with Matteo and we have decided that the new ipxe binary will be for all of the old nodes as well as new nodes. This will make the configuration easier and prevent of the changes in future. Moreover, I have tested that old also works well with the old binary. On the other hand, Ceph team also gave us green signal.


Otto-App UI Enhancements Pt1.

Add level badges to attributes in /my-ottos

Add Otter Level in /my-ottos/xxxx

-Icon provided by Appppo

Add icons to attributes in /my-ottos/xxxx, centered text and added rounded border section

Icons provided by Appppo

Change "View the previous adventure journal here >" in /adventure (resting/ready )to a button with icon
-Includes adding translation for the word "Results" into Chinese simple/trad.

Update general layout of otter cards in /adventure to be more concise and pretty.

-Ready/Resting/Ready/Ongoing colour badges are now always in the same place, easier to reference in the "all" tab
-Added text that was missing for finished adventures so the layout stays consistent "x has finished exploring x!" (with translation)
-Card background has a faint image depicting the location that is active, help visualize distribution
-Level and location badges have had their spacing fixed up and made more readable
-Otto image increased in size, no more squinting!
-Buttons and timers are all now the same size, more consistent and organised.
-Tested on mobile, elements realign in a pleasing way on low resolution devices.

Started optimizing overly large images in the app using lossless compression. (More in Pt2)

-The homepage city image(as beautiful as it is) is an unnecessary 8k pixels wide and over 30mb, have added a new version that's only 2mb (95% smaller).
-Apx 70+ additional images used in the app were uncompressed and slowing down pageload time significantly. Average bandwidth savings of 35%.
-This generally isn't an issue for desktop browsers that cache the files locally, but it's a very real issue for users with mobile wallet browsers that do not cache any files.

@darkbrewery we compressed all images via the pre-commit hook, the hook seems not working correctly now.
here the compression script: https://github.com/OtterClam/otto-app/blob/main/scripts/imagemin.mjs
could you also fix the hook and update the script?

Done!

imagemin will only run on new files comitted

Pretty sure I've got it now
On Tue, Mar 7, 2023 at 3:27 AM pyc92 @.***> wrote:

@darkbrewery https://github.com/darkbrewery we compressed all images
via the pre-commit hook, the hook seems not working correctly now.
here the compression script:
https://github.com/OtterClam/otto-app/blob/main/scripts/imagemin.mjs
could you also fix the hook and update the script?
—
Reply to this email directly, view it on GitHub
https://github.com/OtterClam/otto-app/pull/398#issuecomment-1458003523,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AAGE3LDJYUK7SEE5MTTNSELW24LRDANCNFSM6AAAAAAVR333BI
.
You are receiving this because you were mentioned.Message ID:
@.***>

cool!


Added method to get the jdbc url with the ip(Postgres)

Right now with Postgres, the JDBC url generated is using localhost, but in my use case it's not enough.
In some tests I used a container that needs the Postgres connection, using  the PostgreSQLContainer.jdbcUrl is not working because the url is using localhost.
My tests defined the containers with something like this:
lazy val postgresContainer: PostgreSQLContainer =
    PostgreSQLContainer(databaseName = s"user-${Random.nextInt(5)}")

lazy val myCustomContainer: GenericContainer = GenericContainer(
    dockerImage = "my-service:latest",
    exposedPorts = Seq(8080),
    waitStrategy = Wait.forHttp("/health").forStatusCode(204),
    env = Map(
      "POSTGRES_USER" -> postgresContainer.username,
      "POSTGRES_PASSWORD" -> postgresContainer.password,
      "POSTGRES_URL" -> postgresContainer.jdbcUrl
    )
  )
 override val container: MultipleContainers =
    MultipleContainers(LazyContainer(postgresContainer), LazyContainer(userApiContainer))

As a workaround I used basically the method that I defined in this PR, would be useful from my point of view if this possibility will be present directly in the Postgres container itself.

@albertoadami thank you for your contribution. Can you share more detail on your use case? If it is generic enough, I think it should be added to the Java library and then used in the scala wrapper.
cc @bsideup

@albertoadami I think you faced well known testcontainers problem. I suggest you read these: 1, 2, 3.
And also I agree with @dimafeng. testcontainers-scala is a wrapper library. If you have a feature request like this you should discuss it with testcontainers-java maintainers. And after that testcontainers-scala will support it.

@LMnet I would not call it a problem. People may have expectations, the expectations may not reflect the reality.
getSomething-like methods on containers return values for the tests' environment. If one wants to do container-to-container communication, they should be using networks and aliases, as described in the docs:
https://www.testcontainers.org/features/networking/#advanced-networking

@dimafeng thank you for the reply, My use case it to test a REST webservice that needs a POSTGRES connection available.
I try the approach suggested by @bsideup but the jdbcUrl is returning a localhost string also using the network.
My test code is something like this:
class ApiTest extends SpecBase with ForAllTestContainer {

  val network: Network = Network.newNetwork()

  lazy val postgresContainer: PostgreSQLContainer =
    PostgreSQLContainer(databaseName = s"user-${Random.nextInt(5)}").configure {c =>
      c.withNetwork(network)
    }

  private val ExposedPort = 8080
  lazy val customContainer: GenericContainer = GenericContainer(
    dockerImage = s"custom-service",
    exposedPorts = Seq(ExposedPort),
    waitStrategy = Wait.forHttp("/health").forStatusCode(204),
    env = Map(
      "POSTGRES_USER" -> postgresContainer.username,
      "POSTGRES_PASSWORD" -> postgresContainer.password,
      "POSTGRES_URL" -> postgresContainer.jdbcUrl
    )
  ).configure {c =>
    c.withNetwork(network)
  }

   override val container: MultipleContainers =
    MultipleContainers(LazyContainer(postgresContainer), LazyContainer(userApiContainer))

    "Api" when {
        "GET /version is called" should {
            "return Ok" in {
                //some code that use my customContainer with rest client
            }
        }
    }
}

From my service I can see that there are some errors with the jdbc string:
09:52:27 ERROR HikariPool {com.zaxxer.hikari.pool.HikariPool throwPoolInitializationException} - HikariPool-1 - Exception during pool initialization.
org.postgresql.util.PSQLException: Connection to localhost:33045 refused. Check that the hostname and port are correct and that the postmaster is accepting TCP/IP connections.
	at org.postgresql.core.v3.ConnectionFactoryImpl.openConnectionImpl(ConnectionFactoryImpl.java:280)
	at org.postgresql.core.ConnectionFactory.openConnection(ConnectionFactory.java:49)
	at org.postgresql.jdbc.PgConnection.<init>(PgConnection.java:211)
	at org.postgresql.Driver.makeConnection(Driver.java:458)
	at org.postgresql.Driver.connect(Driver.java:260)
	at com.zaxxer.hikari.util.DriverDataSource.getConnection(DriverDataSource.java:138)
	at com.zaxxer.hikari.pool.PoolBase.newConnection(PoolBase.java:353)
	at com.zaxxer.hikari.pool.PoolBase.newPoolEntry(PoolBase.java:201)
	at com.zaxxer.hikari.pool.HikariPool.createPoolEntry(HikariPool.java:473)
	at com.zaxxer.hikari.pool.HikariPool.checkFailFast(HikariPool.java:562)
	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:115)
	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
	at org.flywaydb.core.internal.jdbc.JdbcUtils.openConnection(JdbcUtils.java:56)
	at org.flywaydb.core.internal.jdbc.JdbcConnectionFactory.<init>(JdbcConnectionFactory.java:80)
	at org.flywaydb.core.Flyway.execute(Flyway.java:449)
	at org.flywaydb.core.Flyway.migrate(Flyway.java:153)
	at
...........

Am I wronging something?

Closing due to no activity


Rollup failed to resolve import (Vite 2.0.0-beta.1)

Thanks for the amazing work on vite & happy new year! :)
Describe the bug
Dependency optimisation fails for reakit, which is supposedly ESM-compatible, with the following error:
Optimizable dependencies detected:
react, react-dom, reakit
Pre-bundling them to speed up dev server page load...
(this will be run only when your dependencies have changed)

Dep optimization failed with error:
[vite]: Rollup failed to resolve import "reakit-system/createComponent" from "node_modules/reakit/es/index.js".
This is most likely unintended because it can break your application at runtime.
If you do want to externalize this module explicitly add it to
`rollupInputOptions.external`

This problem seems widespread; I've encountered it with many packages that worked fine on Vite 1.0.0-rc.13
Reproduction

Set up a basic Vite 2.0.0-beta.1 project:

npm init @vitejs/app
cd the-app
npm install reakit --save

Import reakit: modify src/App.tsx by adding this import:

import { Button } from "reakit/Button";

Start the dev server

npm run dev

You should see the error pasted above.
System Info

vite version: v2.0.0-beta.1
Operating System: MacOS Catalina v10.15.7
Node version: v12.18.4
NPM version: v6.14.6
Reakit version: v1.3.2

I have investigated this a bit further. I looked at different NPM packages triggering this issue, and noticed the following commonality: in the case of reakit above, the path that Rollup can't resolve the import for is a directory containing a single file, package.json.
$ ls node_modules/reakit-system/createComponent
package.json

$ cat node_modules/reakit-system/createComponent/package.json

{
"name": "reakit-system/createComponent",
"private": true,
"sideEffects": false,
"main": "../lib/createComponent",
"module": "../es/createComponent",
"types": "../ts/createComponent"
}

(and there's indeed a file `node_modules/reakit-system/es/createComponent.js`)

I can't investigate much further as it would involve a knowledge of Rollup's resolution system that I don't have, but I hope with this information someone better informed will know what the issue is!

Thanks in advance.

I have investigated this a bit further. I looked at different NPM packages triggering this issue, and noticed the following commonality: in the case of reakit above, the path that Rollup can't resolve the import for is a directory containing a single file, package.json.
$ ls node_modules/reakit-system/createComponent
package.json

$ cat node_modules/reakit-system/createComponent/package.json

{
"name": "reakit-system/createComponent",
"private": true,
"sideEffects": false,
"main": "../lib/createComponent",
"module": "../es/createComponent",
"types": "../ts/createComponent"
}

(and there's indeed a file `node_modules/reakit-system/es/createComponent.js`)

I can't investigate much further as it would involve a knowledge of Rollup's resolution system that I don't have, but I hope with this information someone better informed will know what the issue is!

Thanks in advance.

Seems Vite uses this regexp to match module id:
https://github.com/vitejs/vite/blob/03f25a35f570f8d6a544a5205ee1986a18f8e3d9/packages/vite/src/node/utils.ts#L12
Which gives you reakit-system instead of the correct one: reakit-system/createComponent which results in ignoring reakit-system/createComponent/package.json:
https://github.com/vitejs/vite/blob/03f25a35f570f8d6a544a5205ee1986a18f8e3d9/packages/vite/src/node/plugins/resolve.ts#L179-L181

Seems Vite uses this regexp to match module id:
https://github.com/vitejs/vite/blob/03f25a35f570f8d6a544a5205ee1986a18f8e3d9/packages/vite/src/node/utils.ts#L12
Which gives you reakit-system instead of the correct one: reakit-system/createComponent which results in ignoring reakit-system/createComponent/package.json:
https://github.com/vitejs/vite/blob/03f25a35f570f8d6a544a5205ee1986a18f8e3d9/packages/vite/src/node/plugins/resolve.ts#L179-L181

@egoist thanks for taking a look. I continued investigating from the code you linked and I think everything is fine up to this point:
https://github.com/vitejs/vite/blob/03f25a35f570f8d6a544a5205ee1986a18f8e3d9/packages/vite/src/node/plugins/resolve.ts#L384
tryFsResolve is called with /.../node_modules/reakit-system/createComponent, but the implementation of tryFsResolve appears to only look for a file with a .js extension, or a directory with an index.js.
https://github.com/vitejs/vite/blob/03f25a35f570f8d6a544a5205ee1986a18f8e3d9/packages/vite/src/node/plugins/resolve.ts#L139
So it'd seem like a way to solve this issue would be to add a case to this function to handle the scenario where the path points to a directory that contains a package.json. I'm honestly not sure what the conventions for module resolution are here; I'd be happy to work on a pull-request but I'm going to wait til an existing contributor gives his view on the matter.

@egoist thanks for taking a look. I continued investigating from the code you linked and I think everything is fine up to this point:
https://github.com/vitejs/vite/blob/03f25a35f570f8d6a544a5205ee1986a18f8e3d9/packages/vite/src/node/plugins/resolve.ts#L384
tryFsResolve is called with /.../node_modules/reakit-system/createComponent, but the implementation of tryFsResolve appears to only look for a file with a .js extension, or a directory with an index.js.
https://github.com/vitejs/vite/blob/03f25a35f570f8d6a544a5205ee1986a18f8e3d9/packages/vite/src/node/plugins/resolve.ts#L139
So it'd seem like a way to solve this issue would be to add a case to this function to handle the scenario where the path points to a directory that contains a package.json. I'm honestly not sure what the conventions for module resolution are here; I'd be happy to work on a pull-request but I'm going to wait til an existing contributor gives his view on the matter.

@yyx990803 I saw the issue got closed without a comment and I thought "??", then clicked on it and saw the commit. Thanks for the amazingly fast bug-fix! ❤

@yyx990803 I saw the issue got closed without a comment and I thought "??", then clicked on it and saw the commit. Thanks for the amazingly fast bug-fix! ❤

@yyx990803 I saw the issue got closed without a comment and I thought "??", then clicked on it and saw the commit. Thanks for the amazingly fast bug-fix! ❤

@yyx990803 I saw the issue got closed without a comment and I thought "??", then clicked on it and saw the commit. Thanks for the amazingly fast bug-fix! ❤


Update current repo in setup

Purpose

Fix documentation in setup.

Does this introduce a breaking change?

[ ] Yes
[x] No

Pull Request Type
What kind of change does this Pull Request introduce?

[ ] Bugfix
[ ] Feature
[ ] Code style update (formatting, local variables)
[ ] Refactoring (no functional changes, no api changes)
[x] Documentation content changes
[ ] Other... Please describe:

How to Test

Follow README.md instructions with this change.

What to Check
Verify that the following are valid

The current repository to clone

Hi Linda, sorry I just saw this PR after I landed in a PR that fixed the documentation urls / github clone location. Since the change is in, I was wondering if we were able to close this PR?

No problem!


Add timestamp fields to Frame and ExtractedChip

Currently hardcoded to None because we can not yet calculate the
timestamp.

Boy, opencv sure is any annoying thing to drag around. 😞


Issue with Test Reason Code and Test Result Code

Issue:
Test Reason Code and Test Result Code display Select a value in Global-view when the user has left it blank

Bug fixed


Update README to use clone via https

This avoids permission errors;
<EMAIL_ADDRESS>Permission denied (publickey).
fatal: Could not read from remote repository.

Please make sure you have the correct access rights
and the repository exists.

Closing as duplicate of: https://github.com/contentful/covid-19-site-template/pull/27/files


Enhance RTL Support for Android and Prepare iOS for RTL Compatibility

This pull request focuses on improving Right-to-Left (RTL) support for both Android and iOS versions of the app.

Android Updates: Android forces RTL by default when the device's language is set to an RTL language (e.g., Arabic). These changes ensure proper alignment and direction for UI components in such cases.
iOS Updates: Currently, the iOS version of the app operates in Left-to-Right (LTR) mode. These updates prepare the app to fully support RTL languages in future updates.

Changes:

Added platform detection helpers: Helps distinguish between iOS and Android for RTL-specific adjustments.
Fixed button icon alignment: Ensures icons are correctly positioned in RTL layouts.
Fixed chevron direction: Corrects chevron direction for RTL layouts.
Fixed menu text alignment: Aligns text properly in menus for RTL languages.

These fixes aim to resolve issues and make the app ready to support RTL languages across both platforms.

Before
After

Would you mind including screenshots before/after and how we can test the changes? Really appreciate that.

Hi @gaearon, I've updated the pull request description with the requested before/after screenshots. Let me know if there's anything else you'd like me to adjust. Thanks! 😊


Fix openapi_3 discriminator schema name mapping to swagger_2

The OpenAPI 3 Specification defines the mapping property of the Discriminator object as "An object to hold mappings between payload values and schema names or references."  When the mapping contained a schema name, the previous code (that I wrote, whoops) would crash with
Error: Remote $ref URLs are not currently supported for openapi_3

Update the code to correctly handle schema names and to handle resolution errors more gracefully.  Update tests to cover this.
Thanks for considering,
Kevin
Ref: #206

Looks good, thanks!

Thanks @bobby-brennan!


feat: Added streetViewControl prop to the MapView, this will help to …

With this update, we can now hide the "Drag To StreetView" button by using the streetViewControl prop and setting it to false. This will get rid of the button that usually appears at the right corner of the screen, giving users a cleaner map interface. I've also added the prop in the documentation. Thanks

Hey! Thanks for the contribution. I noticed that this is an option from the google lib. I think there is no need to add extra props and you can use the options prop which go directly to the google maps options prop!

Hey! Thanks for the contribution. I noticed that this is an option from the google lib. I think there is no need to add extra props and you can use the options prop which go directly to the google maps options prop!

Yes, I this is an option, and can be supplied through options props, however when we provide option props to the MapView, we can't drag or move the map. That's why I added this as separate prop.


Add Denarius (D) support

Adds back Denarius (D) Support to HyperDEX
PR for Cryptocurrency Icons to update namings from DNR to D:
https://github.com/atomiclabs/cryptocurrency-icons/pull/295
PR for jl777 coins repo, already merged:
https://github.com/jl777/coins/pull/276

DNR electrums were run by the coin owner, but not maintained, so they were causing problems
- https://github.com/atomiclabs/hyperdex/pull/577#issuecomment-445567840

What guarantees do we have that this won't happen again?

Please also read and adhere to https://github.com/atomiclabs/hyperdex/blob/master/docs/add-currency.md (Read it thoroughly)

DNR electrums were run by the coin owner, but not maintained, so they were causing problems

#577 (comment)

What guarantees do we have that this won't happen again?
Please also read and adhere to https://github.com/atomiclabs/hyperdex/blob/master/docs/add-currency.md (Read it thoroughly)

Two of the electrums are ran by a team mate now and I am running the third, they are hosted on a better platform now as well for all of them. We want Denarius on the HyperDEX, there was communication issues before due to you guys moving from Slack and myself leaving due to the Slack exploits. We are all on Discord now for easier communication.

I will be running some of the servers, so its not just falling on carsen this time. They will be kept up.

This looks good to me.
@sindresorhus is there anything you spot missing from https://github.com/atomiclabs/hyperdex/blob/master/docs/add-currency.md ?

The servers should available on **domains/subdomains, not IP addresses. **

The title of the pull request should be Add Name (SYMBOL) currency. For example, Add FooCoin (FOO) currency.

@carsenk @buzzkillb whichever of you runs <IP_ADDRESS> can you put a domain in front of it?
Should help reduce downtime in the event that you need to change servers or for some other reason lose access to that IP.

@lukechilds
I pointed denariuspool.info and electrum.denariuspool.info to <IP_ADDRESS>
It will take awhile for DNS propogation

Also denarius.vip and electrum.denarius.vip will be pointed to <IP_ADDRESS>


#781 | Search bar (part 2) - Add Token Search Results Support

Fixes #780, #781, #782, #801
Description
This PR includes the first part and adds support for tokens, NFTs, contracts and blocks to the search bar, following the sort criteria given in the issue #781 description.
Test Scenarios

go to home page

test the following search queries:

bnb

3 results. The known BNB token is on top

eth

3 results. The known ETH token is on top

usd

multiple results
The known USDC and USDT are on top, followed by verified tokens, followed by not-verified
USDC is on top of USDT because of a higher price

swap

multiple categories
play with tabs to see the auto-scroll

nft

multiple results
see NFTs blocky icon and symbol displayed
verified nfts are placed on top

resize the browser to a low resolution and make any search

it should display correctly (adding ellipsis points to large addresses and transactions hashes)

Known issues: the auto-scroll tabs work, but if the category is already in sight it does scroll to a random point (that's a bug to fix and still has no issue for it)

Hi @viter_rod,
Regarding the search bar on https://deploy-preview-800--testnet-teloscan.netlify.app/, I'd like to propose improving its keyboard navigation. Currently, users must click on search results even for exact matches. Here are two potential approaches:

Pressing Enter navigates to the first result, regardless of match type.

This is my preferred option, similar to Etherscan's behavior in some cases.

Pressing Enter navigates to the first result only for exact matches.

This aligns with Etherscan's functionality in certain scenarios.
For multiple results, Etherscan sometimes directs to a search results page. (This happens when you search from the bar when it's on the top right of the page, not on the homepage).

Additional request:

Implement keyboard navigation through search results (up/down arrow keys) Close it with ESC.

Could you evaluate the complexity of implementing these features? They would significantly enhance user experience and accessibility.


MWPW-141609: Universal navigation NO localization tag

Description
This PR changes the IETF language tag, for Norway, that is sent as config to the universal navigation.
Related Issue
Resolves: MWPW-141609
Screenshots:
Before:

After:

Test URLs
Milo:

Before:  https://gnav--milo--adobecom.hlx.page/no/drafts/sghimpos/gnav-refactor-1-1
After: https://mwpw-141609-unav-no-localization--milo--robert-bogos.hlx.page/no/drafts/sghimpos/gnav-refactor-1-1

IMS client ID will be changed after QA approval


Develop a prototype implementation for source-based coverage report generation

Source-based coverage report generation is an experimental feature of the Rust compiler that we need to explore further. A prototype implementation will allow us to discover any limitations that may influence the way we plan to structure the RMC testing suite.

https://doc.rust-lang.org/rustc/instrument-coverage.html

Thanks, @celinval! Should try this some time, last time it was still an unstable option 😬

I recall that, when I opened this issue, I wanted to report source-based coverage FOR source code in Kani. In other words, I wanted to use the coverage feature in the Rust compiler to obtain coverage reports for the kani compiler, its driver, etc. whenever we ran our tests, to ensure that we were covering all cases we were expecting to cover.
This shouldn't be very difficult to achieve now that the coverage feature is more mature, but it doesn't seem to be a priority for us. Otherwise, this is essentially a duplicate of #2640. For that reason, I'm closing this issue until we decide to obtain coverage metrics for Kani itself.


Adds missing column: zipkin_annotations.trace_id_high

The previous schema change left out zipkin_annotations.trace_id_high
which is needed for future work. This adds it and defaults to 0.
mysql> alter table zipkin_annotations add `trace_id_high` BIGINT NOT NULL DEFAULT 0 COMMENT 'If non zero, this means the trace uses 128 bit traceIds instead of 64 bit';

See #1353

@ajacques @jcarres-mdsol not sure if you've updated to zipkin_spans.trace_id_high, yet, but if not you'll also need to add zipkin_annotations.trace_id_high


Propose an option to support responsive design in multicol/splitted cells in table display mode.

A good option!

Done! See the documentation!


GPUs returned by tensorflow-nightly-gpu not matched by multi-gpu-model

Hi , I'm using tensorflow-nightly-gpu and keras built from github master as of today, on nVidia cards I receive following exception when trying to use multi-gpu-model:
  File "C:\ProgramData\Anaconda3\lib\site-packages\keras-2.0.8-py3.6.egg\keras\utils\training_utils.py", line 100, in multi_gpu_model
ValueError: To call `multi_gpu_model` with `gpus=4`, we expect the following devices to be available: ['/cpu:0', '/gpu:0', '/gpu:1', '/gpu:2', '/gpu:3']. However this machine only has: ['/device:CPU:0', '/device:GPU:0', '/device:GPU:1', '/device:GPU:2', '/device:GPU:3']. Try reducing `gpus`.

Here is tensorflow output:
2017-10-21 17:31:06.619806: I C:\tf_jenkins\home\workspace\tf-nightly-windows\M\windows-gpu\PY\36\tensorflow\core\common_runtime\gpu\gpu_device.cc:1121] Creating TensorFlow device (/device:GPU:0) -> (device: 0, name: GeForce GTX 1070, pci bus id: 0000:05:00.0, compute capability: 6.1)
2017-10-21 17:31:06.619899: I C:\tf_jenkins\home\workspace\tf-nightly-windows\M\windows-gpu\PY\36\tensorflow\core\common_runtime\gpu\gpu_device.cc:1121] Creating TensorFlow device (/device:GPU:1) -> (device: 1, name: GeForce GTX 1060 6GB, pci bus id: 0000:06:00.0, compute capability: 6.1)
2017-10-21 17:31:06.621181: I C:\tf_jenkins\home\workspace\tf-nightly-windows\M\windows-gpu\PY\36\tensorflow\core\common_runtime\gpu\gpu_device.cc:1121] Creating TensorFlow device (/device:GPU:2) -> (device: 2, name: GeForce GTX 1070, pci bus id: 0000:01:00.0, compute capability: 6.1)
2017-10-21 17:31:06.621580: I C:\tf_jenkins\home\workspace\tf-nightly-windows\M\windows-gpu\PY\36\tensorflow\core\common_runtime\gpu\gpu_device.cc:1121] Creating TensorFlow device (/device:GPU:3) -> (device: 3, name: GeForce GTX 1060 6GB, pci bus id: 0000:04:00.0, compute capability: 6.1)
T

It seems issue that /gpu:N is hardcoded for matching:
https://github.com/fchollet/keras/blob/62d097c4ff6fa694a4dbc670e9c7eb9e2bc27c74/keras/utils/training_utils.py#L90
However, tensorflow recognizes /gpu:N, e.g. following works fine:
    with tf.device('/gpu:' + str(g)):

With Keras version 2.1.4, I am still having this issue.
ValueError: To call multi_gpu_modelwithgpus=3, we expect the following devices to be available: ['/cpu:0', '/gpu:0', '/gpu:1', '/gpu:2']. However this machine only has: ['/cpu:0']. Try reducing gpus.

I can confirm that I have this issue when installing the master version.

Same problem for me with the last keras-2.1.6, any news on that?

Has anyone resolved issue? I have keras 2.1.6 also and am getting same issue
.

I think I see root cause. e.g. I am running "Deep Learning AMI (Ubuntu) Version 9.0 - ami-33f9e753". When I start Tensorflow, I see that the gpu's are being ignored because of the following:
"Ignoring visible gpu device (device: 3, name: GRID K520, pci bus id: 0000:00:06.0, compute capability: 3.0) with Cuda compute capability 3.0. The minimum required Cuda capability is 3.5."
I believe this might be due to improper build of CUDA and cudnn in the AMI. Several issues have been opened on this error. I think #4002 is the most likely cause (env flag changed).
Can anyone confirm?

@caugusta  @ahendry2688  same issue here , I am using cudnn-7 with cuda 9.1

Hi,
Any update on this?
I have the same problem with cudnn-7, cuda 9.1, keras 2.2.2

Save problems here. Using GCP to train keras muli-gpu models. tf.device works fine but keras is not working.

I am having the same problem. Two weeks ago with keras 2.0.9, cudnn-7, cuda 9.1 keras multi-gpu mode worked well. Today it constantly shows me
ValueError: To call `multi_gpu_model` with `gpus=2`, we expect the following devices to be available: ['/cpu:0', '/gpu:0', '/gpu:1']. However thi s machine only has: ['/cpu:0', '/xla_cpu:0']. Try reducing `gpus`.
no matter which keras version I used. BTW, I tried from 2.0.9 to 2.2.4.

I am having the same problem. Two weeks ago with keras 2.0.9, cudnn-7, cuda 9.1 keras multi-gpu mode worked well. Today it constantly shows me
ValueError: To call `multi_gpu_model` with `gpus=2`, we expect the following devices to be available: ['/cpu:0', '/gpu:0', '/gpu:1']. However thi s machine only has: ['/cpu:0', '/xla_cpu:0']. Try reducing `gpus`.
no matter which keras version I used. BTW, I tried from 2.0.9 to 2.2.4.

hi，have you solved this problem? I am having the same problem with you.
job exception: To call multi_gpu_model with gpus=2, we expect the following devices to be available: ['/cpu:0', '/gpu:0', '/gpu:1']. However this machine only has: ['/cpu:0', '/xla_cpu:0']. Try reducing gpus.

No, I just use normal training mode and it works well. I mean the GCP may allocate the GPU by themselves. If you change the configuration, using multi-GPU takes halftime in training when using single GPU. So I think it's not a problem maybe but I am not very sure. But it's better to use multi-train-model in Keras anyway.

I am having the same problem. Two weeks ago with keras 2.0.9, cudnn-7, cuda 9.1 keras multi-gpu mode worked well. Today it constantly shows me
ValueError: To call `multi_gpu_model` with `gpus=2`, we expect the following devices to be available: ['/cpu:0', '/gpu:0', '/gpu:1']. However thi s machine only has: ['/cpu:0', '/xla_cpu:0']. Try reducing `gpus`.
no matter which keras version I used. BTW, I tried from 2.0.9 to 2.2.4.

hi，have you solved this problem? I am having the same problem with you.
job exception: To call multi_gpu_model with gpus=2, we expect the following devices to be available: ['/cpu:0', '/gpu:0', '/gpu:1']. However this machine only has: ['/cpu:0', '/xla_cpu:0']. Try reducing gpus.

No, I just use normal training mode and it works well. I mean the GCP may allocate the GPU by themselves. If you change the configuration, using multi-GPU takes halftime in training when using single GPU. So I think it's not a problem maybe but I am not very sure. But it's better to use multi-train-model in Keras anyway.

I have solved this problem now,I think maybe the main reason is the version of the python.My python version is 2.7 before,and I changed the version into 3.6.3,now it works well.

Thanks a lot. I use python 3.5 maybe I can try python 3.6 later.
发送自 Windows 10 版邮件https://go.microsoft.com/fwlink/?LinkId=550986应用

发件人: HJennyfer<EMAIL_ADDRESS>发送时间: Wednesday, December 5, 2018 12:38:35 PM
收件人: keras-team/keras
抄送: ZHANG ZHAOXIANG; Comment
主题: Re: [keras-team/keras] GPUs returned by tensorflow-nightly-gpu not matched by multi-gpu-model (#8213)
I am having the same problem. Two weeks ago with keras 2.0.9, cudnn-7, cuda 9.1 keras multi-gpu mode worked well. Today it constantly shows me
ValueError: To call multi_gpu_model with gpus=2, we expect the following devices to be available: ['/cpu:0', '/gpu:0', '/gpu:1']. However thi s machine only has: ['/cpu:0', '/xla_cpu:0']. Try reducing gpus.
no matter which keras version I used. BTW, I tried from 2.0.9 to 2.2.4.
hi，have you solved this problem? I am having the same problem with you.
job exception: To call multi_gpu_model with gpus=2, we expect the following devices to be available: ['/cpu:0', '/gpu:0', '/gpu:1']. However this machine only has: ['/cpu:0', '/xla_cpu:0']. Try reducing gpus.
No, I just use normal training mode and it works well. I mean the GCP may allocate the GPU by themselves. If you change the configuration, using multi-GPU takes halftime in training when using single GPU. So I think it's not a problem maybe but I am not very sure. But it's better to use multi-train-model in Keras anyway.
I have solved this problem now,I think maybe the main reason is the version of the python.My python version is 2.7 before,and I changed the version into 3.6.3,now it works well.
―
You are receiving this because you commented.
Reply to this email directly, view it on GitHubhttps://github.com/keras-team/keras/issues/8213#issuecomment-444347240, or mute the threadhttps://github.com/notifications/unsubscribe-auth/AgLy5fF7Lm4xplajg_eaLSeFQcqemEa6ks5u1z-7gaJpZM4QBlhn.

Any update on this issue?
I got the same problem with cudnn-7, cuda 10.1, keras 2.1.6


custom_emojis: Fix unresponsiveness after submitting without a name.

While adding custom emojis, when a user clicks on the submit
button without providing a name to the emoji, the submit button
becomes unresponsive. This commit fixes that.
Fixes #16921
Sorry for the inconvenience. My fork got deleted so sending the PR again.

Testing plan:
GIFs or screenshots:

@timabbott Please review this.
Also, I don't think we can use ui_report.error(). I discussed it here: https://chat.zulip.org/#narrow/stream/49-development-help/topic/.2316932
Basically, Django needs the emoji_name as an argument in the URL. If no name is present, it treats the URL as a separate URL(json/realm/emoji/) that isn't mapped to a view, and so raises an error.
So I just check if the user provided a name, if not raise an error. Another way is to map that URL to raise an error, which I don't think is helpful.

@timabbott would you please review this PR?

@timabbott would you please review this PR?

Merged, thanks @ganpa3!

Merged, thanks @ganpa3!


Weird glitches when perspective is not set to 0

Sometimes the gaussians begin to distord and flicker if the perspective is not set to zero

It is gone in the new branch, but needs some additional testing before it can be merged with the main branch.

Merged successfully with main branch, see a3002e08aa3cb5ea8b5dd1165f81a41ccf78d9b4


409 Change 2015 to 2016 everywhere

Fixes #409

static/img/pycon2016-logo.png and static/img/pycon-2016.png don't exist yet, and there are still references to 2015 in templates/homepage.html and static/less/site.less and static/less/responsive-site.less. I imagine those issues can wait until the design is in place. Otherwise, looks good :sparkles:


doc/helm: Fix minor typos in helm/user-guide.md

doc/helm: Fix minor typos in helm/user-guide.md

/ok-to-test