Fix: Infinite loader on login

Details

After login,
We call many APIs asynchronously. but it is possible that users can logout before one of these requests is about to make. In this case, Queue will pause as Auth token is not present.
I checked that we pause it https://github.com/Expensify/App/blob/e511b1f70082ad965b5dc85117d18f4dce54287d/src/libs/API.js#L62 here.
Now when you enter the password and send that request, the First auth token will be received as this overrides the paused queue. but I think the second call to createTemporaryLogin is not going through. Only after this call is completed loader is stopped and navigation happens.
In Code, the queue is resumed when re-authentication happens but we don't do this on sign up. So if we call Network.unpauseRequestQueue();  in https://github.com/Expensify/App/blob/e511b1f70082ad965b5dc85117d18f4dce54287d/src/libs/actions/Session.js#L207-L225. It should fix the issue. Also, it does not affect the app logic as Queue should be active after Auth token is received. Even if the queue was already active. resuming it again does hot have any effect.
There was one similar issue like this where the user was blocked on the first stage where the user enters the email which I fixed by forcefully sending that request even if the queue is paused as that did not need auth token but now this issue is happening on the password step which does require Auth token.
Fixed Issues

$ Fixes #4221
Tests | QA Steps

Open the Web app on Browser 1 and browser 2.
Login with USER A on both browsers.
Close the Browser 1 's tab which has the app opened. Don't close the browser.
Go to browser 2 and send 4-5 messages in a row to the USER B.
Go to browser 1 and Press ctrl+shit+T to restore the tab. As soon as you see the App window. Quickly log out before data sync is complete. You should be logging out the USER A.
Now don't reload, Login with User B whom you sent the messages from Browser 2.
You should be logged into the app instead of seeing an infinite loader on the Password form.

Tested On

[x] Web
[x] Mobile Web
[x] Desktop
[x] iOS
[x] Android

Screenshots

I am not able to reproduce the breaking behavior consistently. If someone can help me do that I will try to show that being fixed here.
Web

Mobile Web

Desktop

iOS

Android

I'm still able to reproduce the issue while testing this branch on web.

Thanks, @roryabraham for the feedback. I will try to reproduce this and update it here.

I found out what is happening. Even I unpause the queue. Old requests that are being retried will pause it again because those requests are checking the old authToken.
https://github.com/Expensify/App/blob/c2d21c03c386be13b990bd9a816e29c42010df84/src/libs/API.js#L54
Here we check auth token from request data.
The token is only set after call to createTemporaryLogin https://github.com/Expensify/App/blob/36b86e91d5caad991c4a461eb039b4e1f8637b79/src/libs/actions/Session.js#L172
Thus I checked we can force this request as well. It's safe to use forceNetworkRequest for this call as we pass the token manually to the API.
After that unpaused the queue when the token is set so that other app requests can continue to work.
Pass this check https://github.com/Expensify/App/blob/c2d21c03c386be13b990bd9a816e29c42010df84/src/libs/Network.js#L133
We can update this https://github.com/Expensify/App/blob/36b86e91d5caad991c4a461eb039b4e1f8637b79/src/libs/API.js#L20 to unpause the queue when the token is set.
or We unpause the queue after this https://github.com/Expensify/App/blob/36b86e91d5caad991c4a461eb039b4e1f8637b79/src/libs/actions/Session.js#L172.
As Token is set by now. But I have little doubt that should I wait for Onyx.merge promise to finish.

I have found a way to reproduce this reliably and I will post both videos here (fix and issue).

ISSUE
https://user-images.githubusercontent.com/24370807/128273212-de608a7f-de66-4b45-bd8c-d635eef0e0b0.mp4
FIX
https://user-images.githubusercontent.com/24370807/128273217-100e3290-91de-4a58-82a4-1d02666fb2fb.mp4|
Seems like the video got corrupted.
Updating the correct reprodcution steps on the Test; :arrow_up:

@AndrewGable All yours.

:hand: This PR was not deployed to staging yet because QA is ongoing. It will be automatically deployed to staging after the next production release.

CP'ing this so it can be re-tested on the deploy blocker checklist

🚀 Deployed to staging         in version: 1.0.82-5🚀

platform
result

🤖 android 🤖
success ✅

🖥 desktop 🖥
success ✅

🍎 iOS 🍎
success ✅

🕸 web 🕸
success ✅

🚀 Deployed to production         in version: 1.0.82-7🚀

platform
result

🤖 android 🤖
success ✅

🖥 desktop 🖥
success ✅

🍎 iOS 🍎
success ✅

🕸 web 🕸
success ✅

🚀 Deployed to staging         in version: 1.0.82-8🚀

platform
result

🤖 android 🤖
success ✅

🖥 desktop 🖥
success ✅

🍎 iOS 🍎
success ✅

🕸 web 🕸
success ✅

🚀 Deployed to production by @francoisl in version: 1.0.83-1 🚀

platform
result

🤖 android 🤖
success ✅

🖥 desktop 🖥
failure ❌

🍎 iOS 🍎
success ✅

🕸 web 🕸
success ✅


onComment doesn't seem to work

Commit in yarn.lock: 7c5e34fce297f152a6f7853dcc9fe2f9e1b36ab8
Code
const cherow = require('cherow');

const testScript = `
/* Test comment */
// Test module
module.exports = {
    // Test comment b
    b: true,
    // Test comment c
    c : 'constant',
    // Test comment num
    num: 1234,
    // Test comment obj
    obj: {first: 1, second: 2},
};
`;

let comments = [];

cherow.parse(testScript, {
    onComment: comments
});

cherow.parse(testScript, {
    onComment: comment => {
        console.log('comment:', comment);
    }
});

console.log('comments:', comments);

Expected behavior:

comments to contain an entry for each comment
log output for every comment

Actual behavior:

comments is empty
no log output except the final comments: []

Only works with a callback function atm. If you are using master branch?
@fkleuver Could you look into this?

@KFlash cool, that works for me. Thanks!


DocsArchive-<IP_ADDRESS>Auto archive content

Please don't merge this PR until target archive repo PR https://github.com/OPS-E2E-PPE/docs-archive-test-target_d8576607-4a16-4b59-bc5d-a311da79d632/pull/1 is merged into live branch.
Auto archive content to https://github.com/huangmin-ms/docs-archive-test-target_d8576607-4a16-4b59-bc5d-a311da79d632.git

Docs Build status updates of commit e99c539:
:x: Validation status: errors
Please follow instructions here which may help to resolve issue.

File
Status
Preview URL
Details

:x:Error

Details

[Error-UserAccountBuildPermissionInsufficientError] Owner v-alji no longer has Read permission of the repository https://github.com/huangmin-ms/docs-archive-test-source. It might be due to recent GitHub changes on SSO. Please ask the owner v-alji to logon to Docs Portal https://ops.microsoft.com once again. If it is not the case, please ask anyone of Admin permission of the repo to assign a new owner via Docs Portal https://ops.microsoft.com

For more details, please refer to the build report.
If you see build warnings/errors with permission issues, it might be due to single sign-on (SSO) enabled on Microsoft's GitHub organizations. Please follow instructions here to re-authorize your GitHub account to Docs Build.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
Note: Your PR may contain errors or warnings unrelated to the files you changed. This happens when external dependencies like GitHub alias, Microsoft alias, cross repo links are updated. Please use these instructions to resolve them.
For any questions, please:Try searching in the Docs contributor and Admin GuideSee the frequently asked questionsPost your question in the Docs support channel

Docs Build status updates of commit e99c539:
:x: Validation status: errors
Please follow instructions here which may help to resolve issue.

File
Status
Preview URL
Details

:x:Error

Details

[Error-UserAccountBuildPermissionInsufficientError] Owner v-alji no longer has Read permission of the repository https://github.com/huangmin-ms/docs-archive-test-source. It might be due to recent GitHub changes on SSO. Please ask the owner v-alji to logon to Docs Portal https://ops.microsoft.com once again. If it is not the case, please ask anyone of Admin permission of the repo to assign a new owner via Docs Portal https://ops.microsoft.com

For more details, please refer to the build report.
If you see build warnings/errors with permission issues, it might be due to single sign-on (SSO) enabled on Microsoft's GitHub organizations. Please follow instructions here to re-authorize your GitHub account to Docs Build.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
Note: Your PR may contain errors or warnings unrelated to the files you changed. This happens when external dependencies like GitHub alias, Microsoft alias, cross repo links are updated. Please use these instructions to resolve them.
For any questions, please:Try searching in the Docs contributor and Admin GuideSee the frequently asked questionsPost your question in the Docs support channel


"Can't connect to MySQL server on 'localhost' ([Errno 2] No such file or directory)"

This issue has been highlighted twice before, however is still present with the current tutorial and codebase. The application works fine in localhost through the proxy, however deploying to an app engine causes the error.
Error returned: (pymysql.err.OperationalError) (2003, "Can't connect to MySQL server on 'localhost' ([Errno 2] No such file or directory)")
This was highlighted #126 and #92 . Both issues are closed, however the stock tutorial is still yielding this error.
I am encountering the same error with the actual application that I would like to deploy (not the tutorial). Both work in localhost mode, and I have tried starting brand new projects, etc.

@andrewsg can you take a look at this?

I've repoened the internal issue tracking this intermittent failure. @mikeklinker129 as the problem appears to come and go, can you please try again and let me know if the problem persists today?

If it does persist, in order to rule out a configuration issue, could you please post or email me your app.yaml and config.py files with the project ID, password and other sensitive information redacted? As an example, see the redacted config.py in this comment: https://github.com/GoogleCloudPlatform/getting-started-python/issues/92#issuecomment-250895875

Thanks @andrewsg-- I think the problem comes and goes... I was able to deploy to another project, however last time I tried to start from scratch and a new project, it kept giving me this error. I will try to set up a new project, and get back to you whether or not I am still seeing the error.

That indeed sounds like the other reports of intermittent issues. Thanks for your report, I'll keep track of the bug internally as well.

I had the same error and then I found this log entry in my application logs:

googleapi: Error 403: Access Not Configured. Cloud SQL Administration API has not been used in project [...] before or it is disabled. Enable it by visiting https://console.developers.google.com/apis/api/sqladmin.googleapis.com/overview?project=[...] then retry. If you enabled this API recently, wait a few minutes for the action to propagate to our systems and retry., accessNotConfigured

After enabling the Cloud SQL Admin API and redeploying the application the SQL connection did work. I don't know if that was a coincidence.

MySQL its not running on localhost, use

mysql -h ip_address -u user

