gast: 0.5.0 -> 0.5.1

Motivation for this change
This PR bumps the gast Python package from 0.5.0 to 0.5.1 to pick up a bug fix.
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 131582 at f88cc5a3 run on aarch64-linux 1

2 packages marked as broken and skipped:

python38Packages.tensorflowWithCuda
python39Packages.tensorflowWithCuda

29 packages skipped due to time constraints:

python38Packages.arviz
python38Packages.baselines
python38Packages.dm-sonnet
python38Packages.edward
python38Packages.graph_nets
python38Packages.mask-rcnn
python38Packages.optuna
python38Packages.pymc3
python38Packages.rl-coach
python38Packages.scikit-tda
...

6 packages built successfully:

python38Packages.beniget
python38Packages.gast
python38Packages.pythran
python39Packages.beniget
python39Packages.gast
python39Packages.pythran

1 suggestion:

warning: unused-argument
Unused argument: fetchpatch.
Near pkgs/development/python-modules/gast/default.nix:3:3:
  |
3 | , fetchpatch
  |   ^

@SuperSandro2000 Can you merge this at your earliest convenience?

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

14 packages marked as broken and skipped:

python38Packages.arviz
python38Packages.dm-sonnet
python38Packages.graph_nets
python38Packages.optuna
python38Packages.pymc3
python38Packages.rl-coach
python38Packages.tensorflow-probability
python39Packages.arviz
python39Packages.dm-sonnet
python39Packages.graph_nets
python39Packages.optuna
python39Packages.pymc3
python39Packages.rl-coach
python39Packages.tensorflow-probability

25 packages built:

gpt2tc
python38Packages.baselines
python38Packages.beniget
python38Packages.edward
python38Packages.gast
python38Packages.mask-rcnn
python38Packages.pythran
python38Packages.scikit-tda
python38Packages.tensorflow (python38Packages.tensorflow-build ,python38Packages.tensorflow-build_2 ,python38Packages.tensorflowWithoutCuda ,python38Packages.tensorflow_2)
python38Packages.tensorflow-bin (python38Packages.tensorflow-bin_2)
python38Packages.tensorflowWithCuda
python38Packages.tflearn
python38Packages.umap-learn
python39Packages.baselines
python39Packages.beniget
python39Packages.edward
python39Packages.gast
python39Packages.mask-rcnn
python39Packages.pythran
python39Packages.scikit-tda
python39Packages.tensorflow (python39Packages.tensorflow-build ,python39Packages.tensorflow-build_2 ,python39Packages.tensorflowWithoutCuda ,python39Packages.tensorflow_2)
python39Packages.tensorflowWithCuda
python39Packages.tflearn
python39Packages.umap-learn
tts


Add how to upload large data to an Azure storage in Python

Hi,
I've realized that there is the docs to guide how to upload large data to an Azure storage account here: https://docs.microsoft.com/en-us/azure/storage/blobs/storage-blob-scalable-app-upload-files . but there's only in C#. Would be great if you could add in Python language (and other languages).

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

ID: 15591874-317e-ce4c-0dff-20d06b625e40
Version Independent ID: be7fed9a-343a-0ec7-a94d-02c354d1ae33
Content: Azure Quickstart - Create a blob in object storage with Python
Content Source: articles/storage/blobs/storage-quickstart-blobs-python.md
Service: storage
GitHub Login: @tamram
Microsoft Alias: tamram

@kritcs18 Thanks for your question. We are checking on this and will respond to you soon.

#reassign: @mhopkins-msft

@kritcs18 Thanks for the feedback! I have created a work item to created tutorials in other languages, in addition to C#. It has been added to our work backlog.
Thanks!
~ Mark
#please-close


Deal with integers > 2^53

As you know, JS is fine for integers up to 2^53 but then for bigger numbers, it gets lossy as it's encoded as 64bit floating points. I think CBOR accepts integers up to 64-bit integers, so we need a strategy to handle this case in elm-cardano. Also in general for communication with other services, like for the cip30 module, etc. This is just an issue to not forget about that. It will need fixing anyway so better get to it soon.

On the elm side, we need a type that support unbounded integers. From my research, the most thought-out package for this task is dwayne/elm-natural. The readme present the package and compares it to alternative. It doesn't mention anything about interop though.
I've opened dedicated issues for discussion in the respective packages here https://github.com/dwayne/elm-natural/issues/1 and there https://github.com/elm-toulouse/cbor/issues/4

All integers > 2^53 are currently handled as Natural or its signed equivalent. We still need to encode correctly as 64-bit CBOR numbers those that are < 2^64.

Replaced by #62


Cannot process ISO 14443-4 tag because AID was not set

Hi,
i'm trying the the mifare-classic example and want to authenticate with AID 0x17 and APP_KEY 7 but i don't get exactly how i have to set them.
If i try it without it i get the error in the title.
Would be nice if you could guide me in the right direction
regards
Celevra

the issue could be closed, my fault, its desfire...


add a Dockerfile

Hello,
Firstly, thank you for your hard work on maintaining this project. It has been incredibly helpful for our development needs.
I would like to request the addition of a Dockerfile to this project to streamline the setup and deployment processes. A Dockerfile would enable users to quickly build and run the project in a consistent environment, regardless of the host operating system.
Details:

Purpose: Simplify the setup and deployment process
Environment: Docker
Node.js Version: 20
Package Manager: pnpm
Suggested Features for Dockerfile:

Multi-stage build: To keep the final image lightweight.
Base image: Use Node.js 20 for the build stage and nginx

for the serve stage.

Steps:
 - Install pnpm globally.
 - Copy package.json and pnpm-lock.yaml to the container.
 - Install dependencies.
 - Copy the application code.
 - Build the project.
 - Serve the static files using Nginx.

Example Dockerfile:
# Stage 1: Build
FROM node:20 AS build

# Set working directory
WORKDIR /app

# Install pnpm
RUN npm install -g pnpm

# Copy package.json and pnpm-lock.yaml to the container
COPY package.json pnpm-lock.yaml ./

# Install dependencies
RUN pnpm install

# Copy the rest of the application code to the container
COPY . .

# Build the Astro project
RUN pnpm run build

# Stage 2: Serve
FROM nginx:alpine AS serve

# Copy built static files from the build stage
COPY --from=build /app/dist /usr/share/nginx/html

# Expose port 80
EXPOSE 80

# Start Nginx
CMD ["nginx", "-g", "daemon off;"]

Would it be possible to add a Dockerfile similar to the example provided above or modify it as needed to fit the project's specific requirements?
Thank you for considering this request. Your efforts in enhancing the usability of this project are greatly appreciated.

UPDATE:
I was traying to run  this project in Coolify ,
I added 3 files

/DockerfileDockerfile

FROM node:20-alpine AS base

FROM base AS deps

RUN apk add --no-cache libc6-compat
WORKDIR /app

COPY package.json yarn.lock* package-lock.json* pnpm-lock.yaml* ./
RUN yarn --frozen-lockfile;

FROM base AS builder
WORKDIR /app
COPY --from=deps /app/node_modules ./node_modules
COPY . .

RUN yarn build

FROM nginx:alpine AS runner
COPY ./config/nginx/nginx.conf /etc/nginx/nginx.conf
COPY --from=builder /app/dist /usr/share/nginx/html

WORKDIR /usr/share/nginx/html

EXPOSE 80

2./.dockerignore
node_modules

/config/nginx/nginx.conf

worker_processes  1;

events {
  worker_connections  1024;
}

http {
  server {
    listen 80;
    server_name   _;

    root   /usr/share/nginx/html;
    index  index.html index.htm;
    include /etc/nginx/mime.types;

    gzip on;
    gzip_min_length 1000;
    gzip_proxied expired no-cache no-store private auth;
    gzip_types text/plain text/css application/json application/javascript application/x-javascript text/xml application/xml application/xml+rss text/javascript;

    error_page 404 /404.html;
    location = /404.html {
            root /usr/share/nginx/html;
            internal;
    }

    location / {
            try_files $uri ${uri}.html $uri/index.html =404;
    }
  }
}

I hope that help someone :)

Thank you for your suggestion, I may not add a Dockerfile because deployment on different platforms varies.
This is a standard Astro project, and if you want to deploy it on various platforms, the best practice is to refer to Astro's deployment tutorial. https://docs.astro.build/en/guides/deploy/
If you have special needs, you can add them yourself after forking. Thank you very much for sharing your Dockerfile


add k3s server + agent example composition

Description of your changes
Adds an example composition that creates a new project with a K3s server and agent within it.

Fixes #
I have:

[ ] Read and followed Crossplane's contribution process.
[ ] Run make reviewable test to ensure this PR is ready for review.

How has this code been tested

Curious about the role https://kubernetes.io/docs/concepts/configuration/secret/#ssh-authentication-secrets (SSH Key secrets) could play in this


Use Webpack to build stylesheets

What's this PR do?
Adds the proper configuration for Webpack to compile and build stylesheets.
Why are we doing this? How does it help us?
My original intent was simply to add vendor-prefixing to Flask's CSS-build process. Along the way, I noticed static assets in this app have no cache-busting hashes attached to them. The Cache-Control header for assets is only one day, but that still means browsers might not pick up bug fixes for 24 hours. Given Webpack can handle both vendor prefixing and cache-busting hashes, it feels right to just start using it to build CSS.
Note that no production pages are using this build system yet. They'll start to as I roll out the revamped Vue.js-ified forms. But that PR is already big (and unrelated), so it felt better to get these updates in master. I'll deal with integrating them in production later.
How should this be manually tested?

Make sure you're not already inside the Docker container.
make interactive
yarn run dev
Go to /devdonate and view the page source. Confirm you see one stylesheet and three scripts. Each should have a hash before the file extension. Open in each in a new tab and confirm none 404.
Go to /donate and /circleform and confirm each looks normal.

Have automated tests been added?
No.
Has this been tested on mobile?
NA.
Are there performance implications?
No.
What are the relevant tickets?
No ticket, but related to the larger refactor of the checkout front-end code.
How should this change be communicated to end users?
NA.
Next steps?
Integrate into Vue.js branch and production.
Smells?
The structure of static/ will look much better when all the forms have been refactored. It's in a transitional state right now.
TODOs:
NA.
Has the relevant documentation/wiki been updated?
Again, the app is in a transitional state. I'll do a full documentation update when the refactor is done.
Technical debt note
Same.

