Add support for modern schema stitching or Federation 2

graphql-tools v7 supports a modern stitching API which is pretty similar to the Federation 2 spec. Could you implement one of these?
They are more powerful and flexible than what's currently available.

Hey. It's definitely possible.
You should also have a look at my other Project, WunderGraph, which allows you to merge and stitch many different services with different protocols. Here's a demo: https://github.com/wundergraph/wundergraph-demo
We've also built a package manager for APIs, allowing teams to easily share APIs across other teams and then automatically "merge" them with namespacing, so that you don't run into naming collisions: https://hub.wundergraph.com/
If you'd like to discuss how modern stitching or federation can be supported as well, I'd love to have a conversation. Here's my calendly link so we can have a chat if you want: https://calendly.com/jens-neuse

@jensneuse could you hint folks that may want to contribute this to where they might get started?


Register stubs with an ip not localhost

Fixed in https://github.com/spring-cloud/spring-cloud-contract/commit/d510e8bdf3dbfd1e2e07721c850c5169c1ef1038


Unit testing, added data types & bugfixes

Please review the code. A lot of changes has happened. I'm sorry for all the unnecessary auto indentation (especially in package.json), atom-beautifier got a little out of hand. That said, here's what I've done:

Implemented unit tests using Karma and Jasmine
Fixed the typeof child === 'array' bug to Array.isArray(child)
Implemented type() function for easier detection of complex objects
Added support for Uint8Array (typed arrays) to base64 decoding & unit test
Fixed promise chain bug when calling callMethod()

I've implemented this for my personal project and fully understand if this is an inappropriate modification of the code. In that case please ignore my PR. Thank you for your great work :+1:

Thank you for your great work ! Your PRs have been merged ! :+1:


Include Documentation on what happens when the contents of ZIP file are changed

Hello!
So, is it possible to add clarification on what would happen if the contents of the ZIP file are changed which is already mounted on a Function/Web App? For example, the app has mounted mytest.zip file. Now, after some time, I go ahead and re-upload the mytest.zip file with different content. What would happen then? Do I need to do something or the App automatically realizes that the contents have changed and it needs to do a reboot?

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

ID: cbd2779f-df70-05e1-0589-8220f850a44f
Version Independent ID: c1118090-18b5-f630-d4b0-c588328a4b5a
Content: Run your Azure Functions from a package
Content Source: articles/azure-functions/run-functions-from-deployment-package.md
Service: azure-functions
GitHub Login: @ggailey777
Microsoft Alias: glenga

Hi @blueelvis Thank you for your feedback! We will investigate and get back to you with our findings.

Hey @blueelvis After zip deployment completes, it would have deleted existing application files prior to placing the content in the zip file that you've deployed. Restart is also part of the process as well and you shouldn't need to be manually restarting your app. You can learn more specific and explore other features of zip deployment here: Deploying from a zip file Hope this helps.

@mike-urnun-msft - Hey Mike! My bad on this. I meant in the context of "Run from Package" feature which was made available recently. The page which is linked at the top also talks about that only. Since the ZIP file is mounted as read-only in this feature, what happens when the contents of this ZIP file are changed? Will the read-only mount in the Web App change as well?

Hey @blueelvis Sorry for delay in response. If you're still curious as to what exactly happens with "Run from Package," please review this issue which states following:
"With all the other deployment flows, the App is running off loose files in your wwwroot, and deploying a new version means making changes (additions/deletions/updates) to those existing files, while the site is running. And if you're not careful, you could end up with locked files, and with running a half-baked app."
Hope this helps - we will now proceed to close this thread. If there are further questions regarding this matter, please reopen it and we will gladly continue the discussion.


cdev configure has undefined index location

Below is an example of how to recreate, this is run on an empty dir
$ cdev configure
Project config file cdev/cdev.yml not found. Run cdev configure
Loading config file /Users/garethmidwood/.cdev/cdev.yml
Use wrapper repository? y/N : [Current: No]
Code directory : [Current: src]
===== Creating src directory
Creating src directory
src directory created
===== Moving files to src directory
No files to move
Environment type : [Current: Docker]
  [docker] Docker
 >
Framework: [Current: None]
  [custom   ] Custom
  [wordpress] WordPress
  [magento1 ] Magento 1
  [drupal7  ] Drupal 7
  [drupal8  ] Drupal 8
  [magento2 ] Magento 2
 > Custom
PHP Notice:  Undefined index: location in phar:///Users/garethmidwood/.cdev/cdev.phar/src/Creode/Cdev/Command/Cdev/ConfigureCommand.php on line 267

Notice: Undefined index: location in phar:///Users/garethmidwood/.cdev/cdev.phar/src/Creode/Cdev/Command/Cdev/ConfigureCommand.php on line 267
Backup Location: [Current: ]
  [s3    ] s3
  [server] server

Duplicate of #68


FE: hiring page update

- React engineer, responsible for fronend app and many new nft interfaces, requires blockchain understanding
- Bot engineer to handle all aspects of the bot and dev features
- UX engineer/designer - keep apps on brand and fix bugs
- Backend engineer - strong node experience to glue the different parts of our stack together. not devops, we aren't doing complicated infrastructure yet

Should also polish it with more prose in each description.

https://github.com/webaverse/webaverse.com/blob/e2c8e2adc34c238d68f88751a831f4f31b3e0bf0/pages/hiring.js#L45

We could also add trailer-style screenshots on this page while the site is shut down.

I did this.


AddXyzSignIn(): new auth startup API

Consolodated review of tentitive plans around startup changes
Related PRs: https://github.com/aspnet/Security/pull/1550
https://github.com/aspnet/Identity/pull/1442
// Identity (use defaults cookies)
services.AddIdentityCore<User>()
   .AddEntityFrameworkStores<DbContext>();

// use identity authentication defaults
services.AddAuthentication(IdentityConstants.IdentityPolicy)
   // adds sign in manager and adds the identity cookies
   .AddIdentitySignIn<User>(); // Generic needed if not chained from AddIdentity

// Using a single social auth provider (Open question where would this live?  Or add cookie dep to each?)

// policy setting forward default to Cookie
services.AddAuthentication(CookieAuthenticationDefaults.AuthenticationScheme)
     // Adds a google and cookie (if one doesn't exist), and sets challenge to google
     .AddGoogleSignIn();
     // One per auth scheme (Facebook, OAuth, OpenIdConnect, Twitter, MSA)

Thoughts? @Tratcher @davidfowl @DamianEdwards @ajcvickers

Use OIDC for your single provider sample, that's the only one that has a stand-alone template.
What is the content of GoogleDefaults.Policy?
Splitting up Identity is nice.

All the social policies will look similar, with default to cookies and challenge to the external auth, the caveat is that only one of these sign in methods should be called in startup, since it only works well as the default
ForwardDefault = "Cookies"
ForwardChallenge = "Google"

Wait, what object is .Policy?

its just a string that is the name of the auth scheme that is to be the default, which we could choose to be either "Google", or we could choose to use the default cookies everywhere as well.
so we could always have AddAuthentication(CookieAuthenticationDefaults.AuthenticationScheme) for all of the social providers instead.

Keeping Cookies as the default is less fragile when you start changing or adding providers.

Yeah I agree, updated the example to just do that

@javiercn can you also take a look at @HaoK 's PR because you've had similar ideas before?

Tentatively placing in the 2.1.0-preview1 milestone in case we reach an agreement on the design. If not, we should move it later.

Moving back to 2.2 so we have more time to design how we want this to look


[REQUEST] git grep similar to :Ggrep

git grep the repo and provide a way to navigate back and forth on the result items

There are already a couple of packages for git grep. Check out git-grep and atom-fuzzy-grep


[Monitoring V2] Missing tls_config and authentication fields in receivers forms

The monitoring v2 receivers UI is missing the following fields:
Email

tls_config

Webhook

http_config.tls_config
http_config.basic_auth
http_config.bearer_token

These are important for enterprise customers, since they usually use their own CAs and authentication.

@bashofmann
does this cover all of the fields you were looking for? Will the cert file paths be a problem?

