[next] More breaking changes

Looking to add a couple more breaking changes to the worktop@next release cycle – and hopefully it's the last batch!
Before diving into the rundown, it's important to state why these changes are being proposed:

There are too many ways to start/initialize a worktop app. Yes, Cloudflare now supports 2 runtimes (Service Worker vs Module Worker), worktop kinda makes it worse by allowing the new Router to be booted up 6+ ways! This was initially done for flexibility, but the reality is that people just want to go down 1 path... 2 at the most. (more on this in the 2nd point)
Both worktop/sw and worktop/module offer their own listen and reply exports. The listens prepare an App for the Service Worker target & the replys prepare an App for the Module Worker target. This is already 4 options to choose from. Then, worktop/module also offers define (which I do like) so that you can get a TS-aware helper for defining a full Module Worker, which may have more than just a fetch handler. Finally, there's worktop/cache which also offers its own listen and reply exports. This is now 7 offerings. Finally finally, the first two modules offer their own convert helper to go to-and-from the Module to Service Worker signatures, in the event you want/need to mount your own Worker and/or need to convert a third-party function to a different format.

I, personally, get super confused with these converts and don't actually know which to use unless I look at the source. Granted, they're each 2-4 lines of code, but mentally, I lose track if the narrative is "if converting from sw to module, use the X conversion"... good indicator that it should be tossed I think

Worktop will support multiple environments in the near future. Specifically, I'll be adding Node.js support and Deno support. This brings the total to 4 environments supported, which definitely means that (1) needs to be whittled down before adding any more options.... It also means that there should be a standardized "start the App" export regardless of which environment you're targeting.

With these in mind, I think these are the breaking changes I want/need to make:

rename worktop/module -> worktop/cfw

remove listen export
remove convert export
rename reply to start export

worktop/sw

remove reply export
remove convert export
rename listen to start export

In the future, add the worktop/node and worktop/deno modules, both of which will only have a start export, too.
This creates a workflow wherein:

you always import Router from the root worktop module
you always choose a start method from a worktop/<env> module
it's always obvious which environment you're building for, because you chose it...
if desired, you can setup a build-time alias between worktop/<env> modules (rare / advanced cases)
worktop can always separate any environment-specific startup or type-changes within the <env> module bounds

import { Router } from 'worktop';

const API = new Router;

// build/deploy a service worker
// ~> browser OR cloudflare
import { start } from 'worktop/sw';
start(API.run);

// build/deploy a Module Worker
import { start } from 'worktop/cfw';
export default start(API.run);
// ^ environment specific needs
//      makes it easy to document too

// build/deploy a Node.js server
import { start } from 'worktop/node';
start(API.run);

// etc...

Finally, unrelated to the above, the send export from within the worktop/response module annoyed me 😅 Because you have to return the Response that send builds, the "send" name makes no sense. You don't "return a send" ... you "return a reply"
I'm renaming send to reply – which is also more reason to get rid of the previous/current reply exports from the worktop/(sw|cache|module) modules, which really didn't make sense for them to be called reply in the first place!

Forgot to address the worktop/cache module – it should only export a start method for the base Initializer type (aligning with the Module Workers default assumption). If you're targeting a Service Worker, then you still have access to all the other worktop/cache exports to piece together your own response handler. This is also going to be true for users targeting the Node.js and Deno environments.

TLDR; make the start export from worktop/cache be the only done-for-you solution & have it target Module Workers (Cloudflare only), which is fine since worktop still is primarily a framework for Cloudflare Workers.

Also think I need to amend something – the new worktop/cfw module should probably have two primary exports:

start – for the Module Worker format (as described above)
listen – for the Service Worker format

This new listen would not replace the worktop/sw module. The purpose of adding the listen export is that it allows me to move all Cloudflare-specific TypeScript interfaces and/or type-mutations to a single module.
In other words, you get the type definitions for stuff like request.cf, response.webSocket, and event.passThroughOnException only if you're actually targeting Cloudflare. You/Worktop can know this because if you are deploying to Cloudflare, then you'll either be importing listen or start from the worktop/cfw module, which auto-loads all that information.
import { Router } from 'worktop';
import type { Handler } from 'worktop';

const hello: Handler = async function (req, context) {
  req.cf;
  //   ^ will ONLY be defined if `worktop/cfw` was imported
}

Closed via #127
There's one additional breaking change I want to make – PR tomorrow


--attach-acr does not work for AKS cluster with MSI

@aristosvo commented on Fri Apr 03 2020
az aks update -n testmsi -g aks-rg --attach-acr testmsi failed with Could not create a role assignment for ACR. Are you an Owner on this subscription?
Cluster is created with command az aks create -g aks-rg -n testmsi --enable-managed-identity

Documentdetails
⚠ Dit gedeelte niet bewerken. Het is vereist om problemen te koppelen tussen docs.microsoft.com en GitHub.

ID: ed59d472-ac33-5c03-dbb7-0e86e88c7dd8
Version Independent ID: 69e1ad8c-2dd3-cc1b-2b31-996a5d866cc0
Content: Azure-containerregister integreren met Azure Kubernetes-service
Content Source: articles/aks/cluster-container-registry-integration.md

@srvbpigh commented on Fri Apr 03 2020
Hello, @aristosvo
Thank you for your feedback.
We are actively reviewing your comments and will get back to you soon.
Kind regards,
Microsoft DOCS International Team

Thanks for the question. We are currently investigating and will update you shortly.

@MicrosoftDocs/aks-pm Please add your comments

@CeciAc

az aks update -n testmsi -g aks-rg --attach-acr testmsi failed with Could not create a role assignment for ACR. Are you an Owner on this subscription?

Your cluster and ACR instance really the same name: "testmsi"?

@TomGeske Yup!

@aristosvo mentioned command requires Owner.
https://docs.microsoft.com/en-us/azure/aks/cluster-container-registry-integration#configure-acr-integration-for-existing-aks-clusters , "require" "Owner or Azure account administrator role on the Azure subscription"

az role assignment list --all
[
  {
    "canDelegate": null,
    "id": "/subscriptions/xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx/providers/Microsoft.Authorization/roleAssignments/xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",
    "name": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",
    "principalId": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",
    "principalName": "emailuserxxxxxxxxxxxxx",
    "principalType": "User",
    "roleDefinitionId": "/subscriptions/xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx/providers/Microsoft.Authorization/roleDefinitions/xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",
    "roleDefinitionName": "Owner",
    "scope": "/subscriptions/xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",
    "type": "Microsoft.Authorization/roleAssignments"
  },
  ...
]

@aristosvo Thanks for responding back with details.
Internal team suggested to open a support case on this issue as this needs live troubleshooting.
Can you please open a support case for this issue? If you already have opened a case please share the SR # with me that way we can track it internally.
If you don't have the ability to open a technical support ticket, you can email me with Subject as "ATTN: Vikas" at<EMAIL_ADDRESS>and provide me with your SubscriptionID and link to this thread. I can then enable your subscription for one time free support.
Also, once you get the issue fixed, request you to reply back here on the thread with the resolution steps for the benefit of the community.

Which Azure CLI version do you have? Looks like 2.3.1 got the implementation for --attach-acr with a cluster which has --enable-managed-identity?

azure-cli version was 2.2.0, I updated it just a few minutes ago to 2.3.1 and it's working.
Thanks @mathieu-benoit !

@CeciAc It can be closed, as updating to 2.3.1 solved the issue.
Thanks!

@Karishma-Tiwari-MSFT @VikasPullagura-MSFT  @VijayRod, do you think a note on that doc about having the Azure CLI 2.3.1 when using an AKS cluster with Managed Identity could make sense?

Agree on the doc update cc @mlearned

@aristosvo Thanks for confirming that this is working after cli upgrade.
@mathieu-benoit I am assigning the issue to content author for adding a note on the required CLI version.

@mlearned Can you please add a note on the CLI version required in the document.

Question for you @aristosvo, when you made it working az aks update --attach-acr with the Azure CLI version 2.3.1, did you have the aks-preview extension installed too?

@mathieu-benoit No, not at all.
Current setup:
az version
> {
>   "azure-cli": "2.3.1",
>   "azure-cli-command-modules-nspkg": "2.0.3",
>   "azure-cli-core": "2.3.1",
>   "azure-cli-nspkg": "3.0.4",
>   "azure-cli-telemetry": "1.0.4",
>   "extensions": {
>     "application-insights": "0.1.6",
>     "log-analytics": "0.1.4"
>   }
> }

But, to be honest, I didn't test if the functionality was added, as in the meantime I already did it by role assignment:
KUBELET_IDENTITY_ID=$(az aks show -g $RESOURCE_GROUP -n $CLUSTERNAME --query identityProfile.kubeletidentity.clientId -o tsv)
ACR_ID=$(az acr show --resource-group $RESOURCE_GROUP --name $CLUSTERNAME --query id --output tsv)
az role assignment create --assignee $KUBELET_IDENTITY_ID --scope $ACR_ID --role acrpull

A step-by-step of my setup can be found here: https://aristosvo.github.io/posts/aks-with-msi-for-your-java-services/

Thanks @aristosvo for following up with those details!

@VikasPullagura-MSFT , this changes the Implemenation experience :

Without Managed Indentities, we
create first the Service Principal, assign acrpull role to the SP , create ACR and attach ACR during AKS creation

With Managed Identities : We first create AKS with --enable-managed-identity , gets the Identity created after cluster creation, create ACR , assign acrpull role to the AKS idenity and finally attach ACR to AKS

This should be clearly documented both on AKS & ACR doc pages.

docs update bumping up azure cli version should go live soon.
I'm going to close this issue. Feel free to keep commenting.
#please-close


Create vxlan-id space from 0 instead of starting from 1

With the introduction of GetIDInRange function in IDM and using it in
ovmanager, the idm.New was modified to start from 1. But that causes
issues when the network is removed which results in releasing the
vxlan-id from IDM. With the offset of 1, the Release call incorrectly
releases a bit which could be in use by another network and this results
in the infamous "error creating vxlan interface: file exists" errors
when another network is created with this freed bit.
Signed-off-by: Madhu Venugopal<EMAIL_ADDRESS>

ping @aboch

LGTM


Add WEEKDAY Function to SQL Plugin

Description
Adds the weekday function to the SQL plugin. The function accepts a DATE/TIME/DATETIME/TIMESTAMP/STRING and returns an index 0-6 (Monday-Sunday) for the corresponding weekday the date lands on. If a TIME is used the function uses the current day. This is based on MySQL docs.
Examples:
SELECT weekday('2020-08-27') -> 3
Issues Resolved
722
Check List

[X] New functionality includes testing.

[X] All tests pass, including unit test, integration test and doctest

[X] New functionality has been documented.

[X] New functionality has javadoc added
[X] New functionality has user manual doc added

[X] Commits are signed per the DCO using --signoff

By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.
For more information on following Developer Certificate of Origin and signing off your commits, please check here.

Codecov Report

Merging #1418 (0a1c823) into main (cd95bc5) will increase coverage by 0.00%.
The diff coverage is 100.00%.

:mega: This organization is not using Codecov’s GitHub App Integration. We recommend you install it so Codecov can continue to function properly for your repositories. Learn more
@@            Coverage Diff            @@
##               main    #1418   +/-   ##
=========================================
  Coverage     98.38%   98.39%
- Complexity     3693     3702    +9
=========================================
  Files           343      343
  Lines          9107     9133   +26
  Branches        585      586    +1
=========================================
+ Hits           8960     8986   +26
  Misses          142      142
  Partials          5        5