I have the same issue in the tutorial. (pymysql.err.OperationalError) (2003, "Can't connect to MySQL server on 'localhost' ([Errno 2] No such file or directory)" Connection fails when deployed to AppEngine. The issue though persists. I have tried more than 5 times for 3 days

@JungjaeKimB thanks, I've updated my comment
@ssenchenko did you follow my suggestion above?

@larsblumberg I did try enabling Amin API but it didn’t help. Finally, I managed to get it running on GAE. After I created the Cloud SQL instance in the same region as my App Engine, socket file appeared in place. You guys may check if a region can cause this issue.

@andrewsg I believe you can resolve this issue based on @larsblumberg's suggestion above.
On the Overview page, update 'Before you begin'.1.b to mention enabling Google Cloud SQL API, currently only Google Cloud SQL is enabled by default when the project is created. This solved for problem for me, after following all other instructions exactly in the tutorial.

@andrewsg I am currently trying to deploy my application to a new project and seeing this error again. Cloud SQL API is enabled, made the Cloud SQL instance in the same region as the app engine.

I was facing this issue and what got me out of it was adding to app.yaml:
beta_settings:   cloud_sql_instances: <cloud_sql_instance_name>:us-central1:<db_name>,<cloud_sql_instance_name>:us-central1:<db_name>,<cloud_sql_instance_name>:us-central1:<db_name>
You can do it for several databases.

I am having the same issue, although I have already enabled the SQL admin API.

@larsblumberg I did try enabling Amin API but it didn’t help. Finally, I managed to get it running on GAE. After I created the Cloud SQL instance in the same region as my App Engine, socket file appeared in place. You guys may check if a region can cause this issue.

Let me check.

@larsblumberg Thank you very much for your post! I was having this SQL connection issue and after extensive troubleshooting I found the issue was caused because the Cloud SQL instance was deployed to region = "west1" and the Cloud App Engine was deployed to region = "west2"
To resolve the issue I just created a new sql database instance and database in the "west2" and updated the "config.py" & "app.yaml" with the updated database information!
Thanks again!

@larsblumberg I did try enabling Amin API but it didn’t help. Finally, I managed to get it running on GAE. After I created the Cloud SQL instance in the same region as my App Engine, socket file appeared in place. You guys may check if a region can cause this issue.

@thomasburling any workaround if app engine is in a location id where cloudsql doesn't support.

Hey folks,
If you are having trouble connecting to Cloud SQL from AppEngine, take a look at the "Connecting from AppEngine" documentation.
Specifically, if you are having issues with 'Can't connect to MySQL server on 'localhost' for GAE-Standard', make sure you are connecting via the unix socket provided at /cloudsql/<INSTANCE_CONNECTION_NAME> (AppEngine Standard doesn't provide a TCP connection option)

FYI to anyone searching, I was seeing this error from not updating my app.yaml, under beta_settings: cloud_sql_instances.

I encountered these errors today. I double checked the following and still continue to encounter the problem:

Updated cloud_sql_instances under beta_settings
Updated APIs to grant permissions

Specifically, following the instructions for python-docs-samples/app-engine/flexible/cloudsql

HI,
Were you able to resolve your issue @altaisukh ?
I am encountering this today, and I am out of my wit - trying to reproduce every steps/instructions.
Thanks!

I could not resolve it in the first project that experienced the symptoms.
Instead, I created a new project and then it worked. I read other people
did this as well.
On Sun, Nov 25, 2018 at 9:46 AM 42force<EMAIL_ADDRESS>wrote:

HI,
Were you able to resolve your issue @altaisukh
https://github.com/altaisukh ?
I am encountering this today, and I am out of my wit - trying to reproduce
every steps/instructions.
Thanks!
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/GoogleCloudPlatform/getting-started-python/issues/129#issuecomment-441427934,
or mute the thread
https://github.com/notifications/unsubscribe-auth/ABbdvQmcHRXvj95S4uWP2GWQr-wRg_52ks5uymcLgaJpZM4OIl5d
.

--
Cheers,
Jess Lampe

I was able to solve my problem.  I did not have the Google+ API enabled.
Make sure that you have the Google cloud proxy running and that all of the
APIs that you need are enabled:
Cloud SQL, Cloud Datastore, Cloud Pub/Sub, Cloud Storage JSON, Stackdriver
Logging, and Google+
A guy in office had a similar issue because he forgot to enable a one of
the APIs (Cloud SQL I think) so I would say checking that the APIs are
enabled is a good place to start.
On Sun, Nov 25, 2018 at 2:46 AM 42force<EMAIL_ADDRESS>wrote:

HI,
Were you able to resolve your issue @altaisukh
https://github.com/altaisukh ?
I am encountering this today, and I am out of my wit - trying to reproduce
every steps/instructions.
Thanks!
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/GoogleCloudPlatform/getting-started-python/issues/129#issuecomment-441427934,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AkWtFJInR2BJdJmoHeDLeTtN3HSPO5-wks5uymcLgaJpZM4OIl5d
.

Hmm, I encountered the same error when I first deployed. My app.yaml and config.py files were in order. However, I did notice the following things:

I hadn't enabled the Cloud SQL Admin API (something that was mentioned above, and from looking at the logs it seemed that API needed to be enabled, even though it's not listed in the tutorial)
When I deployed, my local Python Virtual Environment was not activated (I'm not sure if this would make a difference though)

So I first activated the Cloud SQL Admin API, and tried accessing the application again from the cloud url. It returned the same error.
Then, I activated my Python Virtual Environment with all the dependencies, and redeployed using the gcloud app deploy command, while my virtual environment was activated. When I tried accessing the app from the cloud this time, it worked.
So it seems hard to tell what made it work. Maybe I just had to enable the Cloud SQL Admin API (but then again, when I enabled it without redeploying, it didn't work). Maybe I was supposed to have my Python Virtual Environment activated during deployment (I'm still a beginner at using GCP, so I'm not sure how it handles dependencies and libraries, so I'm not really sure if this would make a difference). Or maybe it just wasn't working for some unknown reason, and redeploying just did the trick.

For my testing:  1) Cloud SQL Admin API must be enabled  2) The App Engine and SQL Instance must be in the same Region.

Enable Cloud SQL Admin API (not just Cloud SQL) and redeploy - not necessary to deploy from virtuel env.
Sql proxy doesn't have to be running - as you would expect that is just for local connection

Hey folks,
Just to reiterate, this is a common issue caused when users miss a step in the instructions. I encourage you to take a look at the "Connect from App Engine page" and make sure to note the differences between Standard/Flexible runtimes:

Standard runtimes provide a unix socket at /cloudsql/<INSTANCE_CONNECTION_NAME>. This uses the App Engine standard service account to authenticate to the project the Cloud SQL instance is in, so make sure it has the correct permissions.
Flexible run-times require an update to the app.yaml, and support both TCP and Unix Sockets. There is an example here.

@kurtisvg
Thanks for pointing this out. Would you mind clarifying something further?
In a standard python environment I use the following to connect to the db:
conn = pymysql.connect(user=os.environ['DB_USER'],                            password=os.environ['DB_PASS'],                            unix_socket='/cloudsql/{}'.format(os.environ['DB_CONN']),                            db=os.environ['DB_NAME'],                            cursorclass=pymysql.cursors.DictCursor,                            autocommit=True)
after setting environment variables using configs.
In the flex environment, I understand that I need to add something like:
beta_settings:   cloud_sql_instances: <INSTANCE_CONNECTION_NAME>
What's confusing me is, what exactly is the relationship between <INSTANCE_CONNECTION_NAME> and how I'm constructing the socket path above? Would I substitute whatever I have stored in DB_CONN (cf above python code) for <INSTANCE_CONNECTION_NAME> (cf above app.yaml beta_settings ...)?

@tc64 - This example here shows how to pass the INSTANCE_CONNECTION_NAME in as an environment variable and use it in the unix_socket path.

I'm having this same issue.  It WAS working a couple days ago, and then stopped and I've been pulling my hair out trying to figure it out... only to realize:  OperationalError(2003, "Can't connect to MySQL server on 'localhost' ([Errno 2] No such file or directory)"))"    UGH.  Definitely not closed.

I experienced this issue when running a flask app locally against a remote CloudSQL db instance (using cloud_sql_proxy). My SQLALCHEMY_DATABASE_URI Connection looked like:
mysql+pymysql://{<user-name}:{<user-password>}@{<db-hostname>}/{<database-name>}?unix_socket=/cloudsql/{<connection-name>}
Turns out connections to CloudSQL can only use either TCP or unix socket, not both. Apparently the proxy uses TCP connection
Solution: remove "unix_socket" param when running locally against the live URI so it looks like this:
mysql+pymysql://{<user-name}:{<user-password>}@{<db-hostname>}/{<database-name>}

@kiptoomm To clarify, you can use either a TCP socket or a Unix socket using the proxy. Your mistake was trying to pass both arguments to the mysql driver at the same, which caused the driver to fail.


Serving media files with GCS backend

I'm currently using a GCS bucket as a static and media backend. Both are in a shared bucket, and I wrote a small backend class to separate static files from media files in their own subdirectories.
Static files work perfectly fine and end up in the right place (e.g. <assets-bucket/static>). I'm using the RichTextUploadingField() to allow users to upload images to the bucket and use them. Uploading works fine using the google storage api, (files end up in <assets-bucket/media/upload/../..>) but it generates a URL to the media file which includes a expire-token.
Serving the media file is fine, as long as the token isn't expired. After a while the image isn't being served anymore, because the auto-generated URL has become invalid.
I set up a Cloud CDN, which has its dedicated URL and loadbalancer for serving the media files from the assets bucket. However, I can't seem to make it work that the ckeditor uses this URL, instead of the auto-generated one when an image is embedded.

Is there a way that the ckeditor doesn't generate a url with an expire-token?
Can I somehow configure the ckeditor to upload through the storage api, and serve/embed through the dedicated Cloud CDN url/loadbalancer?

@MikeBlomm Did you ever solve this? I've just encountered this exact issue.

Sorry for the late response, but I did not solve it unfortunately.. The images are still being served through the google storage api.

@MikeBlomm @JackMorganNZ I think i resolved it. So in order to upload images without an expiring url you have to enable uniform pubblic access in the bucket and the put GS_QUERYSTRING_AUTH = False in settings.py which will create non signed URLs for all images in the bucket that don't expire.


Use sendmsg rather than sendto to send UDP data.

Motivation:
sendmsg is more powerful - this is paving the way for
Explicit Congestion Notifications to be sent.
Modifications:
Replace the sendto system call with sendmsg up to DatagramChannel.
Result:
Sendmsg will be used to send UDP data.

Suggested review changes made.


Switch from Freenode to Libera chat

