Make observed kwarg optional

[ ] Tests added / passed
[x] Passes black dask / flake8 dask
[x] Closes #6951

@rjzamora would you mind testing this out with cudf?

This works for me.  Thanks @jsignell !
In [1]: import dask

In [2]: dask.__version__
Out[2]: '2.30.0+104.g0e524343'

In [3]: import dask.dataframe as dd
   ...: import pandas as pd
   ...: import cudf
   ...:
   ...: df = pd.DataFrame({
   ...:     'c1': pd.Categorical(['v11', 'v12', 'v11'], ['v11', 'v12', 'v13']),
   ...:     'c2': pd.Categorical(['v21', 'v22', 'v23']),
   ...:     'c3': [1, 4, 7]})
   ...:
   ...: ddf = dd.from_pandas(df, npartitions=1)
   ...: ddf.c1.groupby(ddf.c1).size().compute()
   ...:
   ...: cdf = cudf.from_pandas(df)
   ...: ddf = dd.from_pandas(cdf, npartitions=1)
   ...: ddf.c1.groupby(ddf.c1).size().compute()
Out[3]:
c1
v11    2
v12    1
dtype: int64

:+1: ok I'll merge if it passes tests.

Thanks for this @jsignell. It's greatly appreciated!

Thanks @jsignell !

I'm going to go ahead and merge this since it seems like the last test is hanging and there is no reason why it'd fail.


Traits Expression and NotNull are not implemented by Uuid

Hello,
My model contains several structs which need to derive both Insertable and Queryable.
Here is one of those structs:
#[derive(PartialEq, Eq, Debug, Clone, Queryable, AsChangeset, Associations)]
#[belongs_to(User, foreign_key="user_id")]
pub struct SyncKey {
    pub id: i32,
    pub user_id: i32,
    pub name: Option<String>,
    pub key: Uuid,
    pub created_at: NaiveDateTime,
    pub last_used: Option<NaiveDateTime>,
}

The compilation fails with the following error messages:
error[E0277]: the trait bound `uuid::Uuid: diesel::Expression` is not satisfied
  --> src/models.rs:27:1
   |
27 | #[derive(PartialEq, Eq, Debug, Clone, Queryable, AsChangeset, Associations)]
   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `diesel::Expression` is not implemented for `uuid::Uuid`
   |
   = note: required because of the requirements on the impl of `diesel::Expression` for `&uuid::Uuid`
   = note: required because of the requirements on the impl of `diesel::expression::AsExpression<uuid::Uuid>` for `&uuid::Uuid`
   = note: this error originates in a macro outside of the current crate

error[E0277]: the trait bound `uuid::Uuid: diesel::Expression` is not satisfied
  --> src/models.rs:27:1
   |
27 | #[derive(PartialEq, Eq, Debug, Clone, Queryable, AsChangeset, Associations)]
   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `diesel::Expression` is not implemented for `uuid::Uuid`
   |
   = note: required because of the requirements on the impl of `diesel::Expression` for `&'update uuid::Uuid`
   = note: required because of the requirements on the impl of `diesel::expression::AsExpression<uuid::Uuid>` for `&'update uuid::Uuid`
   = note: this error originates in a macro outside of the current crate

error[E0277]: the trait bound `uuid::Uuid: diesel::Expression` is not satisfied
  --> src/models.rs:27:1
   |
27 | #[derive(PartialEq, Eq, Debug, Clone, Queryable, AsChangeset, Associations)]
   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `diesel::Expression` is not implemented for `uuid::Uuid`
   |
   = note: required because of the requirements on the impl of `diesel::Expression` for `&uuid::Uuid`
   = note: required because of the requirements on the impl of `diesel::expression::AsExpression<uuid::Uuid>` for `&uuid::Uuid`
   = note: this error originates in a macro outside of the current crate

This is only an excerpt of the full error message, the full error message is here.
I'm using diesel 0.12 with features postgres, chrono and uuid.
I created a gist with the full source code of my model and the SQL schema: https://gist.github.com/m-r-r/5571d1da8cea8ea52759c5fb9bbb7072
I don't understand why I get this error: according to the documentation, the type Uuid does implement NotNull and AsExpression… Maybe I'm not using the macros correctly?

Can you ensure that there is only one version of uuid in your Cargo.lock? Diesel 0.12.0 doesn't support UUID 0.5.0 which is likely your problem. https://github.com/diesel-rs/diesel/blob/v0.12.0/diesel/Cargo.toml#L25

Thanks for responding so fast!
That's the first time I open an issue and someone replies literally 2 minutes later :-)

Can you ensure that there is only one version of uuid in your Cargo.lock?

If I am not mistaken, there is one version of uuid in my project :
$ grep uuid
 "uuid 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
 "uuid 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
name = "uuid"
"checksum uuid 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "7cfec50b0842181ba6e713151b72f4ec84a6a7e2c9c8a8a3ffc37bb1cd16b231"

I use the same version requirement as diesel (I copied it from Diesel's Cargo.toml):
uuid = ">= 0.2.0, < 0.5.0"

Remove the use uuid::Uuid; lines from your table! invocations. That should fix your problem.

Remove the use uuid::Uuid; lines from your table! invocations. That should fix your problem.

It works ! Thanks for your help :-)


Windows support!

This package is very helpful and need to be implemented for Windows platform.

@christopherdro is there any news on this?

Hi, anything about the windows support or an alternative way for RNW to generate pdfs?

Hi, anything about the windows support or an alternative way for RNW to generate pdfs?

you can check this https://github.com/microsoft/react-native-windows/issues/7723#issuecomment-856814235

Thank u Omar, what i didn't get is "user's Path as an environment variable" and the second one is which c# file do i have to add it to?


feat request: adding support for mocking libraries

Make it possible to mock libraries in contracts.
Example:
I am using my own library Lib with struct Lib.Str in my contract Con.
using Lib for Lib.Str;
My Lib has few methods which works with Lib.Str:
function foo(Lib.Str memory _str, uint256 _amount) external
I am calling this functions in my contract like this:
str.foo(10);
I would really use mocking this library and be able to see, if my contract (which is using this library) called function foo, how many times and so on.

Hey @ashhanai , it's great to see that people are actually using Smock v2!
Your proposal sounds super interesting, could you please provide a test that would illustrate better the use case?

Hi @0xGorilla, sure.
Use case
Create a token abstraction and pack ERC20, ERC721 & ERC1155 into one struct Token. Implement library, that uses Token struct and defines functions for transfer and approve transfers of underlying ERC20 / 721 / 1155 tokens. Use this token to eliminate unnecessary type check every time transfer / approval should occur.
Test
My contract is transferring tokens via this abstraction and I want to test, that it calls the right function of the library (library is tester separately, so just the call check is enough).
The issue here is that my contract is linking the library and using it like this: using TokenAbstract for Token; so even though the function is defined like this function transfer(Token memory _token, address _receiver, uint256 _amount) the transfer call is made e.g. like this token.transfer(receiver, 10).
I hope I made the use case more understandable.

I meant forking this repo and creating a real test (that would fail), from there I will grab the test and try to make it pass.
Is that possible? From there it will be easier to develop a solution

@0xGorilla this is related to our plan to add mocking for libraries in general, which requires that deeper rewrite.

First of all, I'm completely mind blown by what smock does. Being in the Solidity ecosystem since it started, and for having had to test stuff manually, this things absolutely rocks.
This is a really tricky topics. Solidity libraries are weird beasts...
I'd like to give a bit of feedback here, from my experience with smock just now.

I tried to smock.fake a library. Things just crash.
I then tried to smock.mock a library factory. Things got better.
All in all, I wasn't able to get the mock to return the number of times it was called (getCall(0) is just undefined).

Now regarding 2 - during this step, I discovered a few things:
You might think that you're using a library while you're in fact not. Basically, if your library has either one of:

Any function marked internal or a private in the library? Then this function will get inlined by the compiler, and put directly in the caller. Therefore - mocking cannot work. This can be particularly misleading - and I know lots of people discover this at their own expense, when they "think" their logic is deployed neat and tidy separately, and in the end discover that just a few functions are actually deployed in their library and all others are inlined, bloating their contracts.
Even if your function is explicitly marked public, there's a huge caveat here. If your public or even external library function uses an argument passed as storage and / or of type struct, then you'll also get that inlined.

To finish - I might have forgotten a few things here - I would really like that smock adds support for libraries.

Came across this issue today, it'd be great to have support for this! We have the exact same use case as @ashhanai


Fix indent

cc @EPashkin @sdroege

👍

👍

Wait

@sdroege you will add StaticType support for unions?
If yes, this PR better wait for this.

Oh. :'(

I'll check later. If that doesn't require more changes elsewhere, sure.

Not today anymore, sorry

No problem, I merge then! :D


[Watson][a40f51e9-4bec-47c6-57c4-2d3cb7d604f5]CLR_EXCEPTION_System.IO.FileNotFoundException_80070002_System.IO.FileSystem.dll! System.IO.File.Open

Generated issue from Watson
Watson Link:  https://watsonportal.microsoft.com/Failure?FailureSearchText=a40f51e9-4bec-47c6-57c4-2d3cb7d604f5
ADO Link: https://microsoft.visualstudio.com/DefaultCollection/OS/_workitems#id=26363682&triage=true&fullScreen=true&_a=edit
Process: powerlauncher.exe,
Module: system.io.filesystem.dll v4.700.20.37001

Might be bad image in xaml:

@somil55.  Are you still investigating this?

@ryanbodrug-microsoft No. I was planning to start on this in 2009 but it was then moved to a P1 issue.

@ryanbodrug-microsoft I looked at the Watson trace in WinDbgX and this was what I found:

It seems to have crashed when the Report Error window was launched because of the app_error.dark file. This seems like it could be installer related, but it has hits on 0.23.2 as wellllllllllllllllll

@crutkas this looks like a similar watson trace to the recent missing app.dark issue. It's also possible that an anti-virus software deleted the file (since I don't think some of these files are signed). Seems less likely for a png though and more likely for a dll.

@saahmedm @ryanbodrug-microsoft https://github.com/microsoft/PowerToys/issues/7488 is the related issue

same but different, this is app_error, #7488 is app.dark.png.  With that said, i don't see another issue / PR that addresses "app_error.dark.png" missing.  Only relation here is they are "dark.png" icons

Still seeing quite a few hits on this.  Needs further investigation.

wonder if part of this is the image isn't signed.

this is probably caused by a missing image file referenced by XAML and should be fixed

This doesn't seem like a code bug, the installer is installing all the required files and the missing file seems to have been deleted by a third party.

This doesn't seem like a code bug, the installer is installing all the required files and the missing file seems to have been deleted by a third party.

Closing this in favor of https://github.com/microsoft/PowerToys/issues/9742


along with fix-link-to-pdp-in-wishlist-page branch in sunrise theme, …

this commit allows to fix issue #640

@lauraluiz done with the code review 👍

clase #640


Remove unnecessary permissions

@tertsdiepraam
hmm, the output seems incorrect?

Strange... Maybe it's getting the data from another PR? Or it's from an earlier run? Another improvement would be to add a link to the run so we can easily check the full results it's referring to.

Oh nevermind it's actually mentioning tee three times. That makes no sense.

Okay the artifact matches the text we see, so the problem is in GnuTests.

Ah I think it downloads the previous log here:
- name: Retrieve reference artifacts
      uses: dawidd6/action-download-artifact@v2
      # ref: <https://github.com/dawidd6/action-download-artifact>
      continue-on-error: true ## don't break the build for missing reference artifacts (may be expired or just not generated yet)
      with:
        workflow: GnuTests.yml
        branch: "${{ steps.vars.outputs.repo_reference_branch }}"
        # workflow_conclusion: success ## (default); * but, if commit with failed GnuTests is merged into the default branch, future commits will all show regression errors in GnuTests CI until o/w fixed
        workflow_conclusion: completed ## continually recalibrates to last commit of default branch with a successful GnuTests (ie, "self-heals" from GnuTest regressions, but needs more supervision for/of regressions)
        path: "${{ steps.vars.outputs.path_reference }}"