LGTM.


Tensor: fix select return type

The result of all select operations on Tensor types was accidentally being cast to integer.
Also adds a unit test covering this bug.

oops, what a weird issue with the code. Not sure what I was thinking.


fix(memory): don't keep a reference of the chain in watch

Reading up on promises and memory leaks, this might be the cause of our leak in the watch phase.
I'm not convinced that this is completely the same or that it will help, but we will see fast.

Let's also use bluebird right now

Will do after the weekend


Update docs for "Handling Sorting" page to indicate that length can change when case mapping.

@rohanp-msft : Thanks for your contribution! The author(s) have been notified to review your proposed change.

Closing PR for internal review.


Hi, Had an issue deploying the Communicator on Azure

Deploying app services, Azure function, bot service, and other supporting resources... (this step can take over an hour)
ERROR: {"status":"Failed","error":{"code":"DeploymentFailed","message":"At least one resource deployment operation failed. Please list deployment operations for details. Please see https://aka.ms/DeployOperations for usage details.","details":[{"code":"BadRequest","message":"{\r\n  "error": {\r\n    "code": "RoleAssignmentUpdateNotPermitted",\r\n    "message": "Tenant ID, application ID, principal ID, and scope are not allowed to be updated."\r\n  }\r\n}"},{"code":"BadRequest","message":"{\r\n  "error": {\r\n    "code": "RoleAssignmentUpdateNotPermitted",\r\n    "message": "Tenant ID, application ID, principal ID, and scope are not allowed to be updated."\r\n  }\r\n}"},{"code":"BadRequest","message":"{\r\n  "error": {\r\n    "code": "RoleAssignmentUpdateNotPermitted",\r\n    "message": "Tenant ID, application ID, principal ID, and scope are not allowed to be updated."\r\n  }\r\n}"},{"code":"BadRequest","message":"{\r\n  "error": {\r\n    "code": "RoleAssignmentUpdateNotPermitted",\r\n    "message": "Tenant ID, application ID, principal ID, and scope are not allowed to be updated."\r\n  }\r\n}"},{"code":"BadRequest","message":"{\r\n  "error": {\r\n    "code": "RoleAssignmentUpdateNotPermitted",\r\n    "message": "Tenant ID, application ID, principal ID, and scope are not allowed to be updated."\r\n  }\r\n}"},{"code":"BadRequest","message":"{\r\n  "error": {\r\n    "code": "RoleAssignmentUpdateNotPermitted",\r\n    "message": "Tenant ID, application ID, principal ID, and scope are not allowed to be updated."\r\n  }\r\n}"},{"code":"BadRequest","message":"{\r\n  "error": {\r\n    "code": "RoleAssignmentUpdateNotPermitted",\r\n    "message": "Tenant ID, application ID, principal ID, and scope are not allowed to be updated."\r\n  }\r\n}"}]}}
Fetching deployment status to check if deployment really failed...
Collecting deployment logs...
Deployment logs generation finished. Please share Deployment\logs.zip file with the app template team to investigate...
Error occurred while deploying Azure resources.
ERROR: ARM template deployment error.
At C:\TEMP\microsoft-teams-apps-company-communicator-main\microsoft-teams-apps-company-communicator-main\Deployment\deploy.ps1:530 char:17

            Throw $deploymentExceptionMessage

            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

CategoryInfo          : OperationStopped: (ERROR: ARM template deployment error.:String) [], RuntimeException
FullyQualifiedErrorId : ERROR: ARM template deployment error.

Hi @lenamasdo ,
Thanks for raising the query. It seems that some of the resources got failed.

Please update the parameters mentioned in the screenshot below with some new valid GUID And re-deploy it.

If function apps or app service got failed. Please go to that resource group-->App service/function app-->deployment center-->sync(if the status is showing failed in the logs section)
If facing issue even after doing the above procedure, please share the deployment logs. Then to keep yourself unblocked, please proceed with the manual deployment.

Yes, thanks it worked. It needed two runs.


Sample Bookinfo vulnerabilities

I am trying to use this bookinfo example to teach the benefits of Istio but my security team has found these vulnerabilities which prevent us from using it. What is the process to mitigate these? The following are just some our team extracted but there are many more in this test application. Any help would be appreciated
DSA-4963-1 - critical
CVE-2020-36327 - high
CVE-2019-18276 - high
CVE-2021-28965 - high
CVE-2020-25613 - high
DSA-4855-1 - high
CVE-2019-9923 - high
CVE-2021-43809 - high
CVE-2021-31799 - high
CVE-2021-3918 - high
CVE-2021-37712 - high
CVE-2021-37713 - high
CVE-2021-37701 - high
CVE-2021-32803 - high
CVE-2021-32804 - high
CVE-2021-27290 - high
CVE-2021-3807 - high
CVE-2021-23343 - high
DLA-2773-1 - high
CVE-2021-40528 - medium
DSA-4807-1- medium
DSA-4875-1 - medium
DSA-4808-1 - medium
CVE-2021-20193 - medium
CVE-2018-1000654 - medium

I assume this is within the BookInfo images? It may be that they just need to be rebuilt pulling in the updates. @jacob-delgado, thoughts on this?

https://github.com/istio/istio/pull/24304 was one such PR to remove vulnerabilities.


Improve the CSS and styling of pricing section and adding additional features.

Is your feature request related to a problem? Please describe.
The pricing section has dull styling after clicking the specific place which deteriorates the user experience.
Describe the solution you'd like
I would like to improve its CSS and make the section more impressive. Additionally, I would like to add different options of flight, train and bus to reach the specific destination.
Are you contributing under any open-source program ?
I am contributing under GSSOC 2024. Kindly assign this issue to me.

I would love to work on this project..Assign me this task for better grid implementation and CSS styles for the issue...I have worked in multiple projects. Check out my LinkedIn Profile: https://www.linkedin.com/in/sudharshanab

assign this task to me

I have completed it kindly check the PR


Followup to #483: Add buffer specific b:neomake_FT_enabled_makers

Followup to https://github.com/neomake/neomake/pull/483.
/cc @davidosomething

It works! 👍


⚡ Spike using css variables in Button

resolves #1494
This PR serves as a spike for using plain css with tokens in css, instead of styled-components with tokens in js.

Moved to eds-lab for further spiking in #1841


Upload async file data

Is your feature request related to a problem? Please describe.
Hi there! I'm trying to upload a block blob using an async source:
async with aiofiles.open(file=path, mode="rb") as data:
    await blob_client.upload_blob(data, metadata=tags, overwrite=True)

This doens't work, the data is supposed to be bytes.
Describe the solution you'd like
I'd like to be able to use an async stream as source for the async Blob Client
Describe alternatives you've considered
My current workaround is to load the whole file into RAM:
async with aiofiles.open(file=path, mode="rb") as data:
    dt = await data.read()
    await blob_client.upload_blob(dt, metadata=tags, overwrite=True)

As long as my files don't get too large, this will work
Additional context
Add any other context or screenshots about the feature request here.

@jalauzon-msft @vincenttran-msft Could you please look into this once you get a chance ? Thanks in advance.

Hi @aersam Adrian, thanks for reaching out. Could you please share which version of the Blob SDK you are using? We recently released support for streams with an async read method in version 12.14.0 which I believe should work with aiofiles. Another thing to check is to make sure you are using an async BlobClient which would be imported from the aio module. Async streams are only supported on the async clients.
from azure.storage.blob.aio import BlobClient

Hi there
I'm using aiofiles 22.1 and azure-storage-blob 12.14.1
I am using the aio variants. who does not ? :)
pyright already complains when doing so:
    async with aiofiles.open(file=fake_path or data.path, mode="rb") as fdata:
        await blob_client.upload_blob(fdata, metadata=data.tags, overwrite=True)

the error at runtime:
  File "c:\Projects\DataHub\BlobTagging\blobtagging\main.py", line 96, in do
    await upload_blob(client, data=data, target_root=target_root, fake_path=fake_path)
  File "c:\Projects\DataHub\BlobTagging\blobtagging\main.py", line 90, in upload_blob
    await blob_client.upload_blob(fdata, metadata=data.tags, overwrite=True)
  File "c:\Projects\DataHub\BlobTagging\.venv\lib\site-packages\azure\core\tracing\decorator_async.py", line 79, in wrapper_use_tracer
    return await func(*args, **kwargs)
  File "c:\Projects\DataHub\BlobTagging\.venv\lib\site-packages\azure\storage\blob\aio\_blob_client_async.py", line 405, in upload_blob
    return await upload_block_blob(**options)
  File "c:\Projects\DataHub\BlobTagging\.venv\lib\site-packages\azure\storage\blob\aio\_upload_helpers.py", line 79, in upload_block_blob
    raise TypeError('Blob data should be of type bytes.')
TypeError: Blob data should be of type bytes.

it's a bit strange: I looked at your helper code and it basically does a check with asyncio.iscoroutinefunction(data.read) which I'd expect to return True, but it returns False. I'm not too deep into this python async stuff; I don't understnd why. My Python version is 3.9
Saw also https://github.com/python/cpython/issues/81371
I could fix it, see my PR

Hi @aersam Adrian, thanks for the PR! Strange that aiofiles async read method does not work with iscoroutinefunction but your proposed change does seem like a reasonable workaround. Let me check with some other folks on my team that are more familiar with this async Python stuff next week to make sure the change will work is all other scenarios.
If they approve, there are one or two other places we'd need to apply this change at the same time that I may ask you to do or just submit a PR myself if I have the time.

Hi again @aersam Adrian, I discussed with the team, and we think your change looks good and should help to increase our compatibility with different stream types. There were a few more places we needed to make this change in addition to your PR, so I went ahead and created #28472 instead of making you track them down. I will close #28410 in favor of this one.


Add alternative version of coming soon template.

Pull Request
Contribution type

[x] New template contribution
[ ] Existing template update
[ ] Issue fix
[ ] README.md update

Contribution Description
Alternative version of coming-soon template which has an image as background, social buttons at the bottom and a mini form to submit email to subscribe to the newsletter.
[x] I would like my template to be added to the Unstoppable Domains' website builder
Unstoppable Domain Name:
trustpug6.crypto

