[Bug] SWB Sagemaker Study permission denied

We encountered an issue where an older Sagemaker instance (>2 months) was turned on. After starting, one of the two study folders associated were not syncing any of the files. In the system logs there's this error: Nov 11 16:21:45 <ip redacted> /usr/local/bin/goofys[9204]: main.ERROR Unable to access '<bucket A, name redacted>': permission denied
Comparing the S3mounts parameter for the Sagemaker stack of the older instance that fails to sync, and a newer instance (with the same studies), I see that the FS role number for the private workspace study that wouldn't sync is different.
Old stack S3mounts parameter:
[
  {
    "id": "Private-workspace",
    "bucket": "<bucket A, name redacted>",
    "region": "us-east-1",
    "roleArn": "arn:aws:iam::<account redacted>:role/swb-LhDhyIAqCHc0a4vrlU256w-fs-1662735997814",
    "prefix": "Private-workspace/",
    "readable": true,
    "writeable": true
  },
  {
    "id": "READ-only",
    "bucket": "<bucket A, name redacted>",
    "region": "us-east-1",
    "roleArn": "arn:aws:iam::<account redacted>:role/swb-LhDhyIAqCHc0a4vrlU256w-fs-1661808852807",
    "prefix": "READ-only/",
    "readable": true,
    "writeable": false
  }
]

New stack S3mounts parameter:
[
  {
    "id": "Private-workspace",
    "bucket": "<bucket A, name redacted>",
    "region": "us-east-1",
    "roleArn": "arn:aws:iam::<account redacted>:role/swb-LhDhyIAqCHc0a4vrlU256w-fs-1668521384862",
    "prefix": "Private-workspace/",
    "readable": true,
    "writeable": true
  },
  {
    "id": "READ-only",
    "bucket": "<bucket A, name redacted>",
    "region": "us-east-1",
    "roleArn": "arn:aws:iam::<account redacted>:role/swb-LhDhyIAqCHc0a4vrlU256w-fs-1661808852807",
    "prefix": "READ-only/",
    "readable": true,
    "writeable": false
  }
]

Some additional context, this bucket (and the associated SWB data source) that the two studies are a part of gets updated every couple months to add new study folders/ids, but the existing studies don't typically change.
What could cause the fs role number to change for a study? What else could cause this permissions denied error?
This is a pretty big problem for us, as we have had people actively using SWB and all their work is gone on Sagemaker stop, because the folder they saved to isn't syncing.
Versions (please complete the following information):

SWB 4.3.1

That number is actually an Epoch Time value, so it looks like a newer version of the same Role was generated. I'm not sure whether that is happening manually or programatically for your specific instance, but either way you should verify that the new Role has all the same IAM permissions as the old role.

I'm not sure what you mean when you say that the role could be updated manually vs programatically. We basically set this system up and let it just run without any administrative interventions  outside the SWB ui for many months-- The only thing we've updated is the study data source, adding a few users, etc. Do you mean when the stack is updated in the SWB UI it's considered manual?
The old stack fs role no longer exists, even though it's still noted in the stack S3mounts parameters. That's the key issue and why permission has been denied. The new stack has the new role, and so it's able to assume the role and sync the files. The sync for the old stack did work when it was first launched, so no permissions errors should have been present in the role itself before it was somehow replaced.
So the key is, that at some point the private workspace study role has been deleted and a new role is made. This doesn't happen for all studies, as the read-only study retained it's role.

Since the sagemaker instance was provisioned, were there any changes made to the external data source, like importing new folders from that bucket, or updating the associated CFN template in any way?

We have added more studies to the data source associated with that bucket, since the instance was launched. When we have new students, we add a folder in the bucket, then add that folder into the data source as a new study, which requires an update stack operation when the data source changes.

For reference, we did update the data source on the 15th through the UI by adding another folder, but we did not push the new stack until the 16th, 2022-11-16 17:14:37 UTC-0500.  We noticed this mount/sync error on the 16th, and we pushed out the stack changes and created a new instance to see if not having pushed that stack update was the root of the issue. However, after the stack update the new instances still had this issue.

Thanks for the information! I believe adding the new data source replaced the active filesystem role, irregardless of the old one being used since the timestamp on the new filesystem role matches the time you edited the data sources. I will add a backlog item for this fixing this problem.

I'm not sure why the original fs-role disappeared. Those roles are unique per byobStudyId-envStudyPermission-hostingAccount combination and only get deleted when all workspaces on a hosting account mounting that study with that permission are terminated (stopping shouldn't have done this).
To unblock your work, could you perform the following steps:

Copy the studies folder into a new directory in that workspace, to preserve the last state locally.
Create the missing role arn:aws:iam::<account redacted>:role/swb-LhDhyIAqCHc0a4vrlU256w-fs-1662735997814 in IAM and copy over all policies from the new one (arn:aws:iam::<account redacted>:role/swb-LhDhyIAqCHc0a4vrlU256w-fs-1668521384862)
Delete the unsynced study folder in studies, and run the /usr/local/bin/mount_s3.sh script on the instance

Note: However if there were files placed inside the study folder before stopping that instance that never got synced to S3, they probably cannot be recovered now even after remounting the study.

While this will probably work, we have > 30 instances that these individual folders are associated with, in the same bucket. The syncing issue happened to most of them and it would be quite tedious to manually apply this change to all of them.
Were you unable to reproduce this error? I'll run a few tests to see if this is still effecting us (with the new Sagemaker auto-stop and credentials changes from v5.2.5).

Curious to know where this has ended up in the backlog. We're still unable to use SWB meaningfully in production with this particular bug. (As we have many instances using a data source, and changes to a data source stack are likely, we can't manually fix the issue for n instances every time we need to update a data source.)
Additionally, I wanted to note that our developers cannot access the database or AWS permissions for our applications in our FISMA prod environment. There's a formal review process for changes there, and this makes manual intervention an untenable option for us.

The workaround suggested does not need to be done for each instance, it only needs to be done once per filesystem (fs) role that has disappeared (filesystem roles are shared based on the permission levels they grant access). This can be done by the IT admin who has access to the BYOB account (where the fs role needs to be created).
For new instances though, a new filesystem role should be created if a fs role for the respective byobStudyId-envStudyPermission-hostingAccount combination does not already exist. Do you see this issue when creating a new workspace instance with BYOB study mounted?

I am not sure I understand your question. I think we're only using the byob study feature to create these instances, and when I test in our dev account we're only using one account.
I took the time to launch version 5.2.7 from AWS mainline in one of our accounts. I'll show the exact steps I used to reproduce this error, to isolate our forked changes from the issue.

Installed SWB 5.2.7 from mainline, using these stage file parameters (all else were left uncommented).

awsRegion: us-east-1
solutionName: tst
envType: dev

Added an AWS account, index and project for account.
Added new data source with account and one test study: study_A
Launched sagemaker (ml.m5.xlarge), with study_A attached.

[ // Stack S3Mounts value for first instance
  {
    "id": "study_A",
    "bucket": "<account>-test-bucket",
    "region": "us-east-1",
    "roleArn": "arn:aws:iam::<account>:role/swb-JuLav9bp7OZ8uO3Ox8BUfM-fs-1674241013259",
    "prefix": "study_A/",
    "readable": true,
    "writeable": false
  }
]

Tested that instance had study_A folder mounted, then stopped instance.
Add new study to existing data source and bucket: study_B
Launched second sagemaker small, with study_A & study_B

[ // Stack S3Mounts value for second instance
  {
    "id": "study_B",
    "bucket": "<account>-test-bucket",
    "region": "us-east-1",
    "roleArn": "arn:aws:iam::<account>:role/swb-JuLav9bp7OZ8uO3Ox8BUfM-fs-1674241825274",
    "prefix": "study_B/",
    "readable": true,
    "writeable": false
  },
  {
    "id": "study_A",
    "bucket": "<account>-test-bucket",
    "region": "us-east-1",
    "roleArn": "arn:aws:iam::<account>:role/swb-JuLav9bp7OZ8uO3Ox8BUfM-fs-1674241767579",
    "prefix": "study_A/",
    "readable": true,
    "writeable": false
  }
]

Connected and tested second instance: both study folders mounted.
Started first instance and connected

Instance does not have access to study_A
Role that is noted in S3Mounts for the first instance no longer exists in AWS console

Please try reproducing with these steps.
Because we're using this in a FISMA, government regulated environment, we can't just access it whenever we want to update settings/configs/permissions on the AWS console without a lot of oversight, and these data sources should be changing as we onboard more users and projects.

Hi @srpiatt !
I am looking at this now. I am going to start by following your steps to reproduce exactly. I will let you know if I have any questions.
I want to acknowledge your comment about FISMA--I'll try to figure out what is going on so you don't have to access the AWS console. Thanks for that context.
Excited to figure this out with you!
Mar

Hi @srpiatt / All ,
As @maghirardelli shared earlier - The team is currently analyzing the entire setup based on the detailed steps described in the ticket, the findings so far show that the issue isn't reproduced on a fresh new installation of 5.2.7 on our side.
However, we're going to provide a detailed steps of our findings we collected per step to eliminate any potential differences that may have point to the root cause. Additionally, couple of questions that asking for more information for further analysis.
I apologize for not providing this feedback earlier this week but rest assured, the team understands the importance and impact for this permission issue. Let's continue our investigation over this ticket for clear visibility and transparency to all stakeholders.
Looking forward for the summary of findings that will be posted shortly

Hi @srpiatt !
Thank you so much for the thorough reproduction steps! Sadly, I was unable to reproduce using the steps provided. Here is exactly what I did. Did I perhaps miss a step or misread a step you gave me? Additionally, I have bolded some questions that would help me diagnose when the fs role deletion is happening for you. It requires you reproducing again sadly, but it should get us closer to figuring this out.

Upgraded an existing environment to tagged release v5.2.7, using my already existing stage file already working for the environment.
I used an existing setup account, index, and project. I updated the permissions on my already-onboarded account to be current (shown as Up-to-Date in SWB Accounts page).
I created a bucket in my bucket account with two folders: ‘study_A’ and ‘study_B’ and SSE-S3 encryption.
Launched sagemaker (ml.t3.medium) with study_A attached.

[ // Stack S3Mounts value for first instance
    {
        "id":"study_A",
        "bucket":"<stage>-va-sw-byob-1067",
        "region":"us-east-1",
        "roleArn":"arn:aws:iam::<account>:role/swb-H0y9ChAeNBwSzWHhtQM4Ze-fs-1674669294584",
        "prefix":"study_A/",
        "readable":true,
        "writeable":false
    }
]

Tested that instance had study_A folder mounted. Could see fs role in the bucket account.

Can you see the fs role from the S3 mounts after instance is available in the IAM Console in the bucket account?
After the instance is available, in DDB Table <stage>-<regionshortname>-sw-ResourceUsages in the main account, what is item RES#roles-only-access-study-study_A||read-true||write-false? Mine looks like this:

{
  "pk": {
    "S": "RES#roles-only-access-study-study_A||read-true||write-false"
  },
  "sk": {
    "S": "SN#fs-roles-study-study_A"
  },
  "items": {
    "SS": [
      "arn:aws:iam::<account>:role/swb-H0y9ChAeNBwSzWHhtQM4Ze-fs-1674669294584"
    ]
  }
}

Then stopped instance. Could still see fs role in the main account after the instance stopped.

Can you see the fs role from the S3 mounts after stopping the instance in the IAM Console in the bucket account?
After stopping the instance, in DDB Table <stage>-<regionshortname>-sw-ResourceUsages in the main account, what is item RES#roles-only-access-study-study_A||read-true||write-false? Mine looks like this:

{
  "pk": {
    "S": "RES#roles-only-access-study-study_A||read-true||write-false"
  },
  "sk": {
    "S": "SN#fs-roles-study-study_A"
  },
  "items": {
    "SS": [
      "arn:aws:iam::<account>:role/swb-H0y9ChAeNBwSzWHhtQM4Ze-fs-1674669294584"
    ]
  }
}

Add new study to existing data source and bucket: study_B. This looks like a Stack Update. CloudFormation Change Set says this is the only change: arn:aws:iam::<account>:policy/swb-H0y9ChAeNBwSzWHhtQM4Ze-app-1674668875980.

Did you select “Stack Update” in the SWB UI like this?

After clicking “Update Stack” in SWB UI and going to CloudFormation, what does the Change Set include at this point for you? This should be displayed right before you click “Update” in CloudFormation.

Launched second sagemaker, with study_A and study_B

[ // Stack S3Mounts value for second instance
    {
        "id":"study_B",
        "bucket":"<stage>-va-sw-byob-1067",
        "region":"us-east-1",
        "roleArn":"arn:aws:iam::<account>:role/swb-H0y9ChAeNBwSzWHhtQM4Ze-fs-1674671079930",
        "prefix":"study_B/",
        "readable":true,
        "writeable":false
    },
    {
        "id":"study_A",
        "bucket":"<stage>-va-sw-byob-1067",
        "region":"us-east-1",
        "roleArn":"arn:aws:iam::<account>:role/swb-H0y9ChAeNBwSzWHhtQM4Ze-fs-1674669294584",
        "prefix":"study_A/",
        "readable":true,
        "writeable":false
    }
]

Connected and tested second instance: both study folders mounted. Both fs roles are still visible in the IAM Console. Note: the FS role for study_A is the same as it was for the first instance, unlike your report.
Started first instance and connected

Instance DOES have access to study_A, unlike your report
Role that is noted in S3Mounts for the first instance STILL EXISTS in AWS console, unlike your report

Additional questions:

Can you run this CloudTrail query in the CloudTrail console (go to CloudTrail>Event History>Lookup attributes): Event name = DeleteRole. Looking at the table, can you find the event where the Resource name column value equals the fs role for Study A that disappeared?

In CloudWatch logs, log group /aws/lambda/-sw-backend--workflowLoopRunner, searching for “fs”, what are the results? This would have to be in the log stream that captures the time of the instance creation/stopping/creation again like in the reproduction steps.

Answers to these questions will help me narrow down when/why this is happening for you! I look forward to hearing from you to continue investigating!
Thanks,
Mar

Thanks for the response! I'm trying out your steps today and documenting for the questions you had. I'll get back to you shortly. :)

Good morning @srpiatt,
Please let us know if you're able to get some findings following @maghirardelli's questions.

Good morning @srpiatt!
Were you able to get any more information from these steps?
Thanks,
Mar

Good morning! I haven't been able to reproduce this issue again, although I have been trying for several days. Yesterday, I was able to find the cloudtrail event for the instance that took place on the 20th, which I'll put below. I'll continue to try to reproduce, so I can get the details for you, but as it is intermittent it could take a while to show up (and it's probably why you haven't been able to easily reproduce). As soon as it happens again for me, I'll fill in all the questions from the steps that cause it, and I'll leave the system in that state so we can do any debugging sessions you want.
{
    "eventVersion": "1.08",
    "userIdentity": {
        "type": "AssumedRole",
        "principalId": "AROAYS2C3LSGRMHZBY3HN:latest-1674241766592",
        "arn": "arn:aws:sts::<account>:assumed-role/swb-JuLav9bp7OZ8uO3Ox8BUfM-app-1674240881391/latest-1674241766592",
        "accountId": "<account>",
        "accessKeyId": "ASIAYS2C3LSGYUZQ46ZV",
        "sessionContext": {
            "sessionIssuer": {
                "type": "Role",
                "principalId": "AROAYS2C3LSGRMHZBY3HN",
                "arn": "arn:aws:iam::<account>:role/swb-JuLav9bp7OZ8uO3Ox8BUfM-app-1674240881391",
                "accountId": "<account>",
                "userName": "swb-JuLav9bp7OZ8uO3Ox8BUfM-app-1674240881391"
            },
            "webIdFederationData": {},
            "attributes": {
                "creationDate": "2023-01-20T19:09:26Z",
                "mfaAuthenticated": "false"
            }
        }
    },
    "eventTime": "2023-01-20T19:09:27Z",
    "eventSource": "iam.amazonaws.com",
    "eventName": "DeleteRole",
    "awsRegion": "us-east-1",
    "sourceIPAddress": "<IP_ADDRESS>",
    "userAgent": "aws-sdk-nodejs/2.1083.0 linux/v16.16.0 exec-env/AWS_Lambda_nodejs16.x AwsLabs/SO0144/Beta promise",
    "requestParameters": {
        "roleName": "swb-JuLav9bp7OZ8uO3Ox8BUfM-fs-1674241013259"
    },
    "responseElements": null,
    "requestID": "ade1fc47-5585-48ea-95d0-344d81a1ab5d",
    "eventID": "015b4e79-c63d-4d89-84bc-5b45120ad7ec",
    "readOnly": false,
    "eventType": "AwsApiCall",
    "managementEvent": true,
    "recipientAccountId": "<account>",
    "eventCategory": "Management",
    "tlsDetails": {
        "tlsVersion": "TLSv1.2",
        "cipherSuite": "ECDHE-RSA-AES128-GCM-SHA256",
        "clientProvidedHostHeader": "iam.amazonaws.com"
    }
}

Hi @srpiatt , thank you for the information you have shared with us, this sounds like a great plan. I look forward hearing back form you about the details

I attempted to reproduce this many times, but I was unable to reproduce with these steps. Frustrated that I felt insane, I dove into the code to see if I can trace the ways that permissions are getting added and removed. I looked up the CloudTrail event you noted, the DeleteRole event, and found all instances that create that event, then walked back where they originate. I noticed a couple comments in one of the files, https://github.com/awslabs/service-workbench-on-aws/blob/mainline/addons/addon-base-raas/packages/base-raas-services/lib/study/study-operation-service.js#L160-L164:

We start by de-allocating previously allocated resources for the study (such as filesystem roles, and certain statements from the bucket policy). We do that even if the user was not removed from the study. Doing this logic makes the whole logic of propagating permissions much easier.

So I did all the reproduction steps you noted, but with the addition of changing the permissions (at the end). And that reproduced the error. So it's somewhere in that area of the code that's causing this. It's possible that the time above that I was able to reproduce, I missed recording this critical difference.
Below are the answers to your questions, which resulted in no reproduction, with the addition of study permission changes near the end that did reproduce this issue.

I created a bucket in my bucket account with two folders: ‘study_A’ and ‘study_B’ and SSE-S3 encryption.

I am using no encryption for these folders

Launched sagemaker (ml.m5.large) with study_A attached.

[ // Stack S3Mounts value for study_A instance
  {
    "id": "study_A",
    "bucket": "<account>-test-bucket",
    "region": "us-east-1",
    "roleArn": "arn:aws:iam::<account>:role/swb-SYgLvs4DDvP3qyrXE3wxTC-fs-1677260713081",
    "prefix": "study_A/",
    "readable": true,
    "writeable": false
  }
]

Tested that instance had study_A folder mounted.

IAM console for fs role
DDB Table <stage>-<regionshortname>-sw-ResourceUsages value for RES#roles-only-access-study-study_A||read-true||write-false?

{
  "pk": {
    "S": "RES#roles-only-access-study-study_A||read-true||write-false"
  },
  "sk": {
    "S": "SN#fs-roles-study-study_A"
  },
  "items": {
    "SS": [
      "arn:aws:iam::<account>:role/swb-SYgLvs4DDvP3qyrXE3wxTC-fs-1677260713081"
    ]
  }
}

Then stopped instance.

IAM fs role
DDB Table <stage>-<regionshortname>-sw-ResourceUsages value for RES#roles-only-access-study-study_A||read-true||write-false?

{
  "pk": {
    "S": "RES#roles-only-access-study-study_A||read-true||write-false"
  },
  "sk": {
    "S": "SN#fs-roles-study-study_A"
  },
  "items": {
    "SS": [
      "arn:aws:iam::<account>:role/swb-SYgLvs4DDvP3qyrXE3wxTC-fs-1677260713081"
    ]
  }
}

Add new study to existing data source and bucket: study_B

Stack update changeset

Launched second sagemaker, with study_A and study_B

[ // Stack S3Mounts value for instance with study_A and study_B
  {
    "id": "study_B",
    "bucket": "<account>-test-bucket",
    "region": "us-east-1",
    "roleArn": "arn:aws:iam::<account>:role/swb-SYgLvs4DDvP3qyrXE3wxTC-fs-1677262573049",
    "prefix": "study_B/",
    "readable": true,
    "writeable": false
  },
  {
    "id": "study_A",
    "bucket": "<account>-test-bucket",
    "region": "us-east-1",
    "roleArn": "arn:aws:iam::<account>:role/swb-SYgLvs4DDvP3qyrXE3wxTC-fs-1677260713081",
    "prefix": "study_A/",
    "readable": true,
    "writeable": false
  }
]

Connected and tested second instance: both study folders mounted.

IAM fs role

Started first instance and connected: study_A folder is mounted

AIM fs role

No reproduction to this point.

Additional permission steps:
Both first and second instance were launched by root user.

Stopped first instance-- only second instance is on (with Study_A and stuby_B mounted)

IAM fs roles

Edited study_A: move root admin user to read/write user.

Admin

before: root
after: none

Read/Write

before: none
after: root

Role is now replaced.
Instance two (with study_A & study_B) which was turned on, now shows permission error for study_A

CloudTrail DeleteRole event