I'll put up a PR


Satty9361 list violations

Added a list violations moderation function. List all past violations of user ordering them by id , has an option to skip entries. Also included a summary mode and max age optional flags.
Permissions needed are manage messages permissions or roles allowed to give warnings.

if you want you can turn this into a paginated command (see https://github.com/jonas747/yagpdb/blob/master/logs/plugin_bot.go#L216 for reference), otherwise its fine.

I had that in mind as well but was unsure because warnings isnt paginated. Ill work on this a bit more and make it paginated.

Summary mode wouldn't work well with a paginated log so separated it into a separate command. Added a Paginated Violation Log ( list violations) command.

Looks good


[deprecate azure-storage-node]https://www.npmjs.com/package/azure-storage needs to be updated to point to new SDK

https://www.npmjs.com/package/azure-storage does not point to the new SDKs.

@XiaoningLiu @ramya-rao-a  is it time for us to npm deprecate this package to point to @azure/storage-blob and associates? What should the message say exactly?
/cc @KarishmaGhiya

Would be good to do a global npm cleanup.  I randomly found this, but I'm sure there are others.  I'll file new bugs for each one I find.

We found this last semester and had reached out to the storage team.
We can't deprecate this until a Track 2 for tables is out.
But the readme definitely can use an update.
Please see https://github.com/Azure/azure-storage-node/pull/622 and https://github.com/Azure/azure-storage-node/pull/625

azure-storage recently had an update and the readme has been updated as well


Added testing on raw block device

-Other bug fixes in storage_file_builder

Bug with writing data direct to block device prior to test. Error writing if base offset is not 512 byte aligned. Will push changes and create new pull request tomorrow morning.


Anyway to delete some blank cells?

i'm not really a coder....so is there any way to delete some of the blank cells? i have nothing to show in them so they look a little disturbing there :(

No.


[BUG] - If Uppercase letters are used Frigate camera names, duplicate cameras are created in Double Take

Describe the bug
If Uppercase letters are used in Frigate camera names, duplicate cameras are created in Doubletake as well as Multiple Sensors in Home Assistant
Frigate Config

Double Take

Sensors

Version of Double Take
1.6.0
Expected behavior
Remove case sensitivity from camera automatically created in Doubletake.   This will prevent duplicate sensors from being created in home assistant
Screenshots
See inline above
Hardware
HASS running on a Intel Nuc
Additional context
I was able to solve (or at least work around) the issue, by by setting mqtt to false in the doubletake config, or by putting all my cameras to lower case in the frigate config

@nmsousa76 this should be fixed now in the beta build. The camera names used in the topics will be lowercase. Let me know if it works for you.

This was fixed in the latest release v1.7.0. If you encounter any other issues feel free to reopen to make a new issue.


WASM - Not sure this even working

Hi - I've been adding a few issues here and generally trying to get some answers on things - I really appreciate the effort that's gone into the project thus far.
I need to get this running on a node.js server.
I've tried so many different ways, that I am not sure what is working and what isn't.
A previous issue I posted appeared to load the compat 3D libraries correctly, but regardless of how I approached it, I could not create Trimesh or complex mesh colliders without hitting a WASM error.
I then tried to create a new node solution with webpack, hoping I could bundle the non-compat version of the library into it and get around the trimesh issues - but that also appears to have issues around WASM not being correctly added to the project, even though the solution builds correctly with webpack. At runtime, it simply kills the app with a "Can't find the module @dimforge/rapier3d" error.
It would be super cool to get this working - but I am now just unsure if it is even possible with Rapier, JS and Node.
My question is for anyone out there, has anyone actually got this to work in Node?
Many thanks for any help and pointers.

I've previously used @dimforge/rapier3d-compat with node without issues, but that was a few versions ago.
If you can share a minimal reproduction of the issue that would be helpful.

Here's a minimal example demonstrating using @dimforge/rapier3d-compat with node: https://codesandbox.io/p/sandbox/rapier3d-compat-mininmal-node-example-rim59y

@isaac-mason - thanks for providing your demo. I'll throw it into my code, and if the cuboid creates, then it's something to do with the Trimesh in the lib. If not, then it's definitely me. I'm trying to clean up a file to share as well. BRB. Cheers

Ok cool! If you can reproduce a trimesh creation issue in a fork of that codesandbox / some other means that would be super helpful.

@isaac-mason - the cuboid works, so that narrows it down. My creation of RAPIER is working if nothing else.
I've just got to grab some simple values for a Trimesh and I'll fork it. Thanks so much for this help.

@isaac-mason Here is the fork - shows the same error:
https://codesandbox.io/p/sandbox/rapier3d-compat-mininmal-node-example-forked-4i76gr?file=%2Fpackage.json&selection=[{"endColumn"%3A1%2C"endLineNumber"%3A17%2C"startColumn"%3A1%2C"startLineNumber"%3A17}]
Cheers

Cheers for the repro! That will help get to the bottom of this for sure.
I used the same code in the testbed3d trimesh demo to create a dynamic trimesh, and that appears to be working: https://codesandbox.io/p/sandbox/rapier3d-compat-mininmal-node-example-forked-cdud5h
So the issue doesn't occur when creating any trimesh.

@isaac-mason That's super helpful. I'm narrowing this down - I am really sure that the way I am creating the arrays is incorrect, though I do not see the problem immediately.
This is the process:

create a new empty project in Blender with a cube in the center. Export that as glb
Import that into a react application with r3f
Get the verts and indi collections from that model

I use this code to extrac (where rootObject is the scene imported by the gltf loader)t:
var childGeo = (rootObject.children[0] as Mesh).geometry;
const tmVerts = childGeo.attributes.position.array;
const indices:ArrayLike<number> =  Object.keys(tmVerts).map(Number);

var vertsFinalArray = new Float32Array(tmVerts);
var indiFinalArray = new Uint32Array(indices);

That returns me two arrays of 71 items each.
71 - That makes no sense to me, since this is a cube model we are talking about.
Shouldn't I just have 8 verticies and 20 indicies?

@isaac-mason - THANK YOU GOOD SIR!
OK - for the benefit of anyone else hitting similar issues:
Firstly, better error messaging from the package would be super helpful. This really is a fight in the dark.
What caused my problem is a combination of issues - but it comes back to the format of the array collections being parsed.
Firstly, generating the Float32Array. The following line of code, actually generates an "Indexed" array, which is not what we are after:
const tmVerts = childGeo.attributes.position.array;
When sending that over a wire, with compression and conversions, trying to hydrate the values on the other side (in this case a Node server), we get a malformed array, that is not a Float32Array
It results in an array looking something like: array{ "0":1, "1":-1 .....}
I am not sure why this happens when the tmVerts type is shown as an ArrayLike in Typescript.
We need to further extract the vert information from the returned array to get a clean and pure number based array:
        var cleanVertsArray:number[]=[];

        for (let index = 0; index < tmVerts.length; index++) {
            const element = tmVerts[index];
            cleanVertsArray.push(element);
        }

Now we have a number array - e,g, array[1,-1,0 ....]
We have similar problems with the Indicies.
This line of code does not actually get the Indicies, it simply gets the Index's of the verticies:
const indices:ArrayLike<number> =  Object.keys(tmVerts).map(Number);
We need to rip the correct Indicies from the geometry itself:
       const index = childGeo.getIndex();
        var cleanIndiArray:number[]=[];

        for ( let i = 0; i < index.count; i += 3 ) {

            const a = index.getX( i );
            const b = index.getX( i + 1 );
            const c = index.getX( i + 2 );

            cleanIndiArray.push(a,b,c);
        }

Again, now this results in a proper formatted number based array.
On the Server side, before constructing the Trimesh, we can convert the two number arrays correctly using:

  var verticiesArray: Float32Array = new Float32Array(cleanVertsArray);
  var indiciesArray: Uint32Array = new Uint32Array(cleanIndiArray);

We are now able to test the Collider has been created and added.

Glad you were able to get to the bottom of your issue! 🙂


Dev asdf

Hello @CagtayFabry! Thanks for updating this PR.

In the file weldx/asdf/tags/weldx/core/iso_groove.py:

Line 14:1: F811 redefinition of unused 'Q_' from line 10


fix: add types.d.ts for plugin bff

PR Details

Description
给 plugin-bff 增加一个 types 文件，在生成器生成代码的时候，将此类型文件注入到 modern-app.env.ts 文件中。解决如 modern.config.ts 中使用 defineConfig api，会有类型错误的问题。
/// <reference types='@modern-js/plugin-express/types' />
/// <reference types='@modern-js/plugin-bff/types' />

Related Issue

Motivation and Context

How Has This Been Tested

Types of changes

[ ] Docs change / refactoring / dependency upgrade
[x] Bug fix (non-breaking change which fixes an issue)
[ ] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to change)

Checklist

[x] My code follows the code style of this project.
[x] I have updated changeset
[ ] My change requires a change to the documentation.
[ ] I have updated the documentation accordingly.
[ ] I have read the CONTRIBUTING document.
[x] I have added tests to cover my changes.
[x] All new and existing tests passed.

package.json 的 typesVersions 中没有导出 types.d.ts 这个文件，会有影响不

package.json 的 typesVersions 中没有导出 types.d.ts 这个文件，会有影响不

没有影响的，只在 modern-app.env.ts 中使用；导出的也无对应的 subpath。


update function jslint() to use experimental-feature option.autofix=true, ...

which will try to autofix most of the tedious whitespace, single-quote, and regexp warnings.
also added cli-tool autofix.js, which will try to inplace autofix javascript-files.
this feature is intended to make it easier for user unhappy with eslint and other inferior linters to migrate back to jslint, and help jslint reclaim its world-domination as the one-and-only true linter.
here's a real-world case-study, where jslint-autofix was used to migrate ~5,000 lines-of-code from a pre-es6 version of jslint (v2014-07-08) to the latest master: https://github.com/kaizhu256/node-utility2/commit/5c48bc6765f2274d3e9dcbabea8abb1fc208eb6c
live web-demo of patch available at: https://kaizhu256.github.io/JSLint/branch.autofix/index.html
here are screenshots explaining feature

before and after autofixing example-code

autofix whitespaces in a pre-es6 version of jslint

using cli-tool ./autofix.js to do the same thing (note autofixed indents in the diff result)

I have learned that it is better to fix errors yourself. It is a good way to get closer to the code, to understand it.


updating

Docs Build status updates of commit 42fedee:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

azureadps-2.0-preview/AzureAD/Add-AzureADMSPrivilegedResource.md
:white_check_mark:Succeeded

azureadps-2.0-preview/AzureAD/AzureADPreview.md
:white_check_mark:Succeeded

azureadps-2.0-preview/AzureAD/Close-AzureADMSPrivilegedRoleAssignmentRequest.md
:white_check_mark:Succeeded

azureadps-2.0-preview/AzureAD/Get-AzureADApplicationSignInDetailedSummary.md
:white_check_mark:Succeeded

azureadps-2.0-preview/AzureAD/Get-AzureADApplicationSignInSummary.md
:white_check_mark:Succeeded

azureadps-2.0-preview/AzureAD/Get-AzureADExternalDomainFederation.md
:white_check_mark:Succeeded

azureadps-2.0-preview/AzureAD/Get-AzureADMSPrivilegedResource.md
:white_check_mark:Succeeded