This PR is not enough, where is the secret settings file? How I can modify it?
cc @pablogsal @zware

Is on the buildbot server in /etc/buiidbot/something IIRC.

I modified /etc/buildbot/settings.yaml and registered cpython-buildbot nickname there.

Is on the buildbot server in /etc/buiidbot/something IIRC.

I documented it: https://github.com/python/buildmaster-config/blob/main/README.md#private-settings


More Design

Change/add or update the design on the website

Hello, may I help with some code? 159


Adding support to accept attribute in file inputs

Now jedi-validate can handle with attribute accept in file input.
closes #72

Coverage increased (+0.2%) to 80.42% when pulling 86d7b793be071a271e302e7e0924a5669fc33966 on netoguimaraes:development into 7a6d6493a2b112da450fd8f776b77ae35c7e1823 on dmitriytat:development.

Coverage increased (+0.2%) to 80.42% when pulling 618a78c265fd445a3c2eab9639d689a5fbbc6011 on netoguimaraes:development into 7a6d6493a2b112da450fd8f776b77ae35c7e1823 on dmitriytat:development.

Thank you!


Use GET for HTTP TagDB findSeries requests

This PR switches the HTTP TagDB code to use GET for its requests, since currently it sends a POST with the tags expressions in the URL and an empty body.

Codecov Report

Merging #2092 into master will not change coverage.
The diff coverage is 100%.

@@           Coverage Diff           @@
##           master    #2092   +/-   ##
=======================================
  Coverage   75.69%   75.69%
=======================================
  Files          80       80
  Lines        7711     7711
  Branches     1512     1512
=======================================
  Hits         5837     5837
  Misses       1613     1613
  Partials      261      261

Impacted Files
Coverage Δ

webapp/graphite/tags/http.py
100% <100%> (ø)
:arrow_up:

Continue to review full report at Codecov.

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


Add abode config entries and device registry

Breaking Changes:
This PR removes the following configuration variables: name, exclude and lights, which were all previously optional. Existing users of the abode integration that use these configuration variables will have to remove them from the configuration.yaml file. Entities that users wish to disable can be done from the Entity Registry in the Configuration UI.
Description:
Adds config entry and entity registry support for the Abode component. This implementation will create a config entry if a user has added the abode component configured via the configuration.yaml file. The entity registry unique ID is based on device_id from Abode (no devices in Abode should ever have the same device_id).
Tested on my Abode setup which includes sensors and lights.
Checklist:

[x] The code change is tested and works locally.
[x] Local tests pass with tox. Your PR cannot be merged unless tests pass
[x] There is no commented out code in this PR.
[x] I have followed the [development checklist][dev-checklist]

If the code communicates with devices, web services, or third-party tools:

[x] [The manifest file][manifest-docs] has all fields filled out correctly. Update and include derived files by running python3 -m script.hassfest.
[x] New or updated dependencies have been added to requirements_all.txt by running python3 -m script.gen_requirements_all.
[x] Untested files have been added to .coveragerc.

Hey @frenck, what type of documentation would I need to create? The setup configuration settings if using the .yaml file hasn’t changed. I looked at a few other components that support config entires and didn’t really see anything I needed to add. Let me know and I’ll definitely get it taken care of! Thanks.

@shred86 The documentation page needs a frontmatter option: ha_config_flow which is set to true, furthermore, it would be helpful to explain to a user how to activate/add the integration using a config flow.
As for this PR, please add unit tests. Config flows require unit tests.

@shred86 The documentation page needs a frontmatter option: ha_config_flow which is set to true, furthermore, it would be helpful to explain to a user how to activate/add the integration using a config flow.
As for this PR, please add unit tests. Config flows require unit tests.

Ah okay, thanks. Just created a pull request with the updated documentation (https://github.com/home-assistant/home-assistant.io/pull/10386). I’ll try to add unit tests soon. Unfortunately I’m fairly new to Python and will be fairly busy for the next two weeks.

Unfortunately I'm struggling with unit tests. If there's any guidance/documentation specific to writing unit tests for Home Assistant, please let me know. The basics of using the unittest module in python makes sense, but I'm not having much luck in understanding how they're written for Home Assistant, or more specifically how to execute async unit tests. I'll keep at it to try and figure it out, but any assistance would be appreciated.

Read the pytest docs. Read a blog on unit testing eg this one:
https://realpython.com/python-testing/
We want all new tests to be standalone pytest test functions.
See existing tests eg:
https://github.com/home-assistant/home-assistant/blob/dev/tests/components/hue/test_config_flow.py

Added unit test for config flows. I used the SimpliSafe component as a reference. I think I covered all the test cases needed.

@MartinHjelmare Thanks for review. Most of these make sense but there's a few I'll have to do some digging around to figure out. Thought I understood what CONFIG_SCHEMA was doing but apparently not. Once I get these changes/fixes implemented, should I just submit another push from my repo? I noticed there's an option on here to "commit suggestion" but I don't want my repo to get out of sync.

Regarding suggestions, you can do either. If you commit the suggestion directly in github, you should pull from remote before you do local changes and push again.

Just made a new commit with fixes to all the suggestions. Marked everything as resolved that I verified was corrected.

Please solve the merge conflict.

Another commit with fixes to all the suggestions. Also realized the unit test wasn't actually doing what I thought it was - should be fixed now and added another test case for the updated exception handling.
I'm not sure why there is a branch merge conflict. I haven't touched the manifest.json file but it looks like there's a mismatch between codeowners. The last time this branch merge conflict occurred, it resolved itself.

I don't think the merge conflict will resolve itself.

Another commit to fix the code review suggestions. I also updated the manifest.json - I have no idea why it's flagging a branch conflict for me adding:
"config_flow": true

If the dev branch changes the same file as we change here and git can't resolve, there will be a merge conflict. The manifest.json file on dev branch was changed three days ago. We need to solve that merge conflict by rebasing on latest dev branch and specify how to solve the conflict.

Rebased and committed some small changes I mentioned above. Additionally, updated the original post in this PR with the break changing and updated the PR for the documentation. I've also fixed the issue with switches being added as switches and lights from Abode which I'll include in the next commit (will wait a bit to allow for review) along with some minor reorganizing of the imports to adhere to the style guidelines.

Added option to enable polling to config flow UI. Personally, I think we can just get rid of polling since cloud push is obviously much faster and less demand on abode's servers. I added the label "Polling (not recommended)" to make it fairly clear it shouldn't be used normally. I think a better option might be to remove the option from the UI and only allow enabling polling through the configuration.yaml. However, I tried reworking config_flow.py but ran into issues with getting exceptions to assert properly when moving the credential testing to a separate function. I'll continue trying to work.
Additionally, pylint is complaining about from .const import DOMAIN in config_flow.py not being used when it is in fact being used:
class AbodeFlowHandler(config_entries.ConfigFlow, domain=DOMAIN):
    """Config flow for Abode."""

Not entirely sure how to clear that up as it's failing CI tests.

We can disable the pylint warning about non used import of DOMAIN in the config flow. It's a bug in pylint.

New push with the mentioned fixes.
Looking at the structure of ConfigEntry in config_entries.py, there is a data dict where we're currently saving username, password and polling, as well as an optional dict for optional configuration options. Since I plan on adding the polling option to the options config flow in another PR, would it be better to setup config_flow.py to save the polling setting within the options dict now? I realize it's fairly minor, but it would just prevent ConfigEntry from having an unused polling key after the options config flow is implemented.

To save an option in the options dict in the config entry we need an options flow.
We could store the option in hass.data temporarily until we implement the options flow.

Ah, okay. That sounds good - I don't want to grow this PR anymore than it already has. Once this is finalized, I'll start working on the options flow.

One minor clean up item I'm not sure how to handle. When a user removes the integration from the UI then shuts down HA, the following error asserts:
^C2019-10-06 10:48:50 ERROR (MainThread) [homeassistant.core] Error doing job: Future exception was never retrieved
Traceback (most recent call last):
  File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/concurrent/futures/thread.py", line 57, in run
    result = self.fn(*self.args, **self.kwargs)
  File "/Users/myuser/.homeassistant/custom_components/abode/__init__.py", line 220, in logout
    if not hass.data[DOMAIN].polling:
KeyError: 'abode'

The reason being is when abode is setup, the setup_hass_events function is executed which calls hass.bus.async_listen_once(EVENT_HOMEASSISTANT_STOP, logout). This is to execute the logout method in abodepy.Abode which is necessary. However, when a user deletes the abode integration and the async_unload_entry function is ran, it executes hass.data.pop(DOMAIN), thus the abode domain no longer exists which is causing that error.
Is there some sort of way to "undo" the hass.bus.async_listen_once when async_unload_entry is ran?

All listeners that the integration creates must be unsubscribed in async_unload_entry. Save the return value when subscribing to an event. The return value is a function to unsubscribe the listener.

The update method will be scheduled in the executor thread pool. So that should be fine. How long is the usual response time of the device when calling refresh?

All listeners that the integration creates must be unsubscribed in async_unload_entry. Save the return value when subscribing to an event. The return value is a function to unsubscribe the listener.

Ah okay. I'm not sure if this is the most elegant solution so I'll post it here for review before I make the commit. Within setup_hass_events I have:
hass.data[DOMAIN].logout_listener = hass.bus.async_listen_once(
        EVENT_HOMEASSISTANT_STOP, logout
    )

I'm assuming hass.data[DOMAIN] is the best place to store objects. From there, I'm simply executing hass.data[DOMAIN].logout_listener() in the async_unload_entry function.

The update method will be scheduled in the executor thread pool. So that should be fine. How long is the usual response time of the device when calling refresh?

I'm not sure on the exact response time but just based on what I can see from the UI, it seems very fast (near real time).

Just made a pull request over on abodepy. Each device in the Abode system has a device_id (ex: RF:0171bd10) and a device_uuid (ex: 6d54a1fabd662015ae8d2b2c72d65df6). Currently, I have the Abode component using the device_id for entity registry. However, I think the device_uuid from Abode would be better to use as it's far more unique. I've noticed that Z-Wave devices paired to Abode will be assigned a device_id of something like ZW:00000001, which is obviously not as unique.
I've @MisterWil a message in hopes that he can merge the PR and bump the abodepy version in PyPI. Once that's done, I'll make a commit with the change mentioned above.

New commit that resolves most of the issues mentioned above. Thanks to @MisterWil for making a quick turn and getting my abodepy PR merged. Will add some comments in the changes.

This PR will resolve #27284.

I disabled a few entities from the entity registry UI and noticed a warning in the logs with the camera:
2019-10-10 18:11:33 WARNING (MainThread) [homeassistant.helpers.entity] Entity camera.living_room_camera is incorrectly being triggered for updates while it is disabled. This is a bug in the abode integration.
Only appears to be the camera showing this warning. I'm wondering if it's caused by this method in the AbodeCamera class:
async def async_added_to_hass(self):
        """Subscribe Abode events."""
        await super().async_added_to_hass()

        self.hass.async_add_job(
            self._data.abode.events.add_timeline_callback,
            self._event,
            self._capture_callback,
        )

I'm assuming when an entity is disabled, the camera device is still subscribed to receiving updates.

There's a delay of 30 seconds before the integration is reloaded after an entity is enabled/disabled in the entity registry to avoid the integration reloading multiple times if a user clicks around in the entity registry.
https://github.com/home-assistant/home-assistant/blob/4c71c6df6f584bf220d1f9051ba7df55317c46b1/homeassistant/config_entries.py#L771
https://github.com/home-assistant/home-assistant/blob/4c71c6df6f584bf220d1f9051ba7df55317c46b1/homeassistant/config_entries.py#L823-L831

Ah okay, that makes sense. I thought maybe it was an issue with the Abode component. There really should be as all note at a minimum in the UI that explains that. I can only imagine that will be confusing for some users (like me). 😊
Well, I’m hoping my PR for abodepy will be merged tomorrow and updated. I’ll commit the change mentioned above once that’s done and hopefully that’s the last thing...

Hopefully that should be the last commit. =)

