Hardcoded runAsUser and runAsGroup Values in Helm Chart Cause Deployment Failures on OpenShift

Description
I am encountering deployment issues with the WSO2 API Platform for Kubernetes (APK) on OpenShift due to hardcoded runAsUser and runAsGroup values in the Helm chart, specifically within the gateway-api-admission-server deployment template. OpenShift assigns user IDs (UIDs) and group IDs (GIDs) dynamically for security reasons, and specifying these values explicitly in the container's security context leads to permission conflicts.
Error Message:
Error creating: pods "gateway-api-admission-server-7998dfb48-" is forbidden: unable to validate against any security context constraint: [provider "anyuid": Forbidden: not usable by user or serviceaccount, ... provider restricted-v2: .containers[0].runAsUser: Invalid value: 65532: must be in the ranges: [1001280000,<PHONE_NUMBER>], ...]

Steps to Reproduce
Analysis:
The deployment template includes the following security context:
securityContext:
  allowPrivilegeEscalation: false
  readOnlyRootFilesystem: true
  runAsNonRoot: true
  runAsUser: 65532
  runAsGroup: 65532
  capabilities:
    drop:
      - "ALL"
  seccompProfile:
    type: RuntimeDefault

In OpenShift, the assigned UID range for the project is<PHONE_NUMBER>/10000, causing the hardcoded runAsUser: 65532 and runAsGroup: 65532 to fall outside the permissible range, resulting in deployment failures.
Suggested Solution:
To ensure compatibility with OpenShift's dynamic UID and GID assignment, I recommend the following modifications to the Helm chart:

Remove Hardcoded Values: Eliminate the explicit runAsUser and runAsGroup settings from the security context in the deployment templates.

Utilize Service Accounts: Define a service account for the deployment and allow OpenShift's Security Context Constraints (SCC) to assign appropriate UIDs and GIDs dynamically.

Make Security Context Configurable: Introduce Helm chart values that allow users to optionally specify runAsUser and runAsGroup if needed, defaulting to dynamic assignment when not set.

Proposed Deployment Template Adjustment:
apiVersion: apps/v1
kind: Deployment
metadata:
  name: gateway-api-admission-server
  namespace: {{ .Release.Namespace }}
  labels:
    name: gateway-api-admission-server
spec:
  replicas: 1
  selector:
    matchLabels:
      name: gateway-api-admission-server
  template:
    metadata:
      name: gateway-api-admission-server
      labels:
        name: gateway-api-admission-server
    spec:
      serviceAccountName: {{ .Values.gatewaySystem.deployment.serviceAccountName | default "default" }}
      containers:
        - name: webhook
          image: {{ .Values.gatewaySystem.deployment.image }}
          imagePullPolicy: {{ .Values.gatewaySystem.deployment.imagePullPolicy }}
          args:
            - -logtostderr
            - --tlsCertFile=/etc/certs/cert
            - --tlsKeyFile=/etc/certs/key
            - -v=10
            - 2>&1
          ports:
            - containerPort: 8443
              name: webhook
          resources:
            limits:
              memory: 50Mi
              cpu: 100m
            requests:
              memory: 50Mi
              cpu: 100m
          volumeMounts:
            - name: webhook-certs
              mountPath: /etc/certs
              readOnly: true
          securityContext:
            allowPrivilegeEscalation: false
            readOnlyRootFilesystem: true
            runAsNonRoot: true
            {{- if .Values.gatewaySystem.deployment.runAsUser }}
            runAsUser: {{ .Values.gatewaySystem.deployment.runAsUser }}
            {{- end }}
            {{- if .Values.gatewaySystem.deployment.runAsGroup }}
            runAsGroup: {{ .Values.gatewaySystem.deployment.runAsGroup }}
            {{- end }}
            capabilities:
              drop:
                - "ALL"
            seccompProfile:
              type: RuntimeDefault
      volumes:
        - name: webhook-certs
          secret:
            secretName: gateway-api-admission

Proposed Helm Values Addition:
gatewaySystem:
  deployment:
    serviceAccountName: gateway-api-admission
    # Optional: Specify these only if explicit values are required
    # runAsUser:<PHONE_NUMBER>
    # runAsGroup:<PHONE_NUMBER>

By implementing these changes, the deployment will be more adaptable to environments like OpenShift, which manage security contexts dynamically, thereby preventing permission issues and facilitating smoother deployments.
Thank you for your attention to this matter.
Affected Component
Adapter
Version
1.2.0
Environment Details (with versions)
OpenShift version: 4.16.18
Kubernetes version: v1.29.8+632b078
Channel: stable-4.16
Relevant Log Output
Error creating: pods "gateway-api-admission-server-7998dfb48-" is forbidden: unable to validate against any security context constraint: [provider "anyuid": Forbidden: not usable by user or serviceaccount, provider "quattro-monitoring-thanos-query-frontend-anyuid-scc": Forbidden: not usable by user or serviceaccount, provider "quattro-sealed-secrets-sealed-secrets": Forbidden: not usable by user or serviceaccount, provider restricted-v2: .containers[0].runAsUser: Invalid value: 65532: must be in the ranges: [1001280000,<PHONE_NUMBER>], provider "restricted": Forbidden: not usable by user or serviceaccount, provider "containerized-data-importer": Forbidden: not usable by user or serviceaccount, provider "nonroot-v2": Forbidden: not usable by user or serviceaccount, provider "nonroot": Forbidden: not usable by user or serviceaccount, provider "loki": Forbidden: not usable by user or serviceaccount, provider "gateway-api-admission-scc": Forbidden: not usable by user or serviceaccount, provider "hostmount-anyuid": Forbidden: not usable by user or serviceaccount, provider "logging-scc": Forbidden: not usable by user or serviceaccount, provider "kubevirt-controller": Forbidden: not usable by user or serviceaccount, provider "machine-api-termination-handler": Forbidden: not usable by user or serviceaccount, provider "bridge-marker": Forbidden: not usable by user or serviceaccount, provider "hostnetwork-v2": Forbidden: not usable by user or serviceaccount, provider "hostnetwork": Forbidden: not usable by user or serviceaccount, provider "hostaccess": Forbidden: not usable by user or serviceaccount, provider "demo": Forbidden: not usable by user or serviceaccount, provider "scc-admin": Forbidden: not usable by user or serviceaccount, provider "scc-demo": Forbidden: not usable by user or serviceaccount, provider "linux-bridge": Forbidden: not usable by user or serviceaccount, provider "kubevirt-handler": Forbidden: not usable by user or serviceaccount, provider "fluent-bit-logging": Forbidden: not usable by user or serviceaccount, provider "node-exporter": Forbidden: not usable by user or serviceaccount, provider "privileged": Forbidden: not usable by user or serviceaccount]

Related Issues
No response
Suggested Labels
APK SCC Openshift gateway-api-admission-server Helm

After adjusting the runAsUser and runAsGroup values to fall within the allowed range, the gateway-api-admission-server deployment is now operating correctly. Below is the current status:
$ oc get deploy
NAME                                             READY   UP-TO-DATE   AVAILABLE   AGE
gateway-api-admission-server                     1/1     1            1           65m
wso2-apk-cert-manager                            1/1     1            1           18h
wso2-apk-cert-manager-cainjector                 1/1     1            1           18h
wso2-apk-cert-manager-webhook                    1/1     1            1           18h
wso2-apk-wso2-apk-adapter-deployment             1/1     1            1           18h
wso2-apk-wso2-apk-common-controller-deployment   1/1     1            1           18h
wso2-apk-wso2-apk-config-ds-deployment           1/1     1            1           18h
wso2-apk-wso2-apk-gateway-runtime-deployment     2/2     2            2           18h
wso2-apk-wso2-apk-ratelimiter-deployment         2/2     2            2           18h

$ oc describe deploy gateway-api-admission-server
Name:                   gateway-api-admission-server
Namespace:              wso2-apk
CreationTimestamp:      Fri, 06 Dec 2024 12:24:04 +0100
Labels:                 app.kubernetes.io/managed-by=Helm
                        name=gateway-api-admission-server
Annotations:            deployment.kubernetes.io/revision: 2
                        meta.helm.sh/release-name: wso2-apk
                        meta.helm.sh/release-namespace: wso2-apk
Selector:               name=gateway-api-admission-server
Replicas:               1 desired | 1 updated | 1 total | 1 available | 0 unavailable
StrategyType:           RollingUpdate
MinReadySeconds:        0
RollingUpdateStrategy:  25% max unavailable, 25% max surge
Pod Template:
  Labels:  name=gateway-api-admission-server
  Containers:
   webhook:
    Image:           registry.k8s.io/gateway-api/admission-server:v1.0.0
    Port:            8443/TCP
    Host Port:       0/TCP
    SeccompProfile:  RuntimeDefault
    Args:
      -logtostderr
      --tlsCertFile=/etc/certs/cert
      --tlsKeyFile=/etc/certs/key
      -v=10
      2>&1
    Limits:
      cpu:     100m
      memory:  50Mi
    Requests:
      cpu:        100m
      memory:     50Mi
    Environment:  <none>
    Mounts:
      /etc/certs from webhook-certs (ro)
  Volumes:
   webhook-certs:
    Type:        Secret (a volume populated by a Secret)
    SecretName:  gateway-api-admission
    Optional:    false
Conditions:
  Type           Status  Reason
  ----           ------  ------
  Available      True    MinimumReplicasAvailable
  Progressing    True    NewReplicaSetAvailable
OldReplicaSets:  gateway-api-admission-server-7998dfb48 (0/0 replicas created)
NewReplicaSet:   gateway-api-admission-server-fdbbcd5db (1/1 replicas created)
Events:
  Type    Reason             Age   From                   Message
  ----    ------             ----  ----                   -------
  Normal  ScalingReplicaSet  66m   deployment-controller  Scaled up replica set gateway-api-admission-server-7998dfb48 to 1
  Normal  ScalingReplicaSet  51s   deployment-controller  Scaled up replica set gateway-api-admission-server-fdbbcd5db to 1
  Normal  ScalingReplicaSet  47s   deployment-controller  Scaled down replica set gateway-api-admission-server-7998dfb48 to 0 from 1

$ oc get pod
NAME                                                             READY   STATUS      RESTARTS      AGE
gateway-api-admission-2j2c4                                      0/1     Completed   0             67m
gateway-api-admission-patch-r7hqf                                0/1     Completed   1             67m
gateway-api-admission-server-fdbbcd5db-zhw66                     1/1     Running     0             62s
redis-master-0                                                   1/1     Running     0             18h
wso2-apk-cert-manager-5dc6b554f6-vvg2h                           1/1     Running     0             18h
wso2-apk-cert-manager-cainjector-c9bd4c4f6-qnxcn                 1/1     Running     0             18h
wso2-apk-cert-manager-webhook-7f5c7d4967-8jt5v                   1/1     Running     0             18h
wso2-apk-wso2-apk-adapter-deployment-6c5bd8fbd9-rvrdp            1/1     Running     0             18h
wso2-apk-wso2-apk-common-controller-deployment-d6577c8c6-tlm5p   1/1     Running     0             15h
wso2-apk-wso2-apk-config-ds-deployment-7888979585-c5rzr          1/1     Running     0             18h
wso2-apk-wso2-apk-gateway-runtime-deployment-79b7f67f78-v2588    2/2     Running     0             16h
wso2-apk-wso2-apk-gateway-runtime-deployment-79b7f67f78-zpcv9    2/2     Running     0             16h
wso2-apk-wso2-apk-ratelimiter-deployment-6d45479664-9rd9c        1/1     Running     3 (18h ago)   18h
wso2-apk-wso2-apk-ratelimiter-deployment-6d45479664-hkrw7        1/1     Running     3 (18h ago)   18h