azureadps-2.0-preview/AzureAD/Get-AzureADMSPrivilegedRoleAssignment.md
:white_check_mark:Succeeded

azureadps-2.0-preview/AzureAD/Get-AzureADMSPrivilegedRoleAssignmentRequest.md
:white_check_mark:Succeeded

azureadps-2.0-preview/AzureAD/Get-AzureADMSPrivilegedRoleDefinition.md
:white_check_mark:Succeeded

azureadps-2.0-preview/AzureAD/Get-AzureADMSPrivilegedRoleSetting.md
:white_check_mark:Succeeded

azureadps-2.0-preview/AzureAD/Get-AzureADMSTrustFrameworkPolicy.md
:white_check_mark:Succeeded

azureadps-2.0-preview/AzureAD/New-AzureADApplicationProxyApplication.md
:white_check_mark:Succeeded

azureadps-2.0-preview/AzureAD/New-AzureADExternalDomainFederation.md
:white_check_mark:Succeeded

azureadps-2.0-preview/AzureAD/New-AzureADMSTrustFrameworkPolicy.md
:white_check_mark:Succeeded

azureadps-2.0-preview/AzureAD/Open-AzureADMSPrivilegedRoleAssignmentRequest.md
:white_check_mark:Succeeded

azureadps-2.0-preview/AzureAD/Remove-AzureADApplicationProxyApplication.md
:white_check_mark:Succeeded

azureadps-2.0-preview/AzureAD/Remove-AzureADExternalDomainFederation.md
:white_check_mark:Succeeded

azureadps-2.0-preview/AzureAD/Remove-AzureADMSTrustFrameworkPolicy.md
:white_check_mark:Succeeded

azureadps-2.0-preview/AzureAD/Set-AzureADApplicationProxyApplication.md
:white_check_mark:Succeeded

azureadps-2.0-preview/AzureAD/Set-AzureADApplicationProxyApplicationConnectorGroup.md
:white_check_mark:Succeeded

azureadps-2.0-preview/AzureAD/Set-AzureADApplicationProxyApplicationCustomDomainCertificate.md
:white_check_mark:Succeeded

azureadps-2.0-preview/AzureAD/Set-AzureADApplicationProxyApplicationSingleSignOn.md
:white_check_mark:Succeeded

azureadps-2.0-preview/AzureAD/Set-AzureADApplicationProxyConnector.md
:white_check_mark:Succeeded

azureadps-2.0-preview/AzureAD/Set-AzureADMSPrivilegedRoleAssignmentRequest.md
:white_check_mark:Succeeded

azureadps-2.0-preview/AzureAD/Set-AzureADMSPrivilegedRoleSetting.md
:white_check_mark:Succeeded

azureadps-2.0-preview/AzureAD/Set-AzureADMSTrustFrameworkPolicy.md
:white_check_mark:Succeeded

For more details, please refer to the build report.
Note: If you changed an existing file name or deleted a file, broken links in other files to the deleted or renamed file are listed only in the full build report.

Docs Build status updates of commit 0e59a25:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

azureadps-2.0-preview/AzureAD/Add-AzureADMSPrivilegedResource.md
:white_check_mark:Succeeded

azureadps-2.0-preview/AzureAD/AzureADPreview.md
:white_check_mark:Succeeded

azureadps-2.0-preview/AzureAD/Close-AzureADMSPrivilegedRoleAssignmentRequest.md
:white_check_mark:Succeeded

azureadps-2.0-preview/AzureAD/Get-AzureADApplicationSignInDetailedSummary.md
:white_check_mark:Succeeded

azureadps-2.0-preview/AzureAD/Get-AzureADApplicationSignInSummary.md
:white_check_mark:Succeeded

azureadps-2.0-preview/AzureAD/Get-AzureADExternalDomainFederation.md
:white_check_mark:Succeeded

azureadps-2.0-preview/AzureAD/Get-AzureADMSPrivilegedResource.md
:white_check_mark:Succeeded

azureadps-2.0-preview/AzureAD/Get-AzureADMSPrivilegedRoleAssignment.md
:white_check_mark:Succeeded

azureadps-2.0-preview/AzureAD/Get-AzureADMSPrivilegedRoleAssignmentRequest.md
:white_check_mark:Succeeded

azureadps-2.0-preview/AzureAD/Get-AzureADMSPrivilegedRoleDefinition.md
:white_check_mark:Succeeded

azureadps-2.0-preview/AzureAD/Get-AzureADMSPrivilegedRoleSetting.md
:white_check_mark:Succeeded

azureadps-2.0-preview/AzureAD/Get-AzureADMSTrustFrameworkPolicy.md
:white_check_mark:Succeeded

azureadps-2.0-preview/AzureAD/New-AzureADApplicationProxyApplication.md
:white_check_mark:Succeeded

azureadps-2.0-preview/AzureAD/New-AzureADExternalDomainFederation.md
:white_check_mark:Succeeded

azureadps-2.0-preview/AzureAD/New-AzureADMSTrustFrameworkPolicy.md
:white_check_mark:Succeeded

azureadps-2.0-preview/AzureAD/Open-AzureADMSPrivilegedRoleAssignmentRequest.md
:white_check_mark:Succeeded

azureadps-2.0-preview/AzureAD/Remove-AzureADApplicationProxyApplication.md
:white_check_mark:Succeeded

azureadps-2.0-preview/AzureAD/Remove-AzureADExternalDomainFederation.md
:white_check_mark:Succeeded

azureadps-2.0-preview/AzureAD/Remove-AzureADMSTrustFrameworkPolicy.md
:white_check_mark:Succeeded

azureadps-2.0-preview/AzureAD/Set-AzureADApplicationProxyApplication.md
:white_check_mark:Succeeded

azureadps-2.0-preview/AzureAD/Set-AzureADApplicationProxyApplicationConnectorGroup.md
:white_check_mark:Succeeded

azureadps-2.0-preview/AzureAD/Set-AzureADApplicationProxyApplicationCustomDomainCertificate.md
:white_check_mark:Succeeded

azureadps-2.0-preview/AzureAD/Set-AzureADApplicationProxyApplicationSingleSignOn.md
:white_check_mark:Succeeded

azureadps-2.0-preview/AzureAD/Set-AzureADApplicationProxyConnector.md
:white_check_mark:Succeeded

azureadps-2.0-preview/AzureAD/Set-AzureADMSPrivilegedRoleAssignmentRequest.md
:white_check_mark:Succeeded

azureadps-2.0-preview/AzureAD/Set-AzureADMSPrivilegedRoleSetting.md
:white_check_mark:Succeeded

azureadps-2.0-preview/AzureAD/Set-AzureADMSTrustFrameworkPolicy.md
:white_check_mark:Succeeded

mapping/groupMapping-2.0-preview.json
:white_check_mark:Succeeded

For more details, please refer to the build report.
Note: If you changed an existing file name or deleted a file, broken links in other files to the deleted or renamed file are listed only in the full build report.

Docs Build status updates of commit 32b5201:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

azureadps-2.0-preview/AzureAD/Add-AzureADMSPrivilegedResource.md
:white_check_mark:Succeeded

azureadps-2.0-preview/AzureAD/AzureADPreview.md
:white_check_mark:Succeeded

azureadps-2.0-preview/AzureAD/Close-AzureADMSPrivilegedRoleAssignmentRequest.md
:white_check_mark:Succeeded

azureadps-2.0-preview/AzureAD/Get-AzureADApplicationSignInDetailedSummary.md
:white_check_mark:Succeeded

azureadps-2.0-preview/AzureAD/Get-AzureADApplicationSignInSummary.md
:white_check_mark:Succeeded

azureadps-2.0-preview/AzureAD/Get-AzureADExternalDomainFederation.md
:white_check_mark:Succeeded

azureadps-2.0-preview/AzureAD/Get-AzureADMSPrivilegedResource.md
:white_check_mark:Succeeded

azureadps-2.0-preview/AzureAD/Get-AzureADMSPrivilegedRoleAssignment.md
:white_check_mark:Succeeded

azureadps-2.0-preview/AzureAD/Get-AzureADMSPrivilegedRoleAssignmentRequest.md
:white_check_mark:Succeeded

azureadps-2.0-preview/AzureAD/Get-AzureADMSPrivilegedRoleDefinition.md
:white_check_mark:Succeeded

azureadps-2.0-preview/AzureAD/Get-AzureADMSPrivilegedRoleSetting.md
:white_check_mark:Succeeded

azureadps-2.0-preview/AzureAD/Get-AzureADMSTrustFrameworkPolicy.md
:white_check_mark:Succeeded

azureadps-2.0-preview/AzureAD/Get-GovernanceResource.md
:white_check_mark:Succeeded

azureadps-2.0-preview/AzureAD/Get-GovernanceResources.md
:white_check_mark:Succeeded

azureadps-2.0-preview/AzureAD/Get-GovernanceRoleAssignment.md
:white_check_mark:Succeeded

azureadps-2.0-preview/AzureAD/Get-GovernanceRoleAssignmentRequest.md
:white_check_mark:Succeeded

azureadps-2.0-preview/AzureAD/Get-GovernanceRoleDefinitions.md
:white_check_mark:Succeeded

azureadps-2.0-preview/AzureAD/New-AzureADApplicationProxyApplication.md
:white_check_mark:Succeeded

azureadps-2.0-preview/AzureAD/New-AzureADExternalDomainFederation.md
:white_check_mark:Succeeded

azureadps-2.0-preview/AzureAD/New-AzureADMSTrustFrameworkPolicy.md
:white_check_mark:Succeeded

azureadps-2.0-preview/AzureAD/Open-AzureADMSPrivilegedRoleAssignmentRequest.md
:white_check_mark:Succeeded

azureadps-2.0-preview/AzureAD/Remove-AzureADApplicationProxyApplication.md
:white_check_mark:Succeeded

azureadps-2.0-preview/AzureAD/Remove-AzureADExternalDomainFederation.md
:white_check_mark:Succeeded

azureadps-2.0-preview/AzureAD/Remove-AzureADMSTrustFrameworkPolicy.md
:white_check_mark:Succeeded

azureadps-2.0-preview/AzureAD/Set-AzureADApplicationProxyApplication.md
:white_check_mark:Succeeded

azureadps-2.0-preview/AzureAD/Set-AzureADApplicationProxyApplicationConnectorGroup.md
:white_check_mark:Succeeded

azureadps-2.0-preview/AzureAD/Set-AzureADApplicationProxyApplicationCustomDomainCertificate.md
:white_check_mark:Succeeded

azureadps-2.0-preview/AzureAD/Set-AzureADApplicationProxyApplicationSingleSignOn.md
:white_check_mark:Succeeded

azureadps-2.0-preview/AzureAD/Set-AzureADApplicationProxyConnector.md
:white_check_mark:Succeeded

azureadps-2.0-preview/AzureAD/Set-AzureADMSPrivilegedRoleAssignmentRequest.md
:white_check_mark:Succeeded

azureadps-2.0-preview/AzureAD/Set-AzureADMSPrivilegedRoleSetting.md
:white_check_mark:Succeeded

azureadps-2.0-preview/AzureAD/Set-AzureADMSTrustFrameworkPolicy.md
:white_check_mark:Succeeded

mapping/groupMapping-2.0-preview.json
:white_check_mark:Succeeded

For more details, please refer to the build report.
Note: If you changed an existing file name or deleted a file, broken links in other files to the deleted or renamed file are listed only in the full build report.


Duplicate lines

static Ast *ast_for(Ast *init, Ast *cond, Ast *step, Ast *body)
{
    Ast *r = malloc(sizeof(Ast));
    r->type = AST_FOR;
    r->ctype = NULL;
    r->forinit = init;
    r->forcond = cond;
    r->forstep = step;
    r->forstep = step;
    r->forbody = body;
    return r;
}