Having this as a file path is not, ideal since the certificates would need to be mounted in the alertmanager pods manually. You could add additional volumes and volume mounts to alertmanager  when installing the monitoring (https://github.com/prometheus-community/helm-charts/blob/main/charts/kube-prometheus-stack/values.yaml#L542-L546), but it would be nicer if you could directly reference a secret with the certificates in the receiver configuration.
Though we would likely need to update the prometheus-operator and then use AlertmanagerConfigs for this:
https://github.com/prometheus-operator/prometheus-operator/blob/8497a67b735e65ad779ed19c95a17ffd1c8fbb64/pkg/apis/monitoring/v1alpha1/alertmanager_config_types.go#L472
https://github.com/prometheus-operator/prometheus-operator/blob/8497a67b735e65ad779ed19c95a17ffd1c8fbb64/pkg/apis/monitoring/v1/types.go#L963-L974
@ aiyengar2 what do you think?

@bashofmann the paths were my biggest concern. However, I think the paths are the only option for this release. Is it worth delivering if it's the paths with manually mounting?

@bashofmann  There's a larger discussion of this tied to the conversation following https://github.com/rancher/rancher/issues/24272#issuecomment-696041092 with a placeholder UI ticket related to this in https://github.com/rancher/dashboard/issues/1532.
re:

Having this as a file path is not, ideal since the certificates would need to be mounted in the alertmanager pods manually. You could add additional volumes and volume mounts to alertmanager  when installing the monitoring (https://github.com/prometheus-community/helm-charts/blob/main/charts/kube-prometheus-stack/values.yaml#L542-L546), but it would be nicer if you could directly reference a secret with the certificates in the receiver configuration.

The way to mount these secrets would be to provide it as Additional Secrets to the Alertmanager Pod (I believe we have a UI field for this already), which will be mounted at /etc/alertmanager/secrets/. This is described in more detail in the workaround described in https://github.com/rancher/rancher/issues/24272#issuecomment-696299391.
From a UI perspective, with the current release the best thing we can do imo is to leave some sort of help text that explains this process (or maybe update the docs if they don't mention this).
But the core issue here, as you described, is that there is no way to add any additional secrets without triggering a Helm upgrade on the entire monitoring chart and following this process until we move to having AlertmanagerConfig CRDs, which is blocked on https://github.com/rancher/rancher/issues/29871.

I think it's better to have these fields available, even if the current process is not ideal and may change when we move to AlertmanagerConfig CRDs. A short help text in the UI would be great then.

Tracking the documentation here https://github.com/rancher/dashboard/issues/2400

Reopen with the following 2 issues.
Email
Issue 1: There is no http_config section under email_config
ref https://prometheus.io/docs/alerting/latest/configuration/#email_config
so instead of
email_configs:
    - http_config:
        tls_config:
          ca_file: ca
          cert_file: cer
          key_file: key
      send_resolved: true
	  ...

it should be
email_configs:
    - tls_config:
      	ca_file: ca
      	cert_file: cer
      	key_file: key
  	send_resolved: true
	...

otherwise, the configuration file can not be loaded with the following error in the logs of workload alertmanager-rancher-monitoring-alertmanager
level=error ts=2021-02-25T20:57:38.281Z caller=coordinator.go:124 component=configuration msg="Loading configuration file failed" file=/etc/alertmanager/config/alertmanager.yaml err="yaml: unmarshal errors:\n  line 7: field http_config not found in type config.plain"

Webhook
issue 2: bearer_token should be the same level as basic_auth
ref https://prometheus.io/docs/alerting/latest/configuration/#http_config
instead of
        basic_auth:
          username: john
          password: lkadfjalkfafj
          bearer_token: tokentokentokentokentokentoken

it should be
        basic_auth:
          username: john
          password: lkadfjalkfafj
        bearer_token: tokentokentokentokentokentoken

error in the logs of workload alertmanager-rancher-monitoring-alertmanager
level=error ts=2021-02-25T21:19:04.306Z caller=coordinator.go:124 component=configuration msg="Loading configuration file failed" file=/etc/alertmanager/config/alertmanager.yaml err="yaml: unmarshal errors:\n  line 35: field bearer_token not found in type config.plain"

Note
basic_auth, bearer_token and bearer_token_file options are mutually exclusive, while we do not enforce this in the UI.

Based on where we are, for v2.5.6, let's revert this enhancement for now until we can fix it properly.

@jiaqiluo After validating that these fields are now hidden, can you move this issue back To Triage with the 2.5.7 milestone

on v2.5-head 1b5aad6
Confirm that

the UI for creating webhook and email receiver is rolled back, new fields are hidden
creating webhook and email receiver continue working

Here is how it looks like now on v2.5-head

Move the issue to the milestone v2.5.7

Reopen the issue because the adding notifier feature is broken on v2.5-head 4e48b8a9 with the latest UI
After adding any notifier:

no notifier will show in the UI even after a refresh
the following error shows in the logs of the pod alertmanager-rancher-monitoring-alertmanager-0:

level=info ts=2021-03-12T18:34:46.007Z caller=coordinator.go:119 component=configuration msg="Loading configuration file" file=/etc/alertmanager/config/alertmanager.yaml
level=error ts=2021-03-12T18:34:46.007Z caller=coordinator.go:124 component=configuration msg="Loading configuration file failed" file=/etc/alertmanager/config/alertmanager.yaml err="yaml: unmarshal errors:\n  line 2: field resolve/timeout not found in type config.plain"

the following error will show in the UI if I try to add any new notifier

Reopen the issue because the adding notifier feature is broken on v2.5-head 4e48b8a9 with the latest UI
After adding any notifier:

no notifier will show in the UI even after a refresh
the following error shows in the logs of the pod alertmanager-rancher-monitoring-alertmanager-0:

level=info ts=2021-03-12T18:34:46.007Z caller=coordinator.go:119 component=configuration msg="Loading configuration file" file=/etc/alertmanager/config/alertmanager.yaml
level=error ts=2021-03-12T18:34:46.007Z caller=coordinator.go:124 component=configuration msg="Loading configuration file failed" file=/etc/alertmanager/config/alertmanager.yaml err="yaml: unmarshal errors:\n  line 2: field resolve/timeout not found in type config.plain"

the following error will show in the UI if I try to add any new notifier

@jiaqiluo regarding your last comment.

Whenever you reference notifier do you actually mean receiver? I just want to make sure there isn't some nuance I'm missing.
I'm not seeing issues 2 or 3 as you can see from my gif and screenshot below.  I'm running off of master.

Here you can see the next log messages after creating the slack receiver:

The issue is not seen on the latest v2.5-head 38649e2 anymore.
The feature is validated and those 2 issues mentioned at this comment are fixed.


Limits my NKRO USB keyboard to 6KRO

I use a USB keyboard that is able to register at least 23 simultaneous keypresses. Probably more, but I don't use more than 23. Since I upgraded Karabiner from 11.x.x to 12.0.0, my applications only receive exactly six letters simultaneously when I press and release more while Karabiner-Elements is running. After quitting Karabiner-Elements, everything (including Karabiner-Eventviewer) works as expected and registers the keys.

I tried beta release 12.0.3 as suggested in another issue which I thought might be related, but that did not fix it. Will try to find how I can revert to 11.x.x for now.

Reverting to 11.6.0 works around my issue for now.

v12.0.4 have an issue that kext is not loaded properly on macOS 10.12.
Please use v12.0.5 (the latest beta version) if you are using macOS Sierra.

I think I was, yeah. Will try, thanks for the reply!

I can confirm that the issue is gone now that I've used that button to upgrade to 12.0.5. Thank you! 🎉


Update Redis Config Options

Creating this PR to reopen the discussion about TLS. There doesn't seem to be a reasonable default for where the certs would live. Although, otel does allow that as a valid config option for TLS.

TLS related convention has been established offline. https://github.com/GoogleCloudPlatform/ops-agent/pull/320 has implemented common utils for this, and the doc was shared offline.
Next step for this PR:

Rebase off master to pick up the change in the PR above
Refactor it to use the common utils

The default TLS for Redis is insecure: true. https://redis.io/topics/encryption

Failures are related to couchdb and tomcat


Doryani's Invitation (Fire ver.) lowers fire damage

Doryani's Invitation (Fire version) lowers your hits and dps (burning damage is ok) while using it with Kaom's Heart (Flickerstrike Oro's Sacrifice build). Without Kaom's Heart it raises dps as supposed, as well as Kaom's Heart itself. The build link: https://pastebin.com/yxREuLCu

With Doryani's Invitation equipped, your Fire Resistance is no longer your highest resistance, thus preventing The Wise Oak from boosting your DPS.


Fix/17966 and 17967

Details

Here is the flow when we open 2 tabs and logout on first tab:

call logout API on first tab
clear onyx data on first tab
sync data on second tab
that makes the components on second tab re-render (ReportScreen)
call API OpenReport, but at that time the session is expired

We should remove Session first before signing out. We also should remove Credential first to prevent second tab back to magicCode page (just a moment).
Cleaning up reconnectApp callback in  AuthScreen to prevent re-call ReconnectApp API in second tab
Fixed Issues

$ https://github.com/Expensify/App/issues/15321
$ https://github.com/Expensify/App/issues/17967
$ https://github.com/Expensify/App/issues/17966
Tests

Verify bug 17966

Open the app in the browser
Open another tab in the same browser
Log out from one of the tabs
Verify that in other tap the app is logged out.
Log in with the same user
Tap "Didn't receive the magic code"
Verify infinite spinner does not appear in login page after tap didn't receive a magic code

Verify bug 17967

Open the app in the browser
Open another tab in the same browser
Disable the internet
Log out from one of the tabs
Verify that in other tab the app is not crashed and logged out to the login page.
Verify Skeleton does not appear for a while before log out automatically on a second tab
Login in with the same user
Verify everything works as expect

[x] Verify that no errors appear in the JS console

Offline tests

Same as above
QA Steps

Verify bug 17966

Open the app in the browser
Open another tab in the same browser
Log out from one of the tabs
Verify that in other tap the app is logged out.
Log in with the same user
Tap "Didn't receive the magic code"
Verify infinite spinner does not appear in login page after tap didn't receive a magic code

Verify bug 17967

Open the app in the browser
Open another tab in the same browser
Disable the internet
Log out from one of the tabs
Verify that in other tab the app is not crashed and logged out to the login page.
Verify Skeleton does not appear for a while before log out automatically on a second tab
Login in with the same user
Verify everything works as expect

[ ] Verify that no errors appear in the JS console

PR Author Checklist

[x] I linked the correct issue in the ### Fixed Issues section above
[x] I wrote clear testing steps that cover the changes made in this PR

[x] I added steps for local testing in the Tests section
[x] I added steps for the expected offline behavior in the Offline steps section
[x] I added steps for Staging and/or Production testing in the QA steps section
[x] I added steps to cover failure scenarios (i.e. verify an input displays the correct error message if the entered data is not correct)
[x] I turned off my network connection and tested it while offline to ensure it matches the expected behavior (i.e. verify the default avatar icon is displayed if app is offline)
[x] I tested this PR with a High Traffic account against the staging or production API to ensure there are no regressions (e.g. long loading states that impact usability).

[x] I included screenshots or videos for tests on all platforms
[x] I ran the tests on all platforms & verified they passed on:

[x] Android / native
[x] Android / Chrome
[x] iOS / native
[x] iOS / Safari
[x] MacOS / Chrome / Safari
[x] MacOS / Desktop

[x] I verified there are no console errors (if there's a console error not related to the PR, report it or open an issue for it to be fixed)
[x] I followed proper code patterns (see Reviewing the code)

[x] I verified that any callback methods that were added or modified are named for what the method does and never what callback they handle (i.e. toggleReport and not onIconClick)
[x] I verified that comments were added to code that is not self explanatory
[x] I verified that any new or modified comments were clear, correct English, and explained "why" the code was doing something instead of only explaining "what" the code was doing.
[x] I verified any copy / text shown in the product is localized by adding it to src/languages/* files and using the translation method

[x] If any non-english text was added/modified, I verified the translation was requested/reviewed in #expensify-open-source and it was approved by an internal Expensify engineer. Link to Slack message:

[x] I verified all numbers, amounts, dates and phone numbers shown in the product are using the localization methods
[x] I verified any copy / text that was added to the app is grammatically correct in English. It adheres to proper capitalization guidelines (note: only the first word of header/labels should be capitalized), and is approved by marketing by adding the Waiting for Copy label for a copy review on the original GH to get the correct copy.
[x] I verified proper file naming conventions were followed for any new files or renamed files. All non-platform specific files are named after what they export and are not named "index.js". All platform-specific files are named for the platform the code supports as outlined in the README.
[x] I verified the JSDocs style guidelines (in STYLE.md) were followed

[x] If a new code pattern is added I verified it was agreed to be used by multiple Expensify engineers
[x] I followed the guidelines as stated in the Review Guidelines
[x] I tested other components that can be impacted by my changes (i.e. if the PR modifies a shared library or component like Avatar, I verified the components using Avatar are working as expected)
[x] I verified all code is DRY (the PR doesn't include any logic written more than once, with the exception of tests)
[x] I verified any variables that can be defined as constants (ie. in CONST.js or at the top of the file that uses the constant) are defined as such
[x] I verified that if a function's arguments changed that all usages have also been updated correctly
[x] If a new component is created I verified that:

[x] A similar component doesn't exist in the codebase
[x] All props are defined accurately and each prop has a /** comment above it */
[x] The file is named correctly
[x] The component has a clear name that is non-ambiguous and the purpose of the component can be inferred from the name alone
[x] The only data being stored in the state is data necessary for rendering and nothing else
[x] For Class Components, any internal methods passed to components event handlers are bound to this properly so there are no scoping issues (i.e. for onClick={this.submit} the method this.submit should be bound to this in the constructor)
[x] Any internal methods bound to this are necessary to be bound (i.e. avoid this.submit = this.submit.bind(this); if this.submit is never passed to a component event handler like onClick)
[x] All JSX used for rendering exists in the render method
[x] The component has the minimum amount of code necessary for its purpose, and it is broken down into smaller components in order to separate concerns and functions

[x] If any new file was added I verified that:

[x] The file has a description of what it does and/or why is needed at the top of the file if the code is not self explanatory

[x] If a new CSS style is added I verified that:

[x] A similar style doesn't already exist
[x] The style can't be created with an existing StyleUtils function (i.e. StyleUtils.getBackgroundAndBorderStyle(themeColors.componentBG))

[x] If the PR modifies code that runs when editing or sending messages, I tested and verified there is no unexpected behavior for all supported markdown - URLs, single line code, code blocks, quotes, headings, bold, strikethrough, and italic.
[x] If the PR modifies a generic component, I tested and verified that those changes do not break usages of that component in the rest of the App (i.e. if a shared library or component like Avatar is modified, I verified that Avatar is working as expected in all cases)
[x] If the PR modifies a component related to any of the existing Storybook stories, I tested and verified all stories for that component are still working as expected.
[x] If a new page is added, I verified it's using the ScrollView component to make it scrollable when more elements are added to the page.
[x] If the main branch was merged into this PR after a review, I tested again and verified the outcome was still expected according to the Test steps.
[x] I have checked off every checkbox in the PR author checklist, including those that don't apply to this PR.

Screenshots/Videos

Web

https://user-images.githubusercontent.com/113963320/234586183-3d22a7e8-2d1d-4b8f-8dbd-f679ece12194.mp4

Mobile Web - Chrome

https://user-images.githubusercontent.com/113963320/234599207-f170e66c-39da-4598-8436-427072a75f57.mp4

Mobile Web - Safari

https://user-images.githubusercontent.com/113963320/234592978-7dc07b97-573e-4e2d-9096-efd58f991ec3.mp4

Desktop

iOS

Android

@sobitneupane @roryabraham I've created the PR to fix some regressions. Can you please help review? Thanks

I can see some issues in mWeb-Safari. But these issues are not always reproducible. I was able to reproduce them once or twice.

When I logout, Magic code page appears for a second or so.

https://user-images.githubusercontent.com/25876548/234817408-6276751b-6561-4394-8319-2388e6fa26ef.MP4

When I logout, error (Incorrect Magic code) shown on login screen for few seconds.

Unread Indicator reappears.

@sobitneupane I find the problem. I reseted both credential and session, that can make session is updated on second devices first -> redirect to signin page(at that time we still have stale credential) -> magic code screen is shown for a second.
That why we I add a new field (email) in session when the API BeginSignIn calls successfully. And redirect to magic code screen if we have the email in session, so we can make sure when we clear session, the email screen is shown immediately.
Here is my result:
https://user-images.githubusercontent.com/113963320/234844782-7b6b8fd0-6fc8-41ad-b0ac-1fa8bcf729dc.mp4

@tienifr Thanks for the update
Following issue is still reproducible.

Unread Indicator reappears.

https://user-images.githubusercontent.com/25876548/235141636-e1bf3c90-a846-4f20-9f72-56a9e2785578.mp4

@sobitneupane I want to explain the issue here:

User opens 3 tabs
Login in tab 1
API OpenApp in tab 1 is called first
Update onyx data from OpenApp API
Sync onyx data to other tabs
Logout in tab 1
API OpenApp in tab 2 is called successfully
Update onyx data from OpenApp API

That why we see the unread Indicator reappears.
Please check the video below:
https://user-images.githubusercontent.com/113963320/235208842-35eaf141-5867-4f14-ace0-e7a606d53a61.mp4
I also found another problem when users sign in with magic code:

User opens 3 tabs
Login in tab 1
API SigninUser is pushed to request queue
Sync request queue to other tabs
Request queue in tab 2, 3 has SigninUser
Call SigninUser API successfully in tab 1
Remove SigninUser from queue (tab 1)
Sync request queue to other tabs
Switch to tab 2
Flush request queue in tab 2 (at that time the SigninUser is still in queue)
SigninUser is called 1 more time

Do you think it is the problem of our architecture when sync onyx data between multiple tabs? If there is, I think it's out of PR's scope? Thanks

@tienifr This shows that our latest changes in Onyx should have probably introduced this issue while trying to solve other. But it is a small issue and might not occur in real use case. @roryabraham What's your thought on this issue?

@tienifr This shows that our latest changes in onyx has created this issue while trying to solve other. Let's get this fixed, else it will create some unwanted issues if onyx doesn't get cleared properly.

@sobitneupane I've updated my PR. The problem here is because of sync process between tabs (After clearing IndexDB in tab 1, API results come from tab 2 can update IndexDB)

On Onyx repo:

abort pending Onyx.setItem when we clear data
https://github.com/Expensify/react-native-onyx/pull/248/files

On App repo:

As we call OpenApp API in both tabs so I think we also should call Onyx.clear() in all tabs. When users sign-out, I update the session data to {isLogginOut:true}, this value will be synced to other tabs then in SignInRedirect.js we will execute Onyx.clear()
Here's the result. Please tell me what your though is. Thanks
https://user-images.githubusercontent.com/113963320/236821202-b2ac0e03-c0c4-4b94-a775-269e22a7618a.mp4

Those issues were not existent before

I agree because we can't test it before, the second tab will be crashed when logging out in first tab.
After spending time to understand onyx and the root cause, I can't find the solution to solve the issue in onyx. (The root cause is response of OpenApp API in tab 2 updates IndexDB after logging out in tab 1)
Can anyone help me this edge case cc @sobitneupane @roryabraham? Thanks

I agree because we can't test it before, the second tab will be crashed when logging out in first tab.

We can and I did test it with these changes.

@tienifr One thing that you can do that I think will help with the problem is by updating this code in User.subscribeToUserEvents:
diff --git a/src/libs/actions/User.js b/src/libs/actions/User.js
index fbe3f691cd..3ee87809c1 100644
--- a/src/libs/actions/User.js
+++ b/src/libs/actions/User.js
@@ -21,6 +21,7 @@ import * as ReportActionsUtils from '../ReportActionsUtils';
 import DateUtils from '../DateUtils';
 import * as Session from './Session';
 import * as PersonalDetails from './PersonalDetails';
+import * as ActiveClientManager from '../ActiveClientManager';

 let currentUserAccountID = '';
 let currentEmail = '';
@@ -579,6 +580,10 @@ function subscribeToUserEvents() {
     // Receive any relevant Onyx updates from the server
     PusherUtils.subscribeToPrivateUserChannelEvent(Pusher.TYPE.ONYX_API_UPDATE, currentUserAccountID, (pushJSON) => {
         SequentialQueue.getCurrentRequest().then(() => {
+            if (!ActiveClientManager.isClientTheLeader()) {
+                Log.client('Skipping Onyx update event because client is not the leader');
+                return;
+            }
             Onyx.update(pushJSON);
             triggerNotifications(pushJSON);
         });

That should help with some edge cases where an Onyx update is received by a background tab when the leader tab is already logged out. It doesn't seem to fully resolve all the issues though.

Otherwise, I'm also struggling to find the best way to solve these problems. Some things I've tried are:

Theory: the cause of this problem might be that other tabs have sent OpenApp requests that are still in flight when we sign out on the first tab, so clearing those out would prevent their callbacks from inserting data into Onyx.

Solution: Update cleanupSession so that it also clears the network request queues and any pending HTTP requests

theory: CleanupSession is called when AuthScreens unmounts. That was taking too long or not happening for background tabs, so pending requests are not cancelled and their data is inserted into Onyx

solution: Use the BroadcastChannel API to quickly call CleanupSession in other tabs when SignOut is call on any tab

theory: The LogOut API command is cancelled before it finishes, and this was creating some problems for other tabs

solution: Use makeRequestWithSideEffects to force the LogOut API command to finish before clearing all the session data and redirecting (bad practice, pulling at straws at this point). Also tried clearing the main and sequential request queues before calling LogOut.

theory: The problem is happening at the Onyx layer – Onyx.update is called in one tab at the same time as Onyx.clear in other tabs, and that causes a race condition where sometimes Onyx.clear finishes first and another times other Onyx updates finish first.

solution: TBD, but let's discuss more

abort pending Onyx.setItem calls when we clear data

I briefly looked at this PR and seems like maybe a step in the right direction, but I don't know if it will solve the problem across multiple tabs. I don't think the SyncQueue is shared between tabs.

As we call OpenApp API in both tabs so I think we also should call Onyx.clear() in all tabs. When users sign-out, I update the session data to {isLogginOut:true}, this value will be synced to other tabs then in SignInRedirect.js we will execute Onyx.clear()

I see this is your proposed solution for syncing between tabs.
I kind of prefer the idea of fixing this synchronization problem in the Onyx layer itself, like @sobitneupane suggestion. That way, we don't have to manage it so carefully in the app space. Solving the problem in Onyx also would mean that we could get a more generic solution that works in all cases and in different apps.
One idea to synchronize Onyx changes across tabs is to create a single shared Onyx SyncQueue, that's shared between tabs using the BroadcastChannel API. That way, if Onyx.clear is called on any of the tabs, we could abort queued set/merge operations in all the other tabs, clear the data from disk, and update the subscribers across all tabs.
Overall I think we should talk about this more in slack, but it's very late for me here and I need a clearer head to gather my thoughts.

@roryabraham What is our next step? Can you please open Slack thread

@roryabraham any updates here?

Sorry for the radio silence @tienifr, this is a bit of a complicated problem, but hard to prioritize since it's such an edge case. We've been discussing it in this slack thread, but that's an internal thread.
As stated here, I think we should pay you out for this PR, then take a step back and try to evaluate the problem more holistically.
I could really use some help nailing down a solid problem statement for the root cause of the issues we were seeing here, because I'm not really confident in my understanding there

@tienifr I'm going to close this out for now. We'll continue in the issue


Can't use locales

Starting today I can no longer import locales. The following works in 1.5.4:
import { en, sv } from "vuejs-datepicker/dist/locale";

Using 1.6.1 Vue provides the following error as output:
Error: Can't resolve 'vuejs-datepicker/dist/locale' in '[my Vue component]'

This makes sense since I can't find that file in my /node_modules folder. Did I miss something when upgrading to 1.6.1?

@oherik beat me to reporting the issue, but I'm running into the same thing.
It seems de index.js file in the dist/locale folder is gone.

I have to use this to make it work as the index.js disappeared from the dist/locale
import {en} from 'vuejs-datepicker/dist/locale/translations/en'
import {fr} from 'vuejs-datepicker/dist/locale/translations/fr'
import {nl} from 'vuejs-datepicker/dist/locale/translations/nl'

Good spot guys, thanks - does 1.6.2 work for you?

Good spot guys, thanks - does 1.6.2 work for you?

Yep, it seems to be working fine now. Thanks!

still not working for me


vertical align within a div

More a question than an issue: In the framework, is there a way to vertically align say an image within a div?  I can't find anything....

The easiest way would probably be to use the flex utility classes on the container. Using flex flex-center will center vertically and horizontally, while flex items-center will only center vertically.
https://codepen.io/peiche/pen/dxdbrJ

ty v much, that's just perfect!


Rename immediately after adding a new folder

Users probably want to rename the folder right after the New Folder button is clicked.
(I would like to implement this but don’t know how to (without big refactoring))

The challenge is to modify the isRenaming state in FolderCell from App in a declarative way (SwiftUI). Instead of FolderCell owning the isRenaming state, we might create a renamingCell (some unique identifer) state in App and let FolderCell observe its change.
// ExplorerCell.swift

private struct FolderCell: View {

     // @State var isRenaming: Bool = false

    @EnvironmentObject var App: MainApp
    @State var item: WorkSpaceStorage.FileItemRepresentable

    // ...

    if App.renamingFile == self.item.url {
       // Rename ui
    }
}

// MainApp.swift

@State var renamingFile: URL // Maybe

func createFolder(at: URL, named: String = "New Folder") async throws {
    let folderURL = at.appendingPathComponent(named)
    let url = try await workSpaceStorage.urlWithSuffixIfExistingFileExist(url: folderURL)
    do {
        try await workSpaceStorage.createDirectory(at: url, withIntermediateDirectories: true)
        // Do something with the new state
    } catch {
        self.notificationManager.showErrorMessage(error.localizedDescription)
        throw error
    }
}


Updated Request Help Cypress Test to Reflect Removal of Question 3 Screen

What does this pull request aim to achieve? 💯
Updated Request Help cypress test to remove "Next" arrow on question 2 screen since question 3 has been completely removed. Refer to PR#1525 for details.

[x] I have checked that no one else is working on similar changes.
[x] I have read the latest README and understand the development workflow.
[x] The name of this branch is: feature/<branch_name>, or hotfix/<branch_name> if this is a hotfix. The branch is created in a cloned version of this repo, not a forked repo.
[x] This branch is rebased/merged with the latest staging (or the latest production if it is a hotfix).
[x] There are no merge conflicts.
[x] There are no console warnings and errors.
[x] On the right hand side of this PR, I have linked the appropriate issue(s) under "Issues" and added a project progress under "Projects".

Added this change to PR#1500


gradient checkpointing with timm

looks very easy, we can just call this function:
https://github.com/rwightman/pytorch-image-models/blob/8ff45e41f7a6aba4d5fdadee7dc3b7f2733df045/timm/models/resnet.py#L697

Bumping this up as we plan to do it next week.


Simplified OwnedBuffer Pinning Support

Removed TryGetPointer. Pin should now be used to get to buffer pointers.
Pin got faster. The method used to be implemented in the base class and just caledl through TryGetPointer. Now OwnedBufer subtypes have specialized logic for pinning that is often simpler/faster than the base class implementation. Compare MemoryPoolBlock.Pin after this PR to OwnedBuffer.Pin before.
Getting Span from OwnedBuffer is now done through AsSpan method. This allows to avoid slicing. See Buffer.get_Span.

The perf (elapsed time and instructions retired) of E2EPipelineTests benchmark improved very slightly 0.5%, but consistently.
cc: @davidfowl, @mjp41, @ahsonkhan, @shiftylogic

Before
 Test Name                                                                                | Metric                                        | Iterations |    AVERAGE |    STDEV.S |        MIN |        MAX
:----------------------------------------------------------------------------------------------- |:--------------------------------------------- |:----------:| ----------:| ----------:| ----------:| ----------:
 E2EPipelineTests.TechEmpowerHelloWorldNoIO(numberOfRequests: 10000, concurrentConnections: 256) | Duration                                      |     11     |    986.483 |     24.952 |    958.166 |   1039.723
 E2EPipelineTests.TechEmpowerHelloWorldNoIO(numberOfRequests: 10000, concurrentConnections: 256) | Instructions Retired                          |     11     | 7.220E+009 | 4.629E+007 | 7.131E+009 | 7.274E+009
 E2EPipelineTests.TechEmpowerHelloWorldNoIO(numberOfRequests: 10000, concurrentConnections: 256) | Branch Mispredictions                         |     11     | 9.290E+005 |  70012.088 | 7.987E+005 | 1.049E+006
 E2EPipelineTests.TechEmpowerHelloWorldNoIO(numberOfRequests: 10000, concurrentConnections: 256) | Cache Misses                                  |     11     | 6.639E+006 | 1.358E+006 | 4.387E+006 | 9.671E+006
 E2EPipelineTests.TechEmpowerHelloWorldNoIO(numberOfRequests: 10000, concurrentConnections: 256) | Allocation Size on Benchmark Execution Thread |     11     | 5.043E+007 |   3695.813 | 5.043E+007 | 5.044E+007
 E2EPipelineTests.TechEmpowerJsonNoIO(numberOfRequests: 10000, concurrentConnections: 256)       | Duration                                      |     11     |    972.915 |      8.116 |    962.184 |    986.075
 E2EPipelineTests.TechEmpowerJsonNoIO(numberOfRequests: 10000, concurrentConnections: 256)       | Instructions Retired                          |     11     | 7.223E+009 | 4.696E+007 | 7.121E+009 | 7.276E+009
 E2EPipelineTests.TechEmpowerJsonNoIO(numberOfRequests: 10000, concurrentConnections: 256)       | Branch Mispredictions                         |     11     | 9.447E+005 |  44315.340 | 8.929E+005 | 1.028E+006
 E2EPipelineTests.TechEmpowerJsonNoIO(numberOfRequests: 10000, concurrentConnections: 256)       | Cache Misses                                  |     11     | 6.436E+006 | 1.033E+006 | 4.317E+006 | 7.487E+006
 E2EPipelineTests.TechEmpowerJsonNoIO(numberOfRequests: 10000, concurrentConnections: 256)       | Allocation Size on Benchmark Execution Thread |     11     | 5.044E+007 |   4608.166 | 5.043E+007 | 5.044E+007

After
 Test Name                                                                                | Metric                                        | Iterations |    AVERAGE |    STDEV.S |        MIN |        MAX
:----------------------------------------------------------------------------------------------- |:--------------------------------------------- |:----------:| ----------:| ----------:| ----------:| ----------:
 E2EPipelineTests.TechEmpowerHelloWorldNoIO(numberOfRequests: 10000, concurrentConnections: 256) | Duration                                      |     11     |    982.122 |     20.869 |    954.812 |   1029.571
 E2EPipelineTests.TechEmpowerHelloWorldNoIO(numberOfRequests: 10000, concurrentConnections: 256) | Instructions Retired                          |     11     | 7.214E+009 | 4.710E+007 | 7.126E+009 | 7.268E+009
 E2EPipelineTests.TechEmpowerHelloWorldNoIO(numberOfRequests: 10000, concurrentConnections: 256) | Branch Mispredictions                         |     11     | 9.000E+005 |  83564.241 | 7.823E+005 | 1.085E+006
 E2EPipelineTests.TechEmpowerHelloWorldNoIO(numberOfRequests: 10000, concurrentConnections: 256) | Cache Misses                                  |     11     | 6.725E+006 | 1.397E+006 | 4.202E+006 | 9.572E+006
 E2EPipelineTests.TechEmpowerHelloWorldNoIO(numberOfRequests: 10000, concurrentConnections: 256) | Allocation Size on Benchmark Execution Thread |     11     | 5.043E+007 |   2853.642 | 5.043E+007 | 5.044E+007
 E2EPipelineTests.TechEmpowerJsonNoIO(numberOfRequests: 10000, concurrentConnections: 256)       | Duration                                      |     11     |    970.666 |      7.329 |    953.240 |    982.167
 E2EPipelineTests.TechEmpowerJsonNoIO(numberOfRequests: 10000, concurrentConnections: 256)       | Instructions Retired                          |     11     | 7.217E+009 | 4.575E+007 | 7.115E+009 | 7.269E+009
 E2EPipelineTests.TechEmpowerJsonNoIO(numberOfRequests: 10000, concurrentConnections: 256)       | Branch Mispredictions                         |     11     | 9.168E+005 |  36673.187 | 8.520E+005 | 9.748E+005
 E2EPipelineTests.TechEmpowerJsonNoIO(numberOfRequests: 10000, concurrentConnections: 256)       | Cache Misses                                  |     11     | 6.567E+006 | 1.066E+006 | 4.063E+006 | 7.676E+006
 E2EPipelineTests.TechEmpowerJsonNoIO(numberOfRequests: 10000, concurrentConnections: 256)       | Allocation Size on Benchmark Execution Thread |     11     | 5.043E+007 |   3951.940 | 5.043E+007 | 5.044E+007

If Retain is called more than Release, Buffer.Span succeed. This requires reference counting for unmanaged buffers and pooled arrays. It does not require reference counting for array based buffers.

@KrzysztofCwalina I have been experimenting with your refactor today partly to enable ReferenceCounter.
I wonder if it makes sense to create a method that is called when a BufferHandle is released:
   protected internal abstract void ReleaseHandle();

I tried to refactor the code a little to remove the lifetime management from the surface that Buffer sees, introducing a BufferSource that is what Buffer uses, which doesn't have the Retain/Release that are likely to map into reference counting.  This would enable making subclasses that don't use reference counting for Pin, while still having reference counting for lifetime management, which may please @davidfowl.  Then OwnedBuffer is a subclass which implements lifetime management.
I have pushed the first part of my experiment  https://github.com/mjp41/corefxlab/commit/944933ee55021bcb9c273035fbd87e6a91e3611d

@mj1856, how is ReleaseHandle different from Release?
Also, BufferSource has RetainHandle and ReleaseHandle. How are these different from Retain/Release?

So RetainHandle constructs the Handle for accessing, but it is not required to be hooked up to any lifetime management.
ReleaseHandle is called when a BufferHandle is disposed.  But again it is not required to be hooked up with any lifetime management.
At the moment, I hooked them up to calling the OwnedBuffer lifetime management routines, but they don't have to.  This allows for BufferHandle not to be lifetime managed even if the underlying BufferSource is by implementing the OwnedBuffer.

Sorry, I still don't understand the difference. OwnedBuffer.Retain/Release can do whatever the subclasses want, i.e. don't have to do lifetime management.

So for BufferSegment, the implementation requires Retain and Release to do lifetime management otherwise it won't work.  The BufferHandle in this case, will be forced to follow the same lifetime management strategy.  By adding this extra part, then it can do a different/non-existant strategy for the BufferHandle.  This would allow say to use ReferenceCounter for BufferHandles and interlocked for the Retain and Release calls coming from BufferSegments.

Ah, I get it. You want to have different lifetime management strategy for stack bound handles and heap ownedbuffer.

@davidfowl, any more feedback on this?

@KrzysztofCwalina @mjp41 Is there a reason OwnedBuffer.Retain/OwnedBuffer.Release isn't idempotent but Buffer.Retain/Buffer.Release over that owner is?

@KodrAus, they seem to be equivalent. Buffer.Retain, just calls OwnedBuffer.Retain.

@KrzysztofCwalina I guess the difference is OwnedBuffer.Retain returns void, whereas Buffer.Retain returns a BufferHandle, which can only be Released once when disposed.


Update to monolog v2

@ftdebugger thank you for adding me as a maintainer on Packagist. now that this package is a part of my Packagist profile, triggering a manual account sync allowed Packagist to update the hooks on our behalf.
@snapshotpl auto-update has been restored.


Dynamic general rules..

Hey
We have a urgent requirement of having set of dynamic rules for all workflows which needs to be executed first. And the rules would be given input params and need to fetch some external data viz.., {ls,date} or postgresql data, apply rules and if matched intsead of triggering the action now schedule the whole rule to specified timing using cron job.
Plz, Let me know if it's already supported and how.
Ramesh

@userindia77 It seems like you still want a workflow. A workflow can have any number of tasks. So the initial few tasks could get postgresql data and do all the matching inside a python action and then let the data flow into rest of the workflow.
Have you actually had a look at the docs? It seems all the basic pieces are documented. If you want us to tell you exactly how to build workflows for your use cases, please reach out to our sales. We do professional services. This is a open source repo and thereby we only address specific bugs, feature requests and improvements in st2 platform. I am closing this issue.


[gSoap] Update to 2.8.102 and re-enable x64 Builds

This PR updates the port to upstream version 2.8.102
Furthermore it re-enables the builds for x64, which were erroneously disabled

/azp run

Alright, awesome! Thanks @xgcssch :)


Download anime collection

No need to click three times when stopping debugging.
Reduce resource usage.
New boolean option eps_collection, default value is false, when set to true, download anime collection first.
The anime collection does not support renaming temporarily.
Fix some bugs.

Thanks for contributing! I'll review code later.


Feat remove subject from runner

Removes the unnecessary subject argument from runner.

Pull Request Test Coverage Report for Build<PHONE_NUMBER>

0 of 1 (0.0%)  changed or added relevant line in 1 file are covered.
No unchanged relevant lines lost coverage.
Overall coverage remained the same at 50.499%

Changes Missing Coverage
Covered Lines
Changed/Added Lines
%

libraries/search/lib/objective/managers/ObjectiveManager.ts
0
1
0.0%

Totals

Change from base Build<PHONE_NUMBER>:
0.0%

Covered Lines:
800

Relevant Lines:
1511

💛  - Coveralls


Snapchat account alert.

Mail from Snapchat.
https://fbcdn-sphotos-h-a.akamaihd.net/hphotos-ak-xta1/v/t34.0-12/11063062_10153171552427431_1372648165_n.jpg?oh=367ca9d7a931d6034e4d87bdb894abb9&oe=550B1ABA&__gda__=1426731674_f93b1a9451be079d88e8339dd8783bb9

An empty threat. They've been sending my personal account these for months.
On Tuesday, March 17, 2015, dstjerne<EMAIL_ADDRESS>wrote:

Mail from Snapchat.
https://fbcdn-sphotos-h-a.akamaihd.net/hphotos-ak-xta1/v/t34.0-12/11063062_10153171552427431_1372648165_n.jpg?oh=367ca9d7a931d6034e4d87bdb894abb9&oe=550B1ABA&__gda__=1426731674_f93b1a9451be079d88e8339dd8783bb9
—
Reply to this email directly or view it on GitHub
https://github.com/mgp25/Snap-API/issues/26.

I hope so ;-)


When sending via QR code scanner, the amount is reset to zero.

When the QR code scanner is used to scan the address, the amount sent is changed from 0.001 to 0.
https://user-images.githubusercontent.com/1050309/200492750-69ee96ec-0cc7-49d8-915e-261432ab19bd.mov

Yeah, would be good to not reset the amount but only because the QR code is an address. If it's an EIP681 link the amount should be reset.

should be fixed with latest version

Yeah, works for me too. Thanks


Added default HTTPs site.

Without a default site for HTTPs, another configured host will be wrongly used.
For example, when trying to access, via HTTP, a host that has not been setup yet, we get the "Congratulations" page as expected.  However, doing the same via HTTPs does't show this default page, but shows a configured proxy host (for which SSL is enabled).
The same issue happen when configuring a host without enabling SSL:  Access the host over HTTP works fine, but accessing the same host via HTTPs will show the page associated to another configured host.
Since there is no certificate associated to the default site, its configuration only return the special code 444, which makes nginx to close the connection.

I need to adjust the change, as it seems to break proxy hosts with SSL...

Ok I adjusted the default site and now it's working fine.

Great stuff :) I'll add a bit of debug output for the dummy cert generation prior to the next release.
Thanks!


Mutli monitor issue

Microsoft PowerToys version
0.73.0
Installation method
PowerToys auto-update
Running as admin
Yes
Area(s) with issue?
Mouse Without Borders
Steps to reproduce
Have PC1 with multi monitor setted like picture.

And that is what happened when I use this tool.

Monitor 2 is my main monitor and I can not move to PC2 via the bottom border.
✔ Expected Behavior
move to PC2 via the bottom border.
❌ Actual Behavior
can not move to PC2 via the bottom border.
Other Software
No response

Are you still experiencing this issue? /needinfo

I do not use PC2 anymore, so I don't know if this issue still exsits.


Workflows in the Pending state that are waiting for the mutex are not showing in the UI

Pre-requisites

[X] I have double-checked my configuration
[X] I can confirm the issues exists when I tested with :latest
[ ] I'd like to contribute the fix myself (see contributing guide)

What happened/what you expected to happen?
What happened?
I deployed 2 workflows that has the same mutex the 2nd one wasn't visible in the UI till the 1st one finished
What is expected to happen?
The 2nd one used to be shown in the UI with the yellow mark saying it's pending and waiting for the mutex
Version
v3.4.1
Paste a small workflow that reproduces the issue. We must be able to run the workflow; don't enter a workflows that uses private images.
# Run this twice and notice the 2nd workflow behavior
apiVersion: argoproj.io/v1alpha1
kind: Workflow
metadata:
  generateName: synchronization-wf-level-
spec:
  entrypoint: whalesay
  synchronization:
    mutex:
      name:  test
  templates:
    - name: whalesay
      container:
        image: docker/whalesay:latest
        command: [cowsay]
        args: ["hello world"]

Logs from the workflow controller
kubectl logs -n argo deploy/workflow-controller | grep ${workflow}
Logs from in your workflow's wait container
kubectl logs -n argo -c wait -l workflows.argoproj.io/workflow=${workflow},workflow.argoproj.io/phase!=Succeeded

@OmarKalloush can you provide the version which was working this?

I have another environment with v3.3.9 it's working there

@sarabala1979  Any updates?

@OmarKalloush thanks for creating this issue, this due to the filtering not being done correctly. I am creating a PR for this now.


add region detection support (port 0x3F)

https://www.smspower.org/Development/RegionDetection
https://www.smspower.org/Development/PeripheralPorts#Port3FIOPortControl
so games will write to port $3F and then read back the value. if the same value is read back, then it is not japanese system

this is likely why Zillion text is in japanese


Adding clap-markdown feature into arg parsing logic of wasmCloud host

Feature or Problem
WasmCloud Host should utilize the same clap-markdown capability implemented in wash-cli  in order to auto-generate docs. Additionally docs should exist on how to update the documentation for copy into wasm docs.
Related Issues
https://github.com/wasmCloud/wasmcloud.com/issues/597
Release Information
next
Consumer Impact

wasm host binary invocations and arg parsing
wasm documentation output

Testing

Unit Test(s)

Acceptance or Integration

Manual Verification

I believe this is ready for review.
It can be tested with ./target/debug/wasmcloud --help-markdown locally after a build.

Hey @vangourd thanks for submitting this PR! We've definitely used this before (IIRC this is the setup that @ericgregory uses to build our docs) -- would you mind if I jump in here and rebase/handle some of the lint issues?

Don't mind at all please. Any assistance if welcome @vados-cosmonic


Whitelist clickondetroit.com

Appears to be a legitimate news site that is blocked.
clickondetroit.com
www.clickondetroit.com

Thanks for reporting. I've removed the domain


Improve Debian builder error output

What type of PR is this?
/kind feature
Any specific area of the project related to this PR?

/area pkg

What this PR does / why we need it:
Improve the outputs the Debian builder provides when not finding kernel header deb packages.
Does this PR introduce a user-facing change?:
The error message that the builder returns when not finding kernel headers is augmented with extra group (now for amd64 arch and common). For instance:
driverkit docker -c ./debian_5.9.0-1-amd64_1.yaml
INFO using config file                             file=./debian_5.9.0-1-amd64_1.yaml
INFO driver building, it will take a few seconds   processor=docker
FATA exiting                                       error="kernel headers not found for extra groups: ([\"amd64\"])"

Thanks for your pull request. Before we can look at it, you'll need to add a 'DCO signoff' to your commits.
:memo: Please follow instructions in the contributing guide to update your commits with the DCO
Full details of the Developer Certificate of Origin can be found at developercertificate.org.
The list of commits missing DCO signoff:

a221047 feat(pkg/driverbuilder/builder/debian): improve error output

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

Thanks for your pull request. Before we can look at it, you'll need to add a 'DCO signoff' to your commits.
:memo: Please follow instructions in the contributing guide to update your commits with the DCO
Full details of the Developer Certificate of Origin can be found at developercertificate.org.
The list of commits missing DCO signoff:

a221047 feat(pkg/driverbuilder/builder/debian): improve error output

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

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

Needs approval from an approver in each of these files:

OWNERS

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

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

Needs approval from an approver in each of these files:

OWNERS

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

Maybe we can discard this, with #82 merged @leodido What do you think?

Maybe we can discard this, with #82 merged @leodido What do you think?

IMHO yes

IMHO yes

Agree

Agree


Introduce Base Tank class and deprecate Water_Tank

This PR introduces a new foundational class, Tank, under the 'Equipment' class. This class will serve as the parent class for specialized tanks utilized in HVAC, plumbing, and irrigation systems.
Prior to introducing substance-specific subclasses like Water, we are establishing two key base classes: Storage_Tank, Thermal_Expansion_Tank, and Separation_Tank. The Storage Tank class will serve as the parent for all tanks designed primarily for storing various substances. The Thermal Expansion Tank class sets the groundwork for tanks that are engineered to accommodate volume changes due to temperature fluctuations. The Separation_Tank class tank used in conjunction with a filter to facilitate the separation of filtrate material for disposal. (I am open for suggestions on renaming Separation Tank, but it seemed necessary parent class for something like a Grease Interceptor.)
By first laying down these general categories, we can define substance-specific subclasses, such as Chilled Water Storage Tank or Hot Water Thermal Expansion Tank.
In alignment with these changes, this PR also deprecates the existing Water_Tank class and removes its prior categorization under the 'Space' class. Tanks serve specific functional roles in building systems, be it storage, thermal expansion, or other specialized purposes. Their functional attributes align more closely with equipment rather than spatial entities.

Here at Cornell we have a Chilled_Water_Thermal_Storage_Tank, so please include "thermal".
(and as an aside, the acoustics inside this before they filled it up were amazing)

@JoelBender When you say "thermal storage tank", are you referring to a thermally insulated tank?

No, the tank is "charged" by pumping chilled water into the bottom of the tank and draining off an identical amount of warm water off the top.  When the tank is "discharged" the warm chilled water from the campus is pumped into the top of the tank and the chilled water drained off the bottom.  The tank is charged at night from chillers when electricity is the least expensive, and used as peak load shaving during the day to supplement the chillers, perhaps by not having to run multiple chillers to keep up with the load.
There is a thermocline that drifts up and down and the layers of hot and cold water do not mix (much, there is a little).
Chilled water storage is very similar to ice storage, with the exception that the medium doesn't go through a phase transition.  Ice storage "tanks" are smaller and typically serve a single building.


typo in console.error in packages/mui-base/src/AutocompleteUnstyled/useAutocomplete.js

Duplicates

[X] I have searched the existing issues

Latest version

[X] I have tested the latest version

Steps to reproduce 🕹
Link to live example:
Steps:

Current behavior 😯
It'll say something like

the ... method of useAutocomplete do not handle the options correctly.

Expected behavior 🤔
It should say something like

the ... method of useAutocomplete does not handle the options correctly.

Context 🔦
No response
Your environment 🌎

npx @mui/envinfo
  Don't forget to mention which browser you used.
  Output from `npx @mui/envinfo` goes here.


Context menu in Firefox is misplaced

When you right click on a sidebar item in Firefox the location of the menu is far off to the right.
See an example here. On the third layout sidebar, right click on an item and the menu is displaced to the right. The problem does not appear in Chrome or IE.
The issue occurs with v1.4.3. When the latest master is used the problem is replaced by a collapsing sidebar reported in issue #1252. So it is not clear if the problem still exists in the current master and just being masked.

I fixed #1252. Can you please check.
As for original issue, it needs to be fixed in 1.4.x branch.

The problem is fixed in the master. Thanks for the update. Closing issue.


wip: serde: fix cfg_attr test

Fixes: ad2f15d ("Add serde support to structs")

@Tuetuopay I see "wip" in the PR title. Is there anything else you want to do here? I think the PR could get merged as it is?


Treeview can get stuck displaying 'select tenant...' when there's only one tenant to choose from

Describe the bug
The Cloud Explorer treeview can end up displaying the 'select tenant' node (shown below), and when you select it you get a message saying you only have one tenant to choose from.

The workaround is for the user to sign out and sign in again, but it is not at all obvious they need to do that.
To Reproduce
The circumstances under which this happens are:

The user was previously signed in to the AKS extension, but hasn't used it for some time.
The user's account is associated with exactly one Microsoft tenant.
The user's session is valid for listing tenants, but cannot be silently exchanged for a token for the tenant.

At this stage I'm unsure how to reproduce the last condition or the length of inactivity required to observe this, since token exchange is handled at a lower layer.
Expected behavior
If there is only one tenant to choose from, the treeview should automatically invoke any extra interaction required for the user to complete the authentication process.
Additionally, the 'select tenant' command should be made more robust. Rather than displaying an information message saying there's only one tenant, it could also invoke getAuthSession to ensure the user has a valid token for the tenant.
Additional context
To protect against this kind of bug in the future it would be worth defining more tightly what it means for a session to be "ready" and enforcing that in the API contract.
The current design is too ambiguous. By convention we avoid setting the selectedTenant property of the session if it's not possible to silently obtain a token for that tenant, but that is not enforced by the contract (consumers can set the selectedTenant to a value which violates that convention). I'll create a separate issue for some clean-up work.

Fixed by #681


Pushing My Calendar Project written in C

waiting to get merged my first PR...Thankyou!

Closing the current PR, opening with new, sorry for the inconvenience!
On Mon, Oct 10, 2022, 22:39 Prakhar Sinha @.***>
wrote:

How to add the video to readme file?
On Mon, Oct 10, 2022, 20:47 Arijit Ghosh @.***> wrote:

@.**** requested changes on this pull request.
Add the code inside a directory(name of the directory must be the project
name) and create a readme.md with a demo video describing your project.
—
Reply to this email directly, view it on GitHub
https://github.com/Rancho2002/C-projects/pull/12#pullrequestreview-1136192459,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AQMBJ35JXIQBVXHYLXYDFPDWCQXRJANCNFSM6AAAAAARBN5UW4
.
You are receiving this because you authored the thread.Message ID:
@.***>

How to add the video to readme file?
On Mon, Oct 10, 2022, 20:47 Arijit Ghosh @.***> wrote:

@.**** requested changes on this pull request.
Add the code inside a directory(name of the directory must be the project
name) and create a readme.md with a demo video describing your project.
—
Reply to this email directly, view it on GitHub
https://github.com/Rancho2002/C-projects/pull/12#pullrequestreview-1136192459,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AQMBJ35JXIQBVXHYLXYDFPDWCQXRJANCNFSM6AAAAAARBN5UW4
.
You are receiving this because you authored the thread.Message ID:
@.***>

Hi @PrakharSinha-09 , in the readme.file, you can drag and drop the video directly.


Scroll zoom slower than image maps

Is it me or does it require more scroll zooming with the tangram map to zoom in and out?
It seems to require more scrolling (I'm using touchpad scrolling to zoom) to zoom in.
Is this because image version would just jump from full world zoom straight to local zoom level if zoomed quickly whereas tangram tries to zoom through the different zoom levels to get from full world down to local zoom level?

Hi @amnesia7, thanks for the feedback! You may be right – what platform and browser are you using?

@meetar that was with latest chrome on 64bit linux.

Hi again @amnesia7 – the "image maps" you mention may well only be displaying whole-numbered zoom levels, whereas we've implemented "fractional zoom". If you make your own Tangram map, you can adjust this behavior using Leaflet's many zoom-related options. Thanks for your feedback!


net/haproxy: release 2.7

New features

support rise/fall parameters in backends and health checks
support set-path in ACLs
support for cookie-based persistence (#680)

Bugfixes

fix X-Forwarded-For option disappeared (#647)

Enhancements
none

Successfully tested upgrade to os-haproxy 2.7 (including model migration to support cookie-based persistence):
Number of packages to be removed: 1
[1/1] Deinstalling os-haproxy-2.6...
[1/1] Deleting files for os-haproxy-2.6: 100%
Installing os-haproxy-devel-2.7...
Extracting os-haproxy-devel-2.7: 100%
Stopping configd...done
Starting configd.
Migrated OPNsense\HAProxy\HAProxy from 2.2.0 to 2.3.0
Reloading plugin configuration
Configuring system logging...done.
Reloading template OPNsense/HAProxy: OK

@fichtner Feel free to merge os-haproxy 2.7 for the next OPN release :)

@fraenki will do, thanks! ❤


NullPointerException when removing non-null LocationCallback

When both Huawei and Google services are not available a NullPointerException is thrown when removing the non-null LocationCallback from the FusedLocationProviderClient. Because both the Huawei and Google LocationCallback that are wrapped within the LocationCallback-Wrapper are null.
2020-10-06 13:50:10.665 14066-14066/xx.xx.xx E/ExceptionHandlerDelegate: uncaught exception
    java.lang.NullPointerException: Listener must not be null
        at com.google.android.gms.common.internal.Preconditions.checkNotNull(com.google.android.gms:play-services-basement@@17.3.0:11)
        at com.google.android.gms.common.api.internal.ListenerHolders.createListenerKey(com.google.android.gms:play-services-base@@17.3.0:17)
        at com.google.android.gms.location.FusedLocationProviderClient.removeLocationUpdates(Unknown Source:6)
        at mobileservices.location.FusedLocationProviderClientGMS.removeLocationUpdates(FusedLocationProviderClientGMS.java:57)
        at xx.xx.xx.fragments.XxxFragment.onDestroy(XxxFragment.java:329)
        at androidx.fragment.app.Fragment.performDestroy(Fragment.java:2927)
        at androidx.fragment.app.FragmentStateManager.destroy(FragmentStateManager.java:492)
        at androidx.fragment.app.FragmentManager.moveToState(FragmentManager.java:1296)
        at androidx.fragment.app.FragmentManager.moveToState(FragmentManager.java:1356)
        at androidx.fragment.app.FragmentManager.moveFragmentToExpectedState(FragmentManager.java:1434)
        at androidx.fragment.app.BackStackRecord.executeOps(BackStackRecord.java:442)
        at androidx.fragment.app.FragmentManager.executeOps(FragmentManager.java:2169)
        at androidx.fragment.app.FragmentManager.executeOpsTogether(FragmentManager.java:1992)
        at androidx.fragment.app.FragmentManager.removeRedundantOperationsAndExecute(FragmentManager.java:1947)
        at androidx.fragment.app.FragmentManager.execPendingActions(FragmentManager.java:1849)
        at androidx.fragment.app.FragmentManager$4.run(FragmentManager.java:413)
        at android.os.Handler.handleCallback(Handler.java:883)
        at android.os.Handler.dispatchMessage(Handler.java:100)
        at android.os.Looper.loop(Looper.java:214)
        at android.app.ActivityThread.main(ActivityThread.java:7356)
        at java.lang.reflect.Method.invoke(Native Method)
        at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:492)
        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:930)

Hi @munnitz , thx for your contribution.
I'm trying to understand how you were able to land in this scenario.
If no GMS or HMS is available, then:

the next method returns true https://github.com/abusuioc/hms-gms-wrapper-location/blob/f4be4f80132d1a99a812967e4a658ac4313b2bd4/lib/src/main/java/mobileservices/location/LocationServices.java#L15-L18
then LocationServices will instantiate a instantiates a FusedLocationProviderClientGMS https://github.com/abusuioc/hms-gms-wrapper-location/blob/f4be4f80132d1a99a812967e4a658ac4313b2bd4/lib/src/main/java/mobileservices/location/LocationServices.java#L24-L27
when registering a location callback, I assume you call the next method (executing this code):
https://github.com/abusuioc/hms-gms-wrapper-location/blob/f4be4f80132d1a99a812967e4a658ac4313b2bd4/lib/src/main/java/mobileservices/location/FusedLocationProviderClientGMS.java#L65-L87
a link is created inside the wrapped location callback to the gms location callback: https://github.com/abusuioc/hms-gms-wrapper-location/blob/f4be4f80132d1a99a812967e4a658ac4313b2bd4/lib/src/main/java/mobileservices/location/FusedLocationProviderClientGMS.java#L78
when removing the callback then I assume you will call this method (executing this code): https://github.com/abusuioc/hms-gms-wrapper-location/blob/f4be4f80132d1a99a812967e4a658ac4313b2bd4/lib/src/main/java/mobileservices/location/FusedLocationProviderClientGMS.java#L55-L59

At this point (because of 4) the gms location callback should not be null, right?
Could you detail which calls you do to the location wrapper?

I think the problem is that the callback's gmsLocationCallback is initialised by the FusedLocationProviderClient's requestLocationUpdates. So when calling removeLocationUpdates without invoking requestLocationUpdates first, a NullPointerException is thrown and there is no way to prevent that since the gmsLocationCallback is private and it's impossible to check where or not it is null.

You're absolutely right about this scenario. I will patch it asap.

Interesting that only the FusedLocationProvider of GMS checks for nulls; the one from HMS is happy to receive nulls.
Please use https://github.com/abusuioc/hms-gms-wrapper-location/releases/tag/1.0-beta-3 to take advantage of the fix.

Ok works now. Thank you for the quick fix!


Add functional metric docs

What does this PR do?

Fixes # (issue)
Before submitting

[ ] Was this discussed/approved via a Github issue? (no need for typos and docs improvements)
[ ] Did you read the contributor guideline, Pull Request section?
[ ] Did you make sure your PR does only one thing, instead of bundling different changes together? Otherwise, we ask you to create a separate PR for every change.
[ ] Did you make sure to update the documentation with your changes?
[ ] Did you write any new necessary tests?
[ ] Did you verify new and existing tests pass locally with your changes?
[ ] If you made a notable change (that affects users), did you update the CHANGELOG?

PR review
Anyone in the community is free to review the PR once the tests have passed.
If we didn't discuss your PR in Github issues there's a high chance it will not be merged.
Did you have fun?
Make sure you had fun coding 🙃

Hello @justusschock! Thanks for opening this PR.

In the file pytorch_lightning/metrics/functional/nlp.py:

Line 27:49: E203 whitespace before ':'

Do see the Hitchhiker's guide to code style

need to merge the latest #3949 to pass the tests


Instructions / make_link for windows?

Using nightly build as advised.
Cloned into C:\Users\Me\AppData\Local\kicad\scripting\kicad_freerouting-plugin
Refresh plugins -> no joy

Local appdata is not one of monitored folders on windows iirc.
Roaming appdata definitely is.
To check full list of monitored folders open scripting console in pcbnew and paste this one line at a time:
import pcbnew
print pcbnew.PLUGIN_DIRECTORIES_SEARCH

I used the nightly build kicad-r15230.ba8c3a558-x86_64.exe and cloned the plugin files directly into KiCAD\share\kicad\scripting\plugins. No reaction after rereshing the plugins. Then I called the plugin.py within the python console. So I found that module configparser was not found. Listed all modules (help() - modules) and found, that it must be ConfigParser. Modified the appropriate lines within the plugin.py and refreshed again. Now the button and the menu entry occured. But when I tried to call the Freerouting-plugin, some new errors occured:
File E:\Programme\KiCAD\share\kicad\scripting\plugins\plugin.py line 125, in Run self.RunSteps()
File E:\Programme\KiCAD\share\kicad\scripting\plugins\plugin.py line line 40, in prepare self.java_path = config['java']['path']
AttributeError: ConfigParser instance has no attribute 'getitem'
What's wrong?


[extractor/epoch] Add extractor

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

ADD DESCRIPTION HERE
Fixes #
Template

Before submitting a pull request make sure you have:

[x] At least skimmed through contributing guidelines including yt-dlp coding conventions
[x] Searched the bugtracker for similar pull requests
[ ] Checked the code with flake8 and ran relevant tests

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

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

What is the purpose of your pull request?

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

For issue: https://github.com/yt-dlp/yt-dlp/issues/4714


Confluent Integration (phase 1)

Very simple deployment of the Confluent Platform Kafka brokers in place of Apache Kafka.

Closing this out as it looks like it was since supplanted by the confluent package in universe (https://github.com/mesosphere/universe/tree/version-2.x/repo/packages/C/confluent)


feat: add pireps/latest endpoint

@BossOfGames can you confirm if this would be the right approach to only fetch the latest pirep from a user?
I also want to make sure the response is an object and not an array.
I don't really have a way to test this at the moment, so thanks for your help!

Yes, but there's a better way of doing it.
$user->latest_pirep
If you look at the \App\Model\User Model, you'll see a relationship setup for the latest pirep. I believe that code is what powers the latest pirep widget on the /dashboard for phpVMS.

@BossOfGames thanks! Fixed the PR.

I noticed that there wasn't a change made to the /Http/Routes/api.php
The route must be added here before it can be called by smartCARS, otherwise the call will fail outright with a 404 error.


Add support for Vite

Remix is working on support for Vite.
AdonisJS 6 also has a plugin for Vite, focused on bundling frontend resources.
It seems like it should be possible to benefit from this overlap and integrate remix-adonisjs with Vite.

Fixed in https://github.com/jarle/remix-adonisjs/pull/23


[Feature Request] Auto delete user messange and bot response

Is your feature request related to a problem? Please describe.
A great feature for the bot to have is the ability for delete the message/command send by a user, and delete it's own response.
So it can clean up the discord chat from all the music related chat
Eq
I send a song request to the bot it response, and after 10-15 sec both messages are deleted
What is your ideal solution to the problem?
The bot can delete "old" song request and responses
How would this feature be used?

I send a song request to the bot
it response
After 10-15 sec both messages are deleted by the bot, so clean up the discord textchat

Additional Info
No response
Checklist

[X] I have checked the documentation to make sure this feature doesn't already exist
[X] I have searched for similar feature requests
[X] I have confirmed that my requests is not on the list of things that will not be added
[X] I am running the latest version of the bot:

can i work on this ?

can i work on this ?

Probably not worth the time since this issue will likely be superseded by the addition of slash commands, which can be ephemeral

can i work on this ?

Probably not worth the time since this issue will likely be superseded by the addition of slash commands, which can be ephemeral

Not sure I understand, is there a command that can automatically do this?
I believe this feature will be a great addition to the bot may users will be happy with, as it help cleaning the chat of music related commands/“spam” :)


Convert xStorage to HQRM standards

This does not necessarily require renaming this module to HQRM naming but this module should be updated to bring it inline with current HQRM standards.
I'm working on this at the moment.

Still working on this. Ran out of time to complete it this weekend. Will try to complete it this week.

Sorry I haven't finished this one (nearly there). I've had to re-prioritize because my company had an urgent need for a new feature in xService - which required moving it to HQRM first. I aim to complete this by the end of this weekend.

Still working on this one. About 80% done. I got held up completing the xService HQRM resource. So I'll aim to have this done by the end of this week. Taking tonight off DSC though :smile:

Just adding a task list here so I can track what I still need complete:
[ ] xDisk - Unit tests for Set-TargetResource (Get/Test complete - Set needs completion) #24 #20
[ ] xDisk - Complete change for Disk Format (Get/Test complete - Set needs completion) #54
[ ] xMountImage - Complete changes as per #56
[ ] xMountImage - Complete unit tests  #20
[ ] xMountImage - Update integration tests as per #56
[x] xWaitForDisk - HQRM changes
[x] xWaitForDisk - Unit Tests #20
[x] xWaitForDisk - Integration Tests #20
[x] xWaitForVolume - New resource created with Unit/Integration tests #58


[Bug]: Redis is not persisting data on container restart

Is there an existing issue for this?

[X] I have searched the existing issues

Description
Redis is not persisting data on container restart, this is causing user sessions to terminate on updating/restarting the Appsmith container.
The ideal way this should be working is that Redis works as an in-memory system. Storing all its data in it's memory. But we configure Redis to dump all this data to an RDB file, every so often. On restart or update, Redis is supposed to pick up from that RDB file, and continue.
Steps To Reproduce

Launch an Appsmith container
Use a browser to log in
Restart the container
Use the same browser to access the app, and observe the users gets logged out.

Public Sample App
No response
Issue video log
No response
Version
<IP_ADDRESS>

Duplicate of #19768.


Spec/coverpage kh

Added standard cover pages for base deliverables as discussed with Philipp and Jared.  May need further marging now.

@kevinhammond if the iohk-share-logo.jpg file is to be put under git-lfs, it should be done in this branch, and not added here and then be converted to lfs in #944

@kevinhammond if the iohk-share-logo.jpg file is to be put under git-lfs, it should be done in this branch, and not added here and then be converted to lfs in #944

It sounds like since the binaries in the PR are small and will not change, everyone is happy with just storing them directly in git.


[WebDataset] Audio support and bug fixes

Add audio support
Fix an issue where user-provided features with additional fields are not taken into account

Close https://github.com/huggingface/datasets/issues/6569

The docs for this PR live here. All of your documentation changes will be reflected on that endpoint. The docs are available until 30 days after the last update.


Should be able to search for extensions by creator

VSCode Version: 0.10.12-alpha
OS Version: Windows 10

Steps to Reproduce:

Press F1
Type ext install
Type Microsoft.

Actual:
Brings up two non-Microsoft produced extensions.
Expected:
Be able to search by creator (e.g. Microsoft).

This is supported in the market place.

And it's now supported in the product!


Creating a new pawdraw (custom editor) file with autoSave enabled continually asks to save the file

VSCode Version: 1.49.3
OS Version: Window 10

Steps to Reproduce:

Build and debug the custom-editor-sample
Turn on 'autoSave' with some short delay
Create new paw draw file
Draw on the surface
Save as dialog appears every time you draw

Does this issue occur when all extensions are disabled?: Yes

@mjbvz, it's not clear from this bug, but it's blocking our ability to release our custom editor solution in Python. Can it be prioritized higher? Thanks!

I don't see this behavior on MacOS with insiders. What do you mean by new? Is this with an untitled file?

Yes should be an untitled file.

Thanks. Please test this in the next VS Code insiders builds for the python extension and let me know if you still see the issue (it works for me using the custom editor sample)


Git-tfs pull doesn't finish in Azure DevOps pipeline

I need to automate the 'git-tfs pull' command in Azure DevOps. I have no problem executing this command with my user/pass from a cmd window, but when it runs in Azure DevOps Build Agent it doesn't finish, sure it is an authentication problem.
Git-commands have the possibility to pass additional http-headers with the request. This is used by Azure DevOps build agent to pass OAuth token in an AUTHORIZATION: bearer-header when fetching the files. Ex:
git -c http.extraheader='AUTHORIZATION: bearer $(System.AccessToken)' pull
Is it possible that 'git-tfs pull' can pass the extra headers with the request? I haven't seen  any parameter for this in the parameter list.
Thanks in advanced!

Did you tried the '--user' and '--password' command line parameters?

Thank you.
First, I tried to run Azure pipeline with user/pass parameters as you observed but result was the same: I had to cancel the execution.
After this, I've cloned the repository again from cmd window, adding user and password in the command:
git tfs clone "https........" "$/Project" --username=xxxx --password=yyyy.
I checked that user/pass was in git config file.
I've run the release in Azure DevOps executing git-tfs pull: no finished.
I've run the release in Azure DevOps executing 'git-tfs pull --username=xxxx --password=yyyy': no finished.
Sorry, I know it is difficult to understand... any idea?

Hi Philippe,
Azure DevOps has just changed application access policies:
https://docs.microsoft.com/en-us/azure/devops/organizations/accounts/change-application-access-policies?view=azure-devops
I'm not sure it could be the reason of our authentication problems in pipeline.
Anyway, we have changed the 'git-tfs pull' command by getting the added and modified sources from tfvc (get Item API). After this we use the git commands (git add + git commit) to store the changes history locally.
Thank you very much for your support. I'm going to close the issue, if you agree.

@cordoyoa Do you mean you have modifications made in git-tfs to archive that?
If so, could you perhaps share the changes?
I would especially interested as the old authenication we are using no longer works  with TFS2017 client access libraries and I had to make the following change https://github.com/git-tfs/git-tfs/pull/1348/commits/a1058437e58aa41710ce68a486cdfab587eaa897 in the not yet merged PR #1348,

We are trying to clean up old/stale issues. As this issue hasn't seen any updates (or progress with pull requests) in quite a while, the issue will be closed. In case further information is provided, we can revisit that and reopen the issue again.


Add "How to make a minimal reproduction in StackBlitz" to Troubleshooting page

We have @Chrissdroid 's draft of our new troubleshooting page in this PR https://github.com/withastro/docs/pull/536 , and I had the idea that it would also be great to have a "How to make a minimal reproduction in StackBlitz/CodeSandbox etc." section on this page.
Doesn't have to be much, just something that follows this outline:

StackBlitz and CodeSandbox are online coding environments you can use in a browser tab.
Running/Building an Astro project here, with just the smallest piece of your code that's causing you trouble can help you eliminate variables that could be affecting your local project: local caches, other parts of your site...
To troubleshoot smaller pieces of your project individually:

Go to astro.new and open a minimal starter template like "Just the Basics" or "Completely Empty" in your choice of online environment
Add any of your relevant project files (or, type in a more minimal version of the code that you want to troubleshoot)
Use the terminal inside the browser tab to run in dev or to build your site.
Share the link to your workspace, if necessary, in a support thread on the Astro Discord.

... something like that....
Might be easier to do AFTER this page is published, then we can make a separate PR.   ;)

Now that the Page is published 🎉 we can start putting more thinking about this, so there's mines :

Do we use .gif or videos for a better visualisation for each step ?
What advices could we give about what's the "best method" ?
Do we give also advice on how to make an "Good" issue explanations (not just "it's not working") ?

And that's all i've in my mind atm (may expend this message as we found answers and more question)

@Chrissdroid Is this something you are interested in starting to work on, like you did with the Troubleshooting page? Perhaps, starting with a GitHub gist to first capture content before worrying about placing it on any page? I think videos etc. should be playable in a .md gist, since they are in regular README.md files.
Or, are you more interested in continuning dicussion here, or... in a Discussion?  😄  You might want to ask for ideas/contributions in the support-squad channel, which is now public. That's where we discuss issues ABOUT helping in suppor threads. Our Support Squad probably has good ideas about what is helpful for them when someone makes a reproduction, or what they have to ask people to "make sure" to do, regularly.

Sure ! I don't know, I can make gifs but videos will be more complicated, I need to reconfigure my obs etc..
We will need help from the support squad on this, for sure, I've got the experience of creating repros and struggling with it but i can't do it all by myself and I'll need more points of view on this, especially because I can't cover every type of problem
I will try to make a v0.1 gist, I suggest creating a discussion and asking for feedback there so I can tweak my gist accordingly before showing it to the support squad and avoid them being influenced by it ?

@Chrissdroid Sure, make a discussion! Don't worry about all the details like videos yourself.
Just like the troubleshooting page, what's most helpful is just a STRUCTURE to start... instructions, steps, what is helpful for someone who has never done this to know etc. It does not have to be anything fancy. Then, people who do make screencasting videos (like Dan, me, Fuzzy...) can always add extra content once the instructions are written.  :)

Just discussed this in our docs triage. We’d still love a contribution here!

I see high value in this and even if it is trivial it has a high pedagogical value.

In support many people expect to drop an error message and get a detailed explanation which most of the time does not work without accessing the code.
it happens very often that support have to be playing ping-pong getting details out while with an example it's a matter of minutes if not seconds
not counting the issues solved just by trying to reproduce them
another issue I see with VMs is the ones that lock the code or somehow make it difficult to reproduce locally, so I encourage the github repo associated usage
A VM can have a link for a running snapshot and you have a limit of how many you can create, but that is even not good for reproducibility, best are the ones freshly started from a script from a repo

unfortunately the astro.new is kind of hiding the simple way how this works, in practice it is as simple as
VM-special-url + Github-repo
here the main three options, really sometimes one support node 18 the other does not, some start faster,... it's good to have all 3

https://stackblitz.com/github/MicroWebStacks/astro-examples/tree/main/01_basics
https://codesandbox.io/s/github/MicroWebStacks/astro-examples/tree/main/01_basics
https://gitpod.io/?on=gitpod#https://github.com/MicroWebStacks/astro-examples/tree/main/01_basics

When it comes to further customization of sandboxes with startup scripts, we can simply refer to the docu website of each and people can just learn from examples, but I do not this we should step in explaining how they work, or that would be a way broader scope.

Ah, I think it’s actually even simpler than that. The steps I’d suggest would be:

Open the minimal starter on StackBlitz: https://astro.new/minimal?on=stackblitz

Add the bare minimum of changes to trigger your bug, e.g. add the integration you’re using, and edit index.astro to trigger it.

Kind of related to this, can we add issue templates?
In there, users can be linked to the troubleshooting page and asked for info when they create an issue, instead of asking or linking to the page manually afterwards.

We already have an issue template set up for the main Astro repo: https://github.com/withastro/astro/issues/new/choose
This includes a request for a minimal repro:

So the main aim of additional docs would be to assist anyone encountering that prompt for the first time (or requesting help in #support on Discord) — we could link to it from that issue form for example.

Bumping for the "sort by recently updated" crowd... I think we'd still really like this for docs, and we're happy to have a community contributor read through this thread, use the resources, and make a PR!  :raised_hands:

I would happily write this out!

Prior art from Anthony Fu!

Allright everyone! I'll be picking this up the following days! If anyone wants to help or give opinions, feel free to leave them here or contact me!


XML not well-formed because bibliographic metadata contains non-UTF8 characters

Example:
http://resolver.kb.nl/resolve?urn=PPN:204097509
xmllint --noout E:\cdBatchesTest\testwritenew\204097509\mets.xml

Result:
E:\cdBatchesTest\testwritenew\204097509\mets.xml:26: parser error : Input is not
proper UTF-8, indicate encoding !
Bytes: 0xD7 0x20 0x70 0x65
mods:noteVerscheen 1▒ per jaar</mods:note>
^
Solution: explicitly encode as UTF8, may need some cleaning ...

UPDATE:  the problem is not caused by the bibliographic metadata but by the lxml processing:

In mets.xml the 'x' char (multiplication sign, see here)  is encoded as 1 byte, 0xD7. This corresponds to the char in Latin encoding.

If we query the record using request below:
http://jsru.kb.nl/sru/sru?x-collection=GGC&operation=searchRetrieve&startRecord=1&maximumRecords=1&recordSchema=dcx&query=204097509
Now the character is encoded as a 2-byte sequence,  0xC397.

Output from sru.py also contain 0xD7!

Next tried this:
 url = "http://jsru.kb.nl/sru/sru?version=1.2&maximumRecords=1&operation=searchRetrieve&startRecord=1&recordSchema=dcx&x-collection=GGC&query=%22PPN%3D204097509%22"
 r = requests.get(url)

 with open("r.xml", "wb") as r_file:
             r_file.write(r.content)

Result: character is encoded as a 2-byte sequence,  0xC397.

This might be of some use:
http://stackoverflow.com/questions/2686709/encoding-in-python-with-lxml-complex-solution
and also:
https://www.experts-exchange.com/questions/28029302/Python-lxml-encoding.html

Fixed: https://github.com/KBNLresearch/omSipCreator/commit/e5a2defef48f9ce94ce6607b990e64285f24bd1d


Update karma.conf.js

keep test results in coverage/

Thank you @davehenton for your help. I greatly appreciate it.