HADOOP-18872: [Backport to 3.3] [ABFS] [BugFix] Misreporting Retry Count for Sub-sequential and Parallel Operations

Jira Ticket: https://issues.apache.org/jira/browse/HADOOP-18872
Trunk PR: https://github.com/apache/hadoop/pull/6019
Cherry-picked commit: https://github.com/apache/hadoop/commit/000a39ba2d2131ac158e23b35eae8c1329681bff
Description:
There was a bug identified where retry count in the client correlation id was wrongly reported for sub-sequential and parallel operations triggered by a single file system call. This was due to reusing same tracing context for all such calls.
We create a new tracing context as soon as HDFS call comes. We keep on passing that same TC for all the client calls.
For instance, when we get a createFile call, we first call metadata operations. If those metadata operations somehow succeeded after a few retries, the tracing context will have that many retry count in it. Now when actual call for create is made, same retry count will be used to construct the headers(clientCorrelationId). Alhough the create operation never failed, we will still see retry count from the previous request.
Fix is to use a new tracing context object for all the network calls made. All the sub-sequential and parallel operations will have same primary request Id to correlate them, yet they will have their own tracing of retry count.

:confetti_ball: +1 overall

Vote
Subsystem
Runtime
Logfile
Comment

+0 :ok:
reexec
11m 16s

Docker mode activated.

_ Prechecks _

+1 :green_heart:
dupname
0m  1s

No case conflicting files found.

+0 :ok:
codespell
0m  0s

codespell was not available.

+0 :ok:
detsecrets
0m  0s

detect-secrets was not available.

+1 :green_heart:
@author
0m  0s

The patch does not contain any @author tags.

+1 :green_heart:
test4tests
0m  0s

The patch appears to include 7 new or modified test files.

_ branch-3.3 Compile Tests _

+1 :green_heart:
mvninstall
46m 31s

branch-3.3 passed

+1 :green_heart:
compile
0m 36s

branch-3.3 passed

+1 :green_heart:
checkstyle
0m 31s

branch-3.3 passed

+1 :green_heart:
mvnsite
0m 43s

branch-3.3 passed

+1 :green_heart:
javadoc
0m 35s

branch-3.3 passed

+1 :green_heart:
spotbugs
1m  9s

branch-3.3 passed

+1 :green_heart:
shadedclient
34m 47s

branch has no errors when building and testing our client artifacts.

_ Patch Compile Tests _

+1 :green_heart:
mvninstall
0m 37s

the patch passed

+1 :green_heart:
compile
0m 30s

the patch passed

+1 :green_heart:
javac
0m 30s

the patch passed

+1 :green_heart:
blanks
0m  0s

The patch has no blanks issues.

-0 :warning:
checkstyle
0m 19s
/results-checkstyle-hadoop-tools_hadoop-azure.txt
hadoop-tools/hadoop-azure: The patch generated 1 new + 5 unchanged - 0 fixed = 6 total (was 5)

+1 :green_heart:
mvnsite
0m 33s

the patch passed

+1 :green_heart:
javadoc
0m 23s

the patch passed

+1 :green_heart:
spotbugs
1m  6s

the patch passed

+1 :green_heart:
shadedclient
34m 39s

patch has no errors when building and testing our client artifacts.

_ Other Tests _

+1 :green_heart:
unit
2m  4s

hadoop-azure in the patch passed.

+1 :green_heart:
asflicense
0m 35s

The patch does not generate ASF License warnings.

139m 42s

Subsystem
Report/Notes

Docker
ClientAPI=1.43 ServerAPI=1.43 base: https://ci-hadoop.apache.org/job/hadoop-multibranch/job/PR-6284/1/artifact/out/Dockerfile

GITHUB PR
https://github.com/apache/hadoop/pull/6284

Optional Tests
dupname asflicense compile javac javadoc mvninstall mvnsite unit shadedclient spotbugs checkstyle codespell detsecrets

uname
Linux 83b27307a3a4 5.15.0-88-generic #98-Ubuntu SMP Mon Oct 2 15:18:56 UTC 2023 x86_64 x86_64 x86_64 GNU/Linux

Build tool
maven

Personality
dev-support/bin/hadoop.sh

git revision
branch-3.3 / e4e7d1ba877f931a6c60972fbb11b486af02e2c7

Default Java
Private Build-1.8.0_362-8u372-ga~us1-0ubuntu1~18.04-b09

Test Results
https://ci-hadoop.apache.org/job/hadoop-multibranch/job/PR-6284/1/testReport/

Max. process+thread count
671 (vs. ulimit of 5500)

modules
C: hadoop-tools/hadoop-azure U: hadoop-tools/hadoop-azure

Console output
https://ci-hadoop.apache.org/job/hadoop-multibranch/job/PR-6284/1/console

versions
git=2.17.1 maven=3.6.0 spotbugs=4.2.2

Powered by
Apache Yetus 0.14.0 https://yetus.apache.org

This message was automatically generated.


Add Chart Conversion

Description
Added ui-chart conversion to migration server. Please review. If accepted additional nodes will be submitted for PR.
Related Issue(s)
Closes #27
Checklist

[Y] I have read the contribution guidelines
[N/A] Suitable unit/system level tests have been added and they pass
[Y] Documentation has been updated

[N/A] Upgrade instructions
[Y] Configuration details
[Y] Concepts

[N/A] Changes flowforge.yml?

[N/A] Issue/PR raised on FlowFuse/helm to update ConfigMap Template
[N/A] Issue/PR raised on FlowFuse/CloudProject to update values for Staging/Production

Labels

[N/A] Includes a DB migration? -> add the area:migration label

@joepavitt Do you have any thoughts on this PR?

Thanks, for tagging me @kd9lsv, for some reason I didn't get notified this had been opened.
I'll take a proper look later today, but will mention that for the Chart node, the biggest concern isn't the chart node itself, but the bit before the chart node, given that we do not support the same data structure as in Dashbpard 1.0, user's flows would be sending in data that isn't compatible.
A solution  here could be that we replace ui_chart with ui-chart and a function node, that parses the known data structure of Dashboard 1.0, and converts it to something D2.0-friendly?

@joepavitt

I'll take a proper look later today, but will mention that for the Chart node, the biggest concern isn't the chart node itself, but the bit before the chart node, given that we do not support the same data structure as in Dashboard 1.0, user's flows would be sending in data that isn't compatible.

The same object input works for me.
The update allows for more things not less.
The only thing that I believe doesn't work directly is the clearing of the chart using []. A function node would be need  to be added to complete functionality.
Example function
if (msg.payload=='[]'){
   msg.action="Replace";
   msg.payload="";
}
return msg;

See flow

See Dashboard result

[ui_chart_ping_internet.json](https://github.com/user-attachments/files/17267548/flows.3.json)


Build failure: php82Packages.composer 2.6.4

Steps To Reproduce
Steps to reproduce the behaviour:

Use revision 0396d3b0fb7f62ddc79a506ad3e6124f01d2ed0a
build php82Packages.composer

Build log

Full Log
nix-shell -p php82Packages.composer
these 2 derivations will be built:
  /nix/store/bdkwnh8nlx20b58p8sr6j6f4xwwzfl4h-composer-2.6.4-composer-repository.drv
  /nix/store/fmak867mqjpqca9aw627h2cyy344906s-composer-2.6.4.drv
building '/nix/store/bdkwnh8nlx20b58p8sr6j6f4xwwzfl4h-composer-2.6.4-composer-repository.drv'...
unpacking sources
unpacking source archive /nix/store/mdjxf0s7llz2qrixasz865dcys3k87s0-source
source root is source
patching sources
updateAutotoolsGnuConfigScriptsPhase
configuring
Executing composerRepositoryConfigureHook
No composer.lock file found, consider adding one to your repository to ensure reproducible builds.
Loading composer repositories with package information
Info from https://repo.packagist.org: #StandWithUkraine
Updating dependencies
Lock file operations: 34 installs, 0 updates, 0 removals
  - Locking composer/ca-bundle (1.3.7)
  - Locking composer/class-map-generator (1.1.0)
  - Locking composer/metadata-minifier (1.0.0)
  - Locking composer/pcre (2.1.0)
  - Locking composer/semver (3.4.0)
  - Locking composer/spdx-licenses (1.5.7)
  - Locking composer/xdebug-handler (3.0.3)
  - Locking justinrainbow/json-schema (v5.2.13)
  - Locking phpstan/phpstan (1.10.36)
  - Locking phpstan/phpstan-deprecation-rules (1.1.4)
  - Locking phpstan/phpstan-phpunit (1.3.14)
  - Locking phpstan/phpstan-strict-rules (1.5.1)
  - Locking phpstan/phpstan-symfony (1.3.4)
  - Locking psr/container (1.1.1)
  - Locking psr/log (1.1.4)
  - Locking react/promise (v3.0.0)
  - Locking seld/jsonlint (1.10.0)
  - Locking seld/phar-utils (1.2.1)
  - Locking seld/signal-handler (2.0.2)
  - Locking symfony/console (v5.4.28)
  - Locking symfony/deprecation-contracts (v2.5.2)
  - Locking symfony/filesystem (v5.4.25)
  - Locking symfony/finder (v5.4.27)
  - Locking symfony/phpunit-bridge (v6.3.2)
  - Locking symfony/polyfill-ctype (v1.28.0)
  - Locking symfony/polyfill-intl-grapheme (v1.28.0)
  - Locking symfony/polyfill-intl-normalizer (v1.28.0)
  - Locking symfony/polyfill-mbstring (v1.28.0)
  - Locking symfony/polyfill-php73 (v1.28.0)
  - Locking symfony/polyfill-php80 (v1.28.0)
  - Locking symfony/polyfill-php81 (v1.28.0)
  - Locking symfony/process (v5.4.28)
  - Locking symfony/service-contracts (v2.5.2)
  - Locking symfony/string (v5.4.29)
Writing lock file
3 package suggestions were added by new dependencies, use `composer suggest` to see details.
No security vulnerability advisories found.
Using an autogenerated composer.lock file.
Finished composerRepositoryConfigureHook
building
Executing composerRepositoryBuildHook
  - Downloading composer/ca-bundle (1.3.7)
  - Installing composer/ca-bundle (1.3.7): Extracting archive
  - Downloading composer/class-map-generator (1.1.0)
  - Installing composer/class-map-generator (1.1.0): Extracting archive
  - Downloading composer/metadata-minifier (1.0.0)
  - Installing composer/metadata-minifier (1.0.0): Extracting archive
  - Downloading composer/pcre (2.1.0)
  - Installing composer/pcre (2.1.0): Extracting archive
  - Downloading composer/semver (3.4.0)
  - Installing composer/semver (3.4.0): Extracting archive
  - Downloading composer/spdx-licenses (1.5.7)
  - Installing composer/spdx-licenses (1.5.7): Extracting archive
  - Downloading composer/xdebug-handler (3.0.3)
  - Installing composer/xdebug-handler (3.0.3): Extracting archive
  - Downloading justinrainbow/json-schema (v5.2.13)
  - Installing justinrainbow/json-schema (v5.2.13): Extracting archive
  - Downloading psr/container (1.1.1)
  - Installing psr/container (1.1.1): Extracting archive
  - Downloading psr/log (1.1.4)
  - Installing psr/log (1.1.4): Extracting archive
  - Downloading react/promise (v3.0.0)
  - Installing react/promise (v3.0.0): Extracting archive
  - Downloading seld/jsonlint (1.10.0)
  - Installing seld/jsonlint (1.10.0): Extracting archive
  - Downloading seld/phar-utils (1.2.1)
  - Installing seld/phar-utils (1.2.1): Extracting archive
  - Downloading seld/signal-handler (2.0.2)
  - Installing seld/signal-handler (2.0.2): Extracting archive
  - Downloading symfony/console (v5.4.28)
  - Installing symfony/console (v5.4.28): Extracting archive
  - Downloading symfony/deprecation-contracts (v2.5.2)
  - Installing symfony/deprecation-contracts (v2.5.2): Extracting archive
  - Downloading symfony/filesystem (v5.4.25)
  - Installing symfony/filesystem (v5.4.25): Extracting archive
  - Downloading symfony/finder (v5.4.27)
  - Installing symfony/finder (v5.4.27): Extracting archive
  - Downloading symfony/polyfill-ctype (v1.28.0)
  - Installing symfony/polyfill-ctype (v1.28.0): Extracting archive
  - Downloading symfony/polyfill-intl-grapheme (v1.28.0)
  - Installing symfony/polyfill-intl-grapheme (v1.28.0): Extracting archive
  - Downloading symfony/polyfill-intl-normalizer (v1.28.0)
  - Installing symfony/polyfill-intl-normalizer (v1.28.0): Extracting archive
  - Downloading symfony/polyfill-mbstring (v1.28.0)
  - Installing symfony/polyfill-mbstring (v1.28.0): Extracting archive
  - Downloading symfony/polyfill-php73 (v1.28.0)
  - Installing symfony/polyfill-php73 (v1.28.0): Extracting archive
  - Downloading symfony/polyfill-php80 (v1.28.0)
  - Installing symfony/polyfill-php80 (v1.28.0): Extracting archive
  - Downloading symfony/polyfill-php81 (v1.28.0)
  - Installing symfony/polyfill-php81 (v1.28.0): Extracting archive
  - Downloading symfony/process (v5.4.28)
  - Installing symfony/process (v5.4.28): Extracting archive
  - Downloading symfony/service-contracts (v2.5.2)
  - Installing symfony/service-contracts (v2.5.2): Extracting archive
  - Downloading symfony/string (v5.4.29)
  - Installing symfony/string (v5.4.29): Extracting archive
Local repository has been successfully created in /build/source/repository
Finished composerRepositoryBuildHook
running tests
Executing composerRepositoryCheckHook
./composer.json is valid
Finished composerRepositoryCheckHook
installing
Executing composerRepositoryInstallHook
Finished composerRepositoryInstallHook
post-installation fixup
shrinking RPATHs of ELF executables and libraries in /nix/store/9x7lac7k2d0z9kacn43k8iy2nh21v9bc-composer-2.6.4-composer-repository
checking for references to /build/ in /nix/store/9x7lac7k2d0z9kacn43k8iy2nh21v9bc-composer-2.6.4-composer-repository...
error: hash mismatch in fixed-output derivation '/nix/store/bdkwnh8nlx20b58p8sr6j6f4xwwzfl4h-composer-2.6.4-composer-repository.drv':
         specified: sha256-S6LprixkLIbD+qqvg+eYjWsDe+jFl9NO1qWztWYKPXs=
            got:    sha256-yYlzCUJl/jPGaX+WA6D0iQJsrdHlcZr1CgjCpQsHtvU=
error: 1 dependencies of derivation '/nix/store/fmak867mqjpqca9aw627h2cyy344906s-composer-2.6.4.drv' failed to build

Additional context
cat /home/daniels/.nix-defexpr/channels/nixpkgs/.git-revision
0396d3b0fb7f62ddc79a506ad3e6124f01d2ed0a

Notify maintainers
@aanderse, @drupol, @etu, @globin, @Ma27, @talyz
Metadata
Please run nix-shell -p nix-info --run "nix-info -m" and paste the result.
[user@system:~]$ nix-shell -p nix-info --run "nix-info -m"
 - system: `"x86_64-linux"`
 - host os: `Linux 5.4.0-163-generic, Ubuntu, 20.04.6 LTS (Focal Fossa), nobuild`
 - multi-user?: `no`
 - sandbox: `yes`
 - version: `nix-env (Nix) 2.17.0`
 - channels(daniels): `"home-manager, nixpkgs, phps"`
 - nixpkgs: `/home/daniels/.nix-defexpr/channels/nixpkgs`

Thanks for the report, this was fixed yesterday in https://github.com/NixOS/nixpkgs/pull/258281

Thanks for already fixing the issue. I still don't have a proper overview of when something will arrive through nix-channel --update. I'll just wait and give it a try from time to time.

@DanielSiepmann https://nixpk.gs/pr-tracker.html?pr=258281 may be helpful for this :slightly_smiling_face:

If you're using nixpkgs-unstable, it should be there now, I just received the notification.

I do, the channel status still shows the old commit hash and nix-channel --update still resolves to the broken version. While the PR tracker shows a checkmark for nixpkgs-unstable. I guess I need to wait until the build results are cached, from what I understand.
Thanks of course for the awesome improvements by allowing to use composer within builders.

Try: rm -rf ~/.cache/nix ;)