Is there a duplicated line: "r->forstep = step;"?

Thank @backman-git for reporting. Fixed.


On Dev Branch - PGB Error

Hi Mate,
Thanks for the wonderful work ..
And today i tried to build a app using your DEV branch and PhoneGap Cloud Build service endeded with below error.
HERE IS OUR CONFIG.XML ENTRIES
<preference name="android-minSdkVersion" value="19" />
<preference name="android-targetSdkVersion" value="28" />
<preference name="phonegap-version" value="cli-7.1.0" />

PHONEGAP ERROR LOG
Total time: 3.599 secs
Error: /gradlew: Command failed with exit code 1 Error output:
Note: Some input files use or override a deprecated API.
Note: Recompile with -Xlint:deprecation for details.
Note: Some input files use or override a deprecated API.
Note: Recompile with -Xlint:deprecation for details.
/src/de/appplant/cordova/plugin/printer/PrintManager.java:183: error: lambda expressions are not supported in -source 1.6
((Activity) context).runOnUiThread(() -> {
^
(use -source 8 or higher to enable lambda expressions)
/src/de/appplant/cordova/plugin/printer/Printer.java:91: error: lambda expressions are not supported in -source 1.6
cordova.getThreadPool().execute(() -> {
^
(use -source 8 or higher to enable lambda expressions)
2 errors
FAILURE: Build failed with an exception.

What went wrong:
Execution failed for task ':compileDebugJavaWithJavac'.

Compilation failed; see the compiler error output for details.

Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output.
at ChildProcess.whenDone (/cordova/node_modules/cordova-common/src/superspawn.js:169:23)
at emitTwo (events.js:106:13)
at ChildProcess.emit (events.js:191:7)
at maybeClose (internal/child_process.js:877:16)
at Process.ChildProcess._handle.onexit (internal/child_process.js:226:5)

You have to upgrade your source compatibility level to Java 1.7 or even better 1.8

You have to upgrade your source compatibility level to Java 1.7 or even better 1.8

Can we know how we can do that .. any examples on the same

Hello Katzer,
i too have the same issue with pgb failure.
any fix?


Problems with custom annotations (gemini annotate)

Hi!
I have problem adding custom annotations in GEMINI - I want to add the SweGen dataset to my database.
command line: gemini annotate -f database.vcf.gz -a extract -c new_col -t float -e AF -o mean my.db
(Version 0.19.0)
At first it seems to work, however, only variants on chromosome 1 gets annotated (but correctly). The problem is the same for all my gemini databases created from whole genome data, but not for the gemini databases that is built from whole exome data. Otherwise my gemini databases seems to work fine, and I have also tried all different kinds of settings for the -t and -o options. My databases with whole genome data are about 25GB. Can they be to big?
Does anyone have any suggestions?
Best,
Anders

yes, there was a bug in 0.19. If you update gemini to the version here on github the annotation will complete.

Thank you very much!

From: Brent Pedersen - Bioinformatics<EMAIL_ADDRESS>Sent: Thursday, April 06, 2017 17:51
To: arq5x/gemini
Cc: Anders Kämpe; Author
Subject: Re: [arq5x/gemini] Problems with custom annotations (gemini annotate) (#836)
yes, there was a bug in 0.19. If you update gemini to the version here on github the annotation will complete.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHubhttps://github.com/arq5x/gemini/issues/836#issuecomment-292218535, or mute the threadhttps://github.com/notifications/unsubscribe-auth/ATDO1QludwoK5mzZUMuX8Gf1txPlHCN8ks5rtQoagaJpZM4M1zBT.


Remove excessive log messaging from CLI tests.

LogLevel.OOLAGDebug and LogLevel.Debug were being used excessively.
DAFFODIL-2187

+1 should we remove the commented out code?

I am not sure we should remove these commented out log calls. They do have some value in showing where to put logging in order to debug certain things. E.g., they have indent logic for OOLAGDebugging if needed. They can be turned on/off en-masse with a bulk replace, for example. So I think it's worth it to leave them in.

One concern with the commented out code, this will probably show up in the sonar cloud scan. Perhaps we add some like a new SuperVerboseDebug level for if you need that extra information? If there are times we expect these logs to be useful, it seems reasonable to have a way to display them without having to recompile. Especially since not all users will be in a position to recompile and we might not have access to their schemas. If they had an issue, they could turn on this super debug and it might provide some insights on the issue.

Ok, I will remove the commented out LogLevel.Debug statements that were commented out. I those are pointless.
I will either remove or put back the LogLevel.OOLAGDebug statements. That level really is a super-verbose-debug level itself, and the requests for that debug level are removed from the CLI tests that were generating too much output anyway.


Fix error logs in ServerTableSizeReader

When we encounter exception while retrieving the result of a http call via completion service, we don't have a good way of determining the server uri of the original request. The earlier code used the loop counter to figure out the server, which has nothing to do with the task that the completion service can return.
This change removes the server ids from the logs as the current logs are incorrect.

Codecov Report

Merging #3065 into master will increase coverage by 0.02%.
The diff coverage is 33.33%.

@@             Coverage Diff              @@
##             master    #3065      +/-   ##
============================================
+ Coverage     70.26%   70.29%   +0.02%
  Complexity        4        4
============================================
  Files           935      935
  Lines         43445    43444       -1
  Branches       5894     5894
============================================
+ Hits          30525    30537      +12
+ Misses        10862    10859       -3
+ Partials       2058     2048      -10

Impacted Files
Coverage Δ
Complexity Δ

...ontroller/api/resources/ServerTableSizeReader.java
76.92% <33.33%> (-0.58%)
0 <0> (ø)

...e/impl/dictionary/LongOnHeapMutableDictionary.java
82.22% <0%> (-13.34%)
0% <0%> (ø)

.../predicate/NotEqualsPredicateEvaluatorFactory.java
84.74% <0%> (-6.78%)
0% <0%> (ø)

...e/operator/dociditerators/SortedDocIdIterator.java
59.45% <0%> (-5.41%)
0% <0%> (ø)

...not/core/query/pruner/DataSchemaSegmentPruner.java
66.66% <0%> (-4.45%)
0% <0%> (ø)

...e/operator/dociditerators/MVScanDocIdIterator.java
63.63% <0%> (-3.04%)
0% <0%> (ø)

...inot/core/operator/docidsets/AndBlockDocIdSet.java
55.86% <0%> (-2.07%)
0% <0%> (ø)

...impl/dictionary/FloatOffHeapMutableDictionary.java
87.27% <0%> (-1.82%)
0% <0%> (ø)

...lix/core/realtime/PinotRealtimeSegmentManager.java
72.48% <0%> (-1.59%)
0% <0%> (ø)

...inot/transport/netty/NettyTCPClientConnection.java
82.31% <0%> (-1.37%)
0% <0%> (ø)

... and 13 more

Continue to review full report at Codecov.

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


Fix wrong scfg expiry test in some timezones

Fixes #533.

Codecov Report

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

@@           Coverage Diff           @@
##           master     #534   +/-   ##
=======================================
  Coverage   90.83%   90.83%
=======================================
  Files          79       79
  Lines        5422     5422
=======================================
  Hits         4925     4925
  Misses        318      318
  Partials      179      179

Continue to review full report at Codecov.

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


@mui/lab should be part of dependencies

I'm following the official docs for mui v5 and installing via yarn add @material-table/core@next.
Then I get the error: Cannot find module '@mui/lab/DateTimePicker'
I think @mui/lab should be part of dependencies.

@Domino987 Thanks! I didn't see an update on the next branch yet or any PRs. Could you keep this open until it's resolved so that it's not forgotten?


v1.9 backports 2022-04-12

#16200 -- docs: mark node-to-node IPSec encryption as beta (@qmonnet)
#19258 -- ipcache: Add test asserting out-of-order Kubernetes events (@christarazi)
#19356 -- ci: Pin down image for the documentation workflow (@qmonnet)
#19190 -- envoy: Limit accesslog socket permissions (@jrajahalme)

Once this PR is merged, you can update the PR labels via:
$ for pr in 16200 19258 19356 19190; do contrib/backporting/set-labels.py $pr done 1.9; done

@qmonnet Please make sure to review backporter's notes for your commits :)

@christarazi I have had to modify your commit (see backporter's notes in commit log), can you please re-review and confirm this looks good to you?

/test-backport-1.9

@nbusseneau Thanks for taking care of it. Travis passed which runs those changes in my commit so your changes were correct. :+1:

/test-1.12-netnext


Replace excel file

Hello,
Would it be possible to remplace the current file with this one?
https://github.com/cern-sis/cern-authors-guide/blob/master/src/data/journal_list_author_tool.xlsx
And let me know when this is done,
Thanks in advance,
Anne

@agentilb updated!


Specifically call out that mail-enabled security groups cannot have security groups as members

It'd be helpful to call out that mail-enabled security groups cannot have security groups as members in the list of unsupported features.

Document Details
⚠ Do not edit this section. It is required for docs.microsoft.com ➟ GitHub issue linking.

ID: fe42976d-da2c-c20a-25f1-f1548dcffbfb
Version Independent ID: fbeaa46b-eff9-b43a-e90e-6486149a3103
Content: Add or remove a group from another group - Azure AD
Content Source: articles/active-directory/fundamentals/active-directory-groups-membership-azure-portal.md
Service: active-directory
Sub-service: fundamentals
GitHub Login: @ajburnle
Microsoft Alias: ajburnle

@elliotsegler
Thanks for your feedback! We will investigate and update as appropriate.

#reassign:@amsliu

@elliotsegler Thank you for your feedback! I have incorporated this change to the documentation under "Common Verification Issues". You can view this change in this pull request: MicrosoftDocs/azure-docs-pr#160706. If you have any other questions, let us know, otherwise I'm closing this pull request. #please-close


fedora 29 (and probably other distributions) expect another path for server.conf

Hi there!
First: Thanks for your work, your script does a wonderful job!
One issue I found is that the script creates all config files in /etc/openvpn/. This leads to problems when using fedora 29, where the files are expected in /etc/openvpn/server

Thanks for the report.
I was not aware of Fedora specifically, but other distros are also transitioning to this new directory structure. Fedora isn't officially supported, but the change can/will probably come downstream to CentOS.
I did actually write a patch to address this more than a year ago, it is a bit more complex than locating the right path, because there are new services and stuff, at least in other distros. The patch wasn't merged at the time because the old structure was still fully supported.
I am keeping this issue open to address it before it becomes a problem in CentOS.

This has been addressed in a46a23d84a4b007dc8f6e964219331f876a21602.
Installing in Fedora mostly works now, except SELinux compatibility which will probably be resolved in the near future.
Still, Fedora is officially unsupported for now and no guarantees are provided.


3 Pages in one view

How can I achieve a view that shows the little prev page and little end page and in the center active page, so it should have 3 pages in one view?
example

Using peaking and spacing property they take px/dp/%

can you provide some code examples pls, I'm new to this framework and can't get it well


Move IdP info to elastisys.io

Fixes #584
Fixes #517
I moved the "Configure your IdP" page from elastisys.com to elastisys.io. I basically copy-pasted David's original page and made the following modifications:

I tried to stick to project voice and our agreed vocabulary, while still pointing Managed Services customers in the right direction.
I added a bit of info about generic OpenID connectors.

Let me know if this is the right place to put the page in the navbar and if the content is the one we need.

Let's just go with the admonition text where we address the customers directly. :smile:


fix: Report command filtering requirements

Fix filtering of requirements in report command

Simply set _filtered to True, if there are no filters set all requirements are included, if there is filters set only the filtered requirements are included in the report.
Any downsides to this that i don't see? Are there any cases where we would want to ignore the filters set and include all requirements, and do we need to take account for that here?


pqdict.copy() causes slow/un-necessary heapsort of all the data.

Hey,
I noticed that when I use pqdict.copy() to copy over a pqdict, it's abnormally slow.
I was able to track it down to the fact that copy() calls __init__, and it does this:
        if data is not None:
            self.update(data)
        self.heapify()

Which re-heapify everything, causing it to go through the whole data structure. But we already have a heapified pqdict, so it's not necessary.
Instead you should just copy over the state (_heap and _position).
Here is some benchmarking/test script I created to show the problem:
import pqdict
import random
import timeit
import copy

def get_dict():
    a = pqdict.pqdict()
    for i in range(10_000):
        a[random.random()] = random.random()
    return a

def copy_dict(a):
    return a.copy()

def copy_dict_test(a):
    new_dict = pqdict.pqdict()
    new_dict._heap = a._heap[:]
    new_dict._position = a._position.copy()
    return new_dict

def consume_dict(a):
    while a:
        assert a.popitem()[1]

a = get_dict()

print("Time it takes to copy using pqdict.copy():")
print(timeit.timeit(lambda: copy_dict(a), number=100))
print("Time it takes to copy by copying _heap and _position:")
print(timeit.timeit(lambda: copy_dict_test(a), number=100))

print("Time it takes to create the pqdict:")
print(timeit.timeit(lambda: get_dict(), number=100))
print("Time it takes to consume the pqdict after pqdict.copy():")
print(timeit.timeit(lambda: consume_dict(copy_dict(a)), number=100))
print("Time it takes to consume the pqdict after copy of _heap and _position:")
print(timeit.timeit(lambda: consume_dict(copy_dict_test(a)), number=100))

Would it be possible to re-implement the copy() method? I can make a PR if you would like.

And here is the output of the script on my machine:
Time it takes to copy using pqdict.copy():
2.7107771890005097
Time it takes to copy by copying _heap and _position:
0.017738743001245894

Hmm I see my proposal is wrong, as the copy has Node objects pointing back to the original object, so adding/deleting elements would work, but updating them still changes the original.
So you would need to create a copy of the Node objects. That would still be much faster than doing a heapify() of everything, I imagine.
I will send a PR implementing that.

After my PR, here is the output of the script:
Time it takes to copy using pqdict.copy():
0.3347427129992866
Time it takes to copy by copying _heap and _position:
0.02496067000174662

So it's a much smaller speedup than I though, if I do it properly by copying the Node objects, but still nearly 10x speedup compared to the original.

And I sent another PR, reducing copy time to what I think was originally possible, by making the internal nodes immutable, which I think is pretty neat.

@palkeo, thank you for spotting this, benchmarking it and submitting two solutions!
As for the immutable nodes solution, pqdict was originally designed with very frequent priority update patterns in mind, so my one concern is whether switching to immutables adds any significant overhead caused by creating and garbage collecting immutable nodes when updating existing keys.
On the other hand, I see no objection to the first solution, so I can probably merge that one right away and leave the immutable strategy open for further exploration.

Thanks for looking into it!
Here is a test script, for your question above:
import pqdict
import random
import timeit
import copy

random.seed(1298472)

def get_dict():
    a = pqdict.pqdict()
    for i in range(10_000):
        a[random.random()] = random.random()
    return a

def update_dict(a):
    for key, value in a.items():
        a[key] = value + 0.001
    return a

def copy_dict(a):
    return a.copy()

def consume_dict(a):
    while a:
        assert a.popitem()[1]

a = get_dict()

print("Time it takes to create the pqdict:")
print(timeit.timeit(lambda: get_dict(), number=100))
print("Time it takes to copy using pqdict.copy():")
print(timeit.timeit(lambda: copy_dict(a), number=100))
print("Time it takes to consume the pqdict after pqdict.copy():")
print(timeit.timeit(lambda: consume_dict(copy_dict(a)), number=100))
print("Time it takes to update all keys in the dict")
print(timeit.timeit(lambda: update_dict(a), number=100))

Because copy is much faster, copying + consuming all data is faster in the immutable_node version.
However, the test with updating all the keys in the dict is about 10% slower in the new version. I think this is negligible for the benefit it adds in term of simplicity and copy performance. But I'll leave you evaluate and decide. Feel free to close this issue if you want.
Thanks!


DSC Retirement Confirm.

Hi Team, I want to know if the retire notification is also applicable for Azure China Environment. Could you please give me some information about that?

Thanks in advance.

Document details
⚠ Do not edit this section. It is required for learn.microsoft.com ➟ GitHub issue linking.

ID: 98c0922e-dd67-ec19-659b-fac8405f0f84
Version Independent ID: cba73901-6d4b-f9dd-b819-675044425c1f
Content: Apply Linux Azure Automation State Configuration using PowerShell
Content Source: articles/automation/dsc-linux-powershell.md
Service: automation
Sub-service: dsc
GitHub Login: @SnehaSudhirG
Microsoft Alias: sudhirsneha

Hi Team,
Is there any update?
Thanks.

Hi Team,
Could you please share the ETA about that?
Thanks.

Hi @WenJason, The end of support is based on the product, not the region/cloud, so it applies everywhere.


Added customizable serviceaccount

Added customizable serviceaccount with default values of create it, but do not automount it.

thanks! Here are a few notes.

Thanks for the contribution, and sorry for the delay!


Ctrl+C to copy an image is unreliable

Hi there,
I've been using tev for many years now, and one thing that is frustrating and puzzling is how exactly Ctrl+C is being handled. In some cases, it actually copies the image buffer to clipboard, and I can paste it to other applications, e.g., here to GitHub to paste an image. Sometimes, though, it only copies the path string of the image file, e.g., C:\Users\tomas\image.exr.
How exactly is Ctrl+C being handled in tev, and how could we fix the behavior?
Thanks a lot!

Hi, Ctrl+C copies the image itself if you previously clicked on the canvas region and it copies the path if you previously clicked on the path (in the image list to the left). If you haven't clicked anywhere after opening tev, it'll copy the image.

I see, thanks, I found the relevant part of the code in ImageViewer.cpp, lines 711-744. So it seems that mImageScrollContainer->focused() is the deciding factor.
It's hard to reproduce properly, but I swear that many times even when I click into the canvas, Ctrl+C is not copying the image and it copies the path instead.
I will try to use tev with the command line open so I can see the log messages.
If I don't manage to reproduce it systematically, we can close this issue

I feel the same about Ctrl+C sometimes. Now when I want to copy the image, I click 3x on the canvas and press 3x Ctrl+C. Works so far 😅

Given that 3 power users (also counting @diiigle since he reacted) run into this, I wouldn't mind changing the behavior such that Ctrl+C always copies the image and Shift+Ctrl+C always copies the path.
Any objections / contrary opinions from someone watching?

First, thanks for counting me as a power user :grin:
In my opinion, the current behavior is OK, but I would welcome having Ctrl+Shift+C copying the path and Ctrl+C the image.
I actually believe that it could be less of an issue with Tev, but more of a mismatch between expectation and reality about whether Tev's canvas is focused. It often happens to me that Tev is showing on another screen, and I did some Alt+Tabs hoping to get it in focus but not actually succeeding, causing the subsequent Ctrl+C to fail.

Asked around locally and it seems everyone I talk to has the same experience, so I went ahead with the change. From now on Ctrl+C always copies the image and Ctrl+Shift+C copies the path.


Problems with coord_map/coordMap

For layouts, self.coord_map is never written to, but it is read.
Also, we have two different names - coordMap is used in strip, and coord_map everywhere else.

Even though this is a nominally backward-incompatible change, I will probably rename coordMap to coord_map on the very strong theory that no one else is using it.


How to Add VaultChangeWatcher

Question
Hi!
I've tried to call:
services.AddHostedService<VaultChangeWatcher>();
and get this error on runtime after CreateHostBuilder(args).Build().Run();:
Some services are not able to be constructed (Error while validating the service descriptor 'ServiceType: Microsoft.Extensions.Hosting.IHostedService Lifetime: Singleton ImplementationType: VaultSharp.Extensions.Configuration.VaultChangeWatcher': Unable to resolve service for type 'Microsoft.Extensions.Configuration.IConfigurationRoot' while attempting to activate 'VaultSharp.Extensions.Configuration.VaultChangeWatcher'.)
Can yo tell me what I'm doing wrong, please?

@MaximTs thanks for pointing out. I'll check this during the weekend. Quite a busy during war time. Sorry.

@MrZoidberg I understand. Same situation.
If it's possible, maybe it's worth getting rid of the VaultChangeWatcher?
Like just AddConsul() from VaultSharp.Extensions.Configuration and nothing else.
Thanks for replying.

@MaximTs sorry for the late reply. I've fixed this problem with IConfigurationRoot in the .NET 6 brach and it will be merged soon. It will be a multi-target lib with .netstandard 2.1 and .NET 6 support.

Good evening!
I added login/password integration to your lib and improve autoreading
configs (without redundant extension)
If you interested in, I could create merge request.

Sure!

День добрый.
Прошу прощения, но у меня не получилось создать pull request.
Я создал develop-ветку и от нее feature/removeWatcher.
Попытался запушить, но тщетно из-за отсутствия прав.
Добавил во вложении zip с данной веткой проекта.
Некоторые тесты пришлось выключить из-за Watcher'а и упрощенного конструктора для options.
Привел код к требованиям editorconfig'а.
Поправил sample с новым конструктором.
Ветку брал с коммита за 17.05.2022.
Сорри за задержку, только появилось время переписать.
@.***
From: Mikhail Merkulov<EMAIL_ADDRESS>Sent: Monday, July 4, 2022 11:25 AM
To: MrZoidberg/VaultSharp.Extensions.Configuration<EMAIL_ADDRESS>Cc: Maxim Tsegelnikov<EMAIL_ADDRESS>Mention<EMAIL_ADDRESS>Subject: Re: [MrZoidberg/VaultSharp.Extensions.Configuration] How to Add VaultChangeWatcher (Issue #23)
Sure!

Reply to this email directly, view it on GitHubhttps://nam12.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2FMrZoidberg%2FVaultSharp.Extensions.Configuration%2Fissues%2F23%23issuecomment-1173511570&data=05|01||727511a3d86d4d85f25b08da5d96b4c9|84df9e7fe9f640afb435aaaaaaaaaaaa|1|0|637925199118467772|Unknown|TWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D|3000|||&sdata=2Ds%2FA1SfpPRx69ixFfItnnRJSOs4AJsnlEKakpI5uhA%3D&reserved=0, or unsubscribehttps://nam12.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fnotifications%2Funsubscribe-auth%2FAGB76IJF2WUVTDPXWGXZ4G3VSKNWHANCNFSM5TC4UFXA&data=05|01||727511a3d86d4d85f25b08da5d96b4c9|84df9e7fe9f640afb435aaaaaaaaaaaa|1|0|637925199118467772|Unknown|TWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D|3000|||&sdata=cVaPPbdcMi%2Bk5%2BO2d4CF85vPIQHPLJh%2BBGha5NAqGOI%3D&reserved=0.
You are receiving this because you were mentioned.Message ID<EMAIL_ADDRESS>

Please feel free to re-open this ticket if you have any additional questions.


Chef 13 error on aws_resource_tag

Cookbook version
4.2.2
Chef-client version
13.0.113
Platform Details
Latest CentOS 6 and 7 on AWS Cloud
Scenario:
updating resource tags in aws
Steps to Reproduce:
chef-client with wrapper to create aws tags for ec2 instances
Expected Result:
AWS ec2 instance tag being updated with  key value.
Actual Result:
This worked before with chef-client 12.19.36 but with 13.0.113 we get this runtime error:
Recipe: aws-tagging-nativex::default
  * chef_gem[aws-sdk] action install (up to date)
  * aws_resource_tag[i-0868edf9ce8332c2a] action update

    ================================================================================
    Error executing action `update` on resource 'aws_resource_tag[i-0868edf9ce8332c2a]'
    ================================================================================

    NameError
    ---------
    uninitialized constant Chef::Resource::AwsResourceTag

    Cookbook Trace:
    ---------------
    /var/chef/cache/cookbooks/aws/providers/resource_tag.rb:80:in `load_current_resource'

    Resource Declaration:
    ---------------------
    # In /var/chef/cache/cookbooks/aws-tagging-nativex/recipes/default.rb

     19:   aws_resource_tag tag[:awsid] do
     20:     tags(
     21:       tag[:key] => tag[:value]
     22:     )
     23:   end
     24: end

    Compiled Resource:
    ------------------
    # Declared in /var/chef/cache/cookbooks/aws-tagging-nativex/recipes/default.rb:19:in `block in from_file'

    aws_resource_tag("i-0868edf9ce8332c2a") do
      action [:update]
      default_guard_interpreter :default
      declared_type :aws_resource_tag
      cookbook_name "aws-tagging-nativex"
      recipe_name "default"
      tags {"CostCenter"=>"aerospike-misc-prod"}
    end

    System Info:
    ------------
    chef_version=13.0.113
    platform=centos
    platform_version=6.8
    ruby=ruby 2.4.1p111 (2017-03-22 revision 58053) [x86_64-linux]
    program_name=chef-client worker: ppid=9665;start=19:04:37;
    executable=/opt/chef/bin/chef-client

Recipe: timezone-ii::rhel
  * execute[tzdata-update] action run
    - execute /usr/sbin/tzdata-update

Running handlers:
[2017-04-10T19:05:02-05:00] ERROR: Running exception handlers
Running handlers complete
[2017-04-10T19:05:02-05:00] ERROR: Exception handlers complete
Chef Client failed. 16 resources updated in 25 seconds
[2017-04-10T19:05:02-05:00] FATAL: Stacktrace dumped to /var/chef/cache/chef-stacktrace.out
[2017-04-10T19:05:02-05:00] FATAL: Please provide the contents of the stacktrace.out file if you file a bug report
[2017-04-10T19:05:02-05:00] ERROR: aws_resource_tag[i-0868edf9ce8332c2a] (aws-tagging-nativex::default line 19) had an error: NameError: uninitialized constant Chef::Resource::AwsResourceTag
[2017-04-10T19:05:02-05:00] FATAL: Chef::Exceptions::ChildConvergeError: Chef run process exited unsuccessfully (exit code 1)

+1

+1

Fix is merged. Release going out today


SvelteComponent not needed as causing issues passing props

#Since this type changed svelte5 does not need the SvelteComponent as this is was expecting children as a prop and not each props such as class etc.
This should fix the typing and allow us to pass svelte component attributes:
Before:

After Requested Change:

this may not be the correct approach so please add your two cents!
#59

Thanks for your contribution, it's much appreciated 😀

Thanks for your contribution, it's much appreciated 😀

you're more than welcome, thanks for making this!!
i think this needs to be revisited as the typing is not 100% correct... but it works better :)


i18n to translation  multi word not work

my code runing in linux amd64 use golang 1.19.3 and gf version v2.2.5 use i18n to translation

zh-CN/vluc.toml
"vluc.request"  ="请求"
"vluc.forbidden"="被禁止的"
test

 i18n := gi18n.New()
  actx := gi18n.WithLanguage(context.TODO(), "zh-CN")
  fmt.Println(i18n.Translate(actx, `{#vluc.request}{#vluc.request}`))

3）output
{#vluc.request}{#vluc.request} is not to translate to zh-CN and only use {#vluc.request}  also not work but  use  fmt.Println(i18n.Translate(actx, vluc.request)) is ok
4)  it's bug or document error?

I found that it was probably the RE matching gi18n_manager.go change pattern {#(\w+)} to  {#([\w.]+)} is ok

@ScorpioRen Yes, the variable name in i18n is designed as \w+, which does not support character ..

I'm find the gvalid i18n file content like "gf.gvalid.rule.date" ,so I thought it was okay.thanks


Handling Downvotes

Maybe the wrong place to comment on but should we ever be counting "downvotes"? Not sure downvoting via delete is adding anything vs just greater complexity and disincentivizing the often right action of removing a comment that's either no longer needed or turns out to be unhelpful.
Originally posted by @tyvdh in https://github.com/Stellar-Quest-Lumenauts/fantastic-goggles/issues/3#issuecomment-843348717

This will allow a constant spam of addition and removal of emote reactions (which is easy) to increment votes.
This is imo a proplem to be considered even if removal of reply messages are ignored (this is less spammable and easier to spot for a moderator)

Maybe hash/combine the backer and message_id and make this field unique in the db? This way each emoji reaction will be only counted once w/o deleting (and atm will throw an error)

Orginally posted in 21d22e2


Added kitchen files to chefignore in code generator

This fixes an issue where kitchen converge and rspec takes long time to execute, see https://github.com/berkshelf/berkshelf/issues/1403

Hi. I am an automated pull request bot named Curry. There are commits in this pull request whose authors are not yet authorized to contribute to Chef Software, Inc. projects or are using a non-GitHub verified email address. To become authorized to contribute, you will need to sign the Contributor License Agreement (CLA) as an individual or on behalf of your company. You can read more on Chef's blog.
Non-GitHub Verified Committers
There are 1 commit author(s) whose commits are authored by a non-GitHub verified email address. Chef will have to manually verify that they are authorized to contribute.
Please sign the CLA here.


name/title change request

Is it possible to rename the repo name/package, since there is no computer security issue with using this package?

Thanks.
The colab link is not updated.


Add limits for Analytics events resending

Issue #, if available:
Description of changes:
To avoid infinite retries for Analytics resending events.
By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.

This is to fix this potential bug, right?
When I had window.LOG_LEVEL='DEBUG' on but not using Analytics, I noticed this message is fired continuously.
{"[DEBUG] 23:50.499 AWSAnalyticsProvider - record event failed. ": Error: Missing region in config
at Request.VALIDATE_REGION (webpack-internal:///../../../../aws-…}
amplify version 0.2.14

@Jun711 Yes. By the way, if you don't want to use Analytics, you can turn it off manually. You can check this doc

Thanks @powerful23
I don't use awsmobile though. it would be great if I know which line to add in. Thanks.

thanks @powerful23 . after your pull request, I don't have to set disabled to false to disable Analytics?
(resending events retry issue)

@Jun711 yes


[Skype for Business] Can not talk to bot on federated tenant?

Issue Description
My bot is up and running on Skype for Business on my own Skype for Business Online tenant. Other users in my tenant can talk to the bot, but users on a federated domain don't get any reply (they don't get an error message either). The bot service gets hit though (according to app insights).
Federation works great for human to human conversations.
In a federated Skype for Business conversation, is there a difference between being able to talk to a bot or a human?
Expected Behavior
Have a user from another (federated) tenant converse with the bot, as if it were available in his own tenant.
Actual Results
The bot does not reply, but not give me an error message either. Same behavior as talking to a federated user.

@stijnmichiels For reference, are you using .NET or Node.js SDK for BotBuilder?

.NET

hello any news? i still have this issue

Thank you for opening an issue against the Bot Framework SDK v3. As part of the Bot Framework v4 release, we’ve moved all v3 work to a new repo located at https://github.com/microsoft/botbuilder-v3. We will continue to support and offer maintenance updates to v3 via this new repo.
From now on, https://github.com/microsoft/botbuilder repo will be used as hub, with pointers to all the different SDK languages, tools and samples repos.
As part of this restructuring, we are closing all tickets in this repo.
For defects or feature requests, please create a new issue in the new Bot Framework v3 repo found here:
https://github.com/microsoft/botbuilder-v3/issues
For Azure Bot Service Channel specific defects or feature requests (e.g. Facebook, Twilio, Teams, Slack, etc.), please create a new issue in the new Bot Framework Channel repo found here:
https://github.com/microsoft/botframework-services/issues
For product behavior, how-to, or general understanding questions, please use Stackoverflow.
https://stackoverflow.com/search?q=bot+framework
Thank you.
The Bot Framework Team


Add device info provider in more NRF locations, fix null pointer crash for storage info

Problem
Need DeviceInfoProvider in more example apps for CSG to validate.
Storage is only available post server init.
Change overview
Fixes initialization order in light app.
Adds DeviceInfoProvider in more apps.
Testing
Compilation testing.
Explicitly tested user label read/write capability using the all-clusters-app.

Could you add the same implementation for light-switch and window-covering examples as well? We would like to keep all examples code consistent.

Updated


cn-pr-trans-home-contribute-style-guide-20180710

@markthink

/check_cla

/check-cla

/check-cla

/check-cla

/check-cla

/retest

Each commit in the pull request needs to pass. If you have commits that didn't attribute to a Github username, or to a different user that hasn't signed the CLA, that will fail that commit and all subsequent commits.

git  user.name is your github handle(id), retry it

/retest

/check_cla

/check_cla

/retest

I signed it

/check_cla

/retest

/check_cla

/lgtm


[SPARK-29876][SS] Delete/archive file source completed files in separate thread

What changes were proposed in this pull request?
SPARK-20568 added the possibility to clean up completed files in streaming query. Deleting/archiving uses the main thread which can slow down processing. In this PR I've created thread pool to handle file delete/archival. The number of threads can be configured with spark.sql.streaming.fileSource.cleaner.numThreads.
Why are the changes needed?
Do file delete/archival in separate thread.
Does this PR introduce any user-facing change?
No.
How was this patch tested?
Existing unit tests.

Test build #113697 has started for PR 26502 at commit 7f14b55.

Can one of the admins verify this patch?

The reason why I've added number of threads configuration possibility is the archiving part. Namely move can be copy on couple of file systems (like S3) which is time consuming and the cleaner maybe not able to keep the speed with the streaming query.

Test build #113697 has finished for PR 26502 at commit 7f14b55.

This patch passes all tests.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/113697/
Test PASSed.

cc @vanzin @HeartSaVioR since you know SPARK-20568 well.

Test build #114165 has started for PR 26502 at commit b0b9714.

Test build #114165 has finished for PR 26502 at commit b0b9714.

This patch fails Spark unit tests.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test FAILed.

Test FAILed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/114165/
Test FAILed.

retest this please

Test build #114173 has started for PR 26502 at commit b0b9714.

Test build #114173 has finished for PR 26502 at commit b0b9714.

This patch passes all tests.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/114173/
Test PASSed.

"source option" vs "SparkConf" is better I think.

@zsxwing this is an addition to the source file archival/delete which worth the attention.

Other than maybe it should be by default just 1 thread.

Set it to 1 + moved the clean functionality into the base class.

Test build #114777 has started for PR 26502 at commit 19b9c92.

Test build #114777 has finished for PR 26502 at commit 19b9c92.

This patch passes all tests.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/114777/
Test PASSed.

Do the tests need any adjustment given that the cleaning is asynchronous now? (Maybe to disable the cleaning thread.)

Do the tests need any adjustment given that the cleaning is asynchronous now? (Maybe to disable the cleaning thread.)

How about modifying clean to call cleanTask synchronously if it's being called from UT? (Would checking IS_TESTING in SparkConf work like what we do with FsHistoryProvider?) Given we have some UTs which don't directly call cleaner.clean, we still have to run cleanup in UTs.
Alternatively we can check the files with eventually but it would add some latencies on verification.

Started to catch-up which will take some time and going to continue...

Test build #116716 has started for PR 26502 at commit 74431de.

Yeah, the thread must be turned off not to have flakyness. IS_TESTING is something what I would like to avoid unless there is no other way. eventually has a drawback of additional latency as you've mentioned @HeartSaVioR . I think the easiest and simplest is to set the config to 0. I'm going to add this change in the last commit.

Test build #116718 has started for PR 26502 at commit b6af107.

Test build #116716 has finished for PR 26502 at commit 74431de.

This patch passes all tests.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/116716/
Test PASSed.

Test build #116718 has finished for PR 26502 at commit b6af107.

This patch passes all tests.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/116718/
Test PASSed.


Can't open the config

The start and Panic buttons work just fine, but I can't seem to make the config work

I updated my python and it fixed this for me


[Question] Does yurthub support to local proxy for customresourcedefinitions (CRDs) ?

What happened:
request for /apis/apiextensions.k8s.io/v1/customresourcedefinitions?limit=500  in offline env, but got customresourcedefinitions.apiextensions.k8s.io "" not found error
What you expected to happen:
How to reproduce it (as minimally and precisely as possible):
Anything else we need to know?:
Environment:

OpenYurt version: v1.4.0
Kubernetes version (use kubectl version): v1.27.4
OS (e.g: cat /etc/os-release): centos linux
Kernel (e.g. uname -a): 5.15.13-1.el7.elrepo.x86_64
Install tools:
Others:

others
/kind question

@obitoquilt Thank you for raising the issue. I have verified the request /apis/apiextensions.k8s.io/v1/customresourcedefinitions?limit=500 in my environment, and the crds have been cached on local disk.
I think the reason of this issue is that you have not configured the cache-agents field of yurthub.
For cache configuration details, you can reference the yurthub faq No. 13: https://openyurt.io/docs/faq/yurthub/

@obitoquilt Thank you for raising the issue. I have verified the request /apis/apiextensions.k8s.io/v1/customresourcedefinitions?limit=500 in my environment, and the crds have been cached on local disk.
I think the reason of this issue is that you have not configured the cache-agents field of yurthub. For cache configuration details, you can reference the yurthub faq No. 13: https://openyurt.io/docs/faq/yurthub/

Thanks for your reply. the crds also have been cached on my local disk, but when i disconnect network on edge node (it cannot connect to api-server), re-request for /apis/apiextensions.k8s.io/v1/customresourcedefinitions?limit=500 and got customresourcedefinitions.apiextensions.k8s.io "" not found error.

@obitoquilt Thank you for raising the issue. I have verified the request /apis/apiextensions.k8s.io/v1/customresourcedefinitions?limit=500 in my environment, and the crds have been cached on local disk.
I think the reason of this issue is that you have not configured the cache-agents field of yurthub. For cache configuration details, you can reference the yurthub faq No. 13: https://openyurt.io/docs/faq/yurthub/

Thanks for your reply. the crds also have been cached on my local disk, but when i disconnect network on edge node (it cannot connect to api-server), re-request for /apis/apiextensions.k8s.io/v1/customresourcedefinitions?limit=500 and got customresourcedefinitions.apiextensions.k8s.io "" not found error.

@obitoquilt On my environment, crds can be listed when network offline. would you like to show me the details of crds(like crds filepath, etc.) caches on your local disk?

@obitoquilt Thank you for raising the issue. I have verified the request /apis/apiextensions.k8s.io/v1/customresourcedefinitions?limit=500 in my environment, and the crds have been cached on local disk.
I think the reason of this issue is that you have not configured the cache-agents field of yurthub. For cache configuration details, you can reference the yurthub faq No. 13: https://openyurt.io/docs/faq/yurthub/

Thanks for your reply. the crds also have been cached on my local disk, but when i disconnect network on edge node (it cannot connect to api-server), re-request for /apis/apiextensions.k8s.io/v1/customresourcedefinitions?limit=500 and got customresourcedefinitions.apiextensions.k8s.io "" not found error.

@obitoquilt On my environment, crds can be listed when network offline. would you like to show me the details of crds(like crds filepath, etc.) caches on your local disk?

/etc/kubernetes/cache/cilium-agent/:

customresourcedefinitions.v1.apiextensions.k8s.io

ciliumcidrgoups.cilium.io

the content of ciliumcidrgoups.cilium.io file is:
{"apiVersion": "apiextensions.k8s.io/v1", "kind": "PartialObjectMetadata", "metadata": {"creationTimestamp": ""}}

BTW, the version used is v1.4.0
Thanks for any reply.

@obitoquilt would you like to upload the details logs of yurthub component on this node? I think maybe we can find some clues in the logs.

@obitoquilt would you like to upload the details logs of yurthub component on this node? I think maybe we can find some clues in the logs.

Yes. Here are the error logs of Yurthub.
util.go:303] cilium-agent list customresourcedefinitions: /api/apiextensions.k8s.io/v1/customresourcedefinitions?limit=500&resourceVersion=0, in flight requests: 18
cache_manager.go:185] could not get gvk for ListObject for req: cilium-agent list customresourcedefinitions: /api/apiextensions.k8s.io/v1/customresourcedefinitions?limit=500&resourceVersion=0, GroupVersionResource is not recognized
local.go:224] object not found for cilium-agent list customresourcedefinitions: /api/apiextensions.k8s.io/v1/customresourcedefinitions?limit=500&resourceVersion=0
local.go:88] could not proxy local for  cilium-agent list customresourcedefinitions: /api/apiextensions.k8s.io/v1/customresourcedefinitions?limit=500&resourceVersion=0, customresourcedefinitions.apiextensions.k8s.io "" not found

I read the related source code briefly in pkg/yurthub/kubernetes/meta/restmapper.go:58. The defaultGroupVersions doesn't seem to include apiextension.k8s.io/v1, I'm not sure if this is the reason causing it.
func NewDefaultRESTMapperFromScheme() *meta.DefaultRESTMapper {
	s := scheme.Scheme
	defaultGroupVersions := s.PrioritizedVersionsAllGroups()
	mapper := meta.NewDefaultRESTMapper(defaultGroupVersions)
	// enumerate all supported versions, get the kinds, and register with the mapper how to address
	// our resources.
	for _, gv := range defaultGroupVersions {
		for kind := range s.KnownTypes(gv) {
			// Only need to process non-list resources
			if !strings.HasSuffix(kind, "List") {
				// Since RESTMapper is only used for mapping GVR to GVK information,
				// the scope field is not involved in actual use,
				// so all scope are currently set to meta.RESTScopeNamespace
				scope := meta.RESTScopeNamespace
				mapper.Add(gv.WithKind(kind), scope)
			}
		}
	}
	return mapper
}

Thanks for your kind help!

@obitoquilt would you like to upload the details logs of yurthub component on this node? I think maybe we can find some clues in the logs.

Yes. Here are the error logs of Yurthub.
util.go:303] cilium-agent list customresourcedefinitions: /api/apiextensions.k8s.io/v1/customresourcedefinitions?limit=500&resourceVersion=0, in flight requests: 18
cache_manager.go:185] could not get gvk for ListObject for req: cilium-agent list customresourcedefinitions: /api/apiextensions.k8s.io/v1/customresourcedefinitions?limit=500&resourceVersion=0, GroupVersionResource is not recognized
local.go:224] object not found for cilium-agent list customresourcedefinitions: /api/apiextensions.k8s.io/v1/customresourcedefinitions?limit=500&resourceVersion=0
local.go:88] could not proxy local for cilium-agent list customresourcedefinitions: /api/apiextensions.k8s.io/v1/customresourcedefinitions?limit=500&resourceVersion=0, customresourcedefinitions.apiextensions.k8s.io "" not found

