Ref #78 Updated to kubectl 1.6.3

What

Completes #78
updates our kubectl to 1.6.3

Testing

Unit tests still pass
I ran the functional tests locally and they are all still passing

test_functional_1  |
test_functional_1  | ><EMAIL_ADDRESS>test-functional /
test_functional_1  | > mocha test/functional --recursive
test_functional_1  |
test_functional_1  |
test_functional_1  |
test_functional_1  |   Functional
test_functional_1  |     when deploying to example cluster
test_functional_1  |       and example cluster does not exist yet
        ✓ should deploy without error (4750ms)
test_functional_1  |       and when running same deploy again (no differences)
        ✓ should deploy nothing and send webhooks (4417ms)
test_functional_1  |     when deploying to example cluster
test_functional_1  |       and exceeding AVAILABLE_TIMEOUT
        ✓ should trigger a TimeoutError (2669ms)
test_functional_1  |     when deploying to badimage cluster
test_functional_1  |       and deployment fails because of image pull errors
        ✓ should trigger a health check failure (25775ms)
test_functional_1  |     when deploying multiple deployments cluster
test_functional_1  |       and multi-deployments cluster does not exist yet
        ✓ should deploy without error (7805ms)
test_functional_1  |       and multi-deployments cluster has already been deployed
        ✓ should deploy nothing and send webhooks (5348ms)
test_functional_1  |     when deploying mix deployment and service cluster
test_functional_1  |       and mix-deployment-service cluster does not exist yet
        ✓ should deploy without error (4832ms)
test_functional_1  |       and mix-deployment-service cluster has already been deployed
        ✓ should deploy nothing and send webhooks (4404ms)
test_functional_1  |     when no unique namespaces and deploying to cluster
      ✓ should deploy without error (842ms)
test_functional_1  |     when deploying a single job to a cluster
      ✓ should deploy without error (7702ms)
test_functional_1  |
test_functional_1  |
test_functional_1  |   10 passing (1m)
test_functional_1  |
kitdeployer_test_functional_1 exited with code 0

We should run this in testing for a while. Also, there is a global cluster running k8s 1.6 we can test against.


OP-1642 test deb after build and pipeline parallel optimization.

Testing deb on clean ubuntu image.
Updated to install curl with casper-node and reworked all of package to use curl.
drone_s3_storage to cache artifacts between pipelines on different machines.
This was tested on the release-test branch here: http://drone-auto.casperlabs.io/CasperLabs/casper-node/2557/5/3

bors r+


Migration: group-member-list

Description
This pull request updates the Markdown documentation for the group-member-list component. It includes detailed descriptions and visual examples of the component's functionalities, especially focusing on the new tooltip feature implemented in the HTML code. The document now covers:
Detailed component outcomes and interactions, highlighting the new tooltip functionality.
Comprehensive migration plan sections, with before-and-after images showcasing the HTML changes related to the tooltip feature.
Enhanced visual aids to improve understanding of the component's evolution and usage.
These updates aim to provide a clear, informative, and visually engaging documentation for team members and stakeholders to better understand the component's features and developmental progress.
Fixes # (issue)
Type of change
Please delete options that are not relevant.

[x] Bug fix (non-breaking change which fixes an issue)
[x] New feature (non-breaking change which adds functionality)
[x] Breaking change (fix or feature that would cause existing functionality to not work as
expected)
[x] Documentation (update or new)

How Has This Been Tested?
Please describe the tests that you ran to verify your changes. Provide instructions so we can
reproduce. Please also list any relevant details for your test configuration
Testing Checklist:

[x] Tested in latest Chrome
[x] Tested in latest Safari
[x] Tested in latest Firefox

Checklist:

[x] My code follows the style guidelines of this project
[x] I have performed a self-review of my own code
[x] I have commented my code in hard-to-understand areas
[x] I have made corresponding changes to the documentation
[x] My changes generate no new warnings
[x] I have requested a review from ... on the Pull Request

@s223749059


Add Code Coverage indicator at README.md

Use this tool: https://app.codacy.com/organizations

Reopen: Mistake on linked pull request


Labels appear, but keypress don't jump - they enter the pressed keys as text

I have no idea when this started happening. But to be fair, I hadn't used the extension between when I opened #5 and until a couple weeks ago when I noticed this, but was too busy to open this ticket. I'll try using the version before my PR to see if it broke something (tho when testing that PR locally, seemed to work fine 🤷🏽 )
Update: can confirm v0.0.7 works
Screencap:
https://github.com/shadowndacorner/vscode-easymotion/assets/22646419/7427f077-e614-4b60-8acb-9358605a900f

Interesting.  Does this happen for you consistently, or does it happen seemingly at random?  I've had this happen once or twice on older versions of the extension, but since I use the extension daily and it was so infrequent/difficult to reproduce, I haven't spent too much time looking into it.  I assumed it had something to do with VS Code still initializing while trying to start the jump, but that's really just a guess at this point.
Regardless, thanks for reporting and providing a screen capture!

Consistently, 100% of the time. Wondering if:

the specific action I've got a key binding for is the only broken one
I've got multiple actions for that binding that for some reason conflict with new version, though I don't think vsc bindings work that way

I'm not at my work Mac rn to check, but it could be an os thing as well?
Either way I can just spin up a debugger and check it out, hoping it occurs during then as well

@riotrah Just following up on this to see if you ever had a chance to debug.  I've tried to reproduce it on and off since this was first reported, but am still unable to do so.

I am having the same issue on Windows 11. If someone figures out the issue, then please share!

Extension(v0.0.8) does not seem to work alongside extension vscodevim (v1.28.1). Outside of vscode, I use the standalone vim with the vim-easymotion plugin with no problems. However, within vscode, after the Alt-/ is pressed, the highlights occur, but the next characters typed are still sent to vim and not to this EasyMotion extension, so can't continue the search/motion. When the vscodevim extension is disabled, then EasyMotion seems to work as designed.  Ideas?


unable to parse : missing tag value

Hello Christian,
Nice job
I am testing your parser but i have an issue with it
The error is:
[udp] 2016/07/18 01:24:03 Failed to parse points: unable to parse 'radius,type=accept,ap=cisco\ vwlc\ client,special=,special_type=OU value="domaine.com/society/100\ SOCIETY/01\ SIEGE\ SOCIAL/DIRECTION\ SERVICE\ INFORMATIQUE/0023\ SOCIETY\ DSI\ DIRECTION\ TECHNIQUE/FIRSNAME\ LASTNAME"<PHONE_NUMBER>000000000': missing tag value
UDP source is an Windows 2012R2 running NPS
Thank you for your help
System information:
Linux testing-box 3.16.0-4-amd64 #1 SMP Debian 3.16.7-ckt25-2+deb8u3 (2016-07-02) x86_64 GNU/Linux
Package: grafana
Architecture: amd64
Version: 3.1.0-1468321182
Package: influxdb
Architecture: amd64
Version: 0.13.0-1

the problem seems to be the "special=". Tags can't be empty in InfluxDB
It's now fixed :)

Great
Thank you Christian, now i can see data
Regards


Triggering all participations fails with NPE

Describe the bug
After updating the test repo, we wanted to retrigger all submissions (some active, some inactive). However, it fails with lots of NPE.
To Reproduce
Go to an exervicse, list all participations, press "trigger all submissions".
Expected behavior
All submissions are triggered. Inactive ones become active again.
Environment

 - OS: Linux server
 - Browser [e.g. chrome, safari]: firefox
 - Artemis 4.8.4
 - Jenkins/Gitlab

Additional context
I remote debugged the issue. The root cause is that configureBuildPlan in Jenkins Service calls "participation.getProgrammingExercise().getTemplateRepositoryUrl()"
However, in the fetched exercise object the template repository object is a Hibernate proxy. Hence, the getter return null instead of the expected object. I am just now trying to deploy a hotfix that eagerly fetches the template repository object instead of lazy. However, not sure if performance-wise this is the best solution.

