Include property for setting the Severity Level of the Azure Resource Health alert.

[Enter feedback here]
There does not seem to be an option to set the severity level of the resource health alert.

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

ID: 73f3e9c6-8cf1-6c8d-2de7-54f6d3740fc1
Version Independent ID: 42af845a-aed7-a035-33ee-66077d7efc57
Content: Configure Azure resource health alerts using Resource Manager templates
Content Source: articles/service-health/resource-health-alert-arm-template-guide.md
Service: service-health
GitHub Login: @stephbaron
Microsoft Alias: stbaron

That's right, we're considering this for a future improvement.

Thanks for your comment. We are actively investigating and will get back to you shortly. Thanks for your patience.

We appreciate your question. Sorry didn't fully answer in a timely manner. Since this question was created some time ago, we don't know if it still applies. We kindly ask you to create a new github issue if it's still important. We will engage with you on the new thread. Thank you for your understanding.
#please-close


Add support for separate color for code blocks

Because code blocks also have feelings

Hey @Arcnor ! Thanks for the submission 🙌


[OCP4.5] PrometheusRules discovery in user-created namespaces

What happened?
If the PrometheusRule is created in user-created namespace, Prometheus operator doesn't see it.
Created rule didn't appear in prometheus-k8s-rulefiles-0 configmap, but if the rule is created in some openshift-* namespace, Prometheus operator discovers it with no problem.
Did you expect to see some different?
Created rule should appear in prometheus-k8s-rulefiles-0 configmap.
How to reproduce it (as minimally and precisely as possible):

Create PrometheusRule in user-created namespace (for example project)
Wait some time for operator or restart it.
Rule should appear in prometheus-k8s-rulefiles-0 config map with other rules, but it doesn't.
Environment

OCP 4.5.11

Prometheus Operator version:

quay.io/openshift-release-dev/ocp-v4.0-art-dev@sha256:1c24c01e807700d30430ce4ff2f77b54d55910cfbf9ee0cbe5c1c64979547463

Kubernetes version information:
kubectl version
Client Version: version.Info{Major:"1", Minor:"18", GitVersion:"v1.18.2-0-g52c56ce", GitCommit:"d7f3ccf9a5bdc96ba92e31526cf014b3de4c46aa", GitTreeState:"clean", BuildDate:"2020-09-11T23:16:13Z", GoVersion:"go1.13.4", Compiler:"gc", Platform:"linux/amd64"}

Kubernetes cluster kind:
OCP

The prometheus-k8s instances are dedicated for the monitoring of the platform. You should enable the monitoring your own services capability to achieve this.


[AutoPR eventgrid/resource-manager] Fix for a linter error related to default value in PATCH request body + use the correct default value in PUT

Created to sync https://github.com/Azure/azure-rest-api-specs/pull/3367

(message created by the CI based on PR content)

Codecov Report

Merging #2885 into restapi_auto_eventgrid/resource-manager will increase coverage by <.01%.
The diff coverage is 93.75%.

@@                             Coverage Diff                             @@
##           restapi_auto_eventgrid/resource-manager    #2885      +/-   ##
===========================================================================
+ Coverage                                     56.7%   56.71%   +<.01%
===========================================================================
  Files                                         7647     7647
  Lines                                       158348   158348
===========================================================================
+ Hits                                         89796    89807      +11
+ Misses                                       68552    68541      -11

Impacted Files
Coverage Δ

...rid/models/event_subscription_update_parameters.py
36.36% <0%> (ø)
:arrow_up:

...ure-mgmt-eventgrid/azure/mgmt/eventgrid/version.py
100% <100%> (ø)
:arrow_up:

...grid/azure/mgmt/eventgrid/models/event_type_py3.py
55.55% <100%> (ø)
:arrow_up:

...d_connection_event_subscription_destination_py3.py
62.5% <100%> (ø)
:arrow_up:

...models/storage_blob_dead_letter_destination_py3.py
100% <100%> (ø)
:arrow_up:

...els/web_hook_event_subscription_destination_py3.py
100% <100%> (ø)
:arrow_up:

...re/mgmt/eventgrid/models/event_subscription_py3.py
100% <100%> (ø)
:arrow_up:

...models/event_subscription_update_parameters_py3.py
36.36% <100%> (ø)
:arrow_up:

...ls/event_hub_event_subscription_destination_py3.py
62.5% <100%> (ø)
:arrow_up:

.../azure/mgmt/eventgrid/models/event_subscription.py
100% <100%> (ø)
:arrow_up:

... and 9 more

Continue to review full report at Codecov.

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


Passthrough routes don't work

I was expecting that QueryParamAwarePretender should allow me to passthrough requests to certain routes similar to Pretender. I tried doing the following but that didn't work:
const server = new QueryParamAwarePretender(function() {
  this.get('/photos/:id', this.passthrough);
});

It fails since pathnameHandlersMap is not defined on the instance yet.
Am I missing something?

Fixed in v1.3.0


DRE/NISE/LEMDO: Allow pc as a child of lemma and rdg

Please allow <pc> as a child of <lemma> and <rdg>
This is because some of the editors are collating quotation marks, etc.

<pc> was already available in <rdg>. I've added it to <lem> in rev 18084.


ImportError: cannot import name 'Annotated' from 'typing'

I have installed bpack 0.8 library on python3.9, python3.8 and python3.7. On python 3.9 I have not detected any error but in python3.8 and python3.7, trying to import bpack, I got the following errors:
% python
Python 3.8.12 (default, Oct 12 2021, 06:23:56)
[Clang 10.0.0 ] :: Anaconda, Inc. on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> import bpack
Traceback (most recent call last):
  File "/usr/local/opt/anaconda3/envs/py38/lib/python3.8/site-packages/bpack/typing.py", line 7, in <module>
    from typing_extensions import _tp_cache                 # noqa