I wasn't aware of that. But still the same git revision, even https://status.nixos.org/ showing a newer one.
Maybe some cache in between. The status also showed the old one for me some minutes ago, but now says it was changed 36 minutes ago. But no hurry, I can wait. Still curious what's holding back my system to fetch the latest state.
date; rm -rf ~/.cache/nix; nix-channel --update; cat ~/.nix-defexpr/channels/nixpkgs/.git-revision
Mo 2. Okt 08:43:49 CEST 2023
unpacking channels...
0396d3b0fb7f62ddc79a506ad3e6124f01d2ed0a

Try the --refresh flag in your command line ?

I don't use channel with nix, I only use flakes. I completely forgot how to refresh their caches...

nix shell --refresh nixpkgs#php82Packages.composer works, but I don't use flakes yet. Couldn't find anything corresponding for channels. But as mentioned before: That's not too important. Will give it a try from time to time and use the old state until then.
Thanks for your help and passion.


Add option for rendering escaped JSON as-is

For something like this, I would expect to see the escaping correctly (as jq does it).
➜ echo '{"foo": "\""}' | jq
{
  "foo": "\""
}

However, this library shows the following

Can we have a configuration option for that?

Good catch.. escaped chars should be displayed accordingly as standard behaviour. Gonna mark this as a bug - will work on it once I get a moment.

This is fixed with https://github.com/zerodevx/svelte-json-view/releases/tag/v1.0.8. Thanks for raising this issue!

Thank you!


Fix Typo in README

Changed --start_index to --start-index for fetch_papers.py, in README under the Processing Pipeline heading.

ty!


Generate a consistent map order for Python and JS

Constant map values are stored internally as a map of pointers so their
iteration order is determined by pointer comparison. The written order of map
entries in generate code is therefore not deterministic and can result in
unexpected diffs across multiple thrift compiler runs.
This change is a coarse attempt to preserve the original key ordering (as
parsed from the original Thrift IDL file) for the Python and JS code
generators.

LGTM. I would just make note that the order is determined by input order.


The -ho parameter

Description
[Enter feedback here]
The -ho parameter in the dotnet new command doesn't seem to work, I am using version 8.0.303 of the dotnet tool
Page URL
https://learn.microsoft.com/en-us/aspnet/core/blazor/security/webassembly/hosted-with-microsoft-entra-id?view=aspnetcore-7.0
Content source URL
https://github.com/dotnet/AspNetCore.Docs/blob/main/aspnetcore/blazor/security/webassembly/hosted-with-microsoft-entra-id.md
Document ID
46ac86e5-52ba-d8a5-149d-b2f5eb439bab
Article author
@guardrex

Hello @snoekiede ... The hosted Blazor WebAssembly template was dropped for 8.0; so when using the 8.0 SDK, you need to also set the framework option ...
dotnet new blazorwasm -f net7.0 -ho

This would be difficult for us to cover in current release articles. We assume that devs understand that the current SDK only supports the current framework release.
What I'll do to try and address this is update this issue to make it for the Tooling article, where I can include a section that explains setting the framework, either via the .NET CLI or VS, for prior framework release features.
Leave this issue open. It will close automatically later when the PR merges.


Typescript Unable to resolve signature of parameter of decorator in vscode

I'm getting the error when I'm decorating the class in nestjs service.
I'm using typescript 4.9.4
The Typescript is compiling without errors, and I'm getting this problem only in VSCode.
Unable to resolve signature of parameter decorator when called as an expression.
  Argument of type 'undefined' is not assignable to parameter of type 'string | symbol'.ts(1239)

My tsconfig
{
  "compilerOptions": {
    "module": "commonjs",
    "declaration": false,
    "removeComments": true,
    "strictNullChecks": true,
    "emitDecoratorMetadata": true,
    "experimentalDecorators": true,
    "allowSyntheticDefaultImports": true,
    "target": "ES2020",
    "sourceMap": true,
    "outDir": "./dist",
    "baseUrl": "./",
    "incremental": true,
    "skipLibCheck": true,
  }
}

My Class
export class AuthService {
  private readonly logger = new Logger('AuthService');
  constructor(
    private readonly jwtService: JwtService,
    private readonly prisma: PrismaService,
    private readonly passwordService: PasswordService,
    private readonly configService: ConfigService,
    private readonly twilioService: TwilioService,
    private readonly userService: UsersService,
    @InjectQueue('nest-worker') private nestWorkerQueue: Queue,
    @InjectQueue('mailsend') private mailSend: Queue,
    @Inject(CACHE_MANAGER) protected readonly cacheManager: Cache,
    private readonly mailerService: MailService
  ) {}

I tried reinstalling typescript and removing node modules, but the problem persists.

so the problem is JavaScript and TypeScript Nightly extension in VSCODE, when disabled the problem is gone.

https://github.com/microsoft/vscode-typescript-next/issues/72

This happened to me. And as @luluhoc said, it is likely you have enabled the  JavaScript and TypeScript Nightly extension in vscode, but I didn't disable it to fix this. Just select the typescript version you're using so vscode know what you're using. In your case is 4.9.4.
To make sure you are using<EMAIL_ADDRESS>Open a JavaScript or TypeScript file in VS Code.
In the VS Code command palette, run the TypeScript: Select TypeScript version command.
Make sure you have Use Workspace version selected.

@wayn3r Thanks, run TypeScript: Select TypeScript version and it worked for me. ✌

This happened to me. And as you said, it is the JavaScript and TypeScript Nightly extension in vscode, but I didn't disable it to fix this. Just select the typescript version you're using so vscode know what you're using. In your case is 4.9.4.
To make sure you are using<EMAIL_ADDRESS>Open a JavaScript or TypeScript file in VS Code.
In the VS Code command palette, run the TypeScript: Select TypeScript version command. Make sure you have Use Workspace version selected.

Thanks!! you saved my day 🙌

To expedite the triage process, we need everyone to follow the issue template and instructions.
When you clicked "Create New Issue", the issue form was pre-populated with a template and some instructions. We need you to read those instructions completely, follow them, and then fill in all the fields in that template.
We are not able to assist with issues that don't follow the template instructions as they represent a significantly larger amount of work compared to issues which are correctly specified. Thank you for understanding.

Thanks for the solution bro;)

Thank you @izakharov !

This happened to me. And as you said, it is the JavaScript and TypeScript Nightly extension in vscode, but I didn't disable it to fix this. Just select the typescript version you're using so vscode know what you're using. In your case is 4.9.4.
To make sure you are using<EMAIL_ADDRESS>Open a JavaScript or TypeScript file in VS Code.
In the VS Code command palette, run the TypeScript: Select TypeScript version command. Make sure you have Use Workspace version selected.

That definitely saved my day 👍 Thank you! @izakharov

This happened to me. And as you said, it is the JavaScript and TypeScript Nightly extension in vscode, but I didn't disable it to fix this. Just select the typescript version you're using so vscode know what you're using. In your case is 4.9.4.
To make sure you are using<EMAIL_ADDRESS>Open a JavaScript or TypeScript file in VS Code.
In the VS Code command palette, run the TypeScript: Select TypeScript version command. Make sure you have Use Workspace version selected.