It indeed seems that the following patch helps:
diff --git a/src/main/java/de/tum/in/www1/artemis/domain/ProgrammingExercise.java b/src/main/java/de/tum/in/www1/artemis/domain/ProgrammingExercise.java
index 424db09d6..b573ea89d 100644
--- a/src/main/java/de/tum/in/www1/artemis/domain/ProgrammingExercise.java
+++ b/src/main/java/de/tum/in/www1/artemis/domain/ProgrammingExercise.java
@@ -80,12 +80,12 @@ public class ProgrammingExercise extends Exercise {
@Column(name = "project_key", table = "programming_exercise_details", nullable = false)
private String projectKey;

@OneToOne(cascade = CascadeType.REMOVE, orphanRemoval = true, fetch = FetchType.LAZY)

@OneToOne(cascade = CascadeType.REMOVE, orphanRemoval = true, fetch = FetchType.EAGER)
@JoinColumn(unique = true, name = "template_participation_id")
@JsonIgnoreProperties("programmingExercise")
private TemplateProgrammingExerciseParticipation templateParticipation;

@OneToOne(cascade = CascadeType.REMOVE, orphanRemoval = true, fetch = FetchType.LAZY)

@OneToOne(cascade = CascadeType.REMOVE, orphanRemoval = true, fetch = FetchType.EAGER)
@JoinColumn(unique = true, name = "solution_participation_id")
@JsonIgnoreProperties("programmingExercise")
private SolutionProgrammingExerciseParticipation solutionParticipation;

Also performance is not really different than before...

We would prefer a different solution. It should be enough to fetch those values in the corresponding repository methods that are used in the REST resources


docs(deps): update list of peer dependencies #129

Alaska Airlines Pull Request
Please include a summary of the change and which issue is fixed. Please also include relevant motivation and context. List any dependencies that are required for this change.
Fixes: #129
Summary:
Update documented list of peer dependencies
Type of change:
Please delete options that are not relevant.

[ ] New capability
[ ] Revision of an existing capability
[ ] Infrastructure change (automation, etc.)
[x] Docs

Checklist:

[x] My update follows the CONTRIBUTING guidelines of this project
[x] I have performed a self-review of my own update

By submitting this Pull Request, I confirm that my contribution is made under the terms of the Apache 2.0 license.
Pull Requests will be evaluated by their quality of update and whether it is consistent with the goals and values of this project. Any submission is to be considered a conversation between the submitter and the maintainers of this project and may require changes to your submission.
Thank you for your submission!
-- Auro Design System Team

You missed the update with the CDN bundles. The reference to design-tokens is incorrect.
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/<EMAIL_ADDRESS>/>
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/<EMAIL_ADDRESS>/>
<script src="https://cdn.jsdelivr.net/npm/<EMAIL_ADDRESS>type="module"></script>

Also, see the screenshot. When using the CDN bundles, it's not appearing as the icons are coming through.

You missed the update with the CDN bundles. The reference to design-tokens is incorrect.
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/<EMAIL_ADDRESS>/>
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/<EMAIL_ADDRESS>/>
<script src="https://cdn.jsdelivr.net/npm/<EMAIL_ADDRESS>type="module"></script>

Also, see the screenshot. When using the CDN bundles, it's not appearing as the icons are coming through.

They seem to be working for me?

:tada: This PR is included in version 2.0.3 :tada:
The release is available on:

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


[WIP][18.09 backport][Carry 39595] Tailor CI for ARM, skip legacy integration test

based on top of https://github.com/docker/engine/pull/395
backport of https://github.com/moby/moby/pull/39678
carry of https://github.com/moby/moby/pull/39595 Tailor CI for ARM, skip legacy integration test
closes https://github.com/moby/moby/pull/39595 Tailor CI for ARM, skip legacy integration test
fixes https://github.com/moby/moby/issues/39479 Jenkins CI for arm64
# https://github.com/moby/moby/pull/39678 [Carry 39595] Tailor CI for ARM, skip legacy integration test
git cherry-pick -s -S -x \
    af86580000d8a2a56ad526e47358d9cdd6b9dec7 \
    48b06a2561d5779cd8317047c01a10dee8d189ff \
    402c7b1b278683efe7ca3a2119319fda4838a392 \
    86e0c5a0d4e6462b79af0db5c016bf061854ed8f \
    58d57c76b5264804619c58702b2e33b3fe6253b3 \
    9d5361de3f9b090b317cf1ddb87bd50cda29a38b \
    14ea1f62eb8be694cb27cca016d6146c341dba9a \
    a0d670e516e893fbf6c76bd5f56306256157605f \
    eda98ad00ffdf8f39ce3c704d02c5c2c34fb0ee0

- What I did
This PR is trying to make a minimal test set (without legacy integration test cases) for ARM.
Introduce a new environment variable SKIP_LEGACY_INTEGRATION_TEST to control whether legacy integration test cases are ignored or not.
- How I did it

Introduce a new environment variable SKIP_LEGACY_INTEGRATION_TEST, default value is "no".
If it's set to "yes" or anything rather than "no", legacy integration suites will be skipped.
In arm CI, SKIP_LEGACY_INTEGRATION_TEST is set to "yes".
CI for other architecture's are not impacted.

- How to verify it
Run "make test-integration" on an ARM machine.
- Description for the changelog

See the discussion in issue: https://github.com/moby/moby/issues/39479
Backgroud: CI on arm (32 and 64 bit) architecture took too long time to finish. So the CI for it was stopped. Now I am trying to bring it back, and try to set a minimal set in it to save time.
- A picture of a cute animal (not mandatory but encouraged)

Let's close for now


FAT storage cache

There is maybe a latency issue with the payload IOS implementation.

IPC interrupts are broken.

Superseded by 5b7913b6ad6111cb9aa747194381321e62a4a5c7 and 4a7be879321d32c5ee90645a2d0c6453885db054.


Missing secret-key config value validation

It is not clear from the charm docs that the secret-key needs to be at least 8 char long
It is also not very verbose from Juju POV what is actually happening on the charm
Ideally I would expect to have some config value validation on the charm to set it maybe on blocked state but avoid having the actual service down
Reproduce
juju config minio secret-key=minio

Logs
I cannot access MinIO website
$ juju status | grep minio
minio                      res:oci-image@1755999    waiting      1  minio                    ckf-1.7/stable  186  <IP_ADDRESS>  no
mlflow-minio               res:oci-image@1755999    active       1  minio                    ckf-1.7/edge    186  <IP_ADDRESS>  no
minio/0*                      error     idle   <IP_ADDRESS>  9000/TCP,9001/TCP  crash loop backoff: back-off 2m40s restarting failed container=minio pod=minio-0_kubeflow(1980c8fe-8cb3-4099-b9eb-2c6...
mlflow-minio/0*               active    idle   <IP_ADDRESS>   9000/TCP,9001/TCP

$ microk8s.kubectl get pods -n kubeflow | grep minio
minio-operator-0                                1/1     Running            0              40d
mlflow-minio-operator-0                         1/1     Running            0              67m
mlflow-minio-0                                  1/1     Running            0              66m
minio-0                                         0/1     CrashLoopBackOff   5 (105s ago)   6m24s

$ microk8s.kubectl logs -n kubeflow minio-0
Defaulted container "minio" out of: minio, juju-pod-init (init)
ERROR Unable to validate credentials inherited from the shell environment: Invalid credentials
      > Please provide correct credentials
      HINT:
        Access key length should be at least 3, and secret key length at least 8 characters

@orfeas-k I just spent a few hours having to debug this with trial-and-error, because juju debug-log doesn't help at all :) Could you add some check in the charm, and set it to Blocked with a nice message?

The bug still persists. I tried to configure the secret-key as minio and it changed to error state without any warning.
I was able to verify the reason the error in the logs as it had a hint there.
Before configuring minio secret-key -

After configuring minio secret-key -  juju config minio secret-key=minio

Destroying the model and redeploying the bundle seems to be the only way out. I tried changing the minio secret-key to minio1234 but it doesn't budge.
These are some logs and metrics that might help:
kubectl logs -n kubeflow minio-0

juju config minio

kubectl get po -n kubeflow | grep minio

kubectl describe po -n kubeflow minio-0
shrishtikarkera@rag-demo-jh:~$ kubectl describe po -n kubeflow minio-0
Name:             minio-0
Namespace:        kubeflow
Priority:         0
Service Account:  default
Node:             juju-df992b-0/<IP_ADDRESS>
Start Time:       Thu, 24 Oct 2024 17:26:26 +0000
Labels:           app.kubernetes.io/name=minio
                  apps.kubernetes.io/pod-index=0
                  controller-revision-hash=minio-6c98d6979f
                  statefulset.kubernetes.io/pod-name=minio-0
Annotations:      apparmor.security.beta.kubernetes.io/pod: runtime/default
                  charm.juju.is/modified-version: 0
                  cni.projectcalico.org/containerID: 0edba5c721d19cab0f453b3b50bcd1b4c558f1ea99da427c976854d3079777a5
                  cni.projectcalico.org/podIP: <IP_ADDRESS>/32
                  cni.projectcalico.org/podIPs: <IP_ADDRESS>/32
                  controller.juju.is/id: b5d69926-8e8a-4363-8b01-49608c270755
                  model.juju.is/id: e60163c9-3b29-4c02-8129-918cf0fbec30
                  seccomp.security.beta.kubernetes.io/pod: docker/default
                  unit.juju.is/id: minio/0
Status:           Running
IP:               <IP_ADDRESS>
IPs:
  IP:           <IP_ADDRESS>
Controlled By:  StatefulSet/minio
Init Containers:
  juju-pod-init:
    Container ID:  containerd://59b404417f50ebd8d4dfe780b3a77279a680f37a3776d5df50d53ba34e5356c1
    Image:         docker.io/jujusolutions/jujud-operator:3.5.4
    Image ID:      docker.io/jujusolutions/jujud-operator@sha256:c00558be1d56a960451686327a422aaa766b1024730126600b5d79ad9ea10b84
    Port:          <none>
    Host Port:     <none>
    Command:
      /bin/sh
    Args:
      -c
      export JUJU_DATA_DIR=/var/lib/juju
      export JUJU_TOOLS_DIR=$JUJU_DATA_DIR/tools

      mkdir -p $JUJU_TOOLS_DIR
      cp /opt/jujud $JUJU_TOOLS_DIR/jujud

      initCmd=$($JUJU_TOOLS_DIR/jujud help commands | grep caas-unit-init)
      if test -n "$initCmd"; then
      exec $JUJU_TOOLS_DIR/jujud caas-unit-init --debug --wait;
      else
      exit 0
      fi

    State:          Terminated
      Reason:       Completed
      Exit Code:    0
      Started:      Thu, 24 Oct 2024 17:26:28 +0000
      Finished:     Thu, 24 Oct 2024 17:26:41 +0000
    Ready:          True
    Restart Count:  0
    Environment:    <none>
    Mounts:
      /var/lib/juju from juju-data-dir (rw)
      /var/run/secrets/kubernetes.io/serviceaccount from kube-api-access-6glbp (ro)
Containers:
  minio:
    Container ID:  containerd://1000e74102d4c18c555f77bbb5e2ce010a24891e68b1c24b5e7b889a998e1474
    Image:         registry.jujucharms.com/charm/81j63o4a2ldarn1umc22iyjz1q9l9g0sx5b8j/oci-image@sha256:220b31a68d3264f53a746a364207f28868887a7c62c61cc650fd52d8e557641a
    Image ID:      registry.jujucharms.com/charm/81j63o4a2ldarn1umc22iyjz1q9l9g0sx5b8j/oci-image@sha256:220b31a68d3264f53a746a364207f28868887a7c62c61cc650fd52d8e557641a
    Ports:         9000/TCP, 9001/TCP
    Host Ports:    0/TCP, 0/TCP
    Args:
      server
      /data
      --certs-dir
      /minio/.minio/certs
      --console-address
      :9001
    State:          Waiting
      Reason:       CrashLoopBackOff
    Last State:     Terminated
      Reason:       Error
      Exit Code:    1
      Started:      Thu, 24 Oct 2024 17:37:33 +0000
      Finished:     Thu, 24 Oct 2024 17:37:33 +0000
    Ready:          False
    Restart Count:  7
    Environment Variables from:
      minio-secret  Secret  Optional: false
    Environment:
      MINIO_PROMETHEUS_AUTH_TYPE:  public
      configmap-hash:              654cf2f1d31af8f2f86f275ea9f423a05743a81a2bfdfd055048c1cad270e388
    Mounts:
      /data from minio-data-75d42bd0 (rw)
      /minio/.minio/certs/CAs from ssl-ca (rw)
      /usr/bin/juju-exec from juju-data-dir (rw,path="tools/jujud")
      /var/lib/juju from juju-data-dir (rw)
      /var/run/secrets/kubernetes.io/serviceaccount from kube-api-access-6glbp (ro)
Conditions:
  Type              Status
  Initialized       True
  Ready             False
  ContainersReady   False
  PodScheduled      True
Volumes:
  minio-data-75d42bd0:
    Type:       PersistentVolumeClaim (a reference to a PersistentVolumeClaim in the same namespace)
    ClaimName:  minio-data-75d42bd0-minio-0
    ReadOnly:   false
  juju-data-dir:
    Type:       EmptyDir (a temporary directory that shares a pod's lifetime)
    Medium:
    SizeLimit:  <unset>
  ssl-ca:
    Type:       EmptyDir (a temporary directory that shares a pod's lifetime)
    Medium:
    SizeLimit:  <unset>
  kube-api-access-6glbp:
    Type:                    Projected (a volume that contains injected data from multiple sources)
    TokenExpirationSeconds:  3607
    ConfigMapName:           kube-root-ca.crt
    ConfigMapOptional:       <nil>
    DownwardAPI:             true
QoS Class:                   BestEffort
Node-Selectors:              kubernetes.io/arch=amd64
Tolerations:                 node.kubernetes.io/not-ready:NoExecute op=Exists for 300s
                             node.kubernetes.io/unreachable:NoExecute op=Exists for 300s
Events:
  Type     Reason   Age                   From     Message
  ----     ------   ----                  ----     -------
  Warning  BackOff  4m36s (x46 over 14m)  kubelet  Back-off restarting failed container minio in pod minio-0_kubeflow(7808ee0c-01f4-42f8-8dae-adfb8354568e)

Fixed and promoted the charm to ckf-1.9/stable so it won't be an issue with CKF=>1.9. Feel free to re-open if this is not the case.


Add bare minimum to run on endpoint routing

This will allow users to use either endpoint routing (by using MapIdentityServer) or regular middleware (by calling UseIdentityServer).
I've tried to keep this free from breaking changes, but it's still missing some stuff. I guess we should determine how far we're willing to go with breaking changes and what the migration story should be.

Thanks for doing this! We will have a look ASAP!

moving to future. thx.

Are you dropping plans for endpoint routing? 🤔

Wird - I cannot remember closing it...

 ;)
Do you want to re-create the PR so it is not lost?

Do you want to re-create the PR so it is not lost?

I don't have time to finish it right now, so it might as well just stay closed. There's already #2569 to track the work 😄

no problem.


Add Probability Hypothesiser

Add a single probability hypothesiser. Existing Data Associators should support this, but tests should be added to ensure this.

@sdhiscocks could you explain what a "single probability hypothesiser" does?

@sdhiscocks could you explain what a "single probability hypothesiser" does?

So I believe this was around the discussion to have a simple probability hypothesiser in case where detection probabilities and clutter spatial densities are unknown. The nearest neighbour data associatiors should be able to handle this.

Closed with #67 and #202


FIXED-LINTING-ERROR-CI-CHECK

Linked Issue(s)

Closes #599
Acceptance Criteria fulfillment

✅  Fixed All-File Linting CI Check
Proposed changes (including videos or screenshots)

Further comments

This change was necessary to maintain a clean development environment and ensure that the CI checks run without errors. I have tested it in my local fork, and it works fine. If there are any questions or further suggestions regarding this solution, I am open to discussion.

 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.You have signed the CLA already but the status is still pending? Let us recheck it.

LGTM!
But why is your PR title screaming at me? :D


Added Ui exp into results.html

Hi, i just wanted to add some web insteraction with the api. I think it could be useful for testing.
I would like to know if your still working in this project.

Hi @KristopherJordan
Answering to your comments:

Sorry for modify in that way your Readme file :sweat_smile: . I have corrected my daring
I have added a validation in in the request to the infor route to solve that behavior.

Can you add a method in the python code for clear all saved games?

@Jonathinsm , I made some more functionality to the app:

Delete all games: DELETE /games
Delete a game by its game id: DELETE /game/<ID>
Get all games: GET /games

Please take a look at /tests/test_handlers_game for implementation :)
I updated this branch with the code from the master branch :)


📃: Calculator under API Service

:red_circle: Title : Calculator under API Service
:red_circle: Aim : Creating a Interactive Calculator under API Service
:red_circle: Brief Explanation :
I will Create a Calculator Module for the API Service.
Screenshots 📷

:white_check_mark: To be Mentioned while taking the issue:

Full name :  Ansh Gupta
What is your participant role? (Mention the Open Source Program name. Eg. GSSOC, SSOC, JWOC, etc.) : SSOC Contributor

Happy Contributing 🚀
All the best. Enjoy your open source journey ahead. 😎

@Avdhesh-Varshney kindly Assign me this issue.

@Anshg07 go ahead.

I want to work . Please assign to me

@Anshg07 what's the update? solve it within 1 day.

Sorry to not meet the deadline , acutally I have my end sems examination so I m not able to work on it, I am unassigning this now so that any other can work on this feature.

im interested to contribute please assign me.

@Pavitra-s-Workspace Calculator should use api key to keep it under API sections.

My apologies i tried to work on this by i realized my skills are limited.
please reassign to someone else.

Sir, please give me more information on this, I may pick it up and begin to work on it... I want to know what I ought to do before I pick it up because I don't want to abort it later...Thanks

@Moses-Mk Assign it to you.
Hint: Explore WolfRamAlpha website and documentation.

sir, i am facing an error while entering the login credentials provided on the "Readme" section, have you by any chanced changed the credentials or there is something that I am missing? please let me know


Highlight c compound_statement

Makes it so that braces indicating scoping in c also get highlighted.
before:

after:

Thanks!


Fixed path params validation with custom apiRoot

It was not working because matching was happening against a prefixed path (e.g. /v1/pets/42 against /pets/{id} given apiRoot = '/v1').
I've implemented this to be a non breaking change. Alternative approach may be to make this part of the normalizeRequest() logic (see this branch). Let me know if you prefer that approach.

Excellent! Merging :)