Hi, thank you for your submission. We've decided not to accept it as part of the initial 10 submissions that will receive the bounty. The main reason is because it is only minor updates to current work in the repo and does not expand enough.
Feel free to leave this pull request open if you would like to make updates or have your template added after the bounties are finished.

I am closing this PR due to inactivity


Test page Atom feed

Issue: Add test page atom feed #14 (milestone V2.1)
This atom feed gets & finds only visible pages.

Nicely done.


Need to get the karaf-maven-plugin working to enable central releases

@tjamakeev @Dilshat I have the maven release process setup pretty tight right now however there are a number of issues that I'm having right at the end with the karaf-maven-plugin. It is choking like so:
    [INFO] Subutai Management System .......................... SUCCESS [  0.878 s]
    [INFO] Subutai Server Karaf ............................... FAILURE [  1.873 s]
    [INFO] ------------------------------------------------------------------------
    [INFO] BUILD FAILURE
    [INFO] ------------------------------------------------------------------------
    [INFO] Total time: 05:21 min
    [INFO] Finished at: 2016-03-19T01:41:49+02:00
    [INFO] Final Memory: 309M/3689M
    [INFO] ------------------------------------------------------------------------
    [ERROR] Failed to execute goal org.apache.karaf.tooling:karaf-maven-plugin:3.0.5:features-add-to-repository (features-add-to-repo) on project subutai: Error populating repository: Error loading features for file:///home/akarasulu/.m2/repository//io/subutai/subutai-application/4.0.0-RC7/subutai-application-4.0.0-RC7-features.xml: /home/akarasulu/.m2/repository/io/subutai/subutai-application/4.0.0-RC7/subutai-application-4.0.0-RC7-features.xml (No such file or directory) -> [Help 1]
    [ERROR]

This is happening in my maven-releases branch when I run the following command to start preparing a release:
mvn -DsubutaiReleases release:prepare

Some of this is definitely a separate issue all together however there are several hard coded things in the build that need to be fixed in order for this issue to be resolved. For them please see: https://raw.githubusercontent.com/subutai-io/base/maven-releases/management/hardcoded-fix.md


Add myself to pkg owners to take reviews of hgctl

Ⅰ. Describe what this PR did
cc @johnlanni

Codecov Report

Merging #302 (7ff74f5) into main (4f16d6b) will decrease coverage by 0.35%.
The diff coverage is n/a.

Additional details and impacted files

@@            Coverage Diff             @@
##             main     #302      +/-   ##
==========================================
- Coverage   42.01%   41.67%   -0.35%
==========================================
  Files          44       44
  Lines        5850     5850
==========================================
- Hits         2458     2438      -20
- Misses       3217     3237      +20
  Partials      175      175

see 1 file with indirect coverage changes


opus/vorbis: Remove dead code not used since 3.0