{
    "eventVersion": "1.08",
    "userIdentity": {
        "type": "AssumedRole",
        "principalId": "AROAYS2C3LSGVK42SUUF6:latest-1677264923372",
        "arn": "arn:aws:sts::<account>:assumed-role/swb-SYgLvs4DDvP3qyrXE3wxTC-app-1677252944243/latest-1677264923372",
        "accountId": "<account>",
        "accessKeyId": "ASIAYS2C3LSG25URSSXU",
        "sessionContext": {
            "sessionIssuer": {
                "type": "Role",
                "principalId": "AROAYS2C3LSGVK42SUUF6",
                "arn": "arn:aws:iam::<account>:role/swb-SYgLvs4DDvP3qyrXE3wxTC-app-1677252944243",
                "accountId": "<account>",
                "userName": "swb-SYgLvs4DDvP3qyrXE3wxTC-app-1677252944243"
            },
            "webIdFederationData": {},
            "attributes": {
                "creationDate": "2023-02-24T18:55:23Z",
                "mfaAuthenticated": "false"
            }
        }
    },
    "eventTime": "2023-02-24T18:55:24Z",
    "eventSource": "iam.amazonaws.com",
    "eventName": "DeleteRole",
    "awsRegion": "us-east-1",
    "sourceIPAddress": "<IP_ADDRESS>",
    "userAgent": "aws-sdk-nodejs/2.1083.0 linux/v16.16.0 exec-env/AWS_Lambda_nodejs16.x AwsLabs/SO0144/5.2.7 promise",
    "requestParameters": {
        "roleName": "swb-SYgLvs4DDvP3qyrXE3wxTC-fs-1677260713081"
    },
    "responseElements": null,
    "requestID": "dba98f71-c989-49e6-8648-94072789cbe3",
    "eventID": "192473c1-32d9-4118-aa18-6ac3855797b4",
    "readOnly": false,
    "eventType": "AwsApiCall",
    "managementEvent": true,
    "recipientAccountId": "<account>",
    "eventCategory": "Management",
    "tlsDetails": {
        "tlsVersion": "TLSv1.2",
        "cipherSuite": "ECDHE-RSA-AES128-GCM-SHA256",
        "clientProvidedHostHeader": "iam.amazonaws.com"
    }
}

started instance one

instance one (with only study_A) does not mount the study

If you update BYOB study permissions while other workspaces are using it (active or stopped), those workspaces will lose access to that study. This is documented in docs/docs/user_guide/sidebar/common/studies/studies_page.md and is a known limitation of the feature. Try terminating your environment, then make the changes, and then create a new workspace and see if everything works as expected. Thanks!

This issue is causing data loss for end users when the workspace lost connection with the study. Should fix this.

Hi! Since we have established this is a documented limitation of BYOB, I am moving this ticket to closing soon if no response and will resolve in a week!
Thanks,
Marianna


Hydrogen doesn't run any code, zeroMQ issue?

Prerequisites

[x] Have you checked the solutions in our troubleshooting guide for common problems ?
[x] Have you checked that your issue isn't already filed ?

Description
When i start Atom and try to run code with Hydrogen for the first time (after launching Atom) I just receive a pop-up windows telling me Hydrogen Kernels updated - Python 3.
Steps to Reproduce

Install pyzmq
Install ipython + atom/hydrogen
Try to run code ctrl+enter

Versions

OS version:
Windows 7 64bit
Hydrogen version:
2.13.1
Plugins
Have you installed and activated any of the Hydrogen plugins below ?

[ ] hydrogen-python
[ ] Hydrogen Launcher
[ ] Data Explorer

Logs
gyp ERR! clean error
gyp ERR! stack Error: EPERM: operation not permitted, unlink 'C:\Users\Jonas Blickle\.atom\packages\Hydrogen\node_modules\zeromq\build\Release\zmq.node'
gyp ERR!  Exit status 1
npm ERR!
npm ERR! Failed at the<EMAIL_ADDRESS>install script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.
npm ERR!  C:\Users\Jonas Blickle\.atom\.apm\_logs\2019-11-27T19_36_29_367Z-debug.log

Expected behavior
Run Code
Screenshots

Additional context
The Errorlog somewhat mentiones zeroMQ, maybe this is causing trouble.
In advance thanks a lot!

Seems like this is an npm installation problem. I would read this issue and follow their solutions as they had multiple. If you have any further troubles, post here and I will reopen the issue.


SyntaxError: Use of const in strict mode.

Hi All,
just throwing this error into:
hedgy-osx:opt$ is-trademarked kik
/usr/local/lib/node_modules/is-trademarked-cli/cli.js:3
const meow = require('meow')
^^^^^
SyntaxError: Use of const in strict mode.
at exports.runInThisContext (vm.js:73:16)
at Module._compile (module.js:443:25)
at Object.Module._extensions..js (module.js:478:10)
at Module.load (module.js:355:32)
at Function.Module._load (module.js:310:12)
at Function.Module.runMain (module.js:501:10)
at startup (node.js:129:16)
at node.js:814:3

What's the version of your Node.js?

Sure it requires node>= 4

There should a warning when you install this module like:
npm WARN engine<EMAIL_ADDRESS>wanted: {"node":">=4"} (current: {"node":"0.12.7","npm":"2.11.3"})
npm WARN engine<EMAIL_ADDRESS>wanted: {"node":">=4"} (current: {"node":"0.12.7","npm":"2.11.3"})

thats what i wanted to say with my post, sorry i was in a hurry ;-)
thanks for this tool, i use it regularly ....


Test: UdfDbFunctionSqlServerTests class should not use northwind database

UdfDbFunctionSqlServerTests is used for functional testing for UDFs. Any time we change something and want to add more test that should be the class to go to. But at present that class uses northwind database.
We don't want to modify northwind database since anytime we modify the script, we need to drop database from machines where it is persisted. (CI & local dev boxes).
We should let this class use northwind model (or may be new model) but use own database which would get recreated every time so that adding more UDFs don't require manual dropping of database on various machines.
This should also remove currently defined UDFs in northwind.

I will take this one, as I did create the problem.  It seemed like a good idea at the time :)

Fixed in f2683c5240843b91702c5060d10d0b685c069e4e


beta22: resolveModules no longer exported in @lwc/module-resolver