IndexError: string index out of range

Loading data from berlin dataset...
Error in readAudioFile(): Unknown file type!
Traceback (most recent call last):
File "emorecognition.py", line 41, in
db = Dataset(path,db_type,decode=False)
File "/home/zzl/Emotion-Recognition-from-Speech/src/dataset.py", line 18, in init
self.get_berlin_dataset(path)
File "/home/zzl/Emotion-Recognition-from-Speech/src/dataset.py", line 35, in get_berlin_dataset
self.targets.append(classes[audio[5]])
IndexError: string index out of range

You  need enter a correct file path, I use the path download\wav is work fine.
Sorry foy my bad English.


Recommend to provide an archiving function for data

Currently there is only deletion, it is recommended to provide an archiving function for goals.

Expired goals are automatically archived;
Completed goals can be manually selected for deletion or archiving;

I actually have plans to add an archiving function. Thanks for creating an issue, it'll help keep me reminded.


Added Metrics Instrumentation (#137)

@oliemansm I wrote some code for this Enhancement. I am not sure I used the right approach. I don't think it makes sense to have "MetricsInstrumentation" on graphql-java because it is specific for spring boot. Also, on "onCompleted", the throwable is always null even when I throw an exception when fetching data. Can you point out what I am doing wrong?

@senzzzi Haven't used micrometer before. Do you have a running example you can share? I see that a test is failing btw because it expects a MeterRegistry.

@oliemansm  I forgot to add a ConditionalOnBean annotation on the method that creates the MetricsInstrumentation Bean.
To run this, the only thing needed is run some queries against the running instance and then call /metrics/graphql.timer.operation. The result should look like this:

@senzzzi If I simply add actuator starter to example-graphql-tools and set graphql.servlet.actuator-metrics: true I'm not getting that metric yet. Am I missing a step?

@oliemansm I updated the example inside the project. If you call a query to initialise the metric, you can then check it at http://localhost:9000/actuator/metrics/graphql.timer.operation. Tell me if you think it would be better to create a different example project only for metrics.

@oliemansm even with throwing a exception on the Query function I couldn't get the Throwable. I think it is because the errors are coming inside the executionResult but I need to investigate a little more. I don't fully know the code of how graphql resolves the data field.

@senzzzi Thanks for the example! I took a look at the fact that you couldn't catch any exceptions in onCompleted thrown while fetching data. That method appears to be called at the end of the entire parsing process. Exceptions translate into errors in the response, so those exceptions at this point are already handled and available within the ExecutionResult.
If you take a look at TracingInstrumentation in combination with TracingSupport you'll see they've overridden beginParse(InstrumentationExecutionParameters) to gather statistics. That's the place you want to override as well if you want to get a hold of any exceptions that were thrown during execution:
    @Override
    public InstrumentationContext<Document> beginParse(InstrumentationExecutionParameters parameters) {
        TracingSupport tracingSupport = parameters.getInstrumentationState();
        TracingSupport.TracingContext ctx = tracingSupport.beginParse();
        return whenCompleted((result, t) -> ctx.onEnd());
    }

https://github.com/graphql-java/graphql-java/blob/0e9b9e96083fece45fa5ee7bc500cddb13195b95/src/main/java/graphql/execution/instrumentation/tracing/TracingInstrumentation.java#L56
You might want to consider re-using TracingSupport or taking a closer look at that class. Think it's a very nice example at the least for solving this.
Which information do you want to expose to metrics? Is it just the main count and total time or is there anything else?

@oliemansm I made some changes and I am now using the TracingInstrumentation as my metrics source which makes total sense, there was no need to store the same data twice. I am also added another Instrumentation that allows to have timers on all operations without recording the time it takes to get all the fields. For me, I think it makes sense to have metrics for the time it takes to get all the data on a specific query but not for each field, it might be too expensive to have that enabled in production. Also, my code on MetricsInstrumentation is a bit "ugly", I would say. The TracingSupport class has all fields private with no getters so I had to look for a workaround on that.

@senzzzi I see what you mean. It makes it a bit volatile I'd say. The only way to solve that would be to make your own implementation/copy of TracingInstrumentation and TracingSupport to enable you to write clean code here?

Yes, that would solve, it would work as long as Instrumentation Interface and the ExecutionStrategy don't change. But I am not really a fan of duplicating code. On the other hand, I don't really like the parsing I have to make to get the metrics. I think we should probably go with what we have now but right better tests to assert that we don't break anything on a next bump of graphql-java. What do you think? I don't mind writing those..


Sprint 5 - Redesign of Claw (Seto, Lucas & George)

In here, Lucas and I will document our process of removing the claw from out robot, redesigning a new claw, and add our new improved design onto the robot.
We hope to remove the claw on Nov 29, 2024
We hope to have the improved redesign by Dec 6, 2024 (rough estimate) with assistance from George
We hope to build & complete the specimen intake by Dec 13, 2024

https://cad.onshape.com/documents/f21791ee64e1027f69053eea/w/00d219cda531609202136871/e/a13d4f434a5f72a18d9ee780
created file for 3d design
using gears to replace wheels since approx same size and compliant wheels not part of FTC part users.
very initial, unfinished draft, currently unsure how to mount hex shafts.

December 16th 2024
George, Seto and I finished building the redesigned claw with compliant wheels after giving one wheel to 27294
Success

Able to finish the build with 5 wheels instead of the preferred 6
Easy to pick up specimens off the floor using the compliant wheels

Failure

Only 5 wheels


video play

sometimes this video has no sound ,but drag the progress ，the sound has again.

@arvincong Hi, can you provide a test video link? I am easy to debug this problem.

thanks.  this video link  https://www.svsmix.com/upload/20170703/1499073407455.mp4 ,ios9.0，repeat play many times ，this question will appear .

@arvincong   Because I did not iOS 9 iPhone, so debugging with iOS 9 simulator did not appear what you said.

VGPlayer Log --------------------------
error: Optional(Error Domain=NSURLErrorDomain Code=-1 "unknown error" UserInfo={NSLocalizedDescription=unknown error, NSUnderlyingError=0x608000248d60 {Error Domain=NSOSStatusErrorDomain Code=-12935 "(null)"}})
playerItemErrorLogEvent: nil
extendedLogData: nil
extendedLogDataStringEncoding nil
-------------------------   second play ，it is ok . this why

@arvincong This error, may be related to the URL format, such as the wrong format: https: //w.svsmix.com/upload/20170703/1499073407455.mp4
Maybe you can provide test link, I try debugging again.   <(~︶~)>

player.pause can not pause ，stop a while ,it is still play .  this why

Play/pause button is really not working. When I choose to pause the video, it automatically resume again.... !!!!

@VeinGuo I have got another video link and it's also not playing at all. The sample link in your Embed table view controller is really working fine. But when I use my personal video link, it's not playing at all in table view.

@arvincong  @kennybuc  pause error  fix  42b8ea9

@kennybuc  Hi,  Can you send me your test address, I'm debugging.

@VeinGuo I'm sorry, but I can't provide you the link because it's private video which online users purchase to look. I can just tell you that it's a vimeo file link. With Vimeo pro account, we have an option to get file links of the video uploaded to vimeo. Please let me know if you have anything confused.

@VeinGuo Another question! How can I get your code update on VGPlayer.swift?
I did pod update, but it didn't check out your latest commit.

@VeinGuo Okay, here is the url which causes an issue.
https://player.vimeo.com/external/228514333.sd.mp4?s=83191e2990d1b963a9e603b646a9bea7fcdf17f8&profile_id=164
When I open the link in browser, it's just working fine. It's also working in Android app with another player. Let me know if there is any news.
And I'm very happy to use your library. It's a very good library.

@VeinGuo Did you get any chance to make your player working with my vimeo video link?

@kennybuc  I'm debugging this question. I found url param praser error, I was trying to fix this problem.  Give me some time i'll fix it.

@kennybuc  This bug is because the URL with parameters, where the URL parsing error.

@kennybuc  I fix this bug c3685d7, you can pod update. VGPlayer v0.1.5.

@VeinGuo Okay, it works. I have updated and it's working. Wow!!!
How could I recommend you and your library to others? This is great... haha

@kennybuc Thanks for your.

when the user changes the play rate from 1.0x to 1.5x etc.., of the video and it will not work properly in pause() and playing().
Case 1
when the video is on pause() state and the user changes the rate it will change and the video starts playing but pause() button image will not be changed.
Case 2
when the video is in playing state and the user changes the rate it will change but the video does not play properly as per rate.
please check it and update me I'm stuck here for last 2 days.
Please help me!!! thanks in advance.

i am getting problem in swift 4 when i slide to end video still playing. it shows current time and total time equal bu still video is playing can any one help me.


MC versions set incorrectly on modrinth

Describe the bug
The new version of carpet-fixes on Modrinth is incorrectly set to be compatible with Minecraft 1.19-1.19.3 which breaks mod updaters such as PrismLauncher and Packwiz:
https://modrinth.com/mod/carpet-fixes/version/v1.13.0
If you could update this to be just for 1.19.3 that would be great!
Thanks!


Having Problems While Doing Digit Recognition in OpenCV Using Tensorflow Mnist

Issue type
Support
Have you reproduced the bug with TensorFlow Nightly?
No
Source
source
TensorFlow version
2.15.0
Custom code
Yes
OS platform and distribution
MacOS Sonoma 14.2.1
Mobile device
No response
Python version
3.11.7
Bazel version
No response
GCC/compiler version
No response
CUDA/cuDNN version
No response
GPU model and memory
Apple M2 Max
Current behavior?
Currently I'm learning OpenCV and decided to make a project to practice my skills. In my project, I'm aiming to read a sudoku table, divide it into individual cells, and recognize the numbers. The rest is mostly sudoku solving.
Right now, I'm stuck on recognizing the numbers part. I decided to use mnist dataset to train the model. For a reason that I couldn't figure out, the program always recognizes the digit wrong.
First form of my Image
My image after rescaling
I thought that the problem was with the way that I trained the model. Because I transformed my huge image to 28x28, it blurred the image a lot. I thought that that was the problem. The code that I added below trains the model in 300x300 form. It's definitely slower but I thought that It's more safe. Unfortunately, the result didn't change.
The code below also outputs the probability for every class. I input an image (which I gave the link to) with the number 6, but it doesn't work. and the model guesses it as 8. I don't know to source of the problem. I hope that you can help me.
Standalone code to reproduce the issue
sample = splitted_blocks[0][0][6]
size = 300
(ds_train, ds_test), ds_info = tfds.load(
    'mnist',
    split=['train', 'test'],
    shuffle_files=True,
    as_supervised=True,
    with_info=True,
)

def resize_img(image, label):
    return tf.image.resize(image, (size, size)), label

ds_train = ds_train.map(resize_img, num_parallel_calls=tf.data.AUTOTUNE)
ds_test = ds_test.map(resize_img, num_parallel_calls=tf.data.AUTOTUNE)

def normalize_img(image, label):
    """Normalizes images: `uint8` -> `float32`."""
    return tf.cast(image, tf.float32) / 255., label

ds_train = ds_train.map(normalize_img, num_parallel_calls=tf.data.AUTOTUNE)
ds_train = ds_train.cache()
ds_train = ds_train.shuffle(ds_info.splits['train'].num_examples)
ds_train = ds_train.batch(128)
ds_train = ds_train.prefetch(tf.data.AUTOTUNE)

ds_test = ds_test.map(normalize_img, num_parallel_calls=tf.data.AUTOTUNE)
ds_test = ds_test.batch(128)
ds_test = ds_test.cache()
ds_test = ds_test.prefetch(tf.data.AUTOTUNE)

model = tf.keras.models.Sequential([
    tf.keras.layers.Flatten(input_shape=(size, size, 1)),
    tf.keras.layers.Dense(128, activation='relu'),
    tf.keras.layers.Dense(10)
])
model.compile(
    optimizer=tf.keras.optimizers.legacy.Adam(0.001),
    loss=tf.keras.losses.SparseCategoricalCrossentropy(from_logits=True),
    metrics=[tf.keras.metrics.SparseCategoricalAccuracy()],
)

model.fit(
    ds_train,
    epochs=6,
    validation_data=ds_test,
)
sample = cv.cvtColor(sample, cv.COLOR_BGR2GRAY)
sample = cv.resize(sample, (size, size))

view_image(sample)
sample = np.invert(np.array([sample]))

prediction = model.predict(sample)
print(np.argmax(prediction))

for class_index, prob in enumerate(prediction[0]):
    print(f'Class {class_index}: Probability {prob}')

sample = np.invert(np.array([sample])).reshape((size, size, 1))
cv.imshow("test", sample)
cv.waitKey(0)

Relevant log output
Epoch 1/6
469/469 [==============================] - 20s 36ms/step - loss: 0.3859 - sparse_categorical_accuracy: 0.9090 - val_loss: 0.1917 - val_sparse_categorical_accuracy: 0.9432
Epoch 2/6
469/469 [==============================] - 17s 37ms/step - loss: 0.1866 - sparse_categorical_accuracy: 0.9472 - val_loss: 0.1665 - val_sparse_categorical_accuracy: 0.9530
Epoch 3/6
469/469 [==============================] - 17s 37ms/step - loss: 0.1414 - sparse_categorical_accuracy: 0.9585 - val_loss: 0.1636 - val_sparse_categorical_accuracy: 0.9548
Epoch 4/6
469/469 [==============================] - 17s 37ms/step - loss: 0.1215 - sparse_categorical_accuracy: 0.9642 - val_loss: 0.1735 - val_sparse_categorical_accuracy: 0.9563
Epoch 5/6
469/469 [==============================] - 17s 37ms/step - loss: 0.1060 - sparse_categorical_accuracy: 0.9676 - val_loss: 0.1444 - val_sparse_categorical_accuracy: 0.9615
Epoch 6/6
469/469 [==============================] - 17s 37ms/step - loss: 0.1040 - sparse_categorical_accuracy: 0.9688 - val_loss: 0.1410 - val_sparse_categorical_accuracy: 0.9630
1/1 [==============================] - 0s 59ms/step
8
Class 0: Probability<PHONE_NUMBER>611328
Class 1: Probability 2138.992431640625
Class 2: Probability 4751.95068359375
Class 3: Probability 4140.23583984375
Class 4: Probability -2975.758544921875
Class 5: Probability 2814.78662109375
Class 6: Probability 1327.113525390625
Class 7: Probability 2143.239990234375
Class 8: Probability 4821.7548828125
Class 9: Probability -3011.857666015625

@deringezgin I would recommend using a Convolutional Neural Network(CNN) based architecture for your digit classifier. It should boost your performance by extracting better spatial features. A good tutorial for getting started with CNN's. Let me know if you have any other questions!

@deringezgin I would recommend using a Convolutional Neural Network(CNN) based architecture for your digit classifier. It should boost your performance by extracting better spatial features. A good tutorial for getting started with CNN's. Let me know if you have any other questions!

Hi, Thank you for your response. Maybe a beginner question but how can I train the network with number images? When I checked the link you provided, I can only see other objects like car, plane etc.

@deringezgin CNN's are highly versatile and work with all kinds of image data .Just ensure your CNN is adapted to handle your resized 28 x 28 images. You can find many Digit Classifier Tutorials on the InternetHope this helps!

@deringezgin,
Convolutional Neural Networks (CNNs) are the good choice for image recognition tasks. Use convolutional layers to extract features from the images and Add pooling layers for dimensionality reduction. Also employ fully-connected layers for final classification or regression.
Could you please refer to this official document for the reference.
https://www.tensorflow.org/tutorials/images/cnn
Thank you!


Audio hours in the dataset

How many hours of audio were used to make the Russian language model in GPT-SoVITS?

about 1000

Do you have a method for finding several hours of audio in a language?

Yes, sure, we can build any language you need.

Yes, sure, we can build any language you need.

How?

You need to tell the language name

You need to tell the language name

Brazilian Portuguese

@Bubarinokk like this https://github.com/Edresson/TTS-Portuguese-Corpus?

@Bubarinokk like this https://github.com/Edresson/TTS-Portuguese-Corpus?

Yes

Please let us know if you have extra questions.


solving issue #3 and adding a check version feature to adonis-cli

This PR resume:
fix: standard js fix. 104d4d6
fix: the issue #3 25d2edd
feat: add a check command to adonis-cli node.js and npm required versions for AdonisJs. 954f3e8
feat: add the check command on the adonis-cli new command to stop the install if the check command returns false. 	7493ee6

The idea of check looks great to me 😄 Will test out the code

Nice @thetutlage  :)
This ideia came to me after the friend that show me AdonisJS tried to use the "adonis new myapp",
and received the error on this image:

We take a while to remember that AdonisJS needs Node.JS>=4.0.0 and npm=>3.0.0 to work :)

Yup, that makes the entire process so simple. I have left a comment and also can u please create the PR for the develop branch?

Sorry, I've looking now that I've done on the master branch :(
I will fix that right now.

No issues, the develop branch was not the primary branch. I have fixed that, the future PR's will be targeted towards develop by default.

I've created a new PR with the right branch on both repos. #5


mv: refactor backup logic to use shared uucore backup control

This PR is a follow-up to #2275 refactoring the backup logic in mv to use the shared backup_control in uucore. I added comprehensive tests too.
This also fixes #2278 (issue with existing mv backup logic).
Note about --backup and -b
In my last PR (#2275) I merged the two args --backup and -b using .short("b") for the --backup arg. I realized when implementing this PR that this fails when using the short arg in a group of other short args.
For example, this would fail:
$ mv -vbT [file] [file]
error: The argument '--backup=<CONTROL>' requires a value but none was supplied

USAGE:
    mv [OPTION]... [-T] SOURCE DEST
mv [OPTION]... SOURCE... DIRECTORY
mv [OPTION]... -t DIRECTORY SOURCE...

For more information try --help

but it would succeed if the -b arg was listed last in the group or on it's own:
# works
$ mv -vTb [file] [file]

# works
$ mv -vT -b [file] [file]

For this reason, I kept the --backup and -b args separate in this PR. I plan to open another PR to fix the regressed issue in cp with added tests.

Nice work!


Type narrowing with "in" operator and closure results in an "any" type

Bug Report
Example code:
const keys = ["b"];

type A = {
  b?: boolean;
};

function f(a: A): void {
  keys.map((key) => {
    if (key in a) {
      const c: never = a[key];
    }
  });
}

🙁 Actual behavior
test.ts:10:13 - error TS2322: Type 'any' is not assignable to type 'never'.

10       const c: never = a[key];
               ~

🙂 Expected behavior
test.ts:10:13 - error TS2322: Type 'boolean' is not assignable to type 'never'.

10       const c: never = a[key];
               ~

We can deduce that because the key ("b") is in the variable "a", a[key] must be a boolean.

You didn't fill out the issue template completely; could you edit to do that?
This is behaving as designed and there's no bug; if we interpret this as a feature request then it's a duplicate of #43284 (awaiting more feedback) or #48149 (declined).


feat: add -close-idle flag to close idle connections during shutdown window

Change Description
During the shutdown grace period, cloudsql-proxy should close idle connections, so that application code is able to cycle these connections out of it's connection pool prior to the proxy becoming unreachable.
This changeset implements this feature via keeping track of the last read/write activity on each connection, and during shutdown looping through and finding those with last activity times older than a configurable idle timeout threshold.
Checklist

[x] Make sure to open an issue as a
bug/issue
before writing your code!  That way we can discuss the change, evaluate
designs, and agree on the general idea.
[x] Ensure the tests and linter pass
[x] Appropriate documentation is updated (if necessary)

Relevant issues:

Fixes #536

@googlebot I signed it!

Hi @dpeckett - thanks for opening a PR. Just as an FYI, I won't be able to get to this before the holiday week starts. I'll follow up after.

Hi @kurtisvg thanks for the great feedback. I've updated the PR based on your suggestions (eg. using a net.Conn wrapper for idle tracking etc).

Hi @kurtisvg thanks for the great feedback. I've updated the PR based on your suggestions (eg. using a net.Conn wrapper for idle tracking etc).

Hey @dpeckett, we haven't heard back from you for awhile now. Are you still working on this?

@enocom Thanks for reaching out, we've decided to go in a different direction for this. As such I am closing this pull request.

Thanks, @dpeckett.


[REEF-491] Initial Vortex implementation

How to test

Unit test

In the directory reef-vortex, run mvn clean install

Integration test

You can simply test using reef-tests as usual, the test is included in there

Implementation

Java ThreadPool-like user interface
Distributed execution of user-submitted functions
Handling of resource preemption events
Simple Vortex Tasklet scheduling mechanisms
Simple unit/integration tests to verify correctness

Vortex-REEF component mapping
Here's a brief description of how some of main Vortex components map to those of REEF

VortexManager

Maps to REEF Driver event handlers
Acts as the brain of the Vortex runtime, handling events from different parts of the system, scheduling/executing user tasks, and keeping track of running executors/tasks

LocalExecutor

Maps to REEF Context
Receives commands, executes them, and sends the results back to VortexManager

JIRA
https://issues.apache.org/jira/browse/REEF-491

@johnyangk Excellent start!
I'm done with my pass. Please take a look and leave a note on how you will address at a high level (you don't need to respond to the minor comments if you can just address them). Let me know when you're done with your pass.

@johnyangk Please ping me when ready for another round of reviews. I'd like to understand this project a little better.

I did a quick parse. One high-level bit that stood out is the liberal use of public. Given that we promise not to break public APIs in between REEF versions, we should be very careful with it. For instance, I don't think the vortex driver needs to be public, just its configuration.

@sears You might find this project interesting, and a bit of a deja-vu :-)