Added additional tests to the test_one_config_allowed function. Previously it was only covering the case where async_step_user was being called with an existing config entry. I simply added onto that same function and added a import config file and called async_step_import so both cases are covered now.

Thanks for all the help @MartinHjelmare - I learned a ton in this process which I realize comes at the expense of your time fixing all my errors. I started learning python/programming primarily to help contribute to Home Assistant. I'm hoping to continue learning and contributing where I can. Cheers.

Noticed one minor issue - there is no .translations folder in the abode component folder. I was under the impression the strings.json file was used to create that translations folder, but not something I was supposed to do on my end.


HMRC:Hello World API

Please fill in the following information:
Base URL:
https://api.service.hmrc.gov.uk
Documentation URL:
https://developer.service.hmrc.gov.uk/api-documentation/docs/api/service/api-example-microservice/1.0
Description:
This is a test of the catalogue process for CB.
This is an example API that allows software developers to test that their applications can connect with the HMRC API Platform. It also acts as a hands-on tutorial for developers to get started with HMRC APIs.
It includes resources for testing access to the three different access levels:
Say hello world is an example of an unrestricted endpoint
Say hello user is an example of a user-restricted endpoint
Say hello application is an example of an application-restricted endpoint

Further details of the different access levels are given on the Authorisation page.
For more information about how to develop your own client applications, including example clients for this API, see Tutorials.

Excuse me, how do I get an OAuth 2.0 access token？

I don't know where scope should be obtained

This is now live on the catalogue.


Link to docs broken

Why the documentation action is not working
https://juliaml.github.io/MLUtils.jl/dev

It's set to push on "master" but the default branch is now "main".

still no luck

Did you turn on the "gh-pages" branch in the repo settings?

Appears to be working now.

Did you turn on the "gh-pages" branch in the repo settings?

that did it


Spin up droplet for database

You need a droplet to hold all our data

WE don't need to implement for scaling :D


Make glCheckError use std::string_view instead for file path argument

(Note: Discussions on this topic were done on the SFML Discord here)
To reduce the overhead for v3 debug builds this PR alters the arguments for glCheckError function to take the file path as a std::string_view instead of a std::filesystem::path. The path construction in debug builds was causing noticeable performance impact for users. By swapping to std::string_view we can remove this overhead for the happy path and only construct the path when a gl error is actually encountered.

What about making the same change in eglCheckError? It does the same thing.

What about making the same change in eglCheckError? It does the same thing.

Ah yes, I forgot that footnote from ZX. Will apply to there also

SFMLBuildMaster: Build this please.

Pull Request Test Coverage Report for Build<PHONE_NUMBER>8
Details

1 of 3 (33.33%)  changed or added relevant lines in 2 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage remained the same at 57.009%

Changes Missing Coverage
Covered Lines
Changed/Added Lines
%

src/SFML/Graphics/GLCheck.cpp
1
2
50.0%

src/SFML/Window/EGLCheck.cpp
0
1
0.0%

Totals

Change from base Build<PHONE_NUMBER>7:
0.0%

Covered Lines:
12053

Relevant Lines:
19987

💛  - Coveralls


Very Slow Performance

The Ubuntu image worked well (using a 64 GB SD card), but the Ubuntu system is very slow when installing certain libraries and packages such as Spyder IDE or others. The system appears to hang many times.
Additionally, the free space is only 4.6 GB, whereas the SD card has a capacity of 64 GB.

That's due to the Jetson Nano Quad-core ARM Cortex-A57.
It isn't fast. To be precise, with a clock of 1.4 GHz, it can be slower than a Raspberry Pi 4.
The great advantage of the Jetson family are their CUDA acceleration.
But CPU-wise, their are not the fastest in town.

Is there a way to make this image (Ubuntu 20.04) faster ??


Add github actions support

Let's add some GitHub Actions support for basic link checking and markdown linting.

Submitted PR https://github.com/ahanaahluwalia/gcp-certified-associate-cloud-engineer/pull/2 to address this issue.

Completed in https://github.com/ahanaahluwalia/gcp-certified-associate-cloud-engineer/pull/3


Reduce the build size for inference

🚀 The feature
At the moment, installing all the dependencies for doctr/.[torch] takes up a lot of disk space. My final Docker image takes about 12GB, despite the fact that I run the service with only one model. I'm not sure that I need about 7GB of dependencies to infer one model. My suggestion is to add separate options like [torch-infer] or [tf-infer] that would install only those packages that are needed for inference. I think it might help if we don't need things for training  and evaluation.
Motivation, pitch
I'd like to build lighter images for inference purposes, installing less dependencies. It will save disk space and reduce bulding time.
Alternatives
There may be dependencies that are installed but not used. If so, then removing them from the list of packages will help reduce the size of the builds.

# ENTRYPOINT ["tail"]
# CMD ["-f","/dev/null"]

Hi @decadance-dance 👋,
We have already split some dependencies in extras (will be available with the next release).
You could also take a look at https://github.com/felixdittrich92/OnnxTR that's more optimized for plain inference :)

#1551

Hi @felixdittrich92, thanks
I have never seen the OnnxTR project before. I am gonna try it for sure.

@decadance-dance yeah i worked last week a bit on it and released it on friday (public) ^^ Because there was some requests about an onnx pipeline and it's easier to keep it dedicated instead of blowing up docTR with a third "backend"


correct site.isServer deprecation

other instances of .Site.IsServer were caught and updated as required the vendor/.../helper/debug.html file still had a site.IsServer instance that throws errors on newer versions of hugo

Hey,
you have fixed the module "in code" - the actual change is needed here:
https://github.com/bowman2001/hugo-mod-image/blob/main/layouts/partials/mod-img/helper/debug.html#L1

Thank you!
Putting this where it actually belongs


tests: manually stop the Candlepin container

It seems the podman_container module cannot properly stop the running container when being asked using recreate=true; hence, do it manually before starting the new container.
This also reverts commit 12c1a38bd914547986509dbd1b9c955bc0f838f9, which is no more needed now.

[citest]


WaveNet implementation for image generation (based in this repository)