These outputs confirm that the deployment is now functioning as expected and that my above arguments are valid.


Mixed items in collection

https://canary.kodadot.xyz/ahk/collection/u-1002
two collections merged into one view?

see the cards. They have different collection id

might be fixed by #6868

@roiLeo yeah, thanks!


ci: Jenkins Jobs Builder seems incompatible with latest urllib3

Describe the bug
The jjb-deply CI job fails deploying updated Jenkins Jobs:
make: Entering directory '/opt/build/deploy'
cd /opt/build/deploy/../ && jenkins-jobs update --delete-old jobs
INFO:jenkins_jobs.cli.subcommand.base:Updating jobs in [PosixPath('jobs')] ([])
INFO:root:Caching type properties of properties = jenkins_jobs.modules.properties:Properties
INFO:root:Caching type triggers of triggers = jenkins_jobs.modules.triggers:Triggers
INFO:root:Caching type scm of scm = jenkins_jobs.modules.scm:SCM
INFO:root:Caching type parameters of parameters = jenkins_jobs.modules.parameters:Parameters
INFO:jenkins_jobs.builder:Number of jobs generated:  17
Traceback (most recent call last):
  File "/usr/local/lib/python3.9/site-packages/jenkins/__init__.py", line 822, in get_info
    return json.loads(self.jenkins_open(
  File "/usr/local/lib/python3.9/site-packages/jenkins/__init__.py", line 560, in jenkins_open
    return self.jenkins_request(req, add_crumb, resolve_auth).text
  File "/usr/local/lib/python3.9/site-packages/jenkins/__init__.py", line 576, in jenkins_request
    self.maybe_add_crumb(req)
  File "/usr/local/lib/python3.9/site-packages/jenkins/__init__.py", line 373, in maybe_add_crumb
    response = self.jenkins_open(requests.Request(
  File "/usr/local/lib/python3.9/site-packages/jenkins/__init__.py", line 560, in jenkins_open
    return self.jenkins_request(req, add_crumb, resolve_auth).text
  File "/usr/local/lib/python3.9/site-packages/jenkins/__init__.py", line 579, in jenkins_request
    self._request(req))
  File "/usr/local/lib/python3.9/site-packages/jenkins/__init__.py", line 553, in _request
    return self._session.send(r, **_settings)
  File "/usr/local/lib/python3.9/site-packages/requests/sessions.py", line 703, in send
    r = adapter.send(request, **kwargs)
  File "/usr/local/lib/python3.9/site-packages/requests/adapters.py", line 483, in send
    timeout = TimeoutSauce(connect=timeout, read=timeout)
  File "/usr/local/lib/python3.9/site-packages/urllib3/util/timeout.py", line 119, in __init__
    self._connect = self._validate_timeout(connect, "connect")
  File "/usr/local/lib/python3.9/site-packages/urllib3/util/timeout.py", line 156, in _validate_timeout
    raise ValueError(
ValueError: Timeout value connect was <object object at 0x7fe6ec472de0>, but it must be an int, float or None.

StackOverflow has a report with a solution that addresses the issue. Once a Jenkins Jobs Builder is compatible with the latest urllib3 package, the workaround can be removed.

The upstream reported issue suggests adding a timeout value in the Jenkins Jobs Builder configuration. This looks like a nicer workaround than downgrading urllib3.


Created Task3.txt, added commands used in it

Issue: #4
Created Task3.txt and added commands to it

Hey @puravimohta15
Thanks for opening this PR 🚀. Mentor will review your pull request soon and till then, keep contributing and stay calm.
Thanks for contributing in OpenCode'24 ✨✨!


Rename getURL to getUrl

Pull Request Etiquette

[x] I have checked the PRs for upcoming features/bug fixes.
[x] I have read the contributing guidelines.

Changes

[ ] Internal code
[x] Library interface (affecting end-user code)
[ ] Documentation
[ ] Other: _____

Closes Issue: NaN
Description
All other methods are called getUrl, since this is the only consistency breaker I renamed it.

What's the reason for doing this?


[FEAT] Allow marking invalid matches

Is your feature request related to a problem? Please describe.
At times I get a positive match, but it is incorrect.
Describe the solution you'd like
I would like to be able to mark matches as incorrect, and in turn have this taken into consideration for training or future matching.
Additional context
e.g. in this case, it is an invalid match. It should really be unknown. This may be related to another issue where someone mentioned that side on faces get matches when they should not

The request makes sense, but this requires the training programs behind the scenes (Deepstack, Compreface, FaceBox) to support this, which I'm not sure which ones actually do if any

Unfortunately, as @NickM-27  said, there isn't a way to do this to my knowledge. If one of the detectors does support this via their API, feel free to open a feature request for it.
My suggestion would be to look at your training images for Tony and remove any that are low quality or do not have a clear view of the face. Take selfies from your phone if possible. I've found this method produces the best results.
Thanks for checking out this project!


Surgery

About the PR
Requires https://github.com/space-wizards/RobustToolbox/pull/2036 when amputating a hand that is holding something.
WIP doc
This PR refactors all of surgery. It was previously the last part of body system that had not been touched since this PR.
Surgeries are now defined in YAML and their effects are short snippets of code written in C#. Surgery tools have a list of steps they can perform, an operation has a list of required steps, and once those steps are fulfilled its effect executes.
Each step can have a special conditional to say if its necessary to perform, and a special behavior such as opening a mechanism selection window.
This is meant to be able to be flexible enough to implement whatever surgery operations are wanted in the future. I have based the system in this PR around the surgeries on the baystation wiki. This is not an explicit design choice, I just work here.
At the moment surgeries that are underway can be canceled with drapes if no steps have been done yet or with a cautery otherwise.
Thanks to @ike709 for the help with moving surgeries from the wiki to yaml prototypes and localization.
TODO:

[ ] The entity that you are operating on shows up on the operation selection list.
[x] The part list in the operation selector shows the part sprites.
[x] All of it is ECS.
[ ] SurgeonComponent has data about what surgeries an entity can perform.
[ ] Performing surgery on ~a grape~ dismembered limbs.
[ ] Allow one surgeon to perform multiple surgeries at once.
[ ] Allow multiple surgeons to perform surgery on a single target at once.
[x] ~Remove surgery drapes component in favor of surgery tool component.~
[x] Add a test for surgery popup localization.
[x] Add a test for performing an operation.

TODO Effects:

[x] Amputation.
[x] Cauterization.
[ ] Organ extraction.
[ ] Artery repair.
[ ] Autopsy.
[ ] Bone repair.
[ ] Facial reconstruction.
[ ] Limb replacement.
[ ] Object insertion.
[ ] Object removal.
[ ] Organ repair.

Screenshots
Menu that opens up when you use surgery drapes.

Changelog
:cl:

fix: Fixed surgery being broken.
add: Added amputation and cauterization.

Ready for review.
Docs

of all the things why the fark is projectile conflicting

Re-open once you come back to it.

Not before wounds


Look over H1-H6 use in templates

Make sure of good DOM structure
H1
    H2
         H3
             etc.

Only use headers for actual headers.
Sent with GitHawk

@frjo, closing this. if reopening, do so in q3 or whichever it'll get done in.


Runs only in background on auto startup on Windows

💻 Environment
Platform: Windows
OS Version: 10.0.18362
Toggl Version: 7.4.529
🐞 Actual behavior
Toggl starts automatically at startup as configured, but only in the background.
There is no Toggle Desktop window. Running the EXE again does not help.
💯 Expected behavior
When configured to start automatically, the Toggle Desktop window opens at startup.
When running only in the background, running the EXE again causes the window to open.
🔨 Steps to reproduce

Download and install the installer EXE.
Make sure Toggl Desktop is added to startup items. Sorry, I don't remember if that happened as part of the installation, or if I did that manually afterwards.
Restart the computer.

📦 Additional info
Possibly related to #3347.

Hi @ygale, thanks so much for the report! I think it might be the same is this issue: https://github.com/toggl/toggldesktop/issues/3285
Could you try the latest beta and let us know if it's fixed? You can get the installer from here: https://toggl.github.io/toggldesktop/download/windows-beta/

OK I'll try to get to it soon.
I found a workaround:

Disable the Toggl startup item in Task Manager.
Restart the computer.
Run Toggl Desktop.
Pin Toggl Desktop to the taskbar.
Re-enable the Toggl startup item.
On startup, if the Toggle Desktop window does not appear, click the Toggl icon on the taskbar.

This might also work, but I didn't try it:

Kill all Toggl processes in Task Manager.
Run Toggl Desktop.
Pin Toggl Desktop to the taskbar.
On startup, if the Toggle Desktop window does not appear, click the Toggl icon on the taskbar.

Hi @ygale!
Yes, these are valid workarounds, but the issue is already fixed in beta, and the stable version with the fix will be available very soon.
You can also disable/enable Toggl startup using Toggl Desktop cogwheel button->Preferences->Run the app on Windows login.

Excellent, thanks!


GUI Texture does not appear in Minecraft

Describe the bug
When i open the gui then the texture disappear only if i have no slots.
Screenshots
In MCreator:
https://user-images.githubusercontent.com/59665579/105808090-6c889680-5fa7-11eb-8c07-bb6066f03943.png
In Game:
https://user-images.githubusercontent.com/59665579/105808199-993cae00-5fa7-11eb-89a9-b3b6fc65be3a.png
Details

OS: Windows 10
MCreator version 2020.5
Generator type: forge-1.12.2

yea i have no idea why so if you add gui with inventory it will work


Revert "[DCOS-41803] Overwrite the CLI in docker image with an old CL…

…I for sdk 40 (#2676)"
This reverts commit 997fcbf38877f72c1fa07313bc70f0bd6c1aedac.
This change breaks non-mono-repo builds including spark-build and kafka-zookeeper.
We would only expect the CI for this PR to be green after #2697 has been merged.

For the record. The failures here are the same as those for non-mono-repo builds.

The issue is that the sdk-0.40 PR removes the local tools changes that are required for the CLI which is still present in the docker image. Since the teamcity job in the sdk-0.40 branch still compares to master to rebuild the docker image it happens that on some of the build agents, the origin/master git reference doesn't exist and the docker image is not rebuilt and mesosphere/dcos-commons:latest is used instead. (e.g. Cassandra). This is effectively what happens for the non-mono-repo builds. For others, we are able to detect the differences in Dockerfile, rebuild a local docker image and run successfully: e.g. Elastic.

There is a new docker images available off #2697 and I have retriggered all tests.

Please ping @bamarni and I if the CI doesn't pass, we're keeping our eyes on DCOS-41803. Sorry for the inconvenience due to the link change.

Please ping @bamarni and I if the CI doesn't pass, we're keeping our eyes on DCOS-41803. Sorry for the inconvenience due to the link change.

Thanks @ArmandGrillet! Will do. This is on us too as we have our own dependencies to deal with!


Investigate fetch-tags option for actions/checkout in GHA

Our documentation for GitHub Actions suggests to use fetch-depth: 0 in order to do a deep (not shallow) clone.
https://github.com/zowe-actions/octorelease/blob/master/docs/recipes.md#github-actions
In actions/checkout@v3, a new option fetch-tags was added that is independent of fetch-depth.
If this provides enough Git history for Octorelease to work correctly, it would be more efficient then fetching everything.
Thanks to @zFernand0 for suggesting this 😋

In addition to Octorelease itself, lerna may depend on Git history being present. See https://github.com/lerna/lerna/issues/2542

Can't use fetch-tags until https://github.com/actions/checkout/issues/1471 is fixed

Closing for now, the linked issue seems stale


Revision name in dropdown should show package version.

If dropdown doesn't have enough length then showing package name and version as hint is also good enough.

Rresolved in https://github.com/Azure/azure-sdk-tools/pull/2785


vivisect.exc.CorruptPeFile: PE: corrupt file: truncated section headers

For 0761142efbda6c4b1e801223de723578.dll_
failed to extract capabilities: query environment variable /home/runner/work/capa-rules/capa-rules/rules/../scripts/../tests/data/0761142efbda6c4b1e801223de723578.dll_ PE: corrupt file: truncated section headers
Traceback (most recent call last):
  File "/home/runner/work/capa-rules/capa-rules/rules/../scripts/lint.py", line 279, in check_rule
    capabilities = get_sample_capabilities(ctx, path)
  File "/home/runner/work/capa-rules/capa-rules/rules/../scripts/lint.py", line 234, in get_sample_capabilities
    extractor = capa.main.get_extractor(
  File "/home/runner/work/capa-rules/capa-rules/capa/main.py", line 442, in get_extractor
    vw = get_workspace(path, format, sigpaths)
  File "/home/runner/work/capa-rules/capa-rules/capa/main.py", line 382, in get_workspace
    vw = viv_utils.getWorkspace(path, analyze=False, should_save=False)
  File "/opt/hostedtoolcache/Python/3.9.7/x64/lib/python3.9/site-packages/viv_utils/__init__.py", line 105, in getWorkspace
    vw.loadFromFile(fp)
  File "/opt/hostedtoolcache/Python/3.9.7/x64/lib/python3.9/site-packages/vivisect/__init__.py", line 2737, in loadFromFile
    fname = mod.parseFile(self, filename=filename, baseaddr=baseaddr)
  File "/opt/hostedtoolcache/Python/3.9.7/x64/lib/python3.9/site-packages/vivisect/parsers/pe.py", line 37, in parseFile
    return loadPeIntoWorkspace(vw, pe, filename=filename, baseaddr=baseaddr)
  File "/opt/hostedtoolcache/Python/3.9.7/x64/lib/python3.9/site-packages/vivisect/parsers/pe.py", line 528, in loadPeIntoWorkspace
    pebytes = subpe.readAtOffset(0, subpe.getFileSize())
  File "/opt/hostedtoolcache/Python/3.9.7/x64/lib/python3.9/site-packages/PE/carve.py", line 68, in getFileSize
    for sec in self.getSections():
  File "/opt/hostedtoolcache/Python/3.9.7/x64/lib/python3.9/site-packages/PE/__init__.py", line 497, in getSections
    return self.sections
  File "/opt/hostedtoolcache/Python/3.9.7/x64/lib/python3.9/site-packages/PE/__init__.py", line 1441, in __getattr__
    self.parseSections()
  File "/opt/hostedtoolcache/Python/3.9.7/x64/lib/python3.9/site-packages/PE/__init__.py", line 728, in parseSections
    raise v_exc.CorruptPeFile("truncated section headers")
vivisect.exc.CorruptPeFile: PE: corrupt file: truncated section headers

solution proposed in https://github.com/vivisect/vivisect/pull/464

should be fixed due to upstream merging the PR

Yes, thanks!


Can't build samples From source

Followed the instructions For building the source code on windows with visual studio, But running the command

cmake --build . --target gltf_viewer --config Release

Results in a complete Crash generating the following Error Code:
D:\Visual studio\community\MSBuild\Microsoft\VC\v170\Microsoft.CppCommon.targets(247,5): error MSB8066: Custom build for 'D:\Repos\filament\out\CMakeFiles\1fc183c260f570c59363a896f7688d30\DebugInfo.h.rule;D:\Repos\filament\out\CMakeFiles\ 6a57185417d852887fcb5d257a2ef0c5\spirv-tools-header-DebugInfo.rule' exited with code 9009. [D:\Repos\filament\out\third _party\spirv-tools\source\spirv-tools-header-DebugInfo.vcxproj]   Generate language specific header for NonSemanticShaderDebugInfo100.   'C:\cygwin64\bin\python3' is not recognized as an internal or external command,   operable program or batch file.
I've tried changing the Path variables for python to no avail

This looks like misconfiguration.  Did you run cmake in cygwin?  You should try to do so in the Visual Studio dev command prompt.  Just delete yourout directory and try the instructions again but from the VS dev command prompt.


Can't connect using TLS client certs

Environment

VerneMQ Version: 1.2.0 (docker)
OS: macOS Sierra 10.12.6
Erlang/OTP version (if building from source):

Expected behavior
To be able to connect to VerneMQ using TLS client certs, with MySQL auth enabled.
Actual behaviour
SSL connection works, MySQL for auth also works, but if I turn on
listener.ssl.require_certificate = on
listener.ssl.use_identity_as_username = on
I no longer can connect. The way I start the broker:
docker run -p 1883:1883 -p 8883:8883 --name vernemq --link mysql:sh-mysql -e DOCKER_VERNEMQ_PLUGINS__VMQ_PASSWD=off -e DOCKER_VERNEMQ_PLUGINS__VMQ_ACL=off -e DOCKER_VERNEMQ_PLUGINS__VMQ_DIVERSITY=on -e DOCKER_VERNEMQ_VMQ_DIVERSITY__AUTH_MYSQL__ENABLED=on -e DOCKER_VERNEMQ_VMQ_DIVERSITY__MYSQL__HOST=sh-mysql  -e DOCKER_VERNEMQ_VMQ_DIVERSITY__MYSQL__PORT=3306 -e DOCKER_VERNEMQ_VMQ_DIVERSITY__MYSQL__USER=root -e DOCKER_VERNEMQ_VMQ_DIVERSITY__MYSQL__PASSWORD=root -e DOCKER_VERNEMQ_VMQ_DIVERSITY__MYSQL__DATABASE=db -e DOCKER_VERNEMQ_MAX_CLIENT_ID_SIZE=40 -e DOCKER_VERNEMQ_LISTENER__SSL__CAFILE=/etc/ssl/ca.crt -e DOCKER_VERNEMQ_LISTENER__SSL__CERTFILE=/etc/ssl/server.crt -e DOCKER_VERNEMQ_LISTENER__SSL__KEYFILE=/etc/ssl/server.key -e DOCKER_VERNEMQ_LISTENER__SSL__REQUIRE_CERTIFICATE=on -e DOCKER_VERNEMQ_LISTENER__SSL__USE_IDENTITY_AS_USERNAME=on -e DOCKER_VERNEMQ_LISTENER__SSL__DEFAULT=<IP_ADDRESS>:8883 -v /Users/x/Desktop/vernemqcerts:/etc/ssl -d erlio/docker-vernemq:1.2.0

I have generated the certs for ca client and server following the instruction in the mosquitto docs https://mosquitto.org/man/mosquitto-tls-7.html . Keys are not password protected.
2017-10-12 10:15:21.970 [info] <0.209.0>@plumtree_metadata_leveldb_instance:init_state:322 Datadir /var/lib/vernemq/meta/meta/9 options for LevelDB: [{open,[{block_cache_threshold,33554432},{block_restart_interval,16},{block_size_steps,16},{compression,true},{create_if_missing,true},{delete_threshold,1000},{eleveldb_threads,71},{fadvise_willneed,false},{limited_developer_mem,false},{sst_block_size,4096},{tiered_slow_level,0},{total_leveldb_mem_percent,6},{use_bloomfilter,true},{write_buffer_size,37356441}]},{read,[{verify_checksums,true}]},{write,[{sync,false}]},{fold,[{verify_checksums,true},{fill_cache,false}]}]
2017-10-12 10:15:22.017 [info] <0.210.0>@plumtree_metadata_leveldb_instance:init_state:322 Datadir /var/lib/vernemq/meta/meta/10 options for LevelDB: [{open,[{block_cache_threshold,33554432},{block_restart_interval,16},{block_size_steps,16},{compression,true},{create_if_missing,true},{delete_threshold,1000},{eleveldb_threads,71},{fadvise_willneed,false},{limited_developer_mem,false},{sst_block_size,4096},{tiered_slow_level,0},{total_leveldb_mem_percent,6},{use_bloomfilter,true},{write_buffer_size,55481260}]},{read,[{verify_checksums,true}]},{write,[{sync,false}]},{fold,[{verify_checksums,true},{fill_cache,false}]}]
2017-10-12 10:15:22.024 [info] <0.211.0>@plumtree_metadata_leveldb_instance:init_state:322 Datadir /var/lib/vernemq/meta/meta/11 options for LevelDB: [{open,[{block_cache_threshold,33554432},{block_restart_interval,16},{block_size_steps,16},{compression,true},{create_if_missing,true},{delete_threshold,1000},{eleveldb_threads,71},{fadvise_willneed,false},{limited_developer_mem,false},{sst_block_size,4096},{tiered_slow_level,0},{total_leveldb_mem_percent,6},{use_bloomfilter,true},{write_buffer_size,35987258}]},{read,[{verify_checksums,true}]},{write,[{sync,false}]},{fold,[{verify_checksums,true},{fill_cache,false}]}]
2017-10-12 10:15:22.063 [info] <0.31.0> Application plumtree started on node<EMAIL_ADDRESS>2017-10-12 10:15:22.072 [info] <0.31.0> Application vmq_plugin started on node<EMAIL_ADDRESS>2017-10-12 10:15:22.073 [info] <0.31.0> Application ssl_verify_fun started on node<EMAIL_ADDRESS>2017-10-12 10:15:22.073 [info] <0.31.0> Application epgsql started on node<EMAIL_ADDRESS>2017-10-12 10:15:22.085 [info] <0.31.0> Application hackney started on node<EMAIL_ADDRESS>2017-10-12 10:15:22.450 [info] <0.319.0>@vmq_reg_trie:handle_info:183 loaded 0 subscriptions into vmq_reg_trie
2017-10-12 10:15:22.459 [info] <0.213.0>@vmq_cluster:init:113 plumtree peer service event handler 'vmq_cluster' registered
2017-10-12 10:15:23.043 [info] <0.31.0> Application vmq_diversity started on node<EMAIL_ADDRESS>2017-10-12 10:15:23.203 [info] <0.342.0>@vmq_diversity_app:start:71 enable auth script for mysql "/usr/share/vernemq/lua/auth/mysql.lua"
2017-10-12 10:15:23.366 [info] <0.31.0> Application vmq_server started on node<EMAIL_ADDRESS>2017-10-12 10:39:41.998 [warning] <0.616.0>@vmq_mqtt_fsm:check_user:544 can't authenticate client {[],<<"b189241a-c9e8-48bb-9bc6-b2f8195953a4">>} due to chain_exhausted
2017-10-12 10:39:42.014 [warning] <0.618.0>@vmq_mqtt_fsm:check_user:544 can't authenticate client {[],<<"b189241a-c9e8-48bb-9bc6-b2f8195953a4">>} due to chain_exhausted
2017-10-12 10:39:53.922 [warning] <0.622.0>@vmq_mqtt_fsm:check_user:544 can't authenticate client {[],<<"b189241a-c9e8-48bb-9bc6-b2f8195953a4">>} due to chain_exhausted
2017-10-12 10:39:53.931 [warning] <0.624.0>@vmq_mqtt_fsm:check_user:544 can't authenticate client {[],<<"b189241a-c9e8-48bb-9bc6-b2f8195953a4">>} due to chain_exhausted
2017-10-12 10:41:44.080 [warning] <0.638.0>@vmq_mqtt_fsm:check_user:544 can't authenticate client {[],<<"b189241a-c9e8-48bb-9bc6-b2f8195953a4">>} due to chain_exhausted

This sounds like a mismatch between the auth data in MySQL and what is passed to the vmq_diversity mysql plugin.
Can you do a trace like vmq-admin trace client client-id=<clientid> and try to reconnect? (replace the client-id with the actual client-id - in the logs above it's b189241a-c9e8-48bb-9bc6-b2f8195953a4).
Then you should see the actual username, password and client-id which is pass and validated against the data in mysql and these of course have to match.
Hope this helps.

Thanks for the quick response! I have done what you have asked, here is the result:

root@39568d07d9bc:/# vmq-admin trace client client-id=b189241a-c9e8-48bb-9bc6-b2f8195953a4

No sessions found for client "b189241a-c9e8-48bb-9bc6-b2f8195953a4"
New session with PID <7244.1135.0> found for client "b189241a-c9e8-48bb-9bc6-b2f8195953a4"
<7244.1135.0> MQTT RECV: CID: "b189241a-c9e8-48bb-9bc6-b2f8195953a4" CONNECT(c: b189241a-c9e8-48bb-9bc6-b2f8195953a4, v: 4, u: undefined, p: undefined, cs: 1, ka: 60)
<7244.1135.0> Calling auth_on_register({{172,17,0,1},60302},{[],
                                                             <<"b189241a-c9e8-48bb-9bc6-b2f8195953a4">>},test-user-5,undefined,true)
<7244.1135.0> Hook returned {error,chain_exhausted}
<7244.1135.0> MQTT SEND: CID: "b189241a-c9e8-48bb-9bc6-b2f8195953a4" CONNACK(sp: 0, rc: 5)
<7244.1135.0> Trace session for b189241a-c9e8-48bb-9bc6-b2f8195953a4 stopped
New session with PID <7244.1137.0> found for client "b189241a-c9e8-48bb-9bc6-b2f8195953a4"
<7244.1137.0> MQTT RECV: CID: "b189241a-c9e8-48bb-9bc6-b2f8195953a4" CONNECT(c: b189241a-c9e8-48bb-9bc6-b2f8195953a4, v: 3, u: undefined, p: undefined, cs: 1, ka: 60)
<7244.1137.0> Calling auth_on_register({{172,17,0,1},60304},{[],
                                                             <<"b189241a-c9e8-48bb-9bc6-b2f8195953a4">>},test-user-5,undefined,true)
<7244.1137.0> Hook returned {error,chain_exhausted}
<7244.1137.0> MQTT SEND: CID: "b189241a-c9e8-48bb-9bc6-b2f8195953a4" CONNACK(sp: 0, rc: 5)
<7244.1137.0> Trace session for b189241a-c9e8-48bb-9bc6-b2f8195953a4 stopped

The MySQL acl table is the following:
mysql> select * from vmq_auth_acl;
+------------+--------------------------------------+-------------+--------------------------------------------------------------+-------------------------------------------+-------------------------------------------+
| mountpoint | client_id                            | username    | password                                                     | publish_acl                               | subscribe_acl                             |
+------------+--------------------------------------+-------------+--------------------------------------------------------------+-------------------------------------------+-------------------------------------------+
|            |                                      | test-user-4 |                                                              | [{"pattern":"a/b/c"},{"pattern":"c/b/#"}] | [{"pattern":"a/b/c"},{"pattern":"c/b/#"}] |
|            | b189241a-c9e8-48bb-9bc6-b2f8195953a4 | test-user-5 |                                                              | [{"pattern":"a/b/c"},{"pattern":"c/b/#"}] | [{"pattern":"a/b/c"},{"pattern":"c/b/#"}] |
|            | test-client                          | test-user   | *23AE809DDACAF96AF0FD78ED04B6A265E05AA257                    | [{"pattern":"a/b/c"},{"pattern":"c/b/#"}] | [{"pattern":"a/b/c"},{"pattern":"c/b/#"}] |
|            | test-client-2                        | test-user-2 | $2a$04$MxXuL6nntoCrnjzyqNuQ1upKeDxwOmbV4ryriot2O4kdKSEXXNwve | [{"pattern":"a/b/c"},{"pattern":"c/b/#"}] | [{"pattern":"a/b/c"},{"pattern":"c/b/#"}] |
|            | test-client-3                        | test-user-3 |                                                              | [{"pattern":"a/b/c"},{"pattern":"c/b/#"}] | [{"pattern":"a/b/c"},{"pattern":"c/b/#"}] |
+------------+--------------------------------------+-------------+--------------------------------------------------------------+-------------------------------------------+-------------------------------------------+

test-user-5 is the cn in the certificate. I don't use password for this client here.

The password is mandatory in the default mysql logic: https://github.com/erlio/vernemq/blob/master/apps/vmq_diversity/priv/auth/mysql.lua#L54
You can of course change this however you see fit. See also http://vernemq.com/docs/plugindevelopment/luaplugins.html.

Hmm. I have run the same test without SSL providing the username using the username field of the client, I left the password empty and it worked.

New session with PID <7244.455.0> found for client "b189241a-c9e8-48bb-9bc6-b2f8195953a4"
<7244.455.0> MQTT RECV: CID: "b189241a-c9e8-48bb-9bc6-b2f8195953a4" CONNECT(c: b189241a-c9e8-48bb-9bc6-b2f8195953a4, v: 4, u: test-user-5, p: , cs: 1, ka: 60)
<7244.455.0> Calling auth_on_register({{172,17,0,1},38316},{[],
                                                            <<"b189241a-c9e8-48bb-9bc6-b2f8195953a4">>},test-user-5,,true)
<7244.455.0> Hook returned "ok"
<7244.455.0> MQTT SEND: CID: "b189241a-c9e8-48bb-9bc6-b2f8195953a4" CONNACK(sp: 0, rc: 0)

In this case password was just left empty test-user-5,,, while when using the certs it says undefined test-user-5,undefined,. Do you know how this happens, or how could it work without a password when not using certs?

What other plugins are enabled? What's the output of vmq-admin plugin show --internal?

Here it is:

root@f1530ef20ff8:/# vmq-admin plugin show --internal
+--------------------+-----------+-----------------+----------------------------------------+
|       Plugin       |   Type    |     Hook(s)     |                 M:F/A                  |
+--------------------+-----------+-----------------+----------------------------------------+
|     vmq_config     |  module   |  change_config  |       vmq_config:change_config/1       |
|  vmq_lvldb_store   |  module   | msg_store_write |   vmq_lvldb_store:msg_store_write/2    |
|  vmq_lvldb_store   |  module   |msg_store_delete |   vmq_lvldb_store:msg_store_delete/2   |
|  vmq_lvldb_store   |  module   | msg_store_find  |    vmq_lvldb_store:msg_store_find/1    |
|  vmq_lvldb_store   |  module   | msg_store_read  |    vmq_lvldb_store:msg_store_read/2    |
|   vmq_diversity    |application|                 |                                        |
|vmq_diversity_plugin|  module   | auth_on_publish | vmq_diversity_plugin:auth_on_publish/6 |
|vmq_diversity_plugin|  module   |auth_on_register |vmq_diversity_plugin:auth_on_register/5 |
|vmq_diversity_plugin|  module   |auth_on_subscribe|vmq_diversity_plugin:auth_on_subscribe/3|
|vmq_diversity_plugin|  module   | on_client_gone  | vmq_diversity_plugin:on_client_gone/1  |
|vmq_diversity_plugin|  module   |on_client_offline|vmq_diversity_plugin:on_client_offline/1|
|vmq_diversity_plugin|  module   | on_unsubscribe  | vmq_diversity_plugin:on_unsubscribe/3  |
+--------------------+-----------+-----------------+----------------------------------------+

It looks to me that the password being sent when doing it without TLS is the empty string (based on the trace output). In the database it looks like that maybe also is an empty string which would then match. Can you verify this?

The password field in MySQL is indeed an empty string, this could be why it matched. However I just did another experiment and the results are strange.
I have set the string undefined as a password for this user (using the MySQL PASSWORD() function). I have tried to connect in two ways. Using SSL client cert, without providing mqtt username or password, and using SSL client cert but providing the username and the password. In the first case the connection fails just like before, but in the second case it succeeds. The strange thing is that by the trace output the auth_on_register function is invoked using the same parameters.
<7244.582.0> MQTT RECV: CID: "b189241a-c9e8-48bb-9bc6-b2f8195953a4" CONNECT(c: b189241a-c9e8-48bb-9bc6-b2f8195953a4, v: 4, u: test-user-5, p: undefined, cs: 1, ka: 60)
<7244.582.0> Calling auth_on_register({{172,17,0,1},60354},{[],
                                                            <<"b189241a-c9e8-48bb-9bc6-b2f8195953a4">>},test-user-5,undefined,true)
<7244.582.0> Hook returned "ok"
<7244.582.0> MQTT SEND: CID: "b189241a-c9e8-48bb-9bc6-b2f8195953a4" CONNACK(sp: 0, rc: 0)
<7244.582.0> MQTT RECV: CID: "b189241a-c9e8-48bb-9bc6-b2f8195953a4" DISCONNECT()
<7244.582.0> Trace session for b189241a-c9e8-48bb-9bc6-b2f8195953a4 stopped

New session with PID <7244.592.0> found for client "b189241a-c9e8-48bb-9bc6-b2f8195953a4"
<7244.592.0> MQTT RECV: CID: "b189241a-c9e8-48bb-9bc6-b2f8195953a4" CONNECT(c: b189241a-c9e8-48bb-9bc6-b2f8195953a4, v: 4, u: undefined, p: undefined, cs: 1, ka: 60)
<7244.592.0> Calling auth_on_register({{172,17,0,1},60356},{[],
                                                            <<"b189241a-c9e8-48bb-9bc6-b2f8195953a4">>},test-user-5,undefined,true)
<7244.592.0> Hook returned {error,chain_exhausted}
<7244.592.0> MQTT SEND: CID: "b189241a-c9e8-48bb-9bc6-b2f8195953a4" CONNACK(sp: 0, rc: 5)
<7244.592.0> Trace session for b189241a-c9e8-48bb-9bc6-b2f8195953a4 stopped

So, this is because the output is playing tricks with you. When no password is provided the output is the erlang atom 'undefined'  (which basically means NULL or nil) when you pass the password "undefined" it's displayed exactly as the atom. So they look the same but aren't. Having a way of seeing this distinction in the trace would help to alleviate this confusion.

Oh I see, I have never used erlang before. Thanks for the info!
I think the situation is clear now. In my opinion it would be better if the password field would be handled the same way when using client certs, no password set, and not using client certs, no password set. Either it should be set to undefined or empty string but the same in both cases.
It is also strange that by the default SQL table definition the password can be null (other fields are marked not null explicitly), but the auth script expect it not to be null. At lest it tricked me.
Anyway I think I'll create a custom auth script for my use case, thanks for the help!

No problem - this was great input for us to make things easier to understand:

The formatting of the trace output is misleading
Why does the SQL table definition allow NULL passwords when the lua logic doesn't?

I'm not sure exactly that things are different when using and not using client-certs. The rules are still the same: a password has to be passed from the client to the server. If it is not set (not present in the MQTT package) then it will be undefined/nil/null otherwise whatever is in the MQTT connect package will be used as the password. Or am I missing something there?
In any  case this is great feedback! Thanks!

For your 2. point: It's just a matter of documentation, at least I was refering to the example SQL DDL for the table in the source code / docs (for e.g. here: https://github.com/erlio/vernemq/blob/master/apps/vmq_diversity/priv/auth/mysql.lua and here: https://vernemq.com/docs/configuration/db-auth.html)
CREATE TABLE vmq_auth_acl
   (
     mountpoint VARCHAR(10) NOT NULL,
     client_id VARCHAR(128) NOT NULL,
     username VARCHAR(128) NOT NULL,
     password VARCHAR(128),
     publish_acl TEXT,
     subscribe_acl TEXT,
     CONSTRAINT vmq_auth_acl_primary_key PRIMARY KEY (mountpoint, client_id, username)
   )

In my opinion the better thing would be to remove the requirement for the password. For example the purpose of using client certs like in my case is not to use a password. Making it mandatory makes this plugin unusable in this scenario. By the MQTT protocol definition only the client id is mandatory (http://docs.oasis-open.org/mqtt/mqtt/v3.1.1/csprd02/mqtt-v3.1.1-csprd02.html#_Toc385349764)
Regarding the differences when using client certs or not, the difference is maybe in the MQTT clients I was using, but in my case when I have not set client certs and tried to connect without a password, an empty string was received by the auth function (and it worked as I have mentioned before), when I have used client certs  but still no password set in client then it was undefined. But there is a chance that this difference is in the client not in the broker, I haven't verified this yet.
Thanks for your help again, and you are welcome!

As the original issue/question was answered I'll close this.


[Bug] [dlink-admin] 血缘解析异常

Search before asking

[X] I had searched in the issues and found no similar issues.

What happened
flink-sql中有两条insert into 语句，如下图所示，应该要生成两条血缘，实际只解析出一条血缘。

另外，计算血缘多点几次之后，图就会重叠在一块儿，如下图所示

What you expected to happen
解析出两条血缘，且显示正常
How to reproduce
如截图所示，写两个insert into语句即可复现
Anything else
No response
Version
0.6.0
Are you willing to submit PR?

[ ] Yes I am willing to submit a PR!

Code of Conduct

[X] I agree to follow this project's Code of Conduct

I will fix to it. thx

I will fix to it. thx

I will fix it. thx


net: openthread: add CSL transmitter API

This commit implements the OpenThread APIs to pass MAC keys and frame counter to the radio layer in order to process the
transmission security. This is needed for the correct functioning of a CSL transmitter.
Signed-off-by: Eduardo Montoya<EMAIL_ADDRESS>

@jukkar The changes are needed to support Thread 1.2. It would be great if we could get it into Zephyr before the freeze.


Feat View hierarchy

:scroll: Description
View hierarchy as an attachment
:bulb: Motivation and Context
https://github.com/getsentry/team-mobile/issues/64
:green_heart: How did you test it?

:pencil: Checklist

[X] I reviewed submitted code
[ ] I added tests to verify changes
[X] I updated the docs if needed
[X] All tests passing
[X] No breaking changes

:crystal_ball: Next steps

Codecov Report

:exclamation: No coverage uploaded for pull request base (v7.0.0@918a6d8). Click here to learn what that means.
Patch has no changes to coverable lines.

Additional details and impacted files
@@            Coverage Diff            @@
##             v7.0.0    #1189   +/-   ##
=========================================
  Coverage          ?   55.07%
=========================================
  Files             ?        2
  Lines             ?      138
  Branches          ?        0
=========================================
  Hits              ?       76
  Misses            ?       62
  Partials          ?        0

Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.

:umbrella: View full report at Codecov.
:loudspeaker: Do you have feedback about the report comment? Let us know in this issue.

@markushi @brustolin early feedback is welcomed since it's a working solution already.
Views are really nested, unfortunately.
Unclear what the extra params could be, we have to figure out what's useful besides the default ones.
It's not working on Android due to an issue on the bridge most likely, trying to figure out what's happening during de/serialization on Android.

Looks good to me, nice one!
Regarding the deep nesting: I'm wondering if it could make sense to aggregate certain "known" widgets.
E.g.
{
  "opacity": 0.5,
  "children": [{
    "visible": true,
    "children": [{
      "identifier": "button_login"
    }]
  }]
}

turns into
{
  "identifier": "button_login",
  "opacity": 0.5,
  "visible": true,
}

@krystofwoldrich its a Draft because there's a bug on Relay, but its ready to review, test are failing locally, working on them.

I believe this should be an optimization for the FE
I agree, that's something which could be done on FE! Looping in @narsaynorath

The CI is failing but otherwise looks good to me.

The CI is failing but otherwise looks good to me.

CI should fail, that's expected (just the analyze) step.

Docs: https://github.com/getsentry/sentry-docs/pull/5986

Is the event from your sample screenshot available in prod? I'd be interested in seeing how deep it actually ends up being. Seeing it would also help me understand the aggregated optimization mentioned above.
When this example was provided:

{
  "opacity": 0.5,
  "children": [{
    "visible": true,
    "children": [{
      "identifier": "button_login"
    }]
  }]
}

is this form the result of ignoring the private views? And the idea to aggregate the children is because the private views will show up in the data as nodes, but without anything meaningful since we're ignoring them? Is there a chance that a private view contains two (or more) children or is it always a 1:1 relationship in those cases?

@krystofwoldrich @brustolin this is ready for final review.

LGTM 🎉🚀🚀
I know I asked about the failing analyzer before, but why does it fail/why is it expected?

You can ignore this, it will be automatically solved once it's published.


"double display" of figures in Jupyter notebooks

using AMICAL's api to produce figures in a notebook sometimes results in a single figure being displayed more than one time. Most likely this is due to a combination of calling plt.show() internally (which should be avoided) and returning handles to figures created (which is a good thing).
I think that this will be solved when we implement an actual CLI, and reserved calling plt.show there, rather than inside functions.

Thanks @neutrinoceros, I will manage to remove double plt.show() for the plotting related stuff to be compliant with notebook uses. The CLI version is on its way 😉


Question about kernel patches, series vs standalone

I'm looking at the patchsets in the script dir and I'm assuming that the series patches 0001, 0002 are meant to be the new means of patching newer kernels instead of the standalone realsense-camera-formats.patch.
However, I noticed that the realsense-camera-formats.patch includes several formats which are not included in the series patches: Y8, Y10, Y12, Y16, RAW8, RAW16.  Y8I, Y12I, and Z16 are all omitted as well, but those have been included in the mainline kernel, so it makes sense that the series patches don't include them.   Are the excluded formats no longer necessary?
Also, would it make sense to add a new patch before the existing 0001 which includes Y8I, Y12I, and Z16 (and increment the existing patches in the series), thus allowing you to drop all patches but the series patches (haven't confirmed, but that's my suspicion)? Only kernel-4.4 would then apply new-0001 and then everyone else would apply new-0002 and new-0003. Would also streamline the process of adding new formats in the future as well as handling new kernels as (presumably) these camera formats get upstreamed

Hi @NP-Hardass
We should probably add patches.md to address some of the frequent questions regarding the patches.

We are only officially maintaining patches for 4.4 and 4.8. The rest are community contributed or deprecated.
realsense-camera-formats.patch is quite old, it is not referenced from the installation guide, and can be used to patch non-LTS Ubuntu distributions (works on Ubuntu 15 for example).
For R200, LR200, ZR300 you only need a patch if your kernel is older then 4.4. For F200 and SR300 you only need a patch if your kernel is older then 4.12. Our goal has always been to have RealSense work out of the box on Linux.
4.4 patches were split in two to provide clear attribution to the original work contributed by @teknotus vs enhancements done later on.
The upcoming RS400 series will not introduce any new pixel formats (as far as I know). We might still have a gap with UVC Frame Metadata that both SR300 and RS400 use, but it is much less critical to the end-user.

Thank you for the insightful question :)


Websocket error after refreshing UI

Rancher versions:
rancher/server: Master from March 5th
Steps to Reproduce:

Create few clusters using DO template
From the cluster list page refresh the UI

It results in websocket error and the nodecount shows zero

Without a valid cert, Google will drop the websocket connection on the browser side. You will need to close your window/tab  or restart the browser (not just refresh).

@soumyalj could you test with setting up with a valid cert and see if you still hit this issue?

With the websocket issue we see the cluster going to "Unavailable" State frequently with the below error:

@soumyalj this is a different websocket error, so we should open a new issue for this one.

Please let us know in a comment if you can still reproduce the issue, and we'll reopen it


Add Airflow Task Instance attempt number facet

In Airflow, a task instance can be cleared and attempted multiple times. Airflow tracks the try number and uses that to show relevant logs. We should report the try number for a run as a RunFacet. Consider something like the following facet definition:
{
  "$schema" : "https://json-schema.org/draft/2020-12/schema",
  "$id" : "https://openlineage.io/spec/facets/1-0-0/AirflowTaskInstanceAttemptRunFacet.json",
  "$defs" : {
    "AirflowTaskInstanceAttemptRunFacet" : {
      "allOf" : [ {
        "$ref" : "https://openlineage.io/spec/1-0-2/OpenLineage.json#/$defs/RunFacet"
      }, {
        "type" : "object",
        "properties" : {
          "dagName" : {
            "description" : "The name of the DAG",
            "type" : "string",
            "example" : "my_processing_dag"
          },
          "taskName" : {
            "description" : "The name of the task.",
            "type" : "string",
            "example" : "read_data"
          },
          "dagRunId" : {
            "description" : "The identifier of the specific DagRun this task instance belongs to",
            "type" : "string",
            "example" : "scheduled_2022-08-01T12:00:00Z"
          },
          "taskAttempt": {
            "description": "The task attempt as an integer - the attempt count begins with 1",
            "type": "integer",
            "example": 2
          }
        },
        "required" : [ "dagName", "taskName", "dagRunId", "taskAttempt" ]
      } ],
      "type" : "object"
    }
  },
  "type" : "object",
  "properties" : {
    "errorMessage" : {
      "$ref" : "#/$defs/AirflowTaskInstanceAttemptRunFacet"
    }
  }
}

I believe this is resolved by: https://github.com/OpenLineage/OpenLineage/pull/1413


Implement new buffering metrics collection

UI should send data when video playback or buffering occurs:

anonymized user id hash
content url (lbry://...)
buffering position
buffering duration
content duration
bitrate

Check OpenAPI spec for detailed fields description.

We don't have the bitrate stored anywhere - we should get this added as metadata on the SDK (probably along with some other metadata we didn't think of initially) but we can also calculate this from the file size/length which is in the metadata.


Update Timeline “2022-06-16t15-40-38-831z-campaign”

Automatically generated by Netlify CMS

👷 Deploy Preview for dynamic-cheesecake-5fbd8b processing.

Name
Link

🔨 Latest commit
2f9ad3c240ce5b7e3e232497523b19d27df498a0

🔍 Latest deploy log
https://app.netlify.com/sites/dynamic-cheesecake-5fbd8b/deploys/6338b3cf98210d0008228647


use disruptor with multi consumers and get wrong

disruptor version:
  <dependency>
      <groupId>com.lmax</groupId>
      <artifactId>disruptor</artifactId>
      <version>3.4.3</version>
  </dependency>

java version: 1.8
springboot version:2.5
10 Threads consumer message, after 5minitus later,  an thread occurred:

one thread occurred TIMED_WAITING, and then, disruptor can not consumer messge any more, stopped,
@Configuration
public class RingBufferConfiguration {
@Autowired
private ApplicationContext applicationContext;

@Bean
public RingBuffer<MessageVO> ringBuffer() {
    //  ring buffer size
    int bufferSize = 1024 * 1024;;
    //固定线程数
    int nThreads = 10;
    ExecutorService executor = Executors.newFixedThreadPool(nThreads);

    EventFactory<MessageVO> factory = new EventFactory<MessageVO>() {
        @Override
        public MessageVO newInstance() {
            return new MessageVO();
        }
    };

    // create ringBuffer
    RingBuffer<MessageVO> ringBuffer = RingBuffer.create(ProducerType.SINGLE, factory, bufferSize,  new BlockingWaitStrategy());
    SequenceBarrier barriers = ringBuffer.newBarrier();
    // 10 threads consumer message
    RiskCalculateHandler[] consumers = new RiskCalculateHandler[50];
    RiskCalculateService riskCalculateService = applicationContext.getBean(RiskCalculateService.class);
    AccountChangeHandler accountChangeHandler = applicationContext.getBean(AccountChangeHandler.class);
    for (int i = 0; i < consumers.length; i++) {
        consumers[i] = new RiskCalculateHandler(riskCalculateService, accountChangeHandler);
    }
    WorkerPool<MessageVO> workerPool = new WorkerPool<MessageVO>(ringBuffer, barriers,
            new RiskExceptionHandler(ringBuffer, riskCalculateService), consumers);
    ringBuffer.addGatingSequences(workerPool.getWorkerSequences());
    RingBuffer<MessageVO> ringBufferFinal = workerPool.start(executor);
    return ringBufferFinal;
}

}

你发的邮件我已经收到了。
                                    以上为自动回复邮件

The usual cause of that method blocking is that the ringbuffer is full.
I would guess that the consumers are not able to process the events as fast as they arriving. You could check this by adding logging to the consumers to track their progress, or other logging to periodically measure the depth of the ringbuffer.


Foxx Controller: value of req.server.address

(from #1170) It's debatable whether my initial thoughts on this are correct.
The field req.server.address contains <IP_ADDRESS> in my case. And that's probably from the endpoint definition in arangod.conf - so this may be as designed after all. Realizing that an arangod instance may expose multiple endpoints it does make sense to put this information into the request instead of the application context.
The way I now get the app's proto/server/port/basepath to build url's to send back to the client is this (it's even safe for use behind proxies):
exports.getBasePath = function(req) {
		var proto = req.headers["x-forwarded-proto"] || req.protocol;
		var host  = req.headers["x-forwarded-host"]  || req.headers.host;
		return proto + "://" + host + applicationContext.baseUrl;
	}

We could probably implement something like req.protocol and req.host (or something to that effect) in the request object and have it behave the way you described (i.e. use the proxy headers or the defaults).
I'm not sure whether allowing proxy-headers to override this is a security concern. Some web frameworks have a flag to toggle this behaviour but others seem to just use them by default.

This will be addressed in the 2.6 release. Currently there's an absoluteUrl method on the request object in devel that performs the logic you described. Any further improvements will be addressed via #1191.


ARROW-7926: [Dev] Improve "archery lint" UI

Rework options structure and semantics.
Individual checks are now boolean options.
A "--all" option is added that enables all checks.
One can easily disable or enable some checks selectively, e.g:
$ archery lint --rust --r
or:
$ archery lint --all --no-numpydoc

@fsaintjacques @kszucs

@kszucs would you be able to update the C++ developer documentation how to run things like iwyu with docker-compose?


/me display support

i can't emote!

messages starting with /me gets converted to emote message by hydrogen-view-sdk. What we are missing is proper emote messages display support


Refactor

Goal
The goal of this PR is to start refactoring some of OCMs internals, starting with the modules.
Changes

Most modules have been slightly refactored and some javadoc was added

A system to abstract away version specific itemstacks was added

A bug in the enderpearl cooldown and elytra hotbar swapping was hopefully fixed

Problems
This PR introduces a few TODOs that should likely be resolved in the comments/somewhere else.

Looks good, however here in the Module class, when you say 'plugin', do you not mean 'module'?

Yes, indeed.


ROOT_URL is wrong

Steps:

Start Web-demo test in Jenkins on local env
Open zafira and Open Web-demo test via link
Actual result: Link is incorrect(demo env link) and HTTP ERROR 404 Not Found is on the page

Env: qaprosoft/jenkins-master:5.0-beta9 and qps-infra: 5.0-beta8

changes are here: https://github.com/qaprosoft/qps-infra/commit/d7551120793fbf5d7a2a1b8ebfb2c00619b38dfc
do clear.sh and pull from develop (qps-infra)

Verified.


Add to homebrew

That would be great. Thanks for making this awesome CLI!

yes homebrew would be great.


Update: Removed unused buttons. Log out function fails upon button click

Describe your change in plain English.
Link to the issue

Could you check to see if your change is causing the one test in the pipeline to fail?
Thanks!

Looks like the failed test has nothing to do with the changes.
LoginTest#test_: when logging in as a staff member should direct to the organization's adoptable pets page. :
  Ferrum::ProcessTimeoutError: Browser did not produce websocket url within 5 seconds, try to increase `:process_timeout`. See https://github.com/rubycdp/ferrum#customization

This is usually caused because the CI machine is too slow. We can fix this by making a tweak in our settings. @ErinClaudio @kasugaijin we can safetly just ignore that. I'll open a issue to resolve it.

Looks like the failed test has nothing to do with the changes.
LoginTest#test_: when logging in as a staff member should direct to the organization's adoptable pets page. :
  Ferrum::ProcessTimeoutError: Browser did not produce websocket url within 5 seconds, try to increase `:process_timeout`. See https://github.com/rubycdp/ferrum#customization

This is usually caused because the CI machine is too slow. We can fix this by making a tweak in our settings. @ErinClaudio @kasugaijin we can safetly just ignore that. I'll open a issue to resolve it.

Ah yes. This is out flaky test. It failed a couple times ealier this evening too.

@kasugaijin @edwinthinks Thank you, for the update!


Adding a warning for database only restore

Adding some documentation for the new database only restore feature. API documentation update for the database only restore feature: https://github.com/mendix/docs/pull/3573
One step is missing though:

[ ] Update the restore backup screenshot

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.Ali Ozcan seems not to be a GitHub user. You need a GitHub account to be able to sign the CLA. If you have already a GitHub account, please add the email address used for this commit to your account.You have signed the CLA already but the status is still pending? Let us recheck it.

Closing this pull request as I don't have access to add image.
Changes are now in PR #3627


Revise structure of metadata chapter

@axgeertinger, @irmlindcapelle and I where thinking to adjust the structure of the metadata chapter to the following:

Intro
Structure of the MEI Header (here we explain the different areas of the header)
Works
Sources
The MEI file (<fileDesc>, <revisionDesc>)
FRBR
Authority Files
Common Concepts (here we explain things like <respStmt>
Typical Use Cases (here we plan to give best practice recommendations etc.)

The idea is to take a more user-oriented approach, and everytime we run into models that are used in various places, we only explain the specific use in this very position, but for the model itself, we just reference the "Common Concepts" chapter.
This one relates to #82. If we don't get negative feedback, we'll start to implement this in the next couple of weeks.

@kepper Is the proposed change still intended? Or deprecated by later changes/discussions?

@kepper @riedde @doerners I guess this can be closed as deprecated?

@musicEnfanthen not really. The current tasks improve the "Sources" Chapter but do not revise the structure of the Metadata Chapter (3) itself.
I like the idea of a more user-oriented structure. Should be discussed at the next meeting of the IG

I'm with @riedde on this one and would propose to leave it open - at least for now

Ok, thanks for checking and clarification. Looking forward to the outcome of your IG discussions.

Transferring to main repo.


Update control-plane dependency and expose thin prov parameters

chore(submodules): update control-plane dependency
Signed-off-by: Tiago Castro<EMAIL_ADDRESS>
feat(capacity/thin): add core-agent thin tweaks
Allows to control the pool and volume commitment at a cluster level.
Signed-off-by: Tiago Castro<EMAIL_ADDRESS>

bors merge

bors merge

bors merge


LRAPA_PA_FRM_fit.Rmd

This will be a top level RMarkdown document that summarizes what we've found in recent explorations with Amazon_Park.
I expect it you may not finish before the end of the month and I will want to spend some time on a final pass, but I think you can put together a pretty good article this week.
This will not need to be completely "reproducible" -- you don't need to include all the code required to download data and create datasets. In the final blog post version, I'll probably go through and clean up/rename various files in reports/OR/LRAPA/ and have links to those files. This version is just a draft to figure out how best to tell the story.
Basic outline:

[ ] Background -- discussion of PA vs FRM monitors and how lm() can be used to "correct" PA pm25 so that it more closely matches FRM pm25.
[ ] LRAPA -- discussion what LRAPA is, how they have co-located sensor-monitor pairs.
[ ] Amazon Park -- a few plots showing that this sensor is basically good and matches the FRM data quite well
[ ] Linear fit -- Using lm(pm25_monitor ~ pm25 + humidity) and a 5-day window to created our model. Then use predict() to create corrected (aka "fitted") values. Code snippet to show what we are doing. For a one-week window in July, show FRM pm25, PA pm25 and corrected (PA values with the lm() calculated linear correction applied.)
[ ] EPA correction  -- show a 4-month plot with PA pm25, FRM pm25 and EPA "corrected" pm25 (PA values with EPA linear correction applied.); This plot should show that the EPA "over corrects" during the smoky period.
[ ] Real-time linear fit -- Show the fit parameters for EPA (straight lines) and for real-time lm(). Pick ylim() that highlights the pm25 and humidity values. Don't worry about the smoky period when the intercept goes crazy.
[ ] Real-time vs EPA -- Discussion and plots showing PA pm25, FRM pm25, EPA corrected pm25 and real-time corrected pm25 for one week in July and one smoky week in October

Jon, when I try to use LRAPA_monitors object just created, the sensorMonitorData we created throws an error. I tried with the saved and then loaded LRAPA_monitors and that works fine. Maybe something that needs to be fixed in the function?
I wrote the entire rmd for everyone, so that people do not have to have files saved on their computer.  I'm pastin the code below, or see lines 101-163. in the rmd
For the rest the rmd runs smoothly. I left your requests in the rmd for easy check (see "TO DO:"), but clearly they need to be removed. I also left all R blocks in eval = TRUE mode for easy check, but some of them will need to be turned off.
Get monitors data
LRAPA_monitors <- monitor_loadLatest() %>%
monitor_subset(stateCodes = "OR") %>%
monitor_subsetBy(countyName == "Lane")
archiveDir <- "C:/Users/astri/Mirror/Mazamascience/Projects/Data/LRAPA"
LRAPA_monitors <- get(load(file.path(archiveDir, "LRAPA_monitors.rda")))
Create dataframe (df): Amazon Park PA one-week data -- July, 2020
NOTE: source functions in the "Setup" R block first!
sensorMonitorData_07 <-sensorMonitorData(pat = Amazon_Park,
ws_monitor = LRAPA_monitors,
monitorID = monitorID,
startdate = 20200701,
enddate = 20200706)


nullref @modeldifferencewin

Hi tolis,
i got nullRef exception while  modeldifference opening.
Xpand.ExpressApp.ModelDifference.Win.Controllers.ModelEditorTemplateViewController line:143
what if modelEditorPropertyEditor.Control is null then?

apparently there reasoning for this is that there was an previous error resulted in a null Control?
if you can be more specific like how to repro this.

Closing issue for age. Feel free to reopen it at any time.
.Thank you for your contribution.


Connection Pool timeouts on host failure with Redis Cluster.

I look to have found a bug in this client when migrating hosts in Redis cluster, it seems as though it doesn't refresh the list of hosts and their hash slots when migrating slots from one host to another.
Steps to reproduce.

Create Redis cluster with data and enough replicas to remove a host.
Remove a Redis host from the cluster.
Check to see Redis is still running and available with redis-trib.rb
Go client still doesn't refresh connections and shows redis: connection pool timeout even though I get/set keys through the cli.

Steps to fix.

Restart app.

Does it fix itself with time? Depending on how you configured Redis Cluster it can take some time before node is removed/replaced.

Remove a Redis host from the cluster.

How do you remove it? Just stop/kill? Or something more graceful?

Does it fix itself with time? Depending on how you configured Redis Cluster it can take some time before node is removed/replaced.

We've got cluster-node-timeout set to 15 seconds, so I'd expect the cluster to fail over in that time.  Looking at other clients during that time seems to backup that config.

How do you remove it? Just stop/kill? Or something more graceful?

Standard sigterm, host stops gracefully.

How can I reproduce this? I tried https://gist.github.com/vmihailenco/1c790383011ebc388dc469a640a76514 and it properly recovers from node failures.

I can't fix this without a way to reproduce the problem. Closing for now.


JavaScript Troubleshooting Tutorial: Warning: unreachable code after return statement

Write a short tutorial on JavaScript's Warning: unreachable code after return statement error message, following the "How to troubleshoot Python ZeroDivisionError" example tutorial.
The tutorial should be organized as follows:
---
title: How to troubleshoot JavaScript Warning unreachable code after return statement
author: your name
tags: [tutorial, JavaScript, troubleshooting]
publicationDate: today's date
description: Learn how to error handle JavaScript Warning unreachable code after return statement
image: https://storage.googleapis.com/sourcegraph-assets/learn/headers/sourcegraph-learn-header.png
imageAlt: Sourcegraph Learn
browserTitle: Warning unreachable code after return statement in JavaScript error handling
type: posts
---

Introduction with the error message

## Reproducing the error

Show how the error can be created.

## Solution 1

Provide a possible solution.

## Solution 2

Provide another solution.

## (optional) Solution 3

Optionally provide a third solution.

## Learn more

Search across open source JavaScript repositories that have the `Warning` to understand the message more.

<SourcegraphSearch query="Warning: unreachable code after return statement" patternType="literal"/>

Check out more Sourcegraph Learn tutorials on [JavaScript](https://learn.sourcegraph.com/tags/javascript).

If this seems like a tutorial that you can write effectively for the developer community, please follow our Hacktoberfest 2021 contributor guidelines to proceed.

Hey @ltagliaferri can I be assigned to this issue?


[Design] Create wireframe for profile settings

Description
As an user, I want to have the possibility to change my settings, so that I can reset my password (as an example).
Acceptance criteria

change username
change email
reset password
change profile picture?
logout
FAQ
delete account
left/right hand

Dependencies

none


Get form within scope

Previous code retrieved first form on page, and exited if that form did not have a name.
This change will let it get first form with a name within scope.
Needed if, like in my case, there are several nameless forms on the page that are out of my control and out of scope.

Oh yes you are right, I assumed that most people would have a name on the Form.
I will try your code tonight after work, it looks promising, just a question though, you loop through all the forms on the page, how will you know that you are on the good form? What if you don't have validations on the first form, will it be that one returned anyway? I think that I actually overlooked that fact myself though.
Your indentation seems a little offset at some areas, it might have to do 2 commits to fix that unless you want to fix it.
Thanks for the help

I guess I don't really know, I just used my case as a sample.
I am a part of a team that develops a rather large application, and as such I am mostly developing on the "content" part of each page.
I my case we have a couple of search boxes that form posts their queries, and are in reality in another project.
What we do have is control of the "content" part, and that is where we define angular-app and controller. Within that context there's only one form.
So what I tried to do was get the first form with a name that was within the scope of the app.
The indentations should be fixed now, I'll make a new pull request shortly.

Oh wow, this is nice knowing that my code is now used on large application, it's good for the ego hehe. I will probably push your code as is, since in my cases I also develop with the idea of 1 form per page so that wouldn't affect my side either. Unless we verify that there is at least 1 "validation" attribute in the list of elements that belongs to the form that your getScopeForm() is finding, would that be doable?
Again thanks a lot for the help, really appreciate it, which is also why I made it open to the big community of Open Source :)

I don't see why not...
Could you please fix that?  You have a much better understanding of the code than I do.
If you can't find the time,  I'll give it a go tomorrow.

Alright, I made some more code changes, added and tested that it works properly. To make sure that the form you found (with your code) really has children with validation attribute, I ended up adding a new function (I cannot seem to be able to do it in 1 line of code because of jqLite limitation, hence the new function):
/** Make sure the Form has at least 1 child element with a validation attribute
 * @param object form
 * @return bool
 */
function hasValidationAttributes(form) {
  for(var i = 0, ln = form.elements.length; i < ln; i++) {
    if(!!form.elements[i].getAttribute('validation')) {
      return true;
    }
  }
  return false;
}

and finally modified your line 292 with an extra call to the new function
if (form && form.name && self.scope[form.name] && hasValidationAttributes(form)) {

If you could make all your tests at your work and make sure that everything works as intended, I would be happy to have a revised pull request including the piece that I added.
As a side note, I found and fixed a little bug in my new checkFormValidity() function that I recently added. It doesn't affect your pull request (since it's in the service file), but I found it while I was trying and coding with your changes. I did not stamp it as a new revision as it's a minor tweak.
Thanks again

Actually forget my code, I just found out that it breaks my other page when using Form with only the Service since the html doesn't have validation attributes. So I will accept your code as is, I will have to find another way on making sure it's the same form.

Hi there, I just want to let you know that I had to redo and replace the getScopeForm(self) by a new function of getElementParentForm(self) to fix the issue https://github.com/ghiscoding/angular-validation/issues/23
I hope this will not break your code but since I don't have a way to test your code, I prefer to advise you... Let me know if something is broken on your side. I tried on my side with/without names on the form and it seems all good. Prior to this change, the $validationSummary was never really separated, it was always having the errors of all the forms, now it's fixed. You can see the example with multiple form on my main page demo.
Try it out. Hopefully it's still all good.

Thanks for the heads-up.
Check out my latest pull request :)


Collision with infinite mass type bodies while dragging

When i drag a body with normal mass type over a other body with normal mass type they collide. But when i drag the same body with normal mass type over a body with infinte mass type (a wall or something similar) they don't collide.
So my question is how can i set collision between a normal mass type body and a infinte mass type body while i drag the body with normal mass type?

@Flygir  can you be more specific in HOW you are dragging the body?

I work with JavaFX and listen to a MouseDrag Event on a JavaFX shape that is mapped to the body. So when I drag the Shape with my Mouse I set the shape and the body to the new coordinates given from the MouseDrag Event.

Take a look at https://github.com/dyn4j/dyn4j-samples/blob/master/src/main/java/org/dyn4j/samples/MouseDrag.java sample.  Here's another way https://github.com/dyn4j/dyn4j-samples/blob/master/src/main/java/org/dyn4j/samples/SimplePlatformer.java.  Not sure what type of control you need, but in general, setting the controlled body's transform will not work.


add copyright headers to source files

see angular/angular

add the header,
add the lint rule.

will be fixed in a coming PR


ember-cli-bootswatch not working with ember-cli v2.4.2?

Hi,
We have some issue where after upgraded to ember-cli 2.4.2, none of the bootstrap CSS / js are included in the application. Can you give me some ideas on how to determine if it is ember-cli-bootswatch at fault here.
Out application works perfectly fine under ember-cli 2.3.0
Thanks

Just updated an app to ember-cli 2.4.2 and it seems to be working.

Do you get any errors in the console when you run ember serve or ember build?
And are you looking in the vendor.js / vendor.css files for the Bootswatch stuff?
Finally, have you followed the "Project Update" steps in the ember-cli release notes?

If so, might be worth while to try a nombom

I think you are correct, probably have nothing to do with ember-cli-bootwatch, I just realise the problem is vendor.css is completely empty.
There is no error in the console when doing ember build, we are using ember-cli-sass so I guess  that is the next thing to check.
Thank you for you help

Just for your information, the culprit of our problem is actually ember-component-css addon
https://github.com/ebryn/ember-component-css/issues/122


Compatibility with Django 3

I tried to use django-dashing but realized it's not updated to work with Django 3. I did try to update django-dashing to Django 3, but noted there are more than a handful of modifications to be had:

It appears Django 3 introduces some breaking changes to django-dashing, such as removal of django.utils.six (used in dashing/settings.py), rename of settings.MIDDLEWARE_CLASSES to settings.MIDDLEWARE (used in test/test_app/test_app/settings.py). It appears some of the middlewares used in the test app do not appear to exist with the same name anymore.

Additionally it appears Python 2.7 support was dropped from Django from ~1.1~ 1.11 onwards.
Is there interest in supporting Django 3? Is django-dashing still supporting Python 2? Thanks in advance.

Hi, I just submitted a Pull Request to add this.
This has not been published to pypy since I am not the author of the plugin, but you can clone the project and pull in the code to start using it right away, which is what I'm doing.
Cheers,
Michael


ci: add release action for snap

This change will ensure that the snap is automatically uploaded and released to the edge and candidate channels in the snap store when a new release is cut.
I've done my best to read through and check this makes sense, but obviously a little hard to test until it happens. The build code mirrors what we do in the snap.yml, so I'm optimistic this will work!

That should now be fixed - classic confinement was granted for the snap yesterday :)


How to set it to render within a certain div range instead of the entire screen

I just want him to be displayed in a certain area

Found it in the document


Add async endpoint support

This commit adds async endpoint support to cron connector which can be enabled
using async_invocation environment variable

Description

Motivation and Context

[ ] I have raised an issue to propose this change (required)
[ ] My issue has received approval from the maintainers or lead with the design/approved label

#11
How Has This Been Tested?

Types of changes

[ ] Bug fix (non-breaking change which fixes an issue)
[ ] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to change)

Checklist:

[ ] My code follows the code style of this project.
[ ] My change requires a change to the documentation.
[ ] I have updated the documentation accordingly.
[ ] I've read the CONTRIBUTION guide
[ ] I have signed-off my commits with git commit -s
[ ] I have added tests to cover my changes.
[ ] All new and existing tests passed.

LGTM, next could you:

Sign-off the commit(s)
Fill out How Has This Been Tested?

And we should be able to finally ship this 🙂

@alexellis Added missing parts :)


Frontend pipeline overview

This issue will be split into smaller tasks  to improve traceability, and keep momentum, and this will just be a "wrapper" issue for this:

Get components from MUI, so we have the building blocks.
Step-by-step integrate the new components


No way to obtain proper rust completion

I tried both with rust-analyzer and rls, but I simply can't get any actual language completion. I'm stucked with only file completion (functions defined in the .rs file, already used names and words, etc).
I tried with the default and recommended ways found here and also with any kind of personal configuration found on other repos.

This should work! Can you get a log when using rls, see https://github.com/kak-lsp/kak-lsp#troubleshooting?

It now works. I changed nothing. Wut?

A Heisenbug!


Displaying loader icon while fetching new symptoms

The code changes are fine. Need to remove few commented lines in the script.


Bump tonic versions in tutorials

Bumping versions of tonic and tonic-build for the helloworld-tutorial. Tested and working as expected locally.

Hmm, my editor auto-formatted the file on save... let me roll that back.

Resolved auto-formatting issue

Thank you!


after "/admin" Error Pops in the same windows

kindly resolve it
I have installed the package successfully

Solved in new version v3.0.0


doc: Release note 3.0: Document removed STM32 Clock Kconfig symbols

In this release, STM32 Clock Kconfig symbols, which were deprecated
in favor of device tree, we removed.
Document it.
Fixes #42850
Signed-off-by: Erwan Gouriou<EMAIL_ADDRESS>

@carlescufi I'm getting compliance issue with "undefined Kconfig symbols", which I won't be able to avoid due to the nature of the PR. Aside than this the PR is ready to be approved I think.


Argument Error inserting to ets in query planner

Environment

Elixir version (elixir -v): 1.10.3
Database and version (PostgreSQL 9.4, MongoDB 3.2, etc.): Postgres 12.3
Ecto version (mix deps): Ecto. 3.4.2
Database adapter and version (mix deps): Postgrex 0.15.3
Operating system: OS X 10.5.5

Current behavior
Here's the code being called:
repo.stream(Ecto.Query.from(migration_def.old_table(), select: ^migration_def.fields()),
      timeout: :infinity
    )

This happened during sustained single threaded volume.
** (ArgumentError) argument error
    (stdlib 3.12.1) :ets.insert_new(#Reference<0.2329986327.1665007617.72438>, {[:all, {:take, %{0 => {:any, [:id, :username, :first_name, :last_name, :nickname, :company, :phone_number, :address_line_1, :address_line_2, :city, :state, :zip, :country_code, :created_at, :updated_at, :address_type, :is_default, :created_at, :updated_at]}}}, {{"addresses", nil}, nil}, {:select, {:&, [], [0]}}], :cache, %{assocs: [], from: {:any, {:source, {"addresses", nil}, nil, [id: :any, username: :any, first_name: :any, last_name: :any, nickname: :any, company: :any, phone_number: :any, address_line_1: :any, address_line_2: :any, city: :any, state: :any, zip: :any, country_code: :any, created_at: :any, updated_at: :any, address_type: :any, is_default: :any, created_at: :any, updated_at: :any]}}, postprocess: {:source, :from}, preprocess: [source: :from], take: [:id, :username, :first_name, :last_name, :nickname, :company, :phone_number, :address_line_1, :address_line_2, :city, :state, :zip, :country_code, :created_at, :updated_at, :address_type, :is_default, :created_at, :updated_at]}, {3971, "SELECT a0.\"id\", a0.\"username\", a0.\"first_name\", a0.\"last_name\", a0.\"nickname\", a0.\"company\", a0.\"phone_number\", a0.\"address_line_1\", a0.\"address_line_2\", a0.\"city\", a0.\"state\", a0.\"zip\", a0.\"country_code\", a0.\"created_at\", a0.\"updated_at\", a0.\"address_type\", a0.\"is_default\", a0.\"created_at\", a0.\"updated_at\" FROM \"addresses\" AS a0"}})
    (ecto 3.4.2) lib/ecto/query/planner.ex:157: Ecto.Query.Planner.cache_insert/3
    (ecto 3.4.2) lib/ecto/query/planner.ex:123: Ecto.Query.Planner.query_with_cache/7
    (ecto 3.4.2) lib/ecto/repo/queryable.ex:29: Ecto.Repo.Queryable.stream/3
    (api_v1 0.1.0) lib/api_v1/data_migration/postgres_migrator.ex:12: ApiV1.DataMigration.PostgresMigrator.migrate/1
    (elixir 1.10.2) lib/task/supervised.ex:90: Task.Supervised.invoke_mfa/2
    (elixir 1.10.2) lib/task/supervised.ex:35: Task.Supervised.reply/5
    (stdlib 3.12.1) proc_lib.erl:249: :proc_lib.init_p_do_apply/3

Expected behavior
The query works.

Hi @aselder! Quick question: does the error happen consistently on every query or is it happening only from time to time? If it is happening only from time to time, do you see other reports?

@josevalim It's happening very infrequently. I'd say on the order 1 out of a million queries. I've been writing a migration script to transfer ~7 million rows between DBs. I've probably run the script ~20 times and seen this error 2 or 3 times.

This is quite surprising. What is your OTP version?
This command can only fail if the table does not exist and the table doesn’t exist only if the repository process crashed for some reason, but then you should see other failures logged too. I assume there are no other failures however?

Erlang/OTP 22 [erts-10.7.1] [source] [64-bit] [smp:8:8] [ds:8:8:10] [async-threads:1] [hipe]
Interactive Elixir (1.10.2) - press Ctrl+C to exit (type h() ENTER for help)

I don't remember seeing any other logged failures, and I've lost the log off my scrollback. If I see it again, I'll take another look.

@josevalim Just ran into again just now. No other failures before the failure inserting into ets.
log.txt

So the only scenario where insert_new can fail is if the table does not exist OR the table is private, which is not the case: https://github.com/elixir-ecto/ecto/blob/93f6465c596d6d4875fac11f72e9669af6a09419/lib/ecto/query/planner.ex#L91
Therefore, there are in my mind only two possible scenarios:

There is a bug in the Erlang VM - you could try the latest to see if it has been addressed.

The table owner process (which is the ecto repo) is terminating, which doesn't seem to be the case based on your reports. Perhaps, if we want to be double sure there is no other failure, you can run the code with elixir --logger-sasl-reports true -S mix .... That will include other restarts you may have in the app.

I got another error today, which may or may not be related:
17:59:54.969 [error] Task #PID<9355.12560.0> started from #PID<9355.16732.0> terminating
** (stop) exited in: DBConnection.Holder.checkout(#PID<9355.16389.0>, [log: #Function<9.66731207/1 in Ecto.Adapters.SQL>, timeout: :infinity, timeout: 15000, pool_size: 10, pool: DBConnection.ConnectionPool])
    ** (EXIT) no process: the process is not alive or there's no process currently associated with the given name, possibly because its application isn't started
    lib/db_connection/holder.ex:86: DBConnection.Holder.checkout/2
    lib/db_connection.ex:1029: DBConnection.checkout/3
    lib/db_connection.ex:1050: DBConnection.checkout/4
    lib/db_connection.ex:1485: DBConnection.begin/3
    lib/db_connection.ex:829: DBConnection.transaction/3
    (elixir 1.10.3) lib/task/supervised.ex:90: Task.Supervised.invoke_mfa/2
    (elixir 1.10.3) lib/task/supervised.ex:35: Task.Supervised.reply/5
    (stdlib 3.12.1) proc_lib.erl:249: :proc_lib.init_p_do_apply/3
Function: #Function<4.16401342/0 in ApiV1.DataMigration.FullMigration>
    Args: []
** (EXIT from #PID<0.12560.0>) shell process exited with reason: exited in: DBConnection.Holder.checkout(#PID<0.16389.0>, [log: #Function<9.66731207/1 in Ecto.Adapters.SQL.with_log/3>, timeout: :infinity, timeout: 15000, pool_size: 10, pool: DBConnection.ConnectionPool])
    ** (EXIT) no process: the process is not alive or there's no process currently associated with the given name, possibly because its application isn't started

Oh, those are definitely related. The only reason this command will fail is because the connection pool is no longer available. So my initial suspicion that the repo supervisor is dying seems to be correct. We just need to understand why it is crashing. Have you tried running it with the elixir --logger-sasl-reports true -S mix ... command?

Closing this. If there is a mechanism to reproduce this error, please let us know. But as mentioned above, if this is happening, it is mostly because the supervision tree is shutting down.


suggestion: led indication of ap mode

as on the real thing , one could have a led indicating which AP mode is selected :

a video of the real thing in action:
https://www.youtube.com/watch?v=TLRn8gpOxv0

I think currently it won't be possible because it will get synchronized. To do this an application has to run on the PC and hook into the flight sim and send back state of autopilot.
Additionally this will almost double the pins needed.
In the future I'm planing a version 2 which communicates via SimConnect. There I might consider this again but this will take a while.

would it be possible with mobiflight and logic for lights maybe ?

I'm not very familiar with mobiflight but I think it might be possible but as far as I can tell the mobiflight firmware doesn't support the MCP23017 so the firmware has to be modified.


Error - missing required architecture arm64

Hi,
Using FlashDevelop, AIR SDK 16.0, while packaging for iOS, got the following error:
ld: missing required architecture arm64 in file C:\Users\XXXX\AppData\Local\Temp\0b8932e3-cb26-4014-941c-2261b4e4b39f/SpeechKit.framework/SpeechKit (3 slices) for architecture arm64
Compilation failed while executing : ld64

You can try clone the repo and use that version. The zip version didn't updated yet. Will be update in a few days.


⚠ Thumbnails API Endpoint has degraded performance

In 680e3e2, Thumbnails API Endpoint (https://thumbnails.roblox.com/v1/assets?assetIds=82738847&format=Png&isCircular=false&size=30x30) experienced degraded performance:

HTTP code: 200
Response time: 2315 ms

Resolved: Thumbnails API Endpoint performance has improved in f9f7675 after 20 minutes.