@bgchun Thank you for the thorough review! I will start addressing them now. For those that might be better to be addressed separately later, I'll create new JIRA sub-tasks for them.
@markusweimer Will do! And thank you for the comments.

@markusweimer Thanks!
@johnyangk Let me know when you're done with the pass with @markusweimer.

I am still working on addressing @bgchun's comments. I will upload the code to here at once (probably sometime next week) when I'm ready and the discussion settles down.
I also created some JIRA sub-tasks under https://issues.apache.org/jira/browse/REEF-364. Please feel free to comment on them. Thank you!

@bgchun I pushed the code to address your comments.
@markusweimer I am ready for the review.
It seems that recent change in AllTestsSuite on the master branch is causing the conflict with this PR, but I'm not sure how to safely resolve this conflict without accidentally wiping out our discussion here on this page. I'll do more research on this.

@markusweimer Regarding your comment on public, I removed it from as many classes I can and for those I couldn't(because they were accessed across packages) I annotated Unstable as I expect there will be frequent changes.

Resolved the conflict.

@markusweimer, could you do code review since you expressed doing it? After your pass, I will do my pass. We're hoping to include this initial version in the upcoming release. Thanks!

@bgchun Thanks. I will do a pass, but please don't feel blocked by me. Go ahead and merge when you feel it is ready.

I've done a pass. Note that I have not looked at any of the implementation details, but focussed on APIs only. Some global comments on that:

Please consider using the JCIP annotations to document the thread safety concerns of this code.
Please add JavaDoc to all public methods and classes. At the very least, add them to the methods in all public interfaces.
Please consider the package-level javadoc as an opportunity to give the user and reader of the code guidance as to what the packages are for, in addition to what they contain.
Tang can instantiate an object based on a private constructor. Hence, making constructors private affords you greater freedom for future code changes. Consider doing that for all constructors which have an @Inject annotation.
Some package-private classes have public constructors. That seems unnecessary.
The evaluator restart logic is dangerous. If you suffer from a bug where every evaluator crashes upon launch, it will request new evaluators and launch them, just to see them fail. Consider adding a counter for the max number of failed evaluators.
Vortex relies on Serializable objects for the user code. This is very attractive from a usability perspective (exhibit A: Spark), but can also lead to enormous complications as those objects can refer to lots of local state (exhibit B: Spark's closure cleaner). For REEF, we erred on the side of making the latter impossible via Tang. I understand that this isn't the goal for Vortex. However, it would be good to have an idea of how to mitigate these issues before lots of code is written against the current API.

@markusweimer Thanks! Can we make the JavaDoc rule as part of checkstyle?
@johnyangk Let me know after you address Markus's comments. I will do a pass.

@bgchun Check for missing Javadoc will be enforced as checkstyle, but we cannot do it right now because of all violations we currently have. We need to fix those first. I've already created a bunch of JIRAs for this.

@tcNickolas Can we enable that checkstyle check on a per-submodule basis? If so, we could enable it for vortex to make sure it is on a good path from the get-go.

@markusweimer Thank you for the detailed comments! I will start working on them.
@bgchun Sure, I'll let you know when I'm done.

@markusweimer I've addressed your comments. It would be good to double check using the checkstyle though.
Yes, we're still in the stage of figuring out the best way to ship code/data to VortexWorkers. Let's discuss together on the JIRA issue. I agree that we should be careful not to build any serious Vortex applications until this issue is resolved.
@bgchun I'm ready. Please go ahead and review it.

@johnyangk Looks good. I left minor comments. Once I hear back from you, I will test and merge the code.

@bgchun
VortexFuture enqueueMockedTasklet(final Tasklet tasklet)

Without this method currently there's no way for us to check the state of Tasklet. In current unit tests that test DefaultVortexMaster, we pass mocked Tasklets whose ids we know to here and use their ids to track their state.(e.g. whether they were scheduled to a worker).
If we are to remove this method, I think we need to have each VortexFuture hold onto its corresponding Tasklet's id. In this way we can use the following same method that the Vortex user api uses and still obtain the Tasklet's id. But I do not prefer this approach because it exposes Tasklet ids to Vortex users.
VortexFuture<TOutput> enqueueTasklet(final VortexFunction<TInput, TOutput> function, final TInput input)

Another approach is to change the structure of DefaultVortexMasterTest unit test.
Maybe I'm missing something? What are your thoughts?

@johnyangk If you need to change the behavior of pendingTasklets for your unit tests, maybe the dependency should be explicit for testing. Having a special method for unit tests indicates code smell.

@bgchun Okay then I'll work on changing the overall code structure such that we can do without the special method.

@bgchun
Addressed your comments by

Refactoring out the scheduler thread into a wake stage to be invoked by VortexDriver
Creating injectable PendingTasklets to be injected into the scheduler and DefaultVortexMaster

By taking out these two dependencies from DefaultVortexMaster, the unit tests can now do the scheduling by itself without having to rely on special methods.
FYI: Fastest way to test Vortex

At the REEF root directory, mvn clean install -DskipTests
At lang\java\reef-applications, mvn test
At lang\java\reef-tests, mvn -Dtest=AddOneTest test

@johnyangk Thanks. Looks good. I will test it and merge it if everything goes well.

@bgchun
Sorry, I just pushed a one-line change to fix a bug I just found. Please use that as well. Thank you!


128-bit integers are underaligned on x86-64

Consider the following:
@[Extern]
struct Foo
  @x = 0_i64
  @y = 0_i128
end

foo = Foo.new
pointerof(foo.@x) # => Pointer(Int128)@0x7fffd4e08e60
pointerof(foo.@y) # => Pointer(Int128)@0x7fffd4e08e68
offsetof(Foo, @y) # => 8
sizeof(Foo)       # => 24
alignof(Foo)      # => 8

Instead, the address of foo.@y should end with a 0 instead, offsetof(Foo, @y) should be 16, sizeof(Foo) should be 32, and alignof(Foo) should be 16. Underalignment could lead to suboptimal code generation or totally incorrect lib bindings.
This is known to happen on x86-64 Windows and Linux. The Apple M2 (AArch64) does not have this issue:
pointerof(foo.@x) # => Pointer(Int64)@0x16f6d3340
pointerof(foo.@y) # => Pointer(Int128)@0x16f6d3350
offsetof(Foo, @y) # => 16
sizeof(Foo)       # => 32
alignof(Foo)      # => 16

This is fixed in LLVM 18, however alignof(Foo | Int32) or even alignof(Foo | Int128) is still 8.

Rust also backported this to LLVM 17 and below: https://blog.rust-lang.org/2024/03/30/i128-layout-update.html


update mint

This still doesn't bring mint to TLS 1.3 draft-28, but it will fix a bug that would prevent my implementation of the new Retry mechanism (#1431).

Codecov Report

Merging #1476 into master will decrease coverage by 0.02%.
The diff coverage is n/a.

@@            Coverage Diff             @@
##           master    #1476      +/-   ##
==========================================
- Coverage   89.12%   89.09%   -0.02%
==========================================
  Files         122      122
  Lines        8508     8508
==========================================
- Hits         7582     7580       -2
- Misses        622      624       +2
  Partials      304      304

Impacted Files
Coverage Δ

session.go
71.76% <0%> (-0.27%)
:arrow_down:

Continue to review full report at Codecov.

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


Are evaluation metrics valid only for English?

Hello! Thank you very much for this repo. I wanted to know if evaluation methods from the folder "extra" for FAD and similarity only work for English language, as they use models pretrained on English datasets. Should I use some other models for evaluating Russian TTS?

We use them for Russian, not English. You can check here:
https://t.me/speech_recognition_ru/57297

Thank you! So those models work fine even though they did not see Russian language at training time?

Yes, it is ok. Not perfect, but ok for initial estimation. For similarity we are going to move to Voxblink2 embedding soon, they are trained on Russian.

Ok, thank you!

Hello again! Have you heard about tts_scores from Tortoise TTS paper? Have you tried it for Russian language? Here is a link: https://github.com/neonbjb/tts-scores

Hello again! Have you heard about tts_scores from Tortoise TTS paper?

Yes, sure

Have you tried it for Russian language?

We are doing more or less the same, we evaluate same FID and WER, on the top we evaluate UTMOS (essentially naturalness) and speaker similarity.


Negative duality gap for semidefinite program example

I'm running into a strange issue where the duality gap seems to come up negative.
Taking the example from the corresponding page in the docs, and examining the print statement for MOSEK together with manually extracting the dual problem objective value, gives a small but negative duality gap.
Note that the dual and primal are flipped for MOSEK and the cvxpy output  since MOSEK's version maximizes instead of minimizing. Could there be a convention that I am missing or numerical considerations? I am on Linux Mint 20.3 with cvxpy==1.5.2.
# Import packages.
import cvxpy as cp
import numpy as np

# Generate a random SDP.
n = 3
p = 3
np.random.seed(1)
C = np.random.randn(n, n)
A = []
b = []
for i in range(p):
    A.append(np.random.randn(n, n))
    b.append(np.random.randn())

# Define and solve the CVXPY problem.
# Create a symmetric matrix variable.
X = cp.Variable((n, n), symmetric=True)
# The operator >> denotes matrix inequality.
constraints = [X >> 0]
constraints += [cp.trace(A[i] @ X) == b[i] for i in range(p)]
prob = cp.Problem(cp.Minimize(cp.trace(C @ X)), constraints)
prob.solve(solver=cp.MOSEK, verbose=True)
# prob.solve(solver=cp.SCS, verbose=True)

# Print result.
print("The optimal value is", prob.value)
print("A solution X is")
print(X.value)

# Print primal and dual values
dval = 0.0
for i in range(p):
    dval += -b[i] * constraints[i + 1].dual_value

print("Primal value: ", prob.value)
print("Dual value:   ", dval)
print("Duality gap:", prob.value - dval)

Output:
===============================================================================
                                     CVXPY
                                     v1.5.2
===============================================================================
(CVXPY) Jul 08 03:22:23 PM: Your problem has 9 variables, 12 constraints, and 0 parameters.
(CVXPY) Jul 08 03:22:23 PM: It is compliant with the following grammars: DCP, DQCP
(CVXPY) Jul 08 03:22:23 PM: (If you need to solve this problem multiple times, but with different data, consider using parameters.)
(CVXPY) Jul 08 03:22:23 PM: CVXPY will first compile your problem; then, it will invoke a numerical solver to obtain a solution.
(CVXPY) Jul 08 03:22:23 PM: Your problem is compiled with the CPP canonicalization backend.
-------------------------------------------------------------------------------
                                  Compilation
-------------------------------------------------------------------------------
(CVXPY) Jul 08 03:22:23 PM: Compiling problem (target solver=MOSEK).
(CVXPY) Jul 08 03:22:23 PM: Reduction chain: Dcp2Cone -> CvxAttr2Constr -> ConeMatrixStuffing -> MOSEK
(CVXPY) Jul 08 03:22:23 PM: Applying reduction Dcp2Cone
(CVXPY) Jul 08 03:22:23 PM: Applying reduction CvxAttr2Constr
(CVXPY) Jul 08 03:22:23 PM: Applying reduction ConeMatrixStuffing
(CVXPY) Jul 08 03:22:23 PM: Applying reduction MOSEK
(CVXPY) Jul 08 03:22:23 PM: Finished problem compilation (took 3.981e-02 seconds).
-------------------------------------------------------------------------------
                                Numerical solver
-------------------------------------------------------------------------------
(CVXPY) Jul 08 03:22:23 PM: Invoking solver MOSEK  to obtain a solution.

(CVXPY) Jul 08 03:22:23 PM: Problem
(CVXPY) Jul 08 03:22:23 PM:   Name                   :
(CVXPY) Jul 08 03:22:23 PM:   Objective sense        : maximize
(CVXPY) Jul 08 03:22:23 PM:   Type                   : CONIC (conic optimization problem)
(CVXPY) Jul 08 03:22:23 PM:   Constraints            : 6
(CVXPY) Jul 08 03:22:23 PM:   Affine conic cons.     : 0
(CVXPY) Jul 08 03:22:23 PM:   Disjunctive cons.      : 0
(CVXPY) Jul 08 03:22:23 PM:   Cones                  : 0
(CVXPY) Jul 08 03:22:23 PM:   Scalar variables       : 3
(CVXPY) Jul 08 03:22:23 PM:   Matrix variables       : 1 (scalarized: 6)
(CVXPY) Jul 08 03:22:23 PM:   Integer variables      : 0
(CVXPY) Jul 08 03:22:23 PM:
(CVXPY) Jul 08 03:22:23 PM: Optimizer started.
(CVXPY) Jul 08 03:22:23 PM: Presolve started.
(CVXPY) Jul 08 03:22:23 PM: Linear dependency checker started.
(CVXPY) Jul 08 03:22:23 PM: Linear dependency checker terminated.
(CVXPY) Jul 08 03:22:23 PM: Eliminator started.
(CVXPY) Jul 08 03:22:23 PM: Freed constraints in eliminator : 0
(CVXPY) Jul 08 03:22:23 PM: Eliminator terminated.
(CVXPY) Jul 08 03:22:23 PM: Eliminator started.
(CVXPY) Jul 08 03:22:23 PM: Freed constraints in eliminator : 0
(CVXPY) Jul 08 03:22:23 PM: Eliminator terminated.
(CVXPY) Jul 08 03:22:23 PM: Eliminator - tries                  : 2                 time                   : 0.00
(CVXPY) Jul 08 03:22:23 PM: Lin. dep.  - tries                  : 1                 time                   : 0.00
(CVXPY) Jul 08 03:22:23 PM: Lin. dep.  - primal attempts        : 1                 successes              : 1
(CVXPY) Jul 08 03:22:23 PM: Lin. dep.  - dual attempts          : 0                 successes              : 0
(CVXPY) Jul 08 03:22:23 PM: Lin. dep.  - primal deps.           : 0                 dual deps.             : 0
(CVXPY) Jul 08 03:22:23 PM: Presolve terminated. Time: 0.00
(CVXPY) Jul 08 03:22:23 PM: Optimizer  - threads                : 4
(CVXPY) Jul 08 03:22:23 PM: Optimizer  - solved problem         : the primal
(CVXPY) Jul 08 03:22:23 PM: Optimizer  - Constraints            : 6
(CVXPY) Jul 08 03:22:23 PM: Optimizer  - Cones                  : 1
(CVXPY) Jul 08 03:22:23 PM: Optimizer  - Scalar variables       : 4                 conic                  : 4
(CVXPY) Jul 08 03:22:23 PM: Optimizer  - Semi-definite variables: 1                 scalarized             : 6
(CVXPY) Jul 08 03:22:23 PM: Factor     - setup time             : 0.00
(CVXPY) Jul 08 03:22:23 PM: Factor     - dense det. time        : 0.00              GP order time          : 0.00
(CVXPY) Jul 08 03:22:23 PM: Factor     - nonzeros before factor : 21                after factor           : 21
(CVXPY) Jul 08 03:22:23 PM: Factor     - dense dim.             : 0                 flops                  : 4.12e+02
(CVXPY) Jul 08 03:22:23 PM: ITE PFEAS    DFEAS    GFEAS    PRSTATUS   POBJ              DOBJ              MU       TIME
(CVXPY) Jul 08 03:22:23 PM: 0   1.5e+00  1.7e+00  1.0e+00  0.00e+00   -0.000000000e+00  -0.000000000e+00  1.0e+00  0.01
(CVXPY) Jul 08 03:22:23 PM: 1   3.3e-01  3.6e-01  1.8e-01  -8.37e-03  1.531171450e+00   1.219674137e+00   2.2e-01  0.02
(CVXPY) Jul 08 03:22:23 PM: 2   2.3e-02  2.5e-02  3.3e-03  7.68e-01   2.549376483e+00   2.526505765e+00   1.5e-02  0.02
(CVXPY) Jul 08 03:22:23 PM: 3   2.7e-05  2.9e-05  1.3e-07  9.68e-01   2.654242311e+00   2.654222659e+00   1.8e-05  0.02
(CVXPY) Jul 08 03:22:23 PM: 4   2.6e-06  2.8e-06  3.8e-09  1.00e+00   2.654339243e+00   2.654337359e+00   1.7e-06  0.02
(CVXPY) Jul 08 03:22:23 PM: 5   1.1e-07  1.2e-07  3.5e-11  1.00e+00   2.654347679e+00   2.654347596e+00   7.4e-08  0.02
(CVXPY) Jul 08 03:22:23 PM: 6   1.9e-09  2.1e-09  7.6e-14  1.00e+00   2.654348024e+00   2.654348023e+00   1.2e-09  0.02
(CVXPY) Jul 08 03:22:23 PM: Optimizer terminated. Time: 0.03
(CVXPY) Jul 08 03:22:23 PM:
(CVXPY) Jul 08 03:22:23 PM:
(CVXPY) Jul 08 03:22:23 PM: Interior-point solution summary
(CVXPY) Jul 08 03:22:23 PM:   Problem status  : PRIMAL_AND_DUAL_FEASIBLE
(CVXPY) Jul 08 03:22:23 PM:   Solution status : OPTIMAL
(CVXPY) Jul 08 03:22:23 PM:   Primal.  obj: 2.6543480240e+00    nrm: 3e+00    Viol.  con: 7e-09    var: 0e+00    barvar: 0e+00
(CVXPY) Jul 08 03:22:23 PM:   Dual.    obj: 2.6543480226e+00    nrm: 2e+00    Viol.  con: 0e+00    var: 5e-09    barvar: 2e-09
-------------------------------------------------------------------------------
                                    Summary
-------------------------------------------------------------------------------
(CVXPY) Jul 08 03:22:23 PM: Problem status: optimal
(CVXPY) Jul 08 03:22:23 PM: Optimal value: 2.654e+00
(CVXPY) Jul 08 03:22:23 PM: Compilation took 3.981e-02 seconds
(CVXPY) Jul 08 03:22:23 PM: Solver (including time spent in interface) took 5.347e-02 seconds
The optimal value is 2.6543480226272544
A solution X is
[[ 1.60807406 -0.59771741 -0.69576939]
 [-0.59771741  0.22229521  0.24691094]
 [-0.69576939  0.24691094  1.39682315]]
Primal value:  2.6543480226272544
Dual value:    2.6543480240233657
Duality gap: -1.3961112266258624e-09

CVXPY only accesses solvers using double precision arithmetic. Unavoidable
arithmetic rounding errors associated with checking optimality conditions
means that solvers (working in double precision) can’t do better than about
1e-8 error in optimality metrics. So if you’re seeing a number with
absolute value < 1e-8, you can basically treat it as zero.
On Mon, Jul 8, 2024 at 1:37 PM Vassili Korotkine @.***>
wrote:

I'm running into a strange issue where the duality gap seems to come up
negative.
Taking the example from the corresponding page in the docs
https://www.cvxpy.org/examples/basic/sdp.html, and examining the print
statement for MOSEK together with manually extracting the dual problem
objective value, gives a small but negative duality gap.
Note that the dual and primal are flipped for MOSEK and the cvxpy output
since MOSEK's version maximizes instead of minimizing. Could there be a
convention that I am missing or numerical considerations? I am on Linux
Mint 20.3 with cvxpy==1.5.2.
Import packages.
import cvxpy as cp
import numpy as np
Generate a random SDP.
n = 3
p = 3
np.random.seed(1)
C = np.random.randn(n, n)
A = []
b = []
for i in range(p):
A.append(np.random.randn(n, n))
b.append(np.random.randn())
Define and solve the CVXPY problem.
Create a symmetric matrix variable.
X = cp.Variable((n, n), symmetric=True)
The operator >> denotes matrix inequality.
constraints = [X >> 0]
constraints += [cp.trace(A[i] @ X) == b[i] for i in range(p)]
prob = cp.Problem(cp.Minimize(cp.trace(C @ X)), constraints)
prob.solve(solver=cp.MOSEK, verbose=True)
prob.solve(solver=cp.SCS, verbose=True)
Print result.
print("The optimal value is", prob.value)
print("A solution X is")
print(X.value)
Print primal and dual values
dval = 0.0
for i in range(p):
dval += -b[i] * constraints[i + 1].dual_value
print("Primal value: ", prob.value)
print("Dual value:   ", dval)
print("Duality gap:", prob.value - dval)
Output:
===============================================================================
CVXPY
v1.5.2
(CVXPY) Jul 08 03:22:23 PM: Your problem has 9 variables, 12 constraints, and 0 parameters.
(CVXPY) Jul 08 03:22:23 PM: It is compliant with the following grammars: DCP, DQCP
(CVXPY) Jul 08 03:22:23 PM: (If you need to solve this problem multiple times, but with different data, consider using parameters.)
(CVXPY) Jul 08 03:22:23 PM: CVXPY will first compile your problem; then, it will invoke a numerical solver to obtain a solution.
(CVXPY) Jul 08 03:22:23 PM: Your problem is compiled with the CPP canonicalization backend.
                              Compilation

(CVXPY) Jul 08 03:22:23 PM: Compiling problem (target solver=MOSEK).
(CVXPY) Jul 08 03:22:23 PM: Reduction chain: Dcp2Cone -> CvxAttr2Constr -> ConeMatrixStuffing -> MOSEK
(CVXPY) Jul 08 03:22:23 PM: Applying reduction Dcp2Cone
(CVXPY) Jul 08 03:22:23 PM: Applying reduction CvxAttr2Constr
(CVXPY) Jul 08 03:22:23 PM: Applying reduction ConeMatrixStuffing
(CVXPY) Jul 08 03:22:23 PM: Applying reduction MOSEK
(CVXPY) Jul 08 03:22:23 PM: Finished problem compilation (took 3.981e-02 seconds).
                            Numerical solver

(CVXPY) Jul 08 03:22:23 PM: Invoking solver MOSEK  to obtain a solution.
(CVXPY) Jul 08 03:22:23 PM: Problem
(CVXPY) Jul 08 03:22:23 PM:   Name                   :
(CVXPY) Jul 08 03:22:23 PM:   Objective sense        : maximize
(CVXPY) Jul 08 03:22:23 PM:   Type                   : CONIC (conic optimization problem)
(CVXPY) Jul 08 03:22:23 PM:   Constraints            : 6
(CVXPY) Jul 08 03:22:23 PM:   Affine conic cons.     : 0
(CVXPY) Jul 08 03:22:23 PM:   Disjunctive cons.      : 0
(CVXPY) Jul 08 03:22:23 PM:   Cones                  : 0
(CVXPY) Jul 08 03:22:23 PM:   Scalar variables       : 3
(CVXPY) Jul 08 03:22:23 PM:   Matrix variables       : 1 (scalarized: 6)
(CVXPY) Jul 08 03:22:23 PM:   Integer variables      : 0
(CVXPY) Jul 08 03:22:23 PM:
(CVXPY) Jul 08 03:22:23 PM: Optimizer started.
(CVXPY) Jul 08 03:22:23 PM: Presolve started.
(CVXPY) Jul 08 03:22:23 PM: Linear dependency checker started.
(CVXPY) Jul 08 03:22:23 PM: Linear dependency checker terminated.
(CVXPY) Jul 08 03:22:23 PM: Eliminator started.
(CVXPY) Jul 08 03:22:23 PM: Freed constraints in eliminator : 0
(CVXPY) Jul 08 03:22:23 PM: Eliminator terminated.
(CVXPY) Jul 08 03:22:23 PM: Eliminator started.
(CVXPY) Jul 08 03:22:23 PM: Freed constraints in eliminator : 0
(CVXPY) Jul 08 03:22:23 PM: Eliminator terminated.
(CVXPY) Jul 08 03:22:23 PM: Eliminator - tries                  : 2                 time                   : 0.00
(CVXPY) Jul 08 03:22:23 PM: Lin. dep.  - tries                  : 1                 time                   : 0.00
(CVXPY) Jul 08 03:22:23 PM: Lin. dep.  - primal attempts        : 1                 successes              : 1
(CVXPY) Jul 08 03:22:23 PM: Lin. dep.  - dual attempts          : 0                 successes              : 0
(CVXPY) Jul 08 03:22:23 PM: Lin. dep.  - primal deps.           : 0                 dual deps.             : 0
(CVXPY) Jul 08 03:22:23 PM: Presolve terminated. Time: 0.00
(CVXPY) Jul 08 03:22:23 PM: Optimizer  - threads                : 4
(CVXPY) Jul 08 03:22:23 PM: Optimizer  - solved problem         : the primal
(CVXPY) Jul 08 03:22:23 PM: Optimizer  - Constraints            : 6
(CVXPY) Jul 08 03:22:23 PM: Optimizer  - Cones                  : 1
(CVXPY) Jul 08 03:22:23 PM: Optimizer  - Scalar variables       : 4                 conic                  : 4
(CVXPY) Jul 08 03:22:23 PM: Optimizer  - Semi-definite variables: 1                 scalarized             : 6
(CVXPY) Jul 08 03:22:23 PM: Factor     - setup time             : 0.00
(CVXPY) Jul 08 03:22:23 PM: Factor     - dense det. time        : 0.00              GP order time          : 0.00
(CVXPY) Jul 08 03:22:23 PM: Factor     - nonzeros before factor : 21                after factor           : 21
(CVXPY) Jul 08 03:22:23 PM: Factor     - dense dim.             : 0                 flops                  : 4.12e+02
(CVXPY) Jul 08 03:22:23 PM: ITE PFEAS    DFEAS    GFEAS    PRSTATUS   POBJ              DOBJ              MU       TIME
(CVXPY) Jul 08 03:22:23 PM: 0   1.5e+00  1.7e+00  1.0e+00  0.00e+00   -0.000000000e+00  -0.000000000e+00  1.0e+00  0.01
(CVXPY) Jul 08 03:22:23 PM: 1   3.3e-01  3.6e-01  1.8e-01  -8.37e-03  1.531171450e+00   1.219674137e+00   2.2e-01  0.02
(CVXPY) Jul 08 03:22:23 PM: 2   2.3e-02  2.5e-02  3.3e-03  7.68e-01   2.549376483e+00   2.526505765e+00   1.5e-02  0.02
(CVXPY) Jul 08 03:22:23 PM: 3   2.7e-05  2.9e-05  1.3e-07  9.68e-01   2.654242311e+00   2.654222659e+00   1.8e-05  0.02
(CVXPY) Jul 08 03:22:23 PM: 4   2.6e-06  2.8e-06  3.8e-09  1.00e+00   2.654339243e+00   2.654337359e+00   1.7e-06  0.02
(CVXPY) Jul 08 03:22:23 PM: 5   1.1e-07  1.2e-07  3.5e-11  1.00e+00   2.654347679e+00   2.654347596e+00   7.4e-08  0.02
(CVXPY) Jul 08 03:22:23 PM: 6   1.9e-09  2.1e-09  7.6e-14  1.00e+00   2.654348024e+00   2.654348023e+00   1.2e-09  0.02
(CVXPY) Jul 08 03:22:23 PM: Optimizer terminated. Time: 0.03
(CVXPY) Jul 08 03:22:23 PM:
(CVXPY) Jul 08 03:22:23 PM:
(CVXPY) Jul 08 03:22:23 PM: Interior-point solution summary
(CVXPY) Jul 08 03:22:23 PM:   Problem status  : PRIMAL_AND_DUAL_FEASIBLE
(CVXPY) Jul 08 03:22:23 PM:   Solution status : OPTIMAL
(CVXPY) Jul 08 03:22:23 PM:   Primal.  obj: 2.6543480240e+00    nrm: 3e+00    Viol.  con: 7e-09    var: 0e+00    barvar: 0e+00
(CVXPY) Jul 08 03:22:23 PM:   Dual.    obj: 2.6543480226e+00    nrm: 2e+00    Viol.  con: 0e+00    var: 5e-09    barvar: 2e-09
                                Summary

(CVXPY) Jul 08 03:22:23 PM: Problem status: optimal
(CVXPY) Jul 08 03:22:23 PM: Optimal value: 2.654e+00
(CVXPY) Jul 08 03:22:23 PM: Compilation took 3.981e-02 seconds
(CVXPY) Jul 08 03:22:23 PM: Solver (including time spent in interface) took 5.347e-02 seconds
The optimal value is 2.6543480226272544
A solution X is
[[ 1.60807406 -0.59771741 -0.69576939]
[-0.59771741  0.22229521  0.24691094]
[-0.69576939  0.24691094  1.39682315]]
Primal value:  2.6543480226272544
Dual value:    2.6543480240233657
Duality gap: -1.3961112266258624e-09
—
Reply to this email directly, view it on GitHub
https://github.com/cvxpy/cvxpy/issues/2499, or unsubscribe
https://github.com/notifications/unsubscribe-auth/ACRLIFDLRRGVBDIBWT3YSULZLLS6VAVCNFSM6AAAAABKROSOS2VHI2DSMVQWIX3LMV43ASLTON2WKOZSGM4TMNBQG44TONA
.
You are receiving this because you are subscribed to this thread.Message
ID: @.***>

That crossed my mind as well, but I am surprised that in MOSEK's optimization history there is the same pattern for all iterates. The dual has smaller value than primal through all iterates, with a pretty large gap, which is strange given that the primal is a maximization problem in the MOSEK optimization formulation. With the primal being a maximization, I think we expect POBJ less than DOBJ.

MOSEK solves the primal and dual simultaneously via a homogeneous
embedding. The iterates it generates are neither primal feasible nor dual
feasible until the very end— at with point they simultaneously become
feasible and optimal.
On Mon, Jul 8, 2024 at 6:26 PM Vassili Korotkine @.***>
wrote:

That crossed my mind as well, but I am surprised that in MOSEK's
optimization history there is the same pattern for all iterates. The dual
has smaller value than primal through all iterates, with a pretty large
gap, which is strange given that the primal is a maximization problem
in the MOSEK optimization formulation. With the primal being a
maximization, I think we expect POBJ less than DOBJ.
—
Reply to this email directly, view it on GitHub
https://github.com/cvxpy/cvxpy/issues/2499#issuecomment-2215735725, or
unsubscribe
https://github.com/notifications/unsubscribe-auth/ACRLIFFLEAJPRZRAXJJV463ZLMU4RAVCNFSM6AAAAABKROSOS2VHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDEMJVG4ZTKNZSGU
.
You are receiving this because you commented.Message ID:
@.***>

That makes sense. Thank you very much for your help and quick replies.


Flag packages with questionable security practices

What's the problem this feature will solve?
Malicious and insecure packages are a challenge in the open source community. Malicious packages have been removed several times in the last few years. Improved automated auditing techniques would make it easier for security specialists to quickly remove malicious packages. Smart bad actors would be able to use the same test suite, certainly, but it would at minimum allow for the vetting of existing packages. Likewise, this would set up an automated process which could be enhanced over time.
Describe the solution you'd like
Python's exec() function is not secure and may be a good heuristic for finding malicious packages. There may be other additional heuristics that make a package appear more suspicious, and a likely target for manual auditing. Add a badge or other indicator for packages that pass/fail these tests.

Merging this into #5117.


do not merge: test workflow changes

do not merge: test workflow changes

This PR is for testing workflow changes. Closing after validation.


Appstudio update mvp-test-component

Pipelines as Code configuration proposal

Pipelines as Code CI/mvp-test-component-on-pull-request has successfully validated your commit.

StatusDurationName

✅ Succeeded
6 seconds
init

✅ Succeeded
13 seconds
clone-repository

✅ Succeeded
1 minute
build-container

✅ Succeeded
20 seconds
deprecated-base-image-check

✅ Succeeded
19 seconds
clair-scan

✅ Succeeded
19 seconds
inspect-image

✅ Succeeded
1 minute
clamav-scan

✅ Succeeded
11 seconds
sbom-json-check

✅ Succeeded
15 seconds
label-check

✅ Succeeded
15 seconds
optional-label-check

✅ Succeeded
7 seconds
show-summary


HTTPS response: Unauthorized

Hello,
I try to use the plugin together with MoneyMoney but when I try to create an account with the plugin I always get the error message "HTTPS response: Unauthorized". Has anybody else the same problem? Is the plugin still working?
best regards,
Frank

Hey @Frankie72,
thanks for sharing, plugin is still working for me fine.
Would you like to share more details please? Like screenshots, MoneyMoney logging window output for the plugin?

I think the problem is that I used the wrong "Coinbase API secret".
When I create a API-Key on the Coinbase Homepage I get the "name of the key" with the API key and a private key. The private key begins with "-----BEGIN EC PRIVATE KEY-----\nMHcCAQEEIOd......". Do I have to enter the entire text under password?

Ah, you're now trying to use something new which isn't working here.
Working still on OAuth for this plugin but it's not done yet.
It's not possible since June 10th I think to create new legacy api keys on Coinbase anymore.
So you have to wait till I'm done with the OAuth implementation.

Hi, what's the progress here?

@gering still work in progress, if you want you can easily support this project by sponsoring it on GitHub.


Admin-Managed Home Remedies, Treatment Centers, and Doctor Appointment System

Is your feature request related to a problem? Please describe.
We need to build the frontend functionality for admins to manage key platform features like home remedies, treatment center listings, and doctor appointments. Currently, there’s no interface for admins to easily add or control this information, making the platform less effective in serving users.
Describe the solution you'd like
The solution involves building the frontend UI and forms that allow admins to manage the following:

Home Remedies Section

Create a form where admins can input remedy details (name, ingredients, steps, safety notes). Admins will be able to add, edit, and delete remedies, and publish them for users to view.

Treatment Centers Directory

Build a form for admins to register and update treatment centers. Inputs will include center name, address, types of treatments offered, facilities available, and certification status. The frontend should display a searchable and filterable directory for users.

Doctor Appointment System

Develop an admin interface for managing doctor registrations and appointment slots. The form will include fields for doctor name, specialty, available time slots, and appointment details. Users can book appointments through the frontend, with admin approval or modification options.

Frontend Considerations

Responsive UI: The frontend needs to be responsive for both desktop and mobile platforms.
Form Validations: Include proper form validation to ensure inputs are accurate and complete before submission.
Admin Dashboard: Design a clean, intuitive dashboard for admins to manage remedies, centers, and appointments in one place.
Real-Time Updates: Implement real-time updates to notify admins when new remedies, centers, or appointment requests are submitted.

Describe alternatives you've considered
External tools could be used for these tasks, but integrating this functionality directly into the frontend will create a smoother and more cohesive admin experience. It allows admins to manage everything without leaving the platform.
Additional context
This frontend implementation will empower admins to efficiently manage platform content and improve user engagement. It will also enhance the overall functionality by providing a seamless experience for users seeking remedies, treatment centers, or doctor appointments.
Priority: High
Level: 3
Labels: gssoc-ext ,hacktoberfest

Observations & Recommendations
1. Admin Role:

When a user signs up and logs in with the Admin role, the following options are available:

Ability to add details for NMK.
Manage patients.

2. SuperAdmin Role:
When logged in with the SuperAdmin role, there is an option for Approval. However, I have identified a few gaps:

Doctor Approval Flow: Currently, there is no option to approve doctors. I recommend adding this flow on the approval page.
Home Remedies Flow: There is no flow for managing home remedies. You could add a tab that allows both SuperAdmin and Admin to add home remedies.

Suggested Improvements

[ ] UI Enhancement: Improve the user interface for NMK registration.
[ ] Doctor Approval: For users with the SuperAdmin role, display doctors who are not verified and provide an option to approve them.
[ ] Home Remedies Flow: Implement a feature where both SuperAdmin and Admin can add home remedies.
[ ] Doctor Appointment System: Implement a doctor appointment system to allow scheduling of appointments efficiently.

These changes will enhance the system's functionality and user experience for both the Admin and SuperAdmin roles.
Acknowledgment
If you'd like to collaborate or require any assistance in implementing these changes, feel free to reach out. I’d be happy to work together to improve the platform further.

There's an issue with the Doctor Appointment page—it’s appearing blank for all roles, including the Super Admin.

The 'Add User' floating modal isn't responsive and is overflowing outside the card. I'll work on fixing its responsiveness.

Since I'm not a Go developer, could you please assign me frontend tasks? I can deliver those quickly and keep things on track.

If it's okay, I’ll design all the forms, including:

A Home Remedies button with its form page or floating modal.

For the Doctor approval page, I can either add it as a separate page or integrate it into the Super Admin section.

For Booking Appointments, can I add a form to input patient info, previous reports, and schedule details?

Also for doctors, the appointment acceptance page and table their upcoming appointments

On the user side, I can build a table for appointments and their status.

Hello @0xPratikPatil can you share me the screenshots of doctor appointment page with network response

then we can discuss what you should work on


Add field

Hi,
We found you project very interesting but is it possible to add the esx host information on service discovery ?
The json output file doesn't include this interesting information and we would like to supervise when a node move to an other esx host.
Thanks a lot

If the api provides this information it could be easily added, I need to check for this information.

I have not found any information about the used host, feel free to hack on it if you got an idea how to gather this information. Most of the logic starts at https://github.com/promhippie/prometheus-vcd-sd/blob/master/pkg/action/discoverer.go#L171.

Closing this for now, feel free to reopen it if you got a way to get this information.


Sdk-139 Create test coverage for the class UsersClient

Ticket
SDK-139
Description
The class UsersClient was also modified in this ticket because there was a mistake in the methode getSessionUser(). A SymClientException was thrown instead of UnauthorizedException.

Do you want me to fix these things and re-push ?

Do you want me to fix these things and re-push ?

Yes please @Haiddi-Avencod


is the file name, fp.name, guaranteed to be unique

is the file name, fp.name, in the code below guaranteed to be unique, even in a concurrent multi-thread environment?
    tempFilePath = tempfile.gettempdir()
    fp = tempfile.NamedTemporaryFile(suffix='.csv')
    fp.write(b'Hello world!')
    filesDirListInTemp = listdir(tempFilePath)

http://www.pererikstrandberg.se/blog/index.cgi?page=PythonTemporaryFiles
https://learn.microsoft.com/en-us/azure/azure-functions/functions-reference-python?source=recommendations&tabs=asgi%2Capplication-level&pivots=python-mode-configuration#temporary-files

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

ID: d955d169-8fb8-c511-8911-3e49f95c5ce6
Version Independent ID: 8a3d927c-51ce-d7d4-e5d1-acd928826db2
Content: Python developer reference for Azure Functions
Content Source: articles/azure-functions/functions-reference-python.md
Service: azure-functions
GitHub Login: @ggailey777
Microsoft Alias: glenga

@PingPongSet
Thanks for your feedback! We will investigate and update as appropriate.

@PingPongSet The question is more towards python function method rather than azure function. Files written to the temporary directory aren't guaranteed to persist across invocations. During scale out, temporary files aren't shared between instances. So, if you are doing multi-threading tempfile.gettempdir() will return the path of the same instance.
But in your case as you are creating the file using tempfile.NamedTemporaryFile() so Each call to tempfile.NamedTemporaryFile() results in a different temp file, and its name can be accessed with the fp.name so if you are using creating the temporary file using the above method call then for each invocation of the method there will be random temporary file that would be created.
MicrosoftDocs Github issue is mainly related to the document issue. I would recommend you to create a thread on the forums - Microsoft Q&A or Stack Overflow
Once you post your issue on forums, it will have visibility across the community which is a better suited audience for such types of issues.
I will go ahead and close this issue. Feel free to tag me if you have any queries or concerns.