As I told in #125, I've made a revision of this project where a feed the model using the gray-scale channel of a dataset of images (similar but no equal to what DeepMind made with PixelCNN).
I modify the TextReader I made for the WaveNet text generation version (#117). Specifically: I made a ImageReader.
I really love the theoretical idea after the generative model using dilated causal convolution layers!! The results are wonderful and easily extrapolated.
I made the next test with this image implementation:

I used a small dataset with 12 similar (but different) images of a person (the woman in the picture is my mother). She is posing in different ways.

Above one of the original pictures, and below the scaled gray-scale image fed into the training time:

I trained the model using a SAMPLE_SIZE = 4096 and a learning rate of 0.001

The loss dropped down gradually and only after 4k steps it was around ~0.09. I trained once again with learning rate = 0.0001, and after another 4k steps loss was around ~0.01

I generated the images using always a WINDOW = 4096 and a always 4096 samples (64x64 pixels so I can save a full image).

Well:

If a let the first sample as random:
waveform = np.random.randint(quantization_channels, size=(1,)).tolist()
or if I let the image grow using probability distribution and not argmax:
sample = np.random.choice(np.arange(quantization_channels), p=prediction)

I juts get ugly noise:

But, and this is interesting:

If I set the first sample to the first pixel in each image from the dataset. For example:
waveform = [169]
and if I use argmax to select every sample:
sample = np.argmax(prediction)

I can generate each and every of the posing images from the dataset!!

The model is wonderful, and it able to memorize a lot of information in its nodes!! I'm pretty sure something similar is what happens in our memory (in the brain). When we see an image, probably a "training" process will take place in some mini-neural network in our brain, and later when we need to remember that image (or text, or sound,...), another sub-network of our brain must to generate the memorized information and pass the data to other subnet of our brain.
Well. I hope this can help in anyway to the project we are trying to build in here.
I think I will try to implement the global conditioned WaveNet model and try to be able to select the image a want to recover just by passing the ID from the dataset image.
If somebody want to play with this, here you can get the code: https://github.com/Zeta36/tensorflow-image-wavenet
Regards,
Samu.

Does it seem to be overfitted? 12 x 4096 only requires 64K floats and wavenet has much more parameters to fit in. If you can have similar result with hundreds of photos, it would seem to be meaningful.


[BUG] Unchecked unreachable code

Describe the bug
Parsing store (https://github.com/Cr0a3/ygen/blob/main/src%2FIR%2Fparser%2Fparser.rs#L726-L728) doesn't check if there is actually an variable there

Fixed in require branch


Add Logf to allow implementing proxy loggers

Some libraries implement their own logging interfaces (e.g. Shopify/sarama), but creating a proxy logger that uses mailgun/log would render useless caller information pointing to the proxy logger itself. This method introduces Logf function that would allow proxy loggers output correct caller information.
Besides it fixes:

Caller information broken by previous commit;
Backwards compatibility with older config files (that had no severity param)

lgtm

lgtm


set which group had perm to access each instance

http://<IP_ADDRESS>:8000/config/instances

done 363df7c


Delphi radar in third party perception

Hi,
In /modules/third_party_perception/conversion.cc :
For Conti radar, id  is correctly set (rob.set_id(contiobs.obstacle_id());).
But for Delphi radar, the id is set to the index (rob.set_id(index);). Further, the corresponding obstacle from last_radar_obstacles is found using that id and velocity is calculated based on that ( const auto iter = last_radar_obstacles.radar_obstacle().find(index);).
Could you please clarify why index is used for Delphi radar?
Why do not we have id in DelphiESR message? Is it because we only get detections from Delphi radar here and not tracks?

@techoe : Could you please answer this question?

Hi @rogern27, I am sorry for the late reply. We will answer you ASAP. Thank you!
@weidezhang, Could you answer this question?

@rogern27 we do not currently support Delpi Radar. If you would have made any progress on this topic do let us know.


[fix](inverted index) fixed in_list condition not indexed on new pipeline

Proposed changes
Issue Number: close #xxx

run buildall

run buildall

run buildall

run p0

run p0

run buildall

run performance


Distribute binaries with new releases

We should be able to use Github actions to build the attest/check CLI tools and include them in their own release tarball. While it's not a signed package in a Google-endorsed package repository, it's something to reduce the cost of adoption.

Added in release.yml and shown to work with release v0.7.0


Assets structure in themes

I've been looking both documentation and google and I have not found information on how to incorporate themes in assets within the bundles so that the command "assets: install" install them in the web directory only from active theme.
If you placed them in Acme / DemoBundle / Resources / public / themes / current_theme / install all files from all themes but if I was within the theme folder Acme / DemoBundle / Resources / themes / current_theme / public / not copy anyone.
What is the correct structure? Do I need to configure anything else?
Thank you

i second that

For the themes can consider the following implementation
https://gist.github.com/7thcubic/701c0ff6aaa85511e80da5aece5bb798
https://gist.github.com/7thcubic/1817a6c83dd92189d8af76298243a6f1


Customise system in requirements drop down

Went with Jinja2 templating, so that any other customisation is done easily, but open to feedback if you think that's overkill
Realised still had design-input instead of requirement in templates so fixed that
Broke up local repository templates into their own module, may end up renaming it when I get to github action copying but still seemed like a good place for it
Will eventually remove qw check later on, but keeping in for now

Other fixes:

Fixed documentation to show expected output correctly

merged as a part of #34


Progress bar sizes

Can we have progress bar sizes, like:

progress-bar-lg
progress-bar-sm
progress-bar-xs

Should #10914 still be ignored?
@adius has a good point here: https://github.com/twbs/bootstrap/issues/10914#issuecomment-75378741

We won't be adding any—just change the height of the inner items as you need.


Updated README.md fixes issue #1047

Related Issue #1047
#1047
Fixes:  #1047
Description
I have added a table for mentioning GSSOC and Hacktoberfest2024
 #1047
Type of PR

[x] Documentation update

Screenshots / videos (if applicable)
Before

After

Checklist:

[x] I have made this change from my own.
[x] I have performed a self-review of my own code.
[x] I have made corresponding changes to the documentation.
[x] My changes generate no new warnings.
[x] I have tested the changes thoroughly before submitting this pull request.
[x] I have provided relevant issue numbers and screenshots after making the changes.

@PriyaGhosal assign me this under gssoc-ext level and hacktoberfest-accecpted tags

@Annapoornaaradhya Your pull request has been successfully merged! Don't stop here—continue contributing by addressing more issues and aiming to become a top contributor. Exclusive swag awaits for those who go the extra mile!
Great contribution ! 🎉

Thank you @PriyaGhosal


Security upgrade ruby from 3.0.1-alpine3.13 to 3.0-alpine3.13

Upgrading to ruby:3.0-alpine3.13, as this image has only 0 known vulnerabilities.

Thanks @rdegges ! However, the version recommended by Snyk seems to be a downgrade rather than an upgrade. I would prefer to test a newer Alpine image unless that might have breaking changes: https://hub.docker.com/_/ruby.
3.1.1-alpine-3.15 appears to be the latest, but I think a broader tag like 3.1-alpine would avoid pinning us to a release which may eventually have vulnerabilities.
If you have the time to test using a newer base version, that would be excellent and greatly appreciated.
Cheers,
Stennie


Get Node.replaceChild: Argument 1 does not implement interface Node when using action

I got this error when trying to use Action inside sub-component.
TypeError: Node.replaceChild: Argument 1 does not implement interface Node.
    morphdom http://t1.localhost:8000/static/unicorn/js/morphdom/2.6.1/morphdom.js:798
    send http://t1.localhost:8000/static/unicorn/js/messageSender.js:227
    promise callback*send http://t1.localhost:8000/static/unicorn/js/messageSender.js:76
    later http://t1.localhost:8000/static/unicorn/js/delayers.js:22
    setTimeout handler*debounce/< http://t1.localhost:8000/static/unicorn/js/delayers.js:28
    queueMessage http://t1.localhost:8000/static/unicorn/js/component.js:501
    callMethod http://t1.localhost:8000/static/unicorn/js/component.js:253
    addActionEventListener http://t1.localhost:8000/static/unicorn/js/eventListeners.js:191
    addActionEventListener http://t1.localhost:8000/static/unicorn/js/eventListeners.js:110
    addActionEventListener http://t1.localhost:8000/static/unicorn/js/eventListeners.js:94
    refreshEventListeners http://t1.localhost:8000/static/unicorn/js/component.js:227
    refreshEventListeners http://t1.localhost:8000/static/unicorn/js/component.js:217
    walk http://t1.localhost:8000/static/unicorn/js/utils.js:128
    refreshEventListeners http://t1.localhost:8000/static/unicorn/js/component.js:174
    Component http://t1.localhost:8000/static/unicorn/js/component.js:56
    componentInit http://t1.localhost:8000/static/unicorn/js/unicorn.js:31
    <anonymous> http://t1.localhost:8000/product/:357
component.js:257:17

Looks like the code that is failing is here: https://github.com/adamghill/django-unicorn/blob/main/django_unicorn/static/unicorn/js/messageSender.js#L227-L231. Maybe the sub-component root is missing for some reason? My example nested component with actions is working for me locally. Feel free to fork it to replicate what you are seeing or make a sample repo that replicates.

Hi @adamghill, I didn't notice that you reply my message. I have that issue when deploying our application on EC2. I am using nginx and gunicorn to deploy the django. Also, I have followed your example too.

@adamghill nvm. I found the root cause. It's about using cache with redis instead.


Problematic deployment size

Hey, I've spent past few days trying to deploy this plugin at azure as a web app. I tried two approaches but came into the same problem every time:

Uploading docker image to container registry and running web app from it (size was around 7gb)
Running CI builds and running web app from artifact (size was around 5gb)

In each solution the application size is a issue that generates huge expenses in comparison to running it.
Most of the image size comes from nvidia drivers packages that is a torch dependency - is that really needed?
Am I doing something wrong with the builds? How are you guys building it and hosting it?

if you wanna help testing https://github.com/icoretech/chatgpt-retrieval-plugin-docker

@masterkain just noticed your issue, will take a look for sure! :)

I came across issue 240 and decided to try removing some packages, after removing chromadb, qdrant-client, redis, pgvector from pyproject.toml (which I don't use anyway) I managed to reduce size to 1.2gb which is way less than that 7gb monster.

I will be closing this issue as its solved for me, if you have similar problem just reduce the libraries that you don't use.


feat: create staggered card component

Greetings!
This is a component I have previously used in several projects. As stated in the documentation, it includes a card component with a clean staggered opening animation and also an interesting hover animation (similar to the one seen on Vercel's navbar)
Here's a demo:
https://github.com/user-attachments/assets/2aeab66a-74a3-4743-a99e-1624b4e285b1
If you'd like to have something changed, don't hesitate to let me know 🙂

Greetings @Humboorgir!
I tested this and it is broken on the docs page. Also, the text color is dark on a dark background. Please check the video for a better idea.
You can view the page at https://localhost:3000/docs/card/staggered-card
https://github.com/user-attachments/assets/c04f206a-f178-4e2a-8543-095303bcdd99

Forgot to test it in light mode 😅.
I pushed the commit that fixes the 2 issues.
Sorry for the inconvenience!


Collect stats telemetry at start and end of each operation

Rally provides a number of handy stats telemetry devices, e.g. node-stats or searchable-snapshot-stats. These are currently collected concurrently to running the track. When creating complex tracks with multiple operations, it would be handy, however, to have the stats collected at specific points as well, for example before or after each operation, so that the effect of operations can be better understood (especially shorter ones that take less time than the stats collection interval).

Related to https://github.com/elastic/rally/issues/1224

Thanks for raising this!
As discussed offline, I will close this in favor of #1248 where we'll explore ideas and layout implementation paths.


Add e2e tests for RHEL 9 EFI on Baremetal

*Issue #, if available:
Description of changes:

Add simple workflow test cases for RHEL 9 EFI on Baremetal.
Documentation improvement for RHEL 9 on Baremetal.

Testing (if applicable):
Documentation added/planned (if applicable):
By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

/lgtm
/approve
/woof


Adds specification of frontend node in the designer.

A frontend node is specified in the topology as a boolean property in
the properties of a node. Visually, it appears with black rounded line.
The rest of nodes appears with a grey rounded line. Only one frontend
node can be specified.
This way of specifying a frontend has less priority than the previous
one when generating the AAM (setting the frontend node in the
app_requirements element), but it is easier to implement from the designer.
Form code for the topology editor has been moved from editor.js to
editor-forms.js, as the former file was too complex.

Current coverage is 37.71%

Merging #261 into master will increase coverage by +0.98% as of 8d2afda

@@            master    #261   diff @@
======================================
  Files          329     331     +2
  Stmts        12064   12215   +151
  Branches      1548    1569    +21
  Methods          0       0
======================================
+ Hit           4432    4607   +175
+ Partial        449     443     -6
+ Missed        7183    7165    -18

Review entire Coverage Diff as of 8d2afda

Powered by Codecov. Updated on successful CI builds.

@kiuby88 , @jacopogiallo : Could you have a look at this? I can provide a working instance so you can test UI side.

@rosogon Looking to the code, and according to your comment, it seems that only the UI has changed. The generated AAM is still the same. Isn't it?
(And yes, a running instance - or at least two screenshots highlighting differences - would be great) :)

@jacopogiallo : I will privately give you the instance url. The important change is in the UI. A little change has been done in the aamwriter, since I modified the specification of the frontend node in the topology json.

@jacopogiallo : A node form contain now a checkbox to mark the node as frontend. The node marked as frontend is rounded in black while the others are rounded in grey.

I will privately give you the instance url.
Fine, I tried it. (It is not generating ADPs since, I guess, the instance you gave me is not connected to the Planner - isn't it?)
The important change is in the UI. A little change has been done in the aamwriter, since I modified the specification of the frontend node in the topology json.
I understand this. Is the AAM you generate going to be different from the previous ones? I am asking to be sure that the small changes you are committing will not affect the entire design time. :)

A node form contain now a checkbox to mark the node as frontend. The node marked as frontend is rounded in black while the others are rounded in grey.
I see. Would it be possible to highlight it in a more effective way? Perhaps it could be even another color (blue? green? since black is not so differrent from dark-grey).

@jacopogiallo: I haven't checked, but I think it is connected to the planner.
The AAM has not changed.
I am afraid the color is a question of taste. I will ask the demo for any agreement on this.

@rosogon

I haven't checked, but I think it is connected to the planner.
The AAM has not changed.

Could you please make a quick check? I mean, can you check that the Planner is connected and that the AAM you generate can still be used to generate ADPs (and then DAMs)?

I am afraid the color is a question of taste. I will ask the demo for any agreement on this.

I agree, of course. It was just a suggestion. ;)

@jacopogiallo, could you test now if you are able to get results from the planner? Thanks

@rosogon Sorry but I cannot review it before coming monday. If you need it earlier, could you please explain the issue to @PaoloCifariello (or anybody else) and ask him to do the review?

Il giorno 15 mar 2016, alle ore 13:14, Román SG<EMAIL_ADDRESS>ha scritto:
@jacopogiallo, could you test now if you are able to get results from the planner? Thanks
—
You are receiving this because you were mentioned.
Reply to this email directly or view it on GitHub:
https://github.com/SeaCloudsEU/SeaCloudsPlatform/pull/261#issuecomment-196793521

@rosogon I saw the screenshot you sent me on Gitter. If it is generating DAMs properly, it is fine with me :)
If you still need a light review, please ask it to somebody else (e.g., @PaoloCifariello )