@wayn3r Thanks!! 👍👍

the issue form was pre-populated with a template and some instructions. We need you to read those instructions completely, follow them, and then fill in all the fields in that template.
We are not able to assist with issues that don't follow the template instructions as they represent a significantly larger amount of work compared to issues which are correctly

@wayn3r You Rock.

The underlying issue is still not fixed though, and it might come as a problem for someone who need to use TypeScript 5.0+. @luluhoc can you open a new issue following the issue template?

It's showing the same error to me
TS1239: Unable to resolve signature of parameter decorator when called as an expression.
Argument of type 'undefined' is not assignable to parameter of type 'string | symbol'.

Something to do with the new decorators I suppose.
I am also seeing this issue when trying to upgrade to TS5.
We are using experimental decorators.

Another missing functionality are parameter decorators. These are decorators with which method or constructor parameters can be decorated. This is a feature used by libraries like Angular, Nest.js, or type-graphql. As of shortly before the TypeScript 5 release, there are no separate proposals for this and no implementation in TypeScript. Because of this, Angular will not yet switch to the new decorators, but will continue using the experimental decorators, since the dependency injection feature is built on this pattern.

https://devblogs.microsoft.com/typescript/announcing-typescript-5-0/#more-accurate-type-checking-for-parameter-decorators-in-constructors-under-experimentaldecorators

This happened to me. And as you said, it is the JavaScript and TypeScript Nightly extension in vscode, but I didn't disable it to fix this. Just select the typescript version you're using so vscode know what you're using. In your case is 4.9.4.
To make sure you are using<EMAIL_ADDRESS>Open a JavaScript or TypeScript file in VS Code.
In the VS Code command palette, run the TypeScript: Select TypeScript version command. Make sure you have Use Workspace version selected.

It worked for me too. Thanks man!

Hi, thanks for the fix.
One thing I don't understand though is the fact that I already had this line "typescript.tsdk": node_modules/typescript/lib" in my project settings but it was not taken into account.
Isn't it a bug ?

It happens to me even though I don't use JavaScript and TypeScript Nightly extension. Try do disable all extensions that I have, still does not work.
My ts version is "typescript": "~4.6.3"
Code that cause issue
@Inject(forwardRef(() => UsersService))

A coworker of mine fixed it by changing the version of Typescript in vscode.

I added "experimentalDecorators": true to my compilerOptions in tsconfig.json. Worked with VSCodes typescript version 5.0.4

I tried all the options, but it doesn't work

@GareginAv, it doesn't work for me too. But I was import the @Query from wrong path.

Now it is correct and works for me.

I'm experiencing the same issue, it's seems like a bug in decorators from 5.0. I'm having this error specifically with the tsyringe decorators

This happened to me. And as you said, it is the JavaScript and TypeScript Nightly extension in vscode, but I didn't disable it to fix this. Just select the typescript version you're using so vscode know what you're using. In your case is 4.9.4.
To make sure you are using<EMAIL_ADDRESS>Open a JavaScript or TypeScript file in VS Code.
In the VS Code command palette, run the TypeScript: Select TypeScript version command. Make sure you have Use Workspace version selected.

I love u bro

if the above didn't solve your problem completely then check out this from Stackoverflow, it was really helpful
https://stackoverflow.com/questions/38271273/experimental-decorators-warning-in-typescript-compilation

If you are getting this warning while making a typegoose model, add these three options to your next.config.json.
    "strictPropertyInitialization": false,
    "emitDecoratorMetadata": true,
    "experimentalDecorators": true,

@wayn3r, TypeScript: Select TypeScript version works for me, Thank you Bro!

I was still getting the error Experimental support for decorators is a feature that is subject to change in a future release. Set the 'experimentalDecorators' option in your 'tsconfig' or 'jsconfig' to remove this warning.ts(1219) for an @NgModule() decorator even after TypeScript: Select TypeScript version got rid of the initial error.
What finally worked was setting
{
   "js/ts.implicitProjectConfig.experimentalDecorators": true
}

in VSCode's settings.json

Although VS Code is a great editor for TypeScript projects, it needs a kick every now and again. Often, without warning, certain files cause it to freak out and complain. Mostly the fix seems to be to save and close all open files, then open tsconfig.json. After that you should be able to re-open the offending file without error. If it doesn't work, lather, rinse, and repeat.
If your tsconfig.json specifies its source files using the files array, IntelliSense will only function correctly if the file in question is referenced such that VS Code can find it by traversing the input file tree.
Edit: The 'reload window' command (added ages ago now) should solve this problem once and for all.

I have faced the same issue today, the fix was just reloading the Typescript server
CMD + SHIFT + P then choose TypeScript: Restart TS Server

If @wayn3r solution didn't solve your problem, you may want to check your tsconfig.json (which should already have "experimentalDecorators": true) and make sure you have the following:
{
  "include": [
    "src/**/*.ts",
  ]
}

Thank you very much!!

I added "experimentalDecorators": true to my compilerOptions in tsconfig.json. Worked with VSCodes typescript version 5.0.4

yep,this works for me.The document here:https://www.typescriptlang.org/tsconfig/#experimentalDecorators

Although VS Code is a great editor for TypeScript projects, it needs a kick every now and again. Often, without warning, certain files cause it to freak out and complain. Mostly the fix seems to be to save and close all open files, then open tsconfig.json. After that you should be able to re-open the offending file without error. If it doesn't work, lather, rinse, and repeat.
If your tsconfig.json specifies its source files using the files array, IntelliSense will only function correctly if the file in question is referenced such that VS Code can find it by traversing the input file tree.
Edit: The 'reload window' command (added ages ago now) should solve this problem once and for all.

I tried all the above in vain; this is what finally worked for me. ty.

This save my entire day !!!


user12986714: Watch justnobz.com

user12986714 requests the watch of the watch_keyword justnobz\.com. See the MS search here and the Stack Exchange search here.

justnobz\.com has been seen in 1 true positive, 0 false positives, and 0 NAAs.

Approved by Makyen in Charcoal HQ


new 'postProcess' option

This option is usefull for more controlling of output result. It can solve some problems of legacy code.

Thanks

Published v3.2.0, but renamed this to processOutput


Office 365 Groups rebranding

Please change references to Office 365 Groups to Microsoft 365 Groups. These changes need to be made before Sep 2020.
Thanks!

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

ID: 24c25353-cfb3-811c-a970-2a04678eff6e
Version Independent ID: 145d404a-f7ed-17f6-79a6-0204ab7ee70b
Content: Create or edit a dynamic group and get status - Azure AD
Content Source: articles/active-directory/users-groups-roles/groups-create-rule.md
Service: active-directory
Sub-service: users-groups-roles
GitHub Login: @curtand
Microsoft Alias: curtand

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

@rarajase
I have created a PR to update the documentation and will now close out this issue. Please allow some time for the changes to reflect and if you don't see the document update, please let me know.
I will be more than happy to re-open this issue and look into what happened.
Thank you for your time and patience!