I read the related source code briefly in pkg/yurthub/kubernetes/meta/restmapper.go:58. The defaultGroupVersions doesn't seem to include apiextension.k8s.io/v1, I'm not sure if this is the reason causing it.
func NewDefaultRESTMapperFromScheme() *meta.DefaultRESTMapper {
	s := scheme.Scheme
	defaultGroupVersions := s.PrioritizedVersionsAllGroups()
	mapper := meta.NewDefaultRESTMapper(defaultGroupVersions)
	// enumerate all supported versions, get the kinds, and register with the mapper how to address
	// our resources.
	for _, gv := range defaultGroupVersions {
		for kind := range s.KnownTypes(gv) {
			// Only need to process non-list resources
			if !strings.HasSuffix(kind, "List") {
				// Since RESTMapper is only used for mapping GVR to GVK information,
				// the scope field is not involved in actual use,
				// so all scope are currently set to meta.RESTScopeNamespace
				scope := meta.RESTScopeNamespace
				mapper.Add(gv.WithKind(kind), scope)
			}
		}
	}
	return mapper
}

Thanks for your kind help!

@obitoquilt When yurthub cache response for cilium-agent list/get crds requests, yurthub will update unrecognized GVK info as following:
https://github.com/openyurtio/openyurt/blob/dadab08c243639c5c0316bd913aae1fcdd46a906/pkg/yurthub/cachemanager/cache_manager.go#L475
The gvk info is stored on the local disk and the file path is /etc/kubernetes/cache/_internal/restmapper/cache-crd-restmapper.conf.
so when cilium-agent list/get crds when cloud-edge network offline, yurthub will recognize the requests, then retrieve the cache data and return back to the cilium-agent.
would you upload the contents of configmap kube-system/yurt-hub-cfg? so i can check that the cache configuration is correct or not.