@rosogon  I've tested the GUI and the PR does what it claims.
+1

Squashed and merged. Thanks @perezp


Update volovData.username regex

Took a regex from https://emailregex.com and tested some scenarios with https://regexr.com
Feel free to edit/test this yourself

Yeah! Thanks. I'm running out of time the last few days. I will take a look later!


[type:refactor] add an authentication on shenyu admin when register by http

Fix #2724
The corresponding function in the org.apache.shenyu.admin.controller.ShenyuHttpRegistryController, can register a gateway with out authentication, this pr will fix it

Codecov Report

Merging #2723 (b0b1321) into master (d95e8f8) will decrease coverage by 0.76%.
The diff coverage is 32.74%.

@@             Coverage Diff              @@
##             master    #2723      +/-   ##
============================================
- Coverage     60.37%   59.61%   -0.77%
+ Complexity     4394     4372      -22
============================================
  Files           680      681       +1
  Lines         19472    19572     +100
  Branches       1727     1735       +8
============================================
- Hits          11757    11667      -90
- Misses         6729     6923     +194
+ Partials        986      982       -4

Impacted Files
Coverage Δ

...e/shenyu/admin/shiro/bean/StatelessAuthFilter.java
54.54% <0.00%> (ø)

...a/org/apache/shenyu/common/constant/Constants.java
50.00% <ø> (ø)

...rg/apache/shenyu/common/utils/FreshBeanHolder.java
0.00% <0.00%> (ø)

...pache/shenyu/plugin/base/AbstractShenyuPlugin.java
68.29% <0.00%> (ø)

...ster/client/http/HttpClientRegisterRepository.java
0.00% <0.00%> (ø)

...shenyu/register/client/http/utils/OkHttpTools.java
55.17% <0.00%> (-44.83%)
:arrow_down:

...enyu/register/client/http/utils/RegisterUtils.java
23.07% <0.00%> (-76.93%)
:arrow_down:

...che/shenyu/sync/data/http/HttpSyncDataService.java
70.58% <79.48%> (-10.60%)
:arrow_down:

...pache/shenyu/sync/data/http/config/HttpConfig.java
84.61% <100.00%> (+4.61%)
:arrow_up:

...n/alibaba/dubbo/cache/AlibabaDubboConfigCache.java
43.75% <0.00%> (-31.25%)
:arrow_down:

... and 34 more

Continue to review full report at Codecov.

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


Newbie basic question: trouble setting PTVS up properly

Hello. First of all I'm sorry if the question shouldn't belong here or it has already been answered, I haven't found another post about this issue yet (and sorry for my bad english). I'm all new here, trying to learn more about Python. Maybe someone had the same problem before and has an idea how I could  manage to solve it.
I have some trouble setting up PTVS in Visual Studio 2013 ultimate.
First of all I installed the recommended 32-bit Python-interpreter (http://go.microsoft.com/fwlink/?LinkID=299430), and after that I added PTVS 2.2.
When starting VS I get an error message saying, that the python tools package did not load correctly and to see the ActivityLog for more details (situated in C:/Users/Username/AppData/Roaming/Microsoft/VisualStudio/12.0/ActivityLog.xml).
(Unfortunately the attached Screenshot is in german).

In the ActivityLog, the following events are highlited.

I tried several things, as removing and reinstalling the interpreter and PTVS or repairing VS or installing several VS Updates, but nothing helped.
Has anyone any suggestion how i could solve this issue?
Thank you all in advance and best regards

These are fairly tricky to solve, unfortunately.
First, I would make sure you have the latest update for VS 2013 (should be update 5). After installing that, repair PTVS (or uninstall, delete the install directory, then reinstall).
If you are still having trouble, we'll need to attach a debugger while loading and see what exceptions are occurring, but let's make sure the install is okay first.

Hi Zooba, thanks for your answer.
I already have update 5, and tried repairing and reinstalling PTVS several times.
Sounds quite complicated to find the exception, i think it will be easyer to use another software  to code in python then.


Ranking for "night-owl-vscode-theme" search in marketplace doesn't return obvious results

When searching for night-owl-vscode-theme in the marketplace the ranking doesn't return obvious extensions as the priority.
Search ranking should factor in install count / usage.

See Twitter thread, https://mobile.twitter.com/bslobodin/status/1102693377886216198

Could it be as simple as README needing to be updated to search for something else, like night-owl, which is the name specified for the package?
I noticed night-owl-vscode-theme isn't a thing that appears in the name, or keywords, only appearing as part of the url.

duplicate of #42890 ?

We do factor in install count and rating of the extension while returning the search results from the Marketplace. However that comes into picture when the search term is part of the extension display name. In this case whenever we use night-owl-vscode-theme SQL Full Text Search (FTS) doesn't find the vscode and theme words in the display name and hence the install count / rating calculations don't kick in.
I was interested in understanding why the term night-owl-vscode-theme was used for searching for extensions, as against night owl? Reason being we are onboarding to use Azure Search in the Marketplace and we understanding the use cases / scenarios will help us tweak our search indexes to give better / expected search results.

@kesane-msft am wondering that myself, in retrospect, as I could only find that term in the README, and not in the package itself, hence https://github.com/sdras/night-owl-vscode-theme/pull/173.

@bslobodin , got it. Thanks! I was wondering if it had anything to do with the github repo name. :)

Upstream issue https://github.com/microsoft/vsmarketplace/issues/154


Measure uptime

How do I measure uptime?

Is this repository still maintained? This would be a must-have feature...

You may be misunderstanding what this tool is for. The purpose of this tool is to be a geographically distributed program that tests uptime and reports this to cachet.
Measuring uptime is unsuitable because it doesn't work on a bigger scale. This is cachet's problem in a way since this reports to cachet and that's all it cares about.
There's a potential for a spinoff project that has a central database and receives "server is up/down" from cachet-monitor.

Agree, this is something Cachet should offer


[Form Recognizer]It will return error when use documentAnalysisClient with AAD authentication to run integration tests on UsGov cloud and China cloud

We are running live Tests against other clouds like US Gov and Azure China Cloud. The goal is to check whether new azure sdk package work with other clouds or not.
Error Description:
When we use documentAnalysisClient with azure active directory credential to run integration tests on UsGov cloud and China cloud, it will return an error. The error message is shown as following, for more details please check here:

Error Track:
The failed reason is that when we use azure active directory credential, the scope of credential is just supported on Public cloud. The scope of credential defines the set of permissions being requested by the application. In form recognizer client, the process code is here.

the value of scope is here.

Expected Behavior:
Add different scopes for different clouds in Form Recognizer SDK.
The value of the scope in different clouds is follow:
Public cloud: https://cognitiveservices.azure.com/.default
UsGov cloud: https://cognitiveservices.azure.us/.default
China cloud: https://cognitiveservices.azure.cn/.default
@benbp, @ramya-rao-a, @meeraharidasa, @jeremymeng for notification.

@deyaaeldeen I know you've been working on similar issues in TA. What's your advice here?

@witemple-msft we went to the archboard for this as tracked by https://github.com/Azure/azure-sdk/issues/3353. Next step is to design the actual cloud configuration.

@deyaaeldeen I'm mortally certain that I've seen an automatic cloud config system somewhere in really old code. ms-rest-azure-js maybe?

@ramya-rao-a This won't make it into January. I'm going to add it to Feb and take a look at adding something like an audience field to FormRecognizerCommonClientOptions.

@HarshaNalluru About the fix of this issue, how is the current progress? Or what are your plans?

Hi @v-xuto,
#20522 should fix the problem, but the samples were failing in the China Cloud with conflict errors as far as I recall, which I thought could be avoided if the samples were run sequentially(one after the other).
Samples failure related investigation is pending along with the related support from dev-tool itself - https://github.com/Azure/azure-sdk-for-js/pull/20522#issuecomment-1067391910
So, mostly waiting on that.
cc @witemple-msft

@HarshaNalluru Thank you for your prompt reply. I look forward to your PR being merged soon.
Please let me know if there is any progress. Thanks a lot.

Currently AAD tests are skipped in the test code, this issue no longer affects multi-cloud tests, can we close it first?

@HarshaNalluru  Regarding this issue, what is the current progress?

@HarshaNalluru  Got it. Please let me know if there is any progress. Thanks in advance.


XDebug 3.x and PHP 8.0/7.4

PHP version:  8.0 (and 7.4.x)
XDebug version:  3.x
As you probably know, XDebug 3.0 makes some changes that affect .ini settings.  The text of the welcome page still refers to the settings required for XDebug 2.x.  The changes are documented on the XDebug upgrade page.
There are three changes that are relevant:
mode
Users should ensure there is a line in the ini file like:
xdebug.mode=debug
port
The default port is now 9003 so user either needs to reference this port in their launch configuration instead of 9000 or make sure the port is the same in the ini and launch configuration.
remote_autostart
This is now changed and replaced with 'start_with_request' which can have the values of 'yes' or 'trigger'.  For example:
xdebug.start_with_request=yes
'trigger' allows a debug session to start when the statement ' xdebug_break()' is executed.

