Retry Rename when it fails, on Windows.

I noticed recently we've been seen intermittent failures in CI on Windows in our integration tests that look like this:
creating provisioning manager: error creating infra provider: error creating provider for type 'bicep' : downloading bicep: rename C:\\Users\\cloudtest\\.azd\\bin\\bicep.exe.tmp4175873399 C:\\Users\\cloudtest\\.azd\\bin\\bicep.exe: Access is denied.

I suspect what is happening here is that in CI when we run our integration tests, we have multiple copies of azd running concurrently (one per integration test) that are all racing to download bicep (since there is no cached copy of the machine). Each process downloads bicep to a temporary file and then attempts to use os.Rename to move the intermediate file into the final location.
In cases where either the source or destination file are in use, this os.Rename can fail. There are two cases:

If the source file is in use (imagine that some transient process like a virus scanner has the file open), os.Rename with fail with ERROR_SHARING_VIOLATION.

If the destination file is in use (imagine that two processes are racing to download bicep, the first process wins and then starts running bicep.exe to compile a template and then the second process finishes its download operation and tries to do the os.Rename it will fail with ERROR_ACCESS_DENIED until the first process stops running bicep.exe.

This change introduces osutil.Rename which is like os.Rename except that on Windows it will retry on both ERROR_ACCESS_DENIED and ERROR_SHARING_VIOLATION for a little bit before giving up. This behavior is specific to Windows.
In practice I suspect that end users were unlikely to run into this issue (and of the two cases, (1) would be more likely, since (2) really manifests itself when multiple copies of azd are running concurrently, and bicep.exe needs to be acquired which seems less likely on end user machines) but this should help us in CI. Worst case, we spend a little longer on Windows in the doomed case trying to do os.Rename a few more times before giving up.

Azure Dev CLI Install Instructions
Install scripts
MacOS/Linux

May elevate using sudo on some platforms and configurations

bash:
curl -fsSL https://azuresdkreleasepreview.blob.core.windows.net/azd/standalone/pr/1791/uninstall-azd.sh | bash;
curl -fsSL https://azuresdkreleasepreview.blob.core.windows.net/azd/standalone/pr/1791/install-azd.sh | bash -s -- --base-url https://azuresdkreleasepreview.blob.core.windows.net/azd/standalone/pr/1791 --version '' --verbose

pwsh:
Invoke-RestMethod 'https://azuresdkreleasepreview.blob.core.windows.net/azd/standalone/pr/1791/uninstall-azd.ps1' -OutFile uninstall-azd.ps1; ./uninstall-azd.ps1
Invoke-RestMethod 'https://azuresdkreleasepreview.blob.core.windows.net/azd/standalone/pr/1791/install-azd.ps1' -OutFile install-azd.ps1; ./install-azd.ps1 -BaseUrl 'https://azuresdkreleasepreview.blob.core.windows.net/azd/standalone/pr/1791' -Version '' -Verbose

Windows
PowerShell install
powershell -c "Set-ExecutionPolicy Bypass Process; irm 'https://azuresdkreleasepreview.blob.core.windows.net/azd/standalone/pr/1791/uninstall-azd.ps1' > uninstall-azd.ps1; ./uninstall-azd.ps1;"
powershell -c "Set-ExecutionPolicy Bypass Process; irm 'https://azuresdkreleasepreview.blob.core.windows.net/azd/standalone/pr/1791/install-azd.ps1' > install-azd.ps1; ./install-azd.ps1 -BaseUrl 'https://azuresdkreleasepreview.blob.core.windows.net/azd/standalone/pr/1791' -Version '' -Verbose;"

MSI install
powershell -c "irm 'https://azuresdkreleasepreview.blob.core.windows.net/azd/standalone/pr/1791/azd-windows-amd64.msi' -OutFile azd-windows-amd64.msi; msiexec /i azd-windows-amd64.msi /qn"

Standalone Binary

Linux -

x86_64 - https://azuresdkreleasepreview.blob.core.windows.net/azd/standalone/pr/1791/azd-linux-amd64.tar.gz
ARM64 - https://azuresdkreleasepreview.blob.core.windows.net/azd/standalone/pr/1791/azd-linux-arm64.tar.gz

MacOS -

x86_64 - https://azuresdkreleasepreview.blob.core.windows.net/azd/standalone/pr/1791/azd-darwin-amd64.zip
ARM64 - https://azuresdkreleasepreview.blob.core.windows.net/azd/standalone/pr/1791/azd-darwin-arm64.zip

Windows - https://azuresdkreleasepreview.blob.core.windows.net/azd/standalone/pr/1791/azd-windows-amd64.zip

MSI

https://azuresdkreleasepreview.blob.core.windows.net/azd/standalone/pr/1791/azd-windows-amd64.msi

Container
docker run -it azdevcliextacr.azurecr.io/azure-dev:pr-1791

Documentation

learn.microsoft.com documentation

title: Azure Developer CLI reference (preview)
description: This article explains the syntax and parameters for the various Azure Developer CLI Preview commands.
author: hhunter-ms
ms.author: hannahhunter
ms.date: 03/24/2023
ms.service: azure-dev-cli
ms.topic: conceptual
ms.custom: devx-track-azdevcli
Azure Developer CLI reference (preview)
This article explains the syntax and parameters for the various Azure Developer CLI Preview commands.
azd
The Azure Developer CLI (azd) is an open-source tool that helps onboard and manage your application on Azure
Options
  -C, --cwd string   Sets the current working directory.
      --debug        Enables debugging and diagnostics logging.
  -h, --help         Gets help for azd.
      --no-prompt    Accepts the default value instead of prompting, or it fails if there is no default.

See also

azd config: Manage azd configurations (ex: default Azure subscription, location).
azd deploy: Deploy the application's code to Azure.
azd down: Delete Azure resources for an application.
azd env: Manage environments.
azd infra: Manage your Azure infrastructure.
azd init: Initialize a new application.
azd login: Log in to Azure.
azd logout: Log out of Azure.
azd monitor: Monitor a deployed application.
azd pipeline: Manage and configure your deployment pipelines.
azd provision: Provision the Azure resources for an application.
azd restore: Restore application dependencies.
azd template: Find and view template details.
azd up: Initialize application, provision Azure resources, and deploy your project with a single command.
azd version: Print the version number of Azure Developer CLI.

azd config
Manage azd configurations (ex: default Azure subscription, location).
Synopsis
Manage the Azure Developer CLI user configuration, which includes your default Azure subscription and location.
Available since azure-dev-cli_0.4.0-beta.1.
The easiest way to configure azd for the first time is to run azd init. The subscription and location you select will be stored in the config.json file located in the config directory. To configure azd anytime afterwards, you'll use azd config set.
The default value of the config directory is:

$HOME/.azd on Linux and macOS
%USERPROFILE%.azd on Windows

The configuration directory can be overridden by specifying a path in the AZD_CONFIG_DIR environment variable.
Options
  -h, --help   Gets help for config.

Options inherited from parent commands
  -C, --cwd string   Sets the current working directory.
      --debug        Enables debugging and diagnostics logging.
      --no-prompt    Accepts the default value instead of prompting, or it fails if there is no default.

See also

azd config get: Gets a configuration
azd config list: Lists all configuration values
azd config reset: Resets configuration to default
azd config set: Sets a configuration
azd config unset: Unsets a configuration
Back to top

azd config get
Gets a configuration
Synopsis
Gets a configuration in the configuration path.
The default value of the config directory is:

$HOME/.azd on Linux and macOS
%USERPROFILE%\.azd on Windows

The configuration directory can be overridden by specifying a path in the AZD_CONFIG_DIR environment variable.
azd config get <path> [flags]

Options
  -h, --help            Gets help for get.
  -o, --output string   The output format (the supported formats are json). (default "json")

Options inherited from parent commands
  -C, --cwd string   Sets the current working directory.
      --debug        Enables debugging and diagnostics logging.
      --no-prompt    Accepts the default value instead of prompting, or it fails if there is no default.

See also

azd config: Manage azd configurations (ex: default Azure subscription, location).
Back to top

azd config list
Lists all configuration values
Synopsis
Lists all configuration values in the configuration path.
The default value of the config directory is:

$HOME/.azd on Linux and macOS
%USERPROFILE%\.azd on Windows

The configuration directory can be overridden by specifying a path in the AZD_CONFIG_DIR environment variable.
azd config list [flags]

Options
  -h, --help            Gets help for list.
  -o, --output string   The output format (the supported formats are json). (default "json")

Options inherited from parent commands
  -C, --cwd string   Sets the current working directory.
      --debug        Enables debugging and diagnostics logging.
      --no-prompt    Accepts the default value instead of prompting, or it fails if there is no default.

See also

azd config: Manage azd configurations (ex: default Azure subscription, location).
Back to top

azd config reset
Resets configuration to default
Synopsis
Resets all configuration in the configuration path.
The default value of the config directory is:

$HOME/.azd on Linux and macOS
%USERPROFILE%\.azd on Windows

The configuration directory can be overridden by specifying a path in the AZD_CONFIG_DIR environment variable to the default.
azd config reset [flags]

Options
  -h, --help   Gets help for reset.

Options inherited from parent commands
  -C, --cwd string   Sets the current working directory.
      --debug        Enables debugging and diagnostics logging.
      --no-prompt    Accepts the default value instead of prompting, or it fails if there is no default.

See also

azd config: Manage azd configurations (ex: default Azure subscription, location).
Back to top

azd config set
Sets a configuration
Synopsis
Sets a configuration in the configuration path.
The default value of the config directory is:

$HOME/.azd on Linux and macOS
%USERPROFILE%\.azd on Windows

The configuration directory can be overridden by specifying a path in the AZD_CONFIG_DIR environment variable.
azd config set <path> <value> [flags]

Examples
azd config set defaults.subscription <yourSubscriptionID>
azd config set defaults.location eastus

Options
  -h, --help   Gets help for set.

Options inherited from parent commands
  -C, --cwd string   Sets the current working directory.
      --debug        Enables debugging and diagnostics logging.
      --no-prompt    Accepts the default value instead of prompting, or it fails if there is no default.

See also

azd config: Manage azd configurations (ex: default Azure subscription, location).
Back to top

azd config unset
Unsets a configuration
Synopsis
Removes a configuration in the configuration path.
The default value of the config directory is:

$HOME/.azd on Linux and macOS
%USERPROFILE%\.azd on Windows

The configuration directory can be overridden by specifying a path in the AZD_CONFIG_DIR environment variable.
azd config unset <path> [flags]

Examples
azd config unset defaults.location

Options
  -h, --help   Gets help for unset.

Options inherited from parent commands
  -C, --cwd string   Sets the current working directory.
      --debug        Enables debugging and diagnostics logging.
      --no-prompt    Accepts the default value instead of prompting, or it fails if there is no default.

See also

azd config: Manage azd configurations (ex: default Azure subscription, location).
Back to top

azd deploy
Deploy the application's code to Azure.
azd deploy [flags]

Options
  -e, --environment string   The name of the environment to use.
  -h, --help                 Gets help for deploy.
  -o, --output string        The output format (the supported formats are json, none). (default "none")
      --service string       Deploys a specific service (when the string is unspecified, all services that are listed in the azure.yaml file are deployed).

Options inherited from parent commands
  -C, --cwd string   Sets the current working directory.
      --debug        Enables debugging and diagnostics logging.
      --no-prompt    Accepts the default value instead of prompting, or it fails if there is no default.

See also

Back to top

azd down
Delete Azure resources for an application.
azd down [flags]

Options
  -e, --environment string   The name of the environment to use.
      --force                Does not require confirmation before it deletes resources.
  -h, --help                 Gets help for down.
  -o, --output string        The output format (the supported formats are json, none). (default "none")
      --purge                Does not require confirmation before it permanently deletes resources that are soft-deleted by default (for example, key vaults).

Options inherited from parent commands
  -C, --cwd string   Sets the current working directory.
      --debug        Enables debugging and diagnostics logging.
      --no-prompt    Accepts the default value instead of prompting, or it fails if there is no default.

See also

Back to top

azd env
Manage environments.
Options
  -h, --help   Gets help for env.

Options inherited from parent commands
  -C, --cwd string   Sets the current working directory.
      --debug        Enables debugging and diagnostics logging.
      --no-prompt    Accepts the default value instead of prompting, or it fails if there is no default.

Back to top

azd env get-values
Get all environment values.
azd env get-values [flags]

Options
  -e, --environment string   The name of the environment to use.
  -h, --help                 Gets help for get-values.
  -o, --output string        The output format (the supported formats are json, dotenv). (default "dotenv")

Options inherited from parent commands
  -C, --cwd string   Sets the current working directory.
      --debug        Enables debugging and diagnostics logging.
      --no-prompt    Accepts the default value instead of prompting, or it fails if there is no default.

See also

azd env: Manage environments.
Back to top

azd env list
List environments.
azd env list [flags]

Options
  -h, --help            Gets help for list.
  -o, --output string   The output format (the supported formats are json, table). (default "table")

Options inherited from parent commands
  -C, --cwd string   Sets the current working directory.
      --debug        Enables debugging and diagnostics logging.
      --no-prompt    Accepts the default value instead of prompting, or it fails if there is no default.

See also

azd env: Manage environments.
Back to top

azd env new
Create a new environment.
azd env new <environment> [flags]

Options
  -h, --help                  Gets help for new.
  -l, --location string       Azure location for the new environment
      --subscription string   Name or ID of an Azure subscription to use for the new environment

Options inherited from parent commands
  -C, --cwd string   Sets the current working directory.
      --debug        Enables debugging and diagnostics logging.
      --no-prompt    Accepts the default value instead of prompting, or it fails if there is no default.

See also

azd env: Manage environments.
Back to top

azd env refresh
Refresh environment settings by using information from a previous infrastructure provision.
azd env refresh [flags]

Options
  -e, --environment string   The name of the environment to use.
  -h, --help                 Gets help for refresh.
  -o, --output string        The output format (the supported formats are json, none). (default "none")

Options inherited from parent commands
  -C, --cwd string   Sets the current working directory.
      --debug        Enables debugging and diagnostics logging.
      --no-prompt    Accepts the default value instead of prompting, or it fails if there is no default.

See also

azd env: Manage environments.
Back to top

azd env select
Set the default environment.
azd env select <environment> [flags]

Options
  -h, --help   Gets help for select.

Options inherited from parent commands
  -C, --cwd string   Sets the current working directory.
      --debug        Enables debugging and diagnostics logging.
      --no-prompt    Accepts the default value instead of prompting, or it fails if there is no default.

See also

azd env: Manage environments.
Back to top

azd env set
Manage your environment settings.
azd env set <key> <value> [flags]

Options
  -e, --environment string   The name of the environment to use.
  -h, --help                 Gets help for set.

Options inherited from parent commands
  -C, --cwd string   Sets the current working directory.
      --debug        Enables debugging and diagnostics logging.
      --no-prompt    Accepts the default value instead of prompting, or it fails if there is no default.

See also

azd env: Manage environments.
Back to top

azd infra
Manage your Azure infrastructure.
Options
  -h, --help   Gets help for infra.

Options inherited from parent commands
  -C, --cwd string   Sets the current working directory.
      --debug        Enables debugging and diagnostics logging.
      --no-prompt    Accepts the default value instead of prompting, or it fails if there is no default.

See also

azd infra create: Provision the Azure resources for an app.
azd infra delete: Delete Azure resources for an app.
Back to top

azd infra create
Provision the Azure resources for an app.
Synopsis
Provision the Azure resources for an app.
The command prompts you for the following values:

Environment name: The name of your environment.
Azure location: The Azure location where your resources will be deployed.
Azure subscription: The Azure subscription where your resources will be deployed.

Depending on what Azure resources are created, running this command might take a while. To view progress, go to the Azure portal and search for the resource group that contains your environment name.
azd infra create [flags]

Options
  -e, --environment string   The name of the environment to use.
  -h, --help                 Gets help for create.
      --no-progress          Suppresses progress information.
  -o, --output string        The output format (the supported formats are json, none). (default "none")

Options inherited from parent commands
  -C, --cwd string   Sets the current working directory.
      --debug        Enables debugging and diagnostics logging.
      --no-prompt    Accepts the default value instead of prompting, or it fails if there is no default.

See also

azd infra: Manage your Azure infrastructure.
Back to top

azd infra delete
Delete Azure resources for an app.
azd infra delete [flags]

Options
  -e, --environment string   The name of the environment to use.
      --force                Does not require confirmation before it deletes resources.
  -h, --help                 Gets help for delete.
  -o, --output string        The output format (the supported formats are json, none). (default "none")
      --purge                Does not require confirmation before it permanently deletes resources that are soft-deleted by default (for example, key vaults).

Options inherited from parent commands
  -C, --cwd string   Sets the current working directory.
      --debug        Enables debugging and diagnostics logging.
      --no-prompt    Accepts the default value instead of prompting, or it fails if there is no default.

See also

azd infra: Manage your Azure infrastructure.
Back to top

azd init
Initialize a new application.
azd init [flags]

Options
  -b, --branch string         The template branch to initialize from.
  -e, --environment string    The name of the environment to use.
  -h, --help                  Gets help for init.
  -l, --location string       Azure location for the new environment
      --subscription string   Name or ID of an Azure subscription to use for the new environment
  -t, --template string       The template to use when you initialize the project. You can use Full URI, <owner>/<repository>, or <repository> if it's part of the azure-samples organization.

Options inherited from parent commands
  -C, --cwd string   Sets the current working directory.
      --debug        Enables debugging and diagnostics logging.
      --no-prompt    Accepts the default value instead of prompting, or it fails if there is no default.

See also

Back to top

azd login
Log in to Azure.
Synopsis
Log in to Azure.
When run without any arguments, log in interactively using a browser. To log in using a device code, pass
--use-device-code.
To log in as a service principal, pass --client-id and --tenant-id as well as one of: --client-secret,
--client-certificate, --federated-credential, or --federated-credential-provider.
azd login [flags]

Options
      --check-status                           Checks the log-in status instead of logging in.
      --client-certificate string              The path to the client certificate for the service principal to authenticate with.
      --client-id string                       The client id for the service principal to authenticate with.
      --client-secret string                   The client secret for the service principal to authenticate with. Set to the empty string to read the value from the console.
      --federated-credential string            The federated token for the service principal to authenticate with. Set to the empty string to read the value from the console.
      --federated-credential-provider string   The provider to use to acquire a federated token to authenticate with.
  -h, --help                                   Gets help for login.
  -o, --output string                          The output format (the supported formats are json, none). (default "none")
      --redirect-port int                      Choose the port to be used as part of the redirect URI during interactive login.
      --tenant-id string                       The tenant id or domain name to authenticate with.
      --use-device-code                        When true, log in by using a device code instead of a browser.

Options inherited from parent commands
  -C, --cwd string   Sets the current working directory.
      --debug        Enables debugging and diagnostics logging.
      --no-prompt    Accepts the default value instead of prompting, or it fails if there is no default.

See also

Back to top

azd logout
Log out of Azure.
Synopsis
Log out of Azure
azd logout [flags]

Options
  -h, --help   Gets help for logout.

Options inherited from parent commands
  -C, --cwd string   Sets the current working directory.
      --debug        Enables debugging and diagnostics logging.
      --no-prompt    Accepts the default value instead of prompting, or it fails if there is no default.

See also

Back to top

azd monitor
Monitor a deployed application.
azd monitor [flags]

Options
  -e, --environment string   The name of the environment to use.
  -h, --help                 Gets help for monitor.
      --live                 Open a browser to Application Insights Live Metrics. Live Metrics is currently not supported for Python apps.
      --logs                 Open a browser to Application Insights Logs.
      --overview             Open a browser to Application Insights Overview Dashboard.

Options inherited from parent commands
  -C, --cwd string   Sets the current working directory.
      --debug        Enables debugging and diagnostics logging.
      --no-prompt    Accepts the default value instead of prompting, or it fails if there is no default.

See also

Back to top

azd pipeline
Manage and configure your deployment pipelines.
Options
  -h, --help   Gets help for pipeline.

Options inherited from parent commands
  -C, --cwd string   Sets the current working directory.
      --debug        Enables debugging and diagnostics logging.
      --no-prompt    Accepts the default value instead of prompting, or it fails if there is no default.

See also

azd pipeline config: Create and configure your deployment pipeline by using GitHub or Azure Pipelines.
Back to top

azd pipeline config
Create and configure your deployment pipeline by using GitHub or Azure Pipelines.
azd pipeline config [flags]

Options
      --auth-type string        The authentication type used between the pipeline provider and Azure for deployment (Only valid for GitHub provider)
  -e, --environment string      The name of the environment to use.
  -h, --help                    Gets help for config.
      --principal-name string   The name of the service principal to use to grant access to Azure resources as part of the pipeline.
      --principal-role string   The role to assign to the service principal. (default "contributor")
      --provider string         The pipeline provider to use (github for Github Actions and azdo for Azure Pipelines).
      --remote-name string      The name of the git remote to configure the pipeline to run on. (default "origin")

Options inherited from parent commands
  -C, --cwd string   Sets the current working directory.
      --debug        Enables debugging and diagnostics logging.
      --no-prompt    Accepts the default value instead of prompting, or it fails if there is no default.

See also

azd pipeline: Manage and configure your deployment pipelines.
Back to top

azd provision
Provision the Azure resources for an application.
azd provision [flags]

Options
  -e, --environment string   The name of the environment to use.
  -h, --help                 Gets help for provision.
      --no-progress          Suppresses progress information.
  -o, --output string        The output format (the supported formats are json, none). (default "none")

Options inherited from parent commands
  -C, --cwd string   Sets the current working directory.
      --debug        Enables debugging and diagnostics logging.
      --no-prompt    Accepts the default value instead of prompting, or it fails if there is no default.

See also

Back to top

azd restore
Restore application dependencies.
azd restore [flags]

Options
  -e, --environment string   The name of the environment to use.
  -h, --help                 Gets help for restore.
      --service string       Restores a specific service (when the string is unspecified, all services that are listed in the azure.yaml file are restored).

Options inherited from parent commands
  -C, --cwd string   Sets the current working directory.
      --debug        Enables debugging and diagnostics logging.
      --no-prompt    Accepts the default value instead of prompting, or it fails if there is no default.

See also

Back to top

azd template
Find and view template details.
Options
  -h, --help   Gets help for template.

Options inherited from parent commands
  -C, --cwd string   Sets the current working directory.
      --debug        Enables debugging and diagnostics logging.
      --no-prompt    Accepts the default value instead of prompting, or it fails if there is no default.

See also

azd template list: Show list of sample azd templates.
azd template show: Show details for a given template.
Back to top

azd template list
Show list of sample azd templates.
azd template list [flags]

Options
  -h, --help            Gets help for list.
  -o, --output string   The output format (the supported formats are json, table). (default "table")

Options inherited from parent commands
  -C, --cwd string   Sets the current working directory.
      --debug        Enables debugging and diagnostics logging.
      --no-prompt    Accepts the default value instead of prompting, or it fails if there is no default.

See also

azd template: Find and view template details.
Back to top

azd template show
Show details for a given template.
azd template show <template> [flags]

Options
  -h, --help            Gets help for show.
  -o, --output string   The output format (the supported formats are json, table). (default "table")

Options inherited from parent commands
  -C, --cwd string   Sets the current working directory.
      --debug        Enables debugging and diagnostics logging.
      --no-prompt    Accepts the default value instead of prompting, or it fails if there is no default.

See also

azd template: Find and view template details.
Back to top

azd up
Initialize application, provision Azure resources, and deploy your project with a single command.
azd up [flags]

Options
  -b, --branch string         The template branch to initialize from.
  -e, --environment string    The name of the environment to use.
  -h, --help                  Gets help for up.
  -l, --location string       Azure location for the new environment
      --no-progress           Suppresses progress information.
  -o, --output string         The output format (the supported formats are json, none). (default "none")
      --service string        Deploys a specific service (when the string is unspecified, all services that are listed in the azure.yaml file are deployed).
      --subscription string   Name or ID of an Azure subscription to use for the new environment
  -t, --template string       The template to use when you initialize the project. You can use Full URI, <owner>/<repository>, or <repository> if it's part of the azure-samples organization.

Options inherited from parent commands
  -C, --cwd string   Sets the current working directory.
      --debug        Enables debugging and diagnostics logging.
      --no-prompt    Accepts the default value instead of prompting, or it fails if there is no default.

See also

Back to top

azd version
Print the version number of Azure Developer CLI.
azd version [flags]

Options
  -h, --help            Gets help for version.
  -o, --output string   The output format (the supported formats are json, none). (default "none")

Options inherited from parent commands
  -C, --cwd string   Sets the current working directory.
      --debug        Enables debugging and diagnostics logging.
      --no-prompt    Accepts the default value instead of prompting, or it fails if there is no default.

See also

Back to top


Django 3: Model class django.contrib.sites.models.Site doesn't declare an explicit app_label and isn't in an application in INSTALLED_APPS

Trying to add path(r"activity/", include("actstream.urls")), to make the feed endpoints available in Django 3 fails with the following error:
Traceback (most recent call last):
  File "./manage.py", line 31, in <module>
    execute_from_command_line(sys.argv)
  File "/.local/share/virtualenvs/application-Y1CezQv3/lib/python3.6/site-packages/django/core/management/__init__.py", line 401, in execute_from_command_line
    utility.execute()
  File "/.local/share/virtualenvs/application-Y1CezQv3/lib/python3.6/site-packages/django/core/management/__init__.py", line 395, in execute
    self.fetch_command(subcommand).run_from_argv(self.argv)
  File "/.local/share/virtualenvs/application-Y1CezQv3/lib/python3.6/site-packages/django/core/management/commands/test.py", line 23, in run_from_argv
    super().run_from_argv(argv)
  File "/.local/share/virtualenvs/application-Y1CezQv3/lib/python3.6/site-packages/django/core/management/base.py", line 330, in run_from_argv
    self.execute(*args, **cmd_options)
  File "/.local/share/virtualenvs/application-Y1CezQv3/lib/python3.6/site-packages/django/core/management/base.py", line 371, in execute
    output = self.handle(*args, **options)
  File "/.local/share/virtualenvs/application-Y1CezQv3/lib/python3.6/site-packages/django/core/management/commands/test.py", line 53, in handle
    failures = test_runner.run_tests(test_labels)
  File "/.local/share/virtualenvs/application-Y1CezQv3/lib/python3.6/site-packages/snapshottest/django.py", line 32, in run_tests
    **kwargs
  File "/.local/share/virtualenvs/application-Y1CezQv3/lib/python3.6/site-packages/django/test/runner.py", line 698, in run_tests
    self.run_checks(databases)
  File "/.local/share/virtualenvs/application-Y1CezQv3/lib/python3.6/site-packages/django/test/runner.py", line 636, in run_checks
    call_command('check', verbosity=self.verbosity, databases=databases)
  File "/.local/share/virtualenvs/application-Y1CezQv3/lib/python3.6/site-packages/django/core/management/__init__.py", line 168, in call_command
    return command.execute(*args, **defaults)
  File "/.local/share/virtualenvs/application-Y1CezQv3/lib/python3.6/site-packages/django/core/management/base.py", line 371, in execute
    output = self.handle(*args, **options)
  File "/.local/share/virtualenvs/application-Y1CezQv3/lib/python3.6/site-packages/django/core/management/commands/check.py", line 69, in handle
    databases=options['databases'],
  File "/.local/share/virtualenvs/application-Y1CezQv3/lib/python3.6/site-packages/django/core/management/base.py", line 396, in check
    databases=databases,
  File "/.local/share/virtualenvs/application-Y1CezQv3/lib/python3.6/site-packages/django/core/checks/registry.py", line 70, in run_checks
    new_errors = check(app_configs=app_configs, databases=databases)
  File "/.local/share/virtualenvs/application-Y1CezQv3/lib/python3.6/site-packages/django/core/checks/urls.py", line 13, in check_url_config
    return check_resolver(resolver)
  File "/.local/share/virtualenvs/application-Y1CezQv3/lib/python3.6/site-packages/django/core/checks/urls.py", line 23, in check_resolver
    return check_method()
  File "/.local/share/virtualenvs/application-Y1CezQv3/lib/python3.6/site-packages/django/urls/resolvers.py", line 408, in check
    for pattern in self.url_patterns:
  File "/.local/share/virtualenvs/application-Y1CezQv3/lib/python3.6/site-packages/django/utils/functional.py", line 48, in __get__
    res = instance.__dict__[self.name] = self.func(instance)
  File "/.local/share/virtualenvs/application-Y1CezQv3/lib/python3.6/site-packages/django/urls/resolvers.py", line 589, in url_patterns
    patterns = getattr(self.urlconf_module, "urlpatterns", self.urlconf_module)
  File "/.local/share/virtualenvs/application-Y1CezQv3/lib/python3.6/site-packages/django/utils/functional.py", line 48, in __get__
    res = instance.__dict__[self.name] = self.func(instance)
  File "/.local/share/virtualenvs/application-Y1CezQv3/lib/python3.6/site-packages/django/urls/resolvers.py", line 582, in urlconf_module
    return import_module(self.urlconf_name)
  File "/.local/share/virtualenvs/application-Y1CezQv3/lib/python3.6/importlib/__init__.py", line 126, in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
  File "<frozen importlib._bootstrap>", line 994, in _gcd_import
  File "<frozen importlib._bootstrap>", line 971, in _find_and_load
  File "<frozen importlib._bootstrap>", line 955, in _find_and_load_unlocked
  File "<frozen importlib._bootstrap>", line 665, in _load_unlocked
  File "<frozen importlib._bootstrap_external>", line 678, in exec_module
  File "<frozen importlib._bootstrap>", line 219, in _call_with_frames_removed
  File "/Documents/application/application/urls.py", line 40, in <module>
    path(r"api/v1/", include("application.api.urls")),
  File "/.local/share/virtualenvs/application-Y1CezQv3/lib/python3.6/site-packages/django/urls/conf.py", line 34, in include
    urlconf_module = import_module(urlconf_module)
  File "/.local/share/virtualenvs/application-Y1CezQv3/lib/python3.6/importlib/__init__.py", line 126, in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
  File "<frozen importlib._bootstrap>", line 994, in _gcd_import
  File "<frozen importlib._bootstrap>", line 971, in _find_and_load
  File "<frozen importlib._bootstrap>", line 955, in _find_and_load_unlocked
  File "<frozen importlib._bootstrap>", line 665, in _load_unlocked
  File "<frozen importlib._bootstrap_external>", line 678, in exec_module
  File "<frozen importlib._bootstrap>", line 219, in _call_with_frames_removed
  File "/Documents/application/application/api/urls.py", line 57, in <module>
    path(r"activity/", include("actstream.urls")),
  File "/.local/share/virtualenvs/application-Y1CezQv3/lib/python3.6/site-packages/django/urls/conf.py", line 34, in include
    urlconf_module = import_module(urlconf_module)
  File "/.local/share/virtualenvs/application-Y1CezQv3/lib/python3.6/importlib/__init__.py", line 126, in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
  File "<frozen importlib._bootstrap>", line 994, in _gcd_import
  File "<frozen importlib._bootstrap>", line 971, in _find_and_load
  File "<frozen importlib._bootstrap>", line 955, in _find_and_load_unlocked
  File "<frozen importlib._bootstrap>", line 665, in _load_unlocked
  File "<frozen importlib._bootstrap_external>", line 678, in exec_module
  File "<frozen importlib._bootstrap>", line 219, in _call_with_frames_removed
  File "/.local/share/virtualenvs/application-Y1CezQv3/lib/python3.6/site-packages/actstream/urls.py", line 3, in <module>
    from actstream import feeds, views
  File "/.local/share/virtualenvs/application-Y1CezQv3/lib/python3.6/site-packages/actstream/feeds.py", line 8, in <module>
    from django.contrib.sites.models import Site
  File "/.local/share/virtualenvs/application-Y1CezQv3/lib/python3.6/site-packages/django/contrib/sites/models.py", line 78, in <module>
    class Site(models.Model):
  File "/.local/share/virtualenvs/application-Y1CezQv3/lib/python3.6/site-packages/django/db/models/base.py", line 116, in __new__
    "INSTALLED_APPS." % (module, name)
RuntimeError: Model class django.contrib.sites.models.Site doesn't declare an explicit app_label and isn't in an application in INSTALLED_APPS.

Did anyone encounter the same issue? Any tips on how to fix this?

Nevermind. The fix was simple: https://stackoverflow.com/questions/35388637/runtimeerror-model-class-django-contrib-sites-models-site-doesnt-declare-an-ex
I just needed to add:
INSTALLED_APPS = [
    ...
    'django.contrib.sites',
]

SITE_ID = 1


Refactor executors for cloudrun deployment

What this PR does / why we need it:
Which issue(s) this PR fixes:
Fixes #
Does this PR introduce a user-facing change?:

NONE

/approve


Color functions not working as expected?

I'm using SASS and bootstrap the new version V5 as CSS Framework in some of my academic project in color part I stuck because the color functions not working as I expected I will explain where is the issue with images in next lines.
first of all take a look to the current result :

as you can see in current result it's an alert component with orange in background and border color but the issue the text it should be white not black but in this example is black I want to change the color to be with dynamicly without using any custom css only editing the bootstrap color functions to be white color instead of black color.
What I expected :

Live Example on codepen
Codepen Example
Stackoverflow issue
Note: I know that I can use some custom css classes to change that but I want to know How to do that in core of bootstrap.

I think the color functions are working as intended here—it's using the color with the highest contrast (either white or black) against the background-color you've specified. Quick check on the colors here show a massive difference in contrast grading between black and white.

can you share this tool

Those are screenshots from a Mac app called Contrast. https://usecontrast.com
Another fun tool is Colorable:

https://colorable.jxnblk.com/000000/fd7e14
https://colorable.jxnblk.com/ffffff/fd7e14


Dementia Prediction Model

Description
added new folder
Issue Resolved
issue no - #208
Changes Made
added new folder

Checklist

[x] My code follows the current project structure
[x] I have thoroughly reviewed and updated the requirements.txt file to include any new packages
[x] The predict.py file includes a properly implemented model_details() function, or the notebook contains this function to print a detailed model report. The model will not be accepted without this function, as it is essential for generating the necessary model details.
[x] I have added relevant tests (if necessary).
[x] I have added comments in the code where needed.
[ ] This PR is submitted under Hacktoberfest.
[x] This PR is submitted under GirlScript Summer of Code (GSSoC-Extd).

@yashasvini121 kindly check my PR is there any conflicts then let me know !

@yashasvini121 pls review pr and mergd it !

@yashasvini121 pls review it and merged PR
as today is last day for this event


[3.0.0-rc.18] ui-grid not removing all rows when asked under certain conditions

Here's a plunker that reproduces the issue:
http://plnkr.co/spDnNxpQqvDhQrhY7VzL
Grid setup:
This a grid with rowEditWaitInterval = -1. multiSelect = true.
I have added an Save, Remove and Refresh button for the grid. For this example, you can ignore the Save button, as the Remove will invoke the removal operation at issue here.
I recently added a "Refresh" button, which prevents you from having to reload the entire page to update the state of the grid (which is tied to a backend service connected to a database).
I implemented this by simply wrapping the $http call that loads the grid in a method ($scope.refresh()), and I call that method on initial page load. But, I also can call it explicitly by pressing the "Refresh" button, since I have bound that method to that UI Button.
Under normal circumstances (initial page load), the deletes work properly, i.e., if you multi select several rows, and press delete...all rows selected are removed from the grid.
Problem:
However, after you press "Refresh" even once, and do the same delete operation, there is always a left over row, despite the fact that the loop I wrote performing the removal IS properly iterating through all rowEntities.
It only goes back to normal if I reload the ENTIRE page by pressing the browser's reload button, which I am trying to avoid.
Expected Result:
Whether or not I ever press the "Refresh" button, the delete of multiple rows should work consistently.
Perhaps I'm not coding things properly in Javascript, or I'm not following some sort of best practice, or maybe there's an API method does this for me (refreshing the grid), but I think this is at least a valid use case (saving the user from having to reload the whole web page).

It's also removing rows that you didn't select.  I think the problem is that you're determining the rowIndex that you'd like to remove, but deferring the actual removal of it.    Think about it this way:

I ask your code to remove rows 2, 3 and 4 from the grid, the grid has 100 rows [0, 1, 2, 3, 4, 5, ...]
You get the index of each of those rows, and ask it to remove rows 2, 3, 4, with each of those removals being deferred
The first promise runs, and we remove item in position 2 from the grid.  The grid now has [0, 1, 3, 4, 5, 6, ...]
The next promise runs, and we remove item in position 3 from the grid.  The item in position 3 is '4', so our grid now has [0, 1, 3, 5, 6, 7 ....]

And so on.
You need to be careful with using indexes on an array that is changing, which isn't a grid thing, it's just a general coding thing.  I'd push the indexOf into the promise itself, so that you go and find the correct item again.  Otherwise it pretty much won't work.
http://plnkr.co/edit/liRYMcAnh2RjddRWPlGB?p=preview

Hello @PaulL1
Thanks for the JavaScript tip...it worked for me. Closing the defect.


When having multiple custom options with overlapping option_type_id v…

Short Description and Why It's Useful
Currently, when using custom options, the html ids of the radio buttons overlap if the id of their value (option_type_id) is the same. This patch makes the html ids unique, making the option usable independent.
Screenshots of Visual Changes before/after (if There Are Any)

Before, changing geheugenkaart also changes Behuizing, now they work independent. (Custom options json https://gist.github.com/carlokok/db1b40eeb7bc04683736a0a02d4b6281)
Which Environment This Relates To

[x] Test version (https://test.storefrontcloud.io) - this is a new feature or improvement for Vue Storefront. I've created branch from develop branch and want to merge it back to develop
[ ] RC version (https://next.storefrontcloud.io) - this is a stabilisation fix for Release Candidate of Vue Storefront. I've created branch from release branch and want to merge it back to release
[ ] Stable version (https://demo.storefrontcloud.io) - this is an important fix for current stable version. I've created branch from hotfix or master branch and want to merge it back to hotfix

Upgrade Notes and Changelog

[x] No upgrade steps required (100% backward compatibility and no breaking changes)
[ ] I've updated the Upgrade notes and Changelog on how to port existing Vue Storefront sites with this new feature

Contribution and Currently Important Rules Acceptance

[x] I read and followed contribution rules

@carlokok thanks for this pr, can you change base to hotfix/v1.11.3?

@gibkigonzo I think I have to re-do the pull request for that. But sure, will do tomorrow.


innovation effects PIM/QIM

I don't think this is the correct approach. Please see my branch here: https://github.com/doxxx/ffxiv-craft-opt-web/tree/issue-361


Fix chained charfield django1.8

In Django >= 1.8 and < 1.10 this code throw a AttributeError:
# views.py

def is_m2m(model_class, field):
    ...
    isinstance(getattr(model_class, field), ReverseManyRelatedObjectsDescriptor)
    ...

Thanks for project!

Coverage increased (+0.5%) to 87.229% when pulling 05785bf921b29f69ebe360b838f12e1bf69c13ee on igr-santos:fix-chained-charfield-django1.8 into db74be0c3c011bfa86fa05cfdc21854e602cdffa on digi604:master.

Coverage increased (+0.6%) to 87.312% when pulling 09750b700324bb8886faaa2d48fa0aa82d944c07 on igr-santos:fix-chained-charfield-django1.8 into db74be0c3c011bfa86fa05cfdc21854e602cdffa on digi604:master.

Coverage increased (+0.6%) to 87.312% when pulling 09750b700324bb8886faaa2d48fa0aa82d944c07 on igr-santos:fix-chained-charfield-django1.8 into db74be0c3c011bfa86fa05cfdc21854e602cdffa on digi604:master.

Coverage increased (+0.6%) to 87.312% when pulling 8e80e7039013e3ff85bdc0aa924a7f59d45859d2 on igr-santos:fix-chained-charfield-django1.8 into db74be0c3c011bfa86fa05cfdc21854e602cdffa on digi604:master.

Thanks!

Released to PyPI as version 1.3.4.


i/o timeout in networks-servers-network-manager.

Rancher Version:
1.2.1-rc2
Docker Version:
1.12.3
OS and where are the hosts located? (cloud, bare metal, etc):
Ubuntu 14.04/ AWS
Setup Details: (single node rancher vs. HA rancher, internal DB vs. external DB)
AWS RDS
Environment Type: (Cattle/Kubernetes/Swarm/Mesos)
Cattle
I brought up a new host, but the networking layer never comes up, it only hever has this in the log for the network-services-network-manager container.
12/15/2016 2:53:35 PMCreating metadata client: Get http://rancher-metadata/2016-07-29/version: dial tcp: lookup rancher-metadata on <IP_ADDRESS>:53: read udp <IP_ADDRESS>:54199-><IP_ADDRESS>:53: i/o timeout
12/15/2016 2:53:38 PMtime="2016-12-15T19:53:38Z" level=info msg="Waiting for metadata"

@jwhitcraft Can you make sure there isn't two rancher-metadata processes running?

Hrmm, i dropped the hosts and re-added the rancher-agent instance to it and it came up fine.
If i happens again i'll make sure to check to see what is running.


Finalisation du POST pour filiere Front-End and Back-End

Working with Q. Hugonnaud in order to finish this task.

Done.


Bad quality

[x] I have read the FAQ.
[x] I have searched in existing issues.

Environment

OS: [e.g. Debian, Windows, macOS...]
scrcpy version: [e.g. 1.12.1]
installation method: [e.g. manual build, apt, snap, brew, Windows release...]
device model:
Android version: [e.g. 10]

Describe the bug
A clear and concise description of what the bug is.
On errors, please provide the output of the console (and adb logcat if relevant).
Please paste terminal output in a code block.

Please do not post screenshots of your terminal, just post the content as text instead.

There is absolutely no information in this bug report.
At least, post a screenschot, and fill the details about the environment.

https://github.com/Genymobile/scrcpy/blob/master/FAQ.md#the-quality-is-low


Fix and rename google.py to googlegenerativeai.py

Solves issue #462

Re issue #463 I'm not sure if the vertex API will be more reliable than google.generativeai, so I think it makes sense to rename this one to googlegenerativeai rather than just google.

The google.generativeai API has changed significantly since last week. There is a new conv.send_message syntax. I have tested that this works.

Close in favor of https://github.com/stanfordnlp/dspy/pull/461.


Send a message based on the title of the marketplace post

import fbchat
from fbchat.models import *
class EchoBot(fbchat.Client):
def onMessage(self, author_id, message_object, thread_id, thread_type, **kwargs):
print("{} from {}".format(message_object, thread_id))
if message_object.text == "POST TITLE":
self.send(Message(text="hello...."), thread_id=thread_id, thread_type=thread_type)
bot = EchoBot(“user”, “pass”)
bot.listen()
So basically this is echobot example. The problem is that when someone texts me in for a marketplace post, I have to give a different answer based on the product
From the listening in the terminal I see this type of chat as a group and asap the chat is opened the thread title gets changed to the name of the product. Now, where is this name stored? How can I parse if it's the text i'm looking for to give a certain answer? Thanks for the help.

You can get the name of the thread using fetchThreadInfo
thr = client.fetchThreadInfo(thread_id)[thread_id]
name = thr.name # get the name of the thread where the message come from
if name == "product" # check if the thread name match the product name
    self.send(Message(text="answer"), thread_id=thread_id, thread_type=thread_type) # Reply when thread name match the product


[BUG] no downloads available

Describe the bug
all games are showing as "no downloads available"
Steps to Reproduce
I just opened the app
Expected behavior
there should be downloads for at least one game
Screenshots

Operating System
win 11
Hydra Version
2.0.3
Additional Information
No response

Hi, I had the same error. You need to delete your version of the launcher, then download the very first version, the launcher will offer to update, and everything will work

That is the expected behaviour, you need to add your Download Sources. You can get tutorials for that on the Community Discord server https://discord.gg/hydralaunchercommunity


Update lib_gzrs2.py

A few elu imports failed due to some Python issues. I believe this bug occurred as a result of the restructuring in the previous commits.

Woops, typo indeed. Thanks for that!


No highlighting for debugger statement

I don't feel like doing a PR for this so to make it easy:
TypeScript.tmLanguage:196
<string>\b(break|catch|continue|debugger|declare|do|else|finally|for|if|return|switch|throw|try|while|with|super)\b</string>

Thanks @bunnycode .  Fixed with https://github.com/Microsoft/TypeScript-Sublime-Plugin/commit/5b5d6d1d016df4fab7daee6b734093d90a0e9b62


Add test for ingress status update

This change is

Coverage decreased (-0.02%) to 43.834% when pulling 00ce4f46f3b7982940177eae6b0b69406ac73c2f on aledbf:fix-status into c5949252ede97a8fb78464c6e801518a51309491 on kubernetes:master.


Pin dependencies

Hi @abap-openapi 👋🏻
I hope you're doing well.
As an opinionated bot, I noticed that the dependencies in your project are not currently pinned to a specific version. This means that the project could be using a different version of a package on each deployment, especially if npm install is used instead of npm ci (what is the difference). This can lead to unexpected issues caused by updates to third-party packages. It can also be encountered when the project is cloned for development and the developer installs the project with npm install if there is a newly compatible version in range defined for each dependency in the package.json file.
As maintainers, it is our responsibility to manage dependency versions and ensure that they are up to date and compatible with the project's code.
What's in the PR ?
I've created a pull request that updates the project's package.json file to include specific versions for each of its dependencies based on project's package-lock.json file. This should not break anything. In case it does, I apologize for it.
You can also set save-exact=true in your .npmrc file 😉
Automate dependency updates
If you're worried about the workload of keeping dependencies up to date, there are tools available to help automate the process like Renovate or Dependabot  which can automatically update dependencies for you based on a set of rules that you define.
You can also use npm-check-updates CLI to update your package.json dependencies to the latest versions.
Why should you pin dependencies ?

https://docs.renovatebot.com/dependency-pinning/
https://the-guild.dev/blog/how-should-you-pin-dependencies-and-why
https://maxleiter.com/blog/pin-dependencies

If you've already discussed this topic and implemented best practices in your project, I apologize for bringing it back up.
Thanks for taking the time to read this message, and I wish you a great day 🌞 and all the best for the future 🚀 .
Stay safe 🙏🏻
An opinionated bot 🤖

where does this come from, I didnt ask for it, it seems like spam?

I assure you that I simply wanted to suggest some modifications to help improve the project in an opinionated way.
As an open-source contributor, I believe in the power of community collaboration and sharing knowledge to create better software.
But if by spam you mean that this pull request was not expected then yes it is and I apologize for it.
Wish you the best 🙏🏻


Question about the example code [ this._first ]

Hi Guys,
Sorry for the random question but I'm not quite sure where else to ask this.
I don't understand the following syntax in the ScrollViewsExample.js example code:
if (this._first) {
          this._first.scrollTo({ y: 0 });
        }

It's in _handleTabItemPress(), there isn't any other declaration or mention of this._first and I don't understand what it's referring to exactly?
Can anyone help me out with this? Again sorry for the simple question.

@satya164 Hi Satya (again), do you mind explaining this if you could?

@AliaMYH : You can wait for the response to come from your API and once you have the response you can just create a routing config then.
componentDidMount() {
   fetchRemote().then(data => {
     if(data && data.routes) {
         this.routes = data.routes;
      }
   )
}

render() {
   if(!this.routes) { // show a spinner or something };
   else // render tabbar
}


Can't generate a production build

I followed the instructions present in the README of this repo, but I still can't generate a production ready build. I get the following warning: It looks like you're using a minified copy of the development build of React. When deploying React apps to production, make sure to use the production build which skips development warnings and is faster. See https://fb.me/react-minification for more details.
Here is my entire webpack.config.js
`
const path = require('path');
const UglifyJSPlugin = require('uglifyjs-webpack-plugin');
const HtmlWebpackPlugin = require('html-webpack-plugin');
const HtmlWebpackPluginConfig = new HtmlWebpackPlugin({
template: './src/index.html',
filename: 'index.html',
inject: 'body'
});
module.exports = {
entry: './src/index.jsx',
output: {
filename: 'bundle.js',
path: path.resolve(__dirname, 'views/panel')
},
plugins: {
uglify: {
mangle: false,
compress: {
global_defs: {
DEBUG: false
}
}
}
},
module: {
loaders: [
{
test: /.jsx?$/,
loader: 'babel-loader',
exclude: /node_modules/,
},
{
test: /.css$/,
loader: "style-loader!css-loader"
}
],
rules: [
{
test: /.jsx?$/,
exclude: /node_modules/,
use: [
{
loader: "babel-loader"
},
{
loader: "eslint-loader",
options: {
fix: true
}
}
]
},
{
test: /.css$/,
use: [ 'style-loader', 'css-loader' ]
},
{
test: /.(png|woff|woff2|eot|ttf|svg)(?v=[0-9].[0-9].[0-9])?$/,
loader: 'url-loader'
}
],
},
devtool: 'inline-source-map',
plugins: [
HtmlWebpackPluginConfig,
new UglifyJSPlugin()
]
};`

Why are you mentioning Webpack in a repo for Brunch?

How am I supposed to run this brunch then??

See http://brunch.io for documentation.
You are including Webpack config, which is an entirely different software and is unrelated to Brunch.

Production build of react app in 3 steps with Brunch:

Create folder for your new app
$ mkdir test-app && cd test-app
Use react skeleton to set up new react project. More detail about skeletons here.
$ brunch new -s react
Do a production build of your app
$ brunch build -p

If you need to customize your build (change folder structure of the project or add some plugins or ...), you can read the docs for further details.
Enjoy using brunch!


GH-392 Allow reselect in component panel item lists

Fixes #392

Applied to main (=2.1) and branch 2.0.


[Meta] Cover step 4 (Docker image tagging and pushing)

The outcome of this work should be a deisrel command that replaces the use of deis-workflow-group as seen in http://docs-v2.readthedocs.io/en/latest/roadmap/release-checklist/#step-4-tag-and-push-docker-images
TODO:

[ ] command for docker tagging checking docker tags https://github.com/deis/deisrel/issues/6
[ ] command for docker pushing https://github.com/deis/deisrel/issues/57
[ ] update https://github.com/deis/workflow/blob/master/src/roadmap/release-checklist.md

This meta ticket is not going to make the rc1 milestone, pushing to v2.0


New version: LinwoodDev.Flow.Nightly version 0.2.1

Pull request has been created with WinGet Releaser v2 :rocket:
Microsoft Reviewers: Open in CodeFlow

@wingetbot waivers Add Validation-Executable-Error


Tainted but idle workers trend to 100% CPU and fail within a few hours

So I created a test cluster with 0 workers and in the main pool, a regular pool of 2 workers, and a spot pool of 3 workers. The 3 spot pool workers were tainted and I scheduled nothing on them. When I came back the next day, all the spot instances had flipped to 'NotReady', two can't be pinged any more and the third I can ping but not ssh to (times out). Checking the monitoring, all three have their CPU pegged at 100%.
NAME                                        STATUS                     AGE
ip-172-31-106-46.region.compute.internal    Ready,SchedulingDisabled   1d
ip-172-31-107-195.region.compute.internal   Ready                      1d
ip-172-31-107-39.region.compute.internal    Ready                      1d
ip-172-31-108-131.region.compute.internal   NotReady                   1d
ip-172-31-108-16.region.compute.internal    NotReady                   1d
ip-172-31-108-68.region.compute.internal    NotReady                   1d

This is similar to the problem if you run the untaint-and-cordon task on the controller (discussed in #199). The task is logged as failed (even if it succeeds) as (rkt rm fails), so the task repeats continuously. Some sort of garbage/clean-up accumulates and the controller eventually hits 100% CPU and grinds itself to death. After patching out the untaint-and-cordon task on my controllers I no longer have this problem (on the controllers).
It seem like any workers might have the same problem if you use the experimental.taints option. This is what I used on my spot instances:
experimental:
  taints:
    - key: lifecycle
      value: spot
      effect: NoSchedule

Here is the CPU history of the now unpingable tainted spot workers:

@whereisaaron Thanks again for your continuous feedbacks.
It definitely seems like an issue and I'd like it to be fixed in the same way as we've agreed in https://github.com/coreos/kube-aws/pull/199#issuecomment-271503071.
Would you mind sending a pull request for it or should I?

What about keeping rkt but ignoring rkt rm errors? I am doing that in https://github.com/coreos/kube-aws/pull/217
This would not trigger tasks restart and therefore no garbage will be accumulated with some "undeletable" garbage left until rkt bug is fixed.
I think ignoring rkt rm errors is fine as it is a cleanup task and main goal of the script already achieved.

@redbaron Thanks for your suggestion. Makes sense.
I'd personally prefer docker run w/ a comment linking to the rkt issue and TODO to migrate to rkt someday because it's a bit cleaner IMHO. However, I'm equally ok with rkt run followed rkt rm with ignoring errors on rkt rm. You can keep your PR as is in that regard 👍

I prepared a PR #231 is switch to using docker to perform the taint task, at least until rkt is fixed. The exact same patch approach as used to fixed the same fault on the controller task in #199.
I tested deploying a node-pool or workers with this patch and the experimental.taint setting enabled and the right thing happened. The taint was applied and the node uncordoned. All looks good in the log and CPU load is nominal.

Partly hijacking the ticket for a rkt question: from the mounts number in the related PR, there seems to be a mount propagation loop that I would not expect from pods not using stage1-fly and performing proper rm. Can anybody please check and separately post if/what are the mounts being propagated and if there is a crash-looping fly pod?

Hi @lucab have a read of #199 for more info. A failure to clean up mounts in rkt rm causes systemd units to loop and thus leak lots of mounts very quickly. That is fixed for now by using docker for the same task until rkt rm is fixed.

@lucab Would you mind sharing us how to look for/investigate into the mounts actually being over-propagated? Example commands would greatly help.

I'm closing this  as v0.9.3-rc.4 including the fix for this issue is released.
However please feel free to reopen if the issue still persists! Thanks.

@mumoshu /proc/1/mountinfo will show which mounts are being propagated and where. I think the root issue here is not caused by taint-and-uncordon, but by one of the fly pod.
@whereisaaron a fix is already shipped in rkt 1.22.0, released last week.


Wrong evaluation of assertion and weird observer effect

Aim
I found following unsound behavior for nargo execute (with an addition interesting observer effect).
When executing the following program I expected  the assert to fail.
However, it passed and I got Circuit witness successfully solved.
When I tried to print the value, all of a sudden the assertion did not hold anymore.
main.nr
use dep::std;

pub fn main(in0 : Field) -> pub Field {
    let mut a : [u8; 32] = in0.to_be_bytes();
    let mut b : [u8; 32] = in0.to_be_bytes();
    let mut r : [u8; 32] = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0];

    for i in 0..32 {
         r[i] = a[i] ^ b[i];
    }
    let out0 = std::field::bytes32_to_field(r);

    a = (- in0).to_be_bytes();
    b = (- in0).to_be_bytes();
    for i in 0..32 {
        r[i] = a[i] & b[i];
    }
    let v = std::field::bytes32_to_field(r);

    // print("v = ");
    // println(v);

    assert(v == out0, "must fail!");
    out0
}

Prover.toml
in0="1"

Expected Behavior

I expected the assertion to fail with or without the print statement.
I expected that the witness solvability can not be altered by print statements.

Bug
Execution without the print:
> nargo execute
[Test] Circuit witness successfully solved
[Test] Circuit output: Field(0)
[Test] Witness saved to target/Test.gz

Execution with the print:
> nargo execute
v = 0x30644e72e131a029b85045b68181585d2833e84879b9709143e1f593f0000000
error: Assertion failed: 'must fail!'
   ┌─ src/main.nr:22:12
   │
22 │     assert(v == out0, "must fail!");
   │            ---------
   │
   = Call stack:
     1. src/main.nr:22:12

Failed assertion

To Reproduce

create a nargo project with the specified sources
nargo execute

Workaround
None
Workaround Description
No response
Additional Context
No response
Project Impact
None
Blocker Context
No response
Nargo Version
nargo version = 0.38.0 noirc version = 0.38.0+35408ab303f1018c1e2c38e6ea55430a2c89dc4c (git version hash: 35408ab303f1018c1e2c38e6ea55430a2c89dc4c, is dirty: false)
NoirJS Version
No response
Proving Backend Tooling & Version
No response
Would you like to submit a PR for this Issue?
None
Support Needs
No response

Thanks for opening this issue @LukiMueller! I've minimised the reproduction case to:
fn main(in0: Field) -> pub Field {
    let mut a: [u8; 1] = in0.to_be_bytes();
    let mut b: [u8; 1] = in0.to_be_bytes();

    let out0 = (a[0] ^ b[0]) as Field;
    // println(f"out0 = {out0}");

    let minus_in0 = 256 - in0;
    a = minus_in0.to_be_bytes();
    b = minus_in0.to_be_bytes();

    let v = (a[0] & b[0]) as Field;
    // println(f"v = {v}");

    assert(v == out0, "must fail!");
    out0
}

This results in the final SSA
acir(inline) fn main f0 {
  b0(v0: Field):
    v3 = call to_be_radix(v0, u32 256) -> [u8; 1]
    enable_side_effects u1 0
    v6 = array_get v3, index u32 0 -> u8
    enable_side_effects u1 1
    v8 = call to_be_radix(v0, u32 256) -> [u8; 1]
    enable_side_effects u1 0
    v9 = array_get v8, index u32 0 -> u8
    enable_side_effects u1 1
    v10 = xor v6, v9
    v11 = cast v10 as Field
    v13 = sub Field 256, v0
    v14 = call to_be_radix(v13, u32 256) -> [u8; 1]
    enable_side_effects u1 0
    v15 = array_get v14, index u32 0 -> u8
    enable_side_effects u1 1
    v16 = call to_be_radix(v13, u32 256) -> [u8; 1]
    enable_side_effects u1 0
    v17 = array_get v16, index u32 0 -> u8
    enable_side_effects u1 1
    v18 = and v15, v17
    constrain v18 == v10 '"must fail!"'
    return v11
}

and finally the ACIR
Compiled ACIR for main (unoptimized):
func 0
current witness index : 7
private parameters indices : [0]
public parameters indices : []
return value indices : [1]
DIR::TORADIX (_x0, [_2..._2] )
BLACKBOX::RANGE [(2)] [ ]
EXPR [ (1, _0) (-1, _2) 0 ]
DIR::TORADIX (_x0, [_3..._3] )
BLACKBOX::RANGE [(3)] [ ]
EXPR [ (1, _0) (-1, _3) 0 ]
BLACKBOX::XOR [(2), (3)] [ _4]
DIR::TORADIX (_%EXPR [ (-1, _0) 256 ]%, [_5..._5] )
BLACKBOX::RANGE [(5)] [ ]
EXPR [ (-1, _0) (-1, _5) 256 ]
DIR::TORADIX (_%EXPR [ (-1, _0) 256 ]%, [_6..._6] )
BLACKBOX::RANGE [(6)] [ ]
EXPR [ (-1, _0) (-1, _6) 256 ]
BLACKBOX::AND [(5), (6)] [ _7]
EXPR [ (-1, _4) (1, _7) 0 ]
EXPR [ (1, _1) (-1, _4) 0 ]

If we uncomment the two print statements the I get the ACIR below (I've removed the print calls for brevity)
Compiled ACIR for main (unoptimized):
func 0
current witness index : 7
private parameters indices : [0]
public parameters indices : []
return value indices : [1]
DIR::TORADIX (_x0, [_2..._2] )
BLACKBOX::RANGE [(2)] [ ]
EXPR [ (1, _0) (-1, _2) 0 ]
DIR::TORADIX (_x0, [_3..._3] )
BLACKBOX::RANGE [(3)] [ ]
EXPR [ (1, _0) (-1, _3) 0 ]
BLACKBOX::XOR [(2), (3)] [ _4]
// print call
DIR::TORADIX (_%EXPR [ (-1, _0) 256 ]%, [_5..._5] )
BLACKBOX::RANGE [(5)] [ ]
EXPR [ (-1, _0) (-1, _5) 256 ]
DIR::TORADIX (_%EXPR [ (-1, _0) 256 ]%, [_6..._6] )
BLACKBOX::RANGE [(6)] [ ]
EXPR [ (-1, _0) (-1, _6) 256 ]
BLACKBOX::AND [(5), (6)] [ _7]
// print call
EXPR [ (-1, _4) (1, _7) 0 ]
EXPR [ (1, _1) (-1, _4) 0 ]

This ACIR looks identical to my eyes but I now get the output
out0 = 0x00
v = 0xff

along with a failing assertion. I think it's then our post-compilation ACIR transformations which are causing the error.


«Using Pseudo-Patterns» documentation improvement

In my opinion, this page could benefit from some rearrangement:
http://patternlab.io/docs/pattern-pseudo-patterns.html
I would start with the example. As it currently is, for a non-programmer such as myself, the initial paragraphs are easier to understand after having seen the «00-homepage~emergency.json» part.

@bjornte Thanks for the suggestion. We'll be revisiting the documentation for the new version of Pattern Lab and will definitely keep this in mind.


Rule & message classes should return Value Tasks in order to optimise execution when they run synchronously

Performance could be improved if the return-type of the interfaces IRule<T>, IRule<T1,T2>, IGetsFailureMessage<T> & IGetsFailureMessage<T1,T2> were all changed to return ValueTask<T> instead of simply Task<T>.  This is because it is expected that in typical use-cases these methods will complete synchronously.  Value Tasks are a more performant type of task for these scenarios.
This can in fact be done without losing .NET Standard 2.0 and .NET Framework support by conditionally depending upon the NuGet package System.Threading.Tasks.Extensions. This allows use of value tasks in runtimes that don't support it naively.

Using ValueTask would remove support for .NET Standard. For now that's too steep a price but it's like to consider it for a future major version.

This is also lower priority than it might seem. I am already receiving the same benefits of value tasks (avoiding allocating extra task instances). In doing this by using the flyweight completed tasks from the common results class.

This will change my multi-targeting requirements though.
For net461 and netstandard2.0 I will need to pull in that NuGet package in order to get Value Tasks.  For versions above those - netstandard2.1 and .NET (and up) I won't need it.  So, I may need to add some extra multi-targeting profiles in order to properly support the intended versions without extra dependencies.  TFMs I'm considering adding to my multi-targeting are:

netcoreapp1.0
netstandard2.1

These two will not require the Tasks.Extensions NuGet package because they already support ValueTask natively.  Between them, they will cover all of the supported frameworks which are overlapped by the existing multi-targeting TFMs, but without needing the NuGet package.


Suggestion

Some window that would show total avaible items by type in just one UI "station" or smthing :) idk how to say it my eng is not best if you dont ill try to give more details

or some more general stats would be good

Like this?

Also it might be a good to show the total of all each items if no item is specified by filter.

I'll also consider how to add a UI to the statistics panel like BetterStats.

That looks good but you only see one at the time you could do separate ui and it would show items instead of stations, also the ui is kinda small the original one

Next version preview

i want to see the raw numbers tho bcs when i play with mods 100% can mean 100,000 or 10,000,000

but looks good :)


Parsing indentation based syntax

This is more of a question than an issue. Is there a plan to specifically support parsers for indentation based syntax, such as https://hackage.haskell.org/package/indents-0.3.0/docs/Text-Parsec-Indent.html?
I'm currently looking into parser options in Elixir, since using regexps doesn't seem to be working so well for me (I'm trying to implement a http://slim-lang.com/ parser), and given that I have some experience with Parsec, I thought about using paco, despite the warning you have in the README :)

@darthdeus sorry for the delay, I didn't expect someone interested at this point of the project :-)
Yep, something to deal with indentation based grammars is the goal of this we, I'll let you know when I have something usable ;-)

@darthdeus here you go https://github.com/gabrielelana/paco/blob/25988caa2b431e7a6a1d39660d6d410709bf9d47/examples/08_slim.exs it's just an examples, not comparable to what would be to parse the real thing but it's a start.
Your feedback would be much appreciated :smile:, but remember that it's still a work in progress :wink:


fix dimension exclusion

use dimension exclusion list specified in the parseSpec

If my search is correct, this would make only the Kafka firehose factories and IngestSegment use the dimension exclusions. If this PR is really to fix dimension exclusions, then please take a look at the other firehose factories that come stock with druid (or stock extensions) and add their handling as needed.

can we add tests, I remember we had similar problems with excluding timestamp / metrics columns in the regular indexing spec that haunted us for some time. See DataSchemaTest

Can we please add a unit test? Also, I think protobuf parser probably doesn't use dimension exclusions either and probably should at some point

adding a unit test was not trivial due to guice injections and dependency on indexing service modules, have added an integration-test for reIngestion to verify the fix and ingestSegmentFirehose.

protobufParser uses mapParser under the hood, so dimensionExclusions are good there


Webcam hangs the program

Whenever I press ALT + F4 or CMD + Q to quit the program, the program will hang and I have to open task manager to force quit it.
However, I can terminate the program via eclipse without any problems (i.e. no hangs).
I am very sure the hang is due to the webcam. I have tried Webcam.setHandleTermSignal(true); but it does not seem to be helping.

The program run and capture images properly but hang on exit and force quit is need on Mac (with Retina display) installed with OS X Yosemite (running inside eclipse).
17:46:30.145 [main] INFO  com.github.sarxos.webcam.Webcam - WebcamDefaultDriver capture driver will be used
17:46:30.151 [webcam-discovery-service] DEBUG c.g.s.w.d.b.WebcamDefaultDriver - Searching devices
17:46:30.476 [webcam-discovery-service] DEBUG c.g.s.w.d.b.WebcamDefaultDriver - Found device FaceTime HD Camera (Built-in) 0x1470000005ac8511
17:46:30.478 [main] DEBUG com.github.sarxos.webcam.Webcam - Setting new resolution 320x240
17:46:30.478 [main] WARN  com.github.sarxos.webcam.Webcam - Automated deallocation on TERM signal is now enabled! Make sure to not use it in production!
17:46:30.478 [main] DEBUG com.github.sarxos.webcam.WebcamLock - Lock Webcam FaceTime HD Camera (Built-in) 0x1470000005ac8511
17:46:30.488 [atomic-processor-1] INFO  c.g.s.webcam.ds.cgt.WebcamOpenTask - Opening webcam FaceTime HD Camera (Built-in) 0x1470000005ac8511
17:46:30.488 [atomic-processor-1] DEBUG c.g.s.w.d.b.WebcamDefaultDevice - Opening webcam device FaceTime HD Camera (Built-in) 0x1470000005ac8511
17:46:30.488 [atomic-processor-1] DEBUG c.g.s.w.d.b.WebcamDefaultDevice - Webcam device 0x1470000005ac8511 starting session, size java.awt.Dimension[width=320,height=240]
17:46:30.532 [atomic-processor-1] DEBUG c.g.s.w.d.b.WebcamDefaultDevice - Webcam device session started
17:46:30.532 [atomic-processor-1] DEBUG c.g.s.w.d.b.WebcamDefaultDevice - Initialize buffer
17:46:33.481 [webcam-discovery-service] DEBUG c.g.s.w.d.b.WebcamDefaultDriver - Searching devices
17:46:34.175 [atomic-processor-1] DEBUG c.g.s.w.d.b.WebcamDefaultDevice - Webcam device com.github.sarxos.webcam.ds.buildin.WebcamDefaultDevice@be4535e is now open
17:46:34.175 [main] DEBUG com.github.sarxos.webcam.Webcam - Webcam is now open FaceTime HD Camera (Built-in) 0x1470000005ac8511
17:46:34.176 [webcam-discovery-service] DEBUG c.g.s.w.d.b.WebcamDefaultDriver - Found device FaceTime HD Camera (Built-in) 0x1470000005ac8511
17:46:34.219 [main] DEBUG c.github.sarxos.webcam.WebcamUpdater - Webcam updater has been started
17:46:34.225 [main] DEBUG com.github.sarxos.webcam.WebcamPanel - Starting panel rendering and trying to open attached webcam
17:46:37.181 [webcam-discovery-service] DEBUG c.g.s.w.d.b.WebcamDefaultDriver - Searching devices
17:46:37.213 [webcam-discovery-service] DEBUG c.g.s.w.d.b.WebcamDefaultDriver - Found device FaceTime HD Camera (Built-in) 0x1470000005ac8511
17:46:40.217 [webcam-discovery-service] DEBUG c.g.s.w.d.b.WebcamDefaultDriver - Searching devices
17:46:40.246 [webcam-discovery-service] DEBUG c.g.s.w.d.b.WebcamDefaultDriver - Found device FaceTime HD Camera (Built-in) 0x1470000005ac8511
17:46:43.247 [webcam-discovery-service] DEBUG c.g.s.w.d.b.WebcamDefaultDriver - Searching devices
17:46:43.253 [webcam-discovery-service] DEBUG c.g.s.w.d.b.WebcamDefaultDriver - Found device FaceTime HD Camera (Built-in) 0x1470000005ac8511
17:46:45.653 [shutdown-hook-1] INFO  c.g.sarxos.webcam.WebcamShutdownHook - Automatic FaceTime HD Camera (Built-in) 0x1470000005ac8511 deallocation
17:46:45.653 [shutdown-hook-1] INFO  com.github.sarxos.webcam.Webcam - Disposing webcam FaceTime HD Camera (Built-in) 0x1470000005ac8511
17:46:45.664 [atomic-processor-1] DEBUG c.g.s.w.d.b.WebcamDefaultDevice - Disposing webcam device FaceTime HD Camera (Built-in) 0x1470000005ac8511
17:46:45.664 [atomic-processor-1] DEBUG c.g.s.w.d.b.WebcamDefaultDevice - Closing webcam device
17:46:46.256 [webcam-discovery-service] DEBUG c.g.s.w.d.b.WebcamDefaultDriver - Searching devices
The above is the message shown on eclipse console and hang after "Searching devices".


Allow passThru for entire modules

This patch allows entire modules (like lodash or react) to be left unmocked. It seemed that previously you could only passThru an individual property on an import (such as util.inspect).
It's implemented in lib/proxyquire-wrapper to avoid it showing at all in the __stubs__ property. The work could be moved into lib/automock if you still want to expose the unmocked version (e.g. for replacement at runtime).
Thanks for a great module!

[Current coverage][cc-pull] is 100%

Merging [#6][cc-pull] into [master][cc-base-branch] will increase coverage by +0.89%

File lib/automock.js (not in diff) was modified. more

@@           master         #6   diff @@
========================================
  Files           3          3
  Lines         113        113
  Methods         0         13    +13
  Branches       18         18
========================================
+ Hits          112        113     +1
  Misses          0          0
+ Partials        1          0     -1

Powered by Codecov. Last updated by [c9153c8...5e58591][cc-compare]
[cc-base-branch]: https://codecov.io/gh/HBOCodeLabs/automock/branch/master?src=pr
[cc-compare]: https://codecov.io/gh/HBOCodeLabs/automock/compare/c9153c8435c7b17fdb0dd74c551fba4bd400439d...5e58591c2003dfa5293ffe4cf26e219fffb18417
[cc-pull]: https://codecov.io/gh/HBOCodeLabs/automock/pull/6?src=pr


error of styles in controls

I have this strange problem, I do not know if it has happened to someone else .. when using Street View the controls of this one, they have some design problems ... (as shown in the image) neither the icons of rotation appear ... I think it's due to my configurations or if ?, Maybe to the version I'm using ?, Any comment is helpful, thanks

Hello, please check out the new version 4.1.1. It's now written in typescript and supports await/async.
To answer you - it seems as a problem not related to this package which is only a loader for the official google maps js api. Stackoverflow would be more helpfull for such errors.


minimist security alert

When I fork this I get a security alert saying the version of minimist used in package-lock.json is too low and needs to be upgraded. Is it possible to upgrade it to >=1.2.3 without breaking anything?

Well minimist is only used in the gulpfile.js (used to preprocess images and else) so there are no security alerts for the theme as a website.
I will update the gulp file once an update comes out.

Well it should be good now 😉

Thanks!


Feature Request: Add filter hook for key value in ArrayaHelper::map

how about adding filter hook to key and value of final array for ArrayHelper::map,
I am having this use case, I am fetching data from Database but when I generate my array using map, I want my keys to be encrypted using some logic.
$array = [
  [
     'id' => '1', 'name' => 'name1 here'
  ],
  [
     'id' => '2', 'name' => 'name2 here'
  ]
]

final array would be like below:
[
 'encrypt of id 1' => 'name1 here',
 'encrypt of id 2' => 'name2 here'
]

better suggestion most welcome!

ArrayHelper::map accepts closures in $from, $to and $group

@quantum13 thank you


gemini command failed and result file is empty with disruptive sct nemesis

Gemini command ran for 3 hours for test cluster with 3 nodes. during gemini command, one of the node always is under pressure of sct nemesises (reboot service, hard reboot instance, major compaction) etc. as a result gemini failed with next error
"errorVerbose":"Cannot achieve consistency level for cl QUORUM. Requires 1, alive 0\\n[cluster = test, query = \'INSERT INTO ks1.table1 (pk0,pk1,pk2,ck0,ck1,col0,col1,col2,col3,col4) VALUES

the main problem is that result file is empty.
here is full full output of gemini:
gemini-l0-75a60f79-e85b-4ab6-9e21-5a08dee181a6.log

Dup of https://github.com/scylladb/gemini/issues/236


Add the Ability to Scan a QR Code from the Photo Gallery

What would you like?
The ability to scan a QR code from the photo gallery.
Why is this needed?
Users can scan QR codes with the device camera; however, users are unable to scan QR codes from the photo gallery. Adding this feature would allow QR's sent through external apps or SMS to be scanned in-app. Additionally, users may only have one device so scanning a QR from another device might not be possible. Adding this feature would extend the QR capabilities already implemented providing extra functionality for minimal development effort.

Thanks @MuckT for accepting suggestion and creating enhancement ticket  :)


Add params overloads

For some operators, it would be very convenient to have overloads that take params arrays as arguments.

Union(this IEnumerable<T> source, T item, params T[] items)
Except(this IEnumerable<T> source, T item, params T[] items)
Concat(this IEnumerable<T> source, T item, params T[] items)
Intersect(this IEnumerable<T> source, T item, params T[] items)

Intersect seems less useful than the others, but it might as well be included for completeness if the other three are.

This should be put on hold as dotnet/roslyn#36 will help to avoid adding all those overloads (and more) if the feature makes it into C# 7 or vNext. Meanwhile, it's merely about convenience for very short and hard-coded sequences.

That's understandable.

@JamesFaix vote!
https://visualstudio.uservoice.com/forums/121579-visual-studio-2015/suggestions/3148411--params-keyword-for-every-list

Thanks Sergey.  Of all the suggestions I saw on there though, I think params enhancements is a pretty trivial matter.  (But, perhaps that will make it more likely to be implemented.)  All my votes are currently on suggestions dealing with static interfaces/generics, integrated code contracts, and non-nullable types.


Style  elements with dominant-baseline

According to the spec, the alignment-baseline property only applies to the <tspan>, <tref>, <altGlyph> and <textPath> elements. For <text> elements there is the dominant-baseline property.
Fixes #3
The current rendering in Firefox:

@hughsk I still this bug on a lot of repositories out there. I hope we can merge it :)


[1.1] Write a library to connect kingfisher to colab

This is done in a minimal way. There's some functions that still need to be added. The workaround until they are added is for people to copy/paste functions as they currently do.

@pindec @mrshll1001 - it'd be good to get you up to speed on how to add functions to the library; @kindly tells me that @pindec has already been fixing bugs :) Do you have time over the next couple of weeks to add functions that you're currently copy/pasting? We can be available to discuss/review code over this sprint.

@robredpath great, thanks, will do. I think most of the functions are covered in the library, but I'm sure there are more handy things to add, and not all the functions are yet implemented.

@kindly and @pindec can check in on this this week


io_uring_get_sqe always return NULL

I'm running code below under Ubuntu Server 22.04.3 with kernel version 5.15.0-94-generic. Here is simple code to reproduce error:
#include <liburing.h>
#include <liburing/io_uring.h>
#include <stdio.h>
#include <string.h>
#include <sys/mman.h>

#define QUEUE_DEPTH 1

int io_uring_setup(unsigned entries, struct io_uring_params *p) {
  return (int)syscall(__NR_io_uring_setup, entries, p);
}

int main() {
  struct io_uring ring;
  int ret;
  struct io_uring_params p;

  memset(&p, 0, sizeof(p));
  // Initialize io_uring
  ret = io_uring_queue_init(QUEUE_DEPTH, &ring, 0);
  if (ret) {
    perror("io_uring_setup");
    return 1;
  }

  struct io_uring_sqe *sqe = io_uring_get_sqe(&ring);
  if (!sqe) {
    fprintf(stderr, "Failed to get SQE\n");
    io_uring_queue_exit(&ring);
    return 1;
  }

  // Setup a no-op operation (does nothing)
  io_uring_prep_nop(sqe);

  // Submit the SQE
  ret = io_uring_submit(&ring);
  if (ret < 0) {
    fprintf(stderr, "Failed to submit SQE: %s\n", strerror(-ret));
    io_uring_queue_exit(&ring);
    return 1;
  }

  // Wait for completion
  struct io_uring_cqe *cqe;
  ret = io_uring_wait_cqe(&ring, &cqe);
  if (ret < 0) {
    fprintf(stderr, "Failed to wait for CQE: %s\n", strerror(-ret));
    io_uring_queue_exit(&ring);
    return 1;
  }

  // Check result
  if (cqe->res < 0) {
    fprintf(stderr, "No-op operation failed: %s\n", strerror(-cqe->res));
    io_uring_cqe_seen(&ring, cqe);
    io_uring_queue_exit(&ring);
    return 1;
  }

  // Mark this CQE as seen
  io_uring_cqe_seen(&ring, cqe);

  printf("SQE operations are supported.\n");

  // Cleanup
  io_uring_queue_exit(&ring);

  return 0;
}

The only reason that could fail is if you have mixed liburing versions installed. Eg the program is compiled with a header that doesn't match the library it's linked with. Maybe you have multiple versions installed, either from source or maybe a distro package is installed alongside one you installed from source?

The only reason that could fail is if you have mixed liburing versions installed. Eg the program is compiled with a header that doesn't match the library it's linked with. Maybe you have multiple versions installed, either from source or maybe a distro package is installed alongside one you installed from source?

I’ll check it today, if it’s so, I’ll close the issue

The only reason that could fail is if you have mixed liburing versions installed. Eg the program is compiled with a header that doesn't match the library it's linked with. Maybe you have multiple versions installed, either from source or maybe a distro package is installed alongside one you installed from source?

I've tried on several machines provided example running under Ubuntu 22.04.3 and all of them got this issue

@xiaguan that's a good point, I've seen it end up there too as well in testing. Honestly not quite sure where that came from, never really investigated it.


Update Content Page: Homepage

Add Diataxis information matrix ("what goes where") to homepage.

Completed with https://github.com/brightway-lca/brightway-documentation/commit/8fcf3a77852b7486407610d923f0458f050c56f0


How to associate data specific to an individual path (vs to a template)

I have multiple pages using the same template:
webpack.config.js
var template = ejs.compile(fs.readFileSync(__dirname + '/template.ejs', 'utf-8'))
var paths = [
  '/page1',
  '/page2'
 'and so on...'
];

new StaticSiteGeneratorPlugin({
      entry: 'index.js',
      paths: paths,
      locals: {
        template: template
      }
    })

index.js
module.exports = function(locals) {
  return Promise.resolve(locals.template({ html: '<h1> this is cool' + locals.path + '</h1>' }));
};

But I wonder is it possible to attache data that is not specific to all the paths but to each page, for example that happens a lot with html title or metas.
I would like to associate different metas and title for each page. For example:

/page1 has
title: title of page1
meta: 'this is a nice meta for page 1'
/page1 has
title: title of page2
meta: 'this is a nice meta for page 2'

Should I , and is it possible, to change the path from an array (as shown in the Set up Guide) into a array of jsons so that I can display data specific to each page like so ?
var template = ejs.compile(fs.readFileSync(__dirname + '/template.ejs', 'utf-8'))
var paths = [
  { path: /page1,
    title: 'title of page 1',
    meta: ' this is a nice meta for page 1'
  },
 { path: /page2,
    title: 'title of page 2',
    meta: ' this is a nice meta for page 2'
  }
 'and so on...'
];

Any resolution? I'd like to do this as well.


python3Packages.asgi-csrf: 0.8 -> 0.9

Motivation for this change
Update to latest upstream release 0.9
Change log: https://github.com/simonw/asgi-csrf/releases/tag/0.9
Things done

[x] Tested using sandboxing (nix.useSandbox on NixOS, or option sandbox in nix.conf on non-NixOS linux)
Built on platform(s)

[x] NixOS
[ ] macOS
[ ] other Linux distributions

[ ] Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
[ ] Tested compilation of all pkgs that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review wip"
[ ] Tested execution of all binary files (usually in ./result/bin/)
21.11 Release Notes (or backporting 21.05 Relase notes)

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module

[x] Fits CONTRIBUTING.md.

Result of nixpkgs-review pr 129952 run on x86_64-linux 1

4 packages built:

datasette (python38Packages.datasette)
python38Packages.asgi-csrf
python39Packages.asgi-csrf
python39Packages.datasette


Handling of path and pathless patch operations

Happened to see some wso2 documentation on patch and decided to try the two operations against the reference code and the pathless variation just fails miserably, skipping the patch itself.  Is this a known issue, when tracing through the code it just ends up doing a return at some point as something was missing it expected to be set.
pathless
{
"op": "add",
"value": {
"nickName": "shaggy"
}
}
pathed
{
"op": "add",
"path": "nickName",
"value": "Tomy"
}

We have failed 3 validator tests due to not handling 'pathless' PATCH ops correctly in the reference code, for example:
{
"op": "replace",
"value": {
"active": true,
"displayName": "5CMEQTDIZTNHA",
"name.givenName": "5Madonna",
...
}
}
the code is in Core2EnterpriseUserExtensions::Apply(this Core2EnterpriseUser user, PatchRequest2 patch)


Add a blink thread to LEDBoard

Fixes #94

I dunno if this is quite the fix that @waveform80 had in mind, but basically I copied all of the blink-related code out of DigitalOutputDevice and copied it into LEDBoard (adapting it where appropriate) and AFAICT it all seems to work okay?

I had an attempt at fixing this in a way that re-used the existing blink method(s) by having the board fire up threads for each blink it ran. But left long enough they do eventually go out of sync (such is life in a non-RTOS). So yeah, this is probably the only reasonable solution.
Unfortunately, now we support PWMLEDs in LEDBoard it does need a little refinement. If PWMLEDs are in use then we should allow fade_in_time and fade_out_time (and if they're non-zero and PWMLEDs aren't in use then throw an exception).

I had an attempt at fixing this in a way that re-used the existing blink method(s) by having the board fire up threads for each blink it ran. But left long enough they do eventually go out of sync (such is life in a non-RTOS).

Isn't having multiple threads also more inefficient than having a single thread? Although granted, blinking a few LEDs isn't going to use up much of the resources on a 700MHz RPi ;)

Unfortunately, now we support PWMLEDs in LEDBoard it does need a little refinement.

Ah okay, I'll try to hack this in later...

Yup - multiple threads is definitely more inefficient than a single thread, but as you also note there's plenty of power on a pi for a thread per LED (thread overhead starts getting nasty at hundreds of threads, which is one of several reasons they're considered bad for solving heavily distributed I/O heavy workloads like the C10k problem). Still it'd be premature optimization to avoid them here for that reason.
Did you get a chance to look at the PWMLED bit? If not, don't worry - I'll merge this anyway and press on with 1.1 tonight :)

Did you get a chance to look at the PWMLED bit?

Nope.

If not, don't worry - I'll merge this anyway and press on with 1.1 tonight :)

Thanks :)