@rambohe-ch Here are the configmap kube-system/yurt-hub-cfg:
data:
  cache_agents: '*'
  discardcloudservice: ""
  masterservice: ""
  servicetopology: ""

@obitoquilt would you like to upload the details logs of yurthub component on this node? I think maybe we can find some clues in the logs.

Yes. Here are the error logs of Yurthub.
util.go:303] cilium-agent list customresourcedefinitions: /api/apiextensions.k8s.io/v1/customresourcedefinitions?limit=500&resourceVersion=0, in flight requests: 18
cache_manager.go:185] could not get gvk for ListObject for req: cilium-agent list customresourcedefinitions: /api/apiextensions.k8s.io/v1/customresourcedefinitions?limit=500&resourceVersion=0, GroupVersionResource is not recognized
local.go:224] object not found for cilium-agent list customresourcedefinitions: /api/apiextensions.k8s.io/v1/customresourcedefinitions?limit=500&resourceVersion=0
local.go:88] could not proxy local for cilium-agent list customresourcedefinitions: /api/apiextensions.k8s.io/v1/customresourcedefinitions?limit=500&resourceVersion=0, customresourcedefinitions.apiextensions.k8s.io "" not found

I read the related source code briefly in pkg/yurthub/kubernetes/meta/restmapper.go:58. The defaultGroupVersions doesn't seem to include apiextension.k8s.io/v1, I'm not sure if this is the reason causing it.
func NewDefaultRESTMapperFromScheme() *meta.DefaultRESTMapper {
	s := scheme.Scheme
	defaultGroupVersions := s.PrioritizedVersionsAllGroups()
	mapper := meta.NewDefaultRESTMapper(defaultGroupVersions)
	// enumerate all supported versions, get the kinds, and register with the mapper how to address
	// our resources.
	for _, gv := range defaultGroupVersions {
		for kind := range s.KnownTypes(gv) {
			// Only need to process non-list resources
			if !strings.HasSuffix(kind, "List") {
				// Since RESTMapper is only used for mapping GVR to GVK information,
				// the scope field is not involved in actual use,
				// so all scope are currently set to meta.RESTScopeNamespace
				scope := meta.RESTScopeNamespace
				mapper.Add(gv.WithKind(kind), scope)
			}
		}
	}
	return mapper
}