Flag
Coverage Δ

sql-engine
98.39% <100.00%> (+<0.01%)
:arrow_up:

Flags with carried forward coverage won't be shown. Click here to find out more.

Impacted Files
Coverage Δ

...c/main/java/org/opensearch/sql/expression/DSL.java
100.00% <100.00%> (ø)

...arch/sql/expression/datetime/DateTimeFunction.java
100.00% <100.00%> (ø)

...h/sql/expression/function/BuiltinFunctionName.java
100.00% <100.00%> (ø)

... and 4 files with indirect coverage changes
Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.


Mention nsrr downloader in readme

Looks good, if you accept the remaining suggestion we're good to go. Just out of curiosity, why is our function called read_mitbih? What does this acronym mean? Why not read_mitltdb? And why don't we have two separate readers for MITDB and LTDB?

MIT -> Massachusetts Institute of Technology, BIH -> Beth Israel Hospital (more background here)
There are 11 different MIT-BIH datasets, two of which are MITDB and LTDB (see here. These two datasets appear to use the same annotations ("appear" because there's no documentation for LTDB). True, separate readers (which would then use the current read_mitbih as a non-public function in the background would make the overall reader-API more consistent!

Thanks, maybe something to add for later? I think it would be really easier for users if the reader functions were called after the dataset.

Thanks @hofaflo! I've created #30 to remind us of the reader separation.


eqx.filter_jit causes crash with segfault when calling jax.clear_caches()

I have a code where using jax.jit like this works:
@partial(jax.jit, static_argnums=1)
But @eqx.filter_jit in the same place causes jax.clear_caches to crash with either Segmentation fault or sometimes with double free or corruption (!prev)
I made a repo with code for reproing the crash: https://github.com/skeskinen/jit_crash_repro
It should crash in couple seconds after running python crash_repro.py
Just FYI that it downloads MNIST with tfds to a local directory the first time
Place where you can swap between jax.jit and eqx.filter_jit is here on line 156:
https://github.com/skeskinen/jit_crash_repro/blob/2c3bb331556f8aebdfa3d1a6d2d0876aef3ce4ab/crash_repro.py#L156
There is also another jitted function on line 180, same thing happens there (switching to eqx.filter_jit crashes).
And clear_caches(), which triggers the crash, is on the last line of the file.
I'm running this on cpu backend.
Equinox 0.11.2
Jax 0.4.21
Python 3.11.5
Linux 6.6.1-arch1-1

Can you try to reduce your repro to a smaller example? As few lines of code, and as few libraries, as possible. (E.g. I doubt you need to download MNIST to reproduce the error.)
That will help a lot with debugging this. :)


pods stuck in wait-for-airflow-migrations

Checks

[X] I have checked for existing issues.
[X] This report is about the User-Community Airflow Helm Chart.

Chart Version
1.13.1
Kubernetes Version
Client Version: v1.30.0
Kustomize Version: v5.0.4-0.20230601165947-6ce0bf390ce3
Server Version: v1.27.13-eks-3af4770
WARNING: version difference between client (1.30) and server (1.27) exceeds the supported minor version skew of +/-1

Helm Version
version.BuildInfo{Version:"v3.15.1", GitCommit:"e211f2aa62992bd72586b395de50979e31231829", GitTreeState:"clean", GoVersion:"go1.22.3"}

Description
I'm trying to deploy using Airflow but my scheduler, triggerer and webserver pods are forever stuck in wait-for-airflow-migrations to finish. However, a db-migrations job is never actually started.

ENV PIP_ENV_VERSION=24.0
RUN python -m pip install --no-cache-dir --upgrade pip==${PIP_ENV_VERSION}

COPY requirements/requirements.txt /tmp/tmp-pip/
RUN python -m pip install --no-cache-dir -r /tmp/tmp-pip/requirements.txt
RUN pip list
ENTRYPOINT ["bash", "-c", "airflow db init && airflow webserver & airflow scheduler"]

Relevant Logs
pod/airflow-postgresql-0                 1/1     Running    0              2m14s
pod/airflow-scheduler-79f69f58cf-75g6j   0/3     Init:0/2   0              2m14s
pod/airflow-statsd-7c56d8b68-5qntz       1/1     Running    0              2m14s
pod/airflow-triggerer-0                  0/3     Init:0/2   1 (119s ago)   2m14s
pod/airflow-webserver-6cdb66595f-pr7xc   0/1     Init:0/1   0              2m14s

Events:
  Type    Reason     Age    From               Message
  ----    ------     ----   ----               -------
  Normal  Scheduled  2m26s  default-scheduler  Successfully assigned airflow-dags/airflow-webserver-6cdb66595f-pr7xc to ip-10-30-196-195.eu-west-1.compute.internal
  Normal  Pulling    2m26s  kubelet            Pulling image "eu.gcr.io/medicuja/airflow-dags:ci_cd_helm_dependency-7"
  Normal  Pulled     116s   kubelet            Successfully pulled image "eu.gcr.io/my-project/airflow-dags:my-image-tag" in 30.190834116s (30.190864716s including waiting)
  Normal  Created    115s   kubelet            Created container wait-for-airflow-migrations
  Normal  Started    115s   kubelet            Started container wait-for-airflow-migrations

Custom Helm Values
images:
  airflow:
    repository: eu.gcr.io/my-project/airflow-dags
    tag: latest
airflow:
  dbMigrations:
    enabled: True
    runAsJob: True
dags:
  gitSync:
    branch: main
    enabled: true
    repo: 'git@github.com:my-repo/airflow-dags.git'
    subPath: 'dags'
    rev: HEAD
    sshKeySecret: airflow-git-key
  persistence:
    accessMode: ReadWriteOnce
    annotations: {}
    enabled: false
    existingClaim: null
    size: 1Gi
    storageClassName: null
    subPath: null
config:
  webserver:
    expose_config: 'True'
executor: KubernetesExecutor
extraEnv: |
    - name: "AIRFLOW__CORE__PLUGINS_FOLDER"
      value: "/opt/airflow/dags/repo/plugins"
    - name: AIRFLOW__CORE__LOAD_EXAMPLES
      value: "True"
    - name: PYTHONPATH
      value: "/opt/airflow/dags/repo"
registry:
  secretName: my-project-gcr-secret-basic-service

I've also discovered I can force the migration job to run by disabling the Helm hooks on the migrationDataBaseJob:
migrateDatabaseJob:
  useHelmHooks: false
  enabled: true

The migrations jobs seems to complete the init and migration itself, but never shut downs
WARNING:root:OSError while attempting to symlink the latest log directory
DB: postgresql://postgres:***@airflow-postgresql.airflow-dags:5432/postgres?sslmode=disable
/home/airflow/.local/lib/python3.8/site-packages/airflow/cli/commands/db_command.py:47 DeprecationWarning: `db init` is deprecated.  Use `db migrate` instead to migrate the db and/or airflow connections create-default-connections to create the default connections
[2024-06-07T10:38:47.561+0000] {migration.py:216} INFO - Context impl PostgresqlImpl.
[2024-06-07T10:38:47.571+0000] {migration.py:219} INFO - Will assume transactional DDL.
[2024-06-07T10:38:48.137+0000] {migration.py:216} INFO - Context impl PostgresqlImpl.
[2024-06-07T10:38:48.137+0000] {migration.py:219} INFO - Will assume transactional DDL.
[2024-06-07T10:38:48.166+0000] {db.py:1623} INFO - Creating tables
  ____________       _____________
 ____    |__( )_________  __/__  /________      __
____  /| |_  /__  ___/_  /_ __  /_  __ \_ | /| / /
___  ___ |  / _  /   _  __/ _  / / /_/ /_ |/ |/ /
 _/_/  |_/_/  /_/    /_/    /_/  \____/____/|__/
INFO  [alembic.runtime.migration] Context impl PostgresqlImpl.
INFO  [alembic.runtime.migration] Will assume transactional DDL.
[2024-06-07T10:38:49.226+0000] {task_context_logger.py:63} INFO - Task context logging is enabled
[2024-06-07T10:38:49.227+0000] {executor_loader.py:115} INFO - Loaded executor: KubernetesExecutor
/home/airflow/.local/lib/python3.8/site-packages/airflow/providers/cncf/kubernetes/executors/kubernetes_executor.py:165 FutureWarning: The config section [kubernetes] has been renamed to [kubernetes_executor]. Please update your `conf.get*` call to use the new name
[2024-06-07T10:38:49.433+0000] {scheduler_job_runner.py:808} INFO - Starting the scheduler
[2024-06-07T10:38:49.434+0000] {scheduler_job_runner.py:815} INFO - Processing each file at most -1 times
[2024-06-07T10:38:49.436+0000] {kubernetes_executor.py:318} INFO - Start Kubernetes executor
[2024-06-07T10:38:49.514+0000] {kubernetes_executor_utils.py:157} INFO - Event: and now my watch begins starting at resource_version: 0
[2024-06-07T10:38:49.520+0000] {kubernetes_executor.py:239} INFO - Found 0 queued task instances
[2024-06-07T10:38:49.535+0000] {manager.py:169} INFO - Launched DagFileProcessorManager with pid: 37
[2024-06-07T10:38:49.548+0000] {scheduler_job_runner.py:1608} INFO - Adopting or resetting orphaned tasks for active dag runs
[2024-06-07T10:38:49.586+0000] {settings.py:60} INFO - Configured default timezone UTC
[2024-06-07T10:38:49.682+0000] {settings.py:541} INFO - Loaded airflow_local_settings from /opt/airflow/config/airflow_local_settings.py .
[2024-06-07T10:38:49.713+0000] {scheduler_job_runner.py:1631} INFO - Marked 3 SchedulerJob instances as failed
Initialization done
[2024-06-07T10:39:07.533+0000] {configuration.py:2066} INFO - Creating new FAB webserver config file in: /opt/airflow/webserver_config.py
  ____________       _____________
 ____    |__( )_________  __/__  /________      __
____  /| |_  /__  ___/_  /_ __  /_  __ \_ | /| / /
___  ___ |  / _  /   _  __/ _  / / /_/ /_ |/ |/ /
 _/_/  |_/_/  /_/    /_/    /_/  \____/____/|__/
Running the Gunicorn Server with:
Workers: 4 sync
Host: <IP_ADDRESS>:8080
Timeout: 120
Logfiles: - -
Access Logformat:

I've just realized I'm actually not using the community edition of Airflow helm chart. My bad. I'll close this.


Clarification on re-fanging

I was wondering if the following is intentional:
>>> fang('shotput')
'shttput'
>>> fang('123howp')
'123http'
>>> fang('123howpqwe')
'123httpqwe'
>>> fang('hotpocket')
'httpocket'

All of these I would say are false positives. Is this done by design?
I would expect these to remain unchanged, as they are not part of a url.

Hey @jakubclark , thanks for raising this issue. The problem you are reporting was fixed in a recent version of the ioc-fanger library.
Can you try upgrading the package and try again?
You can upgrade the package with:
pip install ioc_fanger --upgrade
or
pip3 install ioc_fanger --upgrade

Great, upgrading the package fixes this.
Thanks for helping out!

No problem, thank you for reporting this issue!


[core] Prioritize AV1

IMPORTANT: PRs without the template will be CLOSED
Description of your pull request and other information

All major operating systems now support AV1 out of the box in some way. This seems like the right time to stop preferring vp9.
Any half decent media player will have had support for AV1 for years at this point. Preferring VP9 over AV1 and in fact preferring every other codec over AV1 was always unintuitive to me. I would guess that many yt-dlp users were not even aware of this.
To revert this change, --compat-options prefer-vp9-sort can be used.
Partially addresses: #4846
Template

Before submitting a pull request make sure you have:

[x] At least skimmed through contributing guidelines including yt-dlp coding conventions
[x] Searched the bugtracker for similar pull requests

In order to be accepted and merged into yt-dlp each piece of code must be in public domain or released under Unlicense. Check all of the following options that apply:

[x] I am the original author of this code and I am willing to release it under Unlicense
[ ] I am not the original author of this code but it is in public domain or released under Unlicense (provide reliable evidence)

What is the purpose of your pull request?

[ ] Fix or improvement to an extractor (Make sure to add/update tests)
[ ] New extractor (Piracy websites will not be accepted)
[x] Core bug fix/improvement
[ ] New feature (It is strongly recommended to open an issue first)

All major operating systems now support AV1 out of the box in some way

I'm seeking clarification on that (https://github.com/microsoft/media-foundation/issues/36#issuecomment-2403690713), because Microsoft's support articles (and the linked Wikipedia page) still say that AV1 has to be manually installed
(I'm neutral about whether to merge this anyway)


some question about the c2w

I have a question about this: my dataset was rendered in blender, and the blender coordinate system is [back, right, up], the camera pose was based on blender's world coordinate, I wonder how to convert the pose to your coordinate system. I don't understand your process about the camera pose : c2w. Is this equivalent to transforming the position by multiplying the rotation matrix left？
https://github.com/kwea123/ngp_pl/blob/1b49af1856a276b236e0f17539814134ed329860/datasets/nsvf.py#L70

@Benjobs1 How did you solve this problem? I am also struggling with this problem?

@Benjobs1 How did you solve this problem? I am also struggling with this problem?

In my case, my camera pose rendered by blender was w2c, I just transpose the matrix to c2w.I haven't changed anything else.


Finding the correct version of the connector

How can I determine which is the latest, fully tested and officially endorsed version of the connector?

On this page: https://docs.microsoft.com/en-us/azure/cosmos-db/spark-connector#bk_working_with_connector it says azure-cosmosdb-spark_2.4.0_2.11_1.4.0
On the GitHub page, https://github.com/Azure/azure-cosmosdb-spark it says azure-cosmosdb-spark_2.4.0_2.11_2.1.2
On the Maven download page, https://search.maven.org/artifact/com.microsoft.azure/azure-cosmosdb-spark_2.4.0_2.11 the latest is azure-cosmosdb-spark_2.4.0_2.11 2.1.5

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

ID: 5c77b390-e483-d7d4-3ea8-813a296c9e89
Version Independent ID: 3b1e6865-894e-9958-3e6d-4b04bf40e892
Content: Connect Apache Spark to Azure Cosmos DB
Content Source: articles/cosmos-db/spark-connector.md
Service: cosmos-db
GitHub Login: @tknandu
Microsoft Alias: ramkris

@PerFlodin We are checking this and will get back to you.

@PerFlodin We checked with our Product Team, and they have conveyed Maven is the source of truth https://search.maven.org/artifact/com.microsoft.azure/azure-cosmosdb-spark_2.4.0_2.11 and current version is 2.1.5.
Hope this helps.

@PerFlodin We are going ahead and closing this thread. If you need any further help please get back to you.


some dimension question

Traceback (most recent call last):
File "/home/user/py_geo/yread.py", line 62, in
loss = calculate_loss(reactant_embeddings, product_embeddings, args)
File "/home/user/py_geo/yread.py", line 22, in calculate_loss
neg = (1 - mask) * dist + mask * args.margin
RuntimeError: The size of tensor a (1024) must match the size of tensor b (97) at non-singleton dimension 1
This happens when running the code, how to solve it?

Hi there, I'm not sure what part of the code you have modified, since "/home/user/py_geo/yread.py" is not the original file in this repository. It seems that the problem is because of the dimension mismatch, but I have no idea why there is tensor of dimension 97. Could you please print out the size of these tensors (mask, dist, etc)? Thanks!


Android security issue.

Hi, it seems that the following affects this module: https://android-developers.googleblog.com/2013/08/some-securerandom-thoughts.html,
Do we need to add this patch to the code ?
Thanks in advance.

Applications which run exclusively on Android KitKat (4.4) or above do not need to take any special action to work around this bug.

Since this library supports API level 16 (KitKat is 19) it may need to be patched

Quite right, I'd actually forgotten RN's android support still goes back that far. Patch added and published as 0.3.1
Thanks both.


Mention that this is only gruvbox dark mode, or document the light mode

The README only shows screenshots for the “dark mode” version of gruvbox. You should change the description to say that the UI theme implements “gruvbox dark mode” or “gruvbox dark”, not “gruvbox”. Or if you have actually implemented light mode too, you should include a screenshot of it.

Good point, I'll update it.


Cannot duplicate Wire hydraulics

Hello, I have a contraption that uses a wire hydraulic between a wing and a ballsocketed fin. However, after duplicating the contraption, the hydraulics fail to be preserved and the following error is thrown: 'Failed to create WireHydraulic Constraint!'
Is this common?
Thanks for your time.

 Everything works fine now.

So it tries to create the constraint without also creating the controller? That still sounds fairly bad to me, I think this warrants further investigation. I think duping objects attached via hydraulic should also dupe the controller.

That's only possible if the controller is attached via some sort of constraint which the controller should be responsible for.

For example he just parented the controller to the base prop, without checking the "weld" option and clicked right click on the base prop.

Not an advdupe2 bug


Curve symbol

Update the system to get the curve symbol from plain etherjs to subgraph

Decided to go with the curve api directly instead of a subgraph as it's much cleaner

Decided to go with the curve api directly instead of a subgraph as it's much cleaner


[Refactor] Refactor standard roi head with boxlist.

Thanks for your contribution and we appreciate it a lot. The following instructions would make your pull request more healthy and more easily get feedback. If you do not understand some items, don't worry, just make the pull request and seek help from maintainers.
Motivation
Refactor standard roi head with boxlist
wait for merging of #8625
Modification
Please briefly describe what modification is made in this PR.
BC-breaking (Optional)
Does the modification introduce changes that break the backward-compatibility of the downstream repos?
If so, please describe how it breaks the compatibility and how the downstream projects should modify their code to keep compatibility with this PR.
Use cases (Optional)
If this PR introduces a new feature, it is better to list some use cases here, and update the documentation.
Checklist

Pre-commit or other linting tools are used to fix the potential lint issues.
The modification is covered by complete unit tests. If not, please add more unit test to ensure the correctness.
If the modification has potential influence on downstream projects, this PR should be tested with downstream projects, like MMDet or MMCls.
The documentation has been modified accordingly, like docstring or example tutorials.

LGTM

I also move all box operations into mmdet.structures.bbox.

The word "boxlist" should be changed.

I have replaced all boxlist with box type.

LGTM


Submit event is missing form data during tests

Reproduction
https://stackblitz.com/edit/github-k2bhcr?file=app.vue,nuxt.config.ts,components%2FFormExample.vue,.vscode%2Fsettings.json,components%2FFormExample.test.js
Describe the bug
When doing some tests for my form interactions, I'm getting an error Cannot convert undefined or null to object which means that the submit data of the form is empty. See line 52
If logging the input fields in the test, the value exists but does not get passed through the @submit event.
Any thoughts?
Environment
• OS: Mac OS
• Browser chrome
• Formkit: @next

Hmm, that looks odd to me, I've never used testing-library though, so I can't speak to the syntax at all. My guess is somehow the app when in the testing context is not fully loading the plugins, but I cannot confirm that very easily.

I did some tests and getting the node using getNode and doing getNode(form).value seens to have the values, doing @getNode(form).submit() tho, fails with undefined.
also removing the :values from the component seen to make getNode(form).value undefined, so this doesn't seen to add anything.
const emailField = getByLabelText('E-mailadres');
const passwordField = getByLabelText('Wachtwoord');

await fireEvent.update(emailField, 'example@email.com');
await fireEvent.update(passwordField, 'password');

Well found it: await new Promise((r) => setTimeout(r, 10)) after the component render function did the job.


exc_bad_instruction

let pm = placemarks[0] as! CLPlacemark in func locationManager

Hello zoeyin,
Thanks for opening up an issue. Can you tell me more about it?

Hi Aaron
A little bit late. I did have the problem in func locationManager."let pm = placemarks[0] as! CLPlacemark"
But it’s good now and I have no idea what cause that. I’m really new with Swift and IOS develop.
But still thanks a lot.
Zoe

Aaron<EMAIL_ADDRESS>於 2015年5月7日 上午12:22 寫道：
Hello zoeyin,
Thanks for opening up an issue. Can you tell me more about it?
—
Reply to this email directly or view it on GitHub https://github.com/Mav3r1ck/Project-RainMan/issues/1#issuecomment-99528301.


Unable to reach platform.

The ContentSync.app shows that it is unable to reach platform and thus syncing is not possible.

@ednerd, sorry to hear. That error indicates that the OSX Application is having trouble getting the data for your project / version. I can think of a few possibilities:

You are not signed in on the OSX Application, it may help to log out and then log back in
The project / version you are using are invalid, somehow an incorrect value was saved or something on your document changed. It may help to retry resetting the project and version you are syncing.

If those don't help, maybe post a bit more information about your usage and we can try to debug further.

Thanks for the reply, @dbrody.
I did try logging out and back in of the OSX Application and got the same error.
I'm not sure how I would retry resetting the project and version as it the OSX Application doesn't give me any way to select a project or version. It just goes from Syncing to Unable to reach platform.
Also, how does one delete a project?

@ednerd, thanks for the follow up.
There is now a new version (0.6.13) of the OSX App. When you open the app, it should automatically prompt you to check for and install the updates.
This new version will display an error code with a bit more details. It will also include a button to clear settings saved within the app.
Let me know what the error that shows up is now, and if using the clear settings button helps.

Thanks, @dbrody.
I was able to update the OSX App to 0.6.13 and I did the sign out/in path which cleared settings as well. The unable to reach platform error was still there but, the error code was just 0 with no further details.
I got the prompt to select a project but, I was not able to see any versions in my project. If I selected your sample spreadsheet, versions were available. Maybe my spreadsheet is formatted incorrectly and it's choking on something. It's hard to tell. I'll try recreating my spreadsheet.
Is there a way that I can manage the projects listed in my contentsync.io dashboard? I'd like to delete duplicates/mistakes.
Thanks for your work.

@ednerd Yes, there will be a large update coming soon to allow for managing projects as well as creating organizations and sharing projects.
In diving a bit deeper, it looks like the issue is that your project sync requests are timing out. It seems as if your requests are large and seem to time out our server. I filed an issue for that to see if we can break the large request into smaller parts but it may take some time to get that implemented.
Given that issue, can you tell me any details on the document you are trying to sync? How many versions, how many keys, is some of the content large, etc?
Thanks,
David

@ednerd
After diving a bit deeper, it looks like our server was being a bit overloaded with more traffic than we thought. We've upgraded the servers and put a few optimizations in place and it looks like it should work now.
Let me know how it goes, hopefully your issue should be resolved now.

Sync requests do seem to take a while but, I'm not getting the Platform Unreachable error anymore. But, versions are still not available from my document. It's a sizeable sheet with only 2 versions but around 320 keys but the content is only a few words for each key.

@ednerd, there is now another update to 0.6.14.
This should help a lot with the time of syncs. It introduces a couple optimizations on the data transfer so that not all data is transferred every sync.
Try to do your syncs again with this new version and let me know how it goes.

@ednerd we dove a bit further in and it appears to have been an issue with the GoogleAPI request response size. We see that with a document of 300 keys, Google's API response was in the 80MB size which was causing all sorts of issues. We optimized that request and now it should be on the order of 2KB response. This should drastically improve speed and response time.
This is available in 0.6.16.
We are still looking into more ways to continue improving the performance, scalability and experience. As always, post any issues, comments, questions, etc here on Github or send an email to<EMAIL_ADDRESS>.  Thank you for using ContentSync!


An option to report a user for hate speech

Is your feature request related to a problem? Please describe.
A problem with social media is that it opens the ability for the worst kinds of people to voice their opinions, and the nature of social media amplifies them. This sadly includes bigoted people, like racists, sexists, homophobes, transphobes, etc. These types of people already exist on bluesky, and there's no real way to report them aside from pressing "other".
Describe the solution you'd like
I, and several other people on the platform, would appreciate the ability to report users for hate speech, or for speech that has a negative impact on minorities.
Describe alternatives you've considered
Blocking them is definitely an alternative, but blocking doesn't always work when you have a platform with thousands, or even millions, of people. You're not able to block every single bigot on a platform, even if you use community moderation. This is made even worse by the fact that posts can still technically be seen through the protocol, even if you block the user who is trying to access the information.
Additional context
Bluesky is a good platform, but I think it would be even better if hate speech was explicitly banned.

No idea, I'm not affiliated with Bluesky.

Ok. Thank you 🙏


Improvements for OS X and high DPI displays.

[x] Set CMD as default menu shortcut key on OS X
[x] Set backspace to work to delete nodes in the editor
[x] Set CMD to be used as default shortcut key in text boxes - e.g. cmd+c for copy.
[ ] Resize dialogs and text using sizeHelper so they all fit normally on both normal and high DPI displays
[ ] Show prompt for CTRL + RMB to move the editor when CTRL held down (or CMD on OSX)
[ ] Use native OS X menu bar for Workcraft menus.
[ ] Ensure none of these changes negatively affect existing Linux/Windows versions or standard displays.

I have done some tests with meta mask and defaultMenuKeyMask() on all three platforms.
meta mask seems to not work on any platform. For Windows it should be the windows key, and CMD on OS X, I think it should be the absent windows key/cmd on Linux. None of these appear to work.
defaultMenuKeyMask() uses CTRL on Windows and Linux, and CMD on OS X, and all work as expected.
What I suggest is that we use defaultMenuKeyMask() which will keep the normal CTRL key on Windows and Linux, and the standard CMD for OS X. We can then add an option for OS X users to select between the native CMD key, or using CTRL which has been used up to now.

I think we use Ctrl and Shift most of the time. I only can remember Alt is used for page grouping. Is there any other use of Alt?
It may be a good idea to have getCtrlMask() static method in some globally used class that would take care of those user settings and return the correct mask for each platform. I see bait of confusion with Cmd as all the help and tutorial files refer to Ctrl key. We may need to adjust the help text accordingly.

I cannot find any other than Alt+F4 to close. I beleive we can leave Alt and Shift, there should be no change there.
That's a good idea. I am aiming to have the setting hidden for Windows and Linux and it only return Ctrl (CTRL_MASK), but for OS X it either returns Ctrl (CTRL_MASK) or Cmd (defaultMenuKeyMask()) depending on their choice.
We could add a note in tutorial saying that every use of Ctrl can be replaced by CMD for OS X.

I may have to make a similar method for the purpose of getting the name of the key used, as some tooltips refer to Ctrl.

Quick update: meta_mask appears to work for OS X now, which will make things a little easier.
No idea what I was doing before, but it's now simpler at least.

@danilovesky I have found an issue with panning.
By default Ctrl+directon-key is a command in OS X to move between desktop screens. This means that it doesn't work when Ctrl is selected as the menu shortcut in Workcraft on OS X. Shall I set it to be cmd by default only on Macs?

@jrbeaumont I think we should switch to Cmd completely as soon as it works smoothly. Maybe even without an option to use Ctrl...  I think we should have a function getMenuShotcut() in DesktopApi that returns Ctrl or Cmd depending on the OS.
If you feel it is ok to leave OSX users without a Ctrl/Cmd choice -- you can even do it even now. A lot of your recently added code will get redundant though :(

My thoughts were by giving the option for users who may have used it on OS X before, where Ctrl has been used by default before now, may want to go back to how they're used to. Switching it to cmd by default would make this code redundant, but that's not a problem :)
Which would you prefer? I can do either, no problem :)

Just while we make a decision on this, I have noticed that text boxes still use ctrl by default for things like select all and copy/cut and paste. I'll try and fix this.
In the mean time I have found and implemented a way to use both backspace and delete for deleting selected elements.

My repo currently implements CMD as default for shortcuts etc in OS X, which has not affected it on Windows, Linux is yet to be tested, but I assume it will work.  backspace works as well as delete to delete nodes on all platforms.
So far, for using cmd for shortcuts in text boxes, there is a fairly large issue. Mainly, there is no easy way to just ask them to replace Ctrl for CMD in the existing shortcuts. Nor is it apparently simple to remove existing shortcuts, and replace them with ones that perform the same operation but using CMD, at least not without removing all keybindings, which will mean you can't actually type in it without a process of replacing them all.
In this case, I suggest to simply just add CMD shortcuts on all text boxes on OS X, which will mean they should work in addition to the normal Ctrl shortcuts. Not a major issue, but at least there is the option.

@jrbeaumont I think the text box shortcuts can be set globally (in SilverOceanTheme class) as explained here:
http://stackoverflow.com/questions/7252749/how-to-use-command-c-command-v-shortcut-in-mac-to-copy-paste-text

@danilovesky So you can, I'll give this a try.
Thanks!

It may be better if I add this change (permanently) to SilverOceanTheme as I am significantly changing that class at the moment. @jrbeaumont could you try if it works on mac (as a temporary change)?

Yeah I will. Do you have any preference about where it goes in the class, so I can test it a bit closer to (future) reality?

Just put that code in the end of enable() method - it should do.

This doesn't appear to be working. I'm looking into it however.

Try moving the code to addCustomEntriesToTable...

So it appears that the InputMap you get from UIManager.get("TextField.focusInputMap") does already include the meta key in OS X, including things like Cut/Copy/Paste, but this isn't automatically added to any form of TextComponent.

I have done some tests, and it appears that the InputMap you get when in classes like CpogSelectionTool is different than the one you get when in SilverOceanTheme, so when setting up the theme, it aims to use CMD, but somewhere along the way it changes to using CTRL etc again.

@danilovesky Found it.
In LookAndFeelHelper, when line 59, UIManager.setLookAndFeel(laf); is called, this set's the standard key commands to use Ctrl etc.

@jrbeaumont What if you do it after LookAndFeelHelper.setDefaultLookAndFeel(); in MainWindow?

I have been testing it inside LookAndFeelHelper.setDefaultLookAndFeel(), and I have to reset the InputMap for both TextField.focusInputMap and TextArea.focusInputMap for larger text boxes, such as in the algebra plugin for CPOGs, to use CMD for shortcuts. This works great!

@danilovesky I have just added the functionality so the OS X menu bar is now used.
However, I have had to include a mac specific class, AquaMenuBarUI, as this is what specifies whether it stays in the JFrame or can be put into the native menu bar.
This class is included with Oracle java for OS X only as far as I can tell.
As I expected, this is causing issues when assembling, as obviously AquaMenuBarUI isn't standard. And looking at it build on travis (https://travis-ci.org/jrbeaumont/workcraft) you can what it's issues are.
I sensed this might be an issue, so is there a way we can include it? Or make it platform specific? Or shall we just remove it and not bother?

Never mind, I have found a way to avoid using specific classes, and builds correctly with gradle.
I'll test it on Windows tonight.


Wavelet must be shorter in time than the reflectivity.

Despite the wavelet length is shorter in time than the reflectivity, the following error is reaised:
TypeError: Wavelet must shorter in time than the reflectivity.
But the wavelet length is longer than the models width.
rc_10.shape
**(1240, 280)**

w.shape[-1]
**500**

syn = bg.filters.convolve(rc_10, w)

---------------------------------------------------------------------------
TypeError                                 Traceback (most recent call last)
~\AppData\Local\Temp/ipykernel_10356/425375434.py in <module>
----> 1 syn = bg.filters.convolve(rc_10, w)
      2
      3 syn.shape

C:\ProgramData\Anaconda3\envs\nova\lib\site-packages\bruges\filters\convolve.py in convolve(reflectivity, wavelet, axis)
     25     """
     26     if wavelet.shape[-1] > reflectivity.shape[axis]:
---> 27         raise TypeError("Wavelet must shorter in time than the reflectivity.")
     28
     29     reflectivity_ = np.moveaxis(np.asanyarray(reflectivity), axis, 0)

TypeError: Wavelet must shorter in time than the reflectivity.

If the models width is changed to be bigger as the wavelet length, there are no complains.

Thank you for sharing this @alettmann
I think the issue is that the convolve function considers 'time' to be the last axis (-1). If your data has 1240 time samples, then convolve(rc_10, w, axis=0) should do the trick.
Although it runs if you add traces (columns, in your case) to the model, the convolution result will be incorrect, because the wavelet will be passed 'sideways' across your model. Again, axis=0 should fix this.
(Alternatively, you could pass rc_10.T to the function, because that will move the time axis to the last position.)
Let me know how you get on!

This has been resolved (communication on Slack)


Notification server updates

update notification endpoint to include total_pages in output, and allow pagesize paramater to be passed in.  This brings the server in parallel with the C# notification implementation.
Also now page index starts at 1 rather than 0.  Passing in page=0 will convert to page 1.
How did you solve this problem?

added total_pages value to output.

How did you make sure your solution works?

tests

Please check the following, if applicable:

[x] Did you add any tests?
[x] Did you run make lint?
[x] Did you run make test?
[x] Are you making a PR to a feature branch or development rather than master?
[x] Did you add an entry to CHANGELOG.rst? (if not, please do)

Coverage increased (+0.02%) to 80.346% when pulling 43ba5755262647bc060c0f9c3ba655f2d4ea2b6e on notification-fixes into 19a786bb38681f79cfc097b34cb0e2ada8d52ec0 on development.


Add dynamically loading of solutions page

Router configured to work with /solution/id
Slight changes to React Router in index.js compared to current implementation
Example url http://localhost:3000/Solution/5bcf97463a50c440b9d616c8

Ok. done!


Assessory not appearing after registering the app with playstation .

After registering the app with Playstation and enabling remote support, I am asked to add the device manually in the Home app but no app accessory appears.
I've removed all config, including the mentioned folder in the docs and reinstalled everything but nothing seems to work.
I recently upgraded node to v20.11.0. Could this be an issue?
[2/26/2024, 2:50:59 PM] Homebridge v1.7.0 (HAP v0.11.1) (Homebridge 81C9) is running on port 52611. [2/26/2024, 2:50:59 PM] PS5-772 E3B9 is running on port 39661.
[2/26/2024, 2:50:59 PM] Please add [PS5-772 E3B9] manually in Home app. Setup Code: XXXXXXXX

OS
Ubuntu Jammy Jellyfish (22.04.2 LTS)

<IP_ADDRESS>

pi4

root

v20.11.0

/opt/homebridge/bin

/var/lib/homebridge

/var/lib/homebridge/config.json

/var/lib/homebridge/node_modules

GMT+0000

Yes

same problem here! Did you found a solution? It is worked correctly on mac, but i get this error on my raspberry pi.


Query: How can I add tap, pinch and zoom gestures to the canvas?

We want to add tap, pinch and zoom gestures for the image drawn inside the canvas.
Are there any event handlers for tap, pinch and zoom options?
Please let us know.

@sivaprasad-kiranum you have to implement it yourself. There is no shape detection yet.


Fix out of bound slice access in etchosts.go/Delete()

Fixes #966
Related to [docker/docker #20997] (https://github.com/docker/docker/issues/20997)
Signed-off-by: Santhosh Manohar<EMAIL_ADDRESS>

LGTM

LGTM


Implement fallback to ASN1_STRING_data

The version used of OpenSSL used by the opencsw project is too old and does not offer ASN1_STRING_get0_data. Implement falling back to ANS1_STRING_data instead. Also fixes sk_GENERAL_NAME_pop_free not being called if the subject alternative name matched previously. Apart from that, I also removed duplication of the common name, I'm not sure it adds useful debugging info.

@bilias, this slightly updates your work on #337. If you can spare the time, can you verify everything still works for you? Thanks in advance.

The person reporting the error via email confirmed NSD compiles on Solaris again with both GCC and the Sun compiler, so we're good there.

@k0ekk0ek
Just tested https://github.com/k0ekk0ek/nsd/tree/test-for-asn1-string-get0-data
and it passed my tests both for allow and deny access depending on certificate (CN and SAN).
Code looks good to me and I like the simplification of the code after your changes.

Thanks for testing @bilias!

@k0ekk0ek
My only concern is the removal of those DEBUG statements, especially after reading Andreas mail and his last two mentioned notes.
Trying to find out why TLS-auth does not work can be tricky some times, especially with the default output log of openssl which sucks (in my opinion). That's why I did all that fuzz and added all those extra DEBUG.
Maybe some errors deserve a (better) VERBOSITY log.

@bilias, I've created a separate issue for it (#369) and we can do it for the next release. The resource leak and build issue on Solaris have been fixed, so I'd like to focus on 4.10.1 first.


python310Packages.python-http-client: 3.3.4 -> 3.3.5

Motivation for this change
https://github.com/sendgrid/python-http-client/releases/tag/3.3.5
Things done

Built on platform(s)

[x] x86_64-linux
[ ] aarch64-linux
[ ] x86_64-darwin
[ ] aarch64-darwin

[ ] For non-Linux: Is sandbox = true set in nix.conf? (See Nix manual)
[ ] Tested, as applicable:

NixOS test(s) (look inside nixos/tests)
and/or package tests
or, for functions and "core" functionality, tests in lib/tests or pkgs/test
made sure NixOS tests are linked to the relevant packages

[ ] Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
[ ] Tested basic functionality of all binary files (usually in ./result/bin/)
22.05 Release Notes (or backporting 21.11 Release 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
[ ] (Release notes changes) Ran nixos/doc/manual/md-to-db.sh to update generated release notes

[x] Fits CONTRIBUTING.md.

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

4 packages built:

python310Packages.python-http-client
python310Packages.sendgrid
python39Packages.python-http-client
python39Packages.sendgrid


chore: promote test15 to version 0.0.7

chore: promote test15 to version 0.0.7
this commit will trigger a pipeline to generate the actual kubernetes resources to perform the promotion which will create a second commit on this Pull Request before it can merge

[APPROVALNOTIFIER] This PR is NOT APPROVED
This pull-request has been approved by:
To complete the pull request process, please assign q1323829945
You can assign the PR to them by writing /assign @q1323829945 in a comment when ready.
The full list of commands accepted by this bot can be found here.

Needs approval from an approver in each of these files:

OWNERS

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

@q1323829945: The following test failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

verify
e7e4609684973b5746e9fdd8b26384469e837873
link
/test verify

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the jenkins-x/lighthouse repository. I understand the commands that are listed here.


using args makes it difficult to directly re-run tests

bazel build //my:hello_test
cd bazel-bin/my/hello_test.runfiles
./hello_test # error
./hello_test ./hello_test.py # works

Also, if you try and embed the test inside some other rule, the args are lost/unavailable.
So... can the args be embedded as data into one of the wrappers instead?

I cobbled this together. it's a bit hacky because it's my first time writing starlark:
`def _os_environ(envs):
¦ # expand shell-like ${ENV} into python code +os.environ.get("ENV", "")+
¦ expanded = []
¦ for e in envs:
¦ ¦ ¦ expanded.append(e.replace("$$XML_OUTPUT_FILE", '" + os.environ.get("XML_OUTPUT_FILE", "") + "'))
¦ return expanded
def _wrapper_pytest_impl(ctx):
¦ # store pytest args in an expanded template of wrapper_pytest.py
¦ output = ctx.actions.declare_file(ctx.attr.name)
¦ _args = '"' + "", "".join(_os_environ(ctx.attr.args) + [x.path for x in ctx.files.srcs]) + '"'  # quoted
¦ ctx.actions.write(
¦ ¦ ¦ output = output,
¦ ¦ ¦ content = """# -- coding: utf-8 --
import os
import sys
import pytest
TODO: find/cd into runfiles tree for direct user execution?
args = [""" + _args + """]
if name == "main":
¦ sys.exit(pytest.main(args + sys.argv[1:]))
""",
¦ ¦ ¦ is_executable = True,
¦ )
¦ return [DefaultInfo(
¦ ¦ ¦ files = depset([output]),
¦ )]
wrapper_pytest = rule(
¦ implementation = _wrapper_pytest_impl,
¦ attrs = {
¦ ¦ ¦ "srcs": attr.label_list(allow_files = True),
¦ ¦ ¦ "args": attr.string_list(),
¦ ¦ ¦ "output": attr.output(),
¦ },
)
`
and inside my pytest macro:
`
¦ ¦ ¦ wrapper_pytest(
¦ ¦ ¦ ¦ ¦ # store args in a generated file named/executed by native.py_test(main=)
¦ ¦ ¦ ¦ ¦ name = name + "-pytest.py",
¦ ¦ ¦ ¦ ¦ args = initial_args + args,
¦ ¦ ¦ ¦ ¦ srcs = srcs,
¦ ¦ ¦ )
¦ ¦ ¦ native.py_test(
¦ ¦ ¦ ¦ ¦ name = name,
¦ ¦ ¦ ¦ ¦ srcs = [
¦ ¦ ¦ ¦ ¦ ¦ ¦ name + "-pytest.py",
¦ ¦ ¦ ¦ ¦ ] + srcs,
¦ ¦ ¦ ¦ ¦ main = ":" + name + "-pytest.py",
¦ ¦ ¦ ¦ ¦ args = [],
¦ ¦ ¦ ¦ ¦ python_version = "PY3",
¦ ¦ ¦ ¦ ¦ srcs_version = "PY3",
¦ ¦ ¦ ¦ ¦ deps = deps + pytest_dependencies,
¦ ¦ ¦ ¦ ¦ data = [
¦ ¦ ¦ ¦ ¦ ¦ ¦ "//:.pylintrc",
¦ ¦ ¦ ¦ ¦ ¦ ¦ "//:pyproject.toml",
¦ ¦ ¦ ¦ ¦ ¦ ¦ "//:pytest.ini", # ymmv, this is how we standardized the ini file
¦ ¦ ¦ ¦ ¦ ] + data,
¦ ¦ ¦ ¦ ¦ **kwargs
¦ ¦ ¦ )
`
(sorry about the |'s, I haven't customized my vimrc yet)
sample generated wrapper:
`
$ cat bazel-bin/experimental/sleep_test-pytest.py
-- coding: utf-8 --
import os
import sys
import pytest
TODO: find/cd into runfiles tree for direct user execution?
args = ["--junitxml=" + os.environ.get("XML_OUTPUT_FILE", "") + "", "experimental/sleep.py"]
if name == "main":
sys.exit(pytest.main(args + sys.argv[1:]))
`
So far I've only tested one of our pytests with this code, but our presubmits are checking our whole code base wrt this change to every last pytest.

lol, backtick for a code block doesn't prevent markdown. but it should make sense to you.

Use triple backticks for code blocks, it looks much better. I updated your example.

FYI, our codebase works with this change, but quoting is now strict. i.e. I had to edit our BUILD files like this:
As a side effect, shell is no longer involved in quoting, so py_test(args=[]) should now be strict ala python subprocess.Popen([cmd, args...]):
 args = [

   "-k='test_ping'",

   "-k=test_ping",

],

Bazel documentation says that args= is subject to $(location) and "Make variable" substitution. That is no longer true with this implementation, which is likely to be an issue for some users. i.e. the os.environ hack I have in the python replicating "Make variable" substitution.
So the concept works, but doesn't match py_test(args=[]) documentation/expectations.


Prediction on DHF1K

I am new to saliency problem, i want to generate the saliency map similar to the labels , i tried normalizing and multiplying with 255.
this is what the output looks like. Using your weight : STSANet_DHF1K.pth.

It would be great if you can give some guidance regrading this. Thanks

Hi,
You can refer to the following function to save the prediction.
def save_prediction(prediction, save_name, save_size=(384, 224)):
    prediction = prediction.cpu().squeeze().clone().numpy()
    prediction = cv2.resize(prediction, save_size)
    prediction_norm = (prediction - np.min(prediction)) / (
            (np.max(prediction) - np.min(prediction) + 0.00001) * 1.0)
    prediction_norm = np.round(prediction_norm * 255 + 0.5)
    prediction_norm = np.asarray(prediction_norm, dtype=np.uint8)
    cv2.imwrite(save_name, prediction_norm)

Also, the keys in the weight "STSANet_DHF1K.pth" have the prefix "module.", so if you don't use "torch.nn.DataParallel", you need to remove the prefix when loading the weight like:
weights = torch.load('STSANet_DHF1K.pth')
weights = {k.split('module.')[1]: v for k, v in weights.items()}

Best,


Integration with Register & Resolver Drivers

Hi,
I've been performing tests with this component, as well as the did-sov-drivers for DID registering & resolvance. When using the same Von-Network for both services (sharing the same seed & wallet_name for the aca-py agent, and the registry driver), after registering a new DID through the driver, I'm unable to query said DID on the agent's wallet.
Are the aca-py agents currently only able to query for their created private DIDs, stored on their wallets? Thank you in advance.

Sorry this didn't get answered.  I think what you are asking is whether an ACA-Py agent can control (e.g. have the private key of) an existing DID on a ledger.  If so, the answer is yes.  You need to pass in the seed for the DID using the SEED startup parameter for a public DID.  When that is done, the ACA-Py agent checks it's wallet to see if the DID is there and if not, creates it.  Then it checks the ledger on which the DID is expected to be, and if it doesn't exist, it creates it. If it does exist, it assumes that it matches the DID it created in its wallet.  These initialization scenarios are used all the time and are very reliable.


Carry PR #301: usernames_as_github_logins

This is #301.
Credit: @phase

Thanks! Already in 1.13.0!


Chinese anchors cannot be jumped to

For example, click the side bar item #问题反馈 on https://docs.snipaste.com/zh-cn, the page cannot jump to the corresponding position, and the console reports:
docsify.min.js:1 Uncaught DOMException: Failed to execute 'querySelector' on 'Document': '#%E8%B7%A8%E5%B9%B3%E5%8F%B0%E6%94%AF%E6%8C%81' is not a valid selector.(…)

I don't if this is a bug, or I should write it in another way?


is there a way to detect if the token used is correct or not ?

Steps to reproduce
(First please check that this issue is not already solved as described
here)

[ ] Tell us what broke. The more detailed the better.
[ ] If you can, please create a simple example that reproduces the issue and link to a gist, jsbin, repo, etc.

Expected behavior
Tell us what should happen
Actual behavior
Tell us what happens instead
System configuration
Tell us about the applicable parts of your setup.
Module versions (especially the part that's not working):
NodeJS version:
Operating System:
Browser Version:
React Native Version:
Module Loader:

The app.passport.verifyJWT method is documented here. The secret required is usually located in app.get('authentication').secret.


fix(formula): add r_tree for dependency and fix bug

To enhance dependency computation performance, introduce R-tree.
close #2066
close https://github.com/dream-num/univer-pro/issues/2413
close https://github.com/dream-num/univer-pro/issues/1672
close https://github.com/dream-num/univer-pro/issues/2621
close https://github.com/dream-num/univer-pro/issues/1536
close https://github.com/dream-num/univer-pro/issues/2447
close https://github.com/dream-num/univer-pro/issues/2428

Pull Request Checklist

[x] Related tickets or issues have been linked in the PR description (or missing issue).
[x] Naming convention is followed (do please check it especially when you created new plugins, commands and resources).
[x] Unit tests have been added for the changes (if applicable).
[x] Breaking changes have been documented (or no breaking changes introduced in this PR).

@Dushusir #2428 1、单元格先输入%，再输入 =1%计算不出结果
2024_10_9 11_10_36 video.webm


epoll note

issue #106 exposed dep issues with eopoll on OSX / Windows / etc.
epoll currently is class code currently lives behind (excessive) #ifdef linux guard.
removing the global guard and replacing it with #include specific and class stubs may provide a solution for temporary installation success and error messages on unsupported platforms.
os support for platforms in the epoll package left for another day.

@johntalton thanks. I'll merge this asap. I may reword it a little if you don't mind.


⚠ Bofrost.at has degraded performance

In a462e8e, Bofrost.at (https://www.bofrost.at) experienced degraded performance:

HTTP code: 200
Response time: 2136 ms

Resolved: Bofrost.at performance has improved in 08df822.


What this PR does / why we need it:
Harden down a bunch of calls that touch the network, and thus could fail.
Special notes for your reviewer:
Release note:
Add a bunch of retry to curl and apt-get calls.

This PR has overlaps with https://github.com/Azure/acs-engine/pull/2160

Closing in favor of #2160.


SLANG_hack_samplerForTexelFetch binding collides with user declared objects

Is SLANG_hack_samplerForTexelFetch hardcoded to use set=0, binding=0?
It collides with other user declarations.
TextRenderer.fs.slang is one example

Hard-coded yes. Does it lead to compilation failures?
I can compute a non-colliding binding for it.
Have you found that if needs a sampler bound?

No, is successfully compiles to SPIR-V.
I don't see anything in the Vulkan spec that forbids such behavior. vkUpdateDescriptorSets accepts the descriptor type, so perhaps a bind-location is defined by the index and the type, but I couldn't find it in the spec.
The problem is that the debug layer spits an error. Perhaps it's a bug in their code.
As for the other question - I don't see it in the reflection and I don't bind anything to that slot, so I guess it's not an issue

We now generate a unique binding for this "hack" sampler, and report it through reflection.
I'm going to close this specific issue, but it is clear that long term we need to eliminate the need for this sampler altogether, which requires work inside glslang (see glslang issue 1003)


Add the ability to revert/discard an already saved work or collection in the database to the previous state it had when last deposited

Users need to be able to revert a version draft, which would set it back to the last deposited state, thereby removing any changes they made in the version.
Since some changes take effect immediately, and since the work or collection is immediately saved in the database when the user clicks the save draft button, this may require some versioning of database rows and other changes.

I believe this is a duplicate of #26

I believe this is a duplicate of #26

These look like duplicates to me as well.

These look like duplicates to me as well.

Also see #794 for collections

Also see #794 for collections

@amyehodge Should the managers, depositors, and reviewers of a Collection be versioned as well?  That is should they not take effect until the collection is versioned?

@amyehodge @astridu do we have mock-ups for the user interface component of this?

@jcoyne I don't think anything is needed for items. For collections, @astridu is working on the mockups. I was planning to file a separate ticket for that, but let me know if it should go here.


Allow delimiters for output from Stdin

On running the following command
ps |rich - -m

I got the following output
┌───────────────────────────────────────────────────────────────────────────────────────────────────────────────────┐
│ PID TTY          TIME CMD                                                                                │
└───────────────────────────────────────────────────────────────────────────────────────────────────────────────────┘
6697 pts/1    00:00:00 bash 6722 pts/1    00:00:36 fish 50260 pts/1    00:00:00 ps 50261 pts/1    00:00:00 rich

So rich-cli is able to inspect the first line (header) correctly, but not the subsequent lines.
Without rich-cli, I got the following output:
$ ps
    PID TTY          TIME CMD
   6697 pts/1    00:00:00 bash
   6722 pts/1    00:00:37 fish
  50453 pts/1    00:00:00 ps

Tested with commands like netstat.
One possible solution could be to allow the users to specify the delimiters.
I am wondering whether this could be a bug, since rich-cli is able to detect the first line.

Why are you rendering the output of ps as markdown? What output are you expecting?

As a table.

The output of ps isn't markdown, so I'm not surprised it wouldn't render. The output can't be markdown and CSV at the same time (the combination of those two switches should really be an error).
The output isn't a CSV either. So I'm afraid there is not much that rich-cli can do about that.

Just found this while looking for something similar, so just wanted to post a workaround to how to use rich-cli to nicely format ps output.

first remove the spaces before PID column by something like sed 's/\s*PID/PID/i'
then replace all blank space with , with trto make output CSV-like
then pipe it to rich-cli with --csv option

ps \
  | sed 's/\s*PID/PID/i' \
  | tr -s '[:blank:]' ',' \
  | rich - --csv

Outputs:
┏━━━━━━━┳━━━━━━━━┳━━━━━━━━━━┳━━━━━━┓
┃   PID ┃ TTY    ┃ TIME     ┃ CMD  ┃
┡━━━━━━━╇━━━━━━━━╇━━━━━━━━━━╇━━━━━━┩
│ 14142 │ pts/19 │ 00:00:00 │ ps   │
│ 14143 │ pts/19 │ 00:00:00 │ sed  │
│ 14144 │ pts/19 │ 00:00:00 │ tr   │
│ 14145 │ pts/19 │ 00:00:00 │ rich │
│ 22162 │ pts/19 │ 00:00:01 │ bash │
└───────┴────────┴──────────┴──────┘

For completeness, since I just looked at the same thing for kubectl output:
kubectl get pods | tr -s '[:blank:]' ',' | rich - --csv

Outputs your pods with Rich CSV table formatting as:
┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━┳━━━━━━━━━┳━━━━━━━━━━┳━━━━━┓
┃ NAME                                                    ┃ READY ┃ STATUS  ┃ RESTARTS ┃ AGE ┃
┡━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━╇━━━━━━━━━╇━━━━━━━━━━╇━━━━━┩
│ cert-manager-cainjector-abcdefghij-54321                │ 1/1   │ Running │        0 │ 11h │
│ cert-manager-klmnopqrs-12345                            │ 1/1   │ Running │        1 │ 11h │
│ cert-manager-webhook-fedcba9876-6565                    │ 1/1   │ Running │        0 │  5h │
│ nginx-ingress-ingress-nginx-controller-123456789a-bcdef │ 2/2   │ Running │        0 │ 11h │
│ nginx-ingress-ingress-nginx-controller-123456789a-fedcb │ 2/2   │ Running │       42 │ 15h │
└─────────────────────────────────────────────────────────┴───────┴─────────┴──────────┴─────┘

It could of course be nice if rich-cli had an option to also accept white space separated output tables directly (like we get from a lot popular of command line tools, like docker, kubectl, ps, etc.), e.g.:
kubectl get pods | rich - --table

Or as I interpret the initial question/suggestion in this issue:
kubectl get pods | rich - --separator=whitespace

Anyways, thanks for a very nice CLI tool! :+1:

Thanks @audunsol for your solution. I like to see the output of ps in colors, thanks to rich-cli. Thanks @willmcgugan for this work.
.
I want to test with other Linux commands.
Yes, I was looking for something similar to rich - --separator=whitespace

The above cool way to format ps output using rich did not work for me. That is because my process ids were not all the same length so the tr put some commas at the beginning of some lines which made the output not valid csv.
I modified the sed part to remove all leading and trailing whitespace from all lines. That seemed to work:
ps | sed 's/^[ \t]*//;s/[ \t]*$//' | tr -s '[:blank:]' ',' | rich - --csv


ClusterExternalSecret Inactive/Not Working

After creating the ClusterExternalSecret, nothing happens. No change in status to the ClusterExternalSecret. No creation of an ExternalSecret. No creation of a K8S secret. No noticeable response from the controller pod logs.
apiVersion: external-secrets.io/v1beta1
kind: ClusterExternalSecret
metadata:
  name: runtime-config
spec:
  externalSecretName: "runtime-config-es"
  refreshTime: 5s
  namespaceSelector:
    matchLabels:
      externalsecrets: enabled
  externalSecretSpec:
    secretStoreRef:
      name: cluster-secretstore-aws
      kind: ClusterSecretStore
    refreshInterval: 5s
    target:
      name: runtime-config
      creationPolicy: Owner
    data:
      - secretKey: COMMON_FREETRIAL_API_KEY
        remoteRef:
          key: common/COMMON_FREETRIAL_API_KEY

$ ku get ClusterExternalSecret
NAME                  AGE
runtime-config   22m

$ ku describe ClusterExternalSecret runtime-config
Name:         runtime-config
Namespace:
Labels:       <none>
Annotations:  <none>
API Version:  external-secrets.io/v1beta1
Kind:         ClusterExternalSecret
Metadata:
  Generation:          1
  Managed Fields:
    API Version:  external-secrets.io/v1beta1
    Fields Type:  FieldsV1
    fieldsV1:
      f:metadata:
        f:annotations:
          .:
          f:kubectl.kubernetes.io/last-applied-configuration:
      f:spec:
        .:
        f:externalSecretName:
        f:externalSecretSpec:
          .:
          f:data:
          f:refreshInterval:
          f:secretStoreRef:
            .:
            f:kind:
            f:name:
          f:target:
            .:
            f:creationPolicy:
            f:deletionPolicy:
            f:name:
        f:namespaceSelector:
          .:
          f:matchLabels:
            .:
            f:es:
        f:refreshTime:
    Manager:         kubectl-client-side-apply
    Operation:       Update
    Time:            2022-03-23T23:04:09Z
  Resource Version:  355091728
  UID:               159c762e-4201-421d-a626-3b8bc7154ad2
Spec:
  External Secret Name:  runtime-config-es
  External Secret Spec:
    Data:
      Remote Ref:
        Conversion Strategy:  Default
        Key:                  common/COMMON_FREETRIAL_API_KEY
      Secret Key:             COMMON_FREETRIAL_API_KEY
    Refresh Interval:         5s
    Secret Store Ref:
      Kind:  ClusterSecretStore
      Name:  cluster-secretstore-aws
    Target:
      Creation Policy:  Owner
      Deletion Policy:  None
      Name:             runtime-config
  Namespace Selector:
    Match Labels:
      externalsecrets:        enabled
  Refresh Time:  5s
Events:          <none>

Noticed that the controller startup doesn't seem to include reconciler for ClusterExternalSecret.
{"level":"info","ts":1648078007.3545947,"logger":"controller-runtime.metrics","msg":"Metrics server is starting to listen","addr":":8080"}
{"level":"info","ts":1648078007.355407,"logger":"setup","msg":"starting manager"}
{"level":"info","ts":1648078007.3557103,"msg":"Starting server","path":"/metrics","kind":"metrics","addr":"[::]:8080"}
{"level":"info","ts":1648078007.3558464,"logger":"controller.secretstore","msg":"Starting EventSource","reconciler group":"external-secrets.io","reconciler kind":"SecretStore","source":"kind source: *v1alpha1.SecretStore"}
{"level":"info","ts":1648078007.3558762,"logger":"controller.secretstore","msg":"Starting Controller","reconciler group":"external-secrets.io","reconciler kind":"SecretStore"}
{"level":"info","ts":1648078007.3560848,"logger":"controller.externalsecret","msg":"Starting EventSource","reconciler group":"external-secrets.io","reconciler kind":"ExternalSecret","source":"kind source: *v1alpha1.ExternalSecret"}
{"level":"info","ts":1648078007.356121,"logger":"controller.externalsecret","msg":"Starting EventSource","reconciler group":"external-secrets.io","reconciler kind":"ExternalSecret","source":"kind source: *v1.PartialObjectMetadata"}
{"level":"info","ts":1648078007.3561246,"logger":"controller.externalsecret","msg":"Starting Controller","reconciler group":"external-secrets.io","reconciler kind":"ExternalSecret"}
{"level":"info","ts":1648078007.3562586,"logger":"controller.clustersecretstore","msg":"Starting EventSource","reconciler group":"external-secrets.io","reconciler kind":"ClusterSecretStore","source":"kind source: *v1alpha1.ClusterSecretStore"}
{"level":"info","ts":1648078007.3562777,"logger":"controller.clustersecretstore","msg":"Starting Controller","reconciler group":"external-secrets.io","reconciler kind":"ClusterSecretStore"}
{"level":"info","ts":1648078007.456963,"logger":"controller.clustersecretstore","msg":"Starting workers","reconciler group":"external-secrets.io","reconciler kind":"ClusterSecretStore","worker count":1}
{"level":"info","ts":1648078007.456936,"logger":"controller.secretstore","msg":"Starting workers","reconciler group":"external-secrets.io","reconciler kind":"SecretStore","worker count":1}
{"level":"info","ts":1648078007.4569533,"logger":"controller.externalsecret","msg":"Starting workers","reconciler group":"external-secrets.io","reconciler kind":"ExternalSecret","worker count":2}

We're using the default helm install with --set concurrent=2. There don't appear to be any associated chart values or arguments examples within the repo for including the missing reconciler to the startup?

Uninstalled helm chart and had to manually removed the CRD for clusterexternalsecrets.external-secrets.io. Reinstalled and found that clusterexternalsecret crd is not being included.
$ helm -n devops install externalsecrets external-secrets/external-secrets --set concurrent=2 --set installCRDs=true
NAME: externalsecrets
LAST DEPLOYED: Wed Mar 23 17:49:41 2022
NAMESPACE: devops
STATUS: deployed
REVISION: 1
TEST SUITE: None
NOTES:
external-secrets has been deployed successfully!

In order to begin using ExternalSecrets, you will need to set up a SecretStore
or ClusterSecretStore resource (for example, by creating a 'vault' SecretStore).

More information on the different types of SecretStores and how to configure them
can be found in our Github: https://github.com/external-secrets/external-secrets
$ ku get crd
NAME                                         CREATED AT
clustersecretstores.external-secrets.io      2022-03-23T23:49:49Z
externalsecrets.external-secrets.io          2022-03-23T23:49:48Z
secretstores.external-secrets.io             2022-03-23T23:49:48Z

Hi @cazter ! That’s because ClusterExternalSecrets has not been released!
if you want to give it a try though, you can manually install the controller from the main branch.

Expect ClusterExternalSecrets to be available in v0.5.0. We are expecting to release it in two weeks. If you have any further questions, feel free to reopen this issue!

IF I SEE CRD, I INSTALL. Hah, only kidding. Thanks for clearing this up.


Lab3: Implement letter frequency solution and tests

Fixes #519
Review of colleague's PR #tba
Changes proposed in this PR:
- Implement letter frequency solution and tests

@anzdaddy thank you for reviewing my PR. I have made all changes requested.


unmanagedhosts

Hello,
I have a question about unmanagedhosts data bags. The doc says Similar to services, you may also filter unmanaged hosts by environment., but the code in _load_databag_config.rb does something different:
  if node['nagios']['multi_environment_monitoring']
    envs = node['nagios']['monitored_environments']
    next if item['environment'].nil? || !envs.include?(item['environment'])
  else
    next if item['environment'].nil? || item['environment'] != node.chef_environment
  end

If there is no environment set for the host it will never be added. Is this a bug or am I understanding the doc wrong?
Thanks.

As best I can tell, this is expected behavior. It makes use of this cookbook for chef-solo environments, with no chef server enabled but a list of well defined nodes in a local git repository, quite difficult.

+1 this is a bug because it's unreasonable behavior having to do with the handling of multiple environments

+1 this is a bug. In my case I was not using the environments and this was working as expected previously.
I worked around the issue by updating data bag item with:
"environment": "_default",
since node.chef_environment is _default .
next if item['environment'].nil? || item['environment'] != node.chef_environment.


Add CIFlow tracking issue parsing logic

Use CachedIssueTracker primitive to read and parse tracked issue
Use nockTracker to simulate fake tracking issue
Replace jest.spyOn(...).mockResolvedValue() with actual parsing of configs
TODO:

Move untracked project test to integration tests

Fixes https://github.com/pytorch/pytorch-probot/issues/56

Use CachedIssueTracker primitive to read and parse tracked issue
Use nockTracker to simulate fake tracking issue
Add ciflow-parse.test.js
Replace jest.spyOn(...).mockResolvedValue() with actual parsing of configs
Fixes #56


change visibility of DocumentDeletionResult

Change the visibility of DocumentDeletionResult, so its fields can be accesses from outside milli.

@Kerollmops I fixed fmt :)


input value not updated on initialisation.

When the element first gets focus, setDefaultHours() is invoked without updating the input element's value, resulting in the UI showing default hours:mins:seconds while the input element's value has the current time.
Screenshot:

Repro:
https://jsfiddle.net/cunneen/akzjgdf8/7/
Your Environment

flatpickr version used: 4.6.3
Browser name and version: Safari 13.0.4 (146<IP_ADDRESS>.4)
OS and version: MacOS Mojave 10.14.6 (18G1012)

Is that bug fixed? I have same problem. How to fix it?


doc(icons) : embed material icons

Documentation
This is not the recommended approach to add material icons
But if like me, you have a corporate environment where users are using IE with compatibility mode ON by default, and you realize icons are not rendering at all, you'lI have to include the material icons in your project.
I don't know if this is the right place to drop this but i'll do it here if anyone needs it.

install: npm i --save material-design-icons

add to your angular-cli.json along with other config :

{
"apps": [
    "assets": [
       {
          "glob": "MaterialIcons-Regular.woff",
          "input": "../node_modules/material-design-icons/iconfont/",
          "output": "assets/fonts/"
        },
        {
          "glob": "MaterialIcons-Regular.woff2",
          "input": "../node_modules/material-design-icons/iconfont/",
          "output": "assets/fonts/"
        },
        {
          "glob": "MaterialIcons-Regular.ttf",
          "input": "../node_modules/material-design-icons/iconfont/",
          "output": "assets/fonts/"
        },
        {
          "glob": "MaterialIcons-Regular.eot",
          "input": "../node_modules/material-design-icons/iconfont/",
          "output": "assets/fonts/"
        }
    ]
]
}

And add this to your main stylesheet:

@font-face {
    font-family: 'Material Icons';
    font-style: normal;
    font-weight: 400;
    src: url('/assets/fonts/MaterialIcons-Regular.eot');
    /* For IE6-8 */
    src: local('Material Icons'), local('MaterialIcons-Regular'), url('/assets/fonts/MaterialIcons-Regular.woff2') format('woff2'), url('/assets/fonts/MaterialIcons-Regular.woff') format('woff'), url('/assets/fonts/MaterialIcons-Regular.ttf') format('truetype');
}

.material-icons {
    font-family: 'Material Icons';
    font-weight: normal;
    font-style: normal;
    font-size: 24px;
    /* Preferred icon size */
    display: inline-block;
    line-height: 1;
    text-transform: none;
    letter-spacing: normal;
    word-wrap: normal;
    white-space: nowrap;
    direction: ltr;
    /* Support for all WebKit browsers. */
    -webkit-font-smoothing: antialiased;
    /* Support for Safari and Chrome. */
    text-rendering: optimizeLegibility;
    /* Support for Firefox. */
    -moz-osx-font-smoothing: grayscale;
    /* Support for IE. */
    font-feature-settings: 'liga';
}

Rgds,

Closing this since it doesn't actually track an issue. I'm not entirely sure where an appropriate place for it would be.

@jelbourn What about the "Guides" section on the homepage?


Grad Clip in FSDP

Hi,
I have a query. Why do you use torch's own _clip_grad_norm function here? https://github.com/pytorch/torchtune/blob/main/recipes/full_finetune_distributed.py#L781-L784
                        if self._clip_grad_norm is not None:
                            grad_norm = torch.nn.utils.clip_grad_norm_(
                                self._model.parameters(),
                                max_norm=float(self._clip_grad_norm),
                            )

Since it's a FSDP wrapped model, shouldn't we be calling FSDP's own clip_grad func()? i.e.:
                       if self._clip_grad_norm is not None:
                            grad_norm = self.model.clip_grad_norm_(
                                max_norm=float(self._clip_grad_norm),
                            )

I believe this is done since the models are wrapped using the FSDP2 fully_shard API rather than FSDP (FullyShardedDataParallel), the former being compatible (as e.g. DDP) with the default clip_grad_norm_ (excluding the case of pipeline parallelism).

@ishitamed19 thanks for creating the issue. It's as @mirceamironenco said, FSDP2-wrapped models will utilize DTensors which have their own implementation of common ops (e.g. _NormPartial, which is used in nn.utils.clip_grad_norm_). You can also see torchtitan's docs on FSDP2 here: they explicitly mention that with FSDP2 you should use nn.utils.clip_grad_norm_

@mirceamironenco @ebsmothers Oh I see. Thanks for the quick response! :)


Better support for cibuildwheel config in pyproject.toml

Currently the two publish workflows create jobs which set CIBW_BUILD and CIBW_ARCHS environment variables depending on the list of targets specified as an input to this workflow. These environment variables override any cibuildwheel config for build or archs set in pyproject.toml. (It should at least be documented that the publish workflows do not support build or archs within pyproject.toml.)
A fix would be to update tools/load_build_targets.py to parse pyproject.toml for build and archs configuration, and merge/adjust/replace the targets specified as an input to this workflow with the pyproject.toml config. I think the simplest solution would be to support either build config in pyproject.toml OR the targets workflow input.

Could we "just" make targets optional? Then we wouldn't have to parse pyproject and just let cibuildwheel handle it?


Load Point IDs not fix

Describe the bug
In my installation I use two different charger. They will be chown in MQTT as charger with load point id "1" and "2".
If I kommt out the first charger, then the 2nd charger reports with ID1.
This leads to integration issues with Home Assistance because the setup is mixed up.
Steps to reproduce

configure two chargers and give them two different name
start evcc and check MQTT messages
memorize names in positions
comment out the first charger and restart
check MQTT messages. you will find the 2nd charger report with ID 1.

Two ideas:

use charger name in MQTT report
introduce a "disabled" attribute, to keep the list unchanged

(btw. I have to comment the charger out because EVCC will not start if it's not connected.)
Configuration details
- name: Mobile_Charger
  type: template
  template: vestel
  modbus: tcpip
  id: 255
  host: <IP_ADDRESS>
  port: 502
- name: Vestel_EVC04
  type: template
  template: vestel
  modbus: tcpip
  id: 255
  host: <IP_ADDRESS>
  port: 502

Log details
..

What type of operating system are you running?
Linux
Version
0.122.1

Why do you have configured the same physical charger with different names?

Thanks for the hint. It was just a copy+paste error. These are two different devices.

Hi, did you change anything? Or why is this issue closed?


⚠ RPC server - Arbitrum has degraded performance

In 1dc8154, RPC server - Arbitrum ($ARBITRUM_RPC_URL) experienced degraded performance:

HTTP code: 0
Response time: 0 ms

Resolved: RPC server - Arbitrum performance has improved in e1dcfec.


Baked Lighting

Godot version:
3.0.5 64 bits
OS/device including version:

Intel Core i5-6200U
Intel HD Graphics 520
12 GB RAM
Windows 10

Issue description:
I've been testing Baked Lighting recently and found quite a lot of odd stuff.

When

Using the unwrap mesh Uv2 for lightmap baking option and then baking the scene
Unwrapping Uv2 from Blender and then baking
Unwrapping Uv2 from Blender and then re-importing with Gen-light enabled
Trying to bake an instanced scene

Something like shown in the screenshot happens:

Not nice, not expected at all.
But if I only enable gen-lighting on re-import this happens:

Nice and expected

Other problem is that I can't actually bake big scenes (with a lot of polygons in some objects) using objects without Uv2 and with Gen-light enabled, as I always get this message:
(...)
DECOMPRESSING!!!!
ERROR: Vector::resize: Condition ' !_ptrnew ' is true. returned: ERR_OUT_OF_MEMORY
At: c:\projects\godot-builds\godot\core\vector.h:296
CrashHandlerException: Program crashed
Dumping the backtrace. Please include this when reporting the bug on https://github.com/godotengine/godot/issues
[0] <couldn't map PC to fn name>
[1] <couldn't map PC to fn name>
[2] <couldn't map PC to fn name>
[3] <couldn't map PC to fn name>
[4] <couldn't map PC to fn name>
[5] <couldn't map PC to fn name>
[6] <couldn't map PC to fn name>
[7] <couldn't map PC to fn name>
[8] <couldn't map PC to fn name>
[9] <couldn't map PC to fn name>
[10] <couldn't map PC to fn name>
[11] <couldn't map PC to fn name>
[12] <couldn't map PC to fn name>
[13] <couldn't map PC to fn name>
[14] <couldn't map PC to fn name>
[15] <couldn't map PC to fn name>
[16] <couldn't map PC to fn name>
[17] <couldn't map PC to fn name>
[18] <couldn't map PC to fn name>
[19] <couldn't map PC to fn name>
[20] <couldn't map PC to fn name>
[21] <couldn't map PC to fn name>
[22] <couldn't map PC to fn name>
[23] <couldn't map PC to fn name>
[24] <couldn't map PC to fn name>
[25] <couldn't map PC to fn name>
[26] <couldn't map PC to fn name>
[27] <couldn't map PC to fn name>
[28] <couldn't map PC to fn name>
[29] <couldn't map PC to fn name>
[30] <couldn't map PC to fn name>
[31] <couldn't map PC to fn name>
[32] <couldn't map PC to fn name>
[33] <couldn't map PC to fn name>
[34] <couldn't map PC to fn name>
[35] <couldn't map PC to fn name>
[36] <couldn't map PC to fn name>
[37] CallWindowProcW
[38] CallWindowProcW
[39] glDebugEntry
[40] CallWindowProcW
[41] DispatchMessageW
[42] <couldn't map PC to fn name>
[43] <couldn't map PC to fn name>
[44] <couldn't map PC to fn name>
[45] <couldn't map PC to fn name>
[46] <couldn't map PC to fn name>
[47] BaseThreadInitThunk
-- END OF BACKTRACE --
I only could bake the scene using the capture and bake Cell sizes to 64, with low quality cone-tracing
A suggestion is that we could load our previously baked lightmaps into godot, as I actually tried trying to hack my way into make it work (replacing files), but it didn't work.
Steps to reproduce:
When

Using the unwrap mesh Uv2 for lightmap baking option and then baking the scene
Unwrapping Uv2 from Blender and then baking
Unwrapping Uv2 from Blender, re-importing with Gen-light enabled and then baking
Trying to bake an instanced scene

Minimal reproduction project:

This one is the file that I tried to bake and failed numerous times.
https://github.com/ProjectJoyeuse/PathsOfJjaro/blob/master/Scenes/YucatanDive.dae

I think something like this was mentioned at some point. I'm pretty sure the black spots in the first screenshot are due to invalid float values (like a division by zero maybe) and bleed over because of glow.

This was likely resolved by https://github.com/godotengine/godot/pull/44628, closing.


Copy Copy Paste from one date field dropdown to another

On your example page: https://dalelotts.github.io/angular-bootstrap-datetimepicker/
If you scroll down to the Date Range Picker section. Do the following with your console open:

Select a Start Date
Copy that date to your clipboard
Paste it into the the End Date input

ISSUE: The following exception is thrown:

Error: Invalid date: Thu Aug 31 2017 07:00:00 GMT-0700 (PDT)
at getUTCTime (datetimepicker.js:401)
at NgModelController.$render (datetimepicker.js:356)
at ngModelWatch (angular.js:27102)
at Scope.$digest (angular.js:17211)
at Scope.$apply (angular.js:17486)
at NgModelController.$$debounceViewValueCommit (angular.js:27066)
at NgModelController.$setViewValue (angular.js:27038)
at HTMLInputElement.listener (angular.js:23280)
at HTMLInputElement.dispatch (jquery.js:4737)
at HTMLInputElement.elemData.handle (jquery.js:4549)

This is expected since the input box is not formatted and the default date toString() format is not a valid input for the date-time picker. I will update the example to allow for copy-paste.


im6 compatibility

some distros still ship imagemagick 6, and in some cases some will package both im6 AND im7 but ship im6 by default.
wanted to add compatibility with graphics magick but graphics magick doesn't recognize the "%B" format string and the ouput for the "%b" format string is capped to 1 decimal position.

Hi, seems good to me. I'll merge it but fyi I will soon stop maintaining this repo in favor of this new rust implementation: https://github.com/guillaumeboehm/wal-telegram-rs.

okay, but i wonder is it really worth the effort to re-implement in rust tho?

Well I thought about a little evol to make and I had a headache just thinking about the implem in bash xD So as I was thinking about learning Rust I felt this was a nice opportunity. So it's both for me wanting to learn rust and to allow for more scalability (Even though yeah I don't plan to expand this project very much ^^).

Eh fair


Fix COPY --from= in Dockerfiles

Noticed we accidentally broke support for COPY --from= with the automatic context mount changes.
 Backward/forward compatibility checks

Check these boxes or delete any item (or this section) if not relevant for this PR.

[x] Client+Server: this change is compatible with old servers
[x] Client forward compatibility: this change ensures client can accept data intended for later versions of itself

Note on protobuf: protobuf message changes in one place may have impact to
multiple entities (client, server, worker, database). See points above.

Changelog

@prbot approve


Upgrade to Python 3 and latest CEFPython

Upgrade to Python 3 and latest CEFPython

how I can help?

@coreilabs This is actually complete, I just haven't pushed it yet since there are other new things included that aren't finished.

Released in v2.0.0


Submit CNCF Sandbox Application

Issue to track submittal to CNCF.  Process is outlined here and here.
Application Backlog: https://github.com/orgs/cncf/projects/14/views/1

[ ] Basic form fields in the application
[ ] Define roadmap @jeff-mccoy
[ ] Contributing Guide @jeff-mccoy
[ ] Why CNCF @jeff-mccoy
[ ] Benefits to landscape @bdw617
[ ] Cloud native questions
[ ] Similar projects @bdw617
[ ] Product / service seperation
[ ] Other info

After going through the list of current deferred projects a few key takeaways:

We should probably wait for more stability in the Pepr API
Seems adoption is a mixed bag as far as how much it weighs on approval, but wouldnt hurt to wait
Another using org would be really good for the submission

Will keep this issue pinned and wait for a bit to focus on it again.


[Feature] Display Component Properties in Component Tabs and on Page

Description
I am looking to display properties on my documentation page either under the Tabs or on Page
Proposed solution
There is an existing functionality in the storybook which allows us to show the properties of components in a tab format. This comes in handy and all the information is present on the same page. Currently, we have to navigate to the API reference page just to view the properties. I understand that the Typescript tab already has the properties and methods but they are not in properly formatted for business/domain leads. Hence, it would be great to see this module also as part of the component tabs.
In addition to this, it would be also great to show the component properties tab for dependent components, as showcased ion the below example in the storybook.
Single Component Tab Reference 1: https://master--628d031b55e942004ac95df1.chromatic.com/?path=/docs/components-spinbutton--default
Multi Tab Component - Reference 2: https://master--628d031b55e942004ac95df1.chromatic.com/?path=/docs/components-menu-menu--default
Alternatives considered
Storybook has a similar module to achieve this behaviour.

Will #24 solve your issue?


Can't make request to api when passing variable as argument from file to create it

Hello i've been testing the library for the first time, i was able to do some requests to fetch app info using it but i had some issues when trying to pass the key_id and issuer_id parameters from a file.
If i do this:
ios_api = Api(key_id = "XXXXXXXX", key_file = APPSTORECONNECT_KEY_PATH, issuer_id = "XXXXXXXXXXXXXX")
The library works fine, but if i do this:
f = open(KEY_ID_FILE_PATH, "r")
KEY_ID = f.readline()

f_1 = open(ISSUER_ID_FILE_PATH, "r")
ISSUER_ID = f_1.readline()

ios_api = Api(key_id = KEY_ID, key_file = APPSTORECONNECT_KEY_PATH, issuer_id = ISSUER_ID)
f.close()
f_1.close()
apps = ios_api.list_apps(sort = "name")
for app in apps:
    print(app.name, app.sku)

The output is the following:
Traceback (most recent call last):
  File "appstoreconnect-test.py", line 24, in <module>
    for app in apps:
  File "C:\Users\Seba\.virtualenvs\google-console-api-CfTql0CN\lib\site-packages\appstoreconnect\api.py", line 157, in __next__
    self.fetch_page()
  File "C:\Users\Seba\.virtualenvs\google-console-api-CfTql0CN\lib\site-packages\appstoreconnect\api.py", line 174, in fetch_page
    self.payload = self.api._api_call(self.url)
  File "C:\Users\Seba\.virtualenvs\google-console-api-CfTql0CN\lib\site-packages\appstoreconnect\api.py", line 222, in _api_call
    raise APIError(payload.get('errors', [])[0].get('detail', 'Unknown error'))
appstoreconnect.api.APIError: Provide a properly configured and signed bearer token, and make sure that it has not expired. Learn more about Generating Tokens for API Requests https://developer.apple.com/go/?id=api-generating-tokens

Even though i double checked that the strings KEY_ID and ISSUER_ID are exactly the same that i put manually.
Any help is welcomed, thanks in advance

Seems that i had an issue with the files themselves. I had an extra line in each of them that when reading it was creating the wrong strings. Now this work as expected