Summary
I just updated to .22 and it looks like it switched @lwc/* deps. Looks like this version doesn't export resolveModules.
Steps To Reproduce:

Update lwc-services to beta22 in a project
yarn/npm watch

Expected result
Should compile.
Actual result
Seeing an exception due to not finding resolveModules.
Additional information
@lwc/module-resolvers<EMAIL_ADDRESS>change: https://github.com/muenzpraeger/create-lwc-app/pull/201/files#diff-79b3b8ab9015e7b57dcae182abaab9abR21

Known. The 1.1.0 alpha‘s are missing deps. And 1.0.2 doesn’t have the new module resolution (as you point out here).
I am already talking to Diego to pin down what version to use now. ;-)


Extend a Business App to Consume an S/4HANA Service

Tutorial URL: https://developers.sap.com/tutorials/cp-apm-s4hana-01.html
Please specify the step you are referring to
While following this tutorial we are getting a lot of errors in that refer to build failures. Specifically once we import the external S4HANA files into the project (Step 4)
and try to run the Java service it simply fails. I tried replicating it in our production as well as trial accounts and get same problems.

I had done this project 2 months back and then it worked perfectly fine but now it seems the underlying templates use newer build resources when we create a Web IDE project and those are failing to build.
Any pointers will be greatly appreciated.

This has been identified as an issue, and is fixed with the upcoming version of cds this week.
See the this commit for a workaround. Apply it on the top-level package.json (not the one in db/).
Background: the new Web IDE version converts the imported service into a CDS model that is too new for the latest publicly available CDS compiler, hence the strange internal error.


Progressive allowance feature

This is what of one of the customers wrote:
"In our case, time off is based on length of employment."
As it looks to me it is not complex to add feature of "time in company based allowance", that it with every year of being with a company employee gets extra day off until lets say 5.
That change would require few changes of DB structure:

add flag that enables the feature on company level
add the limit of how many extra days is possible to gain in such a way; again on the company level

The code that calculates the amount of available allowance needs to perform extra calculations: count of how many years the employee is with current company and based on that add extra days.

That would be great to have this feature


Cache storage config  lowercase or not?

Just noticed that you are forcing the cache config name to lowercase. Is that what you'd want across the board? It was it unintentional to be just for cache?

Sorry, only meant the LRU cache couldn't be used, though it is fixed now

yes, my mistake! thanks @drkibitz


long_description has syntax errors in markup and would not be rendered on PyPI when 'npm run package'

:bug: Bug Report
Affected Languages

[ ] TypeScript or Javascript
[x] Python
[ ] Java
[ ] .NET (C#, F#, ...)

General Information

JSII Version: 6.13.6
Platform:      4.19.84-microsoft-standard #1 SMP Wed Nov 13 11:44:37 UTC 2019 x86_64 x86_64 x86_64 GNU/Linux

What is the problem?
When attempting to Package a JSII module I get the following error:
> jsii-pacmak

Error: Process exited with status 1
Checking /mnt/c/Users/xxxx/secure-bucket/dist/python/mbonig.secure_bucket-1.0.0-py3-none-any.whl: FAILED          `long_description` has syntax errors in markup and would not be rendered on PyPI.
    line 11: Warning: Inline literal start-string without end-string.
  warning: `long_description_content_type` missing.  defaulting to `text/x-rst`.

Verbose Log
> jsii-pacmak "--verbose"

[jsii-pacmak] [INFO] Found 1 modules to package
[jsii-pacmak] [INFO] Packaging NPM bundles
[jsii-pacmak] [INFO] Loading jsii assemblies and translations
[jsii-pacmak] [INFO] Packaging 'python' for secure-bucket
[jsii-pacmak] [INFO] Packaging 'java' for secure-bucket
[jsii-pacmak] [INFO] Packaging 'dotnet' for secure-bucket
[jsii-pacmak] [INFO] Packaging 'js' for secure-bucket
[jsii-pacmak] [INFO] js finished
Error: Process exited with status 1
Checking /mnt/c/Users/xxx/secure-bucket/dist/python/mbonig.secure_bucket-1.0.0-py3-none-any.whl: FAILED          `long_description` has syntax errors in markup and would not be rendered on PyPI.
    line 11: Warning: Inline literal start-string without end-string.
  warning: `long_description_content_type` missing.  defaulting to `text/x-rst`.
Checking /mnt/c/Users/mboni/projects/secure-bucket/dist/python/mbonig.secure-bucket-1.0.0.tar.gz: PASSED

    at ChildProcess.<anonymous> (/mnt/c/Users/mboni/projects/secure-bucket/node_modules/jsii-pacmak/lib/util.js:57:31)        at Object.onceWrapper (events.js:300:26)
    at ChildProcess.emit (events.js:210:5)
    at maybeClose (internal/child_process.js:1021:16)
    at Process.ChildProcess._handle.onexit (internal/child_process.js:283:5)

I should add... looking through code I suspected it might be an issue with my README.md file, but even if I remove all content and have a blank file, I still get the error.

@mbonig Thanks for the report.
You have your current jsii version as 6.13.6 which doesn't exist. Assuming you're experiencing this on the current release, 0.22.0. Is that correct?

Actually, 0.21.2, must have misread the jsii-verbose output. Reference here:
https://github.com/mbonig/secure-bucket/blob/master/package.json
Oddly enough this doesn't appear to happen during my Github Actions...
https://github.com/mbonig/secure-bucket/runs/432217140?check_suite_focus=true

Yeah something is funny here. Might be a Windows specific issue. Will dig in a bit more.

I'm seeing this on Amazon Linux as well. I suspect that the setup.py file generated by JSII is referencing a README.md file that doesn't exist.
If I follow the directions in the jsii README for a sample project, it works correctly if I have uninstalled twine. I can then attempt to pip install /path/to/project/dist/python/such_and_such.tgz and it fails with the long_description error @mbonig described. installing twine and attempting to re-run npm run package generates the same error.

disregard. I'm a big 'ole dummy.
Old and busted
pip install ../jsii-test/dist/python/acme.hello-jsii-1.0.0.tar.gz --user

New hotness
pip install --no-index --find-links=../jsii-test/dist/python acme.hello_jsii

oooh interesting. I wonder if a similar fix can be found for @mbonig's issue. I've always relied on the old and busted for referencing local packages.
@mbonig if you clean your project repo does jsii-pacmak fail with the error at first run, or is it only after running pip install on the package following a first successful build?

Just updated to latest versions of everything and I don't get the error anymore.

<EMAIL_ADDRESS><EMAIL_ADDRESS>building on<EMAIL_ADDRESS>Just ran into this today. Were there any other solutions to this?
My project was set up using a projen 0.58.15 JsiiProject, which is running jsii-pacmak -v --target python in CI. It only happens in CI for me, and only the wheel fails the twine check. Locally I can package and twine check passes for both the wheel and tar.
I notice pacmak runs twine check using a python in /opt/tmp/npm-pack/.env-/bin/python. I haven't dug through JSII code to understand which python that is. The agents we use have pyenv and I'm doing build tool updates prior to package. So I'm wondering if that referenced python version isn't what I think it is...


TSC crashes when reexporting CommonJS exports

Bug Report
🔎 Search Terms
TypeError: Cannot read properties of undefined (reading 'flags')
🕗 Version & Regression Information

This is a crash
This changed between versions 4.5.5 and 4.6.2

⏯ Playground Link
Playground link with relevant code
💻 Code
// @filename: lib/constants.js
module.exports = {
  str: 'x',
};

// @filename: src/constants.ts
import * as tsConstants from "../lib/constants";
export { tsConstants };

🙁 Actual behavior
TSC crashes with this error message:
TypeError: Cannot read properties of undefined (reading 'flags')
    at isAliasResolvedToValue (https://typescript.azureedge.net/cdn/4.6.2/monaco/dev/vs/language/typescript/tsWorker.js:70191:26)
    at isValueAliasDeclaration (https://typescript.azureedge.net/cdn/4.6.2/monaco/dev/vs/language/typescript/tsWorker.js:70166:32)
    at Object.isValueAliasDeclaration (https://typescript.azureedge.net/cdn/4.6.2/monaco/dev/vs/language/typescript/tsWorker.js:70471:27)
    at visitExportSpecifier (https://typescript.azureedge.net/cdn/4.6.2/monaco/dev/vs/language/typescript/tsWorker.js:75498:45)
    at Object.visitNodes (https://typescript.azureedge.net/cdn/4.6.2/monaco/dev/vs/language/typescript/tsWorker.js:72290:41)
    at visitNamedExports (https://typescript.azureedge.net/cdn/4.6.2/monaco/dev/vs/language/typescript/tsWorker.js:75488:28)
    at visitNamedExportBindings (https://typescript.azureedge.net/cdn/4.6.2/monaco/dev/vs/language/typescript/tsWorker.js:75495:76)
    at https://typescript.azureedge.net/cdn/4.6.2/monaco/dev/vs/language/typescript/tsWorker.js:75483:18
    at Object.visitNode (https://typescript.azureedge.net/cdn/4.6.2/monaco/dev/vs/language/typescript/tsWorker.js:72253:21)
    at visitExportDeclaration (https://typescript.azureedge.net/cdn/4.6.2/monaco/dev/vs/language/typescript/tsWorker.js:75482:32)

🙂 Expected behavior
TSC should not crash.

I'm amazed that there's no test case for this.

That’s odd. The bug workbench shows the crash.


Request for Feedback: OCI image-spec 1.1.0

OCI is approaching a 1.1.0 release on the image-spec and distribution-spec, so we are reaching out to implementations to see if you have any concerns implementing support for those changes that we should address before a GA release.
A full diff of the changes can be viewed at:

image-spec: https://github.com/opencontainers/image-spec/compare/v1.0.2...opencontainers:image-spec:main
distribution-spec: https://github.com/opencontainers/distribution-spec/compare/v1.0.1...main

I'm happy to take feedback here, you can raise an issue in OCI, or respond in our tracking issue at https://github.com/opencontainers/image-spec/issues/1093.

We are waiting for https://github.com/opencontainers/distribution-spec/issues/459 to be resolved before we take any further action in this repository.

OCI Image Spec v1.1.0 has been tagged, this can close.


Document in detail how the step selection works

Feedback from the early adopter workshop

Explain how selecting steps work (--all versus selected steps)
Not obvious when seeing for the first time
Describe --force - when/why use it

@adka1408, would you like to have a look at this?

Hm, just realized the test selection is already described in the examples. The only missing part is probably the --force explanation.

Fixed by #554.


[docs] Fix layout shift when scrolling

I have first noticed the issue on X: https://deploy-preview-3006--material-ui-x.netlify.app/components/data-grid/editing/#server-side-validation with @m4theushw's PR. But it can also be reproduced on the Core. As you scroll, the font weight of the highlighted item increases, making it sometimes wrap, and shifting the rest of the table of content.

https://mui.com/components/links/#security
Compare with how it feels smoother on https://stripe.com/docs/terminal/overview. I went on reproducing the same behavior: no change of font-weight. I believe there is already enough contrast, more is taking the risk to catch the attention of the user away from what matters: the body of the page.
Preview: https://deploy-preview-29436--material-ui.netlify.app/components/links/

I still see a layout shift.
https://user-images.githubusercontent.com/18292247/139660278-6879a740-05b1-4129-922a-8235d952ef5e.mov

@siriwatknp Oh yeah, I didn't solve the one on loading. I assume it will require a different approach. I'm less worried about this one, my main concern with the current one is that I can look back and further between the content of the page and the toc when I scroll, the as the position of the toc is not stable, it desorients me.


[FEATURE] In-Obsidian execution of JavaScript code (special case)

Firstly, thank you for writing and maintaining this plugin, it gets Obsidian a lot closer to the use-case I need it for!
Is your feature request related to a problem? Please describe.
I have a lot of 2D / 3D vector math and transformation related notes that I would like to add examples to using a library like p5.js. Ideally, I'd want to be able to do something like this:
@html(`
<canvas id="myCanvas"></canvas>
<script src="https://cdnjs.cloudflare.com/ajax/libs/p5.js/1.9.2/p5.min.js"></script>
`)

// write any kind of p5 code here

Describe the solution you'd like
This plugin allows me to run JavaScript snippets with the built-in executor that uses my NodeJS path.
For almost all languages, abstracting a generic REPL executor and running that in isolation is a very good idea.
However, JavaScript is a bit of a special case since Obsidian itself is running JavaScript when rendering the note, so in this special case it could be very beneficial to be able to run code directly inside Obsidian instead of going through the whole usual workflow of wrapping it, writing it to a file, executing it and capturing the stdin/stdout.
Describe alternatives you've considered
Not many really, I've considered writing a plugin myself that adds the canvas and just eval()s the code but I am already using this plugin, so I figured this might be an interesting special case?
Let me know if you'd be interested in having support for this special case in this plugin.

Hi! Thanks for your issue, I generally think that accessing the runtime of the Obsidian application is a bad idea. Nonetheless, you are not the first to ask for this feature (e.g. #351). If you have an idea how we can implement this as an optional feature, feel free to tell me more or open a pull request.


Update adot helm chart appVersion

Issue #, if available: https://github.com/aws/eks-anywhere-packages/issues/636
By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

/approve


Allow app in AbstractRenderServer.init

We didn't do this initially because it accepted **kwargs that were passed elsewhere, now the keyword arguments are finite and this makes sense to do.

This has already been fixed!


Uncaught ReferenceError: "regeneratorRuntime is not defined"

Description
I'm trying to use vue-html2canvas package in one of my older projects. When I put Vue.use(VueHtml2Canvas) in the main.js, I get this error in the Google Chrome console:
index.js?5a57:1 Uncaught ReferenceError: regeneratorRuntime is not defined
    at eval (index.js?5a57:1)
    at Object.install (index.js?5a57:1)
    at Function.Vue.use (vue.runtime.esm.js?2b0e:5101)
    at eval (main.js?56d7:16)
    at runMain (app.js?df88:52)
    at eval (entry.client.js?36fa:14)
    at Module../node_modules/gridsome/app/entry.client.js (app.js:3418)
    at __webpack_require__ (app.js:770)
    at fn (app.js:130)
    at Object.0 (app.js:4924)

Environment
>> node -v
v10.15.3
>> gridsome -v
@gridsome/cli v0.2.1
gridsome v0.6.9

I found a similar error message here.

@maoberlehner - The problem has to do with Babel not including all polyfills by default. So a freshly installed Nuxt.js seems to have all necessary polyfills but Gridsome (and maybe Nuxt.js with customized Babel settings) does not.

This may or may not be a problem with this specific version of Gridsome but any help I get would be really appreciated.

Hello! Did you solve this problem?


Allows giving providerclassname, used to create awsCredentialsProvider

Adding an option "providerclassname", if given will create an object from this class and use it as awsCredentialsProvider.

Looks good to me.

@jacobfi


hideWelcomeMessage and hideLearnButton not working

Hi
I have
“hideWelcomeMessage”: true,
“hideLearnButton”: true,

in my config, but both the welcome message and the learn button still appear.
All other config options work as expected.
Is this a known issue?
Thanks
Paul

Is anyone maintaining this plugin? No response to this post, and it looks as if the last update was almost a year ago.


Name correctly settled #358

Also could you add CLOSES  in your PR description? It'll close the issue automatically when merged

We appreciate that 😊🙏❤


"No system RNG was patched for method:" warning reguarding Vanilla Events Expanded

MpCompat is throwing a warning when starting the game with Vanilla events expanded enabled.
For all I know the warning could be safely ignored, so if that's the case feel free to close this out.
https://gist.github.com/HugsLibRecordKeeper/084118df27ebac06bca3126b35bcd3ec (hugslib log)
Player.log

Fixed already. https://github.com/rwmt/Multiplayer-Compatibility/commit/52668fe417b6b400802eb912b3cf3c0aeee207e4

First of all thanks for the answer.
However, I just uninstalled the game, made sure both the game and workshop folder were gone, then reinstalled.
Even after that I still get the warning, am I doing something wrong or did I simply misunderstand your answer?
(this was all done after the latest mp compat patch that came out around 40 minutes ago)

Mm, I see, it's just a warning. They removed the RNG possibly. I'll remove it from that method then.


Use fs's blocksize instead of hardcoded 1024 in ReadDirWorker

Connects-To: #23
Change-Type: patch
---- Autogenerated Waffleboard Connection: Connects to #23

Code looks good to me, though I'm not an expert here. If possible though, it'd be good to add a test for this, imo.
@pimterry test added


Use /proc/self/net instead of /proc/net to avoid kernel crash.

This change is to fix this issue
https://github.com/prometheus/node_exporter/issues/2027 .

I do't see how this is going to help, /proc/self is also a symlink.

@SuperQ how about I change to read /proc/0/
In 2 crash dump cases, we just found it could not get the link of /proc/net .

  d_name = {
    {
      {
        hash =<PHONE_NUMBER>,
        len = 3
      },
      hash_len =<PHONE_NUMBER>0
    },
    name = 0xffff8a4281d01ef8 "net"
  },
  struct inode *d_inode = 0x0  <---- Could not get link inode for `/proc/net` then get "BUG: unable to handle kernel NULL pointer dereference " error.
  -> NULL

That would be a kernel bug then. Not a node_exporter bug.

That would be a kernel bug then. Not a node_exporter bug.

@SuperQ thanks a lot for your comment, yep, it is kernel bug. but upgrade kernel requires reboot server, if we could workaround in node-exporter, it would be helpful.

The question is what is the right one in general? The doc says we're using  /proc/self https://github.com/prometheus/procfs/blob/5162bec877a860b5ff140b5d13db31ebb0643dd3/proc.go#L43 but it doesn't look like that's the case.

It seems like a memory corruption issue:

   s_shrink = {
     count_objects = 0xffffffff81878e80 <perf_trace_consume_skb>,
     scan_objects = 0xffffffff8187a6d0 <super_cache_scan>,

The above count_objects was expected to be super_cache_count instead of perf_trace_consume_skb.
The kernel is likely to panic again with or without the patch since the root cause is not fixed.
For example, the kernel is going to panic when reclaim slab pages (if there is not enough free memory or memory is badly fragmented).

@wenjianhn Orz, where you find the complete dentry, I didn't post at here before.

To sync our later finding here in case other guys encounter the similar problem.
We are able to reproduce the issue via this tiny program.
// proc_test.go
package main

import (
        "io/ioutil"
        "math/rand"
        "sync"
        "time"
)

func readSockstat() {
        for {
                _, _ = ioutil.ReadFile("/proc/net/sockstat")
                time.Sleep(time.Millisecond * 10)
        }
}

func main() {
        var wg sync.WaitGroup

        for i := 0; i <= 800; i++ {
                wg.Add(1)
                n := rand.Intn(10)
                time.Sleep(time.Millisecond * time.Duration(n))
                go readSockstat()
        }

        wg.Wait()
}

And we found it is fixed in upstream in https://lore.kernel.org/patchwork/patch/1009682/
After applying this patch, could not reproduce the issue any more.


Delete obsolete javadoc warning about pendingTasks() method expensiveness

Motivation:
Current javadoc for SingleThreadEventExecutor#pendingTasks() method declares:

Return the number of tasks that are pending for processing. Be aware that this operation may be expensive as it depends on the internal implementation of the SingleThreadEventExecutor. So use it with care!

(https://netty.io/4.1/api/io/netty/util/concurrent/SingleThreadEventExecutor.html#pendingTasks--)
From the implementation side, Event Loop implementations use queue implementation from JCTools library, which provides the expected result very fast (can be considered as constant time). The default implementation, JDK's LinkedBlockingQueue also provides result in constant time.
Seems that this comment describes usage of ConcurrentLinkedQueue, which is not used for several years (it computes size in linear time).
Modification:
I suggest to remove this misleading note

@fedorovr Have you signed the ICLA? https://netty.io/wiki/developer-guide.html

I have signed it just now, thanks for reminder


Confused

any chance could someone upload a video setting this up via docker and windows 11
new to docker and cant seem to access the webui
not sure if im missing a config file or missing a step , or is there a better guide
downloaded docker and pulled the file
ive opened ports in firewall
and keep getting
""Hmmm… can't reach this page<IP_ADDRESS> took too long to respond
Try:
Search the web for 172 17 0 2
Checking the connection
Checking the proxy and the firewall
ERR_CONNECTION_TIMED_OUT""

<IP_ADDRESS> seems to b the local docker network address.
Try to reach it with http://localhost:3001 (or the port configured beforehand)
The how to is written here : https://github.com/lejacobroy/Tidalrr#start-everything

still dont know what and why i cant connect
This site can’t be reachedlocalhost refused to connect.
Try:
Checking the connection
Checking the proxy and the firewall
ERR_CONNECTION_REFUSED
i even asked copilot and it cant figure it out
any chance anyone can create a youtube video so i can visually see any steps or error im doing wrong or missing
untill then im giving up 3 days trying
new to docker and apparently dont know what im doing
2024-09-15 23:53:58 WARNING: This is a development server. Do not use it in a production deployment. Use a production WSGI server instead. 2024-09-15 23:53:58  * Running on all addresses (<IP_ADDRESS>) 2024-09-15 23:53:58  * Running on http://<IP_ADDRESS>:3001 2024-09-15 23:53:58  * Running on http://<IP_ADDRESS>:3001 2024-09-15 23:53:58 Press CTRL+C to quit 2024-09-15 23:34:50 Starting web server 2024-09-15 23:34:50  * Serving Flask app 'tidalrr.webserver' 2024-09-15 23:34:50  * Debug mode: off 2024-09-15 23:46:29 Starting tidalrr app 2024-09-15 23:46:29 Scans are scheduled 2024-09-15 23:46:29 Downloads are scheduled 2024-09-15 23:46:29 Non-Empty Access Token, logging in 2024-09-15 23:46:29 Starting web server 2024-09-15 23:46:29  * Serving Flask app 'tidalrr.webserver' 2024-09-15 23:46:29  * Debug mode: off 2024-09-15 23:53:57 Starting tidalrr app 2024-09-15 23:53:57 Non-Empty Access Token, logging in 2024-09-15 23:53:57 Scans are scheduled 2024-09-15 23:53:57 Downloads are scheduled 2024-09-15 23:53:58 Starting web server 2024-09-15 23:53:58  * Serving Flask app 'tidalrr.webserver' 2024-09-15 23:53:58  * Debug mode: off

this is my docker composs
`version: '3.7'
services:
tidalrr:
container_name: test1
image: jacobroyquebec/tidalrr
restart: unless-stopped
environment:
- TZ=America/Toronto
- PUID=501
- PGID=501
- WEB_PORT=3001
ports:
- 3001:3001
volumes:
- "./config:/app/tidalrr/database/config"
- "./download:/app/download"
- "./import:/app/import"
#- /path/to/lidarr/folders:/path/to/lidarr/folders
watchtower:
image: containrrr/watchtower
volumes:
- /var/run/docker.sock:/var/run/docker.sock`

Don't take this the wrong way, but GitHub is for developper to contribute on code and enhance the product in an open-source way, not to provide help to unskilled users. If you need help on docker, you should reach out to docker forums.
As for your problem, the docker-compose file seems fine.
In your first statement, you didn't specify the port you're using to correct to localhost, so maybe the problem is there.
From the log you added, we can clearly see the port is 3001, hence, you should try to browse to "http://localhost:3001" or "http://<IP_ADDRESS>:3001".
Again from the log, Tidalrr is working fine. If that dosen't work still, your problem is elsewhere and I can't help you further, sorry.

Glad you got it working!


add a service to securely communicate client secret to the external client

When registering a client, a client id/client secret pair will be created by the client registration service. However, it is hard to transfer the client secret to the external client securely. Email is not secure and in most cases, we are using secure USB to do that physically. In some other cases, we are asking the client to create a key pair and send us the public key so that we can use it to encrypt it and send through email. The at the receiving end, the user can use the private key to decrypt the client secret. This is a manual process and very error-prone.
We are thinking to create a microservice as part of the light-oauth2 so that client can have a secure way to invoke an API to retrieve the secret. Need to have some brainstorms...

Hi ,
I am new to this project .
This issue seems interesting and challenging .I would like to take this issue. can anyonoe help me to get started in this.

This has been discussed several times last year between members and users. In most of the cases, physically transfer the secret is acceptable. Some users are sending the client id in email and then text the secret. In the end, almost all of us agreed that we should have a web UI to allow the client to authenticate him/her and then create the client_id/client_secret pair from the web app. In this case, they have both at the same time. They need to be notified on the interface that he/she only have one chance to backup the secret after creation. There is no way to retrieve the secret afterward. I have started the light-portal implementation and a demo can be accessed at https://lightapi.net live. It is still working in progress for the light-oauth2 UI. The source code repository can be found at https://github.com/networknt/light-portal/tree/master/view. We can work together on this project if you are interested. Thanks.


chore(all): update to latest packages

Since this is just a manifest update. I'm going to update locally and push.


allow specifying aws profile

Replaces #76

Heya!
Looking solid!
I'm gonna merge it and improve syntax for the profile flags a bit, together with fixing #78


Message: implode(): Passing glue string after array is deprecated. Swap the parameters in Codeigniter using google client api for google drive

A PHP Error was encountered
Severity: 8192
Message: implode(): Passing glue string after array is deprecated. Swap the parameters
Filename: Service/Resource.php
Line Number: 289
Backtrace:
File: C:\xampp\htdocs\googledrivecod\vendor\google\apiclient\src\Google\Service\Resource.php
Line: 289
Function: implode
File: C:\xampp\htdocs\googledrivecod\vendor\google\apiclient\src\Google\Service\Resource.php
Line: 190
Function: createRequestUri
File: C:\xampp\htdocs\googledrivecod\vendor\google\apiclient-services\src\Google\Service\Drive\Resource\Files.php
Line: 245
Function: call

Hello @FahadTariq476-dev
I currently don't understand your message. I understand that the parameter for the implode needs to be swapped. But the code you point out aren't part of PHPMD.
Can you explain what you did so we can help you?

thanks for your reply
i am getting the implode due to old version of google client api
now its resolved
On Mon, Nov 2, 2020 at 2:58 PM Tobias van Beek<EMAIL_ADDRESS>wrote:

Assigned #842 https://github.com/phpmd/phpmd/issues/842 to
@FahadTariq476-dev https://github.com/FahadTariq476-dev.
—
You are receiving this because you were assigned.
Reply to this email directly, view it on GitHub
https://github.com/phpmd/phpmd/issues/842#event-3947231315, or
unsubscribe
https://github.com/notifications/unsubscribe-auth/AQ6GDO2CTEFTRZOL5IATLMLSNZ7DLANCNFSM4THAF3FA
.

by replacing the parameters in Resource.php
if (count($queryVars)) {
$requestUrl .= '?' . implode('&',$queryVars);
}


updated logger.h and logger.cpp

Issue: #1
updated logger.h and logger.cpp

Hey @bcde123
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 ✨✨!

Write code in main to use logger class's object for writing key strokes to file

Hey @bcde123
Your PR has been merged 🥳🥳 and you have earned 10 points.
Thanks for contributing in OpenCode'24 ✨✨


How to use gdb to view the stack of a thread

When I use gdb to interrupt the execution of the MCU, It usually stop in the idle thread. The stack of the idle thread is useless on me.
At this time, I want to see what happened to my thread, what should I do? How should I use gdb to view the stack of my thread?

I think I know how to do it.
This is my steps(ARM v7):

Find the thread(demo_thread) you need to view
Use the following command to switch the stack to this thread.

gdb> set $lr = *(int*)(demo_thread->callee_saved.psp + 20)
gdb> set $pc = *(int*)(demo_thread->callee_saved.psp + 24)
gdb> set $psp = demo_thread->callee_saved.psp + 32

Use the 'bt' command to view the thread stack

gdb> bt

Hi @xiaoliang314 , if you're using openocd or pyocd gdb server, you can enable zephyr thread awareness by setting CONFIG_OPENOCD_SUPPORT=y in your application. You can then use gdb thread commands.
https://docs.zephyrproject.org/latest/guides/debugging/host-tools.html
https://sourceware.org/gdb/current/onlinedocs/gdb/Threads.html

@MaureenHelm Thanks for your reply, I am using J-Link GDB Server + GDB (ARM) for debugging. CONFIG_OPENOCD_SUPPORT has no effect on my debugging tools.

The J-Link GDB server doesn't currently support zephyr thread awareness.


Update focusable override stuff

No story, just removes some dead code I noticed (focusableNodesOverride is never called as _focusableNodes does the same thing in a much simpler and more generic way directly). Also updates the iron-overlay-behavior dependency to the release with the updates in the pinned commit we're currently using.

+1 -46 aw yiss.
Code LGTM, I shall also test right meow.


Path delimiters are allowed in URL path parameter values

Let's say I have an API interface defined thusly:
public interface IMyApi
{
  [Get("/api/entity/{id}/foo")]
  Task GetEntityFoo(string id);
}

The following test will pass:
public void TestFooThatCausesBadPath()
{
  var fixture = new RequestBuilderImplementation(typeof(IDummyHttpApi));
  var factory = fixture.BuildRequestFactoryForMethod("FetchSomeStuffWithVoidAndQueryAlias");
  var output = factory(new object[] { "6/6" });

  var uri = new Uri(new Uri("http://api"), output.RequestUri);
  Assert.AreEqual("/api/6/6", uri.PathAndQuery);
}

Shouldn't the path delimiter character in the middle of the parameter get URL encoded?
Before I submit a fix, I want to make sure I am not missing something.

Added PR with a new setting, two out of the box implementations, and unit tests.
//cc @bennor @paulcbetts

I think PassthroughPathSegmentTransformer should be the default setting in terms of backwards compatibility.


Fix follow event return data type not unmarshalled properly

If someone click on following button then api returns only Event
object, but since there is target_object has used to unmarshall to
struct. So I add EventFollow which is a mimic of Event.
I've to handle the Event follow so I added it. Please add to upstream.
Thanks

@ChimeraCoder Is it possible to pull this request? I'm having that issues in streaming. Thanks

Thanks for the contribution!


Deploying a Keyvault with Bicep in Azure Devops prevents it from being listed in AZ CLI

Bicep version
0.4.1008
Describe the bug
Deploying a Standard Keyvault in Bicep using Azure Devops. Then trying to reference that keyvault in a later deployment with 'existing' keyword shows the error
'code': 'KeyVaultParameterReferenceNotFound', 'message': "The specified KeyVault '/subscriptions/[subId]/resourceGroups/[rgName]/providers/Microsoft.KeyVault/vaults/[kvName]' could not be found
To Reproduce
Steps to reproduce the behavior:
Create an Azure Devops Pipeline to create a keyvault using Bicep.
resource keyvault 'Microsoft.KeyVault/vaults@2021-06-01-preview' = {
}

Have a second deploying reference that keyvault by using:
resource keyVault 'Microsoft.KeyVault/vaults@2021-06-01-preview' existing = {
  name: kvName
}

During the pipeline, it will error out saying that the keyvault cannot be found, but it exists in Azure.
Additional context
I ran multiple tests here.

I created a keyvault manually in the portal, and used "az keyvault list" to retrieve all keyvaults. The new keyvault was listed.
I deployed via new-azresourcegroupdeployment locally, with just the keyvault. Then used the cli 'az keyvault list' to retrieve all keyvaults. The new keyvault was listed.
Deploying the same script but through Azure Devops (Microsoft hosted Agent, Ubuntu-latest), then running the same command again locally, the new keyvault is NOT listed.

I check resources.azure.com - the keyvault is listed there.
I tried also using powershell:
get-azkeyvault -name 'kvName'
It does not show.
But, if I use get-azresource -resourceId 'kvResourceId' - the key vault shows.
The same issues does not apply when using ARM templates. The keyvault lists through CLI when deploying in ARM.
So this is an issue with Bicep and ADO together.

Sometimes a newly created resource in region A may not have it's info replicated to all regions of Azure, so depending on what region you are querying, it is possible for a new resource not to be returned by a particular client at a particular time. I don't think in this case the issue is specific to any particular tool/client, but rather a general replication delay issue.
Unfortunately, we don't have a great solution to this problem as this behavior is not deterministic.
Can you share the full bicep repro? Want to make sure that at least all the right dependencies are in place.

I will report these findings to Microsoft directly, I'm currently working with a few engineers from MS on another project and ask them to raise this issue internally.

That's perfect - thank you. Since this is not directly related to Bicep, I'm going to close this one, but feel free to keep us updated on where this leads.

@nubgamerz - Did you report this? I've just hit the same issue. Can see the Bicep-generated KeyVault in the portal, but not in az keyvault list :(


npm audit -> Please update dependency

@yuchangyuan
I still use your node red add-on for my Roomba. Thanks for that!
On my last update of node red I did an npm audit and received follow error message:
glob-parent  <5.1.2
Severity: high
glob-parent before 5.1.2 vulnerable to Regular Expression Denial of Service in enclosure regex - https://github.com/advisories/GHSA-ww39-953v-wcq6
No fix available
node_modules/glob-parent
  glob-stream  5.3.0 - 6.1.0
  Depends on vulnerable versions of glob-parent
  node_modules/glob-stream
    help-me  1.0.0 - 1.1.0
    Depends on vulnerable versions of glob-stream
    node_modules/help-me
      mqtt  1.14.1 - 4.2.6
      Depends on vulnerable versions of help-me
      node_modules/mqtt
        dorita980  >=1.0.1
        Depends on vulnerable versions of mqtt
        Depends on vulnerable versions of request
        Depends on vulnerable versions of request-promise
        node_modules/dorita980
          node-red-contrib-roomba980-fw2  *
          Depends on vulnerable versions of dorita980
          node_modules/node-red-contrib-roomba980-fw2

Could you please update you add-on - if possible?

I am quite unfamiliar with npm and javascript. but I think this vulnerable is caused by "dorita980", which I can do nothing with.

do you mean https://github.com/koalazak/dorita980 form @koalazak ?

do you mean https://github.com/koalazak/dorita980 form @koalazak ?

yes


Implement best practices for rbac-bootstrap app

Coming from here.
The goal of this issue is to have the App eventually adhere to standard cloud-native best-practices. The points below are to be considered non-exhaustive. Feel free to add some that make sense and remove some that don't. If this issue does not make sense (e.g. is a duplicate or covers a deprecated app) please close it.
Expected outcome:

[x] the app has properly set PDBs (as percentages)
[x] the app can scale horizontally based on Custom Metrics (if it makes sense)
[x] the app runs with more than 1 replica by default (if it needs HA)
[x] the app does not use emptyDir volumes if not strictly necessary

rbac boostrap app does not have any deployment/pods so none of the points apply.


hic parameter does not allow .merged.fq.gz name patten

Description of the bug
hic parameter does not allow .merged.fq.gz name patten
Command used and terminal output
No response
Relevant files
No response
System information
plant-food-research-open/assemblyqc 2.1

Fix PR https://github.com/Plant-Food-Research-Open/assemblyqc/pull/131

https://github.com/Plant-Food-Research-Open/assemblyqc/releases/tag/2.1.1


Add some non-terrestrial DEM

Hi @MBunel, thank you for the contribution! I hadn't even thought of non-terrestrial DEMs when creating the list, great to have them in!


Saving Chart Image

I have been trying to save the chart image instead of showing it in a new window. Any ideas?

Hi!
To my knowledge this is not possible as the chart is not rendered before it is shown.
I don't know if this is exactly what you're looking for, but the next update will include a screenshot method, which will allow a screenshot of the chart window to be taken after it has been loaded.


Gradle task doesn't work

I'm trying to add Detekt on my project, using gradle. I get the following error whenever I want to run a detekt* task :

Cannot resolve external dependency io.gitlab.arturbosch.detekt:detekt-cli:1.0.0.M13 because no repositories are defined.

Here's my project's build.gradle
buildscript {

    ext {
        kotlin_version = '1.1.3'
        detekt_version = '1.0.0.M13'
    }

    repositories {
        jcenter()
        maven { url "https://jitpack.io" }
        maven { url "https://plugins.gradle.org/m2/" }
        maven { url "http://dl.bintray.com/arturbosch/code-analysis" }
    }
    dependencies {
        classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
        classpath "gradle.plugin.io.gitlab.arturbosch.detekt:detekt-gradle-plugin:$detekt_version"
    }
}

allprojects {
    repositories {
        jcenter()
        mavenCentral()
        maven { url "https://jitpack.io" }
        maven { url "https://plugins.gradle.org/m2/" }
        maven { url "http://dl.bintray.com/arturbosch/code-analysis" }
    }
}

And here's my module's build.gradle
apply plugin: 'java'
apply plugin: 'kotlin'
apply plugin: "io.gitlab.arturbosch.detekt"

dependencies {
    compile "org.jetbrains.kotlin:kotlin-stdlib:$kotlin_version"
}

detekt {
    version = "$detekt_version"

    profile("main") {
        input = "$projectDir/src/main/kotlin" // Which part of your project should be analyzed?
        config = "$projectDir/detekt.yml" // Use $project.projectDir or to navigate inside your project
        output = "$project.rootDir/reports/detekt.xml" // If present, prints all findings into that file.
        outputFormat = "plain" // Can be either 'xml' or 'plain', default is 'xml'
    }

}

sourceCompatibility = "1.7"
targetCompatibility = "1.7"

Is your project Android? You have two build.gradle files ^^
Delete everything detekt related in your buildscript-closure and just add
plugins {
    id "io.gitlab.arturbosch.detekt" version "1.0.0.M13"
}

to your module, where also your code is. Hope that helps

Thanks for youhelp.
Using that syntax does work, but I had to upgrade my gradle to be able to use it.
Shouldn't the plugin work with the earlier gradle syntax ?

The old syntax does also work, maybe not on Android when the config is separated in two build.gradle files. I'm no Android guy and haven't spend time on investigate that, sorry. You should definitely update to Gradle 4.0 just for the performance ;)

You need to move the classpath "gradle.plugin.io.gitlab.arturbosch.detekt:detekt-gradle-plugin:$detekt_version" into the app/build.gradle file.

I will close this one now. If you have more questions just ask :)


This object will not be created in future versions. Please report this to the developer - Details L1 false Details L2 false Details L3 false

Hi there,
I get the following error message. Is the adapter still up-to-date and functional?

host.pi
2021-01-03 17:29:56.211
info
Update repository "Stable (default)" under "http://download.iobroker.net/sources-dist.json"

sma-em.0
2021-01-03 17:28:01.488
warn
(5740) This object will not be created in future versions. Please report this to the developer.

sma-em.0
2021-01-03 17:28:01.487
warn
(5740) Object sma-em.0.1900204704.psurpluscounter is invalid: obj.common.type has an invalid value (state) but has to be one of number, string, boolean, array, object, mixed, file, json

sma-em.0
2021-01-03 17:28:01.477
warn
(5740) This object will not be created in future versions. Please report this to the developer.

sma-em.0
2021-01-03 17:28:01.477
warn
(5740) Object sma-em.0.1900204704.psurplus is invalid: obj.common.type has an invalid value (state) but has to be one of number, string, boolean, array, object, mixed, file, json

sma-em.0
2021-01-03 17:28:01.475
warn
(5740) This object will not be created in future versions. Please report this to the developer.

sma-em.0
2021-01-03 17:28:01.474
warn
(5740) Object sma-em.0.1900204704.pregardcounter is invalid: obj.common.type has an invalid value (state) but has to be one of number, string, boolean, array, object, mixed, file, json

sma-em.0
2021-01-03 17:28:01.473
warn
(5740) This object will not be created in future versions. Please report this to the developer.

sma-em.0
2021-01-03 17:28:01.472
warn
(5740) Object sma-em.0.1900204704.pregard is invalid: obj.common.type has an invalid value (state) but has to be one of number, string, boolean, array, object, mixed, file, json

sma-em.0
2021-01-03 17:28:01.470
warn
(5740) This object will not be created in future versions. Please report this to the developer.

sma-em.0
2021-01-03 17:28:01.469
warn
(5740) Object sma-em.0.1900204704.SMASerial is invalid: obj.common.type has an invalid value (state) but has to be one of number, string, boolean, array, object, mixed, file, json

sma-em.0
2021-01-03 17:28:01.463
warn
(5740) This object will not be created in future versions. Please report this to the developer.

sma-em.0
2021-01-03 17:28:01.462
warn
(5740) Object sma-em.0.1900204704 is invalid: obj.common.name has an invalid type! Expected "string" or "object", received "number"

sma-em.0
2021-01-03 17:28:00.689
info
(5740) Details L1 false Details L2 false Details L3 false

sma-em.0
2021-01-03 17:28:00.688
info
(5740) Listen via UDP on Port 9522 for Multicast IP <IP_ADDRESS>

sma-em.0
2021-01-03 17:28:00.634
info
(5740) starting. Version 0.5.7 in /opt/iobroker/node_modules/iobroker.sma-em, node: v10.23.0, js-controller: 3.1.6

host.pi
2021-01-03 17:27:59.008
info
instance system.adapter.sma-em.0 started with pid 5740

host.pi
2021-01-03 17:27:56.998
info
iobroker exit 0

host.pi
2021-01-03 17:27:55.981
info
iobroker host.pi object system.adapter.sma-em.0 created

`
Pi 4 (4.1.11)

please retest with new version

please retest with new version


Connection params in  User settings

Hi @zabel-xyz ,
"plsql-language.connections": [],
"plsql-language.connection.activeInfos": ""

are automatically added to User settings and are very persistent. :)  I can't delete them as they immediatelly appear back. Is this intentional?

Hello @mickeypearce,
No, you found a little bug...
If there is no connections settings (a new feature that I'm working on), there is no reason to appear back like that !. I'll fix it...

Fixed in 1.4.1

@zabel-xyz, it happens again in the latest version (1.6.0)

I'll see and fix it...

Fix in version 1.6.1


FOpts Bug

This will probably be solved with your current refactor, but I came across a bug today that can be exposed with the following unit test:
#[test]
fn test_mac_command_in_downlink() {
    let raw_data = [0x60, 0x5F, 0x3B, 0xD7, 0x4E, 0xA, 0x0, 0x0, 0x3, 0x0, 0x0,
    0x0, 0x70, 0x3, 0x0, 0xFF, 0x0, 0x30, 0xCD, 0xDB, 0x22, 0xEE];
    let packet = GenericPhyPayload::new(raw_data).unwrap();

    assert_eq!(packet.mhdr().mtype(), MType::UnconfirmedDataDown);

    match packet.mac_payload() {
        MacPayload::Data(data) => {
            let fhdr = data.fhdr();
            let fopts = fhdr.fopts().unwrap();

            // there should only be one fopts
            assert_eq!(fopts.len(), 1);

            match fopts[0] {
                MacCommand::LinkADRReq(_) => (),
                _ => assert!(false),
            }
        }
        _ => {
            assert!(false)
        }
    }
}

Instead of parsing as LinkADRReq, the MacCommand is parsed as LinkADRAns. This tells me that the MAC Command parsing isn't distinguishing behind a downlink and uplink packet properly. As you can see with the first assert, it is identified as a UnconfirmedDataDown yet LinkADRAns is a uplink MAC.

Hi,
Thank you very much for finding and reporting this issue! Indeed, during my refactoring I noticed it as well and it was fixed in the refactored version (now available here). I have the bug fixed also in branch v0.4-support and I intend to release the fix shortly. Before I do that, I just wanted to confirm with you that while the test exposes a real issue, it appears that there is a slight error in the test. Judging by the 6th byte of the payload 0xA there are 10 bytes of mac commands (FCtrl parsing) and ther are two LinkADRReq being sent - 2 LinkADRReq commands and two other bytes that are not mapped to mac commands in v1.0.3 of the LoRaWAN spec. As you correctly recognized  the test was confused about uplink vs downlink. It interpreted only one byte of mac command as payload of the supposed LinkADRAns and the next mac command id was 0 for the parser, which was not recognized and therefore the mac command processing stopped.
Do you agree about this correction of the test?

I do agree - thanks for checking!


Test SVM gap - test clEnqueueSVMMemcpy in case of host memory allocation

The test test_enqueue_api checks if API function clEnqueueSVMMemcpy works when both (source and destination) memory pointers are SVM allocations. We should check also case when one of the allocation (source or destination) is a host memory. The discussion about this topic inside the Khronos group was here
My proposal it to extend the existing test case equeue_api to test host memory as a source or destination memory.

Fixed on all relevant branches. Closing.


Give the option to set Date and Time in custom format

It would be cool, if you give the option to set Date and Time in custom format.
Like in PHP.
https://www.php.net/manual/de/function.date.php

This issue has been open for a while, and unfortunately I think it would add scope and maintenance to the project that I'm not interested in taking on. In order to clean up some older issues, I'm going to close this with the wontfix label, but anyone is still welcome to fork the project and implement it if desired!


Bluetooth printer just prints once, stops printing, and then prints duplicates

Prerequisites

[X ] I am running the latest version
[X ] I checked the documentation and found no answer
[X ] I checked to make sure that this issue has not already been filed

Expected Behavior
Print each time the button is pressed
Current Behavior
The first time app sends print command, it prints. The second time (without any change), doesn't do anything. The next time, it prints duplicates (from the second and third time).
Steps to Reproduce

Just call the method multiple times.

Context

Library version: 1.1.0
Platform: Android.

As you can see, after scanning and connecting to the device, the print command is sent. After printing, I cancel the connection and then destroy the manager object in order to restart the object and be able to print again.
But this doesn't happen until the third time, when it prints duplicates. It does not show errors.
Maybe I got something wrong and I can't see it. Some help will be appreciated.
export default class BluetoothSerial extends Component {
    constructor() {
        super()
        this.state = {info: "", values: {}}
    }

    info(message) {
        this.setState({info: message})
    }

   error(message) {
        this.setState({info: "ERROR: " + message})
    }

async scanAndConnect() {
        this.manager = new BleManager()
        this.manager.startDeviceScan(["000018f0-0000-1000-8000-00805f9b34fb"],
            null, async (error, device) => {
            this.info("Scanning...");
            console.log(device.name); //printer name

            if (error) {
                this.error(error.message);
                return
            }

            if (device.name === 'RG-MDP58B') {
                this.info("Connected to printer");
                this.manager.stopDeviceScan();

                await this.manager.connectToDevice(device.id)
                    .then(async (device) => {
                        await this.manager.discoverAllServicesAndCharacteristicsForDevice(device.id)
                        console.log('device id ', device.id)

                        await this.manager.writeCharacteristicWithoutResponseForDevice(
                             device.id,
                            "000018f0-0000-1000-8000-00805f9b34fb",
                            '00002af1-0000-1000-8000-00805f9b34fb',
                            'cHJpbnRlciBjb25uZWN0ZWQ=')
                            .then((characteristic) => {
                                console.log('print value', characteristic.value)
                                this.info(characteristic.value);
                                this.manager.cancelDeviceConnection(device.id).then( () => {
                                    this.manager.destroy()
                                });
                            }).catch(err => console.log(err))
                    })
                    .catch((error) => {
                        this.error(error.message)
                    })
            }
        });
    }

    render() {
        return (
            <View>
                <Button title="Print" onPress={() => this.scanAndConnect()} />
                <Text>{this.state.info}</Text>
            </View>
        )
    }
}

I feel so dumb, found the problem. It is not a problem of the library itself, It's the printer buffer.
I had to separate the code into multiple writeCharacteristicWithResponseForService with limited characters and now it works like a charm.

@pdlm95 hello brother..i have also a bluetooth printer i need to print Image how its works.i can print text or letters successfully.please help me and waiting your response

@FazilMuhammed I can't really tell how, never printed an image. You should check your printer requirements for images, maybe all you have to do its print a base64

@pdlm95  i converted the images into base64 while printing something wrong letters coming..

@pdlm95 if i may ask, how did you get your printers UUID? I'm trying to connect to a bluetooth label printer but I only have its BT Mac. Thanks.

@devnullpointer you should first try looking for information in the manufacturer's manual. If there's nothing, you could try installing an app that tells you the characteristics of the device. You could check nRF connect

@pdlm95 can u provide the example for print text? how u convert printer command to base64?

@mayniii This is how I made it. I provide the text that I want to print in an array, where every line I wish to print its an array item.
import { Buffer } from 'buffer';

const SERVICE_UUID = '000018f0-0000-1000-8000-00805f9b34fb';    //primary service (printers)
const CHAR_UUID = '00002af1-0000-1000-8000-00805f9b34fb';       //characteristic (write)

async print(text: array){
    await this.scanAndConnect().then(async (res: any) => {
            for (let item of text) {
                let encryptedCredentials = new Buffer(item).toString("base64");

                promises.push(res.Device.writeCharacteristicWithResponseForService(
                    SERVICE_UUID, CHAR_UUID, encryptedCredentials));
            }
            await Promise.all(promises).then(() => {
                this.manager.destroy()
            })
        }).catch(err => {return});
}

@pdlm95 can you guide me about receipt printing?


SIGABRT when ios app running with image_picker

Steps to Reproduce

Run in XCode on this project -> https://github.com/guilhermeagostinelli/camera-test
Press floating button

This project is not mine but gives the same error
Expected results: app opens gallery
Actual results: SIGABRT in native code

Code sample

class _MyHomePageState extends State<MyHomePage> {
  File _imageFile;

  Future<void> _pickImage() async {
    try {
      PermissionStatus status = await Permission.camera.status;
      if (status.isPermanentlyDenied) return openAppSettings();
      status = await Permission.camera.request();
      if (status.isDenied) return;
      final ImagePicker picker = ImagePicker();
      final PickedFile selected = await picker.getImage(
        source: ImageSource.camera,
      );
      if (selected != null) setState(() => _imageFile = File(selected.path));
    } catch (e) {
      print(e);
    }
  }

  @override
  Widget build(BuildContext context) {
    return Scaffold(
      appBar: AppBar(
        title: Text(widget.title),
      ),
      body: Center(
        child: _imageFile == null
            ? Text('No image selected.')
            : Image.file(_imageFile),
      ),
      floatingActionButton: FloatingActionButton(
        onPressed: _pickImage,
        tooltip: 'Pick an image',
        child: Icon(Icons.add_a_photo),
      ),
    );
  }
}

Logs

[        ] An Observatory debugger and profiler on iPhone 14 Pro is available at: http://<IP_ADDRESS>:51009/GVSJmNmoGFY=/
[ +929 ms] The Flutter DevTools debugger and profiler on iPhone 14 Pro is available at: http://<IP_ADDRESS>:9100?uri=http://<IP_ADDRESS>:51009/GVSJmNmoGFY=/
[+1947 ms] Service protocol connection closed.
[        ] Lost connection to device.
[  +16 ms] DevFS: Deleting filesystem on the device
(file:///Users/user225687/Library/Developer/CoreSimulator/Devices/B1A9D90C-467D-4ED2-A7A9-EC6A75800F6F/data/Containers/Data/Application/B64F252B-5B3B-4957-A505-9
FF97603EBBB/tmp/camera_testUnDWFm/camera_test/)
[ +253 ms] Ignored error while cleaning up DevFS: TimeoutException after 0:00:00.250000: Future not completed
[   +7 ms] "flutter run" took 46,008ms.
[ +256 ms] ensureAnalyticsSent: 252ms
[        ] Running 1 shutdown hook
[        ] Shutdown hooks complete
[        ] exiting with code 0

Flutter Analyze
FF229:ios user225687$ flutter analyze
Analyzing ios...
No issues found! (ran in 0.6s)

[✓] Flutter (Channel stable, 3.7.6, on macOS 12.6 21G115 darwin-arm64, locale en-US)
    • Flutter version 3.7.6 on channel stable at /Users/user225687/Desktop/flutter
    • Upstream repository https://github.com/flutter/flutter.git
    • Framework revision 12cb4eb7a0 (7 days ago), 2023-03-01 10:29:26 -0800
    • Engine revision ada363ee93
    • Dart version 2.19.3
    • DevTools version 2.20.1

[!] Android toolchain - develop for Android devices (Android SDK version 33.0.0)
    • Android SDK at /Users/user225687/Library/Android/sdk
    ✗ cmdline-tools component is missing
      Run `path/to/sdkmanager --install "cmdline-tools;latest"`
      See https://developer.android.com/studio/command-line for more details.
    ✗ Android license status unknown.
      Run `flutter doctor --android-licenses` to accept the SDK licenses.
      See https://flutter.dev/docs/get-started/install/macos#android-setup for more details.

[✓] Xcode - develop for iOS and macOS (Xcode 14.2)
    • Xcode at /Applications/Xcode.app/Contents/Developer
    • Build 14C18
    • CocoaPods version 1.12.0

[✓] Chrome - develop for the web
    • Chrome at /Applications/Google Chrome.app/Contents/MacOS/Google Chrome

[✓] Android Studio (version 2022.1)
    • Android Studio at /Applications/Android Studio.app/Contents
    • Flutter plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/9212-flutter
    • Dart plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/6351-dart
    • Java version OpenJDK Runtime Environment (build 11.0.15+0-b2043.56-8887301)

[✓] IntelliJ IDEA Ultimate Edition (version 2022.2)
    • IntelliJ at /Applications/IntelliJ IDEA.app
    • Flutter plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/9212-flutter
    • Dart plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/6351-dart

[✓] VS Code (version 1.75.1)
    • VS Code at /Applications/Visual Studio Code.app/Contents
    • Flutter extension can be installed from:
      🔨 https://marketplace.visualstudio.com/items?itemName=Dart-Code.flutter

[✓] Connected device (3 available)
    • iPhone 14 Pro (mobile) • B1A9D90C-467D-4ED2-A7A9-EC6A75800F6F • ios            • com.apple.CoreSimulator.SimRuntime.iOS-16-0 (simulator)
    • macOS (desktop)        • macos                                • darwin-arm64   • macOS 12.6 21G115 darwin-arm64
    • Chrome (web)           • chrome                               • web-javascript • Google Chrome 110.0.5481.177

HTTP Host availability check is taking a long time...[✓] HTTP Host Availability
    • All required HTTP hosts are available

! Doctor found issues in 1 category.

Info.plist values
	<key>NSCameraUsageDescription</key>
	<string>Create photos for emojies</string>
	<key>NSMicrophoneUsageDescription</key>
	<string>your usage description here</string>

  	<key>NSPhotoLibraryUsageDescription</key>
	<string>Pick photos for emojies.</string>

	<key>NSPhotoLibraryAddUsageDescription</key>
	<string>Pick photos for emojies.</string>

	<key>ITSAppUsesNonExemptEncryption</key>
	<false/>

I work with a remote mac with simulator. Аll I need is to build the application and make sure everything works well

When running the above project, it's crashed and I saw this error:
This app has crashed because it attempted to access privacy-sensitive data without a usage description. The app's Info.plist must contain an NSCameraUsageDescription key with a string value explaining to the user how the app uses this data.

But after adding NSCameraUsageDescription and some others as your snippet of Info.plist above, it works well from my end.

Demo video
https://user-images.githubusercontent.com/104349824/223920950-c430cfc1-e993-4a7f-82e2-41f7017711a3.MP4

Can you confirm you have added Info.plist values as above? (Can you share a forked sample project from above with your changes?)


Optional number formatting function

Hello,
thanks for the great package. I needed to use this to format currency value hence with a fixed number of decimals.
I added a numberFormatter optional parameter which defaults to .toString hence preserving backwards compatibility.
Also added a 3rd example with .toFixed(6).

npm run lint: OK
npm run format: OK

Thanks

Also added ability for initialNumber to be zero

Hi,
thanks for your pull request.
In my opinion, formatting the number should better be handled outside of the numberFlip class before it is passed into the setNumber function. Leaving that responsibility to the consumer of the package. Therefore I decided not to merge the changes.
But again, thanks for your pull request, this has been the first one I received.
Best regards
Lars

Understand but the problem is that formatting cannot be done outside as value types are number and not string thus losing any formatting that would have been done before.

You are right, I did not think about that.

I just updated the package on npm.
Best regards
Lars


Added extra newline after config_version=3 hint as per #9818

Hooray, something I can fix!

In the end there was even more bugs that the typo in "featores", and the newline should come after custom_features if defined, so I redid the fix myself as e4fe194. Thanks for the pointer to the right location though :)


MicroProfile 7.0 Compatible annoucement

This will need a card:

message for release
image
Content for website

By message do you mean the theme?

What kind of content would be needed for the website outside the blog? Is there anything I can assist in that regards?

@pedanticdev,
Are you interested in becoming an admin to MP Hootsuite?  Do you know how to use the tool?  If so, please open a new ticket and assign it to me. title [Marketing INFRA tool access] Hootsuite - Payara Admin Access.   No pressure.  Helping with releases requires access to social media. Please consider it carefully and ready the wiki on social media access first. https://github.com/eclipse/microprofile-marketing/wiki/Code-of-Conduct-Standards-for-Social-Media-Contribution

I'd love to, but out of the abundance of caution, I'd rather we Ryan run things from Hootsuite for this release, after which I can request for the access, given the release is imminent. I can always help out on the tickets here and then Ryan can copy to HS.

I'd love to, but out of the abundance of caution, I'd rather we Ryan run things from Hootsuite for this release, after which I can request for the access, given the release is imminent. I can always help out on the tickets here and then Ryan can copy to HS.

Very sensible response, Luqman.
Let's calmly onboard you into Hootsuite after the MP 7 release. When you are ready, please submit the ticket, and I will provide access. Ryan will explain how MP Hootsuite navigation works.

Sure will.

done


Autodetect models

Is your feature request related to a problem? Please describe.
Currently the user must configure each module manually
Describe the solution you'd like
In some cases, like transformers or exllama2 models it would be possible to infer configuration from the model metadata, and automatically configure the model as LocalAI would expect. For GGUF we might want to go with something more simple by trying to read some part of the file (like eos token, and such) and try to figure out a matching template.
Of course, users still would be able to specify configuration manually, but at least we can provide a "soft" configuration so models can be just dropped by in the models folder and "should just work"
Describe alternatives you've considered
N/A
Additional context

For GGUF files this mechanism is already present now: https://github.com/mudler/LocalAI/blob/master/core/config/guesser.go we need to extend the same logics to the other backends


[Spike] Investigate merging 2 repos

Outcome:

options to merge 2 repos OSS and Enterprise described on high level
approx. effort for each option is defined

Timebox:

3 days

Also tackle #3003 in tandem with this spike.

licensing under entitlements

@jpellizzari adding notes out of scoping conversation for q2 planning

@LappleApple just mentioned in our product engineering roundtable that we could leverage her opensource strategy experience  ... i thought it would be useful here!

Heya, any news on this front? Do we have a timeline?

@LappleApple No timeline, still doing fact-finding on the "why/if" we should do this.

Things we will need to think about:

How do releases work?
How does installation work?
How do we "move" things over gradually?
How do we check entitlements securely?

On combining the UIs:
My recommended design would be to have multiple entry points, one for OSS, one for EE. It would look something like this:
https://github.com/jpellizzari/wego-repo-example/blob/d2a385572bd76bfef0fb8317aa1c0892a010c39e/ui/Core.tsx#L10
https://github.com/jpellizzari/wego-repo-example/blob/d2a385572bd76bfef0fb8317aa1c0892a010c39e/ui/Enterprise.tsx#L7
This would allow us to easily control which features show up. The backend logic would also be simple, as the backend server (``nginx) would just need to decide which .html` file to load. This would probably be done with different docker images at build time.


update-pr-from-base-branch shouldn't appear when there's a "Resolve conflicts" button

"Resolve conflicts" is the native button to update the branch, so update-pr-from-base-branch should not run in that case.
Example URL: https://github.com/sindresorhus/refined-github/pull/3855

Actually, I think our "Resolve conflicts" button only appears on draft PRs because GitHub didn't show the native one.
Now they do, so the our "Resolve conflicts" button should probably be dropped completely.

Actually, I think our "Resolve conflicts" button only appears on draft PRs because GitHub didn't show the native one.
Now they do, so the our "Resolve conflicts" button should probably be dropped completely.


Update repo for v0.0.10 release

Roll over the changelog
Updating chart repo index

Self-merging to ensure the chart index is available for immediate use.