Thanks for your kind help!

@obitoquilt When yurthub cache response for cilium-agent list/get crds requests, yurthub will update unrecognized GVK info as following:
https://github.com/openyurtio/openyurt/blob/dadab08c243639c5c0316bd913aae1fcdd46a906/pkg/yurthub/cachemanager/cache_manager.go#L475
The gvk info is stored on the local disk and the file path is /etc/kubernetes/cache/_internal/restmapper/cache-crd-restmapper.conf.
so when cilium-agent list/get crds when cloud-edge network offline, yurthub will recognize the requests, then retrieve the cache data and return back to the cilium-agent.
would you upload the contents of configmap kube-system/yurt-hub-cfg? so i can check that the cache configuration is correct or not.

Thanks for your detailed reply. I check the file /etc/kubernetes/cache/_internal/restmapper/cache-crd-restmapper.conf and find out a mistake.
{"apiextensions.k8s.io/v1/partialobjectmetadata": "PartialObjectMetadata", "apiextensions.k8s.io/v1/partialobjectmetadatas": "PartialObjectMetadata"}

The cilium-agent requests crd /apis/apiextensions.k8s.io/v1/customresourcedefinitions with PartialObjectMedata content-type，causing cache crd error.
The normal content of cache-crd-restmapper.conf should look like this, right?
{
  "apiextensions.k8s.io/v1/customresourcedefinition": "CustomResourceDefinition",
  "apiextensions.k8s.io/v1/customresourcedefinitions": "CustomResourceDefinition"

How to solve this error where request with PartialObjectMedata content-type?
Thanks again for your very very kind help!

@obitoquilt would you like to upload the details logs of yurthub component on this node? I think maybe we can find some clues in the logs.

Yes. Here are the error logs of Yurthub.
util.go:303] cilium-agent list customresourcedefinitions: /api/apiextensions.k8s.io/v1/customresourcedefinitions?limit=500&resourceVersion=0, in flight requests: 18
cache_manager.go:185] could not get gvk for ListObject for req: cilium-agent list customresourcedefinitions: /api/apiextensions.k8s.io/v1/customresourcedefinitions?limit=500&resourceVersion=0, GroupVersionResource is not recognized
local.go:224] object not found for cilium-agent list customresourcedefinitions: /api/apiextensions.k8s.io/v1/customresourcedefinitions?limit=500&resourceVersion=0
local.go:88] could not proxy local for cilium-agent list customresourcedefinitions: /api/apiextensions.k8s.io/v1/customresourcedefinitions?limit=500&resourceVersion=0, customresourcedefinitions.apiextensions.k8s.io "" not found

