argument of type 'NoneType' is not iterable when running az aks enable-addons

Describe the bug
Getting this error when running az aks enable-addons after I followed the instructions from azure dashboard :

The previous command that failed for me was az aks browse --resource-group  with the following error :
The kube-dashboard addon was disabled for this managed cluster. To use "az aks browse" first enable the add-on by running "az aks enable-addons --addons kube-dashboard".
Command Name
az aks enable-addons
Errors:
argument of type 'NoneType' is not iterable
Traceback (most recent call last):
Temp\pip-install-mjd5h3hf\knack\knack\cli.py, ln 206, in invoke
azure\cli\core\commands\__init__.py, ln 603, in execute
azure\cli\core\commands\__init__.py, ln 661, in _run_jobs_serially
azure\cli\core\commands\__init__.py, ln 654, in _run_job
Local\Temp\pip-install-mjd5h3hf\six\six.py, ln 696, in reraise
azure\cli\core\commands\__init__.py, ln 631, in _run_job
azure\cli\core\commands\__init__.py, ln 306, in __call__
azure-cli-core\azure\cli\core\__init__.py, ln 487, in default_command_handler
azure\cli\command_modules\acs\custom.py, ln 1845, in aks_enable_addons
azure\cli\command_modules\acs\custom.py, ln 2488, in _ensure_container_insights_for_monitoring
TypeError: argument of type 'NoneType' is not iterable

To Reproduce:
Steps to reproduce the behavior. Note that argument values have been redacted, as they may contain sensitive information.

az aks enable-addons --addons {} --resource-group {} --name {}

Environment Summary
Windows-10-10.0.17763-SP0
Python 3.6.6
Shell: cmd.exe

azure-cli 2.0.77

Additional Context

Any update?

@AmitBaranes can you share the command you ran? I am unable to reproduce with the command provided in the error message.
➜  ~ az aks enable-addons --addons kube-dashboard -g myresourcegroup -n newazcluster

I ran into the same issue, when I try to run the same command I get the following output:
The command failed with an unexpected error. Here is the traceback:

argument of type 'NoneType' is not iterable
Traceback (most recent call last):
  File "C:\Users\VSSADM~1\AppData\Local\Temp\pip-install-umfcm_n2\knack\knack\cli.py", line 206, in invoke
  File "C:\Users\VSSADM~1\AppData\Local\Temp\pip-install-umfcm_n2\azure-cli-core\azure\cli\core\commands\__init__.py", line 603, in execute
  File "C:\Users\VSSADM~1\AppData\Local\Temp\pip-install-umfcm_n2\azure-cli-core\azure\cli\core\commands\__init__.py", line 661, in _run_jobs_serially
  File "C:\Users\VSSADM~1\AppData\Local\Temp\pip-install-umfcm_n2\azure-cli-core\azure\cli\core\commands\__init__.py", line 654, in _run_job
  File "C:\Users\VSSADM~1\AppData\Local\Temp\pip-install-umfcm_n2\six\six.py", line 693, in reraise
  File "C:\Users\VSSADM~1\AppData\Local\Temp\pip-install-umfcm_n2\azure-cli-core\azure\cli\core\commands\__init__.py", line 631, in _run_job
  File "C:\Users\VSSADM~1\AppData\Local\Temp\pip-install-umfcm_n2\azure-cli-core\azure\cli\core\commands\__init__.py", line 306, in __call__
  File "C:\Users\VSSADM~1\AppData\Local\Temp\pip-install-umfcm_n2\azure-cli-core\azure\cli\core\__init__.py", line 485, in default_command_handler
  File "C:\Users\VSSADM~1\AppData\Local\Temp\pip-install-umfcm_n2\azure-cli\azure\cli\command_modules\acs\custom.py", line 1843, in aks_enable_addons
  File "C:\Users\VSSADM~1\AppData\Local\Temp\pip-install-umfcm_n2\azure-cli\azure\cli\command_modules\acs\custom.py", line 2482, in _ensure_container_insights_for_monitoring
TypeError: argument of type 'NoneType' is not iterable

I ran into the same issue, when I try to run the same command I get the following output:
The command failed with an unexpected error. Here is the traceback:

argument of type 'NoneType' is not iterable
Traceback (most recent call last):
knack\knack\cli.py", line 206, in invoke
azure-cli-core\azure\cli\core\commands\__init__.py", line 603, in execute
azure-cli-core\azure\cli\core\commands\__init__.py", line 661, in _run_jobs_serially
azure-cli-core\azure\cli\core\commands\__init__.py", line 654, in _run_job
six\six.py", line 693, in reraise
azure-cli-core\azure\cli\core\commands\__init__.py", line 631, in _run_job
azure-cli-core\azure\cli\core\commands\__init__.py", line 306, in __call__
azure-cli-core\azure\cli\core\__init__.py", line 485, in default_command_handler
azure-cli\azure\cli\command_modules\acs\custom.py", line 1843, in aks_enable_addons
azure-cli\azure\cli\command_modules\acs\custom.py", line 2482, in _ensure_container_insights_for_monitoring
TypeError: argument of type 'NoneType' is not iterable

I ran into the same issue, when I try to run the same command I get the following output:
The command failed with an unexpected error. Here is the traceback:

argument of type 'NoneType' is not iterable
Traceback (most recent call last):
knack\knack\cli.py", line 206, in invoke
azure-cli-core\azure\cli\core\commands\__init__.py", line 603, in execute
azure-cli-core\azure\cli\core\commands\__init__.py", line 661, in _run_jobs_serially
azure-cli-core\azure\cli\core\commands\__init__.py", line 654, in _run_job
six\six.py", line 693, in reraise
azure-cli-core\azure\cli\core\commands\__init__.py", line 631, in _run_job
azure-cli-core\azure\cli\core\commands\__init__.py", line 306, in __call__
azure-cli-core\azure\cli\core\__init__.py", line 485, in default_command_handler
azure-cli\azure\cli\command_modules\acs\custom.py", line 1843, in aks_enable_addons
azure-cli\azure\cli\command_modules\acs\custom.py", line 2482, in _ensure_container_insights_for_monitoring
TypeError: argument of type 'NoneType' is not iterable

@alinareti I try with version 2.0.66, it works well, looks like it's a cli issue.

@AmitBaranes can you share the command you ran? I am unable to reproduce with the command provided in the error message.
➜  ~ az aks enable-addons --addons kube-dashboard -g myresourcegroup -n newazcluster

getting this exception :

I have a same exception after creation of new aks cluster

I get the exact same issue. However, downgrading to v2.0.66 did not help for me @andyzhangx

i am also getting same issue

What Andy mentioned is we can't repro that with either 2.0.66 or 2.0.77

I see some outputs calling out python 2.7 and CLI 2.0.77 should be using python3
Could you check you are all using the latest CLI and the right python version is being referenced ?
az --version should also tell you the python location for you to check.
additionally could you run with --debug?

I uninstalled azure-cli which was pointing to python2.7 and re-installed it
Amols-MacBook-Pro:lib amolshende$ az --version
azure-cli                         2.0.78

command-modules-nspkg              2.0.3
core                              2.0.78
nspkg                              3.0.4
telemetry                          1.0.4

Python location '/usr/local/Cellar/azure-cli/2.0.78/libexec/bin/python'
Extensions directory '/Users/amolshende/.azure/cliextensions'

Python (Darwin) 3.7.5 (default, Nov  1 2019, 02:16:38)
[Clang 10.0.0 (clang-1<IP_ADDRESS>)]
Legal docs and information: aka.ms/AzureCliLegal
Your CLI is up-to-date.

Still i am getting error
az aks enable-addons --addons kube-dashboard --resource-group firstapp-resources --name hello
The command failed with an unexpected error. Here is the traceback:

argument of type 'NoneType' is not iterable
Traceback (most recent call last):
  File "/usr/local/Cellar/azure-cli/2.0.78/libexec/lib/python3.7/site-packages/knack/cli.py", line 206, in invoke
    cmd_result = self.invocation.execute(args)
  File "/usr/local/Cellar/azure-cli/2.0.78/libexec/lib/python3.7/site-packages/azure/cli/core/commands/__init__.py", line 608, in execute
    raise ex
  File "/usr/local/Cellar/azure-cli/2.0.78/libexec/lib/python3.7/site-packages/azure/cli/core/commands/__init__.py", line 666, in _run_jobs_serially
    results.append(self._run_job(expanded_arg, cmd_copy))
  File "/usr/local/Cellar/azure-cli/2.0.78/libexec/lib/python3.7/site-packages/azure/cli/core/commands/__init__.py", line 659, in _run_job
    six.reraise(*sys.exc_info())
  File "/usr/local/Cellar/azure-cli/2.0.78/libexec/lib/python3.7/site-packages/six.py", line 696, in reraise
    raise value
  File "/usr/local/Cellar/azure-cli/2.0.78/libexec/lib/python3.7/site-packages/azure/cli/core/commands/__init__.py", line 636, in _run_job
    result = cmd_copy(params)
  File "/usr/local/Cellar/azure-cli/2.0.78/libexec/lib/python3.7/site-packages/azure/cli/core/commands/__init__.py", line 306, in __call__
    return self.handler(*args, **kwargs)
  File "/usr/local/Cellar/azure-cli/2.0.78/libexec/lib/python3.7/site-packages/azure/cli/core/__init__.py", line 490, in default_command_handler
    return op(**command_args)
  File "/usr/local/Cellar/azure-cli/2.0.78/libexec/lib/python3.7/site-packages/azure/cli/command_modules/acs/custom.py", line 1844, in aks_enable_addons
    _ensure_container_insights_for_monitoring(cmd, instance.addon_profiles['omsagent'])
  File "/usr/local/Cellar/azure-cli/2.0.78/libexec/lib/python3.7/site-packages/azure/cli/command_modules/acs/custom.py", line 2487, in _ensure_container_insights_for_monitoring
    if 'loganalyticsworkspaceresourceid' in addon.config:
TypeError: argument of type 'NoneType' is not iterable

To open an issue, please run: 'az feedback'

I get the same error with latest az (version output after the error below):
The command failed with an unexpected error. Here is the traceback:

cli.azure.cli.core.util : argument of type 'NoneType' is not iterable
Traceback (most recent call last):
File "C:\Users\VSSADM~1\AppData\Local\Temp\pip-install-2ombfg7z\knack\knack\cli.py", line 206, in invoke
File "C:\Users\VSSADM~1\AppData\Local\Temp\pip-install-2ombfg7z\azure-cli-core\azure\cli\core\commands\__init__.py", line 608, in execute
File "C:\Users\VSSADM~1\AppData\Local\Temp\pip-install-2ombfg7z\azure-cli-core\azure\cli\core\commands\__init__.py", line 666, in _run_jobs_serially
File "C:\Users\VSSADM~1\AppData\Local\Temp\pip-install-2ombfg7z\azure-cli-core\azure\cli\core\commands\__init__.py", line 659, in _run_job
File "C:\Users\VSSADM~1\AppData\Local\Temp\pip-install-2ombfg7z\six\six.py", line 696, in reraise
File "C:\Users\VSSADM~1\AppData\Local\Temp\pip-install-2ombfg7z\azure-cli-core\azure\cli\core\commands\__init__.py", line 636, in _run_job
File "C:\Users\VSSADM~1\AppData\Local\Temp\pip-install-2ombfg7z\azure-cli-core\azure\cli\core\commands\__init__.py", line 306, in __call__
File "C:\Users\VSSADM~1\AppData\Local\Temp\pip-install-2ombfg7z\azure-cli-core\azure\cli\core\__init__.py", line 493, in default_command_handler
File "C:\Users\VSSADM~1\AppData\Local\Temp\pip-install-2ombfg7z\azure-cli\azure\cli\command_modules\acs\custom.py", line 1844, in aks_enable_addons
File "C:\Users\VSSADM~1\AppData\Local\Temp\pip-install-2ombfg7z\azure-cli\azure\cli\command_modules\acs\custom.py", line 2487, in _ensure_container_insights_for_monitoring
TypeError: argument of type 'NoneType' is not iterable
argument of type 'NoneType' is not iterable
Traceback (most recent call last):
File "C:\Users\VSSADM~1\AppData\Local\Temp\pip-install-2ombfg7z\knack\knack\cli.py", line 206, in invoke
File "C:\Users\VSSADM~1\AppData\Local\Temp\pip-install-2ombfg7z\azure-cli-core\azure\cli\core\commands\__init__.py", line 608, in execute
File "C:\Users\VSSADM~1\AppData\Local\Temp\pip-install-2ombfg7z\azure-cli-core\azure\cli\core\commands\__init__.py", line 666, in _run_jobs_serially
File "C:\Users\VSSADM~1\AppData\Local\Temp\pip-install-2ombfg7z\azure-cli-core\azure\cli\core\commands\__init__.py", line 659, in _run_job
File "C:\Users\VSSADM~1\AppData\Local\Temp\pip-install-2ombfg7z\six\six.py", line 696, in reraise
File "C:\Users\VSSADM~1\AppData\Local\Temp\pip-install-2ombfg7z\azure-cli-core\azure\cli\core\commands\__init__.py", line 636, in _run_job
File "C:\Users\VSSADM~1\AppData\Local\Temp\pip-install-2ombfg7z\azure-cli-core\azure\cli\core\commands\__init__.py", line 306, in __call__
File "C:\Users\VSSADM~1\AppData\Local\Temp\pip-install-2ombfg7z\azure-cli-core\azure\cli\core\__init__.py", line 493, in default_command_handler
File "C:\Users\VSSADM~1\AppData\Local\Temp\pip-install-2ombfg7z\azure-cli\azure\cli\command_modules\acs\custom.py", line 1844, in aks_enable_addons
File "C:\Users\VSSADM~1\AppData\Local\Temp\pip-install-2ombfg7z\azure-cli\azure\cli\command_modules\acs\custom.py", line 2487, in _ensure_container_insights_for_monitoring
TypeError: argument of type 'NoneType' is not iterable

az --version returning:
azure-cli                         2.0.78

command-modules-nspkg              2.0.3
core                              2.0.78
nspkg                              3.0.4
telemetry                          1.0.4

Extensions:
azure-cli-iot-ext                  0.8.5
azure-devops                      0.13.0

Python location 'C:\Program Files (x86)\Microsoft SDKs\Azure\CLI2\python.exe'
Extensions directory 'C:\Users\james\.azure\cliextensions'

Python (Windows) 3.6.6 (v3.6.6:4cf1f54eb7, Jun 27 2018, 02:47:15) [MSC v.1900 32 bit (Intel)]

Legal docs and information: aka.ms/AzureCliLegal

Your CLI is up-to-date.

Any update to this, still seeing this error.

@mboersma any idea about this error? instance.addon_profiles['omsagent'] returns nil?
https://github.com/Azure/azure-cli/blob/ad8d70f5ea30bd0b3d271de360c190cd8de13578/src/azure-cli/azure/cli/command_modules/acs/custom.py#L1843-L1844
https://github.com/Azure/azure-cli/blob/ad8d70f5ea30bd0b3d271de360c190cd8de13578/src/azure-cli/azure/cli/command_modules/acs/custom.py#L2485-L2488
File "C:\Users\VSSADM~1\AppData\Local\Temp\pip-install-2ombfg7z\azure-cli\azure\cli\command_modules\acs\custom.py", line 1844, in aks_enable_addons
File "C:\Users\VSSADM~1\AppData\Local\Temp\pip-install-2ombfg7z\azure-cli\azure\cli\command_modules\acs\custom.py", line 2487, in _ensure_container_insights_for_monitoring

This is being addressed in this PR: https://github.com/Azure/azure-cli/pull/12250

The proposed fix has been merged into the AKS-preview extension and core build for the S166 sprint. The core release is set for 3/10.
https://github.com/Azure/azure-cli/milestone/83

Can confirm the latest CLI resolved this issue for me.
$ az --version
azure-cli                          2.2.0

command-modules-nspkg              2.0.3
core                               2.2.0
nspkg                              3.0.4
telemetry                          1.0.4

Thanks for the confirm @seanhamlin! I am also unable to reproduce this issue, so closing as a result. However if you still encounter this issue please comment here and we will revisit.
Appreciate everyone's feedback as we drive these fixes.


expose machine name / resource?

