ECNIM-710

Type

[x] Bugfix 🐛
[x] New feature 🌈
[ ] Change request 🤓
[ ] Documentation 📚
[x] Tech debt 👩💻

Changes proposed ✔
<EMAIL_ADDRESS>🛠 Breaking changes

Removed the dynamic shipping option from the zIndex property to use the new zIndex tokens in the Sidebar component. (#162 by @juniorconquista)
Removed the dynamic shipping option from the zIndex property to use the new zIndex tokens in the Popover component. (#162 by @juniorconquista)
Removed the dynamic shipping option from the zIndex property to use the new zIndex tokens in the Box component. (#162 by @juniorconquista)
Removed sys and ref prefixes from colors and typrography tokens. (#162 by @juniorconquista)
Removed level- prefix from boxShadow tokens of Box component. (#162 by @juniorconquista)
Changed spacing token separator prefix from , to -. (#162 by @juniorconquista)
Removed the dynamic shipping option from the borderRadius property to use the new shape tokens in the Box component. (#162 by @juniorconquista)
Removed the dynamic shipping option from the borderWidth property to use the new shape tokens in the Box component. (#162 by @juniorconquista)
Usage tokens for sizes have been removed and moved to spacing tokens. (#162 by @juniorconquista)

🎉 New features

Added new zIndex tokens to components. (#162 by @juniorconquista)
Added new spacing tokens to padding, margin and gaps properties of Box component. (#162 by @juniorconquista)

<EMAIL_ADDRESS>🛠 Breaking changes

Removed sys and ref prefixes from colors and typrography tokens. (#162 by @juniorconquista)
Usage tokens for sizes have been removed and moved to spacing tokens. (#162 by @juniorconquista)

🎉 New features

Added new zIndex tokens. (#162 by @juniorconquista)

<EMAIL_ADDRESS>🛠 Breaking changes

Changed the dynamic sending option of the zIndex property to use the zIndex tokens in the Popover component API. (#162 by @juniorconquista)
Changed the dynamic sending option of the zIndex property to use the zIndex tokens in the Sidebar component API. (#162 by @juniorconquista)
Changed the dynamic sending option of the zIndex property to use the zIndex tokens in the Box component API. (#162 by @juniorconquista)
Changed the dynamic sending option of the borderRadius property to use the shape tokens in the Box component API. (#162 by @juniorconquista)
Changed the dynamic sending option of the borderWidth property to use the shape tokens in the Box component API. (#162 by @juniorconquista)
Removed the level- prefix from the boxShadow property of the Box component API. (#162 by @juniorconquista)
Changed the spacing properties to remove the separator from , to - in the Box component API. (#162 by @juniorconquista)

<EMAIL_ADDRESS>🛠 Breaking changes

Changed the dynamic sending option of the zIndex property to use the zIndex tokens in the component API. (#162 by @juniorconquista)
Removed level- prefix from boxShadow component API property. (#162 by @juniorconquista)
Changed spacing properties to remove separator from , to - in component API. (#162 by @juniorconquista)

<EMAIL_ADDRESS>🛠 Breaking changes

Changed the dynamic sending option of the zIndex property to use the zIndex tokens in the component API. (#162 by @juniorconquista)

<EMAIL_ADDRESS>🛠 Breaking changes

Changed the dynamic sending option of the zIndex property to use the zIndex tokens in the component API. (#162 by @juniorconquista)

Codecov Report
Patch coverage: 100.00% and no project coverage change.

Comparison is base (bbb52e9) 99.59% compared to head (a91d2f9) 99.59%.

:exclamation: Your organization is not using the GitHub App Integration. As a result you may experience degraded service beginning May 15th. Please install the Github App Integration for your organization. Read more.
Additional details and impacted files
@@           Coverage Diff           @@
##           master     #162   +/-   ##
=======================================
  Coverage   99.59%   99.59%
=======================================
  Files         269      269
  Lines        1730     1742   +12
  Branches      273      268    -5
=======================================
+ Hits         1723     1735   +12
  Misses          6        6
  Partials        1        1

Impacted Files
Coverage Δ

packages/core/styles/src/index.ts
100.00% <ø> (ø)

...rc/packages/atomic/checkbox/nimbus-checkbox.css.ts
100.00% <ø> (ø)

...ges/atomic/fileUploader/nimbus-fileUploader.css.ts
100.00% <ø> (ø)

...yles/src/packages/atomic/input/nimbus-input.css.ts
100.00% <ø> (ø)

.../src/packages/atomic/popover/nimbus-popover.css.ts
100.00% <ø> (ø)

...yles/src/packages/atomic/radio/nimbus-radio.css.ts
100.00% <ø> (ø)

...es/src/packages/atomic/select/nimbus-select.css.ts
100.00% <ø> (ø)

...e/styles/src/packages/atomic/tag/nimbus-tag.css.ts
100.00% <ø> (ø)

...ges/core/styles/src/packages/atomic/title/index.ts
100.00% <ø> (ø)

...yles/src/packages/atomic/title/nimbus-title.css.ts
100.00% <ø> (ø)

... and 16 more

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Do you have feedback about the report comment? Let us know in this issue.


vscode 扩展商店加载失败

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

VS Code Version:
OS Version:

Steps to Reproduce:

开发者模式下看到的信息
POST https://marketplace.visualstudio.com/_apis/public/gallery/extensionquery net::ERR_CERT_AUTHORITY_INVALID
ERR Error: XHR failed
at w.onerror (request.ts:27:23)

感谢您创建此问题！
然而，由于您没有使用英语，我们很难进行处理。如果可能，请您将此问题描述修改为英文。请您直接编辑此问题，不要提交回复或新问题。
请注意，机器翻译服务通常无法处理用于讨论软件问题所需的技术性语言，所以我们推荐您寻找一位熟悉相关技术的人来协助翻译。
如果您无法做到，没有关系。此问题已经被标记为需要翻译，等待社区成员志愿进行翻译。

Thanks for creating this issue!
Unfortunately, as the description is not in English, it's hard for us to work on. If possible, please edit the original issue to be in English.
In our experience, automatic translation services are not able to handle the technical language needed to effectively communicate about software issues, so we recommend finding a human translator who is familiar with our technology to help.
Otherwise, we have marked this as needing translation and a community member may be able to help out.

Failed to load the extension Store,
This is the message I saw in developer mode. When I was searching in the extension store, the request sent an error.
POST https://marketplace.visualstudio.com/_apis/public/gallery/extensionquery net::ERR_CERT_AUTHORITY_INVALID
ERR Error: XHR failed
at w.onerror (request.ts:27:23)

Please diagnose the root cause of the issue by running the command F1 > Help: Troubleshoot Issue and following the instructions. Once you have done that, please update the issue with the results.
Happy Coding!

This issue has been closed automatically because it needs more information and has not had recent activity. See also our issue reporting guidelines.
Happy Coding!


Update properties and search in glove

I am developing the update capability.
Currently in glove (the visualisation in glossary author based on the idea of rex):

there is the concept of a traversal, this is a new search that contains arrays of nodes and relationships
every subsequent traversal creates a gen.
if a traversal is a created that does not contain any new nodes ore relationships then we do not create a new gen.

therefore the gens are immutable and a node only exists in one gen.
If I do an update node, I cannot use the existing methods as the node will already  exist.
so

updating the node in generation that is was introduced, in this case I loose the state that the node was.
the existing code shows outdates nodes, if a node changed underneath us after we have put it in a gen

At the moment, I see the simplest thing to do is to:

update in place, there is no history or ability to undo,
a traversal still means new nodes on the canvas

The approach could also be used for delete, but for delete node - I think I might need to find all the relationships that refer to the node and delete them, unless they are ignores.
any thoughts @mandy-chessell @cmgrote @planetf1 @sarbull

For server author, I would expect that in a k8s operator environment it's likely we want to prevent any control of servers (start, stop etc) as this conflicts with operator management.
However I believe we do want the ability to create a server document. Maybe even a template (ie deploy time replaceable values).. but that last piece is wip as I need to writeup some of my k8s thoughts more (delayed by release/dependencies)
So it would be good to think of that when designing the server author - ie may be different levels for view/author/manage
Also in k8s (and other deployments) bear in mind there may be replicated servers so the view is more a logical one rather than physical (ie one server is actually deployed across platforms on multiple containers or physical machines), and indeed the relationship between platform and server is managed by the deployer or deployment mechanisms.

@planetf1  Hi Nigel, this is for Glossary author

I have implemented - looks like it works as above.


Add flow counter script for ACLs

Required to investigate ACLs (network policy) impact in the OVS flows number.
Expected output:
$ network-tools ovn-count-flows -l 10 ovnkube-node-6pnpv
Leader pod is ovnkube-master-t679l
NOTE: Every ACL will likely be printed twice, that is expected and means that the number of OVS flows for a given ACL is a sum of all entries with the same name+ids
Number of OVS flows=12 for ACL with name and ids = clusterPortGroup_DefaultDenyMulticastEgress {default-deny-policy-type=Egress}
Number of OVS flows=12 for ACL with name and ids = clusterRtrPortGroup_DefaultAllowMulticastEgress {default-deny-policy-type=Egress}
Number of OVS flows=12 for ACL with name and ids = clusterRtrPortGroup_DefaultAllowMulticastIngress {default-deny-policy-type=Ingress}
Number of OVS flows=12 for ACL with name and ids = clusterRtrPortGroup_DefaultAllowMulticastEgress {default-deny-policy-type=Egress}
Number of OVS flows=12 for ACL with name and ids = clusterPortGroup_DefaultDenyMulticastIngress {default-deny-policy-type=Ingress}
Number of OVS flows=12 for ACL with name and ids = clusterPortGroup_DefaultDenyMulticastEgress {default-deny-policy-type=Egress}
Number of OVS flows=12 for ACL with name and ids = clusterPortGroup_DefaultDenyMulticastIngress {default-deny-policy-type=Ingress}
Number of OVS flows=12 for ACL with name and ids = clusterRtrPortGroup_DefaultAllowMulticastIngress {default-deny-policy-type=Ingress}
Number of OVS flows=1 for ACL with name and ids = [] {}
Number of OVS flows=1 for ACL with name and ids = [] {}
Iterations limit is reached

/label acknowledge-critical-fixes-only


feat: AWS CDK Infrastructure as Code

This PR adds a CDK Toolkit project to the repo.
Creates the full stack of infra required for the project, including:

s3 bucket
dynamodb table
lambda
api gateway
IAM policy

to do:

[ ] reference the correct infra names in the github workflows
[ ] integration test for API

Hi @kartikey-vyas - are you expecting me to merge this PR?

No just leaving it for the others to have a look at before proceeding :)


[TACHYON-672] Fix Eviction and Delete Bug

Changes the worker to master communication to not report a block as removed and then readded when the block is moved. Instead we can just report it as added since the master assumes only one copy of the block is in the worker at a time and will update the metadata instead of appending a new block to it.

LGTM

@gpang  @apc999 please review this PR

+1 LGTM


pyxform installation problem inside python

When  I am trying to install pyxform inside my python code using  below lines:
import pip
pip.main(['install','pyxform','--user','--no-cache-dir'])

Following is the error:
Collecting pyxform
Downloading pyxform-0.10.0-py2.py3-none-any.whl (1.6MB)
Exception:
Traceback (most recent call last):
File "C:\PROGRA~1\QGIS3~1.0\apps\Python36\lib\site-packages\pip\basecommand.py", line 215, in main
status = self.run(options, args)
File "C:\PROGRA~1\QGIS3~1.0\apps\Python36\lib\site-packages\pip\commands\install.py", line 324, in run
requirement_set.prepare_files(finder)
File "C:\PROGRA~1\QGIS3~1.0\apps\Python36\lib\site-packages\pip\req\req_set.py", line 380, in prepare_files
ignore_dependencies=self.ignore_dependencies))
File "C:\PROGRA~1\QGIS3~1.0\apps\Python36\lib\site-packages\pip\req\req_set.py", line 620, in _prepare_file
session=self.session, hashes=hashes)
File "C:\PROGRA~1\QGIS3~1.0\apps\Python36\lib\site-packages\pip\download.py", line 821, in unpack_url
hashes=hashes
File "C:\PROGRA~1\QGIS3~1.0\apps\Python36\lib\site-packages\pip\download.py", line 659, in unpack_http_url
hashes)
File "C:\PROGRA~1\QGIS3~1.0\apps\Python36\lib\site-packages\pip\download.py", line 882, in _download_http_url
_download_url(resp, link, content_file, hashes)
File "C:\PROGRA~1\QGIS3~1.0\apps\Python36\lib\site-packages\pip\download.py", line 585, in _download_url
progress_indicator = DownloadProgressBar(max=total_length).iter
File "C:\PROGRA~1\QGIS3~1.0\apps\Python36\lib\site-packages\pip\utils\ui.py", line 158, in init
super(WindowsMixin, self).init(*args, **kwargs)
File "C:\PROGRA~1\QGIS3~1.0\apps\Python36\lib\site-packages\pip\utils\ui.py", line 82, in init
super(InterruptibleMixin, self).init(*args, **kwargs)
File "C:\PROGRA~1\QGIS3~1.0\apps\Python36\lib\site-packages\pip\utils\ui.py", line 118, in init
super(DownloadProgressMixin, self).init(*args, **kwargs)
File "C:\PROGRA~1\QGIS3~1.0\apps\Python36\lib\site-packages\pip_vendor\progress\helpers.py", line 58, in init
if self.file.isatty() and self.hide_cursor:
AttributeError: 'writeOut' object has no attribute 'isatty'
2

@shivareddyiirs apologies for the silence here. This appears to be an issue with your Python configuration, not one with pyxform. Are you trying to run pyxform from within QGIS? I would try with a standalone Python installation.

Yes I was trying to run pyxform within QGIS


Ensures select element has an accessible name.

Test Environment:
OS: Windows 11
OS version: 23H2 ((OS Build 26052.1000)
Edge Version: 123.0.2380.1 (Official build) stable app, dev channel (64-bit)
Tool: AI for web/ windows
Typedoc version: v0.25.13
Steps to Reproduce:

Open TypeDoc - v0.25.13 in edge browser.
Run accessibility Insights tool and observe the issue.

Actual result:
Select element does not have an accessible name at the theme dropdown.
Expected Result:
Ensures select element has an accessible name.

Fixed with TypeDoc 0.26, which is releasing 2024/06/21


Silent training for xgboost

Hi,
I have Ubuntu 16.04 x64 with Python 3.6.5
I have xgboost version 0.80 with verbose_eval = False in xgb.train
But it still prints
06:44:39] /workspace/src/tree/updater_prune.cc:74: tree pruning end, 1 roots, 10 extra nodes, 0 pruned nodes, max_depth=4
[06:44:39] /workspace/src/tree/updater_prune.cc:74: tree pruning end, 1 roots, 10 extra nodes, 0 pruned nodes, max_depth=4
[06:44:39] /workspace/src/tree/updater_prune.cc:74: tree pruning end, 1 roots, 10 extra nodes, 0 pruned nodes, max_depth=4
[06:44:39] /workspace/src/tree/updater_prune.cc:74: tree pruning end, 1 roots, 10 extra nodes, 0 pruned nodes, max_depth=4
[06:44:39] /workspace/src/tree/updater_prune.cc:74: tree pruning end, 1 roots, 10 extra nodes, 0 pruned nodes, max_depth=4
[06:44:39] /workspace/src/tree/updater_prune.cc:74: tree pruning end, 1 roots, 10 extra nodes, 0 pruned nodes, max_depth=4
messages like this. How could i stop this?

You should set silent=1 in training parameter.


Add memory pool and register memory regions only once.

This pull request contains changes to improve the number of IOPS:

Register memory regions only once with the RDMA NIC (save resources and time on the hardware)
Add a memory pool out of which send and receive buffers can be allocated
Allow allocations either from the regular heap or from hugepages

In addition

Send and receive pipeline length are now independent.
Version increased to 1.4, because client and server endpoint group has a different signature

Note: This PR and the corresponding Crail PR have to merged together

DaRPC uses now a very simple memory pool, which implements a simple interface.
Most of the comments were about the memory allocator. I fixed most of them, but finally removed the memory allocator.
Please have a look at the newest version.

Addressed Jonas' comments and uploaded new version of the code to the PR. Please have a look. Thanks Adrian


invalid selection of promptchoice dialog for fb throwing error

The attached error is thrown (and currently sent as a message to the user) when a PromptChoice is answered with a typed message, that does not contain one of the valid options.
This error occurs during the following part of the ResumeAfter method
var choiceResult = await result;
Cheers,
Jonny

@msft-shahins is this related to the quick replies mapping?  or @craigjensen perhaps in the facebook connector?

this is not related to the quick replies. I believe that you are not handling the TooManyAttemptsException returned by PromptDialog, since Hey is not a valid response for the PromptDialog.Confirm
you can fix it by handling the exception instead of returning it to user:
try
{
    var choiceResult = await result;
}
catch(Exception)
{
///handle the error here.
}


SteamCMD exited abnormally, Invalid install path

hey guys.
i use this run command: truckersmp-cli -euspn islammuhamad20
and get this:

Running Steam on manjarolinux 21.0.6 64-bit
STEAM_RUNTIME is enabled automatically
Pins up-to-date!
Steam client's requirements are satisfied
WARNING: Using default/fallback debugger launch
/home/moe/.local/share/Steam/ubuntu12_32/steam -shutdown
Redirecting stderr to '/home/moe/.local/share/Steam/logs/stderr.txt'
Looks like steam didn't shutdown cleanly, scheduling immediate update check
[  0%] Checking for available updates...
[----] Verifying installation...
Steam Console Client (c) Valve Corporation
-- type 'quit' to exit --
Loading Steam API...CreateBoundSocket: ::bind couldn't find an open port between 27060 and 27060
OK.
Logging in user 'islammuhamad20' to Steam Public ...
Logged in OK
Waiting for user info...OK
ERROR! Failed to install app '1245040' (Invalid install path)
SteamCMD exited abnormally

That's sadly an error I have myself and no solution so far.
Please call steamcmd manually for the time being:
${XDG_DATA_HOME:-$HOME/.local/share}/truckersmp-cli/steamcmd/steamcmd.sh +login <steamlogin> +force_install_dir ${XDG_DATA_HOME:-$HOME/.local/share}/truckersmp-cli/Proton +app_update 1245040 validate +quit

sorry but i don't understand what should i do with those too lines. excute them through terminal?

excute them through terminal?

yes, but it's only one line.

ok i got this error:
bash: steamlogin: No such file or directory

I'm having the same error

That's sadly an error I have myself and no solution so far.
Please call steamcmd manually for the time being:
${XDG_DATA_HOME:-$HOME/.local/share}/truckersmp-cli/steamcmd/steamcmd.sh +login <steamlogin> +force_install_dir ${XDG_DATA_HOME:-$HOME/.local/share}/truckersmp-cli/Proton +app_update 1245040 validate +quit

Thanks by help, Lucki. I tried this and the result was:
$ /home/lilian/.local/share/truckersmp-cli/steamcmd/steamcmd.sh +login MySteamUser +force_install_dir /home/lilian/.local/share/truckersmp-cli/Proton +app_update 1245040 validate +quit
Redirecting stderr to '/home/lilian/.local/share/Steam/logs/stderr.txt'
[  0%] Verificando se há atualizações...
[----] Verificando a instalação...
Steam Console Client (c) Valve Corporation
-- type 'quit' to exit --
Loading Steam API...OK.
Logging in user 'MySteamUser' to Steam Public ...
Logged in OK
Waiting for user info...OK
 Update state (0x5) verifying install, progress: 0.44 (4571303 /<PHONE_NUMBER>)
 Update state (0x5) verifying install, progress: 51.92 (538393519 /<PHONE_NUMBER>)
Success! App '1245040' fully installed.

Then after install again, the result was:
./truckersmp-cli -eup -n MySteamUser
Redirecting stderr to '/home/lilian/.local/share/Steam/logs/stderr.txt'
[  0%] Verificando se há atualizações...
[----] Verificando a instalação...
Steam Console Client (c) Valve Corporation
-- type 'quit' to exit --
Loading Steam API...OK.
Logging in user 'MySteamUser' to Steam Public ...
Logged in OK
Waiting for user info...OK
 Update state (0x3) reconfiguring, progress: 0.00 (0 / 0)
 Update state (0x3) reconfiguring, progress: 0.00 (0 / 0)
 Update state (0x5) verifying install, progress: 60.07 (622855599 /<PHONE_NUMBER>)
Success! App '1245040' fully installed.
Redirecting stderr to '/home/lilian/.local/share/Steam/logs/stderr.txt'
[  0%] Verificando se há atualizações...
[----] Verificando a instalação...
Steam Console Client (c) Valve Corporation
-- type 'quit' to exit --
Loading Steam API...OK.
"@sSteamCmdForcePlatformType" = "windows"
Logging in user 'MySteamUser' to Steam Public ...
Retrying. . .
Retrying. . .
Retrying. . .
Retrying. . .
FAILED login with result code No Connection
SteamCMD exited abnormally

In Third try, the result was:
$ ./truckersmp-cli -eupsn MySteamUser
Redirecting stderr to '/home/lilian/.local/share/Steam/logs/stderr.txt'
[  0%] Verificando se há atualizações...
[----] Verificando a instalação...
Steam Console Client (c) Valve Corporation
-- type 'quit' to exit --
Loading Steam API...OK.
Logging in user 'MySteamUser' to Steam Public ...
Logged in OK
Waiting for user info...OK
 Update state (0x3) reconfiguring, progress: 0.00 (0 / 0)
 Update state (0x3) reconfiguring, progress: 0.00 (0 / 0)
 Update state (0x5) verifying install, progress: 74.97 (777353647 /<PHONE_NUMBER>)
Success! App '1245040' fully installed.
Redirecting stderr to '/home/lilian/.local/share/Steam/logs/stderr.txt'
[  0%] Verificando se há atualizações...
[----] Verificando a instalação...
Steam Console Client (c) Valve Corporation
-- type 'quit' to exit --
Loading Steam API...OK.
"@sSteamCmdForcePlatformType" = "windows"
Logging in user 'MySteamUser' to Steam Public ...
Logged in OK
Waiting for user info...OK
ERROR! Failed to install app '227300' (Disk write failure)
SteamCMD exited abnormally

To be precise this exactly situation happens to me

The example was just for proton here's a list for the other things using teh default paths:
ATS (replace steamlogin with your login of steam):
"${XDG_DATA_HOME:-$HOME/.local/share}/truckersmp-cli/steamcmd/steamcmd.sh" +@sSteamCmdForcePlatformType windows +login "steamlogin" +force_install_dir "${XDG_DATA_HOME:-$HOME/.local/share}/truckersmp-cli/American Truck Simulator/data" +app_update 270880 validate +quit

ETS2 (replace steamlogin with your login of steam):
"${XDG_DATA_HOME:-$HOME/.local/share}/truckersmp-cli/steamcmd/steamcmd.sh" +@sSteamCmdForcePlatformType windows +login "steamlogin" +force_install_dir "${XDG_DATA_HOME:-$HOME/.local/share}/truckersmp-cli/Euro Truck Simulator 2/data" +app_update 227300 validate +quit

Proton 6.3:
"${XDG_DATA_HOME:-$HOME/.local/share}/truckersmp-cli/steamcmd/steamcmd.sh" +login "anonymous" +force_install_dir "${XDG_DATA_HOME:-$HOME/.local/share}/truckersmp-cli/Proton" +app_update 1580130 validate +quit

SteamRuntime Soldier:
"${XDG_DATA_HOME:-$HOME/.local/share}/truckersmp-cli/steamcmd/steamcmd.sh" +login "anonymous" +force_install_dir "${XDG_DATA_HOME:-$HOME/.local/share}/truckersmp-cli/SteamRuntime" +app_update 1391110 validate +quit

The example was just for Proton here's a list for the other things using the default paths:
ATS (replace steamlogin with your login of steam):
"${XDG_DATA_HOME:-$HOME/.local/share}/truckersmp-cli/steamcmd/steamcmd.sh" +@sSteamCmdForcePlatformType windows +login "steamlogin" +force_install_dir "${XDG_DATA_HOME:-$HOME/.local/share}/truckersmp-cli/American Truck Simulator/data" +app_update 270880 validate +quit

ETS2 (replace steamlogin with your login of steam):
"${XDG_DATA_HOME:-$HOME/.local/share}/truckersmp-cli/steamcmd/steamcmd.sh" +@sSteamCmdForcePlatformType windows +login "steamlogin" +force_install_dir "${XDG_DATA_HOME:-$HOME/.local/share}/truckersmp-cli/Euro Truck Simulator 2/data" +app_update 227300 validate +quit

Proton 6.3:
"${XDG_DATA_HOME:-$HOME/.local/share}/truckersmp-cli/steamcmd/steamcmd.sh" +login "anonymous" +force_install_dir "${XDG_DATA_HOME:-$HOME/.local/share}/truckersmp-cli/Proton" +app_update 1580130 validate +quit

Steam Linux Runtime - Soldier:
"${XDG_DATA_HOME:-$HOME/.local/share}/truckersmp-cli/steamcmd/steamcmd.sh" +login "anonymous" +force_install_dir "${XDG_DATA_HOME:-$HOME/.local/share}/truckersmp-cli/SteamRuntime" +app_update 1391110 validate +quit

Oh thanks, the problem was with proton and that helped, but now I'm getting this error python3: can't open file '/usr/lib/python3.9/site-packages/truckersmp_cli/steamruntime_helper.py': [Errno 2] No such file or directory

but now I'm getting this error python3: can't open file '/usr/lib/python3.9/site-packages/truckersmp_cli/steamruntime_helper.py': [Errno 2] No such file or directory

https://github.com/truckersmp-cli/truckersmp-cli/issues/new/choose

........
Update state (0x5) verifying install, progress: 99.05<PHONE_NUMBER>6 /<PHONE_NUMBER>2)
Error! App '227300' state is 0x10C after update job.
SteamCMD exited abnormally

why i'm getting this error?
how can i fix it?


[Feature Request]: Quick jump to livewire components class

Feature Description
From the blade file, we can jump to the component's blade file, It would be nice if we can go to the livewire component class also,
So two options should be available, either to the Component class or the view of that component

Added in v1.21.0


Changed colors of site, added Flask to site.

Ayy Marshall.
I changed the colors a little bit, added a nav bar, and added Flask to the site. I restructured the directories, which is required for doing cool things in Flask. I changed the README a little bit as well.

Sounds good. I'll get working on a back end soon.


Notes on blockstack/secret-sharing

It does not use GF(256) or other GF(2^n) unlike sss and others.
Something worth while to note.
Also

https://github.com/SSSaaS
https://github.com/ronreiter/multicrypt (Python)
https://github.com/klingebj/shamir_bip39_2039 (Python)
https://github.com/seancomeau/ShamirSecretSharing (Python)
https://github.com/szymekk/shamirs_secret_sharing (Python)
https://github.com/pcrain/pyshamir (Python)
https://github.com/myd1/Shamir-s-Secret-Sharing (Python)
https://github.com/nijynot/shamir (JS)
https://github.com/mdciotti/polypass (JS)
https://github.com/agl/shamirsplit (Go)
https://github.com/itslab-kyushu/sss (Go)
https://github.com/iowaguy/shamir-secret-sharing (Go)
https://github.com/republicprotocol/shamir-go (Go)
https://github.com/amousa11/sss (Go)

has this feature. (have not checked C or C++)

Hi. Sorry for reacting this late. I think I do not fully understand your comment.

It does not use GF(256) or other GF(2^n) unlike sss and others.

Yeah. This is a design choice. I am not really sure why this would matter.

Also [...] has this feature. (have not checked C or C++)

What feature are you referring to? Are you referring to using GF(p), instead of GF(2^n)?

@dsprenkels the reason whether GF(p) and GF(2^8) is due to efficiency and code simplicity

GF(p) is easier to implement, can have p-1 shares, but lightly slower
GF(2^8) is slightly harder to implement, faster, but can only have 255 shares

Yeah. What about it? I don't really seem to get what is the issue/bug we need to solve.

@dsprenkels would like to add these extra footnotes on the ReadMe

Oh. Of course. :)
You are completely welcome to. Just open a pull request.


Add a Receiver.is_selected method

This would replace the selected_from method, which is also being deprecated by this PR.

Other naming options: matches, matches_selected


Login error even on first enrollment

Please provide us with the following information:

This issue is for a: (mark with an x)
- [ X] bug report -> please search issues before submitting
- [ ] feature request
- [ ] documentation issue or request
- [ ] regression (a behavior that used to work and stopped in a new release)

Minimal steps to reproduce

launch the app from a Android device emulator

Any log messages given by the failure

After successful installation of App on the Android virtual phone --> Sign-in failed check your username and password and try again message banner.

Expected/desired behavior

This first time enrollment so App should actually allow creation of the account

OS and Version?

Windows 7, 8 or 10. Linux (which distribution). macOS (Yosemite? El Capitan? Sierra?)
Android 10.0 virtual (emulated)phone

Versions

Node.js 14, JDK 8.0 used to ready and install the app

Mention any other details that might be useful

Thanks! We'll be in touch soon.

Hello, could you show the JavaScript logs from this error? That would help in understanding the issue. Thanks.


[Issue-1308] Implement remote script .css/.js order loading in parallel.

Chunk files that have a corresponding .css file loaded together will download in parallel but wait for the browser to execute the CSS first before running the chunk.

Don't arrow functions come with the same compatibility as Promises?

There is a test failing for some reason

@johnpittman  there is some serious syntax error at modules/fuse-box-responsive-api/index.js


Add National-U Philippines

Website: https://national-u.edu.ph
FB Page: https://web.facebook.com/NationalUniversityPhilippines
https://national-u.edu.ph/nu-lipa/computing-and-information-technologies/bachelor-of-science-in-information-technology/

@appleramos First stage of verification passed, official domain is national-u.edu.ph as far as I verified. This is just an informational note. Pull request is still in the review. I appreciate your patience while waiting for the final decision.

@appleramos Thank you for your patience while waiting for a review and processing your request. Pull request merged.


Increase storage performance

Steps:

Get all reports for the actual run.
Hash these reports by bug hash.
Use this map to set detection status.
Update bug path and events after reports are processed in a plist.

In my case the storage time reduced from 1 minute to 30 seconds.

The tests are failing.


Create a bleach repair

Referencing https://github.com/tc39/proposal-realms/issues/115
Currently, the confinement of the evaluator depends on shadowing all existing unsafe globals by effectively defining a variable of the same name with value undefined. This is done dynamically via the with() on a Proxy().
This adequately meets typeof but fails to throw a Reference Error when a variable declaration is omitted, violating one of the security objectives of "strict mode" which is to guard against accidental globals.
One mitigation is to "bleach" the unsafe global (remove all properties) after all code has run in the primal root realm and control has passed to the primal compartment. This should be done, like all other repairs to the environment, via a separate library.
@erights

This no longer fits our model of a powerful start compartment and powerless + endowments for child compartments.


Npm install issue

Description
Hi Travis, this is such as great tool! I'm having trouble installing through npm though, I'm not a web developer but I have some experience with npm. I'm working of a MacBook Pro M1 Pro chip. Apologies if this is an obvious setup error.
The rootNotionPageId I'm using in site.config.ts
99361735cf8e4a569535030aafaa3701
I'm using the zsh terminal in Visual Studio Code, the terminal feedback is as follows;
smthspce@Christophers-MacBook-Pro-6 nextjs-notion-starter-kit % node -v
v17.4.0
smthspce@Christophers-MacBook-Pro-6 nextjs-notion-starter-kit % npm install
npm WARN ERESOLVE overriding peer dependency
npm WARN ERESOLVE overriding peer dependency
npm WARN deprecated<EMAIL_ADDRESS>This is a stub types definition. node-fetch provides its own type definitions, so you do not need this installed.
npm WARN deprecated<EMAIL_ADDRESS>Please update to latest patch version to fix memory leak https://github.com/isaacs/node-lru-cache/issues/227
npm ERR! code 1
npm ERR! path /Users/smthspce/Code Repos/ClonedRepos/nextjs-notion-starter-kit/node_modules/sharp
npm ERR! command failed
npm ERR! command sh -c (node install/libvips && node install/dll-copy && prebuild-install) || (node install/can-compile && node-gyp rebuild && node install/dll-copy)
npm ERR! sharp: Using cached /Users/smthspce/.npm/_libvips/libvips-8.10.6-darwin-arm64v8.tar.br
npm ERR!   CC(target) Release/obj.target/nothing/../node-addon-api/nothing.o
npm ERR!   LIBTOOL-STATIC Release/nothing.a
npm ERR!   TOUCH Release/obj.target/libvips-cpp.stamp
npm ERR!   CXX(target) Release/obj.target/sharp/src/common.o
npm ERR! prebuild-install WARN install No prebuilt binaries found (target=3 runtime=napi arch=arm64 libc= platform=darwin)
npm ERR! gyp info it worked if it ends with ok
npm ERR! gyp info using<EMAIL_ADDRESS>npm ERR! gyp info using<EMAIL_ADDRESS>| darwin | arm64
npm ERR! gyp info find Python using Python version 3.8.9 found at "/Library/Developer/CommandLineTools/usr/bin/python3"
npm ERR! gyp info spawn /Library/Developer/CommandLineTools/usr/bin/python3
npm ERR! gyp info spawn args [
npm ERR! gyp info spawn args   '/usr/local/lib/node_modules/npm/node_modules/node-gyp/gyp/gyp_main.py',
npm ERR! gyp info spawn args   'binding.gyp',
npm ERR! gyp info spawn args   '-f',
npm ERR! gyp info spawn args   'make',
npm ERR! gyp info spawn args   '-I',
npm ERR! gyp info spawn args   '/Users/smthspce/Code Repos/ClonedRepos/nextjs-notion-starter-kit/node_modules/sharp/build/config.gypi',
npm ERR! gyp info spawn args   '-I',
npm ERR! gyp info spawn args   '/usr/local/lib/node_modules/npm/node_modules/node-gyp/addon.gypi',
npm ERR! gyp info spawn args   '-I',
npm ERR! gyp info spawn args   '/Users/smthspce/Library/Caches/node-gyp/17.4.0/include/node/common.gypi',
npm ERR! gyp info spawn args   '-Dlibrary=shared_library',
npm ERR! gyp info spawn args   '-Dvisibility=default',
npm ERR! gyp info spawn args   '-Dnode_root_dir=/Users/smthspce/Library/Caches/node-gyp/17.4.0',
npm ERR! gyp info spawn args   '-Dnode_gyp_dir=/usr/local/lib/node_modules/npm/node_modules/node-gyp',
npm ERR! gyp info spawn args   '-Dnode_lib_file=/Users/smthspce/Library/Caches/node-gyp/17.4.0/<(target_arch)/node.lib',
npm ERR! gyp info spawn args   '-Dmodule_root_dir=/Users/smthspce/Code Repos/ClonedRepos/nextjs-notion-starter-kit/node_modules/sharp',
npm ERR! gyp info spawn args   '-Dnode_engine=v8',
npm ERR! gyp info spawn args   '--depth=.',
npm ERR! gyp info spawn args   '--no-parallel',
npm ERR! gyp info spawn args   '--generator-output',
npm ERR! gyp info spawn args   'build',
npm ERR! gyp info spawn args   '-Goutput_dir=.'
npm ERR! gyp info spawn args ]
npm ERR! gyp info spawn make
npm ERR! gyp info spawn args [ 'BUILDTYPE=Release', '-C', 'build' ]
npm ERR! warning: /Library/Developer/CommandLineTools/usr/bin/libtool: archive library: Release/nothing.a the table of contents is empty (no object file members in the library define global symbols)
npm ERR! clang: error: no such file or directory: 'Repos/ClonedRepos/nextjs-notion-starter-kit/node_modules/sharp/vendor/8.10.6/include'
npm ERR! clang: error: no such file or directory: 'Repos/ClonedRepos/nextjs-notion-starter-kit/node_modules/sharp/vendor/8.10.6/include/glib-2.0'
npm ERR! clang: error: no such file or directory: 'Repos/ClonedRepos/nextjs-notion-starter-kit/node_modules/sharp/vendor/8.10.6/lib/glib-2.0/include'
npm ERR! make: *** [Release/obj.target/sharp/src/common.o] Error 1
npm ERR! gyp ERR! build error
npm ERR! gyp ERR! stack Error: `make` failed with exit code: 2
npm ERR! gyp ERR! stack     at ChildProcess.onExit (/usr/local/lib/node_modules/npm/node_modules/node-gyp/lib/build.js:194:23)
npm ERR! gyp ERR! stack     at ChildProcess.emit (node:events:520:28)
npm ERR! gyp ERR! stack     at Process.ChildProcess._handle.onexit (node:internal/child_process:291:12)
npm ERR! gyp ERR! System Darwin 21.4.0
npm ERR! gyp ERR! command "/usr/local/bin/node" "/usr/local/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js" "rebuild"
npm ERR! gyp ERR! cwd /Users/smthspce/Code Repos/ClonedRepos/nextjs-notion-starter-kit/node_modules/sharp
npm ERR! gyp ERR! node -v v17.4.0
npm ERR! gyp ERR! node-gyp -v v8.4.1
npm ERR! gyp ERR! not ok

npm ERR!      /Users/smthspce/.npm/_logs/2022-04-27T23_35_58_681Z-debug-0.log

The log is saying that sharp is failing to install for you. I recommend checking with their repo to figure out what's going on. It is likely an issue with your environment (could be any number of things, so it's really hard to tell from the log provided).

Thanks for the reply. I'm not sure what's going on. I installed sharp into a new project and it worked, so I don't think it is my environment. I see that sharp is not mentioned in the package.json and yarn.lock collects all the packages, would using yarn install instead of npm be worth a try?

Sharp is used by https://github.com/transitive-bullshit/lqip-modern which is used to generate blurred placeholder images.
You can either try yarn or remove lqip-modern and the part of code that uses it.

Hi, appreciate the amazing work @transitive-bullshit.
I am facing the same problem @makingculture did you find a way to solve it?

The theme runs using npm run dev if you run "npm remove lqip-modern" and then comment out // import lqip from 'lqip-modern' in lib/preview-images.ts.

Got Error: 'darwin-x64' binaries cannot be used on the 'darwin-arm64v8' platform. Please remove the 'node_modules/sharp' directory and run 'npm install' on the 'darwin-arm64v8' platform. which seems similar.
Running on one of the newest MacOS, different processor. (ARM)

Related to https://github.com/lovell/sharp/issues/2460

@transitive-bullshit Might need to update sharp to v0.28.0 to avoid running into those issues:

https://github.com/lovell/sharp/issues/2460#issuecomment-809499444
https://github.com/lovell/sharp/issues/2460#issuecomment-811046375

Until the "sharp" package is updated, here is how I fixed it:

Run brew reinstall vips
Remove node_modules/sharp
Run npm/yarn install


Service Climate Away Mode not working correctly

I agree to the following

[X] I have read the documentation
[X] I am aware of the latest release notes
[X] The Backend (CCU/Homegear/...) is working as expected and connected devices are controllable by its own UI.
[X] I am running the latest version of the custom_component (and Home Assistant)

The problem
For me, the service to activate the vacation mode shows a strange behavior:

The start time is ignored, the target temperature is set immediately
The start time is first displayed as end time
approx. 20 seconds later the mode also changes from auto to vacation and the end time is now displayed correctly
but at the same time the set temperature changes to a random value of 7.5

https://github.com/danielperna84/hahomematic/assets/10342151/cfd84259-0214-4919-a0cc-2e2c29383390
What version of HomematicIP (local) has the issue?
1.47.0
What was the last working version of HomematicIP (local)?
No response
What type of installation are you running?
Home Assistant OS
What type of installation are you running for your homematic backend?
RaspberryMatic Standalone
Which version of your homematic backend are you running?
<IP_ADDRESS>31020
What hardware are you running for your system?
Intel NUC
Which config details do you use

[X] Username and password
[ ] TLS
[ ] callback data (see)

Which interfaces do you use?

[ ] Homematic IP
[ ] Homematic (Bidcos-RF)
[ ] Groups (Heating-Group)
[ ] BidCos-Wired (HM-Wired)

Diagnostics information
No response
Anything in the logs that might be useful for us? The log (full log) is the best source to support trouble shooting!
No response
Additional information
No response

Thanks for reporting


Export allDay events properly

export allDay events

fixed with https://github.com/dschuermann/ical-import-export/pull/18


Optimize contour generation (using mahotas)

Seems to help. Not an order of magnitude better, but it is significant.

This makes a very modest improvement on overall performance of wavelet_denoising without having to change it too much (i.e. ~10% speed up).

Though this sees its biggest effect in fuse_neurons. Combined with the other optimizations that are already in, this cuts the runtime of that function by half. Given fuse_neurons is the worst time sink in merge_neuron_sets and friends, this will throttle progress through postprocessing, especially on large data (though profiling there is more challenging).
That being said, the reason this is a problem in the first place is that a distance transform is being performed to find the contours. However, a distance transform really seems to be to advance for what we are trying to solve. A simpler solution will probably be using some sort of convex hull algorithm to solve for the boundary. So, ideally this will get replaced by something better in time. For now, this is the best and easiest thing we can think of that maintains the expected behavior. As this is such a big help and there is no better way that is ready to go, this will be merged.
Given the magnitude of these improvements, we will make this a new release. There are a few more optimizations that are worth playing with, but they will be left for a next release as they require a bit more work to get in. Besides, this may already put us in the regime we want to be in with larger data.

Interestingly, it sees a slow down on 3D data where SciPy dominates. So, maybe it is worth going back and using Mahotas on 2D only and SciPy in all other cases. Alternatively, resurrecting a morphological based solution for this problem could still be reasonable even if it doesn't see a speed up as it will be a simpler and still quite fast method on ND.


New option: major_on_zero

The discussion is on #280 .
Set this option to false, it will avoid bump from 0.y.z to 1.0.0 automatically.  This is useful when develop in initial development stage.

Thanks 👍

@hongqn nice!


Dependencies Conflict Between Azure CLI and Azure ML

Packages: azureml-core, azure-cli-core:
Versions: 1.37.0.post1 or lower, 2.32.0:
OS: Windows and Ubuntu:
Python Version: 3.7.6:

Describe the bug
Whenever you want to use Azure CLI Auth in Azure ML. For example the following code:
from azureml.core import Workspace, Model
from azureml.core.authentication import AzureCliAuthentication

cli_auth = AzureCliAuthentication()

ws = Workspace.from_config(auth=cli_auth)
print(ws.get_details())

You would need to use either azure-cli or azure-cli-core. But Azure CLI Core and Azure ML core has conflicts in their dependencies for two packages.

There are incompatible versions in the resolved dependencies

To Reproduce
Steps to reproduce the behavior:

Install Azure ML Core Python SDK: pip install azureml-core
Install Azure CLI Python SDK: pip install azure-core-cli
At this step, you'll get notices like if you install from requirements.txt

The conflict is caused by:
    azure-cli-core 2.32.0 depends on knack~=0.9.0
    azureml-core 1.37.0.post1 depends on knack~=0.8.2
    azure-cli-core 2.32.0 depends on knack~=0.9.0
    azureml-core 1.37.0 depends on knack~=0.8.2

and like the following notice, if you Pipenv.
here are incompatible versions in the resolved dependencies:
  humanfriendly<10.0,>=4.7 (from azureml-core==1.37.0.post1->-r C:\Users\username\AppData\Local\Temp\pipenvc6clky82requirements\pipenv-tbxmwz2r-constraints.txt (line 7))
  humanfriendly~=10.0 (from azure-cli-core==2.32.0->-r C:\Users\username\AppData\Local\Temp\pipenvc6clky82requirements\pipenv-tbxmwz2r-constraints.txt (line 5))

Expected behavior
Azure ML Core package should support the updated version of its dependencies humanfriendly and knack.

Hi @mkrdip, thank you for opening an issue! I'll tag the appropriate folks so we can look into this as soon as possible.

Requesting customer to use latest SDK package, this is fixed in newer versions. @lmazuel @mccoyp requesting to close this bug.

Hi @mkrdip, I just tried running
pip install azureml-core
pip install azure-cli-core

and was able to successfully install both packages. It seems that the dependency conflict has been fixed, so I would recommend installing the latest versions of each package if you can. I'll mark this as completed, but please let us know if you need anything else!


Still cannot use VPN with iPhone X 16.6 Dopamine2.0.8

I've tried remove jailbreak and jailbreak again, and the vpn still cannot work. (It works on 2.0.6 and down)
Device: iPhone X (iPhone 10,3)
iOS: 16.6
Dopamine: 2.0.8

Works fine for me on exactly the same device.

I have the same problem with my iPhone x, which is version 16.6.1

Uploading -2519024895271643364.mp4…

Works fine for me on exactly the same device.

Thanks for your test.
I have tried about 3 times, the VPN still cannot open.
Have any other method can try?

Can you give me a list of packages you have installed? Can you check if it works if you reinstall the jailbreak environment and don't install anything?

Works fine for me on exactly the same device.

Thanks for your test.

I have tried about 3 times, the VPN still cannot open.

Have any other method can try?

Can you give me a list of packages you have installed? Can you check if it works if you reinstall the jailbreak environment and don't install anything?

I have tried reinstall the jailbreak environment and don't install anything, the VPN still not working.
These are installed packages:
3DAppVersionSpoofer:(com.0xkuj.3dappversionspoofer) 2.0.4 ActionBar Reborn:(netskao.actionbarreborn) 1.1-2 AltList:(com.opa334.altlist) 1.0.10 AppData-Rootless:(netskao.appdata-rootless) 1.4.1 apt:(apt) 2.7.1 AutoFaceUnlock-Rootless:(netskao.autofaceunlock-rootless) 1.1-7 base:(base) 1-6 bash:(bash) 5.2.15 ca-certificates:(ca-certificates) 20230910 chariz-keyring:(chariz-keyring) 2021.07.18 coreutils:(coreutils) 9.4 darwintools:(darwintools) 1.6 dash:(dash) 0.5.12 debianutils:(debianutils) 5.7-1 diffutils:(diffutils) 3.9 diskdev-cmds:(diskdev-cmds) 697 Dopamine BaseBin Link:(dopamine-basebin-link) 1.0.0 dpkg:(dpkg) 1.22.0 ElleKit:(ellekit) 1.1.2 essential:(essential) 0-5 file-cmds:(file-cmds) 400-1 findutils:(findutils) 4.9.0 gpgv:(gpgv) 2.4.3 grep:(grep) 3.11 havoc-keyring:(havoc-keyring) 2022.06.03 launchctl:(launchctl) 1:1.1.1 libapt-pkg6.0:(libapt-pkg6.0) 2.7.1 libassuan0:(libassuan0) 2.5.6 libbrotli1:(libbrotli1) 1.1.0 libcrypt2:(libcrypt2) 4.4.36 libdimentio0:(libdimentio0) 1:0~20230202.7ffffff libedit0:(libedit0) 3.1-20230828 libffi8:(libffi8) 3.4.4 libgcrypt20:(libgcrypt20) 1.10.2 libgmp10:(libgmp10) 6.3.0 libgnutls30:(libgnutls30) 3.8.1 libgpg-error0:(libgpg-error0) 1.47 libhogweed6:(libhogweed6) 3.9.1 libidn2-0:(libidn2-0) 2.3.4 libintl8:(libintl8) 0.22 libiosexec1:(libiosexec1) 1.3.1 libkrw Plug-in (Dopamine):(libkrw0-dopamine) 2.0.1 libkrw0:(libkrw0) 1.1.1 liblz4-1:(liblz4-1) 1.9.4 liblzma5:(liblzma5) 5.4.4 libmd0:(libmd0) 1.1.0 libncursesw6:(libncursesw6) 6.4 libnettle8:(libnettle8) 3.9.1 libnpth0:(libnpth0) 1.6-2 libp11-kit0:(libp11-kit0) 0.25.0 libpam-modules:(libpam-modules) 1000.0 libpam2:(libpam2) 20230627 libpcre1:(libpcre1) 8.45-1 libpcre2-8-0:(libpcre2-8-0) 10.42 libreadline8:(libreadline8) 8.2.0-1 libroot (Dopamine):(libroot-dopamine) 1.0.1 libssl3:(libssl3) 3.0.10 libtasn1-6:(libtasn1-6) 4.19.0 libunistring5:(libunistring5) 1.1 libxxhash0:(libxxhash0) 0.8.2 libz-ng2:(libz-ng2) 2.1.3 libzstd1:(libzstd1) 1.5.5 mineland:(com.34306.mineland) 2.0-6+debug ncurses-bin:(ncurses-bin) 6.4 ncurses-term:(ncurses-term) 6.4 PerfectXTime-Rootless:(netskao.perfectxtime-rootless) 1.1-3 PreferenceLoader:(preferenceloader) 2.2.6-1 procursus-keyring:(procursus-keyring) 2020.05.09-4 profile.d:(profile.d) 0-7 sed:(sed) 4.9 shell-cmds:(shell-cmds) 278-2 shshd:(shshd) <IP_ADDRESS> Sileo:(org.coolstar.sileo) 2.5 snaputil:(snaputil) 12.3 sudo:(sudo) 1.9.14p3 System Info 系统信息-Rootless:(com.wxhbts.systeminfo.rootless) 2.7.2-3 system-cmds:(system-cmds) 950-2 tar:(tar) 1.35 uikittools:(uikittools) 2.1.6-1 vi:(vi) 070224 zsh:(zsh) 5.9 左滑返回-Rootless:(com.25mao.leftpan.rootless) 1.0-5

That's weird, I don't understand why it works for me then.

Can confirm VPN is broken again on 2.0.8 for arm64, although it used to work at this point after disabling injection to that binary. Manually blocking /usr/libexec/nesessionmanager via Choicy prefs also seems to work
https://github.com/opa334/Dopamine/actions/runs/8033545584

That doesn't make much sense considering Choicy itself applies hooks to it too...

Can confirm VPN is broken again on 2.0.8 for arm64, although it used to work at this point after disabling injection to that binary. Manually blocking /usr/libexec/nesessionmanager via Choicy prefs also seems to work
https://github.com/opa334/Dopamine/actions/runs/8033545584

That doesn't make much sense considering Choicy itself applies hooks to it too...

Could it be yet another one of those jetsam issues from the past? Although tbf I wasn't quite sure if it was rebooting userspace or adding nesessionmanager to additionalExecutables that fixed it - probs either one of those.
Basically I had 2.0.8 running for a few days until VPN stopped working so I forcibly blocked nesessionmanager w/ Choicy by appending it to the plist and rebooted userspace. Now it's working again. Worth mentioning I also have one single tweak that hooks UIKit (probs bad practice) but I disabled it globally so shouldn't really matter.

Please test again in 2.0.9.


injecting minimalistic postgresql-exporter configuration file

Stackgres uses very outdated postgresql-exporter which has by default enabled tons of telemetry scraping. Such scrapes tends to OOM for bigger databases, with this PR I was able to limit memory usage for database (100 tables each having 100 columns and each column having 1000 rows) to around ~11-12 MB of container_memory_usage_bytes{} and ~10-11 MB of rss. It SHOULD be backward compatible with our Grafana dashboards.
Fun fact:
queries were reduced by ~800 lines :zany_face:
Checklist

[x] Categorize the PR by setting a good title and adding one of the labels:
bug, enhancement, documentation, change, breaking, dependency
as they show up in the changelog
[x] Link this PR to related issues.

One more thing: did you verify that your test database actually breaks the exporter with the default config?

nope, we have numerous examples of that in our clusters

One more thing: did you verify that your test database actually breaks the exporter with the default config?

nope, we have numerous examples of that in our clusters

Sure but those are production databases on other clusters. They have probably more load and connections than your test database, so it's not quite the same situation.
If we don't know that your test database OOMs with the default exporter settings, how can we know that the fix is actually working?


[GEODE-1577] Unhelpful generic types on Execution.execute

Replaced the execute methods of the function service Execution class returning a ResultCollector with wildcards with generic types.
Modified the related classes using this method with explicit type casting to use the method with generic type.

JIRA
https://issues.apache.org/jira/browse/GEODE-1577

I added the descriptions, but I am not sure if they are descriptive enough to not confuse the users. Please let me know if there is any better description.
Thanks for the code-review :)

@dalyssakim @metatype @upthewaterspout GEODE-1577 is interesting because Dan labelled it "starter" which would imply that a new contributor should be able to pick it up and run with it without having a dev-list discussion about public API changes. I'm curious what Dan's expectation was in comparison to Anthony's feedback -- it looks like Alyssa's changes are exactly what Dan had in mind. Let's see what Dan's feedback is (he may be on holiday leave right now).

Hi all,
I'm really sorry I missed this. I was out of town for a while and somehow the discussion slipped through the cracks when I was catching up.
These changes are what I had in mind, but I didn't realize that this would break existing code that was doing a cast. I know adding a generics should be safe, but in this case we're fixing generics that are broken which is why I think we are getting into trouble.
I did a little messing around. It looks like we might be able to get away with adding generics to Execution.
The only caveat is that once we add generics to Execution we are stuck with them. There is an existing bug to also add an argument type to the FunctionContext - see GEODE-2217. So I think maybe the thing to do is to add three types parameters to execution. Something like this:
/**
 *
 * @param <IN> The type of the argument passed into the function, if any
 * @param <OUT The type of results sent by the function
 * @param <AGG> The type of the aggregrated result returned by the ResultCollector
 */
public interface Execution<IN, OUT,AGG> {
  Execution<IN, OUT, AGG> withArgs(IN args);
  ResultCollector<OUT, AGG> execute(...)
}

What do you think? The other option I suppose is to deprecate the Execution class and introduce a new one, or deprecate the execute methods and introduce new ones, but that seems painful.

+1 Dan's latest suggestion sounds good to me.

+1 these latest changes look good to me!

I've pulled these changes in.  Had to resolve some conflicts but these changes should be in geode now.


Issue handling errors when Chargebee is down

This evening on 15 December 2021, Chargebee is down throwing a 503.
Response is:
<head><title>503 Service Temporarily Unavailable</title></head>

Despite error handling in place, our services are crashing because of a bug in processing responses in core.ts. See below:
https://github.com/chargebee/chargebee-typescript/blob/d0a0bc6173c996d654ec2dee7914b077d622104b/src/core.ts#L25-L33
Error thrown is:

TypeError: Cannot create property 'http_status_code' on string '... on line 32

It looks like the response is a valid JSON string and is being parsed appropriately, however, an assumption has been made that the result is an object which can be extended.
An appropriate type check is required to validate the response type is indeed an object.

Came to write the same issue. I believe return Core.throwError(.. is possibly the expected behavior.

This has been addressed in v2.4.1.


using fisher's z-transform

In a number of notebooks, there are _r2z and _z2r functions defined, but never called, even when averaging correlation coefficients.  Was this intentional or do those calculations need updating?

@paxtonfitzpatrick thanks for posting this, but I can't find what you are referring to.  i see _r2z and _z2r defined in topic_model_analysis.ipynb, but no averaging of correlation values. In that notebook, they were probably left in from previous code that I removed.  I can't find them in the other notebooks. can you post where specifically you saw these functions defined and where we've averaged correlation coefficients?

hey @andrewheusser,
it's kind of a tricky question of when to transform correlation coefficients because we're using correlation as an accuracy metric in a lot of instances.  However, r-values are averaged in:

main/wordle_analysis_and_fig.ipynb, in the code for figure 4A
same notebook, when computing the weighted average event vector, they're used as weights (but I think this is fine)
main/eventseg_analysis.ipynb (but this should be okay since they're treated as a ratio to find the optimal k value)
supp/movie_recall_correlation_features_impact.ipynb
supp/parameter_search.ipynb, in which movie-recall correlations are correlated with hand-annotated memory scores

there might've been a few other places I stumbled across it but they aren't popping out to me right. We should do a full check at some point soon.

This has been addressed in code revisions; closing


Sending PDF

Related Problem
A Clear and Concise Description of what the Problem is
Hi,
Greetings,
I hope this message finds you well. I am writing to request that you include a new feature for sending PDF files.
Feature Description
A Clear and Concise Description of the Feature

use send_document function

AttributeError: module 'pywhatkit' has no attribute 'send_document'

Then use whatpack or AsyncPywhatKit

import pywhatkit
import whatpack
import AsyncPywhatKit
Path to the PDF file
pdf_file_path = 'C:/Users/Hp/Downloads/116102057.pdf'
Phone number of the recipient (with country code)
recipient_number = '+91<PHONE_NUMBER>'
Send the PDF file through WhatsApp
pywhatkit.send_document("+919414113190","C:/Users/Hp/Downloads/116102057.pdf",15,00)
AttributeError: module 'AsyncPywhatKit' has no attribute 'send_document'
AttributeError: module 'whatpack' has no attribute 'send_document'
I have verion 5.4 of pywhatkit

import pywhatkit
import whatpack
import AsyncPywhatKit
pdf_file_path = 'C:/Users/Hp/Downloads/116102057.pdf'
recipient_number = '+91<PHONE_NUMBER>'
pywhatkit.send_document("+919414113190","C:/Users/Hp/Downloads/116102057.pdf",15,00)
AttributeError: module 'AsyncPywhatKit' has no attribute 'send_document'
AttributeError: module 'whatpack' has no attribute 'send_document'
I have verion 5.4 of pywhatkit

import pywhatkit
import whatpack
import AsyncPywhatKit
pdf_file_path = 'C:/Users/Hp/Downloads/116102057.pdf'
recipient_number = '+91<PHONE_NUMBER>'
pywhatkit.send_document("+9194141XXXXX","C:/Users/Hp/Downloads/116102057.pdf",15,00)
AttributeError: module 'AsyncPywhatKit' has no attribute 'send_document'
AttributeError: module 'whatpack' has no attribute 'send_document'
I have verion 5.4 of pywhatkit

import pywhatkit
import whatpack
import AsyncPywhatKit
pdf_file_path = 'C:/Users/Hp/Downloads/116102057.pdf'
pywhatkit.send_document("+9194141XXXXX","C:/Users/Hp/Downloads/116102057.pdf",15,00)
AttributeError: module 'AsyncPywhatKit' has no attribute 'send_document'
AttributeError: module 'whatpack' has no attribute 'send_document'
I have verion 5.4 of pywhatkit

use the prescribed syntax from
from whatpack.sync import send_what_msg_instantly

can you please write the code, it's still not working for me

Sorry my fault the original declaration is
from whatpack.sync.whats import send_whats_doc_immediately and then call the function

import asyncio
import pywhatkit
import whatpack
from whatpack.sync.whats import send_whats_doc_immediately
import AsyncPywhatKit
pywhatkit.send_document("+9194141XXXXX","C:/Users/Hp/Downloads/116102057.pdf",15,00)
whatpack.send_document("+9194141XXXXX","C:/Users/Hp/Downloads/116102057.pdf",15,00)
send_whats_doc_immediately.send_document("+9194141XXXXX","C:/Users/Hp/Downloads/116102057.pdf",15,00)
AttributeError: module 'pywhatkit' has no attribute 'send_document'
AttributeError: module 'whatpack' has no attribute 'send_document'
AttributeError: 'function' object has no attribute 'send_document'

send_whats_doc_immediately("+9194141XXXXX","C:/Users/Hp/Downloads/116102057.pdf")
Will send message instantly not after time

import whatpack
from whatpack.sync.whats import send_whats_doc_immediately
whatpack.sync.whats.send_whats_doc_immediately("+919414113190","C:/Users/Hp/Downloads/asd")
It is now able to open my whatsapp web and go to the specific contact but not loading the file.
It is showing this error
File "C:\Users\Hp\AppData\Local\Programs\Python\Python39\lib\site-packages\whatpack\sync\whats.py", line 328, in send_whats_doc_immediately
core_.find_link()
File "C:\Users\Hp\AppData\Local\Programs\Python\Python39\lib\site-packages\whatpack\sync\core\core_.py", line 72, in find_link
locations = [locate_on_screen(f"{dir_path}\data\{loc}", grayscale=True, confidence=0.9, multiscale=True)
File "C:\Users\Hp\AppData\Local\Programs\Python\Python39\lib\site-packages\whatpack\sync\core\core_.py", line 72, in
locations = [locate_on_screen(f"{dir_path}\data\{loc}", grayscale=True, confidence=0.9, multiscale=True)
File "C:\Users\Hp\AppData\Local\Programs\Python\Python39\lib\site-packages\whatpack\sync\core\core_.py", line 169, in locate_on_screen
box_result = locate_max_opencv(image, screenshot_im, **kwargs)
File "C:\Users\Hp\AppData\Local\Programs\Python\Python39\lib\site-packages\whatpack\sync\core\core_.py", line 208, in locate_max_opencv
template = load_image(template, grayscale)
File "C:\Users\Hp\AppData\Local\Programs\Python\Python39\lib\site-packages\whatpack\sync\core\core_.py", line 252, in load_image
assert os.path.exists(img2load)
AssertionError

Can u solve this?

any news?


fix: Use MIME format for user data

Description

When enable_bootstrap_user_data is set, Amazon EC2 user data in launch templates that are used with managed node groups must be in the MIME multi-part archive format. This is because user data is merged with Amazon EKS user data required for nodes to join the cluster.
When deploying EKS-managed node groups, make user data always MIME formatted, whenever a user supplied template, or the module supplied one is in use. Properly render the whole template contents instead of pre_bootstrap_user_data only.
Also, fix pre_/post_ bootstrap_user_data injection into the module provided template to be properly controled by the
enable_bootstrap_user_data flag.
Motivation and Context

Launch templates for EKS-managed (but not self-managed) node groups and custom user data will become MIME formatted.

Resolves https://github.com/terraform-aws-modules/terraform-aws-eks/issues/2147
Resolves https://github.com/terraform-aws-modules/terraform-aws-eks/issues/2246
Related https://github.com/terraform-aws-modules/terraform-aws-eks/issues/1875
Related https://github.com/terraform-aws-modules/terraform-aws-eks/issues/2059
Related https://github.com/hashicorp/terraform-provider-aws/issues/15007
Breaking Changes

How Has This Been Tested?

[x] I have updated at least one of the examples/* to demonstrate and validate my change(s)
[x] I have tested and validated these changes using one or more of the provided examples/* projects

[x] I have executed pre-commit run -a on my pull request

@bryantbiggs PTAL. Now it has two distinct issues linked, each has a working reproducer in its description

see https://github.com/terraform-aws-modules/terraform-aws-eks/issues/2246#issuecomment-1260782090

There is two issues what this change resolves, both look valid as there are reproducers for each of it.
Ignoring the problem and rejecting a fix is not the best approach for such a great and widely used community module.


Create PR for new FT 2.0.2 and Failsafe 2.2.3

Equivalent to PR #1186 and #1197 but for master.

PR #1204.


Improve GitHub profile

Suggestion/Improvement
Description
Improve our GitHub profile:
https://github.com/shesharpnl/.github/blob/main/profile/README.md
Right now we have something in place, but I think it can be improved in terms of useful information, and actionable items (and also esthetically).
Motivation
Benefits include (but are not limited to):

The GitHub profile can be used to highlight projects and initiatives that SheSharp is working on.
A well-maintained GitHub profile facilitates and encourages community engagement.

Implementation (if applicable)
Examples:
https://github.com/github/.github/blob/main/profile/README.md
https://github.com/grafana/.github/blob/main/profile/README.md
https://github.com/cncf/.github/blob/master/profile/README.md

Do we have a SheSharp banner, @saragerion?

We do not, but I will leave the opportunity to the community to create one and unleash their creativity (if they wish so) :D
Here are the logo files:


New component to allow templating of parent component content.

Feature Request
Component Name: Details Template
We need a new component that can be placed into Parsys of Details component to allow using predefined templates to output layouts. Details component will need to add pass its component details via request object, then this component will pick it up and render it into a template.
Basic Options

Source: [Details Component Properties, Content Fragment, Custom Metadata]
Template: [path to HTL template]
Should be able to select which template to use for output.
Advanced
Template:  {HTML input}
Should be able to add direct html template and use it as https://github.com/adobe/htl-spec/blob/master/SPECIFICATION.md#22103-examples

Done see https://github.com/aem-design/aemdesign-aem-core/tree/master/aemdesign-aem-common/src/main/content/jcr_root/apps/aemdesign/components/content/contenttemplate/v1/contenttemplate


Checking points when creating CubicBezier (#13726)

when calling CubicBezier::new, we both check if the points provided are empty,
or if the points are discontinuous.
in both cases, we now return None.
keep in mind that I added PartialEq to the VectorSpace (so i will have to modify the documentation later).
I dont think its the best solution, and its more something of a conversation starter.
Fixes #13726

The reason the CI test is failing currently is this.
   --> examples/animation/cubic_curve.rs:37:43
    |
37  |     let bezier = CubicBezier::new(points).to_curve();
    |                                           ^^^^^^^^ method not found in `Option<CubicBezier<Vec3>>`
    |

I suggest putting an .unwrap, match statement, or .expect() on it


fr(MatSelectHarness): more options for SelectHarnessFilters

Feature Description
At the moment the MatSelectHarness can only be retrieved by selector. It would be helpful if other options were available such as label, placeholder, text, or form control name.
Use Case
Solely relying on selectors to get MatSelectHarness requires the templates to be designed in a specific way, for instance with custom attributes - this feature would make developers' lives easier by avoiding that requirement. Other harnesses such as MatInputHarness allow getting the harness according to placeholder and value text. So it seems logical to expect that the MatSelectHarness would also offer this convenience.

Seems like a reasonable feature request to me. I don't think we can handle the label in a good way as that is usually disconnected from the select (as it is adjacent and part of the form-field).
Though I can definitely see us handling the selected (display) value and placeholder (need to figure out how we can access the placeholder as that one is not always rendered)


FromServices could returns null/default when optional

Issue describing feature: https://github.com/dotnet/aspnetcore/issues/39757
PR: https://github.com/dotnet/aspnetcore/pull/39804

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

ID: e24f48f8-6c4d-ecda-6ce6-a7826d396e99
Version Independent ID: 9c4af557-8d06-4c6c-ad2a-0dd234547563
Content: Model Binding in ASP.NET Core
Content Source: aspnetcore/mvc/models/model-binding.md
Product: aspnet-core
Technology: aspnetcore-mvc
GitHub Login: @Rick-Anderson
Microsoft Alias: riande

@Rick-Anderson I will work on this issue, since I added the new functionality and as soon as I have a PR I will ask your review, ok?

@brunolins16  great, I can edit/clean up the PR.


Remove containerfile

Signed-off-by: faizanahmad055<EMAIL_ADDRESS>

@faizanahmad055 Image is available for testing. docker pull stakater/workshop-excercise:SNAPSHOT-PR-21-05c20779


problem

Description
What steps will reproduce the problem?

What is the expected output? What do you see instead?
Please provide any additional information below
File "/Users/damienmi/anaconda3/lib/python3.6/site-packages/spyder/widgets/fileswitcher.py", line 394, in restore_initial_state
for path in self.initial_cursors:
TypeError: 'NoneType' object is not iterable
Version and main components

Spyder Version: 3.2.4
Python Version: 3.6.3
Qt Versions: 5.6.2, PyQt5 5.6 on Darwin

Dependencies
pyflakes >=0.6.0 :  1.6.0 (OK)
pycodestyle >=2.3:  2.3.1 (OK)
pygments >=2.0   :  2.2.0 (OK)
pandas >=0.13.1  :  0.20.3 (OK)
numpy >=1.7      :  1.13.3 (OK)
sphinx >=0.6.6   :  1.6.3 (OK)
rope >=0.9.4     :  0.10.5 (OK)
jedi >=0.9.0     :  0.10.2 (OK)
psutil >=0.3     :  5.4.0 (OK)
nbconvert >=4.0  :  5.3.1 (OK)
sympy >=0.7.3    :  1.1.1 (OK)
cython >=0.21    :  0.26.1 (OK)
qtconsole >=4.2.0:  4.3.1 (OK)
IPython >=4.0    :  6.1.0 (OK)
pylint >=0.25    :  1.7.4 (OK)

I think this was already fixed in our latest version (3.2.6). Please update and try again.

Thanks for reporting. This error, an apparent duplicate of #5661 , should be fixed in Spyder 3.2.5; please update with conda update spyder to fix. If that doesn't do it, please try the steps listed in the Spyder Troubleshooting Guide, specifically the Basic First Aid and Emergency CPR sections, which resolve the great majority of Spyder installation issues. Therefore, this issue will be closed;
If it still isn't working, please describe in detail the circumstances in which the error occurred, and post the information listed in relevant subsection of the Calling for Help section as a comment to this issue, and we'll try to help if we can.


Allow ComparingNormalizedFields instances to be reused across different assertions

Hi, team!
After upgrading to 3.25.3 I see that ComparingNormalizedFields RecursiveComparisonIntrospectionStrategy can't be between different assertions (see my example). I digged into the code and found that the change was introduced in commit 0d5b789c, related to some performance improvements. The root cause is that originalFieldNamesByNormalizedFieldNameByNode is an identity hash map, although fieldNamesPerClass is keyed by class values. So, I found a fix for that, which I present here. I'm not sure that it's 100% correct, but I didn't find any failing tests. Hope you may find this helpful.
package test;

import org.assertj.core.api.Assertions;
import org.assertj.core.api.recursive.comparison.ComparingNormalizedFields;
import org.assertj.core.api.recursive.comparison.RecursiveComparisonConfiguration;
import org.junit.jupiter.api.Test;

class AssertjBugTest {

  @Test
  void test() {
    Assertions.assertThat(new Actual(0))
        .usingRecursiveComparison(
            RecursiveComparisonConfiguration.builder()
                .withIntrospectionStrategy(SomeIntrospectionStrategy.INSTANCE)
                .build())
        .isEqualTo(new Expected(0));
    Assertions.assertThat(new Actual(0))
        .usingRecursiveComparison(
            RecursiveComparisonConfiguration.builder()
                .withIntrospectionStrategy(SomeIntrospectionStrategy.INSTANCE)
                .build())
        .isEqualTo(new Expected(0));
  }

  record Actual(int a) {}

  record Expected(int A) {}
}

class SomeIntrospectionStrategy extends ComparingNormalizedFields {

  static final SomeIntrospectionStrategy INSTANCE = new SomeIntrospectionStrategy();

  @Override
  protected String normalizeFieldName(String fieldName) {
    return fieldName.toLowerCase();
  }
}

Check List:

Unit tests : YES
Javadoc with a code example (on API only) : NA

Thanks for reporting it and providing a fix, @genuss! We'll check it and get back to you.

thanks @genuss, I'll look at it next week

I had a quick look and there was indeed a bug in getChildrenNodeNamesOf which tried to be clever and not renormalize fields for the same class twice, but it turns out that the fields normalization also populates originalFieldNamesByNormalizedFieldNameByNode and this needs to be done for each nodes.
The code is a bit crap because getChildrenNodeNamesOf has some side effects and is not performant as it calls     Objects.getFieldsNames(node.getClass()); which is expensive whereas normalizing fields names is not.
I have a fix but it needs a bit more love and I'll see if I want to cache Objects.getFieldsNames(node.getClass()) operation as it is expensive.

Integrated thanks @genuss !

Very good, thank you too!


[Bug]: Lyrics-plus animation javascript problem

🔍 Have you checked that you are using an auto updating method or latest version of the extension?

[X] I have checked that I am on the latest version.

🔍 Is there already an issue for your problem?

[X] I have checked older issues, open and closed

Choose the extension for bug report.
Full Screen Mode
ℹ Environment / Computer Info
- Spotify version: Spotify for Windows 1.212002g1924b088
- Spicetify version: v2.18.1

📝 Description
Install lyrics plus and leave all settings default, the animation chanigng lyrics lines is just laggy and is not smooth between them
📸 Screenshots
Here's a video: https://youtu.be/eUByZJflMAg

Actually, the lyrics animation is handled by the lyrics-plus custom app which comes default with spicetify, this might be a minor limitation of the animation logic, you can open an issue on the main spicetify repo if you feel there is an issue, but that line changing animation is default.


For total beginners

For total beginners who only know very little words it might be cool to have the 'lookup' feature available in a quicker way. Like hovering over it and already getting it translated?

Alright. Thanks though for making that plugin!


[BUG] Migration process for AD Users is kicked off for any Auth enabled setup not just an AD Auth enabled setup

Rancher Server Setup

Rancher version: 2.7-head latest or 2.7.5
Installation option (Docker install/Helm Chart): Any

If Helm Chart, Kubernetes Cluster and version (RKE1, RKE2, k3s, EKS, etc):

User Information

What is the role of the user logged in? (Admin/Cluster Owner/Cluster Member/Project Owner/Project Member/Custom)

If custom, define the set of permissions:

Describe the bug
As per changes made in this issue - https://github.com/rancher/rancher/issues/37994, On a rancher server, with Auth enabled other than AD, and an upgrade to 2.7.5+, a migration process of users will be kicked off. Since there are no AD users, this process will exit.
Expected Result

Migration process is not kicked off at all since AD AUth is not set up
Only when AD Auth is enabled should migration process be kicked off

/backport v2.7.6

This issue was logged when migration process was added for https://github.com/rancher/rancher/issues/37994 in v2.7.5.
But since that is reverted, moving this ticket to be looked at in the milestone where https://github.com/rancher/rancher/issues/37994 will be fixed.

Since the migration logic was removed from 2.7.6+, it seems like we should test to confirm that it is no longer present and running at startup (on any auth setup, not just AD) and then we should be good to close this out.
(Note that the "unmigration" logic is unrelated to this issue, and should be tracked separately.)


Feature: pluralization

Hi,
Have you been thinking about implementing pluralization ?
https://angular-translate.github.io/docs/#/guide/14_pluralization

We are using the i18nPluralPipe to solve this.
Html

  {{ messages.length | i18nPlural: messageMapping | translate :{count: messages.length} }}

Typescript
class MyApp {
  messages: any[];
  messageMapping: any = {
    '=0': 'msg.none',
    '=1': 'msg.singular.',
    'other': 'msg.plural'
  }
  // ...
}

Json
{
  "msg.none": "You have no new messages",
  "msg.singular": "You have one new message",
  "msg.plural": "You have {{count}} new messages"
}

@cschroeter This might work for english, french etc. but russian will cause you some troubles

This is something that might be worth adding if the implementation of angular 2 doesn't work for me, but it's not a priority.
It would make a nice PR though.

Not working anymore since RC4 (https://github.com/angular/angular/issues/9826)

While there is no built-in mechanism to do that yet, I came up with my own. If someone finds time to polish the thing, add unit tests, lang-change/translation change events and finally create a pull-request, that would be just awesome :)
import { ChangeDetectorRef, Injectable, Pipe, PipeTransform } from '@angular/core';
import { I18nPluralPipe, NgLocalization } from '@angular/common';

import { TranslateService } from 'ng2-translate';

/**
 * Maps a numeric value to a pluralized translated string.
 *
 * ## Usage
 *
 * expression | conPluralate:'PATH.TO.TRANSLATION.MAPPING'
 *
 * ## Example
 *
 * ```ts
 * @Component({
 *   selector: 'my-inbox',
 *   template: `
 *     <div>
 *       {{ messages.length | pluralate:'INBOX.MESSAGES_PLURAL_CATEGORIES' }}
 *     </div>
 *   `,
 * })
 * class MyInbox {
 *   messages: any[];
 *   // ...
 * }
 * ```
 *
 * While the translation file is:
 *
 * ```json
 * // en.json
 * {
 *  "INBOX": {
 *    "INBOX.MESSAGES_PLURAL_ZERO": "Your inbox is empty :(",
 *    "INBOX.MESSAGES_PLURAL_ONE": "You have 1 new message",
 *    "INBOX.MESSAGES_PLURAL_OTHER": "You have {{ count }} new messages",
 *
 *    "MESSAGES_PLURAL_CATEGORIES": {
 *      "=0": "INBOX.MESSAGES_PLURAL_ZERO",
 *      "=1": "INBOX.MESSAGES_PLURAL_ONE",
 *      "other": "INBOX.MESSAGES_PLURAL_OTHER"
 *    }
 *  }
 * }
 * ```
 *
 * @implements {PipeTransform}
 */
@Injectable()
@Pipe({
  name: 'pluralate',
  pure: false, // required to update the value when the promise is resolved
})
export class PluralatePipe implements PipeTransform {
  private value: string = '';

  constructor(
    private translate: TranslateService,
    private changeDetector: ChangeDetectorRef,
    private localization: NgLocalization
  ) {
  }

  public transform(query: string, pluralizationHolderKey: string): string {
    let i18npipe: I18nPluralPipe = new I18nPluralPipe(this.localization);

    if (!query || query.length === 0) {
      return query;
    }

    let queryNum = parseInt(query, 10);
    if (isNaN(queryNum)) {
      return query;
    }

    this.translate.get(pluralizationHolderKey).subscribe((res: { [key: string]: string }) => {
      let mapping = res;
      let pluralCat = i18npipe.transform(queryNum, mapping);

      this.value = this.translate.instant(pluralCat, { count: queryNum });
      this.changeDetector.markForCheck();
    });

    return this.value;
  }
}

@ocombe Do we consider using A2 built-in i18n facilities for p11n?
I'm successfully using translate pipe with NgPlural directive and augmented NgLocaleLocalization (see angular/angular#11921 for details) like:

  <template ngPluralCase="=0">{{ 'N_PLURAL.0' | translate:{ amount: n } }}</template>
  ...
  <template ngPluralCase="=other">{{ 'N_PLURAL.OTHER' | translate:{ amount: n }</template>

I presume that NgPlural and i18nPlural could be extended or forked to use NgLocalization with ng2-translate translation map and *_PLURAL.* convention seamlessly.

@DethAriel
'pure = false' is not needed, when you are using Observable's as return value, so you get here a better performance. I'm also not sure, to define the pluralization mappings directly in translation file, because it duplicated when you use more then one language!
I think, that the solution of @cschroeter is really clean! Nevertheless, I've created an own pipe which returns an Observable and it is a little bit cleaner, because the mappings can be defined directly in html files - no need to define the mappings in components! It also doesn't matter which localization you add into the i18nPluralPipe, because the translationService knows the current locale which should be set in another place like a service!
Here is my solution:
`import { Pipe, PipeTransform } from '@angular/core';
import { NgLocalization, I18nPluralPipe } from '@angular/common';
import { TranslateService } from 'ng2-translate';
import { Observable } from 'rxjs/Rx';
/**

Maps a numeric value to a pluralized translated object.

Usage

expression:number | i18nPluralize:'0=PATH.TO.TRANSLATION.KEY':'1=PATH.TO.TRANSLATION.KEY':'OTHER=PATH.TO.TRANSLATION.KEY' | async

Example

@NgModule({
imports: [
TranslateModule.forRoot(I18nService.getTranslateLoaderConfig()),
CommonModule,
],
declarations: [
I18nPluralizePipe,
],
providers: [
I18nService,
TranslateService,
],
exports: [
I18nPluralizePipe,
],
})

@implements {PipeTransform}
*/
@Pipe({name: 'i18nPluralize'})
export class I18nPluralizePipe implements PipeTransform {
private i18nPluralPipe:I18nPluralPipe;

constructor(private translate:TranslateService,
private localization:NgLocalization) {
this.i18nPluralPipe = new I18nPluralPipe(localization);
}
public transform(expression:number, zeroKey:string, oneKey:string, otherKey:string):Observable {
const mapping:{[count:string]:string} = {
'=0': zeroKey,
'=1': oneKey,
other: otherKey,
};
return this.translate.get(this.i18nPluralPipe.transform(expression, mapping), {count: expression});
}
}`

@engular it's not really duplicated - every language has its own set of pluralization rules. So English only has "=0", "one", and "other", while Russian has "=0", "one", "few", "many", "other", and Spanish could also have custom rules for "=2" for "ellos/ellas" forms (depending on the input data). It might be that I misunderstood your duplication concern, though

So is the current way to do this with ngx-translate to use the I18nPluralPipe?

There are already well-known libraries that uses ICU : https://github.com/messageformat/messageformat.js (used by angular-translate)

@gjuchault I agree with you, messageformat.js it might be a good starting point of implementation. Here is some reference for pluralization from angular v1.

So I need this for a project that is gradually being migrated from ng1 to ng2+. We used the messageformat syntax with ng-translate and I want us to be able to use the exact same strings with ngx-translate, otherwise the hybrid phase gets really complicated.
This is the TranslateParser implementation I came up with:
import { Injectable, Injector } from '@angular/core';
import { LangChangeEvent, TranslateParser, TranslateService } from '@ngx-translate/core';
import * as _ from 'lodash';
import * as MessageFormat from 'messageformat';

const getMessageFormat = _.memoize((lang: string) => {
  const mf = new MessageFormat(lang);
  mf.compile = _.memoize(mf.compile);

  return mf;
});

@Injectable()
export class TranslateMessageFormatParser extends TranslateParser {
  private currentLang: string;

  constructor(private injector: Injector) {
    super();

    // FIXME: Acrobatics to avoid a cyclic dependency follow.
    // A clean solution would require a change to TranslateService so
    // TranslateParser gets notified of language changes without having
    // to subscribe.
    setTimeout(() => {
      const translate: TranslateService = this.injector.get(TranslateService);
      translate.onLangChange.subscribe((event: LangChangeEvent) => {
        this.currentLang = event.lang;
      });
    });
  }

  public interpolate(expr: string, params?: any): string {
    if (typeof expr !== 'string' || !params) {
      return expr;
    }

    return getMessageFormat(this.currentLang).compile(expr)(params);
  }

  public getValue(target: any, key: string): string {
    return target[key];
  }
}

This can be used as a drop-in replacement for the TranslateDefaultParser:
TranslateModule.forRoot({
  parser: {
    provide: TranslateParser,
    useClass: TranslateMessageFormatParser
  }
})

The following caveats prevent me from making this a pull request:

An implementation of interpolate() that uses messageformat needs to know about the currently selected language. This requires subscribing to TranslateService's onLangChange, but injecting TranslateService leads to a dependency cycle, which requires a hackish workaround.
I don't know if it's even possible to support "composed" translation keys with messageformat.
I use lodash's memoize() to provide caching, but I don't know if the maintainers feel comfortable with that dependency.

For a project I need proper support for pluralization, genders and other related translations. I made quite a lot of projects in angular1 but for the new project I wanted to go with angular2 (especially since it depends heavily on forms) and was looking for a translate solution compatible with Ionic and/or at least easier to implement then the standard angular2 i18n (single build instead of a build per language).
Looking at the module it look really nice (and familiar) but is (indeed) missing ICU support. I started browsing through the sources and the JSDocs for the MessageFormat js library and I think I have a good solution for everyone using/requiring messageFormat support for their projects.
The MessageFormat.prototype.compile function specifies 2 uses:

Compile a single value to a js function
Compile an object into an object of js functions and add a toString function to export the data

Example from the docs:
var fs = require('fs');
var mf = new MessageFormat('en').setIntlSupport();
var msgSet = {
  a: 'A {TYPE} example.',
  b: 'This has {COUNT, plural, one{one member} other{# members}}.',
  c: 'We have {P, number, percent} code coverage.'
};
var cfStr = mf.compile(msgSet).toString('module.exports');

fs.writeFileSync('messages.js', cfStr);
...
var messages = require('./messages');

messages.a({ TYPE: 'more complex' })
// 'A more complex example.'

messages.b({ COUNT: 3 })

If we take (a slightly modified version) of the first part of this code and convert that into a TranslateLoader which actually loads the data from json (and probably flatten the keys into . notation) and then feeds that to messageFormat.compile (which does accept a locale parameter so you can even use a global instance instead of creating a new one).
The returned "translations" object will now have all the (flattened) keys as message format functions.
The third part of this code can then be put into a TranslateParser, getValue can return a /^key/ object/array of matched keys or a translations[key] single value and the interpolate function just calls each/the returned function with the interpolate params.
Extra option if somebody nows if this can be done:
The second part writes the code to disk (using a string), maybe this can be used to generate precompiled language files during AOT building

@chancezeus Nice! I didn't have a close look at the messageformat.js API when I came up with the solution above. This would be much cleaner.
The translations object is not in fact flattened with dot-separated keys - it's actually supposed to be a nested object. Luckily, messageformat.js' compile() works with nested object the way we want it to: If messages is a hierarchical structure of such strings, the output of compile() will match that structure, with each string replaced by its corresponding JavaScript function.. It looks to be very straight-forward to transform a nested object of ICU-formatted strings into a nested object of messageformat.js functions while loading translations for ngx-translate.
At this point, instead of string values, our translations object has functions as its values - otherwise, everything should work transparently for every part of ngx-translate (except the parser). The parser's getValue() method could work exactly as it does currently, and interpolate() would be very simple - just invoke the passed method with the passed params and return the result.
There's one problem I can see: Unfortunately, getValue() is expected to return a string, and interpolate() expects a string as its first argument. These will be functions though. It shouldn't be a problem at runtime, but maybe the maintainers would be open to relax the string requirement here?

@lephyros Nice for spotting/testing that the compile() will work with nested objects, that was unclear from the docs (to me) and hence I suggested flattening the object.

Hi, this has been opened for almost a year. Is there a recommended approach worth mentioning on the README?

I've given this some more thought and I have an idea for what I think is a clean implementation. No promises, but I hope to have a PR up this week.

https://github.com/ngx-translate/core/pull/553
Thanks @chancezeus for setting me on the right path with this. Also, the idea to actually contribute was helped by a conversation with @PascalPrecht at Jazoon.

Hey @lephyrus, thanks for your PR, do you know when will it be merged?

@OzoTek No idea - it's just a PR of what I think is a decent solution. It may never get merged if the maintainers disagree. If there's still no reaction in a week, I might try to get some attention. For now we should be patient.

Alright thanks :)

How do I use i18nPluralPipe with ngx-translate?
I tried adding the code provided by @cschroeter but it shows the mapped key instead of the value in locale file. Do I need to add any other library or configuration?
I'm new to Angular, any help will be apreciated.

My solution for plural pipe is, I think, more general (I apologize in advance, but it was not tested in detail). It is based on the format commonly used in angular. But no nested conditions can be applied. In translation file you can use variables as in ngx-translate core and then, with this pipe, select exact part of translated string according to variable. It supports variable comparison using '=' (for string or numbers), '<' and '>' (for numbers) and default value.
You can use it in html template after translate applied:
{{ 'translate key' | translate:{variable:value} | translateSelector:variable }}
Format in json:
"translate key": "=[number | string] {text value if equal} >[number] {text if greather than number} [other | else] {default text}
Text from first condition match (from left) will be applied.
Example. With translation defined in json:
"results": "=0 {No results} =1 {One result} >100 {Too many results} >1 {{{count}} results found}"
and in component html:
{{ 'results' | translate:{count:cnt} | translateSelector:cnt }}
It show:

"No results" if cnt = 0
"One result" if cnt = 1
"17 results found" if cnt = 17
"Too many result" if cnt = 157

Example with strings. Sample json:
"mf": "=m {male} =f {female} other {unknown}"
in component html (example with constant):
{'mf' | translate | translateSelector:'m'}}
It show:

"male" (based on constant value)

Pipe code
import { Pipe, PipeTransform } from '@angular/core';

/**
 * Usage in translation json files:
 * - en.json (key: value):
 * "found results": "=0 {No results} =1 {One result} >1 {{{count}} results found}",
 * - sk.json (key: value):
 * "found results": "=0 {Žiadne výsledky} =1 {Jeden výsledok} <5 {{{count}} výsledky} other {{{count}} nájdených záznamov}"
 *
 * Usage in component:
 * {{'found results' | translate:{count: cnt} | translateSelector:cnt}}
 *
 * Results:
 * If cnt = 0: No results (en) Žiadne výsledky (sk)
 * If cnt = 7: 7 results found (en) 7 nájdených záznamov (sk)
 */
@Pipe({
  name: 'translateSelector'
})
export class TranslateSelectorPipe implements PipeTransform {

  transform(text: string, value: string | number): string {
    const ret = text.match(/(([=<>][^}]+|other|else) ?{([^}]+))}/g).map(
      m => m.match(/([=<>eo]) ?([^{]+) ?{([^}]+)}/)
    ).find(
      f => this.evalCondition(value, f[1], f[2].trim())
      );
    if (ret) { return ret[3]; }
    return '';
  }

  private evalCondition(
    left: number | string,
    operator: string,
    right: string): boolean {

    if (['o', 'e'].includes(operator)) {
      return true;
    }

    const strings = typeof left === 'string';
    left = left.toString();

    const leftString: string = left;
    const leftNumber: number = Number.parseInt(left);
    const rightString = right;
    const rightNumber = Number.parseInt(right);

    if (strings && ['<', '>'].includes(operator)) {
      return false;
    } else if (!strings && (Number.isNaN(leftNumber) || Number.isNaN(rightNumber))) {
      return false;
    }
    switch (operator) {
      case '=': return strings ? leftString === rightString : leftNumber === rightNumber;
      case '<': return leftNumber < rightNumber;
      case '>': return leftNumber > rightNumber;
      case 'o':
      case 'e': return true;
    }
  }
}

I suppose it is not written optimally, please improve it if you know how.
Import it into your (shared) module and use in module component like in example on top.
import { TranslateSelectorPipe } from './your-pipes/this-pipe-name.pipe';
...
declarations: [TranslateSelectorPipe],
...
exports: [TranslateSelectorPipe]   // if in shared module

PS:
Ideal solution would be included functionality like this in ngx-translate core this way:
{{ 'translate key' | translate:{variable:value,selector:pluralOrSelect}}}

I'll leave this here for visibility:
https://www.npmjs.com/package/ngx-translate-messageformat-compiler
I'll try and prepare a PR to get this mentioned in the README, hopefully soon.

Thank you each and all and particularly @cschroeter
I found that both the following worked (The approach I opted for was using the directives (https://github.com/ngx-translate/core#5-use-the-service-the-pipe-or-the-directive)

  {{ messages.length | i18nPlural: messageMapping | translate :{count: messages.length} }}

Thanks very much