To clarify: This is not a problem in extension per se. It is merely a documentation issue.


Update playbooks to handle RHEL 8

Now that RHEL 8 is available, let's get the playbooks updated to handle it.
Known issues so far:

ntp package is no longer available (use chromy instead - should be installed by default)
java-1.7.0-openjdk-devel
Asian locales need prereq packages: glibc-locale-source glibc-langpack-XX
various problems setting up CPAN, but apparently no longer required (so skip it?)
gmake build fails - but can use native version 4.2.1 instead

Due to CentOS and RHEL being very similar, we can look into doing them both at the same time.


"process already dead, exit code: 0"  echoed in console

Description
I'm running the "Example of run_process running a function" example from https://watchfiles.helpmanual.io/api/run_process/
The code appears to do what it is supposed to, but also, every time a change is detected,  a "process already dead, exit code: 0" message is echoed in the console.
Why does this happen, does it indicate a problem and is there any way to get rid of the message?
Example Code
from watchfiles import run_process

def callback(changes):
    print('changes detected:', changes)

def foobar(a, b):
    print('foobar called with:', a, b)

if __name__ == '__main__':
    run_process('/static', target=foobar, args=(1, 2), callback=callback)

Watchfiles Output
foobar called with: 1 2
changes detected: {(<Change.added: 1>, '/static/TTR')}
process already dead, exit code: 0
foobar called with: 1 2
changes detected: {(<Change.deleted: 3>, '/static/TTR'), (<Change.added: 1>, '/static/TTR')}
process already dead, exit code: 0
foobar called with: 1 2
^CKeyboardInterrupt caught, stopping watch
process already dead, exit code: 0

Operating System & Architecture
MacOS 12.6.1 Python 3.10
Environment
No response
Python & Watchfiles Version
Python 3.10 , newest watchfiles from pypi
Rust & Cargo Version
No response

Well the process as finished.
This is expected.


Truncate the result's preview to avoid huge preview in the log

Currently, the search result will be dumped to the log entirely, this cause problem when the result contains huge preview, such as image in Base64 format from zazu-clipboard. Several MB preview is not only unreadable, but also slow down the Zazu performance.
This PR will truncate result's preview in each occasion, so only first 1KB of the preview will be shown, such as:
{"icon":"/Users/taowang/.zazu/plugins/tinytacoteam/zazu-clipboard/data/images/1487064056501.jpeg","title":"Image: 600x564 (34.7KB)","value":"0xagtVVwmWeAop8M","preview":"\n          <img src='data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAlgAAAI0CAYAAADBUFf9AAAgAElEQVR4nOzdeZgU1fk24Oc91T0bq0FEBlAUjAsquCuYCBE1GhFcAHFJVKLGyKIge4IdlUVcUBCNGg1qIjIYFsEFd5OIGolAFE1+iqLMDAKiwACzdPd5vz9m/GKQWbq6uqu6+7mvq65Ep+vU01Xj9NvnnDoFEBEREREREREREREREREREREREREREREREREREREREREREREREREREREREREREREREREREREREREREREREREREREREREREREREREREREREREREREREREREREREREREREREREREREREREREREREREREREREREREREREREREREREREREREREREREREREVFixO8AQRCBmm1d/9YDYjrDSgcVLRagGIpiERQrUAygtd85PbZNgHJVlENQrkC5qJTDaBnUrm/9yY9WRyDW75DkXu/ekVDB/vuepqL9ABwBoH3d1sbfZDlrK4CNdduHorK06suv3nj99UjM51xElAI5W2BFOr9WsCMc6guV/grtB6Cd35kCZpNAlkJ0Scto7OXI+j5VfgeipjnnkvsOjCsmA3oBsu+LQbbZBshCR3DLc08O+9zvMETknZwqsG7stuIHUhU/V4H+InoWgGZ+Z8oQu1RluQBLtMBZNnNtz6/9DkTfd9bAu3+AUGgSINcDyPc7DyWkGtA5iMWmLF8wiv99EWWBnCiwJhz2cptYTWiSCq4HkOd3ngxXA5H7w6HobdP+3Xer32Go1hmXzOlh1C4F0NHvLJSUUium30tPXr/a7yBElJysLrBu7LiiMC+veqQKxgNo5XeeLLNdFNNravLvnVnas9LvMLnszCGzBwjwJ7BHNlvsUuCyF+cNX+x3ECJyLysLrIEocbocvO8vVPQWAB38zpPlykRl8rpPv3psAQbF/Q6Ta+qKq78AMH5nIU9ZBS5kkUWUubKuw... (46439 more bytes)","blockRank":3,"previewCss":"body {\n  font-family: \"Lucida Sans Unicode\", \"Lucida Grande\", sans-serif;\n  overflow: hidden;\n  margin: 0;\n  padding: 0;\n}\n\n.text.color {\n  height: 100%;\n  width: 100%;\n  line-height: 200px;\n  font-size: 30px;\n  text-align: center;\n}\n\nimg {\n  width: 100%;\n}\n\n.meta {\n  font-size: 11px;\n  color: #767676;\n  width: 100%;\n  position: absolute;\n  bottom: 0;\n  text-align: center;\n  margin-bottom: 5px;\n}\n\n.text.dark, .meta.dark {\n  color: #F9F9F9;\n}\n","pluginName":"tinytacoteam/zazu-clipboard","blockId":"searcher","level":"info","message":"actioned result","timestamp":"2017-02-15T01:31:35.552Z"}
Signed-off-by: Tao Wang<EMAIL_ADDRESS>

This feels like a view concern, maybe the logic should live inside of the debug window instead. What do you think?

It's not only view problem, as there might be several base64 encoded images inside the preview, the results returned from zazu-clipboard can easily be 10MB or more in size, and every key stroke will trigger those 10MB+ results be dumped to the log file, which cause a significant performance hit.
Truncated the preview before dumped to the log file will only generate several KBs log, and as it only truncate the preview, it will not lose the debug information that much. And, yes, it can also be helpful for the debug window.

That's fair, thanks!


Ticket307 integrate travis.0

This is a working travis integration build which mimics our existing test suite build options. There are a few issues:

The tests are taking too long and might time out. We'll have to come up with some way to improve on it, maybe with caching, but I won't have luck until this is merged into something. (Travis won't save the cache until then.) Further, we could parallelize the tests with a build matrix, but I have no experience with using those with Travis and I'm not sure if it will just duplicate the entire build or not.
@defuse notes about the header files, but I can deal with this problem during the integration of this new branch downstream.

Actually meant to submit this PR to a different repo. Sorry.


fix right arrow on last position of cell #2300

goCharRightOrMoveFocusDown and goCharLeftOrMoveFocusDown functions has been added to a core.js
Use Interactive charts tutorial for a test

:+1:


Bug: Automod filter checks sometimes stop working

https://discord.com/channels/150662382874525696/793285213823172628/1275050697758478371

This hasn't come up again, so I'm going to close this for now. Will reopen if it becomes a problem again in the future.
From what I remember about this, on dev I would see the bot randomly stop processing AutoMod-blocked messages—I was never able to reproduce this again.
On prod we found that the bot was missing the Manage Server permission, so it would miss all AutoMod events. Discord's developer docs mention this here, and mod context is here: https://discord.com/channels/150662382874525696/793285213823172628/1276749034547056671. So far the bot has successfully processed all AutoMod events since granting that permission ¯\_(ツ)_/¯


[WIP] Parse BREAD relationships to show labels instead of keys

Basically, it turns this

into this

You can optionally add a new page_slug property to the relationships object in the BREAD details in order to display proper links to relationship records. i.e.:
{
    "relationship": {
        "key": "id",
        "label": "name",
        "page_slug": "admin/users"
    }
}

if no page_slug is provided, then the real "text" (relationship.label) is still being "resolved", but no anchor link is created.

Found a bug when editing, let me dig into it

Bug fixed, the whole BREAD is working now but it was needed to use camelCase relationships (which follows the PSR-1 standard) instead of the actual snake_case ones.

Travis is throwing a
[Symfony\Component\Debug\Exception\FatalErrorException]
  Trait 'TCG\Voyager\Http\Controllers\Traits\BreadRelationshipParser' not fou
  nd

but it is there... (in my fork) How to deal with that? Must it be "manually" created by some maintainer first?

I will investigate that.

Can you link me to the trait? I can't seem to find it either.

@marktopper nvm, I placed it in the wrong folder, my bad.
I'm fixing it and also adding support for formatting dates via row details using Carbon's formatLocalized():
{
    "format": "%A $d $B $Y"
}

I know that should be another PR but I don't want to generate conflict between files, and since Voyager is still in alpha... :roll_eyes:

Alright, everything seems fine.
If someone wants to test it, please, do.
I've added a little changelog to the end of the main post.

Will test it out

@marktopper Thank you! Is there anything I can do regarding to @fletch3555 review?

@Frondor, thats first when merging this into the v0.11 branch.

Also it seems to work like a charm 👍

The parent category dropdown field in the edit category page is not showing the parent category, instead.. it shows the "Main Category" option when using this json option
{
"default": "__null__",
"null": "__null__",
"options": {
"__null__": "Main Category"
},
"relationship": {
"key": "id",
"label": "name"
}
}

I don't know if I understood, but the "Main Category" will show as long as you set the options property.
Anyway, I don't know if it was what you meant but found a bug when the default selected option for this kind of case, wasn't properly calculated.
I already got the fix for this, but can't send a new PR because already have another one "on hold"... I think I have to create a new branch and reset its HEAD but to be honest, I'm not that good at git :D


Integrate Jupyter notebook with GitHub for easy review

Maybe the feature is already integrated by default?
More details at: https://blog.reviewnb.com/how-to-add-comments-to-notebook-diffs-github/

Hello Dr. Cohen-Adad, thank you for the access. To push notebook changes from Google Colab to GitHub, I am using the GitHub integration in Google Colab, which allows me to "Save a copy to GitHub". This uploads the notebook to this repository with a "Open in Colab" badge. Even after clearing outputs before pushing a commit (5a9b793) however, it is still impossible to comment on specific cells in the notebook code in GitHub. The GitHub integration for Google Colab is thus limited.
The article you linked mentions ReviewNB as being a way we can comment on specific notebook cells. I tried it and it works, but you have to write the comments on their website, and they are not accessible from the GitHub interface. Here is the link for the ReviewNB for this repository and this is the comment I made on ReviewNB to test it.
Should we use ReviewNB for commenting on the notebook code? It seems to be the most straightforward way to make comments on specific notebook cells, but having to use a new website just for the comments is a bit annoying. Personally, I think being able to write comments on the commit (and not on a specific notebook cell) is enough for the notebook code.

agreed, let’s stick to comments on github’s commits

@jcohenadad I will close this issue unless you object.


mood and timbre classification

Did you plan to make a mood and timbre model like its used in Essentia?
Or does someone know where to find the date for the classification for mood and timbre, so i could train it myselfe?

I believe you can make a timbre and mood classifier using this already.


vr_box scrap is added

Description

The changes made in this pull request should be briefly described.

Resolves: #640
Checklist

Before submitting this pull request, kindly verify that the ensuing checkpoints have been reached.

[x] Have you adhered to the repository's defined coding convention rules?
[x] Have you updated the 'documentation.md' file with the method/function documentation?
[x] Have you sent a message along with the result or response?
[x] Have you used the try-catch technique?
[x] Has the method/class been added to the documentation (md file)?

Screenshots

Additional Notes/Comments

Any additional remarks or suggestions concerning this pull request are welcome.

I certify that I have carried out the relevant checks and provided the requisite screenshot for validation by submitting this pull request.
I appreciate your contribution.

@nikhil25803 sorry for last PR that i have made as i am try something different like i m try to make multiple branches  in single repo so that's why that i happen here i corrected that in FRESH PR. i highly apologies.


chore(main): release 1.0.6

:robot: I have created a release beep boop
1.0.6 (2024-08-21)
Bug Fixes

setup de build em ARM (10580f0)

This PR was generated with Release Please. See documentation.

:robot: Created releases:

v1.0.6
:sunflower:


feat: implemented the after callback + docs update

 Thank you for your submission, we really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.:x: dryzhkov sign nowYou have signed the CLA already but the status is still pending? Let us recheck it.

@dryzhkov Link your account at opensource.microsoft.com to get rid of the CLA prompt :)