in order to get my nixos configurations right, i would like to be able to use some networking info, which fortunately teraflops exposes thru resources.
one such relevant bit for example appears exposed at resources.hcloud_server."${name}".ipv6_network.
unfortunately tho, i'm not actually sure how to access this still, notably missing access to such a name attribute by default.
(or, conversely, if the server's own resource were exposed directly instead, one would not need the name needed to pull it from resources.)
as a workaround i'm trying to automatically pass this info for all servers using lib.mapAttrs, tho i hadn't managed that yet, while perhaps this info would be useful enough that having a documented way to access this would be cool.

workaround seems:
# teraflops.nix
{
...
}
//
  lib.mapAttrs
  (name: fn: fn name)
  {
    my_server = name: {pkgs, ...}: import ./server/config.nix {inherit pkgs name;};
  }


Export Pokemon to CSV

adds an api endpoint to spit out a csv file of all Pokemon
adds a link to the API endpoint

Feel free to make a new PR for v1.0.0 and implement this. If not, I can, but one of us should do it haha.


Doesn't seam to work ?

Sorry, this is not "production-ready" or anything close. I'm still working on making building a quasar app on GH Actions (+Fastlane) as easy as it is for my Ionic apps but I haven't had time to work on this recently.

No problemes ! take your time


Update the-ide-git-button.md

Added a 'checkout branch' section as this was missing and a question cs gets often. i can't add the screenshot because i dont have the url so i'll attach it as a screenshot:
Can you please add both screenshots below so we can provide users a visual of what the button and steps look like? thank you!

Description & motivation

To-do before merge

Pre-release docs
Is this change related to an unreleased version of dbt?

[ ] Yes: please

update the base branch to next
add Changelog components: <Changelog>[New/Changed] in v0.x.0</Changelog>
add links to the "New and changed documentation" section of the latest Migration Guide

[x] No: please ensure the base branch is current
[ ] Unsure: we'll let you know!

Checklist
If you added new pages (delete if not applicable):

[ ] The page has been added to website/sidebars.js
[ ] The new page has a unique filename

If you removed existing pages (delete if not applicable):

[ ] The page has been removed from website/sidebars.js
[ ] An entry has been added to _redirects

hi @runleonarun and @sophiad96 do you folks mind checking this out to see if it's all ok?

closing pull request as ide beta already contains this


fsUUCP : store and forward

wind as such:
https://github.com/n8fr8/gilgamesh/issues/32
or greater whimsy?

This is a great idea!


Document new '#linepart' annotation in annotated CSV

PR: https://github.com/influxdata/influxdb/pull/17398
There is a new #linepart annotation that allows users to identify measurement, tag, field and time columns in annotated CSV.
Relevant URLs

https://v2.docs.influxdata.com/v2.0/reference/syntax/annotated-csv/

Note that #linepart is never returned in CSV response format, it can be added to CSV files for "influx write" cli


Added decorator to display correct quadicon for key pair record.

Fixes #8987
@epwinchell please review/test

Tested. Looks good.

@martinpovolny please review/merge

@martinpovolny @dclarizio @h-kataria is there a BZ for this?

@chessbyte opened a BZ to backport this fix on to 5.6.z https://bugzilla.redhat.com/show_bug.cgi?id=1352914


UHF-8763 Test content updates

UHF-8763

What was done

How to install

Make sure your instance is up and running on latest dev branch.

git pull origin dev
make fresh

Update the Helfi Platform config

composer require drupal/helfi_platform_config:dev-UHF-8763

Run make drush-updb drush-cr

How to test

[ ] Check that this feature works
[ ] Check that code follows our standards

Other PRs

Codecov Report

Merging #608 (594a4a3) into main (f560477) will increase coverage by 0.43%.
Report is 19 commits behind head on main.
The diff coverage is 22.22%.

:exclamation: Current head 594a4a3 differs from pull request most recent head 527b806. Consider uploading reports for the commit 527b806 to get more accurate results

@@             Coverage Diff              @@
##               main     #608      +/-   ##
============================================
+ Coverage     12.74%   13.18%   +0.43%
- Complexity      236      243       +7
============================================
  Files            30       30
  Lines           902      918      +16
============================================
+ Hits            115      121       +6
- Misses          787      797      +10

Files
Coverage Δ

src/Plugin/Block/ChatLeijuke.php
0.00% <ø> (ø)

src/Menu/FilterDisabledTranslations.php
22.22% <22.22%> (ø)

:mega: We’re building smart automated test selection to slash your CI/CD build times. Learn more


Feature Request - Authentication

Might be a cool thing to add - authentication so that you have to type a username/password into the webUI in order to access noVNC

I completely understand if you don't want to implement this, however I do want to correct a couple of things because I don't think you quite understand the feature request in regards to a setup like mine.
The VNC port does not have a password on it, but it is only limited to localhost being able to access it. So, you would need terminal/gui access to the server in order for this to actually matter. On my system where I recently installed this using the default docker compose file, port 5900 is limited to <IP_ADDRESS>. This means that for any other device connecting to the server over the network, they won't actually be able to connect to the VNC port. So, it would make sense to provide authentication via ngnix instead of the VNC server because I like the VNC server port, the webUI is available to anyone on the network to connect to.
I wasn't really concerned about rdp since I don't use it. I actually removed the port forward in the docker compose file for it because I would rather use the webUI.

If anyone wants to make it more secure, the simple solution is that they change the Windows password for the Docker user. This will also prevent mis-use of the VNC port as you would not be able to use the viewer without logging in to Windows.

Does this make it so that the windows part doesn't auto-login? I have not tried it, so I would not know.
@progamer562

disable the port the web access should not be used only rdp

lol no. This is literally the feature/reason I am using this project.

I gotcha. Thanks, I will try that out!!!

So I just did this. Here is how I did it.
In my docker compose file, I have the windows storage mounted to a local path and then I just copied the default nginx config from the container to this windows storage. I edited the file and then specified in volumes that the nginx config point to the path that the windows storage was locally mounted. Here is the docker compose file.
volumes:       - /home/user/windows:/storage       - /home/user/windows/web.conf:/etc/nginx/sites-enabled/web.conf
In the nginx file, I just added 2 lines at the beginning of the file that added the auth module and specified where the authentication file is. Then, I added the authentication file to the local windows path so that I could easily edit it without opening the container.
Command to create auth file.
sudo htpasswd -c /home/user/windows/.htpasswd user
web.conf file
` server {
**auth_basic           "Administrator’s Area";
auth_basic_user_file /storage/.htpasswd;**

listen 80;
listen [::]:80;
listen 8006 default_server;
listen [::]:8006 default_server;

autoindex on;
tcp_nodelay on;
server_tokens off;
absolute_redirect off;

error_log /dev/null;
access_log /dev/null;

include /etc/nginx/mime.types;

gzip on;
gzip_vary on;
gzip_proxied any;
gzip_comp_level 5;
gzip_min_length 500;
gzip_disable "msie6";
gzip_types text/css text/javascript text/xml text/plain text/x-component application/javascript application/json application/xml application/rss+xml font/truetype font/opentype application/vnd.ms-fontobject image/svg+xml;

add_header Cache-Control "no-cache";

location / {

  root /run/shm;

  if ( -f /run/shm/index.html) {
    break;
  }

  try_files /index.html @vnc;
}`

So I just did this. Here is how I did it.
In my docker compose file, I have the windows storage mounted to a local path and then I just copied the default nginx config from the container to this windows storage. I edited the file and then specified in volumes that the nginx config point to the path that the windows storage was locally mounted. Here is the docker compose file.
volumes: - /home/user/windows:/storage - /home/user/windows/web.conf:/etc/nginx/sites-enabled/web.conf
In the nginx file, I just added 2 lines at the beginning of the file that added the auth module and specified where the authentication file is. Then, I added the authentication file to the local windows path so that I could easily edit it without opening the container.


workflows/doctor: skip unnecessary steps

[x] Have you followed the guidelines in our Contributing document?
[x] Have you checked to ensure there aren't other open Pull Requests for the same change?
[x] Have you added an explanation of what your changes do and why you'd like us to include them?
[ ] Have you written new tests for your changes? Here's an example.
[ ] Have you successfully run brew style with your changes locally?
[ ] Have you successfully run brew typecheck with your changes locally?
[ ] Have you successfully run brew tests with your changes locally?

Based on discussion from #14172.
I'm not sure if this works, but CI should tell us.

Review period will end on 2022-11-25 at 14:46:13 UTC.

No doctor workflow. Invalid syntax, probably.

Review period ended.

@carlocab I'm running into the same workflow issues as CI / test everything (macOS) in Guile Homebrew (https://github.com/aconchillo/homebrew-guile):
  Please note that these warnings are just used to help the Homebrew maintainers
  with debugging if you file an issue. If everything you use Homebrew for is
  working fine: please don't worry or file an issue; just ignore this. Thanks!

  Warning: "config" scripts exist outside your system or Homebrew directories.
  `./configure` scripts often look for *-config scripts to determine if
  software packages are installed, and which additional flags to use when
  compiling and linking.

  Having additional scripts in your path can confuse software installed via
  Homebrew if the config script overrides a system or Homebrew-provided
  script of the same name. We found the following "config" scripts:
    /Library/Frameworks/Python.framework/Versions/Current/bin/python3-config
    /Library/Frameworks/Python.framework/Versions/Current/bin/python3.11-config

Any idea what's going on? Thanks! 🙏

@aconchillo This is fixed now!

@MikeMcQuaid Awesome, thank you. It's working again!


Document the kubelet's HTTP API

This is a Bug Report

Problem: The Kubelet API is not documented. The only thing documented about it is that you can enable the server setting the enableServer kubelet configuration to true.
Proposed Solution: Create the documentation and add a reference to it in the enableServer kubelet configuration documentation.
Page to Update:
https://kubernetes.io/docs/reference/config-api/kubelet-config.v1beta1/#kubelet-config-k8s-io-v1beta1-KubeletConfiguration

Additional Information:
https://stackoverflow.com/a/35076156/5744858

Adding documentation for the kubelet's HTTP API would be a feature
/remove-kind bug
/kind feature
/retitle Document the kubelet's HTTP API
/language en
/priority backlog
/sig node

Also, now that we are on it, can we remove the [Required] label? The description says "Default: true". If it has a default value, then the field shouldn't be required in the configuration.

/assign


Witness in manual failover

Can you expand a little bit on the recommendations for high availability for witnesses?
I have a customer with two SQL Server VMs each across two Azure regions (four servers total). They currently also have a witness configured in each region, but it's unclear from the documents how the witness in the second region should be configured or if it is needed at all. If there are even numbers of nodes at both sites, wouldn't you need a witness in the case of failover to the second site?
This is assuming some kind of disaster that makes the entire first site (including the witness) unusable.

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

ID: c9bf06da-0739-c826-6b28-c942f394b1a9
Version Independent ID: 6a1651c0-fa3f-037e-4caa-d255097e048f
Content: Configure and manage the quorum in a failover cluster
Content Source: WindowsServerDocs/failover-clustering/manage-cluster-quorum.md
Product: windows-server-threshold
GitHub Login: @JasonGerend
Microsoft Alias: jgerend

#assign:IngridAtMicrosoft


Fix backward compatibility of AbstractReportTask in 6.x

Fixes #16621

@bot-gradle test QFL

@bot-gradle test and merge

OK, I've already triggered a build for you.

Pre-tested commit build failed.

@bot-gradle test and merge

OK, I've already triggered a build for you.

Pre-tested commit build failed.

@bot-gradle test RFM

OK, I've already triggered ReadyForMerge build for you.

@bot-gradle test and merge

OK, I've already triggered a build for you.


TopN with threshold 1 - is this super inaccurate?

A few of us are looking through the docs on TopN and trying to understand the threshold parameter.
(Note I will happily update the docs once I understand it myself)
Example:
I have a database with a row for each commit made on GitHub.  How can I get the longest commit, for each minute? (1 minute intervals)
Example datasource "github_commits":
timestamp, commit_id, commit_length

TopN query, with a threshold of 1
{
  "queryType": "topN",
  "dataSource": "github_commits",
  "dimension": "commit_id",
  "threshold": 1,
  "metric": "commit_length",
  "aggregations": [
    { "type": "longMax", "name": "commit_length", "fieldName": "commit_length" }
  ],
  "intervals": ["2018-01-06T00:00:00.000Z/2018-01-07T00:00:00.000Z"],
  "granularity": "minute"
}

Is this query correct? It runs, and it only returns at most 1 record per interval... but the docs say "TopNs can be made more accurate by increasing the threshold."
So does a threshold of 1 mean "Give me the top 1 record"? In which case this query is fine, and the statement about higher thresholds doesn't make sense...
Or does it mean something else, like only bother sorting 1 record? (in which case I'm not getting the top one, I'm just getting the first one)
In SQL, if I do an ORDER BY and a LIMIT, the LIMIT is applied after the ORDER BY. That means ORDER BY commit_length DESC LIMIT 1 gives me the top 1 commit.  I'm trying to understand if threshold is behaving the same way here.

@pjain1 your comment https://github.com/apache/incubator-druid/issues/5236#issuecomment-357088879 is incredibly helpful, and belongs in the manual!


Stick_to_end. Bug Report or misunderstanding

I have no problem with items with different heights mentioned in #1376, but I have some doubts about stick_to_end as mentioned in #1376.
Concerning the stick_to_end, I found that it is some kind of stick_to_begin. It is not stick to the bottom.
As shown in the demo "Scrolling" -> "stick_to_end", when a new row is added, "stick_to_bottom"("end") should ensure the last few rows to be shown, rather than the beginning rows to be shown.
If stick_to_end indeed means stick_to_beginning, then we need stick_to_bottom, so when new rows appended to the end, those new rows should appear at the bottom.
Any idea about this?

One more thing, I found that when I scroll down too much. for example, the scroll area total height 900, viewport height 400, if i scrolled the viewport.min.y =a(> 900),  then in the next frame, the viewport.min.y will be 0. and then next frame, viewport.min.y=a(>900) again. then alternating.
I don't why this happened. I haven't dig into it. I have tried demo, it does not have such problem. there I am not able to scroll down too much.

Did you ever find a fix for this, @jackzhp ? This issue still remains as far as I can tell..


Support MSI Login under App Service (incl Kudu)

Which version of the AzCopy was used?
V10.3.3
Which platform are you using? (ex: Windows, Mac, Linux)
Windows (Azure Kudu via App Service)
What command did you run?
./azcopy login --identity
What problem was encountered?
Failed to perform login command:
please check whether MSI is enabled on this PC, to enable MSI please refer to https://docs.microsoft.com/en-us/azure/active-directory/managed-identities-azure-resources/qs-configure-portal-windows-vm#enable-system-assigned-identity-on-an-existing-vm. (Error details: Get http://<IP_ADDRESS>/metadata/identity/oauth2/token?api-version=2018-02-01&resource=https%3A%2F%2Fstorage.azure.com: dial tcp <IP_ADDRESS>:80: connectex: An attempt was made to access a socket in a way forbidden by its access permissions.)
NOTE: If your credential was created in the last 5 minutes, please wait a few minutes and try again.
How can we reproduce the problem in the simplest way?
Copy the EXE to a Windows App Service, go to the Powershell Diagnostic Console (Kudu) and run the command.
Have you found a mitigation/solution?
It seems that the token IP address is hard coded. I think it needs to look for the MSI_ENDPOINT environment variable. I would be interested in a workaround though.

Thanks for logging this. Currently, the MSI login uses a version of the API that's appropriate for code running in VMs.  The App Service version has a couple of differences in that it requires a client secret and, as you say , lookup of the endpoint through the environment variable.
I can't currently think of a workaround for running in an App Service situation. So I've marked this as a feature request (and slightly changed the title, I hope you don't mind.)

In my case I want to backup Storage Account using Powershell based Function app and for authentication I want to use Managed Identity and error exactly the same.
I believe root cause is the same.

I found workaround, at least it's usable in my case.
You can generate SAS token using MSI, and than you can use SAS inside azcopy command

This feature would indeed be super handy!  Thank you for any efforts you can make towards implementing it. 🙏

Hi @JohnRusk Is there any update in this feature requests? Thanks

@yuna-s I have moved to a different team. Perhaps @adreed-msft  can help you.

Hi @adreed-msft, Could you check this feature request?
App Service has a their own MSI endpoint, so changing this code in azcopy might help achive this feature.
https://github.com/Azure/azure-storage-azcopy/blob/13fecd4efee985bc1f2cf03fd130fe613ecec375/common/oauthTokenManager.go#L61

@adreed-msft Hope you are doing well. Could you help us for our users? Thanks!

@zezha-msft feature request

AzCopy login is depricated now you can use "az login" (Az CLI based login) instead. Closing this as anything supported by az cli will be supported by azcopy as well in terms of authentication modes.


Order of barycentric coordinates

Hi, I am trying to write a linear interpolation function from simplexgrids
to simplexgrids. The main loop is as follows:
   	cf = CellFinder(grid_from)
	for inode_to=1:nnodes_to
	@views icell_from=gFindLocal!(λ, cf, coord[:,inode_to]; icellstart)
		for i=1:dim+1
                       inode_from=cn_from[i,icell_from]
			u_to[inode_to]+=λ[i]*u_from[inode_from]
		end
	   icell_start=icell_from
	end

This does not work. I figured out that I need to permute the λ values.
How is the sequence of barycentric coordinates defined with respect to cellnodes[:,icell] ?
And do we have a link with #1 ?

I think it is (for Triangle2D):
λ[1] refers to cellnode[2,icell]
λ[2] refers to cellnode[3,icell]
1-λ[1]-λ[2] refers to cellnode[1,icell]


Dependency not found after install

Having a strange issue after installing this module. Even though I see it in my node-modules, package.json, and even see it listed in the vue ui "project dependencies" window, I still get the following error when attempting to import it -
This dependency was not found:

* vue-drag-it-dude in ./src/main.js

To install it, you can run: npm install --save vue-drag-it-dude

Any ideas what I may be missing?

Nuxt implementation

In your component or page template

<no-ssr>
<drag-it-dude class="stage-settings" id="canvas-settings"
  @activated="handleActivated"
  @dragging="handleDragging"
   @dropped="handleDropped" >
// ... your draggable content
</drag-it-dude>
</no-ssr>

in `plugins/drag.js
import Vue from 'vue'
import DragItDude from 'vue-drag-it-dude/dist/vue-drag-it-dude.umd.js'

Vue.component('vue-drag-it-dude', DragItDude)

include it with ssr:false in your nuxt config section

@dev7ch thanks!
I add this information in PR9


Documentation for Command Line Interface is out of date

Documentation at  https://dicomweb-client.readthedocs.io/en/latest/usage.html#command-line-interface-cli seems to be out of date.

Oh no I see what's happened here. When I re-did the packaging metadata (#102) I accidentally changed the CLI script name from dicomweb_client to dicomweb-client. This was not an intentional change.
I suggest that since the new version with this issue has been released for < 24 hrs, the best way forward would be to change back to dicomweb_client, release a new version and try to pretend this never happened...
Sorry about the confusion

See #104

Resolved by #104
I did also just fix the --bearer-token reference in the docs


Subscription Service Screenshot update required

Open https://developers.sap.com/tutorials/appstudio-onboarding.html
Step 3: Add SAP Business Application Studio subscription to subaccount
Note- Screenshot update required.
Expected

Actual

Hi @Mukesh-50 ,
Thanks for bringing this to my attention.
I update the tutorial whenever there's a major change, i.e. a change that has high probability to create confusion.
This case seems to be of a minor change, and therefore, will be included in the next update.
Regards - Raz


Track Data Uploaded and other stuff

I was on an airplane for six hours so there is a lot here and its not all related; its probably easier to review this commit by commit - I tried to break each one into logical sections.

A problem with working on the plane - the lack of internet means its hard to test. This doesn't work yet.
As an aside - getting end-to-end/functional tests working on osx would be great.

I tried, without success, to trigger the Blob Bytes Uploaded event - which I think highlights the continued need to have a better testing environment.  Fortunately, I think its covered under the under the functional tests that Jack fixed in the blob pricing pull request.
Once that is merged in, I'll rebase and re-run the functional tests to make sure this is working.

The main deliverables on this are the addition of two events.  One that tracks the amount of data uploaded and another that reports the total size of the blobs available to be uploaded.
https://app.asana.com/0/158829550589337/187745449149470
https://app.asana.com/0/158829550589337/187745449149472


new release - kustomize

Update odoo deployment to kustomize:

[ ]  move old deployments to legacy
[ ] update docker image to latest odoo
[ ] move docker image to quay.io to avoid docker hub pull limit
[ ] add kustomize staging version
[ ] document setup.

Any Guidance so that i can start work on it.

Any Guidance so that i can start work on it.

heya @herawais, thanks for the interest! I can make a list, these days with action items.
You would need to be familiar with kubernetes, kustomize and minikube.
Alternatively, i can submit an initial PR and tag you there.
Let me know which way you want to go.

heya @herawais, thanks for the interest! I can make a list, these days with action items.
You would need to be familiar with kubernetes, kustomize and minikube.
Alternatively, i can submit an initial PR and tag you there.
Let me know which way you want to go.

@PI-Victor Thanks for your reply,
Yeah i have worked on kubernetes and minikube. I will explore kustomize too.
What i want to do is, make helm charts or yaml files for Odoo latest versions.

@PI-Victor Thanks for your reply,
Yeah i have worked on kubernetes and minikube. I will explore kustomize too.
What i want to do is, make helm charts or yaml files for Odoo latest versions.

That's perfect. That's also what this issue is for as well.
Generally, this repo could do a do-over. I usually, try to stay away from helm, i'm not a big fan of templating yaml and i think kustomize is very helpful in avoiding that complexity.
Here's roughly what needs to done.

[ ] update the custom Odoo docker image to point to the latest release and make it easy to update in the future (via some script)
[ ] add base directory where we have a bare bone statefulset, a service, PVCs and an Ingress
[ ] add kustomize directory for minikube only, this will help people install it easily
[ ] find out what paths need to persist data so that we can mount PVCs in them
[ ] add documentation for deploying this setup to minikube

i'll update this list in the upcoming days

That's perfect. That's also what this issue is for as well.
Generally, this repo could do a do-over. I usually, try to stay away from helm, i'm not a big fan of templating yaml and i think kustomize is very helpful in avoiding that complexity.
Here's roughly what needs to done.

[ ] update the custom Odoo docker image to point to the latest release and make it easy to update in the future (via some script)
[ ] add base directory where we have a bare bone statefulset, a service, PVCs and an Ingress
[ ] add kustomize directory for minikube only, this will help people install it easily
[ ] find out what paths need to persist data so that we can mount PVCs in them
[ ] add documentation for deploying this setup to minikube

i'll update this list in the upcoming days


net_context: Go back to LISTEN state when receiving RST

In LISTEN state ignore a TCP RST. In SYN RCVD state, reset TCP connection
state to LISTEN when a valid RST segment is received. In all other states
close the connection - except that these other states will not be handled
in tcp_syn_rcvd() function.
Jira: ZEP-2279
Signed-off-by: Patrik Flykt<EMAIL_ADDRESS>

Updated.


class member typed as class not reconized

export class actor_PartyInput
{
        constructor()
        {
                super();

                /** @type {Long} */
                this.actorId=0;
                /** @type {actor_ActorAccessIdentifier} */
                this.actorAccessIdentifier=new actor_ActorAccessIdentifier();
        }
}

export class actor_ActorAccessIdentifier
{
        constructor()
        {
                super();
        }
}

actorAccessIdentifier will be displayed with type '*'

@mookraiser Hi! Thanks for this issue!
I try to generate documentation of the code. And the documentation is valid.

I use ESDoc v0.2.4.

wow, that's weird because I'm using ESDoc v0.2.4 also...

@mookraiser Please tell me your repository, if it is possible.
I want to look it.


invalid session token on Parse.Config.get()

Sometimes I got HTTP 400 and { code: 209, message: 'invalid session token' } when try to get Parse.Config [Parse.Config.get().then(...)] in Cloud Code
I should use master key for get Parse.Config on Cloud Code ?
Environment Setup

Server

parse-server version 2.2.25
Localhost or remote server? AWS

Logs/Trace
From ngnix access log
[13/Jan/2017:20:39:50 +0000] "POST /parse/config HTTP/1.1" 400 44 "-" "node-XMLHttpRequest, Parse/js1.9.2 (NodeJS 6.3.1)" "-"

@AndresRicardoTorres How did you initialize your server - with client and javascript keys, or only application id and master key? And how are you initializing the Parse client?
The master key is not needed to get the Config, only to update it.

Closing this issue. Make sure you setup the keys correctly in the SDK initialization.
If you have any updates about why it's not working, and we verify it's a bug in Parse Server, we'll reopen.

Server is configured with APP_ID and Master Key:
      appId: options.APP_ID,
      masterKey: options.MASTER_KEY

Client is initialize with (Android):
Parse.initialize(new Parse.Configuration.Builder(mContext)
               .applicationId(BuildConfig.PARSE_APP_ID)
               .clientKey("dummyClientID")
               .server(getString(R.string.SERVER_URL))
               .enableLocalDataStore()
               .build()
       );

The issue happens when a cloud is executed and hits the first server, inside the cloud code, we have
Parse.Config.get().then(...), this call hits the other server and returns HTTP 400.
Our environment runs the parse app in two different EC2 instances behind an Elastic load balancer and the database in other instances. Do we have to configure a cache adapter on this environment ?


CAMEL-19656 batch visibility extender task

Processes visibility extension entries of all exchanges submitted to the consumer using ChangeMessageVisibilityBatchRequest run as a single submission to changeMessageVisibilityBatch on the Amazon SqsClient.
Added TimeoutExtender class that holds the extension entries and runs/shuts-down the TimeoutTask.
ChangeMessageVisibilityBatchRequest sample code from amazon:  https://github.com/awsdocs/aws-doc-sdk-examples/blob/main/javav2/example_code/sqs/src/main/java/com/example/sqs/VisibilityTimeout.java#L102

Thanks for helping with this. But I would like to do this in a more stable way without all the complexity of schedule/cancel a task.
Instead we just have a single background task that runs periodically every X interval. It has an internal queue with the current exchanges that are inflight. Then if the queue is empty it does nothing. Otherwise it sends a batch request to AWS.
Also how how long time to extend can just be a fixed amount, as the task is scheduled to run also in fixed interval.
Then we can have 2 options the end user can control.

delay between extend task runs
how long time to extend

@simon-ras do you have any feedback on the updated code ?


Reducing test set size and adding a script to crop dicom images.

Replaced large test images with smaller ones to decrease repo size.

Description

I decreased the size of all three data sets by reducing the number of images (cropping in z-dimension). For the data sets LIDC-IDRI-0001 and LIDC-IDRI-0003 I chose the regions that contain a big mass inside the lung, which are probably tumors. LIDC-IDRI-0002 does not contain such a mass. Thus I chose a range of slices that contained nodules as stated by the *.xml file. (Disclaimer: I am not a medical professional. As a biologist I only have very limited knowledge about diagnosing lung cancer on CT-images). The *.xml files were removed from the data set for now. The data sets are in the same location as the original data sets. The names changed to be more declarative and now represent the depth of the slices in mm instead of a non-consecutive id.
Additionally a script was added to prediction/src/preprocess/crop_dicom.py that allows to crop dicom series in x-, y- and z-dimensions for future use.
Existing tests were updated accordingly.
Reference to official issue

Issue #38
Motivation and Context

The datasets were quite large. Smaller datasets would substentially decrease the repo size. The created script might be useful for preprocessing in prediction tasks.
How Has This Been Tested?

Unit tests for the new script were created to test whether the expected output is created. Existing tests were updated to appropriately deal with the smaller test sets (One test relied on a *.xml-file being in the folder). The other tests resulted in no errors. Smaller datasets can be opened using an external DICOM-Viewer (RadiAnt).
Screenshots (if appropriate):
CLA

[x] I have signed the CLA; if other committers are in the commit history, they have signed the CLA as well

Thanks @tdraebing! Nice job with this. One question initially: would you mind using Google style formatting for the docblocks?

I updated the pull request. The doc string now follows Google style formatting. Also the full test set was included again next to the cropped dataset. I updated the docker-configuration to load the small dataset into the /images-folder when running tests.

Made a couple comments... afterwards, a rebase + squash should be all that's needed. Thanks!

Thanks for reviewing! Should be fixed now.

Quick question, does the small test data set use the actual images or the git lfs ones? It should be the actual images, but I just ran a test and noticed the files on my computer are still linked via lfs.

I am not very familiar with lfs, but as I understand it, right now lfs is scanning for all *.dcm-files in the repo-folder as specified in the .gitattributes-file. Thus the small dataset  would also be handled by lfs. git lfs ls-files indeed shows that the small datasets are managed by lfs.
I am not completely sure how to fix it correctly without doing a mistake. I guess I would have to follow this guide: https://help.github.com/articles/removing-files-from-git-large-file-storage/ and change the entry in .gitattributes to a more specific path. But as I understand it, this will completely remove the files from the repo. Is changing the .gitattributes-file and committing with the image files maybe enough to replace the lfs-pointers in the repo with the proper files? Could anybody comment on that?

Ok... maybe a fix can bundled in with #59? @lamby @pjbull


Include scm info

This includes the scm tag in the project parent

@gastaldi I took the freedom and reformatted the pom.xml.

@gastaldi should we cherry-pick the change to the 2.x-branch? Or is this irrelevant for older branches?

That would be interesting since that would publish the correct metadata in central when released.

Okay, we'll downstream the scm-information to 2.x :+1:


Adding a newer Azure Storage Nuget breaks app

From @lindydonna on June 21, 2017 21:13
From @brettsam on June 20, 2017 22:22

Create a fairly ordinary QueueTrigger that uses a CloudQueueMessage as a parameter:
[FunctionName("QueueTriggerCSharp")]
public static void Run([QueueTrigger("mover-items", Connection = "AzureWebJobsStorage")] CloudQueueMessage myQueueItem, TraceWriter log)
{
   log.Info($"C# Queue trigger function processed: {myQueueItem}");
}

Add the latest WindowsAzure.Storage nuget package as a new dependency.

Run

You'll end up with unexpected errors. It looks like because the versions don't match, we don't realize that CloudQueueMessage is a 'known' type. So we try to deserialize the contents of the message into it, which doesn't work.
Copied from original issue: Azure/Azure-Functions#349
Copied from original issue: Azure/azure-functions-vs-build-sdk#59

From @brettsam on June 21, 2017 21:58
Yes, it happens in precompiled functions as well. I'm guessing it has to do with assembly redirects -- it can't match the types b/c they're from different assembly versions so it assumes CloudQueueMessage is a POCO rather than a 'known' type.

@brettsam Do you see the same issue if you use function.json with a precompiled class library?  See https://aka.ms/precompiled-functions for info on how to set up.
If so, the issue belongs in the Script repo, I think.

@brettsam I've moved to script repo.

This is indeed related to unification/redirects. We don't automatically redirect higher versions  down today.

By design until #992 is supported


set initial animation for PawnAnim

This goes back to https://github.com/GDquest/godot-turn-based-rpg/issues/146 which was closed. There is still a odd jump when you first walk, which was due to anim.get_current_animation_length() getting 0 for the first step, and then 0.25 after that because an animation was set. This should fix it so it always gets the value on the first move.

Thank you very much 🙂


SDK ready for v1.0.0

SDK seems stable enough to release a 1.0.0.
That way we can start semantically verisoning any changes, since we have a good bit of integrators using the sdk now!

I'll leave this issue open for a few days, and if there is no public comment, will release v1.

I'm trying to integrate the sdk but once i try to call
await nftSwapperMaker.fillSignedOrder(signedOrder, undefined, {       gasPrice,       gasLimit: "500000",       value: parseEther("0.01"),     });
It keeps reverting with the error above.
I cant really say what the issue is, Probably an error in the contracts?
I'm using NftSwapV3 on the Rinkeby testnet.
Thanks.

Pls, kindly help wit a youtube tutorial on how to go about using this tool. and also how to use our own UI. This is amazing work


Fix a link changed in Scala 3.0.0-RC1 reference

The status of this PR look weird.
Even though it's already approved, I still can see the red "Review required" and "Merging is blocked".
Also, in the PR list page https://github.com/scala/scala3-example-project/pulls, I can see this approved PR is marked as " Review required".

Literally anyone on GitHub can "approve" a PR, but the approval doesn't count towards "Review required" unless the approval is from someone who has merge rights in the repo. In these cases, the checkmark next to the approval shows as gray rather than green.
Philippus has merge rights in many scala/* repos, but not in this one. That probably came about because this repo was transferred here from the lampepfl org.

@Philippus I have added you to https://github.com/orgs/scala/teams/docs/members, and I've given that team write access to this repo.
I would actually be happy to also add you to https://github.com/orgs/scala/teams/committers if the need ever arises. (For example, if you became more active in the scala/scala repo.)

thank you @ShapelessCat and @Philippus


Bug: skill tier should be on player

Currently, the visual skill tier attribute is on participant. It should be on player and it should be in line with the VST in game.
How to reproduce:

be T1 gold
win a match
be T2 bronze
API returns T1 gold on the match's participant object (which is correct for the time the match started)

This isn't a bug.  It's skill tier at the time of the match.  It should also be on player.  Good point though!


Add your name on position nr. 22

In index.html add your name to the list.

I will work on the issue.


Implement QKMeans

Summary
Implementation of Quantum K Means as discussed in  #232.
Details and comments
This is an initial implementation. Would appreciate your feedback to make any required changes.

Hi, @prakharb10
why is it necessary that the backend is an input argument?
didn't you have problems with the PEP-8 style about the names of some variables (q, qc, ...) or the length of the get_states function?

Thanks for the PR. It is really looks good.
But the algorithm itself has a crucial limitation that makes it not so interesting for the implementation. I studied the cited paper and they state on the page 34 "The measurement during swap test is causing the deconherence of input states, thus the quantum memory should contain multiple copies of input states". Since we don't have quantum memory and there are no preconditions for such thing, quantum states have to be prepared every time they are required. In the algorithm they use amplitude encoding, take a look at the formula (129) on the page 34. In the implementation you have the same approach, on the line 232 of qkmeans.py you have init_state = Initialize(x). This is exactly what is supposed to do in the algorithm. Nothing wrong here, but on a large number of features such initialization becomes a problem. It scales exponentially, thus, if we consider other terms in the complexity of the algorithm, it leads to the same time complexity of the algorithm as the classical clustering algorithm has. Basically, quantum state preparation compensates all the possible benefits we may obtain from computing distances on a quantum computer. Considering the limitation, I don't think the implementation may be recognized as a contribution, unfortunately.
On the other hand, the implementation looks nice and I'd like to keep it as an example. The implementation can be a separate package. Also, there's an evolving process of setting up a community/ecosystem for the tools and software that depend on Qiskit. Once we have such a community, this implementation may become a member of it.
Let me know if you have questions.
@stefan-woerner this is for your information.

The example is good, but does not fit well into Qiskit Machine Learning. I'd be appreciated if you moved this PR/code to a dedicated repo and contributed it to the Qiskit Ecosystem, see here: https://qiskit.org/ecosystem/
Let me know if you have questions.


Update resolving_merge_conflicts.md

Initial edits

Once we have a new merge conflict, I will test these updates to confirm they resolve the conflict.

@bvarner-ebi - dont forget to add a version of this that is generalisable to https://github.com/OBOAcademy/obook/blob/master/docs/howto/fixing-conflicts.md yeah


Simplify fonts

We can remove georgia and arial because those are usually the same as the defualt serif and sans font. We can add comic sans because of some requests.

Done! Way better now.


Discuss autogenerated APIView approval workflow

Discuss about automatic approval workflow and use cases based on the suggestions from previous arch board meeting

scheduled for 2/24 3-4pm

Recording[MS INTERNAL ONLY]


UI - Not able to use some keys like up/down arrow/copy&paste on the terminal after quitting gptscript --ui.

gptscript version v0.0.0-dev-faaee653-dirty
Steps to reproduce the problem:

Launch ui - gptscript --ui --disable-cache
Once UI is launched successfully , use ^c to quit the ui session.
After this notice that  some keys like up/down arrow/copy&paste on the terminal stop working properly.

It starts working as expected once we clear the terminal.

--ui is removed so can close this, right @sangee2004?

Closing this issue.


Added video_desaturator #339

video_desaturator -
Takes an input video and desaturates it (converts to black and white) using ffmpeg.
Can also manually set a saturation level (0 to 300 percent) but the default is 0
Issue no.- #339
Self Check(Tick After Making pull Request)

[x] This issue was assigned to me.
[x] One Change in one Pull Request
[x] My file is in proper folder (Name of folder should be in lowercase with no space in between)
[x] I am following clean code and Documentation and my code is well linted with flake8.
[x] I have added README.md and requirements.txt with my script

If issue was not assigned to you Please don't make a PR. It will marked as invalid.

I think no need to add those inbuilt libraries in requirements file. Delete requirements.txt


featureSupport get row count for pg and sql server.

Support get row count for pg and sql server.


FIX PLUG SPECS: As an open-source plug user, I want these specs to be fixed, so that I am confident I am using a foolproof gem

FIX PLUG SPECS: As an open-source plug user, I want these specs to be fixed, so that I am confident I am using a foolproof gem
STORY
Acceptance Criteria

Specs run on local
CI succeeds
New version (0.1.24) of gem released to Rubygems
Nat Lib/DNZ websites install plug from Rubygems and not Github
Recommend an approach to basic, regular maintenance of plug
(eg. add to one of our quarterly stories or create a separate one - how freq/saying what?)

Notes

Follows: https://www.pivotaltracker.com/story/show/178838095
From discussion with Ben
Migration issue for Rspec is fixed in branch ba/fix-rspec, use this branch for further work.
Current issue is with FactoryBot methods not available on Specs

Plug::SiteNotice scopes finds by slug or name
      Failure/Error: site_notice = create(:site_notice, name: 'Session')
      NoMethodError:
        undefined method `create' for #<RSpec::ExampleGroups::PlugSiteNotice::Scopes:0x00007f82b40e65d0>
      # ./spec/models/plug/site_notice_spec.rb:47:in `block (3 levels) in <module:Plug>'

Impacts

Current, published, version of plug does not work with Rails 6
This is important general maintenance to keep plug up-to-date and secure
Eddy mentioned there are approx 33,000 downloads of plug from Rubygems

🏆  Good Jon @paul-mesnilgrente


[Feature request] Print "tag" when it says "Begin/End processing dataset"

[2019-01-19 00:22:12,512] Began processing /WpWpJJ_EWK-QCD_TuneCP5_13TeV-madgraph-pythia8/RunIIFall17MiniAODv2-PU2017_12Apr2018_94X_mc2017_realistic_v14-v1/MINIAODSIM
[2019-01-19 00:22:12,647] Ended processing /WpWpJJ_EWK-QCD_TuneCP5_13TeV-madgraph-pythia8/RunIIFall17MiniAODv2-PU2017_12Apr2018_94X_mc2017_realistic_v14-v1/MINIAODSIM
Can we make the above to look like
[2019-01-19 00:22:12,512] Began processing tag=V01-02-03 datasetname=/WpWpJJ_EWK-QCD_TuneCP5_13TeV-madgraph-pythia8/RunIIFall17MiniAODv2-PU2017_12Apr2018_94X_mc2017_realistic_v14-v1/MINIAODSIM
[2019-01-19 00:22:12,647] Ended processing tag=V01-02-03 datasetname=/WpWpJJ_EWK-QCD_TuneCP5_13TeV-madgraph-pythia8/RunIIFall17MiniAODv2-PU2017_12Apr2018_94X_mc2017_realistic_v14-v1/MINIAODSIM
OR without tag= and datasetname=
Point is that it will look much like the dashboard.

Naively solved by https://github.com/aminnj/ProjectMetis/commit/c469874acfcc569767a0ffa9627f68eba226cfaf
Not exactly the same format, but it at least has the tag now, to differentiate multiple instances of the same dataset.


[Cosmos] Return to node-abort-controller

Working through some issues with 3.3.4 and @azure/abort-controller. To unbreak browser users we will revert to node-abort-controller.

@southpolesteve Can you run rush update and commit the generated(or updated) pnpm-lock file.

@HarshaNalluru done


Error: no commits found

At some point the commits stopped loading;
https://github.com/cawa-93/vite-electron-builder/runs/2122874127#step:6:7
If the error occurs, the workflow does not stop, so I did not immediately notice the problem.
I use generate-changelog-action to create notes for each release, automatically each time I push to main
There are currently no tags in the repository and commits have been loaded from the initial.

Does your repository have any tags?: https://github.com/cawa-93/vite-electron-builder/tags
https://github.com/ScottBrenner/generate-changelog-action/commit/a7403c00ca4253e9481f5fdc917c5c33fde5fd61 modified the Action to generate the changelog from previous tag to newest.

Does your repository have any tags?: https://github.com/cawa-93/vite-electron-builder/tags

No. My workflow assumes that in that every tag = application release.
My repository is a template, so it doesn't have any releases or tags. There is only a draft release with a prepared history of changes.
I expected that all commits, starting with the initialization, would gather before the first tag. This will allow you to correctly generate a history of changes for the very first release.

Interesting, suggest using the previous release - https://github.com/marketplace/actions/generate-changelog-action?version=1.1.0 - as a workaround.

Hmmm ... What I do wrong?
https://github.com/cawa-93/vite-electron-builder/runs/2124585259#step:6:7

Ah sorry, https://github.com/marketplace/actions/generate-changelog-action?version=1.0.3 is the previous version to use.

Yes, the workaround worked. Thank you.
It would be great if the whole process fell apart when such errors occurred. This would allow you to notice the problem faster

https://github.com/ScottBrenner/generate-changelog-action/releases/tag/v1.2.0 added the ability to specify a tag range (or default to the previous), might help here.

Due to problems with the docker, I had to replace this action with my own (though not perfect) solution.


Breath of the Dragon (Dragonblood)

the Ancestry feat Breath of the Dragon is throwing "Failed to resolve injected property" errors.

Did you take the dragonblood heritage? The things the Breath of the Dragon (Dragonblood) has depends on the Dragonblood heritage and the choice made within it.


Delay before clicking

Hi Dharmesh,
First, thank you so much for this extension!
I have a suggestion.
It would be very useful if we could specify a time delay before the extension clicks an object.
Some pages need some time to load dynamic content.
It would be great if we could specify a delay of 5 seconds, for instance, before any button or link is clicked by the extension.
What do you think?
Thank you so much again!
Alex.

Hi Alex,
Thanks for checking out AutoClick Extension. We have already created milestone for same and it will be available soon. :)

This feature is published please update


Create slap.ts

Add $SLAP token metrics

Checking if it's fine now - we are looking forward to having that info live :)

hello sirs, how are we looking now?


Critical error when going to settings on up.hcommons-dev.org

[x] Add to an appropriate Epic.

Tester (if different from issue creator): Bonnie
Site: up.hcommons-dev.org
URL: https://up.hcommons-dev.org/members/hctester40/settings/
Test Account: hctester40 (Ferdinand Test)
Area (CORE, sites, profiles, groups, general): settings
If issue discovered on dev, does it also exist on prod? I can't enroll Ferdinand Test with UP on prod, but I believe this is a development issue.
Describe the issue

The entire screen is wonky and it's giving the error "There has been a critical error on this website."
This is not happening on hcommons-dev.org or mla.hcommons-dev.org, only up.hcommons-dev.org. Appears to be local to UP.
To Reproduce
Steps to reproduce the behavior:

Log in as Ferdinand Test
Click on Settings
See error

Expected behavior
A clear and concise description of what you expected to happen.
Screenshots
If applicable, add screenshots to help explain your problem.
Optional details, if they seem relevant
Desktop (please complete the following information):

OS: [e.g. iOS]
Browser [e.g. chrome, safari]
Version [e.g. 22]

Smartphone (please complete the following information):

Device: [e.g. iPhone6]
OS: [e.g. iOS8.1]
Browser [e.g. stock browser, safari]
Version [e.g. 22]

Additional context
Add any other context about the problem here.

Should be fixed.
See: https://github.com/MESH-Research/boss-child/pull/101

Fixed!

Fixed.


Mocking java method calls

I am trying to mock java calls using meta constants like this:
(ns midje.test.core
 (:use [midje.sweet]))

(defn write [socket message]
 (.write (.getOutputStream socket) (.getBytes message)))

(fact
 (write ...sock.. "hello") => nil
 (provided
   (.getOutputStream ..sock..) => System/out))

I expect that (.getOutputStream ..sock..) will be replaced with System/
out in the write function call. However, I get "java.lang.Exception:
Unable to resolve var: .getOutputStream in this context (core.clj:
10)"
Considering you know which functions are to be mocked:
(fact ...
 (provided
  (.toUpperCase ..meta..) => "LO"))

it should be possible to perform something like this during macro evaluation:
(gen-interface
 :name midje.Stub
 :methods [[toUpperCase [] String]])

(def stub
 (proxy [midje.Stub] []
  (toUpperCase [] "LO")))

(assuming that interface name is generated and there is some mechanism
to clean *compile-path*)
Then associate ..meta.. with this stub and use it like this:
user=> (.toUpperCase stub)
"LO"

hi jevgeni, does the gen-interface have to be compiled before the midje code tries to run?

Hi Alex, I believe that gen-interface has to be run before the proxy is generated. If metaconstant is using/representing that proxy, then this could be done at the same time, as fact macro evaluated (somewhere at the same time, when "provided" form is evaluated).

In the spirit of brainstorming, I wonder if we could somehow leverage an already existing Java mocking framework, such as Mockito, for the internals?

I was thinking about Mockito as well. However, it looks like there is no easy way to generate interface/class, it is expected to be written first. It might have it, but I never encountered that in my daily job. As to the second part of this problem - mocking the existing method - in my opinion proxy is easier solution (just copy-pasting the forms to the method body) rather than using Mockito's mocks.
Another way would be telling which interface/class metaconstant does implements, like this (or something better):
(provided [^String ..meta.. , ^MyInterface ..anothermeta..]
(.toUpperCase ..meta..) => "LO"))
In that case Mockito will be quite useful.