I read the related source code briefly in pkg/yurthub/kubernetes/meta/restmapper.go:58. The defaultGroupVersions doesn't seem to include apiextension.k8s.io/v1, I'm not sure if this is the reason causing it.
func NewDefaultRESTMapperFromScheme() *meta.DefaultRESTMapper {
	s := scheme.Scheme
	defaultGroupVersions := s.PrioritizedVersionsAllGroups()
	mapper := meta.NewDefaultRESTMapper(defaultGroupVersions)
	// enumerate all supported versions, get the kinds, and register with the mapper how to address
	// our resources.
	for _, gv := range defaultGroupVersions {
		for kind := range s.KnownTypes(gv) {
			// Only need to process non-list resources
			if !strings.HasSuffix(kind, "List") {
				// Since RESTMapper is only used for mapping GVR to GVK information,
				// the scope field is not involved in actual use,
				// so all scope are currently set to meta.RESTScopeNamespace
				scope := meta.RESTScopeNamespace
				mapper.Add(gv.WithKind(kind), scope)
			}
		}
	}
	return mapper
}

Thanks for your kind help!

@obitoquilt When yurthub cache response for cilium-agent list/get crds requests, yurthub will update unrecognized GVK info as following:
https://github.com/openyurtio/openyurt/blob/dadab08c243639c5c0316bd913aae1fcdd46a906/pkg/yurthub/cachemanager/cache_manager.go#L475
The gvk info is stored on the local disk and the file path is /etc/kubernetes/cache/_internal/restmapper/cache-crd-restmapper.conf.
so when cilium-agent list/get crds when cloud-edge network offline, yurthub will recognize the requests, then retrieve the cache data and return back to the cilium-agent.
would you upload the contents of configmap kube-system/yurt-hub-cfg? so i can check that the cache configuration is correct or not.

Thanks for your detailed reply. I check the file /etc/kubernetes/cache/_internal/restmapper/cache-crd-restmapper.conf and find out a mistake.
{"apiextensions.k8s.io/v1/partialobjectmetadata": "PartialObjectMetadata", "apiextensions.k8s.io/v1/partialobjectmetadatas": "PartialObjectMetadata"}

The cilium-agent requests crd /apis/apiextensions.k8s.io/v1/customresourcedefinitions with PartialObjectMedata content-type，causing cache crd error.
The normal content of cache-crd-restmapper.conf should look like this, right?
{
  "apiextensions.k8s.io/v1/customresourcedefinition": "CustomResourceDefinition",
  "apiextensions.k8s.io/v1/customresourcedefinitions": "CustomResourceDefinition"

How to solve this error where request with PartialObjectMedata content-type? Thanks again for your very very kind help!

@obitoquilt I have checked metadata request in my environment, and Yurthub component can not deal with metadata request correctly. so this is a bug of Yurthub component.
In the following metadata request, Yurthub recognized this request as List CRDs request currently.
curl -H "Accept: application/json;as=PartialObjectMetadataList;g=meta.k8s.io;v=v1" "$API_SERVER/apis/apiextensions.k8s.io/v1/customresourcedefinitions"

but this request is actually a List PartialObjectMetadata request, and the response is as following:
{
  "kind": "PartialObjectMetadataList",
  "apiVersion": "meta.k8s.io/v1",
  "metadata": {
    "resourceVersion": "xxxx"
  },
  "items": [
    {
      "kind": "PartialObjectMetadata"
      "apiVersion": "meta.k8s.io/v1",
      "metadata": {
        "name": "example-crd.mygroup.k8s.io",
        "namespace": "", // CRDs are cluster-wide, so no namespace
        "uid": "some-uid",
        "resourceVersion": "some-version",
        "generation": 1,
        "creationTimestamp": "2020-01-01T00:00:00Z",
        "labels": {
          "key": "value"
        },
        "annotations": {
          "key": "value"
        }
      }
    }
    // Other CRDs would follow in similar objects
  ]
}

I will make a pull request to handle this bug, please stay tuned.

@obitoquilt I want to describe some points about the solution of this bug, any comments are welcome.

A new http.Handler will be added to convert list crds request to list partialObjectMetadata request for Yurthub cache.
response will be cached on the path: /etc/kubernetes/cache/{component}/partialobjectmetadata.v1.meta.k8s.io/{original-resource}/{ns}/{name}

original-resource: customresourcedefinitions

local cache will be retrieved by the clients when network offline.

@obitoquilt I want to describe some points about the solution of this bug, any comments are welcome.

A new http.Handler will be added to convert list crds request to list partialObjectMetadata request for Yurthub cache.(request proxy will not be effected)

response will be cached on the path: /etc/kubernetes/cache/{component}/partialobjectmetadata.v1.meta.k8s.io/{original-resource}/{ns}/{name}

original-resource: customresourcedefinitions

local cache will be retrieved by the clients when network offline.

Looks good to me!

/assign @rambohe-ch


Update docfx.json

Fixing metadata.
Contact @kcpitt if you have any questions

:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

docs/docfx.json
:white_check_mark:Succeeded

For more details, please refer to the build report.
Note: If you changed an existing file name or deleted a file, broken links in other files to the deleted or renamed file are listed only in the full build report.


Validate string contain '|' character using FormRequest

Laravel Version: 5.4.#
PHP Version: 7.0.#
Database Driver & Version: 5.7.#

Description:
validate string contain '|' character.
Steps To Reproduce:
I'm validate form request such as input name="group_name".
Form request:
return [
'group_name'    => "unique:groups,group_name,NULL,id,name,".$this->request->get('name')
]

For example, input group_name submit is '|demoString'
And error:
Whoops, looks like something went wrong.

1/1
BadMethodCallException in Validator.php line 1067:
Method [validateDemoString'] does not exist.
in Validator.php line 1067
at Validator->__call('validateDaksud\'', array('group_name', 'aasdsdasd', array(), object(Validator))) in Validator.php line 338
at Validator->validateAttribute('group_name', 'Daksud\'') in Validator.php line 253
at Validator->passes() in ValidatesWhenResolvedTrait.php line 23
at FormRequest->validate() in FormRequestServiceProvider.php line 31

The | has special meaning when passing rules as strings, as a separator between rules, but I believe it wouldn't be used for that purpose if you passed in a array instead.
return [
    'group_name'    => [
        "unique:groups,group_name,NULL,id,name,".$this->request->get('name')
    ]
]

You could also use the new Rule::unique() method as well: https://laravel.com/docs/5.4/validation#rule-unique


Verifying and submitting issues Maybe cvv issues?

The bot runs, goes through the checkout, gets to the last step. but it does not click the final "place your order"
I don't know exactly where the code is having issues, Testmode was turned off, I'd checked it multiple times
Its gets to the final Checkpoint then says Verifying and submitting.
Something I noticed, the CVV code only popped up for the first test. (on the first test, when I didn't work I clicked the place order button manually and it checked out. canceled the order afterwards on my test object)
After that, the cvv box quit popping up.
I read the previous article on the cvv bug, it was closed, and the newest update should have fixed it. Meaning it might not be the cvv box causing issues.
I even re-copied the code, and started fresh, making sure to only change the main flags. I do have my cvv added, and my sms added for verification.
also a question, as I hadn't found an answer elsewhere, is there was way to have the bot switch to shipping instead of in store pickup?

#39


Observed nil flow from source to dereference point: result 0 of Do() accessed field Body

I am trying the new Uber's tool, NilAway.
In this code
resp, err := client.Do(req)
if err != nil {
	return Runtime{}, fmt.Errorf("http get error: %w", err)
}
defer resp.Body.Close()

body, err := io.ReadAll(resp.Body)
if err != nil {
	return Runtime{}, fmt.Errorf("read all error: %w", err)
}

I get the error
Error: /home/runner/work/***/***/main.go:119:26: error: Potential nil panic detected. Observed nil flow from source to dereference point:
Error: 	-> http/client.go:644:12: unassigned variable `resp` returned from `do()` in position 0
Error: 	-> http/client.go:590:9: result 0 of `do()` returned from `Do()` in position 0
Error: 	-> ***/main.go:119:26: result 0 of `Do()` accessed field `Body`

If I understand correctly, the tool wants me to deal with this potential nil. This way.
if err != nil || resp == nil {

But that's somewhat redundant, since if the error is nil, the response will be too.
What do you think?

But that's somewhat redundant, since if the error is nil, the response will be too.

Yes you're right. In general NilAway handles such cases, where it would try to reason that if the error-returning functions are only returning <NONNIL, NIL> and <NIL, NONNIL>, then these mutually exclusivity is considered and won't trigger an error if you are checking if err != nil {...}.
Here the case is more interesting. Correct me if anyone is more familiar with the code in http/client.go:
(1) Local vars reqs []*Request and resp *Response are uninitialized here:
https://github.com/golang/go/blob/37971b31dfde1b9c40f6d42484e528c17450a9ae/src/net/http/client.go#L607-L617
(2) we then enter the for loop below, with empty reqs and nil resp
https://github.com/golang/go/blob/37971b31dfde1b9c40f6d42484e528c17450a9ae/src/net/http/client.go#L635-L645
Now that the only reason it doesn't result in a panic is because anything under if len(reqs) > 0 { is dead code and would never be executed.
Am I missing something? (in the meantime we could probably enhance NilAway to understand length checks better)

there is also an implicit contract that if err != nil then resp can not be nil (exactly, that resp.Body is not nil)