ImportError: cannot import name '_tp_cache' from 'typing_extensions' (/usr/local/opt/anaconda3/envs/py38/lib/python3.8/site-packages/typing_extensions.py)

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/usr/local/opt/anaconda3/envs/py38/lib/python3.8/site-packages/bpack/__init__.py", line 7, in <module>
    from .descriptors import (                                      # noqa: F401
  File "/usr/local/opt/anaconda3/envs/py38/lib/python3.8/site-packages/bpack/descriptors.py", line 11, in <module>
    import bpack.typing
  File "/usr/local/opt/anaconda3/envs/py38/lib/python3.8/site-packages/bpack/typing.py", line 13, in <module>
    from typing import Annotated, get_origin, get_args
ImportError: cannot import name 'Annotated' from 'typing' (/usr/local/opt/anaconda3/envs/py38/lib/python3.8/typing.py)

and
% python
Python 3.7.11 (default, Jul 27 2021, 07:03:16)
[Clang 10.0.0 ] :: Anaconda, Inc. on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> import bpack
Traceback (most recent call last):
  File "/usr/local/opt/anaconda3/envs/py37/lib/python3.7/site-packages/bpack/typing.py", line 7, in <module>
    from typing_extensions import _tp_cache                 # noqa
ImportError: cannot import name '_tp_cache' from 'typing_extensions' (/usr/local/opt/anaconda3/envs/py37/lib/python3.7/site-packages/typing_extensions.py)

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/usr/local/opt/anaconda3/envs/py37/lib/python3.7/site-packages/bpack/__init__.py", line 7, in <module>
    from .descriptors import (                                      # noqa: F401
  File "/usr/local/opt/anaconda3/envs/py37/lib/python3.7/site-packages/bpack/descriptors.py", line 11, in <module>
    import bpack.typing
  File "/usr/local/opt/anaconda3/envs/py37/lib/python3.7/site-packages/bpack/typing.py", line 13, in <module>
    from typing import Annotated, get_origin, get_args
ImportError: cannot import name 'Annotated' from 'typing' (/usr/local/opt/anaconda3/envs/py37/lib/python3.7/typing.py)

The packages installed in my python3.8 and python3.7 environments are:
# packages in environment at /usr/local/opt/anaconda3/envs/py38:
#
# Name                    Version                   Build  Channel
bitstruct                 8.11.1           py38h96a0964_1    conda-forge
bpack                     0.8.0                    pypi_0    pypi
ca-certificates           2021.10.8            h033912b_0    conda-forge
certifi                   2021.10.8        py38h50d1736_1    conda-forge
libcxx                    12.0.0               h2f01273_0
libffi                    3.3                  hb1e8313_2
ncurses                   6.3                  hca72f7f_2
openssl                   1.1.1l               h0d85af4_0    conda-forge
pip                       21.2.4           py38hecd8cb5_0
python                    3.8.12               h88f2d9e_0
python_abi                3.8                      2_cp38    conda-forge
readline                  8.1                  h9ed2024_0
setuptools                58.0.4           py38hecd8cb5_0
sqlite                    3.36.0               hce871da_0
tk                        8.6.11               h7bc2e8c_0
typing-extensions         4.0.0                    pypi_0    pypi
wheel                     0.37.0             pyhd3eb1b0_1
xz                        5.2.5                h1de35cc_0
zlib                      1.2.11               h1de35cc_3

# packages in environment at /usr/local/opt/anaconda3/envs/py37:
#
# Name                    Version                   Build  Channel
bitstruct                 8.11.1           py37h271585c_1    conda-forge
bpack                     0.8.0                    pypi_0    pypi
ca-certificates           2021.10.8            h033912b_0    conda-forge
certifi                   2021.10.8        py37hf985489_1    conda-forge
libcxx                    12.0.0               h2f01273_0
libffi                    3.3                  hb1e8313_2
ncurses                   6.3                  hca72f7f_2
openssl                   1.1.1l               h0d85af4_0    conda-forge
pip                       21.2.2           py37hecd8cb5_0
python                    3.7.11               h88f2d9e_0
python_abi                3.7                     2_cp37m    conda-forge
readline                  8.1                  h9ed2024_0
setuptools                58.0.4           py37hecd8cb5_0
sqlite                    3.36.0               hce871da_0
tk                        8.6.11               h7bc2e8c_0
typing-extensions         4.0.0                    pypi_0    pypi
wheel                     0.37.0             pyhd3eb1b0_1
xz                        5.2.5                h1de35cc_0
zlib                      1.2.11               h1de35cc_3

Hi @lmar76, thanks for reporting.
The issue should be fixed now in the main branch.
Please give it a try and let me know if it works for you.
I will make a new release and conda packages ASAP.

Ciao Antonio,
Grazie! ora funziona!
Ciao,
Luca
From:   "Antonio Valentino" @.>
To:     "avalentino/bpack" @.>
Cc:     "Luca Mariani" @.>, "Mention"
@.>
Date:   30/11/2021 17:42
Subject:        Re: [avalentino/bpack] ImportError: cannot import name
'Annotated' from 'typing' (Issue #1)
Hi @lmar76, thanks for reporting.
The issue should be fixed now in the main branch.
Please give it a try and let me know if it works for you.
I will make a new release and conda packages ASAP.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub, or unsubscribe.
Triage notifications on the go with GitHub Mobile for iOS or Android.
This message is intended only for the recipient(s) named above. It may contain proprietary information and/or
protected content. Any unauthorised disclosure, use, retention or dissemination is prohibited. If you have received
this e-mail in error, please notify the sender immediately. ESA applies appropriate organisational measures to protect
personal data, in case of data privacy queries, please contact the ESA Data Protection Officer @.***).


Add Druid DB icon

Summary of Changes
With https://github.com/lyft/amundsendatabuilder/pull/257, we are able to index Druid DB into the graph. Add icon class.
Tests
What tests did you add or modify and why? If no tests were added or modified, explain why. Remove this line
Documentation
What documentation did you add or modify and why? Add any relevant links then remove this line
CheckList
Make sure you have checked all steps below to ensure a timely review.

[x] PR title addresses the issue accurately and concisely. Example: "Updates the version of Flask to v1.0.2"

In case you are adding a dependency, check if the license complies with the ASF 3rd Party License Policy.

[x] PR includes a summary of changes, including screenshots of any UI changes.
[x] PR adds unit tests, updates existing unit tests, OR documents why no test additions or modifications are needed.
[x] In case of new functionality, my PR adds documentation that describes how to use it.

All the public python functions and the classes in the PR contain docstrings that explain what it does

[x] PR passes all tests documented in the developer guide

@feng-tao will we be showing Druid resources internally? If so, you'll want to update config-custom in our private repo with the same lines you added here in config-dafult.

thanks for the pointer, will add that config there as well.


[Payment Methods] Design Fixes

📲 What
Fixes the following:

topMargin on the SettingsTableViewHeader should be 30pts
"Add New Card" button down-state should be grey
tweak separators: no longer using custom separators, since we can use the table view's

🤔 Why
✨ Design ✨
👀 See

✅ Acceptance criteria

verify that the payment methods screen correctly displays on iOS 10, iOS 11, iOS 12

 Design Fixes - Payment Methods


How to include Fakegato to a platform (FakeGatoHistoryService is not defined)

I have a working platform with 8 temperature sensors and struggling to integrate fakegato-history. I added fakegato-history 0.5.6 as a dependency for my plugin and its visible in the node_modules folder. I followed the instructions by adding to module export, in the module for each accessory creation, and returned the service (fakegato related entire are in Bold font).
By I can't resolve an error and pretty new to coding. I'm probably creating the FakeGatoHistoryService in the wrong place or out of scope. Thanks a lot for any hints!

error

ReferenceError: FakeGatoHistoryService is not defined
at HeaterReportingAccessory.getServices (/homebridge/node_modules/homebridge-heater-reporting/index.js:211:32)
at Server.createHAPAccessory (/usr/local/lib/node_modules/homebridge/src/server.ts:442:41)
at /usr/local/lib/node_modules/homebridge/src/server.ts:427:34
at Array.forEach ()
at /usr/local/lib/node_modules/homebridge/src/server.ts:417:21
at /usr/local/lib/node_modules/homebridge/node_modules/hap-nodejs/src/lib/util/once.ts:10:18
at HeaterReportingPlatform.accessories (/homebridge/node_modules/homebridge-heater-reporting/index.js:185:9)
at /usr/local/lib/node_modules/homebridge/src/server.ts:415:24
at new Promise ()
at Server.loadPlatformAccessories (/usr/local/lib/node_modules/homebridge/src/server.ts:414:12)

Here are the relevant extracts of the key code:

module.exports = function(homebridge) {
Service = homebridge.hap.Service;
Characteristic = homebridge.hap.Characteristic;
var FakeGatoHistoryService = require('fakegato-history')(homebridge);
homebridge.registerAccessory("homebridge-heater-reporting", "heater-reporting", HeaterReportingAccessory);
homebridge.registerPlatform("homebridge-heater-reporting", "heater-reporting", HeaterReportingPlatform);
}
function HeaterReportingPlatform(log, config){
this.sensors = config['sensors']; //sensors is an array in config.json, each sensor identified my name, keyword, serial
//(...)my code
}
HeaterReportingPlatform.prototype = {
accessories: function(callback) {
var sensorAccessories = []; //this is an array to store the sensor temperature accessories
for(var i = 0; i < this.sensors.length; i++){
var sensor = new HeaterReportingAccessory(this.log, this.sensors[i]);
sensorAccessories.push(sensor);
}
var saCount = sensorAccessories.length;
callback(sensorAccessories);
}
function HeaterReportingAccessory(log, sensorConfig) {
this.log = log;
this.keyword = sensorConfig["keyword"];
this.name = sensorConfig["name"];
this.sn = sensorConfig["serial"];
}
HeaterReportingAccessory.prototype = {
getServices: function() {
var informationService = new Service.AccessoryInformation();
    informationService
      .setCharacteristic(Characteristic.Name, this.name)
      .setCharacteristic(Characteristic.Manufacturer, "Dallas")
      .setCharacteristic(Characteristic.Model, this.keyword)
      .setCharacteristic(Characteristic.SerialNumber, this.sn);

    var temperatureService = new Service.TemperatureSensor(this.name);
    temperatureService.getCharacteristic(Characteristic.CurrentTemperature)
                            .on("get", this.getTemperature.bind(this));

//line 211
var loggingService = new FakeGatoHistoryService("weather", {displayName: this.name, log: this.log}, {storage: 'fs'});
    **return [informationService, temperatureService, loggingService];**
},

Solved by creating the variable outside of modules exports:
var fakegatoHistory = require( 'fakegato-history' );
module.exports = function(homebridge) {
HistoryService = fakegatoHistory( homebridge );
...}


Absinthe.Relay.Connection.Options

The default type t of Absinthe.Relay.Connection.Options is wrong.
Parameters after and before are not integers, they are Connection.cursor()s.
https://github.com/absinthe-graphql/absinthe_relay/blob/master/lib/absinthe/relay/connection.ex#L5-L10
I'll open up a PR with the proposed changes.

PR welcome!

Additionally, the integers should probably be pos_integer(). I'll add that in too

Fixed by https://github.com/absinthe-graphql/absinthe_relay/pull/160


Align bitbake and debian dependencies

This patch aligns the bitbake and the debian dependencies to improve partial builds. This also helps to reduce the dependency graph in general, which in turn allows for more concurrency in the build.
In addition, npm auditing is disabled at install time to significantly speed up the build.

@jan-kiszka your review is addressed now. In addition, I added a commit to add the missing nodejs Debian runtime dependency to node-red. In general, this layer is VERY imprecise about the dependencies of the individual packages. While this might not be a problem for the example images, it definitely is painful when deriving images.

Patches that are improving the situation are always welcome.

Patches that are improving the situation are always welcome.

Like in every OSS project :smile: . I already talked to @BaochengSu last week about coming patch series.


Support Floating Window

Hi, I'm a programmer using vim to write C/C++ code, when I coding, I use the Ctrl-n to complete my code, and i use the plugin to show the function prototype at vim command line, I always to low my head to see the command line, vim can implement the floating window to change this situaion? I think this feature will can protect the programmer's cervical vertebra.

i use the plugin to show the function prototype at vim command line

Have you tried using the preview window to show function prototype: set completeopt+=preview
See more: :help completeopt
Also, vim does support nonmaximized windows with gvim. You can size the window on your desktop with set lines=100 columns=100.

Ok,I'll try

Would be good to have a proper floating window support besides preview window. https://www.reddit.com/r/neovim/comments/ars2ad/want_to_try_with_neovims_floating_window/

This was in the poll done last year.  It's on the roadmap after text properties.

This is still WIP right? Sending grep results to a floating window like below is still not possible right?

The popup window has been implemented.  And you can also use the popup window for preview.
For lines from a grep command you perhaps want to use popup_menu().
If there is something that isn't working, please open a specific issue for that.


Difference between Local & Server Deployment?

How fast Mail For Good is Locally & on Server so I can choose if I can go with Local Deployment without the need of Redis & PostgreSQL on server.
From what I can understand, if I go full server, then I have to use AWS SES & then Redis & PostgreSQL on the server as well.
And if I go Local, I only have to use AWS SES on Server rest I can do locally right?
And if I go Local, how long will it take to send let's say 5000 emails? Will it heat up my PC? Probably dumb questions but gotta ask someday 😂

running on a server or your desktop as the same outcome if you have the same computing power on both sides. It probably won't heat up your machine (I wouldn't try it on a desktop at first because I don't encourage running any heavy stuff on a laptop).
You can have a postgres and a redis hosted separately if you want you'll just have to specify them in the .env file and start the server with npm start.
I don't know how long it will take on your machine but take a look at your SES account.

Honestly it depends mostly on the maximum send rate of your SES account.

let's say you have the same basic send rate as I do. 14 emails/second, you'd have to no turn off your desktop for ~20 hours straight. So yeah it doesn't seem like a good option.
You can run almost everything at once if you take the Dockerfile, docker-compose.yml and your .env file on a server and run docker-compose up. When I say 'almost' I mean that you'll still have to setup your SES account but that should be it.

@zhakkarn But that's for a lot of emails right, to be exact, 10,08,000, i.e, 1 million 8 thousand subscribers right?
Another question is, as it is using AWS SES so I just need to submit CSV file & Template & rest is handled by SES.  Indeed, It would take 6min to send your 5000 emails.  So you don't really need a server, your personnal computer will be just fine.
The app is continuously sending receiving from and sending data to SES. This is why it needs to stay ON during the whole blast.

Appreciate it. Thank you so much. Also, as I am not gonna send more than 5 emails per month, how cheap can a server be for this stuff? Can it be free?

For any super short sendings, you can definitely use a free Heroku instance, just use the button on the Readme of this repo. You may want to check the limitations of the free Heroku instances the only problematic one imo is that your app can't be up more than 18h per day so you may have someone filling the subscribing form for one of your lists and send it during the forced rest time of your app. Nullifying the subscription.

@zhakkarn Hey can you recommend on AWS if you have any experience with it?
Do you think AWS On Demand is okay for it?
Also, there are lots of solutions on AWS EC2 - On-Demand, Reserved Instances, Spot Instances, Dedicated Hosts & Per-Second Billing. Can you tell me which one would be inexpensive & effective?

I don't have enough experience with Amazon EC2 to recommend anything. If I were to use Amazon to host the app I'd first research how I could use Lightsail to run the app on a single t2.micro instance. But outside of that, I can't really orient you.

Thanks again for all the help. I am reading lots of docs but its overwhelming so I might go with Heroku instead. Lets see :)


QnA Maker SDK support for Active learning

Support for active learning
Train API
Active learning helper class
Removed support for legacy generate answer api's (as we no longer support those)
Code refactoring

:heavy_check_mark: No Binary Compatibility issues for Microsoft.Bot.Builder.dll compared against version 4.3.1
:heavy_check_mark: No Binary Compatibility issues for Microsoft.Bot.Builder.AI.Luis.dll compared against version 4.3.1
:heavy_check_mark: No Binary Compatibility issues for Microsoft.Bot.Builder.AI.QnA.dll compared against version 4.3.1
:heavy_check_mark: No Binary Compatibility issues for Microsoft.Bot.Builder.ApplicationInsights.dll compared against version 4.3.1
:heavy_check_mark: No Binary Compatibility issues for Microsoft.Bot.Builder.Azure.dll compared against version 4.3.1
:heavy_check_mark: No Binary Compatibility issues for Microsoft.Bot.Builder.Dialogs.dll compared against version 4.3.1
:heavy_check_mark: No Binary Compatibility issues for Microsoft.Bot.Builder.TemplateManager.dll compared against version 4.3.1
:heavy_check_mark: No Binary Compatibility issues for Microsoft.Bot.Configuration.dll compared against version 4.3.1
:heavy_check_mark: No Binary Compatibility issues for Microsoft.Bot.Connector.dll compared against version 4.3.1
:heavy_check_mark: No Binary Compatibility issues for Microsoft.Bot.Schema.dll compared against version 4.3.1

is there also a JavaScript version?

https://github.com/microsoft/botbuilder-js/pull/1030/


Implicit type casting in the VAD example

In the outputs of the ACFAveraging_fun function of the VAD example(s) an implicit conversion from Word32 to short is performed which is not documented.
The interface to the invoked acf_averaging function expects arrays of Word32 data type for the outputs however the result of the computation are assigned to elements of a L_av_t type for communication which packs short values.
Is this behavior safe and intended? If yes, it is better to be documented in the code.

Dear Hosein,
First, just for the observation. In a recent commit i have just added the following comment close to the call to the acf_averaging function within the wrapper function:
	// Note: there is an implicit conversion from Word32 array (acf_averaging prototype)
	//       the short array in this wrapper function, which enables the match to the
	//       short array declared at the corresponding output edges (E1 and E2)
	//       The conversion does not produces any change of the VAD functionality,
	//       since the outputs are flags, result of the voice detection (or not),
	//       and only the LSB is used actually.
	//       Thanks Hosein for the observation!


[Request] Larger slider for price modifier

Could you enable a larger slider for price modifier, like Lootsheet npc did a while ago?
Currently, we can only up the price to 200%.
Maybe enable up to 1000%?
I assume it should'nt be too hard to implement (I may be wrong tho, I'm a total noob).
Most Curse of Strahd merchants sell items at 10x price ^^
Thank you for your work!

Yeah I need that for my own CoS session, I think I will add it as a setting on the merchant what the max slider value should be, default 200%

Fixed in 2.5.7


Add Out-of-Bag performance validation

Since we have the parameter subsample, it is natural to perform out-of-bag evaluation for each tree. This can be a faster and simpler substitution of cross validation on some large input.
The current subsampling process is done in C++, therefore we might need to predict and evaluate on the C++ side if oob-validation is requested.

Because boosted trees are correlated, OOB evaluation is a rather handicapped concept and it is not so natural as in random forests. Here we can only look at overall "OOB improvements" brought by each new tree. That metric usually leads to underestimates in optimal number of iterations (sometimes by a lot), and it's hard to say how reliable it might be for optimizing the other parameters in xgboost. So I don't have high hopes.
However, an OOB evaluation option could be rather useful for the "random forest" setting.

@khotilov that's a good point. The oob data points for one tree could be actually included in the previous trees, thus they are not truely "out".
I would like to have it mainly for the random forest version.


Modify Negative Binomial Distribution

A proper error message on invalid input.
I'd like to work on it.


I would like to understand what are the alternatives for Azure Databricks MLOPS

Please suggest the different options or comparison for azure databricks MLOps/Devops, Datastores/Feature Store/Storage & Azure ML integration.

@garimss Thanks for reaching out. Github issue is mainly related to the docs issue. If this is not the case I will suggest you to post your query in Microsoft Q&A or Stackoverflow with the appropriate tags.

@garimss We will now proceed to close this thread. If there is any document issue , please reopen it and we will gladly continue the discussion.


kol run hanging on 403's with Public Assemblies

Hi,
I and a friend have been getting stuck trying to import the online Stompy models using kol run.
StompyMini
StompyFull
When using the standard URLs, we are returned back a tree of 403 errors on various parts of the file. See the attached printout of the terminal.
Note that this happened both with the publicly owned models, and copied models owned by us. (It seems that even when copying to myself, it doesn't transfer ownership of the subassemblies)
I reached out to OnShape support to get some guidance on changing the ownership of subassemblies over to myself, and was returned back some insight into what is causing the 403's on the KOL side of things:

Associated Links:
getAssemblyDefinition
KOL Onshape Api.py Line100
Unfortunately, simply trying to change L100 of api.py just breaks things. I dug into this some to see if I could get a decent PR together to fix it, but it seems like this goes various different parts of the script (More in the client.py and download.py) and requires having the top-level assembly ID available to be passed by subassemblies, parts, etc. into various different calls (metadata calls seem to be the big issue per the error output .txt).
I'm not entirely sure the best way to go about this, but it might involve restructuring a lot of the Part/Subassembly/etc. classes to also include an origin DocumentId included to pass into ?linkedDocumentId=. That's just from some cursory investigation.

KOLIssue103_ErrorLog403.txt

Also, to clarify, the example linkedDocumentId=71f793a23ab7562fb9dec82d is the documentId for StompyFull
https://cad.onshape.com/documents/71f793a23ab7562fb9dec82d/w/e879bcf272425973f9b3d8ad/e/1a95e260677a2d2d5a3b1eb3


Services using Callback URL not displaying correct UI

I have included the following in my report:

[X] CAS server version: 5.0.0
[X] Container/environment type/version (Tomcat, Jetty, Java, Linux/Windows, etc): Tomcat
[X] Steps to duplicate the problem: enable saml idp and add a sp
[X] Stacktraces and CAS logs where appropriate:
When the user tries to access the SP, he gets redirected the IDP Login via SAML mechanism. This could be either /idp/profile/SAML2/Redirect/SSO or /idp/profile/SAML2/POST/SSO. SSOPostProfileHandlerController handles this and will redirect the user to CAS Login page with appended Callback Service ID (for checking the service) and entityId (for displaying). Same thing happens when integrating shibboleth and using mdui, see here: https://apereo.github.io/cas/5.0.x/integration/Shibboleth.html
Problem for callback service/display service and SAML is here: https://github.com/apereo/cas/blob/v5.0.0/support/cas-server-support-saml-idp/src/main/java/org/apereo/cas/support/saml/web/idp/profile/AbstractSamlProfileHandlerController.java#L353. final URLBuilder builder = new URLBuilder(this.callbackService.getId()); for example will just use the predefined regex of the saml callback service (which is added automatically when using saml-idp plugin). So the service URL is just the same regex. Afterwards the entityId is appended to that regex. That all wont be a problem at all, if the whole redirect URL wont be URLencoded in https://github.com/apereo/cas/blob/v5.0.0/support/cas-server-support-saml-idp/src/main/java/org/apereo/cas/support/saml/web/idp/profile/AbstractSamlProfileHandlerController.java#L302.
SamlMetadataUIParserAction cant handle the encoded url in https://github.com/apereo/cas/blob/a1ccfe90993a7fe93908716aa7f8cc3af8744ecd/support/cas-server-support-saml-mdui/src/main/java/org/apereo/cas/support/saml/web/flow/SamlMetadataUIParserAction.java#L84, because the the url here will be sth like https://cas.example.org/login?service=https%3A%2F%2Fcas.example.org%2Fidp%2Fprofile%2FSAML2%2FPOST%2FSSO%2FCallback.%2B%3FentityId%3Dhttps%253A%252F%252Fsp.example.org%252Fshibboleth%26SAMLRequest%3DPD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz48c2FtbHA6QXV0aG5SZXF1ZXN0IHhtbG5zOnNhbWxwPSJ1cm46b2FzaXM6bmFtZXM6dGM6U0FNTDoyLjA6cHJvdG9jb2wiIEFzc2VydGlvbkNvbnN1bWVyU2VydmljZVVSTD0iaHR0cHM6Ly9rb3JuaS5nZnotcG90c2RhbS5kZS9TaGliYm9sZXRoLnNzby9TQU1MMi9QT1NUIiBEZXN0aW5hdGlvbj0iaHR0cHM6Ly9pZHAtZGV2Lmdmei1wb3RzZGFtLmRlL2Nhcy9pZHAvcHJvZmlsZS9TQU1MMi9SZWRpcmVjdC9TU08iIElEPSJfMDc4NDAwYzRhMTAyYjc3NTljODExMmZjMjQ4Y2Y0NDEiIElzc3VlSW5zdGFudD0iMjAxNi0xMS0xNVQxMTo0NTo0MVoiIFByb3RvY29sQmluZGluZz0idXJuOm9hc2lzOm5hbWVzOnRjOlNBTUw6Mi4wOmJpbmRpbmdzOkhUVFAtUE9TVCIgVmVyc2lvbj0iMi4wIj48c2FtbDpJc3N1ZXIgeG1sbnM6c2FtbD0idXJuOm9hc2lzOm5hbWVzOnRjOlNBTUw6Mi4wOmFzc2VydGlvbiI%252BaHR0cHM6Ly9rb3JuaS5nZnotcG90c2RhbS5kZS9zaGliYm9sZXRoPC9zYW1sOklzc3Vlcj48c2FtbHA6TmFtZUlEUG9saWN5IEFsbG93Q3JlYXRlPSIxIi8%252BPC9zYW1scDpBdXRoblJlcXVlc3Q%252B

The whole process is hard to describe, but I hope you get me.
PS: The same thing can be seen on oAuth services as well.

Yeah, this needs to be fixed. If you have a well unit tested fix/patch for this, do not hesitate to open up a pull request

Im unsure which side is wrong. Is it the building of the redirection url or just the extracting part later, which should be fixed?

Let's see what @mmoayyed has to say...

All CAS component that need to deal with request parameters such as service or entityID MUST be prepared to handle handle encoded parameters and decode appropriately. If you find this to be false anywhere, consider that bug (which sounds like MDUI is actually prone to this issue).

The problem is, that the encoded URL to parse is already a request
parameter (service).
Am 15. November 2016 5:29:53 nachm. schrieb Misagh Moayyed
<EMAIL_ADDRESS>
All CAS component that need to deal with request parameters such as service
or entityID MUST be prepared to handle handle encoded parameters and decode
appropriately. If you find this to be false anywhere, consider that bug
(which sounds like MDUI is actually prone to this issue).
--
You are receiving this because you authored the thread.
Reply to this email directly or view it on GitHub:
https://github.com/apereo/cas/issues/2120#issuecomment-260690969

OK lets do a little digging and reproduce this. Stay tuned

You did list that to reproduce this, SAML IdP and a SP must be added but it also sounds like you have MDUI enabled?

Mdui is not needed. It was just for comparison, how it should look like.
Am 15. November 2016 10:42:58 nachm. schrieb Misagh Moayyed
<EMAIL_ADDRESS>
You did list that to reproduce this, SAML IdP and a SP must be added but it
also sounds like you have MDUI enabled?
--
You are receiving this because you authored the thread.
Reply to this email directly or view it on GitHub:
https://github.com/apereo/cas/issues/2120#issuecomment-260778232

OK so then let me ask, when you say not displaying correct UI what does that actually refer to? My understanding is that you are referring to the UI that is displayed on the login page which outlines logo, description and such for the registered service, right? We are basically showing info about the callback service rather than the actual which in your case happens to be entityID, or in the OAuth/OIDC case might be something else. Does that make sense?

Yes, Im referring to the UI that is displayed on the login page which outlines logo, description and such for the registered service.
Correct, you are showing info about the callback service, rather than the actual one from the entityID. I recognized this behaviour for SAML and oAuth. For a better user expierience the original requested service should be displayed.
I only picked the saml one, as i debugged the construction of the callback url and saw the wrong encoding/decoding of the service URL.

Excellent, now we are getting somewhere. This is an easy problem to solve. Thanks!

I have solved this issue for saml2 and snapshots should contain fixes. I'll continue to apply the same fix for oauth and oidc.

This should be handled for all now.


Hide comments in issues

I don't think the previous version was causing problems, nor do I think this will have an effect on the quality of reports we receive, but I don't have a strong opinion, so let's just merge this.


Developer question 3 different generations in the same input stanza JSON

Tying to get timer and input working on a variety of games. the use of 'gen' often seems ambiguous to me in terms of hand-reading the JSON.  For example, I used Inform 7 build 6M62 to compile Kerkerkruip from source https://github.com/i7/kerkerkruip into glulx and running with Git Interpreter.  After ticking some timers and getting to the 12 generation of update:
{"type":"update", "gen":12,
"input":[
{"id":34, "gen":0, "hyperlink":true },
{"id":25, "gen":2, "type":"line", "maxlen":256, "hyperlink":true }
],
"timer":null}
In just this one update, I'm seeing gen as 12, 0, and 2.
I'm assuming 'id' 25 means 'window_id' 25 and gotten that far.  I sent the input word "panels" via JSON:
{"type":"line","gen":2,"window":25,"value":"panels"}

But that fails with "Input generation number does not match.".  The context (JSON variable names) seems highly confusing to me, as I'm sending input for a specific Glk window and it's assigned a specific 'gen' number. The changing from JSON Objects to JSON Arrays kind of implies than an input generation is self-contained "Object" with it's own context of generation (2) - yet that fails in this situation when the player comes along and types his command 'panels'. Also, confusing to Object-like context, I had just sent a bunch of timer responses (now canceled in this stanza) on as input with generations too (which I currently resort to frame-rate locking timers so that I don't ever accidentally tick a timer due to clock time passage and not having a generation slot handy or new JSON coming in).
If the story didn't have timers, this JSON wouldn't be so tricky to interpret. If the player was running a different game with a single window and had just entered "z" command 4 times on line input - the "gen" would be matched up for the input 5 and update 5.  Which was how I had originally interpreted this handy  gen value (2) as part of the Input object for my window 25.  Now I'm left wondering if that gen on the input line should be not sent in the JSON at all. Does it have a purpose?
When you step back and look at naming, my response of "type:line" is also a bit confusing. Isn't what I'm sending really more "type:input_response" with an attribute of "input_type:line".  I can understand the desire to keep the JSON shorter, but several things like "id", "type", "gen", "content" seem to be used with very different meanings at various levels of context.  Maybe consider naming "gen" something like "seq" (sequence) for the input?  On the incoming "update"/"input" the "id" could be labeled "window" to be more consistent with response parameter name "window".
I can eventually figure all this out through brute trial and error. But I have confused it enough times that I felt it was an issue to bring up. Please excuse my verbosity.  Thank you.

The docs explain it pretty clearly:

The gen field must contain the generation number at which this input field was created. If the library does not know about it (i.e., if the field is not already present in the window) then the gen makes no difference. However, if the field is present, then the gen is basically distinguishing between two cases:

The field was created in some earlier update generation. The library will not touch it or affect the user's editing state; the initial and terminators fields are ignored. In this case, you may not update the window's contents.
The earlier input is cancelled; you are creating a new version of the input field at the current generation. In this case, you may update the window's contents. (The updates will be assumed to occur after the old input is cancelled.) You may preserve the user's partial input (from the last input event) by copying it to the initial field.

I was not using GlkOte in any way, so I wasn't using those docs, but now you gave me search-engine hits. Thank you.

I've made a lot of progress in the past 18 hours on getting Gen consistent in my app. It seems to be working better.


$elemMatch multiple criteria support

Correct me if I am wrong but as I can see current Morphia implementation of $elemMatch (i.e. FieldEnd#hasThisElement) doesn't support multiple criteria for array elements or multiple criteria for array of documents.
So there is no way to create such query using morphia:
db.restaurants.find({grades : { $elemMatch:{"score":{$gt : 80 , $lt :100}}}})
stackoverflow question
I didn't find any linked issues here.

If you can build and test the 'hasThisElement' branch, I have a fix that I think will get you what you need.  Building on the existing tests, this is what the test for the new elemMatch() method looks like:
        Query<Keyword> query = getDs()
            .createQuery(Keyword.class)
            .filter("keyword = ", "Oscar")
            .filter("score = ", 12);
        assertNull(getDs().find(PhotoWithKeywords.class)
                          .field("keywords")
                          .elemMatch(query)
                          .get());


allow specifying of target host machine on every individual resource/data source

PR for issue #1071
The motivation of this PR is to allow proper abstractions when deploying to multiple host machines in a data center.
This PR adds an host argument to all resources and data sources. This argument is used for establishing a connection to the libvirt provider. If the argument is missing, the uri parameter of the provider is used as the default connection URI.
This feature allows for modules to determine where to allocate a specific resource inside a data center.

I have marked this as draft pending my cleanup of what looks like local merges from other PRs.
Specifically the PR #6 from memetb/graphics-none-option which is a PR that I merged on my forked repo.
For clarity, this PR (#1072) is dependent on PR #1059 (the ssh upgrade). There would be too much going back to make things work without it.

Incorrectly merged graphics-none-option has been removed. This PR is ready to go. Pending review.
As mentioned above, this PR is dependent on #1059, so reviewing and merging that  PR will allow for easier review of this PR.


Write a C++ program to convert decimal to binary

Description
Write a C++ program to convert decimal to binary
Binary is a base-2 number system. It uses only two digits: 0 and 1. The digits are called bits. A bit is the smallest unit of information in a computer. A bit can be either 0 or 1. A bit can be used to represent a single value, such as 0 or 1, or it can be used to represent a single state, such as on or off.
To convert a decimal number to binary, we can use the following algorithm:

Divide the decimal number by 2.
Write down the remainder.
Divide the quotient by 2.
Write down the remainder.
Repeat steps 3 and 4 until the quotient is 0.
The binary number is the sequence of remainders written in reverse order.

Input  : 10
Output : 1010

How to contribute

Save the solution in program/ConvertDecimalToBinary.cpp file
Add ConvertDecimalToBinary.cpp file in convert-decimal-to-binary folder

@harshraj8843 hey I would like to work on this issue, assign me, please.

@sanmay321
Please type !assign here
Thank you!

!assign

please check the PR #3867


Using setSrc on iOS devices

I'm building a website where I've got some YouTube like thumbnails which change the source of my mediaelement via data attributes. It works like a charm on desktop browsers but comes to an end on mobile ones (tested in safari and chrome mobile on iPhone and iPad).
Has anyone ever managed to get this working?
This is how it's done:
player2.setSrc('media/vid/'+videoData[0]+'.mp4');
player2.load();
player2.play();

Turned out, that switching the source files worked pretty well and the iOS devices had trouble starting the video after loading a new source because of the well known "autostart-issue" (http://stackoverflow.com/a/12496184).


Edit id3 tracks metadata

à la iTunes

It will be impossible using the current musicmetadata module. It doesn't support write feature..

The package browser-id3-writer allows writing metadata, which, along with musicmetadata allows to read/write without FFmpeg or libav dependencies

node-id3
id3-parser (in TS)
ffmetadata (needs ffmpeg)
musicmetadata (I don't like it)
browser-id3-writer
There are several other libs. But I like node-id3.

There is more to this question. It is not only about the feasibility of the feature:

Is Museeks a music player or a library manager? For now, it is the former only
If we decide to implement it, how to design it properly? (talking about UX and visual design here)

Well, since is something that Linux lacks, I (personally) would like to do it both. But we could focus on the player feature for now.

Maybe we could open another smaller window. But there are two approaches here:

On one way we could manage a single song metadata
On the other way, we could manage the metadata for the selected song, and add the ability of change several files as selected, and update the metadata in that group (Like Artist, or Album)

@Igorer88 refer https://www.mp3tag.de/en/  for rich UI. When did added ID3 tags, it's done for multiple files at a time instead of single file. Opening new window is not good option, instead create new tab.


Resource file (python) can not access to another resource file (.png) [bug]

Describe the bug
I'm using the resource to trigger a python file and it works but the python file needs to access to multiple images
tauri.conf
"tauri": {
    "allowlist": {
      "all": true,
      "shell": {
        "all": false,
        "execute": true,
        "open": false,
        "sidecar": true,
        "scope": [
          {
            "name": "opencv",
            "cmd": "python",
            "args": [
              "assets/opencv.py"
            ]
          }
        ]
      }
    },
    "bundle": {
      ...,
      "resources": [
        "assets/*",
        "assets/images/img_two/*.png"
      ],

resources

python file (opencv.py)
find_objects = MultipleVision("images/img_two/*.png") # images path

self.needle_imgs = [cv.imread(file, cv.IMREAD_UNCHANGED) for file in glob.glob(needle_img_path)]
self.needle_imgs_text = [str(file).split('.')[0] for file in glob.glob(needle_img_path)]
print(self.needle_imgs) # here I try to print the images

I try to print the images, if I run the command in the console (python opencv.py) it works but in tauri It can not get the images

Reproduction

Trigger the command
The python file is executed
The python file can not get the images

Expected behavior
No response
Platform and versions
➜ yarn tauri info
yarn run v1.22.19

Environment
  › OS: Mac OS 12.3.1 X64
  › Node.js: 18.1.0
  › npm: 8.8.0
  › pnpm: Not installed!
  › yarn: 1.22.19
  › rustup: 1.25.1
  › rustc: 1.62.1
  › cargo: 1.62.1
  › Rust toolchain: stable-aarch64-apple-darwin

Packages
  › @tauri-apps/cli [NPM]: 1.0.5
  › @tauri-apps/api [NPM]: 1.0.2
  › tauri [RUST]: 1.0.5,
  › tauri-build [RUST]: 1.0.4,
  › tao [RUST]: 0.12.2,
  › wry [RUST]: 0.19.0,

App
  › build-type: bundle
  › CSP: unset
  › distDir: ../build
  › devPath: http://localhost:3000/
  › framework: React

App directory structure
  ├─ node_modules
  ├─ public
  ├─ src-tauri
  ├─ build
  ├─ .git
  └─ src
✨  Done in 10.00s.

Stack trace
No response
Additional context
No response

try printing the working directory from the python script and see if it matches the app directory where the resources located, if not, then you need to spawn the sidecar there or modify the path you're reading in the python script.

well, your comment gave me a solution and now it worked! I used this path for getting the images, thank you so much!!
custom_path = f'{os.getcwd()}/assets/images/img_two/*.png'


ENH: Add annotations for scipy.spatial.cKDTree

Reference issue
n.a.
What does this implement/fix?
This PR adds annotations to the cKDTree and cKDTreeNode classes for the purpose of static type checking.
Additional information

There were two methods where different output types are returned for 1D vs >= 2D array-likes (see below).
As we cannot describe array shapes/dimensionality as of yet, the output type is set to Any here.
There are 2 checks for 0D array-likes, the latter currently excluding 0D arrays as (again) we cannot type
array shapes/dimensionality yet. This does mean that there is some small room for a false positive here,
though these are very much edge cases in my opinion.

As discussed during the meetup. This is ready so I am merging. Thanks @BvB93!


QCL Log Current accessible by hotkey also

Currently Log output by clipboard is triggered by snippit "cl"
I would like it also accessible by hotkey. Maybe use ⌃ ⌥ v. Sort of makes sense from a pseudo paste from clipboard perspective.

Thanks for issue..
sorry to late..
I will fix it and update...


WF rules for structs

In https://github.com/rust-lang/a-mir-formality/pull/145, @jackh726 added basic WF rules for ADTs:
https://github.com/rust-lang/a-mir-formality/blob/c0e069180dc28639fa5b2bf351e72e657bf8a5b4/crates/formality-prove/src/prove/prove_wf.rs#L42-L46
These rules effectively say that Foo<T0...Tn> is WF if T0..Tn are WF. That's necessary but not sufficient. They should also look up the where-clauses declared on Foo and prove that those hold.

Mentoring instructions
The Decls struct needs to be extended to include information about each ADT, similar to the existing trait_decls field. I imagine something like adt_decls: Vec<AdtDecl>. Like [TraitDecl], each AdtDecl would have a id: AdtId field and a binder field, the bound data for which stores the where-clauses (and eventually the field names and types). This would be populated based on the structs and enums appearing in the crates.

I guess this was completed in #148? I do see a check for where clauses on adts.


Add note about installer to readme

Adds a small notice to the repo's readme to point to the installer

@johnmcollier also need to update the release branch, so open another PR  from the same branch


Running pipenv --completion is very slow

Running pipenv --completion is consistently slow (it takes about 1 second to run), even after the command has been run multiple times and everything has been loaded into memory.
This means including eval $(pipenv --completion) in a .bashrc file makes the user wait for a second until the shell prompt comes up.
Describe your environment

OS: Kubuntu 17.04
Python version: 2.7.13
Pipenv version: 9.0.1

My shell is bash.
Expected result
The command shouldn't take so long to run.
Actual result
When running in bash, the command takes a whole second to run.
$ time pipenv --completion

_pipenv_completion() {
    local IFS=$'\t'
    COMPREPLY=( $( env COMP_WORDS="${COMP_WORDS[*]}" \
                   COMP_CWORD=$COMP_CWORD \
                   _PIPENV_COMPLETE=complete-bash $1 ) )
    return 0
}

complete -F _pipenv_completion -o default pipenv

real    0m0.987s
user    0m0.888s
sys     0m0.080s

Steps to replicate
Run time pipenv --completion in a bash shell.
P.S. This is a great project.

Same here using zsh.
Describe your environment

OS: Arch Linux (4.14.8-1-ARCH)
Python version: 3.6.3
Pipenv version: 9.0.1

Result
$ time pipenv --completion

#compdef pipenv
_pipenv() {
  eval $(env COMMANDLINE="${words[1,$CURRENT]}" _PIPENV_COMPLETE=complete-zsh  pipenv)
}
if [[ "$(basename ${(%):-%x})" != "_pipenv" ]]; then
  autoload -U compinit && compinit
  compdef _pipenv pipenv
fi

pipenv --completion  1.20s user 0.09s system 99% cpu 1.301 total

much more slow ..
pipenv --completion  2.64s user 0.29s system 99% cpu 2.954 total

It's ~0.9 for me:

pipenv --completion  0.92s user 0.13s system 99% cpu 1.062 total

Also, even 0.4s is so slow.

you get what you pay for :)

tldr: PR incoming to ~halve the time pipenv --completion takes, at least for me.

(click to expand, if somehow you're interested in what are basically random notes I was making while doing this :P)
Even with a hot cache, it's still over a second here. It seems to take an inordinate amount of processing power to essentially just print some text (yes, that's briefly 60% on one core):

The actual completion itself is ok, it's just outputting the setup that takes way longer than it should.
Let's try to work out why!
Here's some data from my (admittedly somewhat old) machine, gathered via sprinkling print(..., time.time()) around in interesting places:
__init__: startup<PHONE_NUMBER>.8500586
__init__: importing .cli:<PHONE_NUMBER>.8503625
cli: startup<PHONE_NUMBER>.8590631
cli: stdlib imports done<PHONE_NUMBER>.8704586
cli: 3rd-party imports done<PHONE_NUMBER>.9269598
cli: 1st-party imports done<PHONE_NUMBER>.9281874
cli: end of module reached<PHONE_NUMBER>.9306123
__init__: imported .cli:<PHONE_NUMBER>.9306629
__main__: importing cli<PHONE_NUMBER>.9308915
__main__: imported cli<PHONE_NUMBER>.930915
__main__: running cli()<PHONE_NUMBER>.9309256
cli: start of cli()<PHONE_NUMBER>.9327562
cli: imported .core<PHONE_NUMBER>.3628652
cli: not doing update check<PHONE_NUMBER>.3629308
cli: started doing completion<PHONE_NUMBER>.3629456
cli: beginning process<PHONE_NUMBER>.3629816
cli: started process<PHONE_NUMBER>.8666577

_pipenv_completion() {
    local IFS=$'\t'
    COMPREPLY=( $( env COMP_WORDS="${COMP_WORDS[*]}" \
                   COMP_CWORD=$COMP_CWORD \
                   _PIPENV_COMPLETE=complete-bash $1 ) )
    return 0
}

complete -F _pipenv_completion -o default pipenv

cli: printed process output<PHONE_NUMBER>.8668966

Conclusions:

it takes about 50ms to import all the 3rd-party libraries used in pipenv.cli
importing pipenv.cli itself takes about 80ms (~10ms to start actually executing cli.py, 50ms of 3rd-party imports, a little more here and there)
importing pipenv.core takes about 420ms
running pipenv again via delegator.py takes about 480ms (in comparison, running true by the same method takes only about 4ms)
printing the actual output from the child pipenv takes about 1ms

Pain points:

from . import core
delegator.run('pipenv')

Profiling pipenv.core
core: startup<PHONE_NUMBER>.883466
core: done import section 1<PHONE_NUMBER>.8928788
core: done import section 2<PHONE_NUMBER>.2973905
core: done import section 3<PHONE_NUMBER>.2974393
core: done all imports<PHONE_NUMBER>.317209
core: end of module reached<PHONE_NUMBER>.3178222

Looks like the second group of imports is taking 400ms (of 420ms for the whole core module to run)! Drilling down further:
core: done import section 1<PHONE_NUMBER>.6354196
core: importing requests<PHONE_NUMBER>.6517467
core: importing pipfile<PHONE_NUMBER>.7360592
core: importing pipdeptree<PHONE_NUMBER>.7379525
core: importing semver<PHONE_NUMBER>.025176
core: imported those<PHONE_NUMBER>.0279028
core: done import section 2<PHONE_NUMBER>.0321164

Requests is taking ~100ms (it's a big comprehensive library, not that surprising), but pipdeptree takes nearly 300ms all by itself!
I could probably try and work out why importing that takes so long, but I have to wonder – why is pipenv.core being imported before completion runs? If I move the if completion: block right up to the start of pipenv.cli.cli, that halves the amount of time pipenv --completion takes to run!

i wouldn’t have called 0.4s a satisfying completion to this issue; it’s still a LOT slower than it should be, and still fairly unusable to add to shell rc scripts

I'm guessing you're getting that super, super fast 0.4s time because you're not running on a Raspberry Pi 3? I'm currently getting 6 seconds on v11.8.0.
[me@piserver ~]$ time pipenv --completion

_pipenv_completion() {
    local IFS=$'\t'
    COMPREPLY=( $( env COMP_WORDS="${COMP_WORDS[*]}" \
                   COMP_CWORD=$COMP_CWORD \
                   _PIPENV_COMPLETE=complete-bash $1 ) )
    return 0
}

complete -F _pipenv_completion -o default pipenv

real	0m6.283s
user	0m6.199s
sys	0m0.080s

the solution is to just pipe the output of --completion and put the output into your .profile

this is pretty obvious :)

What a great time to be alive. Output some static text - 0.4 seconds

@Djaler you're welcome to fix it and pr your fix if you have one

the solution is to just pipe the output of --completion and put the output into your .profile

The solution is to pipe the output to /usr/share/bash-completion/completions/pipenv or ~/.local/share/bash/completion/completions/pipenv, but surprisingly few people seem understand much at all about completion.
Of course, this does nothing to speed up the actual tab-completion part, despite the fact that most completion definitions (i.e. the non python-autogenerated ones) are written to avoid shelling out to any external commands more than necessary, using shell builtins wherever possible and generating then hardcoding (via shell arrays) anything application-specific in the 99% of cases where it won't change without source code changes.

@eli-schwartz click handles much of the overhead so it saves us from having to be experts on this specific thing most of the time

@eli-schwartz though this doesn’t stay up-to-date when you upgrade. i have far too many things in my completions to remember to re-export their completion script every time up upgrade.
so far, the best solution for my workflow has been to remove the completion, and stop using pipenv until it’s fixed.
you should not assume that people don’t know much at all about thing x. it’s better to assume that their workflow, use-case, or tolerance is different to yours.

As a small FYI pipenv load time should be substantially faster in the next release. I don’t really know what would be acceptable if 0.4s made you uninstall and stop using pipenv entirely though (what is the implication here? You can’t use pipenv unless it has completion? I rarely use completion so I’m not even sure why this would make you abandon a tool entirely

@eli-schwartz click handles much of the overhead so it saves us from having to be experts on this specific thing most of the time

Yes, but I sort of wish click generated proper completions. :smiley: There are tools which generate "proper" completions  thereby saving every application developer the effort of knowing how it works.

@eli-schwartz though this doesn’t stay up-to-date when you upgrade. i have far too many things in my completions to remember to re-export their completion script every time up upgrade.

But it does. The current completion simply executes pipenv every time you try to complete anything; this doesn't need to be checked for updates to the completion definition...
Either way it does not stop the completion from being delivered in data_files to share/bash-completion/completions, which should work, and be upgraded, whether installed via sudo pip (:cry:), pip install --user (since https://github.com/scop/bash-completion/commit/1d25d72ca8633c19cb089dff447d08c531379c59 it will be loaded from ~/.local), or python setup.py install --root="$package_manager_install_root".
This would save on one initial call to pipenv on every single new interactive shell, which while not quite as significant as one call on every single pipenv <TAB> is still not insignificant. It's why bash-completion created the idea of lazy-loaded completions and tries to encourage people to use that over the "COMPAT_DIR" in /etc/bash_completion.d.

you should not assume that people don’t know much at all about thing x. it’s better to assume that their workflow, use-case, or tolerance is different to yours.

In the ideal case, users do not know, because it is automagically handled by developers or distro packagers. For example, https://git.archlinux.org/svntogit/community.git/commit/trunk?h=packages/python-pipenv&id=484eec9eabad806654fea29801577dc2cbe4188a


feat: Make spacefinder ignore thumbnails

What does this change?
Ignore thumbnails when placing inline1 ads on desktop.
Why?
Thumbnails sit to the left of articles on desktop so there is no reason to avoid them when placing inline1 ads.
Very similar issue from last year: https://github.com/guardian/frontend/pull/24690
Screenshots
Article: https://www.theguardian.com/lifeandstyle/2023/mar/12/food-for-thought-boost-brain-health-good-diet?sfdebug=1

Before
After

Pull Request Test Coverage Report for Build<PHONE_NUMBER>

0 of 0   changed or added relevant lines in 0 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage remained the same at 93.911%

Totals

Change from base Build<PHONE_NUMBER>:
0.0%

Covered Lines:
631

Relevant Lines:
665

💛  - Coveralls

I think the screenshots might be the wrong way around

Richlinks are a lot more common than thumbnails and fixing https://github.com/guardian/frontend/pull/24690 led to a revenue uplift in the order of a few £1000 a month.

Gotcha. That makes sense. An AB test would likely not be worth it then.


Add PopeenCom.ClassicVolumeMixer 2.2

[ ] Have you signed the Contributor License Agreement?
[ x] Have you checked that there aren't other open pull requests for the same manifest update/change?
[ x] Have you validated your manifest locally with winget validate --manifest <path>?

[x ] Does your manifest conform to the 1.4 schema?

Note: <path> is the name of the directory containing the manifest you're submitting.

Microsoft Reviewers: Open in CodeFlow

@microsoft-github-policy-service agree [company="PopeenCom"]

@microsoft-github-policy-service agree


fix: c.req.params() in nested app with custom error handler.

Fixes #1590
It may look like a dirty hack at first glance, but if you look closely, you will see it is not a problem.
I have also considered the following approaches.

https://github.com/usualoma/hono/tree/fix-nested-onerror-params-by-getParams
https://github.com/usualoma/hono/tree/fix-nested-onerror-params-by-undefined

However, they all increase the code and complexity of types, so this PR approach is better.
Author should do the followings, if applicable

[x] Add tests
[x] Run tests
[x] yarn denoify to generate files for Deno

Hi @usualoma !

It may look like a dirty hack at first glance, but if you look closely, you will see it is not a problem.

Indeed, it took a little bit of time to understand what it does. But, as you said, it makes sense and it's good that it can be fixed by modifying only one line.
Thank you very much!


When opening notebook (.zpln file) in VS Code it is read only

@allen-li1231 Thanks for making this extension. I have followed the instructions you have in the VS Code extensions page but when I export an existing notebook out to a .zpln file and then open it within VSCode, it keeps marking it as read-only. Is this expected or maybe my setup is not configured correctly? I seem to have gotten it connected to my spark cluster also and everything works in regular Zeppelin web app just not the extension.
What I'm really after is VSCode's intellisense capabilities so I thought I'd install your extension, pull in the notebook file and then take advantage of Metals Scala extension to get intellisense/autocomplete on the scala code in the notebook. This is because the intellisense in vanilla Zeppelin web app leaves alot to be desired. Maybe this idea won't work?
My setup is as follows:

MacOS
VSCode v1.84.0
Spark v3.2.1 (running in a cluster across machines in my local network)
Zeppelin web app (port 9090) and spark master (default spark ports) are all running on my local machine

thanks

@smitty-codes Let me know if you have any further problems, or this issue will be closed in 5 days.

Hi @smitty-codes , in the new version (0.2.1) the logic of locking zpln file has been removed, as I believe lots of people are also perplexing if it is expected. Let me know if you have encountered any further problem, thanks.


macOS?

What do I do about macOS devices?
https://learn.microsoft.com/en-us/azure/active-directory/hybrid/migrate-from-federation-to-cloud-authentication?source=recommendations#pre-work-for-sso
Should be expanded for macOS devices (widespread in higher education, etc).
Should it use Seamless SSO?  I believe this section should link to https://learn.microsoft.com/en-us/azure/active-directory/hybrid/how-to-connect-sso-quick-start
[Enter feedback here]

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

ID: 57bc474a-a353-984d-3440-144c3444b100
Version Independent ID: 20ec9d72-24f7-ec32-4c68-f36a5d7968ab
Content: Migrate from federation to cloud authentication in Azure Active Directory - Microsoft Entra
Content Source: articles/active-directory/hybrid/migrate-from-federation-to-cloud-authentication.md
Service: active-directory
Sub-service: hybrid
GitHub Login: @janicericketts
Microsoft Alias: jricketts

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

Info added to article in PR 222076 to resolve issue. #please-close


Images and anchors should be draggable by default

But if I don't set that property explicitly, the polyfill doesn't work, although in desktop browsers it works fine. Tested on <img> only.

 Thanks for reporting.
Which browser/os combinations do you use?

I use latest stable Chrome and Firefox. But I write a library that should also work on Edge (I haven't tested what happens on that one).
As a workaround in the meantime I'm setting draggable=true as a property in my images before configuring dragging, so this is not blocking me at all (i.e. not urgent).

Thanks!


Add OpenGraph metadata for improved preview when sharing website

Add metadata for improved preview when sharing website. This would offer a specific title, description, image, timestamp, etc. when the website URL is shared in a website, social media or instant messaging app.
Currently in LinkedIn, the preview is

Example data to use:
<meta name="og:updated_time" property="og:updated_time" content="1714338554">
<meta name="og:site_name" property="og:site_name" content="Spyder IDE">
<meta name="og:title" property="og:title" content="Intergalactic Spyder IDE">
<meta name="og:type" property="og:type" content="website">
<meta name="og:image" property="og:image" content="https://www.spyder-ide.org/screenshot.png">
<meta name="og:image:width" property="og:image:width" content="5000">
<meta name="og:image:height" property="og:image:height" content="2617">
<meta name="og:url" property="og:url" content="https://www.spyder-ide.org/">
<meta name="og:description" property="og:description" content="the Scientific Python Development Environment">

Note to:

create screenshot.png (crop only screen from https://www.spyder-ide.org/spyder_website_banner.webp and run optipng on it)
use the width and height
update_time should be updated with each website update

All this will greatly improve the preview of the website.

Should PR #7 close this @conradolandia , or is there more work to be done here?

Yeah, this can be closed now, @CAM-Gerlach, thank you for your attention.

Yeah, this can be closed now, @CAM-Gerlach, thank you for your attention.


Add syntactic sugar - andWhereBetween and andWhereNotBetween

Addresses issue #1131

@rfink Hey, sorry this PR was left hanging for so long. I'm fine with merging this. Would you mind solving the conflicts here?

Sure, merged in and awaiting new tests.

Brilliant. Thanks!

Thanks!


Error: No such file or directory when running amplify sandbox inside the amplify/ directory

Environment information
System:
    OS: macOS 13.5.1
    CPU: (10) arm64 Apple M1 Pro
    Memory: 325.67 MB / 32.00 GB
    Shell: 3.6.1 - /opt/homebrew/bin/fish
  Binaries:
    Node: 20.9.0 - ~/Library/Caches/fnm_multishells/77574_1680319338649/bin/node
    Yarn: 1.22.19 - ~/Library/Caches/fnm_multishells/77574_1680319338649/bin/yarn
    npm: 10.2.4 - ~/Library/Caches/fnm_multishells/77574_1680319338649/bin/npm
    pnpm: 8.10.5 - ~/Library/Caches/fnm_multishells/77574_1680319338649/bin/pnpm
    bun: 1.0.12 - ~/.bun/bin/bun
    Watchman: Not Found
  npmPackages:
    @aws-amplify/backend: Not Found
    @aws-amplify/backend-cli: Not Found
    aws-amplify: Not Found
    aws-cdk: Not Found
    aws-cdk-lib: Not Found
    typescript: Not Found

Description
When running npx amplify sandbox inside the amplify/ directory we encounter Error: No such file or directory, however this error can be improved to notify us that the backend.ts file does not exist at the path

npm create amplify@latest
cd amplify
npx amplify sandbox

Example error message:
backend.ts does not exist at path /path/to/project/amplify/amplify/backend.ts
please try running this command from your project root

@rtpascual This issue seems to be resolved in #1117. What do you think?


💄 update drawer design

Codecov Report

Merging #121 into development will not change coverage.
The diff coverage is n/a.

@@             Coverage Diff              @@
##           development     #121   +/-   ##
============================================
  Coverage        86.92%   86.92%
============================================
  Files               20       20
  Lines              497      497
============================================
  Hits               432      432
  Misses              65       65

Continue to review full report at Codecov.

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

@rishichawda just a minor change. Drawer must be 100% of the height of the window. Other things look good

@rishichawda just a minor change. Drawer must be 100% of the height of the window. Other things look good

Okay, I'll change and push.

Updated in https://github.com/Codebrahma/react-lite-ui/pull/121/commits/4b757e5dcccf910bec1009748cdf6da6979edfbe


LICENSE

Hi all! What is you plan with the LICENSE? We use Apache 2.0 in Pythia, while Pangeo Gallery notebooks generally use MIT license. The latter is fully permissive AFAIK, so there shouldn't be any issue with converting that to Apache when migrated, but we might also want to keep that as is. Any thoughts?

Based on discussion with the group, the consensus was to stick with the original license for any repurposed material. So I will switch this repo to MIT license.


WIP - don't merge - trial for nicer outside-legend kwargs

Please confirm that this PR has done the following:

[ ] Tests Added
[ ] Documentation Added
[ ] Description in RELEASE_NOTES.md Added

Adding to RELEASE_NOTES.md (remove section after adding to RELEASE_NOTES.md)
Please add a single line in the release notes similar to the following:
- (#XX)[http://link-to-pr.com] Added feature which does something

Description of PR
Please describe the changes introduced by this PR.

Coverage increased (+0.04%) to 84.725% when pulling b6c51b9a3a33b96fe4b99aa5fa8c6e2575d00d67 on danielhuppmann:outside-legends-nice into 381c4f6efccf1691feacff3f961b9b67645a422a on IAMconsortium:master.

Coverage increased (+0.04%) to 84.725% when pulling b6c51b9a3a33b96fe4b99aa5fa8c6e2575d00d67 on danielhuppmann:outside-legends-nice into 381c4f6efccf1691feacff3f961b9b67645a422a on IAMconsortium:master.

Hi @danielhuppmann I like it! Could you please also update the tutorial?


[Rust] Please publish fury for rust to crates.io

Hi @miladamery , thanks for reporting this issue. Fury rust is not stable and still experimental, we plan publish it to crates.io when it's stable

Hi, just a friendly on this.
Im starting a new project and im wondering how close to stable the rust version is ? If its a couple of weeks away or if it looks like it will be another 6 months ?
No worries in both cases, just wondering.
Thank you for the project !

Hi @happysalada , if everything goes right, we will make a formal release in next two monthes.


Droppable lanes

Prevent card dropping to lanes specified with droppable prop. Can also be globally set on the Board component. Defaults to true

Made some changes to the PR. I like the idea of droppable prop for Lane component. However the commit assumed the prop being passed to Board component instead. Fixed it and added a story to verify/illustrate the same.
Thanks for your contributions!

Excuse me, how to drag lane to reorder Lane?


Permission Denied on Render

I am also getting the permission denied error that was referenced in #467, my apache is running under www-data and I have chmod -R www-data:www-data grav
Twig_Error_Runtime thrown with message "An exception has been thrown during the rendering of a template ("mkdir(): Permission denied") in "modular/showcase.html.twig" at line 3."

Stacktrace:
#38 Twig_Error_Runtime in /var/www/grav/vendor/twig/twig/lib/Twig/Template.php:396
#37 Grav\Common\Page\Page:content in <#unknown>:0
#36 Whoops\Exception\ErrorException in /var/www/grav/vendor/gregwar/cache/Gregwar/Cache/Cache.php:151
#35 Whoops\Run:handleError in <#unknown>:0
#34 mkdir in /var/www/grav/vendor/gregwar/cache/Gregwar/Cache/Cache.php:151
#33 Gregwar\Cache\Cache:getCacheFile in /var/www/grav/vendor/gregwar/cache/Gregwar/Cache/Cache.php:290
#32 Gregwar\Cache\Cache:getOrCreate in /var/www/grav/vendor/gregwar/cache/Gregwar/Cache/Cache.php:318
#31 Gregwar\Cache\Cache:getOrCreateFile in /var/www/grav/system/src/Grav/Common/Page/Medium/ImageFile.php:85
#30 Grav\Common\Page\Medium\ImageFile:cacheFile in /var/www/grav/system/src/Grav/Common/Page/Medium/ImageMedium.php:502
#29 Grav\Common\Page\Medium\ImageMedium:saveImage in /var/www/grav/system/src/Grav/Common/Page/Medium/ImageMedium.php:138
#28 Grav\Common\Page\Medium\ImageMedium:url in <#unknown>:0
#27 call_user_func_array in /var/www/grav/vendor/twig/twig/lib/Twig/Template.php:598
#26 Twig_Template:getAttribute in /var/www/grav/vendor/twig/twig/lib/Twig/Environment.php:403
#25 __TwigTemplate_480272903c18557142d5d985114c2dae35ca1506a7bba55c642b97d4c0460d2f:doDisplay in /var/www/grav/vendor/twig/twig/lib/Twig/Template.php:381
#24 Twig_Template:displayWithErrorHandling in /var/www/grav/vendor/twig/twig/lib/Twig/Template.php:355
#23 Twig_Template:display in /var/www/grav/vendor/twig/twig/lib/Twig/Template.php:366
#22 Twig_Template:render in /var/www/grav/vendor/twig/twig/lib/Twig/Environment.php:347
#21 Twig_Environment:render in /var/www/grav/system/src/Grav/Common/Twig/Twig.php:219
#20 Grav\Common\Twig\Twig:processPage in /var/www/grav/system/src/Grav/Common/Page/Page.php:575
#19 Grav\Common\Page\Page:processTwig in /var/www/grav/system/src/Grav/Common/Page/Page.php:512
#18 Grav\Common\Page\Page:content in <#unknown>:0
#17 call_user_func_array in /var/www/grav/vendor/twig/twig/lib/Twig/Template.php:598
#16 Twig_Template:getAttribute in /var/www/grav/vendor/twig/twig/lib/Twig/Environment.php:403
#15 __TwigTemplate_83a86be10006ee3a9459b27a0bc3e210328da8c35b8e37287ef92e7c7a0615bd:block_content in /var/www/grav/vendor/twig/twig/lib/Twig/Template.php:167
#14 Twig_Template:displayBlock in /var/www/grav/vendor/twig/twig/lib/Twig/Environment.php:403
#13 __TwigTemplate_d9d3c1d92c5c154af08152a2feee9574fea087d55c90aaaf4e06accae86d9698:block_body in /var/www/grav/vendor/twig/twig/lib/Twig/Template.php:167
#12 Twig_Template:displayBlock in /var/www/grav/vendor/twig/twig/lib/Twig/Environment.php:403
#11 __TwigTemplate_d9d3c1d92c5c154af08152a2feee9574fea087d55c90aaaf4e06accae86d9698:doDisplay in /var/www/grav/vendor/twig/twig/lib/Twig/Template.php:381
#10 Twig_Template:displayWithErrorHandling in /var/www/grav/vendor/twig/twig/lib/Twig/Template.php:355
#9 Twig_Template:display in /var/www/grav/vendor/twig/twig/lib/Twig/Environment.php:403
#8 __TwigTemplate_83a86be10006ee3a9459b27a0bc3e210328da8c35b8e37287ef92e7c7a0615bd:doDisplay in /var/www/grav/vendor/twig/twig/lib/Twig/Template.php:381
#7 Twig_Template:displayWithErrorHandling in /var/www/grav/vendor/twig/twig/lib/Twig/Template.php:355
#6 Twig_Template:display in /var/www/grav/vendor/twig/twig/lib/Twig/Template.php:366
#5 Twig_Template:render in /var/www/grav/vendor/twig/twig/lib/Twig/Environment.php:347
#4 Twig_Environment:render in /var/www/grav/system/src/Grav/Common/Twig/Twig.php:322
#3 Grav\Common\Twig\Twig:processSite in /var/www/grav/system/src/Grav/Common/Grav.php:157
#2 Grav\Common\Grav:Grav\Common\{closure} in /var/www/grav/vendor/pimple/pimple/src/Pimple/Container.php:113
#1 Pimple\Container:offsetGet in /var/www/grav/system/src/Grav/Common/Grav.php:257
#0 Grav\Common\Grav:process in /var/www/grav/index.php:37

This I think is the same issue as i posted about on Twitter and Gitter.im:

Guys fixed a bug that could be causing some your permissions issues..
basically in system/config/system.yaml there’s an option for images: cache_perms: 0755, that needs to be images: cache_perms: ‘0755’ in quotes!
after that you will need to clear cache to remove the badly created cached images
stupid typo, but has big consequences
will throw twig errors if you have image references in your twig too

It's fixed in develop, and I will release an update soon, but this is the only fix in the release.

I will check manually. Thanks!
On Sat, Dec 12, 2015 at 2:58 PM Andy Miller<EMAIL_ADDRESS>wrote:

This I think is the same issue as i posted about on Twitter and Gitter.im:
Guys fixed a bug that could be causing some your permissions issues..
basically in system/config/system.yaml there’s an option for images:
cache_perms: 0755, that needs to be images: cache_perms: ‘0755’ in quotes!
after that you will need to clear cache to remove the badly created cached
images
stupid typo, but has big consequences
will throw twig errors if you have image references in your twig too
It's fixed in develop, and I will release an update soon, but this is the
only fix in the release.
—
Reply to this email directly or view it on GitHub
https://github.com/getgrav/grav/issues/520#issuecomment-164185587.

Release is out there btw.

Yup that fixed it.  If anyone else has this issue, I had to manual remove some images in the images folder after the upgrade.


Show a helpful toast when the user has not logged into the extension

Right now, when a user has not logged into the extension and tries to e.g., create a send transaction, they get an unhelpful toast:

(I believe this used to say something like "User must login to extension" — not sure why that changed.)
Instead, it should show a message like "You must log into the extension first", and without all the [ConnectError] cruft.

there is already logic to handle opening the login popup, instead of using a toast. but the way authorize.ts is written prevents this logic from working

Ah, this should be closed anyway — it was fixed recently


get saving/loading working for learned predicates

Update: I went ahead and made everything pickleable, including the option fields in the environments, the samplers in the operators, and the classifiers in the learned predicates. Now saving/loading is all handled through a single call to pickle self._operators in operator_learning_approach.py. @tomsilver please re-review.

NB: We could instead use import dill instead of import pickle and then we don't have to convert all the lambdas to actual functions, but @tomsilver suggests that this has been non-robust in the past, so we choose to use the standard pickle library.


Add Area and Centroid nodes

Create Area and Centroid nodes which can provide the area and centroid of VectorData respectively.
Create new function perimeter_centroid for Bezier and Subpath that calculates the line integral of position.
Create new function is_linear which check if the bezier curve is equivalent to a line. Used in the calculation of intersection of two bezier curves where initially a line-like cubic bezier would give the wrong area.

!build

!build

Cool!
https://github.com/GraphiteEditor/Graphite/assets/4388688/780a6a0c-96c5-4dae-a76d-24b1e7c489f5


Invalidate cache on push of this repo

When this repo is pushed, we upload pdfs to S3; we should invalidate the assets.caselaw.nationalarchives.gov.uk cache to ensure that the details are fresh. This is a bit of a sledgehammer; a more finely tuned option would just invalidate the new files.
Presumably the unpublished files are not cached in cloudfront at all.
We might need to also think about invalidating caselaw., since /data.pdf might be cached, but I think we mostly just point at assets these days.
Permissions have already been granted in S3 to the github-action-custom-pdf user and a secret added to this github repo.

 PDFs: Invalidate assets cache on Cloudfront when pushing to custom-api


Virtual keyboard issue on Android Chrome...

This issue happens only on mobile Chrome browser (mostly on Android I think...). The page was like this:

Then, if I click on the lower "E-mail" input, a white area appears just above the virtual keyboard...

This happens only if the clicked input was on the lower half of the screen.
As this is not a normal behavior for an ordinary html input tag, what do you think may cause this problem?

Closing it for now


弹出模拟器不可使用

@Bubbfish It's been disabled since 1.0.0, so we close it, maybe next version we will support both ios and android simulator.


how can I set different ssh user for different roles?

May I know how can we specify different ssh user for different role when working with capistrano-aws?

I believe you can achieve it by using the SSH Agent. You can add multiple keys and it will pick the correct one for that server.

Hi @fernandocarletti
we know we can add multiple keys to ssh agent..the problem is we don't know how to specify different user name when work with capistrano-aws
For example, we have server_A and server_B,we need use user_A connect to server_A and user_B to connect server_B.
In original capistrano  configuration we can set 'user' option in server definition in env.rb as below:
server 'server_role_1', user: 'user1', roles: [xxx], ssh_options: { host_name: 'myserver.com' }
But when work with capistrano-aws there is no place to do such configurations and only can set a global user as below:
aws_ec2_register user: 'hello', port: 2222

It was intentional to have it global, since it is tricky to define a user per server in a dynamic infra. Maybe you can use the aws_ec2_extra_filters configuration to filter the servers you need for that specific user.

oh I see that thanks anyway.


Set up all scripts to work from docker

Since Microsoft publishes a docker image for powershell, all of these scripts should be set up to work that way.
This will allow you to support all platforms, and you can add things like MFA support without worrying about external dependencies. Trying to run something as simple as EnableMailboxAuditing from not-Windows gave me three different problems:

Need to install powershell
Need 5.x instead of 6.x because Out-Gridview is broken
Need to add an MFA plugin

Building and packaging these in docker would solve all of those.

Job Notification From CL Post
Hey I see your job Resume in CL
and I have a task For you To Do
It's a Short and Easy task Like Copy Paste
and if you able to do it i'll pay you.
So if Interested and to know more then
Reply below 'YES'<EMAIL_ADDRESS>


feat: add support for excludeCredentials

https://developers.yubico.com/WebAuthn/WebAuthn_Developer_Guide/WebAuthn_Client_Registration.html
https://www.w3.org/TR/webauthn/#dictionary-makecredentialoptions
Can be used to prevent a single webauthn authenticator to be used multiple times for a single user account, which may impose a security risk (https://github.com/w3c/webauthn/issues/1235#issuecomment-501646115).

In order to not duplicate all possible options that can be passed to navigator.credentials.create it might be good to just merge the options object into the registration challenge object. What do you think? @Kmaschta

I would recommend switchting to https://github.com/MasterKale/WebAuthntine


Need 3rd party clearance for dependencies

Per the Initial Contribution Questionnaire process, we need to file Contribution Questionnaires for all of the 3rd party software that we are dependent on.
https://dev.eclipse.org/ipzilla/show_bug.cgi?id=12628
The Process is documented here:
https://www.eclipse.org/projects/handbook/#ip-third-party
I grepped the pom.xml files for this component and found the following dependencies... We will need to get these filed before we could release health-1.0.
Also, some (but not all) of these dependencies may be resolved via the related Config Issue:
https://github.com/eclipse/microprofile-config/issues/170
Dependencies covered by config? -- not all
<dependency>
    <groupId>javax.enterprise</groupId>
    <artifactId>cdi-api</artifactId>
    <version>1.2</version>
</dependency>
<dependency>
    <groupId>org.jboss.arquillian</groupId>
    <artifactId>arquillian-bom</artifactId>
    <version>1.1.12.Final</version>
    <scope>import</scope>
    <type>pom</type>
</dependency>

<dependency>
    <groupId>org.wildfly.swarm</groupId>
    <artifactId>bom-all</artifactId>
    <version>${wildfly-swarm.version}</version>
    <type>pom</type>
    <scope>import</scope>
</dependency>
<dependency>
    <groupId>org.wildfly.swarm</groupId>
    <artifactId>jaxrs</artifactId>
</dependency>

<dependency>
    <groupId>org.wildfly.swarm</groupId>
    <artifactId>monitor</artifactId>
</dependency>

<dependency>
    <groupId>org.eclipse.microprofile.health.tck</groupId>
    <artifactId>microprofile-health-tck</artifactId>
    <version>1.0-SNAPSHOT</version>
    <scope>test</scope>
</dependency>

<dependency>
    <groupId>org.wildfly.swarm</groupId>
    <artifactId>arquillian</artifactId>
    <scope>test</scope>
</dependency>

<dependency>
    <groupId>org.jboss.arquillian.junit</groupId>
    <artifactId>arquillian-junit-container</artifactId>
    <scope>test</scope>
</dependency>
<dependency>  -- why not use javax jaxrs 2.0 standard instead of jboss?
    <groupId>org.jboss.spec.javax.ws.rs</groupId>
    <artifactId>jboss-jaxrs-api_2.0_spec</artifactId>
    <version>1.0.0.Final</version>
    <scope>provided</scope>
</dependency>

<dependency>
    <groupId>org.jboss.arquillian.junit</groupId>
    <artifactId>arquillian-junit-container</artifactId>
</dependency>

<dependency>
    <groupId>org.jboss.arquillian.container</groupId>
    <artifactId>arquillian-container-test-spi</artifactId>
</dependency>

<dependency>
     <groupId>junit</groupId>
     <artifactId>junit</artifactId>
     <scope>compile</scope>
    <version>${junit.version}</version>
</dependency>

<dependency>
    <groupId>org.jboss.shrinkwrap</groupId>
    <artifactId>shrinkwrap-api</artifactId>
    <scope>compile</scope>
</dependency>

<dependency>
    <groupId>org.apache.httpcomponents</groupId>
    <artifactId>httpclient</artifactId>
    <version>4.5.2</version>
    <scope>compile</scope>
</dependency>

<dependency>
    <groupId>commons-logging</groupId>
    <artifactId>commons-logging</artifactId>
    <version>1.2</version>
    <scope>test</scope>
</dependency>

Not sure about Arquillian, but JUnit and commons-logging should be approved via Orbit. If we need a more recent version than the one that's approved, a CQ is also necessary for the update, but that should work faster than for a newly added library.

From @kwsutter

If we're going to update a dependency (Swarm) version, then please open the corresponding Contribution Questionnaire. Reference Issue #5 for some details, and my discussion on our Google Group: https://groups.google.com/forum/#!topic/microprofile/CSP0rPutSGw

Let's wait until things settle a bit. The whole API still still in flux.

I noticed, it's JUnit here and TestNG in other cases like Config.
Couldn't there be a consensus on a single tool for MP, also making IP vetting easier?

I am all for consolidation of shared libs. How should we drive this? Creating a thread on the mailing list for shared components?

Would be a start. Ideally an "Inbound BOM" for those kinds of things would be good. Different from the "Outbound BOM" only containing API dependendies.

I'm finding that getting IP review of the build and test dependencies is
not as bad as originally thought...  I haven't gotten final approval yet,
so maybe I'll have to eat those words.  But, let's not spend a lot of time
trying to come up with a list of shared components.  For one thing, we
don't necessarily want all of the individual components to be tightly
integrated, even if it's just from a build and test perspective.
On Wed, Jun 14, 2017 at 6:31 AM, Werner Keil<EMAIL_ADDRESS>wrote:

Would be a start. Ideally an "Inbound BOM" for those kinds of things would
be good. Different from the "Outbound BOM" only containing API dependendies.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/eclipse/microprofile-health/issues/5#issuecomment-308404063,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AHXkL6Znv0ruHWmITZZoBwqrstLMFl_5ks5sD8SigaJpZM4N0mcp
.

With a couple of minor dependency version updates, I think microprofile-health looks good for the initial IP scanning...  PR coming soon.

All associated CQs are now complete.  Will need to re-submit CQs for any updates to our dependencies (runtime or build/test).


Update documentation to show GPU scale to zero is available.

IN the sectionon GPU limitations, it shows that scale to zero is not available. Please update to show it is available and selecting scale to zero should work for both CPU and GPU. Thanks!

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

ID: 22305825-0083-c866-7494-563e65694164
Version Independent ID: 22305825-0083-c866-7494-563e65694164
Content: Deploy custom models - Azure Databricks
Content Source: databricks/machine-learning/model-serving/custom-models.md
Service: azure-databricks
GitHub Login: @mssaperla
Microsoft Alias: saperla

@swamivenk-db
Thanks for your feedback! We will investigate and update as appropriate.

@swamivenk-db
Thank you for bringing this to our attention.
I've delegated this to content author, who will review it and offer their insightful opinions.

Thanks for providing feedback that helps improve our documentation. We've created an internal work item (DOC-13743) to address your feedback. The timeline for resolution varies based on resourcing.
#please-close


GRPC compatibility : Locust load test throws greenlet.GreenletExit exception on reaching test time limit

Describe the bug

Locust load test throws greenlet.GreenletExit exception on reaching test time limit while testing GRPC based services. To monkey patch GRPC with gevent I am using grpc's:
import grpc.experimental.gevent as grpc_gevent
grpc_gevent.init_gevent()

but no luck.
Expected behavior

Should gracefully stop all greenlets and generate the necessary outputs.
Actual behavior

Test keeps on generating load, does not stop, has to be stopped via CTRL+C Keyboard Interrupt.
Thrown exception:
[2021-01-18 13:40:47,715] C02CD0BNMD6N/INFO/locust.main: Run time limit set to 30 seconds
[2021-01-18 13:40:47,715] C02CD0BNMD6N/INFO/locust.main: Starting Locust 1.4.1
[2021-01-18 13:40:47,716] C02CD0BNMD6N/DEBUG/locust.runners: Updating state to 'spawning', old state was 'ready'
[2021-01-18 13:40:47,716] C02CD0BNMD6N/INFO/locust.runners: Spawning 5 users at the rate 3 users/s (0 users already running)...

 a bunch of related stats generated .......

[2021-01-18 13:41:17,717] C02CD0BNMD6N/INFO/locust.main: Time limit reached. Stopping Locust.
[2021-01-18 13:41:17,717] C02CD0BNMD6N/DEBUG/locust.runners: Stopping all users
[2021-01-18 13:41:17,718] C02CD0BNMD6N/DEBUG/locust.runners: Updating state to 'cleanup', old state was 'running'
[2021-01-18 13:41:17,718] C02CD0BNMD6N/INFO/locust.runners: Stopping 5 users
[2021-01-18 13:41:17,718] C02CD0BNMD6N/DEBUG/locust.runners: Stopping Greenlet-0
[2021-01-18 13:41:17,718] C02CD0BNMD6N/DEBUG/locust.runners: Stopping Greenlet-1
[2021-01-18 13:41:17,718] C02CD0BNMD6N/DEBUG/locust.runners: Stopping Greenlet-2
[2021-01-18 13:41:17,718] C02CD0BNMD6N/DEBUG/locust.runners: Stopping Greenlet-3
[2021-01-18 13:41:17,718] C02CD0BNMD6N/DEBUG/locust.runners: Stopping Greenlet-4

Traceback (most recent call last):
  File "src/gevent/event.py", line 159, in gevent._gevent_cevent.Event.wait
  File "src/gevent/_abstract_linkable.py", line 437, in gevent._gevent_c_abstract_linkable.AbstractLinkable._wait
  File "src/gevent/_abstract_linkable.py", line 403, in gevent._gevent_c_abstract_linkable.AbstractLinkable._wait_core
  File "src/gevent/_abstract_linkable.py", line 406, in gevent._gevent_c_abstract_linkable.AbstractLinkable._wait_core
  File "src/gevent/_abstract_linkable.py", line 358, in gevent._gevent_c_abstract_linkable.AbstractLinkable._AbstractLinkable__wait_to_be_notified
  File "src/gevent/_abstract_linkable.py", line 367, in gevent._gevent_c_abstract_linkable.AbstractLinkable._switch_to_hub
  File "src/gevent/_greenlet_primitives.py", line 61, in gevent._gevent_c_greenlet_primitives.SwitchOutGreenletWithLoop.switch
  File "src/gevent/_greenlet_primitives.py", line 65, in gevent._gevent_c_greenlet_primitives.SwitchOutGreenletWithLoop.switch
  File "src/gevent/_gevent_c_greenlet_primitives.pxd", line 35, in gevent._gevent_c_greenlet_primitives._greenlet_switch
greenlet.GreenletExit
Exception ignored in: 'grpc._cython.cygrpc.run_loop'

Steps to reproduce

I am using locust to test bunch of GRPC services and tasks involve bunch of GRPC calls.
Environment

OS: MacOS Catalina 10.15.7
Python version: 3.8
Locust version: 1.4.1, grpcio version : 1.30.0
Locust command line that you ran: locust --host myhost -f locustfile --headless -u 5 -r 3 -t 30s MyLocustClass

GRPCIO uses asyncio, which is incompatible with gevent / greenlets, on which locust is built. I dont think this can be fixed.

GRPCIO uses asyncio, which is incompatible with gevent / greenlets, on which locust is built. I dont think this can be fixed.

Actually, it may be possible using something like https://github.com/2mf/aiogevent But you are on your own...

Actually, it may be possible using something like https://github.com/2mf/aiogevent But you are on your own...

Actually grpc has been patched for compatibility with gevent https://github.com/grpc/grpc/issues/4629, on peeking into source of locust it might be due to async calls used for stopping greenlets

Actually grpc has been patched for compatibility with gevent https://github.com/grpc/grpc/issues/4629, on peeking into source of locust it might be due to async calls used for stopping greenlets

Ok, aha... yea that was added pretty recently to locust.

Ok, aha... yea that was added pretty recently to locust.

Reopening this as it may be possible to fix after all.

Reopening this as it may be possible to fix after all.

The asyncronous stopping of locusts is only really necessary when --stop-timeout is being used

The asyncronous stopping of locusts is only really necessary when --stop-timeout is being used

Also seeing this error on distributed runners when running a locust cluster. Please let me know if there's something I could look at to help unblock this.

Making the asyncrounous stopping of locusts a regular ”direct” kill if stop-timeout is zero at runners.py:250 should provide a workaround.

Should be fixed now! (not yet in a release though, but it should become part of 1.5.2 when I make it)

Still happening

Traceback (most recent call last):
--
  | File "src/gevent/event.py", line 163, in gevent._gevent_cevent.Event.wait
  | File "src/gevent/_abstract_linkable.py", line 521, in gevent._gevent_c_abstract_linkable.AbstractLinkable._wait
  | File "src/gevent/_abstract_linkable.py", line 487, in gevent._gevent_c_abstract_linkable.AbstractLinkable._wait_core
  | File "src/gevent/_abstract_linkable.py", line 490, in gevent._gevent_c_abstract_linkable.AbstractLinkable._wait_core
  | File "src/gevent/_abstract_linkable.py", line 442, in gevent._gevent_c_abstract_linkable.AbstractLinkable._AbstractLinkable__wait_to_be_notified
  | File "src/gevent/_abstract_linkable.py", line 451, in gevent._gevent_c_abstract_linkable.AbstractLinkable._switch_to_hub
  | File "src/gevent/_greenlet_primitives.py", line 61, in gevent._gevent_c_greenlet_primitives.SwitchOutGreenletWithLoop.switch
  | File "src/gevent/_greenlet_primitives.py", line 65, in gevent._gevent_c_greenlet_primitives.SwitchOutGreenletWithLoop.switch
  | File "src/gevent/_gevent_c_greenlet_primitives.pxd", line 35, in gevent._gevent_c_greenlet_primitives._greenlet_switch
  | greenlet.GreenletExit
  | Exception ignored in: 'grpc._cython.cygrpc.run_loop'

locust==1.5.3
greenlet==1.1.0
grpcio==1.37.1
grpcio-tools==1.37.1

@beandrad Any idea?

You should close the grpc channel before killing the user (greenlet); the example in the documentation shows how to do this.

this part? https://github.com/locustio/locust/blob/94e16dda0aa7bc5735d5d2db13031bfe416a7ab1/examples/grpc/locustfile.py#L67
Because I modified my runner based on yours (the example that is part of the documentation).

Yep, that's it. If the runner now uses the instance stop() method instead of the base class one, you should not see the issue above, since the grpc channel is closed before the greenlet is killed.

class GRPCLoadTest(User):
    def __init__(self, *args, **kwargs):
        super().__init__(*args, **kwargs)

        if "https" in self.host:
            target = self.host.replace("https://", "")
            self.channel = grpc.secure_channel(
                target,
                credentials=grpc.ssl_channel_credentials(root_certificates=certs),
                options=GRPC_CLIENT_CHANNEL_OPTS,
            )
        else:
            target = self.host.replace("http://", "")
            self.channel = grpc.insecure_channel(
                target, options=GRPC_CLIENT_CHANNEL_OPTS
            )
        self._channel_closed = False
        self.stub = service_grpc.PredictStub(self.channel)

    def on_stop(self, force=False):
        self._channel_closed = True
        time.sleep(1)
        self.channel.close()
        super().stop(force=True)

    @stopwatch
    def _get_prediction(self, *args, **kwargs):
        requests = [service_pb.Request(), service_pb.Request(), service_pb.Request()]
        prediction_request = service_pb.PredictionRequest(requests=requests)
        self.stub.Evaluate(prediction_request)

    @task
    def loadtest_runner(self, *args, **kwargs):
        if not self._channel_closed:
            self._get_prediction()
        time.sleep(1)

def on_stop(self, force=False): should be def stop(self, force=False):

ouch 🤦
thanks @beandrad 🙌
I'll test it again and let you know!

Thanks @beandrad, it does work 👍


Question about backward warping implementation

Hi, thanks for your interesting work!
I have a question about your implementation of backward warping.
In the case where the size of the source image and the flow field is different, shouldn't we multiply the size ratio to the original flow field?

It is not my implementation, it is pytorch implementation. It is assumed that values is always in range [-1,1]. Pytorch account for different resolution inside grid_sample.

I got it.
Thanks :)