Any more ideas on this jevgeni? I think it is a really useful and sensible feature to work to include in Midje.  It sounds like you have some ideas on how to approach it, and I would really appreciate all the ideas you have to offer!
P.S. I wonder about mocking Java static methods?
Test I'd liked to have written tonight:
(fact "access environment vars only when namespace is loaded"
  (do
    (red "a")
    (yellow "b")
    (red "c")
    (yellow "d")) => anything
  (provided
    (System/getenv "MIDJE_COLORIZE") => anything :times 0))

Looks like PowerMock enables mocking Java static method calls:
http://code.google.com/p/powermock/

A couple of proposed syntaxes for creating mocks/stubs (not spies)
(provided (mocking bar IBar (.size [this] 10)))

(fact (x) => 1 (provided (.foo IFoo f) => 2 (.bar IBar b) => 3 (.baz IBaz bz ) => 4))

I haven't used PowerMock, but I guess it should be a good choice as well.
As to syntax - I've just checked my Java code and I see, that I use mocking on the same objects quite intensibly. Won't it be too much duplication if you stick with " (.method SomeLongClassName metaName) => returnValue " form?
I think syntax is the major decision point. Implementation should be quite straighforward as I might imagine (I might be wrong, as I don't know the internals of "fact" macro) - creating an mock instance of the provided class, saving it under ..meta.. symbol, run few powermock invocations such as Mockito.when(mockObj.methodToMock()).thenReturn(123);

After doing some more digging, I'm wondering if the approach to this could be to expand on the idea of metaconstant fakes (...m...)?  I think this is what you were getting at jevgeni.
It might look like:
(fact
  (x ..foo..) => 1
  (provided
    (.foo IFoo ..foo..) => 2 ))

vote +1

I've thought some more about this.  In order to get a sytnax like the below we need to do some tricky stuff.

when creating the meta constants, need to create a subclass of Metaconstant that satisfies the given interface.
#1 assumes an interface, what do we do if we want to stub a class?  We couldn't piggy back on Metaconstant I don't think...
if we wanted to wrap another mocking library like Mockito, how do we get this to integrate with the Metaconstant?

(fact
  (x ..foo..) => 1
  (provided
    (.foo IFoo ..foo..) => 2 ))

I'm just not seeing a clear way to do this, but I really want to, because Clojure's built on the JVM and imo Midje should make working with the JVM easier for our users...
Any ideas?

Perhaps using the Mockito.spy would work here.  It enables you to mock on an object (not class or interface).
So, for a mocked metaconstant the steps would be to make a version of Metaconstant that extends the appropriate interface/protocol, then make a new one of those SubMetaconstants, then Mockito.spy that object.
Meh, we'll see.

Is this still on the roadmap? If so, I vote +1

I don't see this comment on the github site, but I really doubt it will ever happen. Sorry.
Antonis Kalou wrote:

Is this still on the roadmap? If so, I vote +1
—
Reply to this email directly or view it on GitHub
https://github.com/marick/Midje/issues/55#issuecomment-162827368.

Yea, sorry for deleting, I didn't notice the day of the posts until after I commented. Thanks for your help.


scrape + discovery: Required changes for serverless use

Rebases on top of @ridwanmsharif changes https://github.com/GoogleCloudPlatform/prometheus/pull/122 with following updates:

Simplified discovery, I think we can always skip wait and make it more robust.
Adjusted TestManagerStopAfterScrapeAttempt to simulate bit more how external users might use it.
Removed one test, we test it TestManagerStopAfterScrapeAttempt already
Cleaned up comments.
Fixed lock bug that was here already.

More details on locking:
Checked -race on TestManagerStopAfterScrapeAttempt and indeed without your locks.
It produced RACE, I would argue it's not possible as everything is guarded by mtxScrape:
// reload -> ApplyConfig mtxScrape
// stop -> Stop/StopAfterScrapeAttempt/ApplyConfig mtxScrape
// sync -> Sync -> manager reload mtxScrape
Turned out - there was bug in our locking (mtxScrape Unlock was too soon). Fixed, and now no more locks are needed.
BTW @ridwanmsharif epic work on DiscoveryReloadOnStartup and SkipInitialWait in discovery. Super nice solutions! I changed it only slightly, but feel free to reject 🤗

Fuzzing issue seems unrelated, I would ignore.

Looks like races on my discovery changes. They might also occur on your changes, just we don't test those with this special flag 🤔

Merged https://github.com/GoogleCloudPlatform/prometheus/pull/122 for now as this needs some love.
The race is on test (using discoveryManager.targets without lock while .Run is till there), but I need to verify we won't have some other consequences for non sidecar cases... t


🐛 透视表分页支持

🏷 Version

Package
Version

@antv/s2
-

@antv/s2-react
-

🖋 Description

⌨ Code Snapshots

🔗 Reproduce Link
🤔 Steps to Reproduce

😊 Expected Behavior
😅 Current Behavior
💻 System information

:tada: This issue has been resolved in version @antv/s2-v1.7.0 :tada:
The release is available on:

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:

:tada: This issue has been resolved in version @antv/s2-react-v1.7.0 :tada:
The release is available on:

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:

:tada: This issue has been resolved in version @antv/s2-v1.7.0-alpha.5 :tada:
The release is available on:

npm package (@alpha dist-tag)
GitHub release

Your semantic-release bot :package::rocket:

:tada: This issue has been resolved in version @antv/s2-react-v1.7.0-alpha.5 :tada:
The release is available on:

npm package (@alpha dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


Release v3.0.0

Merge release into main.
Now that we don't allow direct pushes to main I wasn't able to do npm version ... then git push origin main.  When we implement changes needed for #68 this kind of pr shouldn't be needed anymore

cc: @sanderpick @carsonfarmer Sorry to ping you both here.  I have a fix for Dan and would be nice to put this commit as the target just to keep the git history clean.


useLocalStorageState callback form of state-setter bug

useLocalStorageState is not initialized with local-storage so it ends up building the wrong state on first call of callback form of setState.

v5.2.3


error

This is autogenerated. Please review and update as needed.
Describe the bug
Command Name
``
Errors:
To Reproduce:
Steps to reproduce the behavior. Note that argument values have been redacted, as they may contain sensitive information.

Put any pre-requisite steps here...
``

Expected Behavior
Environment Summary
Linux-5.3.0-28-generic-x86_64-with-debian-buster-sid
Python 3.6.5
Shell: bash

azure-cli 2.0.81

Additional Context

HI @hatsem78  thanks for reporting. Could you pls add more detail about which commands and what's error? thanks.


Fix leaks caused by implicitly-called copy constructors

Previously, Variants were unpacked like this:
Variant::operator PoolVector2Array() const {
	godot_pool_vector2_array s = godot::api->godot_variant_as_pool_vector2_array(&_godot_variant);
	return *(PoolVector2Array *)&s;
}

The cast implicitly calls the C++ type's copy constructor. (You can find it in the gdb disassembly.) This increases the ref-count twice instead of just once through godot_variant_as_*. For PoolArrays, it caused an error message on exiting Godot:
ERROR: cleanup: There are still MemoryPool allocs in use at exit!
   At: core/pool_vector.cpp:69.

All of the ref-counted, RAII-managed core types are affected. The fix is to use a local variable and return it instead of casting.

I test this fix is ok and  can fix #318

Thanks!

Looks like this still leaks for Array and Dictionary. I forgot to take into account that their default constructors, unlike PoolArrays, allocate a small empty array that is now getting leaked instead of the one in the Variant.
I don't know of any way to prevent this default constructor call in C++. Instead of trying more hackish casts, I think I'll just add a safe, clean constructor to Array and Dictionary: Array(godot_array p_array), unless anyone has another idea for how to convert the C types without calling either default or copy constructor.


First empty implementation for ZImage HDU

Read HDUs but do nothing with data yet
One simple test added in ReadFitsTest
Still sbt test is complete
TODO: complete the reader for ZImages
CA

Codecov Report

Merging #36 into zimages will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff            @@
##           zimages      #36   +/-   ##
========================================
  Coverage    87.65%   87.65%
========================================
  Files            9        9
  Lines          478      478
  Branches        78       78
========================================
  Hits           419      419
  Misses          59       59

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 4f3bb95...767e147. Read the comment docs.


Previewing the content of archives with many files takes too long

Please describe the problem you're trying to solve
I'm migrating from nnn to yazi. I recently realized when previewing a zip file with many files and directories, nnn can list the data instantly but it takes tens of seconds for yazi to do the same. I don't know how nnn does it but the difference in user experience is very noticeable.
Would you be willing to contribute this feature?

[ ] Yes, I'll give it a shot

Describe the solution you'd like
It'd be a lot better for user experience if yazi was also able to instantly list the content of a zip file with a large number of files and directories.
Additional context
No response

This is a known issue - the builtin archive preview is currently a temporary implementation. It will be optimized in the future with the implementation of "Archives as directories" noted in Feature Requests.
For now, please use a custom previewer for archive files, such as https://github.com/ndtoan96/ouch.yazi

Done in https://github.com/sxyazi/yazi/pull/1220


Automatically generate literal models via codegen

This PR supersedes #64 keeping the high level goal of automatically generating models via codegen
Citing the previous PR:

I should preface this PR by saying that the underlying pattern of these enum-like classes is not ideal and smells a bit like an anti-pattern to me. Mainly because of https://github.com/AllenNeuralDynamics/aind-data-schema/issues/960
Several of the patterns I used for the generators reflect the following discussions:

Improving Union methods as described in https://github.com/AllenNeuralDynamics/aind-data-schema/issues/843 and https://github.com/AllenNeuralDynamics/aind-data-schema/discussions/794
Improve type hinting (https://github.com/AllenNeuralDynamics/aind-data-schema/issues/843)

The following points should be considered in as issues and addressed in future PRs:

Generating classes from an endpoint instead of CSV files (this could be a suitable solution for #59  and #51 )
Removing the CSV files from the pypi package to prevent bloating

As a reminder, the depended upon library (https://github.com/AllenNeuralDynamics/aind-pydantic-codegen) must be published to pipy prior to the merge. I suggest going through all the use-cases that we may want to contemplate in this PR, iterate the library to address all cases and make a 0.1.0 release of the package to pipy.

As a reminder, the depended upon library (https://github.com/AllenNeuralDynamics/aind-pydantic-codegen) must be published to pipy prior to the merge. I suggest going through all the use-cases that we may want to contemplate in this PR, iterate the library to address all cases and make a 0.1.0 release of the package to pipy.

I spent some time reviewing this just now and I'm a bit blocked by the use of this library, which seems very cool but also quite complex. Is this code that's coming from other codegen projects and you wanted to put into a general library or are all the features being used here in a way that I'm not understanding?
Basically I'm worried that this is a complex dependency when we're basically just writing the same pattern repeatedly for each row in a dataframe and we could just hard-code it for each model type in a more maintainable/user-friendly way.

I spent some time reviewing this just now and I'm a bit blocked by the use of this library, which seems very cool but also quite complex. Is this code that's coming from other codegen projects and you wanted to put into a general library or are all the features being used here in a way that I'm not understanding?

The library was written to address the cases I came across in this repository. In cases where I saw an easy path to abstract the functionality, I went for it. I think that most of the complexity in the code has to do with trying to infer/deal with cross-references across models. One could ask users to "hard-code" everything instead of passing proper python classes, but if you go down that route I would probably agree with your next statement where the better solution would be to simply write a macro that users can run in their machine.

Basically I'm worried that this is a complex dependency when we're basically just writing the same pattern repeatedly for each row in a dataframe and we could just hard-code it for each model type in a more maintainable/user-friendly way.

This is a very good point. When you make the decision to add a new dependency you incur in the good things that it brings but also the bad ones. I am by no means claiming that this is the perfect solution and it is likely that there is a more straightforward solution for this single problem that I am not appreciating.
For what is worth, do not worry about the work that went into it, it was a great experiment and I am sure I will end up using it at some point :P
Thanks for reviewing!

I think that most of the complexity in the code has to do with trying to infer/deal with cross-references across models.

Okay this is what I was concerned about -- do you have an example of where this happened? I'm leaning toward using a simplified solution for maintainability, with your permission, but if we need to pull apart cross-references then that could make this backward incompatible.
Still I think breaking cross-references might be preferred if that allows us to keep the code generator minimal.

I think this happens each time you reference an already existing class. When you enter a seed class, e.g. say your seed is MyClassTemplate, you need, at a bare minimum, import the namespace that has MyClassTemplate. The alternative is to use the strategy I used for the ForwardClassReference and rely on the pre-existence of the class (this is necessary in certain cases where you may otherwise have a circular dependency that can't be easily resolved). This strategy reduces code simplicity, but it also puts the effort on the user's side to know where to get all the dependencies from.
The other part of the code that I admit is a bit convoluted is
https://github.com/AllenNeuralDynamics/aind-pydantic-codegen/blob/13a2e2bf2581db2e6ae8c14752ffd77fdbd9559a/src/aind_pydantic_codegen/generators.py#L574
But I don't think this is unlike the current heuristic that the repo follows here https://github.com/AllenNeuralDynamics/aind-data-schema-models/blob/6a5148c8304bb47356958b80b445469ec5bd83b0/src/aind_data_schema_models/utils.py#L39-L53 with the arbitrary field_handlers field which I assumed are callables that can flexible operate on top of the incoming data (not sure, since the type was a dict so I may have missed the point when inferring from the code). I left the parser callables a bit more generic since I suspect that we will want to parsing those that are not from csv documents at some point (e.g. from endpoint requests directly)
Also, are you concerned with the complexity of the code in the library OR the code that I PR'ed  to this repo? If it is an API problem we could potentially address it differently. I guess the relevant file would be this one:
https://github.com/AllenNeuralDynamics/aind-data-schema-models/blob/adf2317987e9dfb4ccd1d767be29a86da6f09f65/src/aind_data_schema_models/_generators/_generate.py

Thanks for the additional detail, I didn't totally follow the first point about dependencies so I think I just need to try to write the macro-based version of this and see where it fails to understand the problem. More on this tomorrow or early next week.

Thanks for the additional detail, I didn't totally follow the first point about dependencies so I think I just need to try to write the macro-based version of this and see where it fails to understand the problem. More on this tomorrow or early next week.

One last note, depending on the complexity of your use-case you can also look into templating tools like Jinja2. While writing the generator library I wanted to use this instead of all the string interpolation, but never quite got to it. It would replace the TemplateHelper interface. If you are looking for an easy and maintainable way to generate the classes text, and, critically, you believe that you wont need a lot of processing to from data source -> generated text, this may be a good way to go about it.

@bruno-f-cruz Jinja2 was a great solution for this. Apologies again for not using the library you built here, hopefully some of this code finds a home in another place. Really appreciate you being supportive of putting together a simplified version of this.
At the end of the day, we will have functional enum-like classes soon! I can't tag you as a reviewer for some reason but the PR is here https://github.com/AllenNeuralDynamics/aind-data-schema-models/pull/94 and I'd appreciate your input.


Add ability to skip login window / auto login

I wanted to add the ability to not have to click the OK button if there is only a single session and the username/password is already set in xrdp.ini. This is my concept of how this could be achieved.
Currently, it is possible to set the username and password in xrdp.ini. However, automatic login only functions when the client sends credentials. Even if the client's credentials are incorrect, the session logs in based on the credentials in the .ini file. With the skiploginwindow=True variable, this behavior can now be achieved without the need to send false credentials to trigger the if-condition.
Currently, if skiploginwindow=True and the credentials in the .ini are wrong, the error-log-window loops without showing the login window. So implementing this as a session variable would be a good way to prevent this, if the auto login fails you will see the login window. This could be done by using the skiploginwindow config variable to set rdp_autologin to 1 when creating the session, but I have not found a good place for this logic yet.

@GermanDarknes - thanks for that.
There seems to be some fundamental security problems with this:-

How do you know the user connecting is the correct user? There's no validation at all of the incoming connection.
You're storing a password in xrdp.ini which is world readable on the entire machine.

Isn't more secure to simply send the credentials from the client? I'm failing to see a good use-case here.

The use case here is that it allows skipping the 'OK' window (see images). Everything else is already in the code, and I'm simply utilizing these features.

The auto login functionality already exists and can be triggered by sending credentials, even incorrect ones.
https://github.com/neutrinolabs/xrdp/blob/76d12c50a8a38b848a45969fc9808a1e5a834e23/xrdp/xrdp_wm.c#L639
Regarding the first question: Anyone can connect. With the existing settings, I can already set up a guest session, where a user doesn't need to input a username and password. With this new toggle, they can simply skip the window, avoiding the login screen with a combo box that contains only one entry. This is now skipped and the user is directed straight to the desktop.
Regarding the second question: The functionality to store a password in the .ini file already exists and it's not a new security issue from this PR. In the context of using this functionality for guest accounts, the username and password are intentionally public and the account has restrictions in place.
.ini defined login data always suppresses the sent ones.
https://github.com/neutrinolabs/xrdp/blob/76d12c50a8a38b848a45969fc9808a1e5a834e23/xrdp/xrdp_wm.c#L720-L730
https://github.com/neutrinolabs/xrdp/blob/76d12c50a8a38b848a45969fc9808a1e5a834e23/xrdp/xrdp_wm.c#L731-L741
In summary, the new variable leverages an existing functionality, eliminating the need to send fake credentials  or pressing the ok button.

I accept that this is based on existing functionality.
The main use-case for this field in my opinion is not logging in to the local machine - it's providing a password for a VNC service running elsewhere on the network. In this instance, PAM can be used to authenticate the user logging in to xrdp.
Even the implementation of this use-case should be updated. It's very much at odds with the recommendations in ISO 27001/2 and (in the UK at least) with NCSC guidelines. From what I can tell, the BSI in Germany is saying very similar things in ORP.4 Identity and Access Management (link to compendium in English here)
Put more simply, we're already providing insufficient protections around this field and I don't want to make the existing bad behaviour any worse than it is. This field should not be world-readable and should be encrypted at rest. If it was I'd be happy to accept changes in this area, but that's obviously easier said than done.
The password can be stored on Windows side, where it is encrypted and machine-specific. Does this not meet your immediate use-case?

I overall agree with @matt335672 regarding this PR.

Storing the password on the Windows side is possible and works for my use case. The autologin was an idea that had been floating around. As for the implementation, I believe further investigation for a better solution is not necessary, perhaps when password storage is revised. Nevertheless, I appreciate your input and all the considerations.


add support for Anthropic, Palm, Cohere, Replicate, TogetherAI, Baseten, etc.

Hi @viveknair @dsafreno
Noticed you're calling OpenAI. I'm working on litellm (simple library to standardize LLM API Calls - https://github.com/BerriAI/litellm) and was wondering if we could be helpful.
I added support for anthropic, palm, cohere, replicate, and huggingface inference endpoints by adding the swap config to also work for the litellm completion and embedding endpoints. The functions map to the openai class - as litellm follows the same pattern as the openai-python sdk.
Would love to know if this helps.
Happy to add additional tests / update documentation, if the initial PR looks good to you.

@krrishdholakia , thanks so much for taking the time to contribute! I've been watching litellm from afar and am excited to see how the project evolves.
Quick thoughts:

Our SDK was originally designed to provide syntactic sugar around the officially supported SDKs of the respective providers. We're nervous about changing our core OpenAI integration to rely on a third party library that's relatively new. Definitely open to changing my mind as I dig deeper into litellm's implementation.

Ideally, we would separate the litellm logic into a separate provider that doesn't interact with our other integrations (in this case OpenAI). That way, if our users start using litellm, they have a way to wrap it cohesively within Gentrace.

For what it's worth, we're thinking of overhauling how our integrations work. Might be better to think about how this fits in at that time. 🤔


Support for building on Mint #397

When Makefile detects that it's building on Mint it will treat it as Ubuntu.
This is safe because Mint is just Ubuntu with config changes and extra packages.
All TEST_SOMETHING's are now set later because TEST_SYSTEMD_DOCKERFILE depends on a correct IMAGE_BASE_DISTRO
Signed-off-by: Nikolas Garofil<EMAIL_ADDRESS>

Build failed due to known instability with K8s-in-Docker test (not related to this PR in any way).
Will merge.


Unused db connection fix

Both get_me (/auth/views.py) and get_current_user() (/auth/service.py) depend on db_session, but auth/me doesn't pass it when calling get_current_user(), hence creating two db_session for handeling one request. Sorry for not bumping dispatch/about.py, this is my first open source commit and I'm unable to locate that file.

Nice catch. Thanks for the improvement!


Migrate non-tx index updates to atomic operations manager

Currently we use two separate methods of updating indexes in tx and non-tx mode. In the non-tx one data and index updates are not grouped into one atomic task, this results in various glitches while mixing tx and non-tx code.
This should be fixed by unifying both methods, so both the tx path and the non-tx path use atomic operations.

Hi,
Completely agree on that, checking the code i've already a kind of idea how to do this, the first thing IMHO we should do is move the index tracking logic outside the hooks, and have it diretly in the execute[Save/Delete]Record or even directly inside the storage, and at that point we can easily wrap everything in an otomic operation.
as well will be good to use the dirty manager for get all the record changed and update all together inside an atomic operation at the moment of the save, in a similar way the transaction does, this will make much safer the graph operations.

@tglman it is already fixed in cheap way. We are on testing stage.

Fixed.


Log handling from OTC RDS

As a user I want to be informed about RDS log events (error log, slow query log). This can be many information in a structured way, but can not handle in the RDS K8s resource itself. Client-go Event Log could be an option.

This is solved by an extra job deployment
(!) This works, but the Job env contains the Cloud Credentials (!) Taking care to work with customer who should don't have access


Hazelbot sends quote message twice during quote voting

pretty much, if a quote is voted for after it has met the vote quota before hazelbot can delete the message to vote for it, the quote sends twice
we talked about this last night

i think the best way to handle this would be to handle reaction events synchronously rather than asynchronously, basically involving putting all the reaction events in a list as we receive them, and then sorting through said list one at a time

fixed in 2.0


Build warning from AsyncQueryTestBase.cs

6>C:\Dev\aspnet\EntityFramework\test\Microsoft.EntityFrameworkCore.FunctionalTests\AsyncQueryTestBase.cs(27,35,27,62): warning CS1998: This async method lacks 'await' operators and will run synchronously. Consider using the 'await' operator to await non-blocking API calls, or 'await Task.Run(...)' to do CPU-bound work on a background thread.
6>  Microsoft.EntityFrameworkCore.FunctionalTests -> C:\Dev\aspnet\EntityFramework\test\Microsoft.EntityFrameworkCore.Functi
cc @natemcmaster

oops. :facepalm:

https://github.com/aspnet/EntityFramework/commit/b27717b4b8d2d3b7a16fc6d220786bf6321ce86f


MRAC Interfile output should depend on patient orientation

Interfile is normally a "gantry-based" coordinate system (although it isn't really well defined in the very old Interfile standard, but that's how STIR interprets it.) ITK uses a patient-based coordinate system. That means that the reorientation should depend on patient orientation, but it currently doesn't.
We currently default to RAI
https://github.com/UCL/pet-rd-tools/blob/605984ae55c8bc0ea7a13765962e26666c189e6c/lib/nmtools/MRAC.hpp#L129-L130
A somewhat related problem is that this choice is inconsistent with STIR's implementation by @ashgillman, which uses RAS for HFS. Indeed, @ashgillman noted in #18 that he has to use RAS for his (presumably HFS) data. @bathomas replied he choose RAI to fit e7tools "Interfile-like" images. This might imply that Siemens uses different coordinate axis (i.e. axially oriented in the other direction) for its Interfile than STIR. I have no idea what e7tools does for different patient orientations.
This is all a bit of a mess of course.
I'm reluctant to duplicate @ashgillman careful STIR code on patient orientation here, especially if the Interfile output isn't suitable for STIR anyway. My current inclination is to "abandon" the MRAC code here, and move/copy relevant bits into STIR. (essentially we need the rescaling and resampling).

Sorry a little late to the party..
I tend to agree that it might be better to wrap that functionality into STIR. Alternatives would include

depending on STIR and using its I/O;
avoiding doing interfile conversion here and saving back out as DICOM then having the user read that in STIR;
reimplementing here


Bug in ff_glu  (Encoder(..., ff_glu=True))

In the current released version of x-transformer (x-transformers-0.29.1), there seems to be a bug when enabling ff_glu (it also happens if enabling ff_swish).
To reproduce:
from x_transformers import Encoder
import torch

base_enc = Encoder(dim=64, depth=6, heads=8, ff_glu=True)
dt = torch.randn(10, 120, 64)
base_out = base_enc(dt)

Output:
Traceback (most recent call last):
  File "/home/erlenda/repos/universal_ts_representation/tsuniv/backbones/config.py", line 66, in <module>
    base_out = base_enc(dt)
  File "/home/erlenda/.conda/envs/tsuniv/lib/python3.10/site-packages/torch/nn/modules/module.py", line 1130, in _call_impl
    return forward_call(*input, **kwargs)
  File "/home/erlenda/.conda/envs/tsuniv/lib/python3.10/site-packages/x_transformers/x_transformers.py", line 952, in forward
    out = block(x)
  File "/home/erlenda/.conda/envs/tsuniv/lib/python3.10/site-packages/torch/nn/modules/module.py", line 1130, in _call_impl
    return forward_call(*input, **kwargs)
  File "/home/erlenda/.conda/envs/tsuniv/lib/python3.10/site-packages/x_transformers/x_transformers.py", line 486, in forward
    return self.net(x)
  File "/home/erlenda/.conda/envs/tsuniv/lib/python3.10/site-packages/torch/nn/modules/module.py", line 1130, in _call_impl
    return forward_call(*input, **kwargs)
  File "/home/erlenda/.conda/envs/tsuniv/lib/python3.10/site-packages/torch/nn/modules/container.py", line 139, in forward
    input = module(input)
  File "/home/erlenda/.conda/envs/tsuniv/lib/python3.10/site-packages/torch/nn/modules/module.py", line 1130, in _call_impl
    return forward_call(*input, **kwargs)
  File "/home/erlenda/.conda/envs/tsuniv/lib/python3.10/site-packages/x_transformers/x_transformers.py", line 440, in forward
    x, gate = self.proj(x).chunk(2, dim = -1)
  File "/home/erlenda/.conda/envs/tsuniv/lib/python3.10/site-packages/torch/nn/modules/module.py", line 1130, in _call_impl
    return forward_call(*input, **kwargs)
  File "/home/erlenda/.conda/envs/tsuniv/lib/python3.10/site-packages/torch/nn/modules/linear.py", line 114, in forward
    return F.linear(input, self.weight, self.bias)
RuntimeError: mat1 and mat2 shapes cannot be multiplied (1200x256 and 64x512)

Thanks, @lucidrains! It seems to be fixed now.


change the font

Change the font style of the website to the 'Roboto'.

I can work on this

Sure @asi309, go for it. Make sure to work on the hackit branch.

Would like to complete this @ishanbagchi

@abhishekgl650 it is already solved. Change the font to open sans.

@abhishekgl650 did you filled up the call for contributors form?


Migrate setup to Reader Monad

Currently, GameSetup is explicitly passed around. Migrating game code to the Reader monad should allow this to be hidden.

as of 5d0b0902dfdee03db9944190ff322f46604d41d8 DiceGame is using the Reader monad for building the game tree.