No {replan} variable in planner_prompt in the LLM Compiler example and the wfh/llm-compiler LangShimth's hub prompt template?

Checked other resources

[X] I added a very descriptive title to this issue.
[X] I searched the LangGraph/LangChain documentation with the integrated search.
[X] I used the GitHub search to find a similar question and didn't find it.
[X] I am sure that this is a bug in LangGraph/LangChain rather than my code.
[X] I am sure this is better as an issue rather than a GitHub discussion, since this is a LangGraph bug and not a design question.

Example Code
prompt = ChatPromptTemplate.from_messages([
  ("system", "Given a user query, create a plan to solve it with the utmost parallelizability. Each plan should comprise an action from the following {num_tools} types:
{tool_descriptions}
{num_tools}. join(): Collects and combines results from prior actions.

 - An LLM agent is called upon invoking join() to either finalize the user query or wait until the plans are executed.
 - join should always be the last action in the plan, and will be called in two scenarios:
   (a) if the answer can be determined by gathering the outputs from tasks to generate the final response.
   (b) if the answer cannot be determined in the planning phase before you execute the plans. Guidelines:
 - Each action described above contains input/output types and description.
    - You must strictly adhere to the input and output types for each action.
    - The action descriptions contain the guidelines. You MUST strictly follow those guidelines when you use the actions.
 - Each action in the plan should strictly be one of the above types. Follow the Python conventions for each action.
 - Each action MUST have a unique ID, which is strictly increasing.
 - Inputs for actions can either be constants or outputs from preceding actions. In the latter case, use the format $id to denote the ID of the previous action whose output will be the input.
 - Always call join as the last action in the plan. Say '<END_OF_PLAN>' after you call join
 - Ensure the plan maximizes parallelizability.
 - Only use the provided action types. If a query cannot be addressed using these, invoke the join action for the next steps.
 - Never introduce new actions other than the ones provided."),
  ("placeholder", "{messages}"),
  ("system", "Remember, ONLY respond with the task list in the correct format! E.g.:
idx. tool(arg_name=args)"),
])

def create_planner(
    llm: BaseChatModel, tools: Sequence[BaseTool], base_prompt: ChatPromptTemplate
):
    tool_descriptions = "\n".join(
        f"{i+1}. {tool.description}\n"
        for i, tool in enumerate(
            tools
        )  # +1 to offset the 0 starting index, we want it count normally from 1.
    )
    planner_prompt = base_prompt.partial(
        replan="",
        num_tools=len(tools)
        + 1,  # Add one because we're adding the join() tool at the end.
        tool_descriptions=tool_descriptions,
    )
    replanner_prompt = base_prompt.partial(
        replan=' - You are given "Previous Plan" which is the plan that the previous agent created along with the execution results '
        "(given as Observation) of each plan and a general thought (given as Thought) about the executed results."
        'You MUST use these information to create the next plan under "Current Plan".\n'
        ' - When starting the Current Plan, you should start with "Thought" that outlines the strategy for the next plan.\n'
        " - In the Current Plan, you should NEVER repeat the actions that are already executed in the Previous Plan.\n"
        " - You must continue the task index from the end of the previous one. Do not repeat task indices.",
        num_tools=len(tools) + 1,
        tool_descriptions=tool_descriptions,
    )

    def should_replan(state: list):
        # Context is passed as a system message
        return isinstance(state[-1], SystemMessage)

    def wrap_messages(state: list):
        return {"messages": state}

    def wrap_and_get_last_index(state: list):
        next_task = 0
        for message in state[::-1]:
            if isinstance(message, FunctionMessage):
                next_task = message.additional_kwargs["idx"] + 1
                break
        state[-1].content = state[-1].content + f" - Begin counting at : {next_task}"
        return {"messages": state}

    return (
        RunnableBranch(
            (should_replan, wrap_and_get_last_index | replanner_prompt),
            wrap_messages | planner_prompt,
        )
        | llm
        | LLMCompilerPlanParser(tools=tools)
    )

Error Message and Stack Trace (if applicable)
Error: Input variables `replan` are not used in any of the prompt messages.

Description
I'm trying to use the llm compiler example code, but I get the error of 'replan' variable not in the planner_prompt. Checked the wfh/llm-compiler LangShimth's hub template, and I don't see the variable either. __
System Info
windows

Thank you for raising this issue - this PR https://github.com/langchain-ai/langgraph/pull/1517 should contain the fix.

I appreciate the quick fix on this issue, I was also struggling with it. I have a closely related follow-up question. In the revised code, a replan input variable is still being passed to the base_prompt (see here), and the base_prompt doesn't have an input variable called replan. Is the replan functionality not included in this version? Also, a side question, why isn't base_prompt.partial erroring when being passed a variable it shouldn't recognize?

@vbarda thanks for the response. Do you have the ETA for this feature? I must admit that this feature would be incredibly helpful for my use case :)


Wallpapers not updated on json file update

App keeps on says on every refresh and app launch "Unable to check new wallpapers" I have used G drive and Github link both for json file, Only thing solves this by clearing data of app.

That means there's something wrong with your json or your json doesn't match the app config

I am using default config, JSON file refreshes but only on clearing app data, If you want to see my JSON file then let me know where to send it. I will be happy if the fault is mine.

Send to my email or hangouts

Can you please close the Issue, Issue is with URL not with app,
App not working properly with the following URL
https://drive.google.com/uc?id=xxxxxxxxxxxxxxxx
https://github.com/xxxx/xxxx/xxxx.json?raw=true

Same JSON file properly works without any error with the following link
https://raw.githubusercontent.com/xxxxx/xxxxx/xxxxx.json
I have also sent you email JSON file on<EMAIL_ADDRESS>please ignore the email. Thanks


Stp/interface

Self-explanatory, updated the UI according to our new changes :)

I got a segfault with this stack trace after running your branch:

Branch is presumably failing because you committed an unresolved merge conflict xD

Resolved.

The plays tab does not segfault anymore :+1:, however, it is also currently not displaying any useful information :stuck_out_tongue_closed_eyes:. It should display the play name, score, and if possible also their invariants?

Why is help needed for this?

It segfaults in the invariants, probably due to some sort of data race for world/robots/field. I think most segfaults stem from robots that don't exist anymore

LGTM. Only wondering why in a previous PR getName() was determined to be char *. Why not use std::string or QString?

I don't want O(n^2) allocations every tick.


EDU-1053 Fix media playing out of range

Closes https://educandu.atlassian.net/browse/EDU-1053

With these changes, all Youtube videos that have a playback range with start time code other than 0, start initially muted. Sound starts playing as soon as the first pause/stop/reset has been trigger (not when the volume changes, though). I couldn't find out why that is, because the code that sets the volume on the player is actually called, it just seems to not have any effect.

With these changes, all Youtube videos that have a playback range with start time code other than 0, start initially muted. Sound starts playing as soon as the first pause/stop/reset has been trigger (not when the volume changes, though). I couldn't find out why that is, because the code that sets the volume on the player is actually called, it just seems to not have any effect.

That's a really good find, thanks! 😳 At some point I stopped testing with audio thinking seeing the video play is enough to test range, but I did not expect this situation!
Seems it's the same case of wasPlayTriggeredOnce, where volume is not picked up. I have identified the broken scenarios in which the youtube API no longer behaves as expected and I think I managed to adjust to those cases without side-effects this time 🤞  I'm very glad the html5 player is separate given all this!

I tested all scenarios from yesterday and everything works as it should. It seems to be very stable. Thanks for all the investigations into these tricky weird behaviors, great job!!! :+1: :heart_eyes:


⚠ Bofrost.be has degraded performance

In e7a8d9f, Bofrost.be (https://www.bofrost.be) experienced degraded performance:

HTTP code: 200
Response time: 1349 ms

Resolved: Bofrost.be performance has improved in 5a077e8.


GH1692: Log more diagnostics from Roslyn.

Fixes #1692

@mholo65 could you address feedback and rebase against latest develop?

@mholo65 your changes have been merged, thanks for your contribution 👍


PYI-403: Provide credential-issuer config to lambda

To be merged with https://github.com/alphagov/di-ipv-config/pull/53

Proposed changes
What changed
Adds terraform to set an env variable on the credential issuer lambda
that will contain a base64 encoded string of a yaml file defined in the
di-ipv-config repo.
Co-authored-by: Dan Pomfret<EMAIL_ADDRESS>Issue tracking

PYI-403

Pivoting to SSM instead of env vars


lib/misc.zsh: fix parse error near `then' error

fix parse error
$HOME/.oh-my-zsh/lib/misc.zsh:3: parse error near then'

Thanks for contributing, however we already have a gazillion pending PRs for that.

Sorry for my duplicate PR.

thanks!