Thanks
From: James Tran - MSFT<EMAIL_ADDRESS>Sent: Monday, August 10, 2020 1:28 PM
To: MicrosoftDocs/azure-docs<EMAIL_ADDRESS>Cc: Ramya Rajasekhar<EMAIL_ADDRESS>Mention<EMAIL_ADDRESS>Subject: Re: [MicrosoftDocs/azure-docs] Office 365 Groups rebranding (#60587)
@rarajasehttps://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Frarajase&data=02|01|Ramya.Rajasekhar%40microsoft.com|1f0b3fda3ba84df5dd6e08d83d6be35c|72f988bf86f141af91ab2d7cd011db47|1|0|637326880866774496&sdata=k5qOCjoDddGg5TzLaXOqA4Q5GcOuBcvvx6vX3mh7lqs%3D&reserved=0
I have created a PR to update the documentation and will now close out this issue. Please allow some time for the changes to reflect and if you don't see the document update, please let me know.
I will be more than happy to re-open this issue and look into what happened.
Thank you for your time and patience!
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHubhttps://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2FMicrosoftDocs%2Fazure-docs%2Fissues%2F60587%23issuecomment-671573090&data=02|01|Ramya.Rajasekhar%40microsoft.com|1f0b3fda3ba84df5dd6e08d83d6be35c|72f988bf86f141af91ab2d7cd011db47|1|0|637326880866774496&sdata=IGTN7RNLDutJSHQleRib8aQLlbTOaLPbk335yzpz8Jg%3D&reserved=0, or unsubscribehttps://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fnotifications%2Funsubscribe-auth%2FAPPL4Q7LPAGEO76IMIUVDBLSABJ5HANCNFSM4P2E3ZDQ&data=02|01|Ramya.Rajasekhar%40microsoft.com|1f0b3fda3ba84df5dd6e08d83d6be35c|72f988bf86f141af91ab2d7cd011db47|1|0|637326880866784492&sdata=LHLofT16MvrXIwPY33dvOL3nJrbKxEBtbAJKcy5MPKE%3D&reserved=0.


Microphone/camera detection

I primarily use Aware to make sure that I'm getting up from my desk once an hour, and it's perfect for when I'm writing code and using my machine. The only place it falls short is in meetings - often I'm not touching my keyboard and mouse if I'm on a Zoom call, which means the timer will reset.
Is there any way to detect if either the microphone is being actively used or if the camera is on? I understand if this is not possible as it might require access to the microphone/camera permissions which could be a privacy issue. As a fallback, is it possible to detect if an application is full-screen and not reset the timer if so? (though I can see this causing other issues with video playback/screensavers etc.)

Yes, I've definitely ran into this myself. I was hoping for some kind of API to detect video playing on screen, but no such thing appears to exist. Trying to access the microphone or camera APIs in this way would surely be a Mac App Store rejection, so that's not a direction I'd like to take. Totally okay if you want to fork the project and built a variant that does this for your own personal use.
I will be keeping on eye on macOS updates for APIs that could potentially solve this issue! Thanks for writing in.


Select widget inside List widget crashing

Bug
What is the current behavior?
I've got a List widget with a Select widget as the field:
- label: "Tags"
 name: "tags"
 widget: "list"
 field:
   - label: "Tag"
     name: "tag"
     widget: "select"
     options: [
       '11 Plus','A-Level Results','API','Accounting','Analytics','Business Management','CRM','Compare','Edtech',
       'Education','Exam','Features','Grammar Schools','Internship','Language Learning',
       'Managing a tutoring agency','Marketing','Mobile','National Tutoring Conference','Newsletter',
       'Online Tutoring','Open Source','Oxbridge Admissions','Recruitment','SEO','SaaS','Sales',
       'Small Business','Small business','Starting a business','Startup','Stripe','Teaching',
       'Technology','Testimonial','TutorCruncher','Tutoring','User Experience','VAT'
     ]

It renders like so:

Which I presume is wrong? The standard drop down renders properly when not in a List widget.
The field that should be a Select here renders as a text field, and when I input two letters (or add one and delete one), I get an error in the console (in ListControl.js:156)
Uncaught TypeError: t.getObjectValue(...).set is not a function
    at ListControl.js:156
    at onChange (EditorControl.js:68)
    at onChange (StringControl.js:30)
    at Object.s (react-dom.production.min.js:25)
    at Object.invokeGuardedCallback (react-dom.production.min.js:24)
    at Object.invokeGuardedCallbackAndCatchFirstError (react-dom.production.min.js:24)
    at p (react-dom.production.min.js:29)
    at v (react-dom.production.min.js:31)
    at y (react-dom.production.min.js:31)
    at Array.forEach (<anonymous>)

I'm using Jekyll, Netlify CMS version 1.2.2 and I've tried Chrome and Firefox on Ubuntu and Windows.
I seem unable to find an example of this on someone's site working, so if anyone can point me towards that I'd be happy to take a look.

This is a bug with our handling of field (as opposed to fields). For now, would using fields work for you? Same config, literally just adding an "s", even though you're only using one field.

Can I claim this one?

@brianlmacdonald all yours!


Bugs in Folding Augmentation

@kwcckw I found some bugs in folding.py, can you take a look?
Bugs

If image is less than 10x10, fold_y_shift_min and fold_y_shift_max in folding.py will become 0 after multiplication by a number in (0.1,0.2) due to the int cast, which makes fold_y_shift on the following line fail trying to generate a random from an empty range. This can be resolved by restricting images to be a minimum of 10x10.
It seems like fold_y_shift is sometimes 0 for similar reasons, which makes the call to img_warped[:-fold_y_shift ,:,:] on line 158 fail. It tries to take an empty slice of the array using :-fold_y_shift, which makes the img_fuse[cys:cye,cxs:cxe,:] call on that same line fail with a ValueError: could not broadcast input array from shape (0,14,3) into shape (95,14,3) (for example - the real numbers are different every time, but the first value of the triple is always 0 because no elements were selected by the array slice.)
An OpenCV error occurs in four_point_transform(), but I haven't been able to track down why yet.  You can make the first two bugs appear very reliably by setting xdim and ydim to numbers less than 10.
For easy testing you can run for i in {1..20}; do pytest test_folding_augmentation.py; done;

Thanks, i will test it again the patch it in the next update.

I merged PR #57 which seems to work fine and not throw bugs 1 and 2 above, but also we now only test with images larger than 30x30.
However , we are still getting an error in some runs of Folding.

I merged PR #57 which seems to work fine and not throw bugs 1 and 2 above, but also we now only test with images larger than 30x30.
However , we are still getting an error in some runs of Folding.

Thanks for testing it out . I couldn't get a similar error but I'm getting a different error instead. Could you try again to replace the apply_folding function with this and check whether you facing error with image size < 30 and >1?
# Apply perspective transform 2 times and get single folding effect
def apply_folding(self, img, ysize, xsize, gradient_width, gradient_height, fold_noise):

    min_fold_x = min(np.ceil(gradient_width[0] * xsize),xsize).astype('int')
    max_fold_x = min(np.ceil(gradient_width[1] * xsize),xsize).astype('int')
    fold_width_one_side = int(random.randint(min_fold_x, max_fold_x)/2)      # folding width from left to center of folding, or from right to center of folding

    # test for valid folding center line
    if (xsize-fold_width_one_side-1) < (fold_width_one_side+1):
        print("Folding augmentation is not applied, please increase image size")
        return img
    fold_x = random.randint(fold_width_one_side+1, xsize-fold_width_one_side-1) # center of folding

    fold_y_shift_min = min(np.ceil(gradient_height[0] * ysize),ysize).astype('int')
    fold_y_shift_max = min(np.ceil(gradient_height[1] * ysize),ysize).astype('int')
    fold_y_shift = random.randint(fold_y_shift_min, fold_y_shift_max) # y distortion in folding (support positive y value for now)

    # test for valid folding width and folding distortion
    if (fold_width_one_side != 0) and (fold_y_shift !=0) :
        img_fold_l = self.warp_fold_left_side(img, ysize, fold_noise, fold_x, fold_width_one_side, fold_y_shift)
        img_fold_r = self.warp_fold_right_side(img_fold_l, ysize, fold_noise, fold_x, fold_width_one_side, fold_y_shift)
        return img_fold_r
    else:
        if (fold_width_one_side != 0):
            print("Folding augmentation is not applied, please increase gradient width or image size")
        else:
            print("Folding augmentation is not applied, please increase gradient height or image size")
        return img


fix content resize when drawer opens

to reproduce, just go to https://berrydashboard.io/free/dashboard/default toggle device emulation and select a small phone, as  you open and close the sidebar you can see the <Main> component padding changing

This seems to be no longer replicable. Please reopen if found.


Numbers persist as strings in editor

Current Behavior
{
        "id": "9bada70124b1211d",
        "type": "myNumberNode",
        "z": "5383b174.2d1768",
        "name": "",
        "myNumber":"123",
}

Expected Behavior
{
        "id": "9bada70124b1211d",
        "type": "myNumberNode",
        "z": "5383b174.2d1768",
        "name": "",
        "myNumber":123,
}

Steps To Reproduce
Create a node in a javascript project, add a number property with default as so:
myNumber: { value: 122,  validate: RED.validators.number() }

add text input

         My Number
        <input type="text" id="node-input-myNumber" placeholder="122">

build and deploy
change the number to 123 in text field
Example flow
Node must be created programmatically then added to flow. Single node will suffice
Environment

Node-RED version:  2.1.3
Node.js version: 14
npm version: Alpine Linux v3.11 (Docker image)
Platform/OS: Alpine Linux
Browser: firefox (ubuntu)

This is normal behaviour - HTML input fields return strings. HTML doesn't have a concept of types

@dceejay thanks for the quick answer! Is there no way to cast an input field as number in node-red? So for all number input fields, they need to be converted to numbers in the backend?

try using type="number" rather than type="text" in the html

No - that is just a hint to the browser to show a spinner or not... the return is still a string.

@kcarlson - well parseFloat or parseInt will usually do the job as long as you also check it's a valid number afterwards.

Gotcha. I was thinking more along the lines of adding the type property to the default object definition so that it could be parsed client side before being synced with the backend (if i've understood correctly)

Adding some more type information to the node properties is not a bad idea - it would enable further validation checks.
I have some broader thoughts on this I'll put down in a proposal in the https://github.com/node-red/designs discussion forum.


[@elastic/ecs-winston-format] Missing triple-beam dependency

loggers/winston/index.js file use triple-beam dependency that's not included in package.json dependencies:
...
const { MESSAGE } = require('triple-beam')
...

Steps to reproduce

yarn init -y
yarn set version berry
yarn add @elastic/ecs-winston-format winston
Create index.js file

const winston = require('winston')
const ecsFormat = require('@elastic/ecs-winston-format')

const logger = winston.createLogger({
  level: 'info',
  format: ecsFormat(),
  transports: [
    new winston.transports.Console()
  ]
})

logger.info('test1')

yarn node index

C:\test-ecs-winston\.pnp.cjs:10188
    throw firstError;
    ^

Error: @elastic/ecs-winston-format tried to access triple-beam, but it isn't declared in its dependencies; this makes the require call ambiguous and unsound.

Required package: triple-beam
Required by: @elastic/ecs-winston-format@npm:1.3.1 (via C:\test-ecs-winston\.yarn\cache\@elastic-ecs-winston-format-npm-1.3.1-8fc543f859-49a7767c64.zip\node_modules\@elastic\ecs-winston-format\)

Require stack:
- C:\test-ecs-winston\.yarn\cache\<EMAIL_ADDRESS>- C:\test-ecs-winston\index.js
    at Function.external_module_.Module._resolveFilename (C:\test-ecs-winston\.pnp.cjs:10187:55)
    at Function.external_module_.Module._load (C:\test-ecs-winston\.pnp.cjs:9986:48)
    at Module.require (internal/modules/cjs/loader.js:957:19)
    at require (internal/modules/cjs/helpers.js:88:18)
    at Object.<anonymous> (C:\test-ecs-winston\.yarn\cache\@elastic-ecs-winston-format-npm-1.3.1-8fc543f859-49a7767c64.zip\node_modules\@elastic\ecs-winston-format\index.js:20:21)
    at Module._compile (internal/modules/cjs/loader.js:1068:30)
    at Object.Module._extensions..js (internal/modules/cjs/loader.js:1097:10)
    at Module.load (internal/modules/cjs/loader.js:933:32)
    at Function.external_module_.Module._load (C:\test-ecs-winston\.pnp.cjs:10036:14)
    at Module.require (internal/modules/cjs/loader.js:957:19)

Workaround
Add in .yarnrc.yml:
packageExtensions:
  '@elastic/ecs-winston-format@*':
    dependencies:
      triple-beam: '*'

Run yarn.

resolved this?

No, it's still not fixed.
PS: I added a workaraund in initial comment.

Sorry all about not being on this. You are correct, of course.
This package had been relying on npm flat/hoisted install behaviour where installing winston would install triple-beam in a place where @elastic/ecs-winston-format could get it.


ci: add conventional-commits.yml

:tada: This PR is included in version 1.0.0-alpha.1 :tada:
The release is available on GitHub release
Your semantic-release bot :package::rocket:


solve all remaining 195 lint errors.

The puzzle 67-bb15b6a5 from #67 has to be resolved:
https://github.com/ammaratef45/Attendance/blob/b7cf719a727f8994adf0d4e4942f48e010118f7a/attendance/lib/loginPage/login_page_view.dart#L6-L6
The puzzle was created by Ammar Atef on 30-Apr-19.
If you have any technical questions, don't ask me, submit new tickets instead. The task will be "done" when the problem is fixed and the text of the puzzle is removed from the source code. Here is more about PDD and about me.

@ammaratef45/z please, pay attention to this issue

The job #80 assigned to @ammaratef45/z, here is why; the budget is 30 minutes, see §4; please, read §8 and §9; if the task is not clear, read this and this; there will be no monetary reward for this job

Manual assignment of issues is discouraged, see §19: -5 point(s) just awarded to @ammaratef45/z

The puzzle 67-bb15b6a5 has disappeared from the source code, that's why I closed this issue.

Job was finished in 4 hours, bonus for fast delivery is possible (see §36)

The job #80 is now out of scope

Order was finished: +35 point(s) just awarded to @ammaratef45/z


Installer and binary wrapper

Need to implement installer and binary wrapper for Java. Can make our own (I have code for the wrapper) or use one of the third-party ones.

maybe we should check how well it will work with java 11 javafx first? Can you give some info about third party ones?

This doesn't matter, it'll work with any java we choose. This is low-priority stuff anyway.


Environmental Setup for EdX data processing

The edX student course analytics pipeline presumes that a user will know or maintain a usable environment for maintaining project data (both processing inputs and outputs). The user should only need to know two things are the start of the project: 1, where the edX data package has been extracted for use, and 2, where the output files for the pipeline processes should be saved.
The proposed issue fix would update script edX-0-courseStructureMeta to allow the user to identify path for data (edX data package) and an output path for analysis. The script will then be used to specified output path to create a set of generic directories (e.g. analysis, student_logs, student_logs_pro, userlists and networks) that other in the pipeline will also leverage.

Updated script edX-0-courseStructureMeta.R script to add directory creation loop. Adds directories: "userlists","studentevents","studentevents_processed","networks","analysis" to workspace when starting a new project. These will be referenced in later scripts.


Dummy variables question

Hi Developers,
I am new to Lime and I really enjoy it.
I have a question regarding the use of dummy variables.
If I have not misunderstood the method, Lime builds a dataframe with the neighbourhood of a given test point in order to construct the local approximation of the model. At this stage dummy variables are kept constant or are they allowed to vary like any other continuous or categorical feature?
I have the feeling that for some models it would be very nice to keep fixed some variables and study the local behaviour of the other ones.
Thank you very much in advance for any reply.
All my best,
Matteo.

Hey, sorry for the delay in responding.
If by dummy variables you mean indicator variables, they are perturbed like any other feature.
If you want to keep certain features fixed while you want to understand other features, you can do it by hiding those features from LIME and writing a wrapper for the predict function that includes them, something like
def new_predict_fn(data):
  data = np.hstack((data, other_features))
  return predict_fn(data)


[WIP][ENG-4048] Keyboard Navigation Skip Link - Main Home

Ticket: https://openscience.atlassian.net/browse/ENG-4048
Feature flag: feature/a11y-skip-link-home

Purpose
The purpose of these changes is to improve keyboard navigation functionality within the OSF. It is a hybridization between visually hidden elements that will not obscure or impair visual users but to alert users to more optimized handling of navigation within the web app.
Summary of Changes
-Skip link with a menu of keyboard options
-JS event listeners to handle keyboard user input
-Updated translation strings for VoiceOver
-Removal of distracting or irrelevant technical terminology
-Use of headers to landmark app sections for improved speed
Screenshot(s): TBU

Side Effects
These changes will initiate UI changes on the OSF Home page upon keyboard tab press. Testing should ensure that the element properly obscures itself when unfocusing of the element.
QA Notes
-Does the skip link render?
-Does it obscure upon closing? Does it re-open at the start?
-Do all translation strings pronounce letters properly? Did any words or abbreviations sound odd?
-Does the skip link render on multiple SR settings? On browser only, on OS level?

Pull Request Test Coverage Report for Build<PHONE_NUMBER>

2 of 164 (1.22%)  changed or added relevant lines in 3 files are covered.
16 unchanged lines in 6 files lost coverage.
Overall coverage decreased (-1.2%) to 70.078%

Changes Missing Coverage
Covered Lines
Changed/Added Lines
%

app/home/-components/testimonials/component.ts
1
2
50.0%

lib/osf-components/addon/components/carousel/component.ts
0
75
0.0%

app/home/controller.ts
1
87
1.15%

Files with Coverage Reduction
New Missed Lines
%

lib/registries/addon/drafts/draft/route.ts
1
92.31%

lib/registries/addon/edit-revision/route.ts
2
92.86%

lib/registries/addon/drafts/draft/controller.ts
3
66.67%

lib/registries/addon/edit-revision/controller.ts
3
63.64%

lib/registries/addon/edit-revision/revision-manager.ts
3
89.84%

lib/registries/addon/drafts/draft/draft-registration-manager.ts
4
90.91%

Totals

Change from base Build<PHONE_NUMBER>:
-1.2%

Covered Lines:
5435

Relevant Lines:
7523

💛  - Coveralls


URI path filtering support in cluster stats API

Description
Introduced new URI paths  to fetch specific information from _cluster/stats without having to fetch the entire stats that will benefit the API's performance. Motivation from https://github.com/opensearch-project/OpenSearch/pull/14447. The _cluster/stats API primarily comprises of nodes stats and indices stats, with the new URI paths, properties of these stats objects are flattened and clients can request for specific information.
URI paths introduced:
/_cluster/stats/{metric}/nodes/{nodeId}
/_cluster/stats/{metric}/{index_metric}/nodes/{nodeId}

Metrics supported:
os, process, jvm, fs, plugins, ingest, network_types, discovery_types, packaging_types, indices, _all
Index Metrics supported:
shards, docs, store , field_data, query_cache, completion, segments, analysis, mappings, _all
Example REST request formats to exclude the information for
Request for fetching specific index stats properties only:
localhost:9200/_cluster/stats/indices/docs,segments/nodes/_all

localhost:9200/_cluster/stats/indices/mappings,analysis/nodes/_all

Request for fetching specific node stats properties only:
localhost:9200/_cluster/stats/os,jvm/nodes/_all

Request for fetching specific node stats and indices state properties:
localhost:9200/_cluster/stats/indices,os,jvm/shards/nodes/_all

localhost:9200/_cluster/stats/_all/shards/nodes/_all

If a random metric is requested, exception is thrown:
$ curl localhost:9200/_cluster/stats/os,mappings,jvm,analysis,addssf/nodes/_all
{"error":{"root_cause":[{"type":"illegal_argument_exception","reason":"request [/_cluster/stats/os,mappings,jvm,analysis,addssf/nodes/_all] contains unrecognized metrics: [addssf], [analysis], [mappings]"}],"type":"illegal_argument_exception","reason":"request [/_cluster/stats/os,mappings,jvm,analysis,addssf/nodes/_all] contains unrecognized metrics: [addssf], [analysis], [mappings]"},"status":400}%

Related Issues
Resolves #[Issue number to be closed when this PR is merged]

Check List

[ ] Functionality includes testing.
[ ] API changes companion pull request created, if applicable.
[ ] Public documentation issue/PR created, if applicable.

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

Please take a look at these failing tests in build
[org.opensearch.search.nested.SimpleNestedIT.testCheckFixedBitSetCache {p0={"search.concurrent_segment_search.enabled":"true"}}](https://build.ci.opensearch.org/job/gradle-check/48900/testReport/junit/org.opensearch.search.nested/SimpleNestedIT/testCheckFixedBitSetCache__p0___search_concurrent_segment_search_enabled___true___/)
[org.opensearch.search.nested.SimpleNestedIT.testCheckFixedBitSetCache {p0={"search.concurrent_segment_search.enabled":"false"}}](https://build.ci.opensearch.org/job/gradle-check/48900/testReport/junit/org.opensearch.search.nested/SimpleNestedIT/testCheckFixedBitSetCache__p0___search_concurrent_segment_search_enabled___false___/)

Please take a look at these failing tests in build
[org.opensearch.search.nested.SimpleNestedIT.testCheckFixedBitSetCache {p0={"search.concurrent_segment_search.enabled":"true"}}](https://build.ci.opensearch.org/job/gradle-check/48900/testReport/junit/org.opensearch.search.nested/SimpleNestedIT/testCheckFixedBitSetCache__p0___search_concurrent_segment_search_enabled___true___/)
[org.opensearch.search.nested.SimpleNestedIT.testCheckFixedBitSetCache {p0={"search.concurrent_segment_search.enabled":"false"}}](https://build.ci.opensearch.org/job/gradle-check/48900/testReport/junit/org.opensearch.search.nested/SimpleNestedIT/testCheckFixedBitSetCache__p0___search_concurrent_segment_search_enabled___false___/)

Addressed it as part of https://github.com/opensearch-project/OpenSearch/pull/15938/commits/1e78e1e06f77f4932a885de2126d2b84834d3dd5

❌ Gradle check result for f9ae78c: FAILURE
Please examine the workflow log, locate, and copy-paste the failure(s) below, then iterate to green. Is the failure a flaky test unrelated to your change?

Flaky test org.opensearch.cluster.SpecificClusterManagerNodesIT.testElectOnlyBetweenClusterManagerNodes

❌ Gradle check result for c3634ac: FAILURE
Please examine the workflow log, locate, and copy-paste the failure(s) below, then iterate to green. Is the failure a flaky test unrelated to your change?

Failed tests:
org.opensearch.remotestore.RemoteStorePinnedTimestampsGarbageCollectionIT.testLiveIndexWithPinnedTimestamps
org.opensearch.snapshots.ConcurrentSnapshotsV2IT.testDeleteAndCloneV1WhileV2CreateOngoing

❌ Gradle check result for 3e3e78c: FAILURE
Please examine the workflow log, locate, and copy-paste the failure(s) below, then iterate to green. Is the failure a flaky test unrelated to your change?

Flaky test
https://github.com/opensearch-project/OpenSearch/issues/16199
https://github.com/opensearch-project/OpenSearch/issues/16015

@SwethaGuptha Thanks for the changes.

Could you add sample responses for certain filters for better understanding?
Could you open documentation issue for the change, and help with the documentation content?

Few comments on the testing side:
1. Lets add a rest-api-spec test to ensure the different rest paths are tested?

I added integration test case RestClusterStatsAction to validate different rest paths, is this some different kind of test case?

2. Can we added a mixed cluster test case to ensure rolling upgrades continue to work seamlessly?

Can you please share a reference for this kind of test?

@SwethaGuptha Thanks for the changes.
1. Could you add sample responses for certain filters for better understanding?

Updated PR description with sample responses.

2. Could you open documentation issue for the change, and help with the documentation content?

Doc issue: https://github.com/opensearch-project/documentation-website/issues/8527

❌ Gradle check result for da52aeb: FAILURE
Please examine the workflow log, locate, and copy-paste the failure(s) below, then iterate to green. Is the failure a flaky test unrelated to your change?

Flaky test: https://github.com/opensearch-project/OpenSearch/issues/15812

@SwethaGuptha please add changelog for it

we will need documentation PR and Rest API spec PR as well for this change.

we will need documentation PR and Rest API spec PR as well for this change.

Raised PR for both of them.


[Question] How to horizontal scroll wide Tables in Info Panel

Description [describe your questions]
I have a very wide table with many fields. Since upgrading to the latest version (.23->.24) my tables do not have the horizontal scroll anymore and the table is cut off.
Perhaps I missed a new config?
Example code [If you have any code info]
Others [screenshots or other info]
👇 cut off columns below:

I've been adding custom html to the head to address this in certain areas of my app similar to this:
#pjax-container > section.content > div > div > div.box-body > table {
    min-width: 100px !important;
}

#pjax-container > section.content > div > div > div.box-body {
    overflow-x: auto;
}

modify DataTableAttribute and TableAttribute，calculate the fieldwidth then set new minwidth.


[Unmute] NumberFieldTypeTests

After merging Lucene 9.1 NumberFieldTypeTests is now passing. Unmute test.
closes #2063

1.3 was bumped to 1.3.1 in #2509 but bwcVersions wasn't updated with the 1.3.1 version. Opened #2532 to remedy
FAILURE: Build failed with an exception.

* What went wrong:
Execution failed for task ':distribution:bwc:staged:buildBwcLinuxTar'.
> Building 1.3.0 didn't generate expected file /var/CITOOL/workflow/OpenSearch_CI/PR_Checks/Gradle_Check/search/distribution/bwc/staged/build/bwc/checkout-1.3/distribution/archives/linux-tar/build/distributions/opensearch-min-1.3.0-SNAPSHOT-linux-x64.tar.gz

First occurrence of this. Unable to reproduce so opened #2538. Refiring
./gradlew ':server:internalClusterTest' --tests "org.opensearch.discovery.SnapshotDisruptionIT.testDisruptionAfterFinalization" -Dtests.seed=9C7BEE2E6A009383 -Dtests.security.manager=true -Dtests.jvm.argline="-XX:TieredStopAtLevel=1 -XX:ReservedCodeCacheSize=64m" -Dtests.locale=ar-QA -Dtests.timezone=America/Tijuana -Druntime.java=17

org.opensearch.discovery.SnapshotDisruptionIT > testDisruptionAfterFinalization FAILED
    java.util.concurrent.TimeoutException: Timeout waiting for task.
        at org.opensearch.common.util.concurrent.BaseFuture$Sync.get(BaseFuture.java:252)
        at org.opensearch.common.util.concurrent.BaseFuture.get(BaseFuture.java:77)
        at org.opensearch.snapshots.AbstractSnapshotIntegTestCase.awaitClusterState(AbstractSnapshotIntegTestCase.java:552)
        at org.opensearch.snapshots.AbstractSnapshotIntegTestCase.awaitNoMoreRunningOperations(AbstractSnapshotIntegTestCase.java:519)
        at org.opensearch.discovery.SnapshotDisruptionIT.testDisruptionAfterFinalization(SnapshotDisruptionIT.java:137)

    MasterNotDiscoveredException[NotMasterException[no longer master. source: [remove repository cleanup task [test-repo][4]]]]; nested: NotMasterException[no longer master. source: [remove repository cleanup task [test-repo][4]]];

le uggh.. another #1828

start gradle check


Occasionally, deadlocks occur when the main thread and asynchronous thread initialize the same Feign Api call

When I initiate a remote call for initialization using a Feign API in the main thread, and perform similar operations using the same Feign API in an asynchronous thread in the initialization of another class.
I am following org.springframework.cloud.context.named.NamedContextFactory#getContext obtains the lock, there will be a call to the context.refresh(), which in turn will contain another lock. At certain times, due to uncontrollable sequence, the main thread may experience a deadlock and fail to start.
Sample
@Component
Class A {
   @PostConstruct
   public void init() {
       // Feign Api remote call
   }
}

@Component
Class B {
   @PostConstruct
   public void init() {
       Executors.newSingleThreadExecutor().execute(() -> {
             // Same feign API calls
       });
   }
}

Hello @dongfangding, I was not able to reproduce it. Could you provide more details, such as a thread dump?

If you would like us to look at this issue, please provide the requested information. If the information is not provided within the next 7 days this issue will be closed.

Closing due to lack of requested feedback. If you would like us to look at this issue, please provide the requested information and we will re-open the issue.


fix(icon): icons with theme not showing

this.context is always undefined in constructor method.
That causes icons not showing with theme.
Use context argument instead.
fix #2832

@craftzdog Can you look at why the merge is failing?

There is no conflict to merge.

Can someone look into the Travis CI system setup as to why this error is happening?

react-native: command not found

This is causing errors with the checks, and I'm guessing the failed checks is keeping someone from actually wanting to merge into master. This was submitted almost 2 weeks ago!

why not merged? Looks like the CI issue has been solved.

@craftzdog Can you resolve the conflicts for us to merge this

@shivrajkumar Sure, done!

@shivrajkumar Sure, done!

Please merge it.

Please merge it.


Emacs (emacs-mac) on macos goes haywire

Hi,
After working in Emacs for a short period of time, the dreaded rainbow ball comes up and CPU usage goes to over 95%. I'd love to help debug this issue, but would need some pointers on how to approach this.
Note that this does not occur when running in the terminal (emacs -nw)
Further info:

Apple M1 Max
64 GB
macOS 14.5
Emacs 29.1 (brew install emacs-mac  ==> emacs-29.1-mac-10.0)

Report after Force Quit
emacs-yabai-report.txt.gz

Emacs is not well behaved in MacOS so I'd recommend emacs-plus instead https://github.com/d12frosted/homebrew-emacs-plus.
Something like
brew install emacs-plus --with-native-comp

Hi,
brew tap d12frosted/emacs-plus
brew install emacs-plus@30 --with-native-comp

seems to resolve the issue, indeed. Thanks for the help!
Wkr,
Renald


return group result as bson if options.raw

back-ports options.raw support for the group() function

@andrasq With the release of driver version 3.1.0, we no longer actively support features in the 2.x line.

Closed because the 2.x driver is officially EOL


New Bluesky user

Title
Jake Hildreth
Bluesky profile url
https://bsky.app/profile/dotdot.horse
Twitter profile (url or username)
dotdotdotHorse
Category
security
Type
None

Hello, I tried to solve the issue.
This is what I did:
Added Jake Hildreth's profile with the provided information, including Bluesky profile, Twitter handle, category, and type.
You can review changes in this commit: https://github.com/lattaai12/merill-bluesky-763/commit/3f2ee86fc8e519d91f801d01143c3284077898c8.

[!CAUTION]
Disclaimer: The commit was created by Latta AI and you should never copy paste this code before you check the correctness of generated code. Solution might not be complete, you should use this code as an inspiration only.

This issue was tried to solve for free by Latta AI - https://latta.ai/ourmission
If you no longer want Latta AI to attempt solving issues on your repository, you can block this account.


Instantiate user first thing in recv_loop

I'm here trying to instantiate UserConnection when starting the recv_loop. This should hopefully eliminate a bunch of if user checks, and generally simplify the code in recv_loop.
Currently one test failing. Not yet sure why
Fixes #47

Fixes #47
PR currently has mypy issues to be fixed.

@Akuli My last commit tries to silence some mypy issues. However, there has to be a better way to do this. It's complaining about since I made user.nick, user.user_mask, & user.user_name to Optional.
I still get the following mypy output:
❯ mypy --strict *.py
commands.py:35: error: Incompatible types in assignment (expression has type "Optional[str]", variable has type "str")
commands.py:42: error: Argument 1 to "put" of "Queue" has incompatible type "Tuple[str, Optional[str]]"; expected "Union[Tuple[str, str], Tuple[None, None]]"
commands.py:79: error: Argument 1 to "put" of "Queue" has incompatible type "Tuple[str, Optional[str]]"; expected "Union[Tuple[str, str], Tuple[None, None]]"
commands.py:162: error: Argument 1 to "put" of "Queue" has incompatible type "Tuple[str, Optional[str]]"; expected "Union[Tuple[str, str], Tuple[None, None]]"
Found 4 errors in 1 file (checked 3 source files)

How would you go about fixing this?

user.nick probably shouldn't be optional. You need nicks everywhere, and assert user.nick is not None is messy. In fact, this is exactly what we wanted to avoid in #13 when we decided to instantiate the user object later. In https://github.com/ThePhilgrim/MantaTail/issues/61#issuecomment-1012536177, I meant that the username can be optional even if the nick isn't.

@Akuli Okay, so in other words, do you think I should instantiate UserConnection in the if command == "nick check?
Or is it better to keep it as it was in the beginning?
It's slightly weird, however, to let mypy dictate how the code should be written here. I mean, before nick & user is given, the client should be completely blocked by the error not registered which means that there will never be a check where nick is None.
The code in this PR lets the user QUIT properly even if they are not registered. I also get rid of all the redundant if user checks.

do you think I should instantiate UserConnection in the if command == "nick check?

This is what I had in mind. But:

It's slightly weird, however, to let mypy dictate how the code should be written here. I mean, before nick & user is given, the client should be completely blocked by the error not registered which means that there will never be a check where nick is None.

This makes sense, and apart from mypy, just instantiating the user object early (as the PR currently does) simplifies other things, like closing the socket in finally:. To silence the mypy warnings once and for all, you can do something like this:
class UserConnection:
    # Tell mypy that there is a nick attribute, and it's never None
    nick: str

    def __init__(self, unrelated arguments):
        # Set other attributes. DO NOT set self.nick.
        ...

def recv_loop():
    user = UserConnection(...)
    ...
    while True:
        ...
        if blah blah:
            user.nick = something

Now mypy thinks that there is a nick attribute, because we told it so. But in fact, a newly instantiated user object doesn't have a nick attribute. It is set later when the user sends NICK for the first time. If you need to check whether it exists, you can use hasattr(user, "nick").

@Akuli I am back in Italy and wont have the possibility to be on IRC as much as I've been the last month. We can continue communicating here on github. Is there any way to communicate here if I have any questions unrelated to a PR or a project issue?
For example, yesterday I tried to connect to mantatail (running on my computer) from my girlfriend's computer via netcat to see if it can be run via two computers on the same network. Ifconfig on my computer says my IP on the network is <IP_ADDRESS>. However, when I run nc <IP_ADDRESS> 6667 from my girlfriend's terminal, nothing happens (with mantatail running ofc).
How would I make it possible to connect via several computers to mantatail running on my computer?
Also, since this question is not related to this PR, is there a place on github we can discuss general things like this?

is there a place on github we can discuss general things like this?

There is GitHub discussions. You can enable it somewhere in the settings.
Continuing off-topic, a few possible debugging steps for nc'ing from another computer:

Try to ping the computer: ping <IP_ADDRESS>. If the computers find each other with that IP, it should print a bunch of stuff; try ping localhost or ping google.com to see what it should look like. If nothing is printed, or you get error messages, make sure the computers are connected to the same network (e.g. wifi) and the IP is correct. It could also be that if it's hotel wifi or something, it blocks computers from connecting to each other.
If pinging worked, try passing -v (verbose) to netcat, as in nc -v <IP_ADDRESS> 6667.

I don't know much about networking details though, so if those steps don't help, I don't know how to troubleshoot this further.

@Akuli After setting nick: str & user_mask: str in class UserConnection, several "if self.nick" checks fail. For example:
❯ python3 -m mantatail
Mantatail running (<IP_ADDRESS>:6667)
Exception in thread Thread-1:
Exception in thread Thread-2:
Traceback (most recent call last):
Traceback (most recent call last):
  File<EMAIL_ADDRESS>line 973, in _bootstrap_inner
  File<EMAIL_ADDRESS>line 973, in _bootstrap_inner
    self.run()
    self.run()
  File<EMAIL_ADDRESS>line 910, in run
  File<EMAIL_ADDRESS>line 910, in run
    self._target(*self._args, **self._kwargs)
  File "/Users/Writing/pthn/mantatail/mantatail.py", line 162, in send_queue_thread
    self._target(*self._args, **self._kwargs)
  File "/Users/Writing/pthn/mantatail/mantatail.py", line 101, in recv_loop
    if not user.nick or not user.user_message:
    if self.nick:
AttributeError: 'UserConnection' object has no attribute 'nick'
AttributeError: 'UserConnection' object has no attribute 'nick'

Code on line 101:
if not user.nick or not user.user_message:
                    if command_lower == "user":
                        user.user_message = args
                        user.user_name = args[0]
                        user.generate_user_mask()

Code on line 162:
if self.nick:
                        self.state.delete_user(self.nick)

This was not an issue when the __init__ method had self.nick = None.
Is there a better way to silence mypy regarding this?

@Akuli I think this is ready for a final review!

Latest commit fixes #61

@Akuli Would you please have another look at this?

I only read the diff of new changes since my previous review. Looks good!


fix: better ISO8601 compliance

Using: https://github.com/googleapis/java-bigquery/blob/main/google-cloud-bigquery/src/main/java/com/google/cloud/bigquery/QueryParameterValue.java#L79 we can construct something similar here, to allow for better ISO8601 compliance.
Fixes #1580

@geirsagberg with
final DateTimeFormatter formatter =
      new DateTimeFormatterBuilder()
          .parseLenient()
          .append(DateTimeFormatter.ISO_LOCAL_DATE)
          .optionalStart()
          .appendLiteral('T')
          .optionalEnd()
          .optionalStart()
          .appendLiteral(' ')
          .optionalEnd()
          .appendValue(HOUR_OF_DAY, 2)
          .appendLiteral(':')
          .appendValue(MINUTE_OF_HOUR, 2)
          .optionalStart()
          .appendLiteral(':')
          .appendValue(SECOND_OF_MINUTE, 2)
          .optionalStart()
          .appendFraction(NANO_OF_SECOND, 6, 9, true)
          .optionalStart()
          .appendOffset("+HHMM", "+00:00")
          .optionalEnd()
          .optionalStart()
          .appendLiteral('Z')
          .optionalEnd()
          .toFormatter()
          .withZone(ZoneOffset.UTC);

All the below work fine:
    final var t1 =  formatter.parse("2022-02-06 07:24:47.84");
    final var t2 =  formatter.parse("2022-02-06T07:24:47.84Z");
    final var t3 = formatter.parse("2022-02-06T07:24:47.84");
    final var t4 = formatter.parse("2022-02-06T07:24:47.8400010");

Hi, with this change, do you still need ##1582 ?

Also, could you run mvn com.coveo:fmt-maven-plugin:format to fix the lint issues?

@stephaniewang526, no this fixes both and yes apologies linted.

Hi, with this change, do you still need #1582 ?

No, this covers both. Thanks! I thought it best to fix one and then the other.

Also, could you run mvn com.coveo:fmt-maven-plugin:format to fix the lint issues?

This has been done. Apologies.

Okay thanks for confirming. Closing #1582 as it is no longer needed.

@stephaniewang526 unit tests added.

@stephaniewang526 unit tests added.

Thanks! However, I am observing an integration test failure:
java.lang.AssertionError: expected:<1644132287840> but was:<1644132287840000>
	at org.junit.Assert.fail(Assert.java:89)
	at org.junit.Assert.failNotEquals(Assert.java:835)
	at org.junit.Assert.assertEquals(Assert.java:647)
	at org.junit.Assert.assertEquals(Assert.java:633)
	at com.google.cloud.bigquery.storage.v1.it.ITBigQueryWriteManualClientTest.testJsonStreamWriterWithDefaultStream(ITBigQueryWriteManualClientTest.java:459)

Could you please have a look?

@stephaniewang526 unit tests added.

Thanks! However, I am observing an integration test failure:
java.lang.AssertionError: expected:<1644132287840> but was:<1644132287840000>
	at org.junit.Assert.fail(Assert.java:89)
	at org.junit.Assert.failNotEquals(Assert.java:835)
	at org.junit.Assert.assertEquals(Assert.java:647)
	at org.junit.Assert.assertEquals(Assert.java:633)
	at com.google.cloud.bigquery.storage.v1.it.ITBigQueryWriteManualClientTest.testJsonStreamWriterWithDefaultStream(ITBigQueryWriteManualClientTest.java:459)

Could you please have a look?

Yes, this has been fixed. Looks like it was still using the old method of converting the timestamp

@stephaniewang526 I have also rebased

@stephaniewang526 is there any more required for this pr?


Generation is broken for view function without returns

I noticed that the code generation is broken whenever an abi that contains an immutable function without returns is provided.
The build_runner execution returns the following error:
Bad state: No element
I tracked down the problem and it should be in the _bodyForImmutable function of the generator.dart file, around line 250. The case with outputs.length == 0 is not managed.

@robgsupsi, can you send me an abi example?

For sure, here it is:
[     {         "inputs": [             {                 "internalType": "uint256",                 "name": "tokenId",                 "type": "uint256"             },             {                 "internalType": "string",                 "name": "serviceType",                 "type": "string"             },             {                 "internalType": "string",                 "name": "serviceId",                 "type": "string"             }         ],         "name": "verifyServiceOwnership",         "outputs": [],         "stateMutability": "view",         "type": "function"     } ]

@robgsupsi, It seems to me that creating view functions without a return value is pointless, can you tell us more about your use case?

I do not agree that it is pointless. Let's say you want to have a function that contains logic to check some conditions and possibly launches different kind of exceptions depending on the error. If no exception is raised then all the checks are passed and the functions finished the execution correctly. That would not require the view function to return a value.

@inveker I see your point, but imagine that your isRequired method that just contain some rules is called by another Smart Contract, not inheriting from this one. In that case you cannot make it internal. Although it is true that it will never be called directly by the dart code, the generation still breaks since it is not yet supported (but allowed by the language).

@robgsupsi, New version released - 0.0.6, please check

@inveker thanks a lot, I just tested it now with one of my contracts and the generation now works fine.


Can't use file cache

zanzara by default caching Closures into arrays in memory. But if you using file cache, Closures can't be serialized.

Thank you for the report. It makes sense, closures aren't serializable. I think we are going to use opis/closure to serialize them.

Thank you!

Fixed in 0.6.0


errors when installing from cocoapods

I having a few errors while installing from cocoapods

Hello, @rahulbbit
Please check the version, Swift 4 (pod version 3.x), Swift 3 (pod version 2.x), Swift 2.3 (pod version 1.x)

the pod version is 3.0.0

I am facing same error, I have install pod version 3.0.0 using swift 4.0. Can you please help how to resolve.

@nidhig-sminq Maybe this can help you.
https://stackoverflow.com/questions/45198857/how-to-build-a-xcode-9-project-with-swift-4-0-using-pods-in-swift-3


[Package Issue]: Google.AndroidStudio 2<IP_ADDRESS> endless reinstalls

Please confirm these before moving forward

[X] I have searched for my issue and not found a work-in-progress/duplicate/resolved issue.
[X] I have not been informed if the issue is resolved in a preview version of the winget client.

Category of the issue
Installation issue.
Brief description of your issue
After updating to AndroidStudio version 2<IP_ADDRESS> from 2<IP_ADDRESS>, winget still insists that 2<IP_ADDRESS> is still installed.
My theory is that this is because the DisplayVersion in registry is simply "2021.3".
https://github.com/justinkb/winget-pkgs/commit/172ee58f923917aa01167402407c7648e9e70a6d is my candidate fix, but I have no way of validating whether this works as intended without setting up a winget repository (the issue can't be tested with a simple winget validate --manifest . and winget install --manifest . combo), and that is too much of a hassle
Steps to reproduce
Install/update Google.AndroidStudio to 2<IP_ADDRESS>
Try a "winget upgrade --all"
Actual behavior
Keeps installing 2<IP_ADDRESS> endlessly
Expected behavior
I expect winget to be aware it has already been updated
Environment
[winget --info]
Windows Package Manager v1.3.2691
Copyright (c) Microsoft Corporation. All rights reserved.

Windows: Windows.Desktop v10.0.22621.675
System Architecture: X64
Package: Microsoft.DesktopAppInstaller v1.18.2691.0

Logs: %LOCALAPPDATA%\Packages\Microsoft.DesktopAppInstaller_8wekyb3d8bbwe\LocalState\DiagOutputDir

Links
---------------------------------------------------------------------------
Privacy Statement   https://aka.ms/winget-privacy
License Agreement   https://aka.ms/winget-license
Third Party Notices https://aka.ms/winget-3rdPartyNotice
Homepage            https://aka.ms/winget
Windows Store Terms https://www.microsoft.com/en-us/storedocs/terms-of-sale

Screenshots and Logs
No response

By the looks of it, https://github.com/microsoft/winget-cli/issues/2366 is the cause here

https://github.com/justinkb/winget-pkgs/commit/172ee58f923917aa01167402407c7648e9e70a6d is my candidate fix

Duplicate DisplayVersion entries cause the pipeline to fail - https://github.com/jedieaston/Add-ARPEntries/issues/9

I think as a temporary measure, we could make it so only the latest version has a direct DisplayVersion correlation. This would consist of:

Removing 2<IP_ADDRESS>
Replacing 2<IP_ADDRESS> with 2021.3, but containing the installer for 2<IP_ADDRESS>

it's not a critical issue for me, I'll leave it up to you to decide what you think is best for now. seems like a high priority bug, so hopefully it's fixed soon tho

When a download is big, it's obviously an issue

Can I temporarily fix that in the registry for the currently installed version? I'll do it manually after every update until this is resolved.

Can I temporarily fix that in the registry for the currently installed version? I'll do it manually after every update until this is resolved.

Are you still experiencing an issue @treysis? This should already be resolved

This is now occurring again with 2<IP_ADDRESS> and 2<IP_ADDRESS>. I am also
seeing this again. Presumably the 2<IP_ADDRESS> manifest doesn't do the
version trick
On Thu, Jun 8, 2023, 10:26 AM Russell Banks @.***>
wrote:

Can I temporarily fix that in the registry for the currently installed
version? I'll do it manually after every update until this is resolved.
Are you still experiencing an issue @treysis https://github.com/treysis?
This should already be resolved
—
Reply to this email directly, view it on GitHub
https://github.com/microsoft/winget-pkgs/issues/86933#issuecomment-1582131010,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AABVHKFEF3UDHI3TVP7I453XKGED5ANCNFSM6AAAAAARSFNOCU
.
You are receiving this because you authored the thread.Message ID:
@.***>

Had a quick look, the .19 and .20 installer manifests both fail the include
"2022.2" DisplayVersion specifiers. Both will need to be amended
On Thu, Jun 8, 2023, 11:55 AM Paul Mulders @.***> wrote:

This is now occurring again with 2<IP_ADDRESS> and 2<IP_ADDRESS>. I am also
seeing this again. Presumably the 2<IP_ADDRESS> manifest doesn't do the
version trick
On Thu, Jun 8, 2023, 10:26 AM Russell Banks @.***>
wrote:

Can I temporarily fix that in the registry for the currently installed
version? I'll do it manually after every update until this is resolved.
Are you still experiencing an issue @treysis https://github.com/treysis?
This should already be resolved
—
Reply to this email directly, view it on GitHub
https://github.com/microsoft/winget-pkgs/issues/86933#issuecomment-1582131010,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AABVHKFEF3UDHI3TVP7I453XKGED5ANCNFSM6AAAAAARSFNOCU
.
You are receiving this because you authored the thread.Message ID:
@.***>

"2022.2" DisplayVersion specifiers

If multiple consecutive versions have the same DisplayVersion, only the earliest one needs that entry. Otherwise, the pipelines fail and have broken before because of this.

then winget must have some bug, because this issue has definitely come back with 2<IP_ADDRESS> onward to .19 and .20

Maybe it's because the last version with the DisplayVersion field was major version 2022.1, while 2<IP_ADDRESS>, .19, and .20 are all major version 2022.2?

that's not it: https://github.com/microsoft/winget-pkgs/blob/0bf4a822b70e611025ad7b5a61530f53dbc13b6e/manifests/g/Google/AndroidStudio/2<IP_ADDRESS>/Google.AndroidStudio.installer.yaml#L17

Then maybe the latest version needs this entry (as this was the case for 2<IP_ADDRESS>)? Or, the fix never worked in the first place.

Any chance adding "DisplayVersion" to 1.20 and remove it from 1.18?

@russellbanks what compelling reason is there even to keep old minor version manifests in the repository? Is there any real point?


How to add metrics to IHttpClientFactory?

Is their a way to add metrics for IHttpClientFactory like https://github.com/prometheus-net/prometheus-net#ihttpclientfactory-metrics

@salarzobir We don't have this right now, but we can create extension. PR is welcome :)

I will investigate implementation in prometheus-net, will be a new package something like Prometheus.Client.HttpClient with Microsoft.Extensions.Http dependency


replace built-in assert with own CHECK macro

It removes the difference between R-specific library and ordinary one.
Refer to #2837.

@jameslamb

Why is LightGBM::Log required for this?

Because Json11 uses its own namespace
https://github.com/microsoft/LightGBM/blob/0341906c45666ccaeca92ee5fbee17fa22282470/include/LightGBM/utils/json11.h#L59
and Log is defined in LightGBM namespace
https://github.com/microsoft/LightGBM/blob/0341906c45666ccaeca92ee5fbee17fa22282470/include/LightGBM/utils/log.h#L24
Refer to https://stackoverflow.com/a/11791202.

@jameslamb

Why is LightGBM::Log required for this?

Because Json11 uses its own namespace
https://github.com/microsoft/LightGBM/blob/0341906c45666ccaeca92ee5fbee17fa22282470/include/LightGBM/utils/json11.h#L59
and Log is defined in LightGBM namespace
https://github.com/microsoft/LightGBM/blob/0341906c45666ccaeca92ee5fbee17fa22282470/include/LightGBM/utils/log.h#L24
Refer to https://stackoverflow.com/a/11791202.

oooooooh wild, ok! thanks for the explanation

@chivee or @guolinke could you take a look and let us know if you are ok with this?
Thanks!


Add github workflow

Is your feature request related to a problem? Please describe.
Add github workflow
Describe the solution you'd like
Add github workflow
Describe alternatives you've considered
Add github workflow
Additional context
No response

Hi, assign this to me.

Can you tell me if you "on push" event alone is sufficient for you in yml file? also on push do you want to build and deploy or just build ?
Is there any source to contact you ?


Ability to avoid refresh on start?

I would like to avoid automatic refresh() call on the update worker start: https://github.com/jshmrtn/currency-conversion/blob/master/lib/currency_conversion/update_worker.ex#L22
The use-case is that I wish to keep a given currency exchange same during the day. If the worker gets restarted it would change the exchange rates during the day. My work-flow would be to update the worker with a manual refresh() call (this is possible).
At last I would also need a function that can load the data I provide (rather then getting them from the service provider) and use them on start. Do you think we can support this in the library? I could make an attempt on adding this functionality.
If you think there is a better way to provide same-day rates I would welcome any suggestions.

@strzibny Thanks for the suggestions.

I would like to avoid automatic refresh() call on the update worker start

The initial refresh is needed so that any data is available at all. Otherwise there would be no data at all and the app could not do any conversions.
Was that the problem you were trying to solve with At last I would also need a function that can load the data I provide?

worker with a manual refresh() call

We could for sure add a manual refresh, that would not be a problem. A PR for that is welcome.

[ ] Expsose refresh/0 function
[ ] Allow :none or nil (or any other naming if you have a better idea) for refresh_interval so that the refresh only happens manually.

We could probably provide a {M, f, [a]} tuple as configuration to load the initial data instead of refresh when refresh_interval is disabled.

Yes, pretty much.
As for refresh_interval would just setting 0 work to disable it? Or does it mean "refresh all the time"?
As for the initial data, could a config for providing a function work? Like seed_on_start: &MyApp.Currencies.import/0

As for refresh_interval would just setting 0 work to disable it? Or does it mean "refresh all the time"?

I would add a specific value to disable it. The number is just not clear on that. I think :manual would be a good value since it is descriptive.

As for the initial data, could a config for providing a function work?

I think that should work fine,
We would need to provide the config option as both an mfa-tuple as well as a captured function. Config providers do not have the same flexibility as regular code does (especially when using releases).

After looking at #12 I am working on getting the initial seed state from a provided configuration. I have one question though. I am not sure how to test it both for the function and refresh ("initial load called" test). If it's in the test.exs configuration as:
use Mix.Config

config :currency_conversion,
  source: CurrencyConversion.Source.Test,
  seed: {CurrencyConversion, :rates, []}

The seed is the provided function for seeding initial data when process starts/restarts.
The load test will then use this function and everything works. Except when I want to test the current behaviour when we do refresh on startup I cannot since the configuration specify the seed param.
Do you maybe have a good way on how to test both startup cases?

@strzibny I have an alternate idea on how to build the whole thing. I would like to implement #9 including more tests and you can rebase on that. This should be a lot simpler I think.

Sounds interesting and I am all ears. Are you getting closer on the implementation side of things? Right now I think I have to put something together fast so I can actually use it in the project I am working on. Any plans to at least move with #12? I can have my own fork until you will have the time to rearchitect with ETS. Then I can switch to your version.

@strzibny I'm working on it right now, should be ready in an hour.

@strzibny Done. You can rebase.
Manual Refresh Interval:
Replace
case refresh(opts) do
  :ok -> {:noreply, opts, refresh_interval}
  {:error, binary} -> {:stop, {:error, binary}}
end

with
case {refresh(opts), refresh_interval} do
  {:ok, :manual} -> {:ok, opts}
  {:ok, _} -> {:ok, opts, refresh_interval}
  {{:error, binary}, _} -> {:stop, {:error, binary}}
end

and add a test with refute_receive :load as in this test:
https://github.com/jshmrtn/currency-conversion/blob/master/test/currency_conversion/update_worker_test.exs#L27
Manual Refresh
Add this:
@impl GenServer
def handle_call(:refresh, _from, opts) do
  refresh_interval = Keyword.get(opts, :refresh_interval, @default_refresh_interval)

  case {refresh(opts), refresh_interval} do
    {:ok, :manual} -> {:reply, :ok, opts}
    {:ok, _} -> {:reply, :ok, opts, refresh_interval}
    {{:error, binary}, :manual} -> {:reply, {:error, binary}, opts}
    {{:error, binary}, _} -> {:reply, {:error, binary}, opts, refresh_interval}
  end
end

@spec refresh_rates(worker_name :: atom()) :: :ok | {:error, string}
def refresh_rates(worker_name \\ __MODULE__) do
  GenServer.call(worker_name, :refresh)
end

Please add a test that the interval was added after a manual refresh when refresh_interval is number and also the opposite. (Inspiration: https://github.com/jshmrtn/currency-conversion/blob/master/test/currency_conversion/update_worker_test.exs#L27)

@strzibny As soon as your PR's about seed & the manual interval are through, I'll release a new major version :)

Ok perfect, thanks for the fast response, appreciate it, I will update the PR.

Tracked further in #20


Storybook port change

React now have fort 4401 as default and Angular 4402. So they don't have same as chlorophyl on 4400.

Removed changeset and now it fails! @splashdust

Removed changeset and now it fails! @splashdust

That's OK in this case, since we don't need the changeset. You can also create an empty changeset to get rid of the check error, but it's not mandatory.


[CircleGraph] Hierarchical rendering

What
May be we could use some form of hierchical rendering of NN files, when it's possible.
To show upper-level features of the graph instead of always rendering the nodes of lowest level.
Intead of rendering NN like this:

may be there is a possibility to render it like:

Why
To make viewing of large neural networks more convenient.

If you are thinking of changing netron based code, I can't accept that.
I do not want to make rebase to upstream hard.

If you are thinking of changing netron based code, I can't accept that. I do not want to make rebase to upstream hard.

ok.


Prefer sp_executesql over sp_prepare

sp_prepare suffers from some poor optimization issues in SQL Server. Modern apps should be using sp_execute.

Might have needed a reference to advocate this.


Use RouteMTU to configure interfaces

Signed-off-by: Andrei Kvapil<EMAIL_ADDRESS>Please ensure your pull request adheres to the following guidelines:

[ ] For first time contributors, read Submitting a pull request
[ ] All code is covered by unit and/or runtime tests where feasible.
[ ] All commits contain a well written commit description including a title,
description and a Fixes: #XXX line if the commit addresses a particular
GitHub issue.
[ ] If your commit description contains a Fixes: <commit-id> tag, then
please add the commit author[s] as reviewer[s] to this issue.
[ ] All commits are signed off. See the section Developer’s Certificate of Origin
[ ] Provide a title or release-note blurb suitable for the release notes.
[ ] Thanks for contributing!

Fixes: https://github.com/cilium/cilium/issues/23711
MTU on veth interfaces now sets correctly according to tunneling mode.

As mentioned in https://github.com/cilium/cilium/issues/23711, I don't think this is a bug.

Hi @kvaps, thanks again for this PR. I understand that you and @squeed are still discussing this one on #23711, what would you like to do here? We could move this to draft while you discuss this approach, or if you would like to proceed still, it looks like this needs a rebase and update to fix the outstanding conflicts.

Hi @youngnick, sure, rebased.
We use this patch to make KubeVirt VMs working with Cilium.
We combined these two amazing technologies in our Kubernetes platform Deckhouse

I think the ideal situation would be if kubevirt could learn about Cilium's route MTU and configure routes inside the VMs with that MTU, since then the kubevirt VMs could also have the correct MTU handling properties, identical to containers.
That said, a configurable option on CNI seems reasonable enough, but we certainly cannot accept this proposal against all devices as this will introduce connectivity breakages for certain paths.

I had converted this to draft, but actually I think it makes sense to just close this PR out since it won't be accepted in the current form. If we need to discuss the solutions further, then we can use https://github.com/cilium/cilium/issues/23711 to continue the discussion. If and when there is a new proposal that addresses the concerns here, feel free to submit a fresh PR with that proposal.
Thanks for your ongoing contributions to Cilium!


Invalid endpoint

I am trying to send UVC commands to a UVC camera to move the pan tilt. So far my code works up to write / sending the commands. I get an error saying invalid endpoint. even though i can debug and see the ep set the bEndpointAddress to 129. Any thoughts? what i am doing wrong here

`import usb.core
import sys
import usb.util
dev = usb.core.find(idVendor=0x2E7E, idProduct=0x0601)
if dev is None:
raise ValueError('Our device is not connected')
else:
print("found")
print("device class is " + str(dev.bDeviceClass) + "   number of device config is "+ str(dev.bNumConfigurations))
for cfg in dev:
sys.stdout.write(str(cfg.bConfigurationValue) + '\n')
for intf in cfg:
    sys.stdout.write('\t' + \
                     str(intf.bInterfaceNumber) + \
                     ',' + \
                     str(intf.bAlternateSetting) + \
                     '\n')
    for ep in intf:
        sys.stdout.write('\t\t' + \
                         str(ep.bEndpointAddress) + \
                         '\n')

cfg = dev[0]
intf = cfg[(0,0)]
ep = intf[0]
dev.set_configuration() # we assume the configuration 5 is the first one
USBSendCommand = '81 01 06 01 VV WW 02 03 FF'
cfg.set()
dev.set_configuration(cfg)
dev.write(129,USBSendCommand)`

Endpoint 129/0x81/0b10000001 is never a valid endpoint to write to:

USB 3.2 Specification (Revision 1.0): Table 9-25: Standard Endpoint Descriptor


Error: read ECONNRESET when resizing image in Storage

I'd like to resize an image stored in Firebase Storage with Firebase Functions.
Based on this example : https://github.com/firebase/functions-samples/blob/master/quickstarts/thumbnails/functions/index.js I try to write a function triggered by a Database event.
Here is the most interesting part of the code :
const gcs = require('@google-cloud/storage')();

...

const bucket = gcs.bucket('...appspot.com');
const originalFilepath = myObject.picture1Url;
const tempFilePath = '/tmp/myThumbnail';

console.log('1');

return bucket
    .file(originalFilepath)
    .download({
        destination: tempFilePath
    })
    .then(() => {

        console.log('2');

    });

Everything looks fine to me. However the code never go to the console.log('2'); and I get this error :
Error: read ECONNRESET
    at exports._errnoException (util.js:1026:11)
    at TCP.onread (net.js:569:26)

Does somebody know what could be the error?
Thank you

I got an econn error with my realtime database function, perhaps my fix could help you debug your issue? (See example of logs occuring after function terminates: https://github.com/firebase/firebase-functions/issues/18#issuecomment-288375709

As @ahaverty said can you make sure you return a Promise correctly in your code. From your snippet your code looks OK though but it's missing some parts of it we can't be sure.

Thank guys, you are right. I did some test and the problem really seems to be a problem with a return.
I don't really understand when I have to return something. I want to do something like this :
exports.myFunction =
    functions
    .database
    .ref('...')
    .onWrite(event => {

        ...

        // Create thumbnails
        createThumbnail(1, ...);
        createThumbnail(2, ...);
        createThumbnail(3, ...);

         ...

        return; // <- Is this necessary ?
    });

function createThumbnail(...) {

    ...

    return bucket
        .file(originalFilepath)
        .download({
            destination: tempFilePath
        })
        .then(() => {

            ...

            // Generate a thumbnail using ImageMagick.
            return spawn('convert', [tempFilePath, '-thumbnail', dimension + 'x' + dimension + '>', tempFilePath])
                .then(() => {

                    ....

                    // Uploading the thumbnail.
                    return bucket.upload(tempFilePath, {
                            destination: thumbnailUrl
                        })
                        .then(() => {

                              ...

                            // Save thumbnailUrl in database
                            return admin.database().ref(...).set(thumbnailUrl);
                        });
                });
        });
}

This code doesn't work. I tried to remove some of these return but either I have a read ECONNRESET or a TimeOut.
If you can give me any advice, I'd be very thankful

YEs the issue is what @ahaverty described.
When you do this:
createThumbnail(1, ...);
createThumbnail(2, ...);
createThumbnail(3, ...);
...
return;

You are starting 3 asynchronous processes but you are returning right away.
Each of these returns a Promise. What you need to do is this instead:
const listOfAsyncJobs = [];
listOfAsyncJobs.push(createThumbnail(1, ...));
listOfAsyncJobs.push(createThumbnail(2, ...));
listOfAsyncJobs.push(createThumbnail(3, ...));
...
return Promise.all(listOfAsyncJobs); // This will ensure we wait for the end of the three aync tasks above.

PS: I'll also reply on your Stack Overflow post.

Thanks a lot. You have saved my day !