Since the new audio system in 3.0 we switched the OGG support to
stb_vorbis, and the Opus stream support was disabled as incompatible
(see #7496).
We still build the libraries as they are needed by the theora and webm
modules, but we don't need any Godot code apart from register_types.
Fixes #7496.

Cherry-picked for 3.2.2.


Rule updates with metadata and ASB controls #1610

PR Summary

Updates to rule metadata to progress towards #1610.
Convert of additional PowerShell rules to YAML towards #1109.

PR Checklist

[x] PR has a meaningful title
[x] Summarized changes
[x] Change is not breaking
[x] This PR is ready to merge and is not Work in Progress
Rule changes

[x] Unit tests created/ updated
[x] Rule documentation created/ updated
[x] Link to a filed issue
[x] Change log has been updated with change under unreleased section

LGTM - It might be worth documenting the expected categories so it doesn't get out of hand again. Maybe a test to ensure that the category for a role is in the approved list?

The WAF does change from time to time so the categories change which is why some updates are required. However that might make it clearer and easier for contributors if there was a list of categories for each pillar.


adding health check implementation

Coverage remained the same at 100.0% when pulling f9b6192bb376f47ed9cb6c18411f0e6f223d19f5 on health-check-implementation into f4d689b67d59c642a62f7d61dad47c0a009e4498 on master.


Pull Request: Added SwiftLint and SwiftFormat Package Dependencies

Description
This pull request integrates SwiftLint and SwiftFormat as package dependencies into the Package.swift file. The addition of these tools aims to enforce Swift style and conventions and to automatically format Swift code according to a consistent style, thus improving code quality and maintainability.
Issues Resolved From https://github.com/superarts/XStringCatalog/issues/4

[x] Added SwiftLint
[x] Added SwiftFormat

Changes Made

Added SwiftLint package dependency:
SwiftLint is a tool that enforces Swift style and conventions. It helps maintain a clean and consistent codebase and can catch potential errors and code smells. It's been integrated into the build process to ensure that the code follows a set of rules which makes the code more readable and maintainable.

Added SwiftFormat package dependency:
SwiftFormat goes hand in hand with SwiftLint by automatically formatting the Swift code. It ensures that all code conforms to the same style guidelines, regardless of who the author is. This tool is especially useful for teams to maintain a unified code format, reducing the cognitive overhead during code reviews and collaboration.

Checklist

[x] My changes generate no new warnings or errors.
[x] The commit messages are clear and follow best practices.

Additional Comments
N/A

Thanks for closing the PR @Anish0999 - the contents are not 100% aligned with the scope.

Thanks for the feedback. I understand the importance of maintaining the project's scope and will ensure that future contributions are fully aligned. I'm currently working on fixing this PR.


[stable/prometheus-operator] Update README.md

$ helm version
version.BuildInfo{Version:"v3.2.1", GitCommit:"fe51cd1e31e6a202cba7dead9552a6d418ded79a", GitTreeState:"clean", GoVersion:"go1.13.10"}

$ helm install --name my-release stable/prometheus-operator
Error: unknown flag: --name

/hold

🚧 This chart is now deprecated.
Further development has moved to prometheus-community/helm-charts. The chart has been renamed kube-prometheus-stack to more clearly reflect that it installs the kube-prometheus project stack, within which Prometheus Operator is only one component.
If applicable, please re-open this PR there. Thanks!


pypi upload is broken

pypi 1.0.5 works:
https://pypi.python.org/pypi/iampoliciesgonewild/1.0.5
1.0.6 is broken:
https://pypi.python.org/pypi/iampoliciesgonewild/1.0.6
>>> from iampoliciesgonewild import expand_policy
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File ".../.virtualenvs/blah2/lib/python2.7/site-packages/iampoliciesgonewild/__init__.py", line 26, in <module>
    with open(master_permissions_path) as json_data:
IOError: [Errno 2] No such file or directory: .../.virtualenvs/blah2/lib/python2.7/site-packages/iampoliciesgonewild/master_permissions.json'

Also, there's no .whl and the readme is missing.
I'm unable to login to pypi right now so I can't delete 1.0.6.

Should be fixed by #6
<IP_ADDRESS> uploaded to pypi.
(Will resume the 1.0.X numbering scheme for future uploads)


Correct GHA badge in README

Signed-off-by: Gábor Lipták<EMAIL_ADDRESS>I have made things!

Checklist

[x] I have read contributing guidelines
[x] I'm sure that I did not unrelated changes in this pull request
[x] I have created at least one test case for the changes I have made

Related issues

@lk-geimfari please review


Fix serving static files

Closes: https://github.com/metarhia/impress/issues/987

Landed in bb24bab


WIP: Frontend in ClojureScript using reagent and re-frame

I have uploaded a release build to my github pages. Obviously has no backend connected, but I think you can still see a lot.
I will try to keep the build up-to-date: https://gutzufusss.github.io/
TODO

[x] Directory structure (should reside in dashboard/clojure)
[x] Code documentation (there is plenty, but there could always be more and better docs; consider this a forever todo)
[x] Big one: "Hugging Face Gradio"-style UI where you can tweak all of the parameters and send a prompt to the model
[x] Offer proper way to make a release build
[ ] Bundle dashboard into executable of some kind that starts a webserver
[ ] Hatch script (TODO: revisit)
[x] Developer documentation
[x] Add documentation on source maps
[x] Some Clojure "rich comments" as documentation (most interesting for event namespaces and the indexed-db API)
[x] Implement IndexedDB API for ClojureScript
[x] Cache chat history client side (for chat models obv)
[x] Build prompt from cached chat history (for chat models obv)
[x] Uploading prompt as a file
[ ] Modal for extra model parameters
[x] Modal instead of response box
[x] Color scheme
[x] Think of a clever way to extract model ids and config parameters from python source (or maybe don't and extract the constants to json or transmit via REST)
[ ] Use malli instead of clojure.spec.alpha for specs
[x] Implement better app-db (db namespace for every component, tree like, layer 3 subs)
[x] (warning) Correct mount/unmount behaviour, see: https://shadow-cljs.github.io/docs/UsersGuide.html#_lifecycle_hooks
[x] (ugh) Use spec checker interceptor for every event
[x] Make model-selection a child of the side-bar component, directory and app-db wise
[x] Refactor/revamp the num-type?-login in the openllm.components.side-bars.views. The calculation should not be done inside of a views namespace anyways
[ ] Utilize /v1/metadata endpoint to fetch default model config instead of using my  arbitrary one
[x] Extract model-params to separate component; child of side-bar
[ ] Add "History" context-button for playground (or maybe add a save button instead so one can load prompts previously saved)
[ ] Improve IndexedDB get-all by only creating a single transaction and do not rely on a ratom (performance chore i guess)

Feel free to hit me up on discord with any feedback or question, my @ is "gutzufusss".

@GutZuFusss I'm going to push the logos static files to this under dashboard/clojure/static and then you can refactor it to the correct project structure for clojure

quick infra thing: can you move this to contrib/clojure?

pre-commit.ci autofix

pre-commit autofix

pre-commit.ci autofix

@GutZuFusss I'm going to merge this, lets follow up with smaller PR. Great job!


math/big: SetBytes allows arbitrary numbers of leading zeros

package main

import (
	"fmt"
	"math/big"
)

func main() {

	tmp := new(big.Int)

	b := []byte{0x80}
	fmt.Println("%b",b)
	tmp.SetBytes(b)
	fmt.Println("%+d",tmp)

	b00 := []byte{0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80}
	fmt.Println("%b",b00)
	tmp.SetBytes(b00)
	fmt.Println("%+d",tmp)

}

%b [128]
%+d 128
%b [0 0 0 0 0 0 0 0 0 0 0 0 128]
%+d 128

This is working as intended. Keep in mind that SetBytes simply sets x to a valid binary value of a number. The number value is unchanged, no matter how many leading 0's there are.
See also #12231.


CI: Master -> Main

It looks like the master has been renamed to main, but the CI has not been adopted.
The build icon in the README for master shows no builds.

Good catch, @matthiasgeihs . The CI is still running but the badge link was dangling. I opened a PR to fix this.


Adding support for setting breakpoints

Adding support for adding breakpoints. This set of changes adds generic breakpoint interface through AddBreakpoint method and currently only provides implementation for DbgEng. Also with these changes there is only support for adding breakpoint through string interface (e.g. "MyModule!Class::Method"). In future I will combine the interface with codgen to make it more user friendly.
Breakpoints provide interface to set functor that will be execution on the hit that can either say that process should keep running or break execution. Also during functor execution full state of debuggee is available (access to threads, modules, memory etc.).
There is also a set of tests that cover basic scenarios. I also reduced test execution time a bit (all five tests should complete in ~10s total).

        if ($env:APPVEYOR_REPO_BRANCH -eq "master") {

Add this condition also to fix build errors:
-not $env:APPVEYOR_PULL_REQUEST_NUMBER

Refers to: appveyor.yml:57 in b15d214. [](commit_id = b15d21426c525d3b463727713856ed4ee99f0a89, deletion_comment = False)

Codecov Report

Merging #16 into master will increase coverage by 0.25%.
The diff coverage is 88.08%.

@@            Coverage Diff            @@
##           master     #16      +/-   ##
=========================================
+ Coverage   73.95%   74.2%   +0.25%
=========================================
  Files         206     209       +3
  Lines       14473   14643     +170
  Branches     2098    2103       +5
=========================================
+ Hits        10703   10866     +163
- Misses       2942    2944       +2
- Partials      828     833       +5

Impacted Files
Coverage Δ

...pt.Engine/Exceptions/NoSymbolWithGivenNameFound.cs
0% <0%> (ø)

....DwarfSymbolProvider/ElfCoreDumpDebuggingEngine.cs
68.75% <0%> (-1.1%)
:arrow_down:

Source/CsDebugScript.DbgEng/DbgEngDll.cs
84.49% <100%> (+0.64%)
:arrow_up:

Source/CsDebugScript.Engine/Debugger.cs
65.04% <100%> (+0.34%)
:arrow_up:

Source/CsDebugScript.DbgEng/DbgEng/DebugClient.cs
94.11% <100%> (+0.36%)
:arrow_up:

...Script.DbgEng/DbgEngDllHelpers/DbgEngBreakpoint.cs
60.71% <60.71%> (ø)

Source/CsDebugScript.Engine/BreakpointSpec.cs
85.71% <85.71%> (ø)

...t.DbgEng/DbgEngDllHelpers/DebuggeFlowController.cs
97.5% <92.3%> (-2.5%)
:arrow_down:

...ugScript.DbgEng/DbgEngDllHelpers/DebugCallbacks.cs
53.57% <92.3%> (+8.11%)
:arrow_up:

Tests/CsDebugScript.Tests/DebugControlTest.cs
98.2% <98.01%> (+16.95%)
:arrow_up:

... and 9 more

Continue to review full report at Codecov.

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


FLEX

is there any possibility to load flex as dylib into the ios simulator to debug the springboard for example ?

Yes, you should be able to perform runtime inspection via FLEX with simject as long as you compile FLEXing and libflex using the iOS Simulator as a target.


Termination of RabbitMQ ignored by the connection

Reproducing flow:

Start RabbitMQ;
Open connection to RabbitMQ;
Stop RabbitMQ;
No error produced by a connection stream;

RabbitMQ client provides automatic recovery mechanism, but I'm not sure that it will be very useful.
From my perspective, recovery management should be done manually:

factory.setAutomaticRecoveryEnabled(false)
connection.addShutdownListener(shutdownCause => { recovery logic? })

Right now I have no idea how it can be implemented because the shutdown listener is async. If you will suggest a possible solution, I can try to work on it.

Sure. I'll give it a look tomorrow :)


Takeover of @GrantBartlett commit - Part 2

Related to https://github.com/tastyigniter/ti-theme-orange/pull/26
and
https://github.com/tastyigniter/ti-theme-orange/pull/22

Done @sampoyigi

Thank you @BreakSecurity! @GrantBartlett's approach with lg looks cleaner.


Add 2nd gen firestore triggers

While not yet officially available, https://github.com/firebase/firebase-tools/pull/5592 indicates that they soon will be.

Coming soon! Keep the bug reports (and product feedback) coming!

Fixed in https://github.com/firebase/firebase-functions-python/pull/56


Add support for "Full Name" in the Profile page

"full_name" is supported by the Backend, but the ReactJS part doesn't send it, see this pic:

Adding support should be fairly trivial, follow these steps:

Modify the registration form component to include the new "Full Name" field:

https://github.com/OSS-team-zulu/Zulu/blob/4b39d0a6118d43c272ac0fa191b08233b7b8b675/frontend/zulu/src/components/Login/register.component.js#L39-L64

Add validation function vfullname and update the state/div where needed.
Make sure to update the AuthService.createUser to include it too:
https://github.com/OSS-team-zulu/Zulu/blob/4b39d0a6118d43c272ac0fa191b08233b7b8b675/frontend/zulu/src/components/Login/register.component.js#L95-L98

Finally - test that you can register with fullname, and Profile works.

Did it
https://github.com/OSS-team-zulu/Zulu/pull/32/commits/6bf8d7eb3edad849ebb3edd3c89d8405a78b2972


tapOn doesn't work sometimes

Maestro version: 1.17.2
Simulator: iPhone 14 Pro, iPhone 13 Pro (iOS version 16.1)
Description
Hi there, I recently tried to use Maestro for e2e testing in our iOS app. The problem I am seeing is that on a certain screen, Maestro considers the tapOn step to be complete but the button has not actually been tapped. I can resolve this by repeating the clicking step twice but was hoping I someone could some assistance as to why this is happening and provide a fix 😄
Reproducing the issue
Test file
appId: APPID
---
- launchApp:
    appId: "APPID"
    clearState: true
    clearKeychain: true
...

- tapOn: "Security Code, Use a 4-digit security code"

The command to tap on the button is based on what was returned from the maestro studio.
When the test runs, Maestro considers the tap to be successful however the app screen shows that the "Security code, Use a 4-digit security code" button has not been tapped as the screen has not changed.
You can see this in the video below

This seems to be similar to the issue reported here: https://github.com/mobile-dev-inc/maestro/issues/495
cc: @h-zuo

I think that Maestro is not yet able to determine the correct location for elements inside of iOS sheets. I'm having a similar issue for a Safari sheet, and Maestro Studio overlays an incorrect frame for the text fields that I am trying to tap on:

We observe the same behaviour for content that is displayed in a sheet - maestro detects the view components as being offset from the top left of the screen, rather than offset from the top left corner of the sheet.

I opened another ticket related to this one (#560) and in my research found that XCUIElementSnapshot is reporting unexpected values to Maestro. In my own tests I have been working around this issue by tapping on specific coordinates.

@Abhisha1 Did you check in maestro studio that the text you're matching on is correct? If not, please run maestro studio to get insights into how you can interact with your buttons.

@Abhisha1 Did you check in maestro studio that the text you're matching on is correct? If not, please run maestro studio to get insights into how you can interact with your buttons.

OP says:

The command to tap on the button is based on what was returned from the maestro studio.

FWIW I'm seeing similar behavior, but for a React Native app. I'm not sure the root cause is the same, though.

@orbiteleven Hi Damon, it's been a while 👋 For your React Native app, are you seeing the same behaviour in a sheet or in some other UI element? Is it iOS or Android?
@Abhisha1 Are you able to share your app with us or provide a reproduction scenario so the team can take a look? Thanks!

@axelniklasson Hej med dig! I'm wondering if it's not related to https://maestro.mobile.dev/platform-support/react-native#interacting-with-nested-components-on-ios, as we're using RN+NativeBase so it might be a lack of proper "event bubbling". Looking further into it and will report back... not to thread jack but since the symptoms are somewhat similar.

Hey @axelniklasson
I did check on maestro studio and the text was correct.
Unfortunately not able to share the app. Happy to provide any further details if required

@Abhisha1 What if you add - assertVisible: "Security Code, Use a 4-digit security code" before your tap command? Does that help?

Following up here @Abhisha1, it would be great to know whether adding the assertVisible solves it for you!

It happens to me as well. Most of the time it is working fine but a few times, the test report says it taped I watched the recording of the simulator it didn't tap at all.

Hey, thanks y'all for creating this issue - unfortunately, it's not easily reproducible for us. We have a huge backlog, so it's important we can triage issues in an efficient manner.
Please provide a minimal, reproducible example that clearly explains how to reproduce the problem with the detailed, step-by-step instructions (that can be easily run by me or other maintainers). Then we just clone the app (or better: download the binary), install it, run the faulty flow and start debugging right away. thanks in advance!


fix(mvc): Export LogIncomingRequestMiddleware

Closes: #476

:tada: This PR is included in version 4.32.2 :tada:
The release is available on GitHub release
Your semantic-release bot :package::rocket:


[VS Code] [Audio] Calling module not available. libasound.so.2: cannot open shared object file: No such file or directory

Error:
Calling module not available. libasound.so.2: cannot open shared object file: No such file or directory
Steps to Reproduce:
1.
2.

Version Data

extensionName
VSLS-Audio

extensionVersion
0.1.56

applicationName
VSCode

applicationVersion
1.36.0-insider

platformName
Linux

platformVersion
4.9.125-linuxkit

@chiedey Your logs may provide us with helpful information. You can access them via the Live Share: Export Logs command from the command palette (ctrl + shift + p) and attach them to this issue.

@chiedey: thanks for raising this issue!  I'm going to make it as a duplicate of #2172. If you're still hitting this issue with the latest audio extension we can consolidate the investigation on that issue. cheers.


How can a functional component be used as a named slot of another component?

Vue.js version
2.0.1
Reproduction Link
https://jsfiddle.net/x3k60w7c/
Steps to reproduce
Just run the demo
What is Expected?
Default slot fallback
[inner]
What is actually happening?
[inner]
Named slot fallback
inner should replace the <slot name="abc"> part of outer, but instead it replaces the <slot> part. Seems its slot attribute is not working.
It works fine if functional: true, is deleted (line 15). So is functional component not supposed to be a named slot of another component or am I using it wrong?

This should work, indeed a bug.


Start a user guide

This is the first step in the path towards #42.

@vorner we'll probably want to build the user guide and push to GitHub Pages on every commit to master so I've updated travis accordingly (see the second commit). You'll need to create a Personal Access Token and tell travis to include it as the $GITHUB_TOKEN environment variable. Full instructions are here.

Thanks for reviewing this @vorner. Because I'm tweaking CI to build/deploy the user guide I tend to make lots of little commits so you can see the effect of a change, then when we're happy with the CI setup it can all be squashed to clean up history.

Would it be possible to split the build of the mdbook and publishing into a separate job in a phase after the normal tests?

I'll see if we can download the binary from github releases instead of installing it from source. That should improve things.

Cleaning up when it's ready sounds fine, yes.
I'm not really a fan of curl | sh installs, but I guess it's not my machine it's running on, so that's probably fine.
Currently, the CI fails on nightly with rustc panic (index out of bounds). So we'll have to wait for it to get fixed there. However, the changes as I read them look good to me :+1: ‒ I'll merge it once the CI turns green, I'll be checking it from time to time to see if it's fixed.

The CI failure looks like an ICE in nightly rustdoc (rust-lang/rust#65840) and nothing to do with the user guide.
I'm going to squash the CI changes and start actually writing the user guide now. The API docs explain the various pieces (Fragment, Builder, etc.) quite well so the user guide can focus on implementing a hello world TCP service and provide links to the API docs if people want to read more.
My rough plan:

Give a brief overview of the problem spirit is trying to solve (taken mostly from existing blog posts)
Introduce a basic hello world TCP server which we're going to turn into a daemon/service
Wire up the Builder so our TCP server runs, adding the bare minimum in terms of configuration or command-line arguments
Introduce configuration and reloading with SIGHUP (may touch on TCP port reloading, but cleanly changing ports/connections could be hard)
Wire up logging
Add metrics to record how many people use our service
Installing the program as a system service (systemd, spirit-daemonize, etc.)
Describe the role of various helper crates? (spirit-hyper, spirit-reqwest, spirit-tokio, etc.)

It sounds good in general. Just, I'm a bit confused here:

Introduce configuration and reloading with SIGHUP (may touch on TCP port reloading, but cleanly changing ports/connections could be hard)

You should get this from spirit for free, including the changing of ports.
Do you want to develop the guide in this PR, or open multiple and get it in in parts?

You should get this from spirit for free, including the changing of ports.

Yeah, this is more about showing the commands you can use to change configuration and tell the server to reload, and touching on the things spirit is doing for you in the background.
I wasn't sure how the synchronisation of TCP connections would work, but I guess if your code looks
.run(|spirit| {
  while !spirit.is_terminated() {
    let conn = server.accept()?;
    std::thread::spawn(move || handle_connection(conn));
  }
  Ok(())
})

Then the server will start listening on the new port and any threads handling connections on the old port will just run to completion. So the user's code doesn't really need to worry about synchronisation steps like killing old connections or joining all threads, do they?

Do you want to develop the guide in this PR, or open multiple and get it in in parts?

It might be easier to do open individual PRs for each topic, that way it's easier to review and we're not trying to merge the entire thing in one PR. It'd also make it easier for other people to join in and contribute.

When talking about ports, I thought we are talking about the stuff in spirit-tokio. That one handles changing the listening ports automagically in the background ‒ it creates a new listener as needed, shuts down the old if it works, but lets the previous connections to continue.
The code you posted will not adapt to new ports. The is_terminated is about the final termination, not about changing configuration, so there's nothing that could take that server from you and change it under your hands. In case of the std::net::TcpListen, some kind of new sub-crate would need to be written or handled in user code somehow ‒ but I don't expect many „big“ applications that use spirit to use the networking primitives from std.
There's also another downside to the code as you wrote it ‒ if no new connections are coming, it will not terminate, because it'll block on the call to accept. You'd need some way to either close the socket from the terminate callback (which is technically possible, but probably inconvenient) or set some timeout on the accept (which I can't find, currently :-().

I'm reading about the tokens and have a bad feeling about it:

First, create a new GitHub "Personal Access Token" with the "public_repo" permissions

From github, this seems to give quite huge access rights.

Limits access to public repositories. That includes read/write access to code, commit statuses, repository projects, collaborators, and deployment statuses for public repositories and organizations. Also required for starring public repositories.

I wonder how long this https://github.com/rust-lang/rust/issues/65840 will take to resolve (btw, thanks for reporting it, I was being lazy about it). Do you think we should go with some kind of backup plan? Mark nightly as allowed failure + take the docs from stable branch instead? I guess we lose the intra-doc links, though :-(, but we could proceed and switch back to nightly once that is resolved.

Ping? I What's your opinion on using stable for now, until the issue is fixed? It would be great to move forward here.

Thank you. Can you also squash the last few commits that deal with the CI? I'll merge it later today.

Sure thing. I've cleaned up the history and reworded the overview to take your comments into account.
I've also been writing a couple daemons to get more familiar with spirit. I wrote a simple daemon which will periodically print a message to STDOUT, would you say this is a fairly correct way to write a daemon using spirit?

A simple daemon which will print out a message at a specified interval
//! A simple daemon which will print out a message at a specified interval.

use arc_swap::ArcSwap;
use serde::Deserialize;
use spirit::{prelude::*, AnyError, Empty, Spirit};
use std::{
    sync::mpsc::{self, Receiver, RecvTimeoutError},
    time::Duration,
};

#[derive(Debug, Clone, PartialEq, Deserialize)]
struct Config {
    /// The message to print.
    message: String,
    /// The number of seconds between messages.
    interval: f32,
}

impl Config {
    fn interval(&self) -> Duration {
        Duration::from_secs_f32(self.interval)
    }
}

impl Default for Config {
    fn default() -> Config {
        Config {
            message: String::from("Hello, World!"),
            interval: 2.0,
        }
    }
}

const DEFAULT_CONFIG: &str = r#"
message = "Hello, World!"
interval = 2
"#;

#[derive(Debug, Copy, Clone, PartialEq)]
enum ControlFlow {
    Reload,
    Shutdown,
}

fn main() -> Result<(), AnyError> {
    // Here we'll have the current config stored at each time. The spirit
    // library will refresh it with a new version on reload (and the old one
    // will get dropped eventually).
    let config = ArcSwap::from_pointee(Config::default());
    // set up a channel for communicating between spirit and the rest of the
    // application
    let (tx, rx) = mpsc::channel();
    // we need to clone the sender because we're passing it to two callbacks
    let tx2 = tx.clone();

    // start initializing the spirit system
    let _spirit = Spirit::<Empty, Config>::new()
        // Make sure whenever configuration changes, the CONFIG variable is
        // kept in sync
        .with(spirit_cfg_helpers::cfg_store(config.clone()))
        // Set the default config values. This is very similar to passing the
        // first file on command line, except that nobody can lose this one as
        // it is baked into the application. Any files passed by the user can
        // override the values.
        .config_defaults(DEFAULT_CONFIG)
        // Tell the server whenever configuration has changed
        .on_config(move |_, _| tx2.send(ControlFlow::Reload).unwrap())
        // Spirit received a terminate signal, propagate it to the server
        .on_terminate(move || {
            tx.send(ControlFlow::Shutdown).unwrap();
        })
        .build(true)?;

    println!("Starting up");
    print_message_indefinitely(config, rx);
    println!("Shutting down");

    Ok(())
}

fn print_message_indefinitely(config: ArcSwap<Config>, receiver: Receiver<ControlFlow>) {
    loop {
        let interval = config.load().interval();

        match receiver.recv_timeout(interval) {
            Err(RecvTimeoutError::Timeout) => {
                // We slept for `interval` seconds without Spirit telling us
                // to stop or reload the configuration. We can print the message!
                println!("{}", config.load().message);
            }
            Ok(ControlFlow::Reload) => {
                // the configuration has been updated, go back to the start of
                // the loop and reload the interval
                println!("Reloading configuration");
                continue;
            }
            Ok(ControlFlow::Shutdown) => {
                // We've been told to shutdown.
                return;
            }
            Err(RecvTimeoutError::Disconnected) => {
                println!("The other end disconnected");
                return;
            }
        }
    }
}

Thanks again, travis is building it now, let's see what happens…
The code you posted would work and is OK I think as it is. I'd however propose some little tweaks there:

I'd recommend starting the application through run. It's not the case here, but some helpers install hooks that run just before the application body or around it. These are not run if  you only build the spirit and such helpers could break ‒ so I think it would be nicer to show the „run“ way most of the time unless there's some reason to scale down on it. Even in case one might want to do something in between the building (starting of the thread) and running the body, there's a way because the build returns both the spirit and app ‒ which can be run.
Depending on what exactly you want to happen on reload, you might not want to abort the old interval. That would make the code somewhat simpler ‒ you could get rid of the whole Reload variant and one of the hooks.
You could also get rid of the Shutdown variant, because spirit will wipe the hooks on shutdown and signal the termination by disconnecting.
You might want to „lock“ the same version of config to be used by both the interval and message. It makes no practical difference here, but it would ensure consistency of the config.

I'll try to find some time in the meantime to update readme and the crate api docs to point to the generated documentation.

Also, an alternative (this one logs the message, doesn't print, but that should be little difference). There's the problem this doesn't terminate or reload right away, it waits the rest of the interval to react so it's in a sense inferior. But it shows some other goodies too:
use log::info;
use serde::{Deserialize, Serialize};
use spirit::{Pipeline, Spirit};
use spirit::prelude::*;
use spirit::utils::serialize_duration;
use spirit_cfg_helpers::Opts as CfgOpts;
use spirit_log::{Cfg as LogCfg, CfgAndOpts as LogBoth, Opts as LogOpts};
use structdoc::StructDoc;
use structopt::StructOpt;

use std::thread;
use std::time::Duration;

#[derive(Clone, Debug, StructOpt)]
struct Opts {
    #[structopt(flatten)]
    logging: LogOpts,

    #[structopt(flatten)]
    cfg_opts: CfgOpts,
}

impl Opts {
    fn logging(&self) -> LogOpts {
        self.logging.clone()
    }

    fn cfg_opts(&self) -> &CfgOpts {
        &self.cfg_opts
    }
}

#[derive(Clone, Debug, Default, Deserialize, Serialize, StructDoc)]
struct Cfg {
    #[serde(default, skip_serializing_if = "LogCfg::is_empty")]
    logging: LogCfg,

    /// The message that gets repeatedly logged.
    message: String,

    /// An interval between two messages.
    #[serde(deserialize_with = "serde_humantime::deserialize", serialize_with="serialize_duration")]
    interval: Duration,
}

impl Cfg {
    fn logging(&self) -> LogCfg {
        self.logging.clone()
    }
}

fn main() {
    Spirit::<Opts, Cfg>::new()
        .config_supported_exts()
        .with(CfgOpts::extension(Opts::cfg_opts))
        .with(
            Pipeline::new("logging").extract(|opts: &Opts, cfg: &Cfg| LogBoth {
                cfg: cfg.logging(),
                opts: opts.logging(),
            }),
        )
        .run(|spirit| {
            while !spirit.is_terminated() {
                let cfg = spirit.config();
                thread::sleep(cfg.interval);
                info!("{}", cfg.message);
            }
            Ok(())
        });
}


Merge

As far as I can tell no pull request is necessary for the specific task that is tackled here. So I will close this, to keep everything tidy :)


Update README.md

Currently running the command in the README does not launch the bokeh server. This fixes that.
Since adding the settings.yaml user input we need to add this to the call to launch the bokeh server. https://github.com/microscopium/microscopium/pull/137/files?file-filters[]=.md&file-filters[]=.py&file-filters[]=.yaml

Coverage remained the same at 55.784% when pulling 299fcd1eddccbb011dd9e3194425193a173492aa on update-readme into 1621de437f93547d4759d6e84c2794ab76507605 on master.


New issue template

Review and pull request on new issues discovered to help us get better.

Review and pull requests on new issues discovered to help us get better and fix any found bugs. I'm really honored to work with you guys. y'all are highly welcome onboarding.


Flutter Tap and Gesture Issues

I am using youtube player in application. When theres a  dialog box above the youtube player , The taps intended for the dialog box are also reflecting below it which is  a youtube player and its taking me to youtube app.
How to prevent taps from reflecting below the dialog box?
p.s: I have already used Barrier dismissable:false but of no use.

Add a fullscreen background layer, and wrap it in AbsorbPointer widget?

Actually the issue is related to webviews. In flutter webviews are accepting click inputs and ohter gestures even when they are wrapped with ignore pointer and absorb poiter widgets. Gotta find a  way to stop this behaviour of webviews.

Hi @krishnaprasadgandrath-nooor, thank you for filing this issue.
Can you please provide your flutter doctor -v and a minimal complete reproducible code sample?
Thank you

`flutter doctor -v
[✓] Flutter (Channel stable, 2.5.3, on macOS 11.6 20G165 darwin-x64, locale en-IN)
• Flutter version 2.5.3 at /Users/sai/Development/flutter
• Upstream repository https://github.com/flutter/flutter.git
• Framework revision 18116933e7 (5 weeks ago), 2021-10-15 10:46:35 -0700
• Engine revision d3ea636dc5
• Dart version 2.14.4
[!] Android toolchain - develop for Android devices (Android SDK version 31.0.0)
• Android SDK at /Users/sai/Development/android-sdk
✗ cmdline-tools component is missing
Run path/to/sdkmanager --install "cmdline-tools;latest"
See https://developer.android.com/studio/command-line for more details.
✗ Android license status unknown.
Run flutter doctor --android-licenses to accept the SDK licenses.
See https://flutter.dev/docs/get-started/install/macos#android-setup for more details.
[✓] Xcode - develop for iOS and macOS
• Xcode at /Applications/Xcode.app/Contents/Developer
• Xcode 13.0, Build version 13A233
• CocoaPods version 1.11.2
[✓] Chrome - develop for the web
• Chrome at /Applications/Google Chrome.app/Contents/MacOS/Google Chrome
[✓] Android Studio (version 2020.3)
• Android Studio at /Applications/Android Studio.app/Contents
• Flutter plugin can be installed from:
🔨 https://plugins.jetbrains.com/plugin/9212-flutter
• Dart plugin can be installed from:
🔨 https://plugins.jetbrains.com/plugin/6351-dart
• Java version OpenJDK Runtime Environment (build 11.0.10+0-b96-7281165)
[✓] Android Studio (version 2020.3)
• Android Studio at /Applications/Android Studio 2.app/Contents
• Flutter plugin can be installed from:
🔨 https://plugins.jetbrains.com/plugin/9212-flutter
• Dart plugin can be installed from:
🔨 https://plugins.jetbrains.com/plugin/6351-dart
• Java version OpenJDK Runtime Environment (build 11.0.10+0-b96-7281165)
[✓] VS Code (version 1.62.2)
• VS Code at /Users/sai/Development/Visual Studio Code.app/Contents
• Flutter extension version 3.28.0
! Doctor found issues in 1 category.`

Steps to reproduce :
Use a webview and create another component which can be shown above it and then while running on web the webview will override mouse handling events of the other component which is shown above it

Add a fullscreen background layer, and wrap it in AbsorbPointer widget?

I've tried this and other options but yet the webview is overriding the onhover for other widgets and handling its. mouse events.

@krishnaprasadgandrath-nooor the issue is similar to this https://github.com/flutter/flutter/issues/50420, can you confirm if any of these solutions work for you?
https://github.com/flutter/flutter/issues/50420#issuecomment-782049133
https://github.com/flutter/flutter/issues/53490#issuecomment-803545036


Cannot launch Strider using pm2

Hi there
I am having trouble running Strider using pm2. I have successfully installed Strider and am able to launch it using npm start and navigating in my browser; that all works great.
However, I can't seem to be able to launch it using pm2. The process seems to launch ok, and pm2 show strider appears to indicate that all is ok, but I cannot navigate in my browser: I get a refused to connect error. What might I be doing wrong? The only configuration I am doing is for Strider itself, which works with npm so I think that might be red herring. In any case, here is my .striderrc:
{
	"NODE_ENV": "production",
	"SERVER_NAME": "http://ec2-xx-xx-xx-xx.compute-1.amazonaws.com",
	"STRIDER_CLONE_DEST": "/home/ubuntu/strider-builds/",
	"PORT": "3000"
}

I have read all of the pm2 documentation but that hasn't helped. What can I do to get this up and running?
More info: I have just run pm2 logs and am horrified to discover that the process appears to be exiting and restarting every few seconds. Aargh! What does this indicate?
PM2 App [strider] with id [0] and pid [29945], exited with code [0] via signal [SIGINT]
PM2 Starting execution sequence in -fork mode- for app name:strider id:0
PM2 App name:strider id:0 online
PM2 App [strider] with id [0] and pid [29959], exited with code [0] via signal [SIGINT]
PM2 Starting execution sequence in -fork mode- for app name:strider id:0
PM2 App name:strider id:0 online
PM2 App [strider] with id [0] and pid [29969], exited with code [0] via signal [SIGINT]
PM2 Starting execution sequence in -fork mode- for app name:strider id:0
PM2 App name:strider id:0 online

Thanks, Mark

Strider auto restarts on crash, so make sure to setup logs with pm2 to see what the error is.

I have checked strider-error-0.log and strider-out-0.log after starting the process but they are empty. Do I need to explicitly turn on pm2 logging?

You need to also set DEBUG=strider* env

Apologies for being thick, but where do I do that? In the .striderrc?

Yes

I have augmented my .striderrc to look like this:
{
	"NODE_ENV": "production",
	"SERVER_NAME": "http://ec2-xx-x-xx-xx.compute-1.amazonaws.com",
	"STRIDER_CLONE_DEST": "/home/ubuntu/strider-builds/",
	"PORT": "3000",
	"DEBUG": "strider* env"
}

Notice I included your DEBUG parameter. This still does not launch, and I cannot navigate to Strider. What am I missing?
M

Remove the space and 'env'

That has fixed it, thank you very much!

What was the error message? How have you fixed this @mark-norgate ?

Hi there, sorry for the delay in replying. I have been away from this project for a while.
Once I removed the space and 'env', I seem to remember, as suggested by @knownasilya , the application just started to work. I'm afraid I can't remember the error messages. I will try to give better feedback in future! Thank you guys for your help.


FYPO:0006736

I spotted this term:
stationary phase viability unaffected by tschimganine
which
is_a           cell population phenotype
is_a           abnormal phenotype
how is it abnormal?
why isn't this "normal viability in stationary phase during response to tschimganine ?
a la
normal viability in stationary phase

normal viability in stationary phase during glucose starvation
normal viability in stationary phase during nitrogen limitation

This is an abnormal phenotype because the stationary phase viability in tschimganine of the mutant differs from that of wild type. This is noted in the text definition, and consistent with how "normal" is defined throughout FYPO.


Remove the PostProcessingSprite handler from the shared ticker

Thank you for this great library. I am using it in the context of a Single Page Application (SPA), in which I need to create and destroy several PIXI apps within the lifecycle of the SPA. I noticed that the handler added by a PostProcessingSprite instance on this line is an anonymous function, which makes it pretty much impossible to remove from the PIXI shared ticker. This causes an error when destroying PIXI apps with PostProcessingSprite instances and creating other PIXI apps within the SPA.
When I encountered the error the first time I initially expected that by destroying the PostProcessingSprite instance the handler would be removed. Perhaps this could be a good solution without introducing breaking changes? That is, having the anonymous function to be a named function, which on destroying the sprite could now be removed from the shared ticker. Or perhaps there is another solution?
Thanks in advance!

Hi and thank you for feedback, I'll create a fix for this!

Might have found a fix for this. If you want to help out, you can get latest version from develop branch.
npm install
npm run build

You will find pixi3d.js in dist folder. Please let me know if this fixes your issues.

That was quick! I just tested the develop branch directly on my app and it works: destroying the sprite removes the handler and I no longer see the error. Thank you!

Fixed in v1.1.1


Submit a Cloud Definition

Do NOT copy/paste a definition from somewhere else. Read about the word you want to define and come up with your own definition. Copy/Paste submissions will be closed and not added.
Fill out the JSON with your submission:
    {
    "word": "transpilation",
    "content": "The process of converting a Bicep template into a JSON template.",
    "learn_more_URL":"https://learn.microsoft.com/en-us/training/modules/introduction-to-infrastructure-as-code-using-bicep/5-how-bicep-works",
    "tag":"devops",
    "abbreviation": "",
    "author_name":"Phil Boyce",
    "author_link": "https://github.com/logphile"
    }

Fill out the JSON below with the following.
Word (REQUIRED)
The word you are defining. Check this URL for all words we currently have.
Content (REQUIRED)
The definition. No more than 3 sentences.
learn more URL (REQUIRED)
Website where people can visit to learn more about the word.
tag (REQUIRED and select one)
Tech category the word fits in. Options:

compute
security
service
general
analytics
developer tool
web
networking
database
storage
devops
ai/ml
identity
iot
monitoring
cost management
disaster recovery

abbreviation (OPTIONAL)
If the word is commonly abbreviated, please provide it. For example, command line interface is often abbreviated as CLI.
author name (REQUIRED)
Your name.
author link (REQUIRED)
The URL you want your name to link to.

Added, thank you so much :) https://definethecloud.guide/transpilation


Add Terraform and fix shell

Signed-off-by: echohack<EMAIL_ADDRESS>This pull request adds Terraform for AWS to on-prem-builder. There are some problems with the shell scripts that prevented this from running, so I ran shellcheck and fixed several issues.
Furthermore, I crossed some wires and merged this pull request early, so this squashes some earlier commits to clean up the commit log.

A few more notes:
shellcheck fixes include using underscores instead of hyphens in function names, which was causing the script to not execute at all on CentOS 7. I went ahead and fixed up many of the other issues as well and tested them.
https://echohack.app is actually run and built directly off the terraform from this branch. So if there's any question about it working successfully... there it is.
There are some minor issues around syncing upstream packages. Overall, it's probably smarter to directly people to do the package syncing on the server itself, because otherwise there's a chance that every_package_dependency will be uploaded (and then ignored because it already exists). We had a bake off on this aspect and it turned a 30 minute process into process that took 1.5 days(!!)

Will be good to also add verbiage to the README re: the feature status, support, tshooting, etc.

@chefsalim @predominant Thank you for the feedback! I went ahead and addressed all of these issues, and went the extra mile and filled out some descriptions on the variables.
I've made it clear that this is an experimental feature in the readme as well.


[Storage] Debug arm-template config - test-resources for file-datalake

https://dev.azure.com/azure-sdk/internal/_build/results?buildId=470353&view=results

Closing since the triggered pipeline looks good after the fixes.


Use Madoko bibliography support for references

Madoko uses BibTeX for bibliography which supports online / web
references. We move all the references to a .bib file and include it in
the Madoko source. The end-result looks very nice and references will
definitely be easier to maintain this way.
It seems that dvipng is used to render "math" inside BibTex strings (we
need it to render P4_16 in subscript notation). For people building
locally, dvipng will need to be installed.
Fixes #25

@chrispsommers you make me work hard :)
The titles were not correct anyway so the only solution I found was to remove them altogether (which wasn't super easy)

@antoninbas You keep raising the bar for this document! Well done.


Idea: warn about repeated expressions

Here is an idea for a new rule, which requires type information and can be quite complex. TSLint could warn about redundant conditions, which could reveal typos in code. Consider the following code.
if (x > 0 && x > 0) {
}

The check for x > 0 is redundant in the above code, and you might have wanted to write y > 0 instead, but wrote x by mistake.
I'm mainly writing this down as I might try implementing this myself in the future.

Some random thoughts:
Does this rule only look for exact duplicates?
if (x >= 0 && x > 0) {} // error here too? note the >=

It could/should check following else if conditions:
if (x > 0) {
} else if (x > 0) { // error on this condition
}

... and maybe even nested if-statements:
if (x > 0) {
    if (x > 0) { // error on this condition
    }
}

... and how about control flow analysis?
if (x > 0) {
return;
}
if (x > 0) { // error on this condition, because it is always false
}

Also note that this would be way easier to implement if typescript had type ranges https://github.com/Microsoft/TypeScript/issues/15480 and subtraction types https://github.com/Microsoft/TypeScript/issues/4183

The way I see it, there is just about no end to how far you could take this idea, so I'd start with looking for the same expressions for variables and attributes inside one local Boolean expression.

Note: per #4534, this issue will be closed in less than a month if no PR is sent to add the rule. If you really need the rule, custom rules are always an option and can be maintained outside this repo!


Suggestion: Improved text for Rest Offsets

I thought there was a bug in how this plugin was positioning rests, but it turned out that I was just confused about the design.
Although the plugin is called Rest Offsets, the descriptive text in the dialog says 4 = top staff line, 0 = middle staff line, -4 = bottom staff line. This gives the impression that the plugin will perform absolute positioning of rests. (Which, actually, would be nice functionality to have. When I use the Finale Move Rests plugin, I'm always having to count and figure out how many steps to move the rests from where they are to where I want them; it would be nice to be able to say "Put the rests here".)
In fact, the plugin does apply an offset, so that entering 4 will only put the rest on the top line of the staff if it started out on the middle line. But it applies that offset not to the rest's current position, but rather to its default position. Thus if I apply this to a whole rest and specify -6, it will wind up on the bottom line regardless of where it is currently. (Maybe I moved it somewhere previously and now need to move it again.)
From a functionality perspective, this is fine with me. But the name of the plugin and the descriptive text could be improved to better indicate what's going on. A better name might be "Rest Offsets From Default", and the text could indicate that the entered value will be applied against the rest's default value rather than its current value.
cc: @cv-on-hub

Fair comment @asherber, and renaming the script "Rests Vertical Position" makes sense. But it was never a massive step to assume that "offset" was relative to the default (middle) position! JWChange makes the distinction by offering "relative" or "absolute" values. (I trust that you also read the explanation of floating rests hiding behind the ? button).
It's a messy business working out precise current rest positions and I'll leave that up to Finale's inbuilt Move Rests... plugin.  For me if you want the option of moving to an offset relative to CURRENT position then use that one.
I've changed the documentation and the name of the script (and menu item).

@cv-on-hub I think I wasn't clear, and maybe I've made things worse. "Offset" is a fine name, and accurately describes what the plugin does. It's just that the text in the dialog make it seem like it's doing absolute positioning, but it's not.
You say "relative to the default (middle) position", which would also make sense with the dialog text, but that's also not what it does. For a whole note rest, for example, it's relative the the default position on the 4th line, not on the 3rd (middle) line. So +2 to get to the top line, -6 to the bottom line -- not +4 to the top, -4 to the bottom, as the dialog indicates.
I guess I would keep "Offset" in the name but also put "From Default" in there, so it's clear what the offset is being applied to. And similarly, I would suggest changing the text in the dialog so that it doesn't suggest positioning based on the 3rd line.

Default rest positions are set by the staff manager relative to the top staff line (i.e. the middle line -4) - see attached. It's a trivial step to work out that in this script "offset" relates to "default position" and is absolute. For relative shifts use Finale's Move Rests... plugin.  I propose adding this text to finaleplugin.Notes but no other changes to the script:
The offset is measured in "half spaces" where the distance between the top
and bottom staff lines is 8 half-spaces. So if the default rest position centres
on the middle staff line, "4" centres on the top staff line and "-4" centres on the bottom one.

This should wrap up Issue #420

The default position of floating rests is also affected by layer options and placement of beams over/under rests. It turns out to be non-trivial to figure out the rest position of a floating rest over/under a beam.

Okay, here's my "aha" moment, because I've never had occasion to go into that dialog. Finale says that the default position of the whole rest is -4, but to my long-entrenched way of thinking, I would call it -2. That is, to me, it clings to the bottom of the 4th line; it's not placed in relation to the 3rd line.
So yes, an offset of -4 positions the rest relative to the bottom staff line -- but for Finale that means the whole rest is actually under the second line, whereas I literally want it under the bottom line and need -6 to get there. Now it all makes sense, in a Finale sort of way.
I now understand what the script is doing, and if nobody else has expressed confusion, then maybe we're done here. But if you're inclined to add a little more explanation to the notes, I would suggest:
The offset is measured in "half spaces" from the rest's default position, where the distance between the top
and bottom staff lines is 8 half-spaces. So if the default rest position is
on the middle staff line, "4" moves it to the top staff line and "-4" moves it to the bottom one.
(For a normal 5-line staff, Finale defines the default position of all rests as the middle line.)

@asherber: that's OK but "moves" suggests, as you originally thought, that the symbol is placed exactly on that line, but the symbols for half, whole and breve rests sit ABOVE the line on which they are "centred". Hence "centres" rather than "moves".

@cv-on-hub I guess it's all how you look at it. What I was trying to convey with the parenthetical is that how Finale views these things is not necessarily how a human does. Finale thinks that the whole rest is on the middle staff line; to the extent that it is, offset of 4 moves it to the top staff line. (In both cases, I think a human would say it's above the designated line.) To me, "centre" is not the right concept, because there's no sense in which the whole rest is centered on the middle line.
But this is all semantics, and I seem to have been the only person confused by it! :smile:   So whatever you choose to do is fine by me.


SPI SCLK frequency is double the baud rate on Pi 4B (pigpio v1.71)

I've noticed that if I set the baud rate with spiOpen to x, I measure a frequency of 2x on the SCLK line. For example, setting baud to 100000 gives me a 200kHz clock. I am wondering if anyone else has noticed this.
I am just continually reading the MISO line:
int handle = spiOpen(0, 100000, 0);
char buf[1];
for (;;) { spiRead(handle, buf, 1); };

Rpi model, pigpio version, is audio in use or HDMI monitor attached?

Raspberry PI Model 4B
pigpio 1.71
No audio or HDMI, but VNC server and SSH are enabled for headless connection

No audio or HDMI

Good, HDMI will enable audio.

pigpio 1.71

I'm expecting a two digit number, 71 maybe?

I'm not sure what VNC does to audio.  Just to be sure can you put gpioCfgClock(5, 1) before gpioInitialise() in your script.

I'm expecting a two digit number, 71 maybe?

My apologies. I am on pigpio 77.

Just to be sure can you put gpioCfgClock(5, 1) before gpioInitialise() in your script.

Tried this; no change.

I'm not sure what VNC does to audio.

Can I ask how the audio would affect this? Maybe I can look for ways to disable audio entirely.

I also tried disabling VNC, but that did not fix the issue.

Can I ask how the audio would affect SPI?

I'm not sure about SPI if you are using the peripheral - not the pigpio bit-banged SPI.  In general, however, there are many conflicts between audio and pipgio.  Digital audio uses the PCM peripheral which is the default source of DMA timing for pigpio.  Analog audio uses the PWM peripheral which pigpio uses for servo, pwm and waveforms.
I'll try this on my Pi4 in the next few days to see if I can reproduce.

I'm seeing 100KHz as measured using setAlertFunc() callbacks on SCLK transitions.

Interestingly, if I use setAlertFunc to time the rising edges of SCLK, I also see 100kHz.
But you can see clearly from this oscilloscope measurement that the clock (blue line) is actually 200kHz.

Interesting.  I'll have to relocate my pi4 so that I can put a scope probe on it.

I set this up on an Pi ZeroW that was easily at hand.  The first burst of 8 bits is clocked at 100KHz but subsequent bursts are clocked at a higher rate - 160KHz in the case of Pi0W.  I feel better that the setAlertFunc() wasn't lying to me as I was only measuring the first byte transfer.  However, why the bit rate changes is a mystery to me.
@alanxyzhou , can you verify on your scope if the baud rate of the initial byte transfer is correct and only for subsequent transfers the bit clock changes to 200KHz (presumably in the case of Pi4B)?
@joan2937 , can you provide any insight as to why the SPI peripheral baud rate is different from what is initialized in the spiOpen() api?

I couldn't verify if only the first pulse was correct. I was only seeing the clock go straight into 200kHz.
FWIW, gpioHardwareClock always outputs the correct timing.

Edit your /boot/config.txt with the line: core_freq=250.   Reboot then retest please.

Ah, I think I understand the issue after reading this doc: https://www.raspberrypi.org/documentation/configuration/config-txt/overclocking.md
The Pi4B specifically has a default core_freq of 500, exactly double the expected 250. Which explains the exactly doubled frequency.
I don't know if there is a way for pigpio to detect which platform it is running on, but it would seem that if the 250000000 value here https://github.com/joan2937/pigpio/blob/master/pigpio.c (line 4550) can change to 500000000 on the 4B, the issue is resolved.
Or better yet, detect core_freq and use that value instead of the hardcoded 250MHz.
I've been just dividing my desired baud rate by 2 when initializing SPI as a workaround.

I don't know if there is a way for pigpio to detect which platform it is running on, but it would seem that if the 250000000 value here https://github.com/joan2937/pigpio/blob/master/pigpio.c (line 4550) can change to 500000000 on the 4B, the issue is resolved.

The problem is that some models do 'vpu frequency scaling' which affects core_freq which affects both SPI and UART timing.  To keep timing consistent the core frequency must be locked.  Setting core_freq=250 in config.txt works on all models except Pi4.  This thread, github.com/raspberrypi/firmware/issues/1308, discuss this very same issue and suggests a future enhancement  to lock frequency on Pi4 may be forthcoming.
We currently distinguish Pi4 models from the others and could easily modify the line of code you suggest.  However, I'd like to see how this gets resolved in the enhanced feature discussed above.  If you would like to patch your own version of pigpio change this line to :
if (pi_is_2711)    spiReg[SPI_CLK] = 500000000/speed;
else    spiReg[SPI_CLK] = 250000000/speed;

You will still need to lock your Pi4's core frequency as outlined in the referenced thread above.

Thank you for that thread, it was quite informative.
In my case, I had enable_uart=1 in my /boot/config.txt already -- I've confirmed that this line alone was enough to lock core_freq to 500MHz, without touching core_freq or core_freq_min. I will use these workarounds until something more permanent is implemented.
Thanks for the help!

I'm running pigpio 79 and came across the same issue. The baud rate was twice the rate that I specified in spiOpen. Shouldn't this bit of code that Guy posted three years ago be part of the official version?

if (pi_is_2711)    spiReg[SPI_CLK] = 500000000/speed;
else    spiReg[SPI_CLK] = 250000000/speed;


antiphagocytosis - change label to 'disruption of host phagocytosis' ?

Hi @ValWood
You requested that we change the label of "negative regulation by symbiont of entry into host cell via phagocytosis" to
"antiphagocytosis"  in  #17983
With @genegodbold we'd like to rename this 'disruption of host phagocytosis' (to match other terms in that branch) - are you OK with this?
Also, the definition should encompass more than just 'evasion' /'avoidance' (as in the paper you cite, PMID:23084912)
"Any process in which a symbiont avoids phagocytosis by a host cell, for example a phagocyte or a macrophage. The host is defined as the larger of the organisms involved in a symbiotic interaction."
How about
A process in which in a symbiont interferes with or inhibits host phagocytosis by targeting the phagocytic signaling or the cellular phagocytic machinery.
Is this OK ?
Thanks, Pascale

sounds good!


Permissible time period for alarm deactivation

Checklist

My request is generic, other users may benefit from it too.

Proposal
Add the possibility to allow disarming only during a certain time for a certain person/pincode.
This can be very handy for a maid, for example.

You can create an automation and execute the enable_user / disable_user services for alarmo to accomplish this.
I don’t think anything needs to be added..


Add https to container connections

By adding the letsencrypt container, it will attach to the same files as the nginx-proxy container and it generates the nginx configurations to allow specific connections to each one of the containers accordingly.
The necessary SSL certificates will be generated by letsencrypt, validated and renewed by itself.
This resolves the #5.

I've created a new branch that I'm working on replacing nginx with Traefik since a number of people have said it's a lot easier to manage for SSL than the nginx image I'm using. I'm also not familiar with docker very much, is a docker-compose-override needed for this? It says so in the updated readme so I wasn't sure.


docs(static-web-apps): build-configuration.md

I encountered a problem while I was trying to build and deploy my Azure Static Web App.
After a while, I found that the default build uses Node.js v14, and that I required v16.
A search on the internet, pointed me to this Stack Overflow answer, which provided the solution to my issue.
I think it would be useful if the docs mentioned something about how to specify the Node.js version.

@timdeschryver : Thanks for your contribution! The author(s) have been notified to review your proposed change.

@craigshoemaker
Can you review the proposed changes? IMPORTANT: When the changes are ready for publication, add a #sign-off comment to signal that the PR is ready for the review team to merge.
#label:"aq-pr-triaged"
#assign:@MicrosoftDocs/public-repo-pr-review-team

The following users don't have valid GitHub IDs, or are not collaborators on this repo: microsoftdocs/public-repo-pr-review-team

#sign-off


Update concepts-service-tiers-storage.md

Fix the anchor link to table in ## Service tiers, size, and server types

#sign-off


Srijita Mandal -"Web Icon Does Not Redirect to their Specific Location"

@swarnade please describe what you mean.

The Social Link Of Your "About Us" Of The Srijita Mandal "Profile Card" Does Not Work

This has been solved by another issue.


Questions about features (Hiding map/nearby locations/radius)

So I wanted to know if this package supports filtering with range Radius, and if possible to turn off the Map and or Make sure the map is only for viewing purposes, and shows a list of nearby locations based on radius?

For making widget just for viewing purposes , unfortunately i didn't include that type of thumbnails , it could be added easily
but for the nearby locations based on radius , i didn't get , could you please provide a UI example for your usecase ?
Thanks

For making widget just for viewing purposes , unfortunately i didn't include that type of thumbnails , it could be added easily
but for the nearby locations based on radius , i didn't get , could you please provide a UI example for your usecase ?
Thanks

Hey, I'll try to provide a UI example, its basically the same map and everything, you just cant move the pin to a different location thats all and or just Hide the map and only show a List of nearby places based on Radius like 10 KM radius etc,


Move Qualifier at the end in CppQualifiedType

Move the qualifier to the end of it's ToString Method.
To increase the readability due to this change also a space is inserted between the ElementType's Name and the Pointer-Character (*) in the CppPointerType.
This will solve the problem mentioned in #70 .
Examples for the Input and Output before the change:
const int * const   => const const int* (syntactically incorrect)
int const * const   => const const int* (syntactically incorrect)
const int *            => const int*           (syntactically correct)
const int              => const int             (syntactically correct)
Examples for the Input and Output after the change:
const int * const   => int const * const (syntactically correct)
int const * const   => int const * const (syntactically correct)
const int *            => int const *           (syntactically correct)
const int               => int const             (syntactically correct)
This change would follow the Spiral-Rule https://c-faq.com/decl/spiral.anderson.html.
Perhaps it's uncommon to have an int const instead of a const int. But it is syntactically correct.
Currently the parent of the types is not filled so you simply can't perform a lookup if the previous one was a CppPointerType.

Thanks!


after export pdf, screen lost responsiveness and color/style.

Thank you for submitting an issue to jsPDF. Please read carefully.
Are you using the latest version of jsPDF?
yes
Have you tried using jspdf.debug.js?
Steps to reproduce
https://drive.google.com/open?id=0By7_cJqSCsKNZnU4aEFlZGxqVU0
Ideally a link too. Try fork this http://jsbin.com/rilace/edit?html,js,output
What I saw
https://drive.google.com/open?id=0By7_cJqSCsKNZnU4aEFlZGxqVU0
What I expected

You should check in the browser-console if there are any error messages. Usually if there are any javascript-Errors it can break responsive designs. Press in your Browser F12 and do your tests. Then check if you have some errors listed in your browser-console. Debug your site and check if your design is still losing its responsive-ness


Rules for directive's arguments not executed if no args declared on directive

If a directive with no argument declared and an arbitrary argument is passed, the rule check is not applied.
This is because know_args is an empty list  which return false in if directive_node.arguments and known_args: at Line 63 on /src/graphql/validation/rules/known_argument_names.py

Thank you @Dodobibi for reporting this and pinpointing the problematic code. 👍


systemrdl-compiler discussion page

Can discussions be enabled for this project or are there any communities to discuss SystemRDL? Feels strange to create an issue when you have a question.

Good idea. Done!