docs(discussions): adds a link to discussions in the about dialog

:tada: This PR is included in version 1.3.0 :tada:
The release is available on GitHub release
Your semantic-release bot :package::rocket:


Start/Restart action should start depended on disabled services

If you have a service config like:
    depends_on:
      kafka:
        condition: process_healthy
      sftp:
        condition: process_started

for a seldomly used subset of your system (therefore using disabled: true for both the service  and it's dependencies (kafka and sftp)) currently starting/restarting the service does not visually do anything.
Expectation: start sftp/ kafka so the depends_on conditions have a chance to be met.

Hi @thenonameguy,
Makes sense. Will look into it.

Hi @thenonameguy,
I tried to reconstruct your scenario and here is what I found:

Consider that the processes are always DAG.
For example A->B->C.
If not disabled A will wait on B, while B is in a running or waiting for C state.
If both (A+B) are disabled, A (if started manually) won't wait for B since it's neither in waiting nor in running state.

TL;DR A will run even if it depends on B to be healthy, but B is disabled.
Now I am trying to understand how your configuration is different from mine, that it caused it to wait for B (kafka or sftp) to run, even if B is disabled.
On another topic:
When started manually, is starting the entire chain, always the desired behavior? Or only when disabled?
I am a little bit worried that it can cause some unintended consequences - someone starting A, but accidentally B will cause some damage.
I probably can add the with dependencies parameter to REST, but in UI it might be annoying to ask it each time.
Will be happy to hear your thoughts.

It would be nice if we can add a flag in the process configuration to allow dependent processes to start automatically or at least wait for the dependent process to start.

Hi @camcalaquian,
Consider the following config.yaml
processes:
  A:
    command: "sleep 5"
    depends_on:
      B:
        condition: <condition>
  B:
    command: "sleep 5"

Process A depends on B, it will start based on the following optional conditions:
const (
	// ProcessConditionCompleted is the type for waiting until a process has completed (any exit code).
	ProcessConditionCompleted = "process_completed"

	// ProcessConditionCompletedSuccessfully is the type for waiting until a process has completed successfully (exit code 0).
	ProcessConditionCompletedSuccessfully = "process_completed_successfully"

	// ProcessConditionHealthy is the type for waiting until a process is healthy.
	ProcessConditionHealthy = "process_healthy"

	// ProcessConditionStarted is the type for waiting until a process has started (default).
	ProcessConditionStarted = "process_started"
)

I am a little bit worried that it can cause some unintended consequences - someone starting A, but accidentally B will cause some damage.
I probably can add the with dependencies parameter to REST, but in UI it might be annoying to ask it each time.

I think there should definitely be an option to start with deps, but default should be without. There could also be flags at top level, and at process level, to set the default behaviour.

Hi @camcalaquian,
Consider the following config.yaml
processes:
  A:
    command: "sleep 5"
    depends_on:
      B:
        condition: <condition>
  B:
    command: "sleep 5"

Process A depends on B, it will start based on the following optional conditions:
// ProcessConditionCompleted is the type for waiting until a process has completed (any exit code).
ProcessConditionCompleted = "process_completed"

// ProcessConditionCompletedSuccessfully is the type for waiting until a process has completed successfully (exit code 0).
ProcessConditionCompletedSuccessfully = "process_completed_successfully"

// ProcessConditionHealthy is the type for waiting until a process is healthy.
ProcessConditionHealthy = "process_healthy"

// ProcessConditionStarted is the type for waiting until a process has started (default).
ProcessConditionStarted = "process_started"

@F1bonacc1 don't think this works if process is disabled by default. Which is the main concern of this issue I think?

There are several alternatives to consider (not sure which one is the desired behavior):

(TUI) When starting a disabled (or stopped) process ask each time if also start its dependencies. This will also require a REST flag.
Configuration setting per process always_run_with_dependencies - it will be ignored when --no-deps flag is used.
Configuration setting per dependency always_run - it will be ignored when --no-deps flag is used.
Should this behavior apply only to disabled processes or any stopped process?
In case a disabled process is started with its dependencies (TUI/config) should it affect the entire chain or only the immediate child?


Fixed bugs in BrightnessTexturize and updated delaunay.

Fixed the bug in BrightnessTexturize where the color of the image is changed after the augmentation.
Added color changing feature in DelaunayTessellation.

The existing DelaunayTessellation  gives only blue color effect, for example:

With this update, users will be able to change the color, for example, random colors:


split of a multidimensional matrix not working as in 2.4

Hello,
I have a 22x1024x1024 matrix with complex numbers (=> 2Channels). When I perform the splitting function in Opencv 2.4, I get a vector of 2 matrices with 22x1024x1024 elements as expected. When doing the same split in Opencv 3.0, I get 2 matrices of 22x1024 elements with dims =2. Converting the matrix to a 2D matrix with 22x1048576 first and then splitting does give a good result in Opencv 3.0.
Best regards,
Sam.

I just tested. I did not see the issue as you said. Are you sure the issues still exists?

I have reported a similar issue before #5034.
There's an example attached you can run to see that cv::split is broken for ND-arrays.

I see that there are 2 versions of "split". The one with output "Mat*" is working well. The other has failed like you said.

Thank you very much for your fast response and fix.

@hoangviet1985 I just tried it in 3.1.0 and it is working fine. Thanks :+1:


When Debugging a pilet with an updated dependency this new version of the dependency should be used by all pilets.

New Feature Proposal
For more information, see the CONTRIBUTING guide.
Description
If we update a nuget package  in a pilet and debug this pilet corrently the old version is still used if the same nuget package is already loaded by another pilet. It would be great if the new version is used at least while debugging.
Background
Currently i need to update the package in all pilets using it and run them all locally.
Discussion
This would make local dev easier on one hand. On the other hand it could lead to problems, because the pilet might not work when its released because in prod it does still use the old version.
So maybe it would be better to always use the newest version?
Or maybe it should be configurable?

Yes I think right now we don't do any semver or so comparison on the .NET dependencies.
This should be definitely done.

This is fixed with the latest preview and will be part of the v9.
In general there is new model for dependencies; by default pilets will have dependencies only assigned to them / their execution context. As a consequence the execution context of a pilet can / will be unloaded when the pilet is unloaded. Therefore, changed dependencies will also change when a pilet changes (= unload / load again).
However, that also implies that dependencies are no longer shared (by default). With v9 there will be new methods of sharing certain dependencies, but by default no dependencies (besides the "core deps" e.g. Blazor and Piral runtime DLLs) are shared.
We will document / specify this separately.


Optimize the case where the number of input points is large

Already found out several cases where this is not working at all. Clearly requires more testing in addition to the optimizations.


Set EXPIRATION_TIME_DEFAULT_SECONDS for tests

The default EXPIRATION_TIME_DEFAULT_SECONDS in the service configuration is 60 seconds. By setting the default timeout in e2e-setup.ts we decouple the development default from the test setup.

Pull Request Test Coverage Report for Build<PHONE_NUMBER>

0 of 0   changed or added relevant lines in 0 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage decreased (-0.02%) to 92.033%

Totals

Change from base Build<PHONE_NUMBER>:
-0.02%

Covered Lines:
4145

Relevant Lines:
4391

💛  - Coveralls


ipa action ignores the configuration specified by the scheme

If you set up Xcode Schemes to reference specific configurations and then use the ipa action like so:
ipa({
    scheme: 'Test Project Alpha',
    clean: nil, # this means 'Do Clean'. Clean project before building.
    archive: nil, # this means 'Do Archive'. Archive project to the Xcode organizer after building.
  })

It generates this ipa command:
ipa build -s "Test project Alpha" --clean --archive -m "/Users/jenkins/.jenkins/jobs/TestProject/workspace/provisioning.mobileprovision"

Which results in this xcodebuild command:
xcodebuild -sdk iphoneos -workspace "Test.xcworkspace" -scheme "Test Project Alpha" -configuration 'Release' clean build archive

The configuration "Release" is being passed if a configuration isn't specified. Which is overwriting the Schemes specified configuration. To fix this you must pass the Configuration explicitly.
ipa({
    scheme: 'Test Project Alpha',
    configuration: 'Alpha', #Prevents fastlane from passing --configuration "Release"
    clean: nil, # this means 'Do Clean'. Clean project before building.
    archive: nil, # this means 'Do Archive'. Archive project to the Xcode organizer after building.
  })

To fix this, the ipa action should not pass configuration if not specified and fall back to the Scheme's settings.

ipa is not a part of fastlane actually, it's at nomad/shenzhen

I think that may fall under Xcode's domain. There is an option (I'll have to go find it tomorrow) to have all command line builds be built with the "Release" configuration. That could be causing your issue.

@dhagerty9009 it's not that setting for sure, that was one of the first things I checked.
When you pass a scheme to xcodebuild, it does the "right thing" and uses the configuration specified by the scheme. The setting you are referencing only kicks in if you ommit the scheme and configuration options.
If you look at the issue description, you can see that Fastlane is explicitly passing the release argument to the xcodebuild command. This is not a case of an ommited option, it is being added within the Fasrlane tool chain. Or as noted above, it this could be happening within Shenzhen, but I haven't investigated any further yet.

@coreyfloyd Have you found a way to solve this issue?

@coreyfloyd I can confirm your observations. Fastlane seems to always forward a configuration to xcodebuild. I was experiencing it with shenzen/ipa and still am with gym. Running xcodebuild -scheme the-scheme will export the configuration that is attached to the scheme automatically.
@KrauseFx I think if a scheme without configuration is provided the configuration should not be set by Fastlane.

The ipa action is deprecated and you should use the gym action instead. Do you have the same problem with it?

Yes, I am still experiencing this with gym. If a configuration is not specified in gym and the Release configuration exists, Release will be set, even though the scheme itself points to a different configuration. Have a look here: detect_values.rb#L161
I am also using the same workaround by additionally specifying the configuration.

@masa-beheim So what does gym to do differently to make it work? Just not set it to Release by default?

Yes, as proposed at the top, it should not pass configuration at all if not specified.

@KrauseFx as @masa-beheim said: if no configuration is passed to gym, it should not pass any configuration xcodebuild.
This allows xcodebuild to use to the configuration specified by the scheme (which may be Release or Debug or something else).

Perfect, thanks for clarifying! :+1:

Check out the most recent release https://github.com/fastlane/gym/releases/tag/0.8.4 :rocket:

I don't know whether this fixed it for you @coreyfloyd, but I am still struggling with this. I have checked with multiple projects and I still have to supply the correct configuration even though the scheme is specified. The scheme is passed on correctly though.
Running the following picks the wrong configuration for me.
gym -s AScheme

This picks the right configuration.
xcrun xcodebuild -scheme AScheme

I've been digging around a little bit and one thing I don't understand is what this command outputs:
xcrun xcodebuild -showBuildSettings -scheme 'AScheme' -project './The.xcodeproj'

I always thought that specifying the scheme gives me back the build settings for that scheme. But all the following commands return the same output:
xcrun xcodebuild -showBuildSettings
xcrun xcodebuild -showBuildSettings -scheme 'ASchemeThatExists'
xcrun xcodebuild -showBuildSettings -scheme 'AnotherSchemeThatExists'

It seems that the scheme flag is not really taken into account. Specifying a non-existing scheme results in an error though.
In particular the CONFIGURATION is always the same. It's set to the result of...
xcrun xcodebuild -list -project './The.xcodeproj'

...where it says: „If no build configuration is specified and -scheme is not passed then ConfigurationX is used.“ And this is not always the configuration of my specified scheme.
(fastlane 1.37.0, gym 1.1.4)
Hope somebody can help. Thank you!

I was scratching my head trying to figure out why my build configuration was defaulting to "Release" even though my scheme has a different one set.
I found the problem - gym is running the Archive build action and I was looking at the Run action's build configuration for the scheme. After changing this everything works as expected.
In short -- make sure you are looking at the scheme's build configuration for the Archive build action.

@ender672 Thanks for pointing that out!


github page  peercoin.net backlink not using https

The website back link on super3/peercoin.net github page is still using insecure http and that causes a additional redirect to use https. Change the link to https://www.peercoin.net.
The same goes for the github.com/peercoin github organisation page (maintained by @hrobeers )

The link used in the github "description"? For example "Web files for Peercoin.net http://peercoin.net" when accessing github.com/super3/peercoin.net? I think only @super3 can change it.
For github.com/peercoin under "Secure and sustainable peer-to-peer cryptocurrency." I guess @hrobeers or @peerchemist. I'm not 100% certain who owns it.

I guess @hrobeers or @peerchemist. I'm not 100% certain who owns it.

SK owns it, me and @hrobeers have full access though.

yeah, the github description.

Now that the repo has moved to https://github.com/peercoin/peercoin.net I've updated the https link for the peercoin.net repo. Peerchemist will have to change the link on the main group at https://github.com/peercoin though. He's in this thread but I've also sent him a message on peercoin.chat so I'll close this issue.


Added two Euclid ERO images

NGC 6822 and IC 342 added to Constellations

These look great!

Yea, I agree!  Did these get added to any catalog as well?  I can't find them in our list of collections
<Folder Name="Collections" Group="Explorer">
<Folder Name="All-Sky Surveys" Url="http://www.worldwidetelescope.org/wwtweb/catalog.aspx?W=surveys" Group="Explorer" Thumbnail="http://www.worldwidetelescope.org/wwtweb/thumbnail.aspx?name=aitoff"/>
<Folder Name="HiPS Surveys" Url="http://www.worldwidetelescope.org/wwtweb/catalog.aspx?W=hips" Group="Explorer" Thumbnail="http://www.worldwidetelescope.org/wwtweb/thumbnail.aspx?name=aitoff"/>
<Folder Name="Spitzer Studies" Url="http://www.worldwidetelescope.org/wwtweb/catalog.aspx?W=studiesspitzer" Group="Explorer" Searchable="True" Type="Sky" Thumbnail="http://www.worldwidetelescope.org/wwtweb/thumbnail.aspx?name=spitzer"/>
<Folder Name="Chandra Studies" Url="http://www.worldwidetelescope.org/wwtweb/catalog.aspx?W=studieschandra" Group="Explorer" Searchable="True" Type="Sky" Thumbnail="http://www.worldwidetelescope.org/wwtweb/thumbnail.aspx?name=chandra"/>
<Folder Name="Hubble Studies" Url="http://www.worldwidetelescope.org/wwtweb/catalog.aspx?W=studieshubble" Group="Explorer" Searchable="True" Type="Sky" Thumbnail="http://www.worldwidetelescope.org/wwtweb/thumbnail.aspx?name=hubble"/>
<Folder Name="Astrophotography" Url="http://www.worldwidetelescope.org/wwtweb/catalog.aspx?W=astrophoto" Group="Explorer" Searchable="True" Type="Sky" Thumbnail="http://www.worldwidetelescope.org/wwtweb/thumbnail.aspx?name=egastrophoto"/>
<Folder Name="SOFIA Studies" Url="http://www.worldwidetelescope.org/wwtweb/catalog.aspx?W=sofia_studies" Group="Explorer" Searchable="True" Type="Sky" Thumbnail="http://www.worldwidetelescope.org/wwtweb/thumbnail.aspx?name=nasa_sofia"/>
<Folder Name="Radio Studies" Url="http://www.worldwidetelescope.org/wwtweb/catalog.aspx?W=studiesradio" Group="Explorer" Searchable="True" Type="Sky" Thumbnail="http://www.worldwidetelescope.org/wwtweb/thumbnail.aspx?name=radiostudies"/>
<Folder Name="NOAO Studies" Url="http://www.worldwidetelescope.org/wwtweb/catalog.aspx?W=studiesnoao" Group="Explorer" Searchable="True" Type="Sky" Thumbnail="http://www.worldwidetelescope.org/wwtweb/thumbnail.aspx?name=noao"/>
<Folder Name="Gemini Studies" Url="http://www.worldwidetelescope.org/wwtweb/catalog.aspx?W=geministudies" Group="Explorer" Searchable="True" Type="Sky" Thumbnail="http://www.worldwidetelescope.org/wwtweb/thumbnail.aspx?name=geminiobservatory"/>
<Folder Name="JWST" Url="http://www.worldwidetelescope.org/wwtweb/catalog.aspx?W=jwst" Group="JWST" Thumbnail="http://www.worldwidetelescope.org/wwtweb/thumbnail.aspx?name=jwst"/>
<Folder Name="European Southern Observatory (ESO)" Url="http://www.worldwidetelescope.org/wwtweb/catalog.aspx?W=eso" Group="Explorer" Searchable="True" Thumbnail="http://www.worldwidetelescope.org/wwtweb/thumbnail.aspx?name=jwst"/>
</Folder>

Yea, we did set up our own (https://data.openspaceproject.com/wwt/1/imagecollection.wtml). The original reason was to remove the panorama ones. Would love to just refer to your collections as much as possible to prevent duplicate work and prevent mistakes, ofc, but I can add them to our collection for the time being.
Thanks!

Yeah, there's always a tradeoff with this sort of thing. @astrodavid10 do you have any opinions about integrating Euclid images into the Windows/webclient folder hierarchy? To add a new folder we'd just have to decide where to file it and create a little thumbnail image.


Added Cocktail Sort

Related Issue

Cocktail Sort Cocktail Sort #452

Proposed Changes

Added about Cocktail Sort

Additional Info

It is a variation of bubble sort.

Checklist

[x] ✅ My code follows the code style of this project.
[x] 📝 My change requires a change to the README.
[ ] 🎀 I have updated the README accordingly.
[x] 👀 I have read the CONTRIBUTING document.
[x] ✨ I have added tests to cover my changes.
[x] 🚩 All new and existing tests passed.
[x] 🌟 ed the repo

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

Output Screenshots

Screenshot #1
Screenshot #2

Title goes here
Title goes here

Image goes here
Image goes here

Make sure your Pull Request is descriptive and complete the checklist .
I would recommend you to go through this tutorial video of the project here ,thanks.
You need to follow particular guidelines for your README , please follow
these guidelines click here
also you can see how your README should look like see here
for more please go through these here

Why have you changed 4 files?


Defining short options?

I didn't see it in the documentation or I just missed it.
Is there a way to define a short option,
for instance, for --foo is there a way to define a short hand option, ie, -f?

No, this doesn't provide support for short options.  However, now that there is a way to customize generated options using a Modifiers record I could add support for that

That would be great.
Is there documentation for Modifiers outside of function reference at https://hackage.haskell.org/package/optparse-generic-1.1.5/docs/Options-Generic.html?

I opened up a pull request at #36 implementing support for short options and also improving the documentation.  Check that out and see if that satisfies your needs

Thanks! I'll close this up and continue the discussion in the pull request.


93A Demand Letter

What other kinds of claims for relief do we want to incorporate into the 93A demand letter


api [nfc]: Explain InitialData more; simplify register-queue interface

This started from the note here:
https://github.com/zulip/zulip-mobile/pull/4968#discussion_r696943253
to better explain how initialDataTypes.js is organized, and expanded as I noticed that the register-queue binding could be
cleaned up to make its interface better reflect how it actually behaves.

Ah, looks like the CI failure is that some snapshot-test snapshots should be updated.

Yeah -- the snapshot change just corresponds to the change in the example data. Pushed a revision.

LGTM, thanks! Please merge at will.


Package Download error

Description of the bug / バグの説明
Every time i try to update any package it gives the same error saying "error sending request for url (https://github.com/vrchat/packages/releases/download/3.7.5/com.vrchat.base-3.7.5.zip) (operation timed out)" with the URL changing for the different packages. If i open the url in my browser it will download perfectly fine so im not sure what to do.
It will then break the project as shown in the 2nd image, saying that there are almost no packages installed for the project.
Steps to Reproduce / 再現手順

Manage Project
Click to update or install any new package
It will attempt to but error

Expected Behavior / 想定される挙動
I expect it to download and add the package to my project
Screenshots / スクリーンショット

Software Version / バージョン情報
1.0.0-rc.1
OS
Windows 10.0.26100
Webview Version / Webviewバージョン
131.0.2903.112
Additional context / 補足
No response

the log says timeout so something took too long.
How long do you take to download https://github.com/vrchat/packages/releases/download/3.7.5/com.vrchat.base-3.7.5.zip ?
Are you under some proxy? or some firewall blocks connection to github?
Do you have some previous ALCOM versions that works well

I have gigabit so near instant download and no proxies or firewall. it also happens on previous versions now, i downgraded to an older version to test.

Downloading packages from VCC works perfectly fine as well, thats how ive been fixing my projects

Umm...
How long do you take befpre seeing the error meassage since you clicked Apply of "Apply Changes" dialog?

about 10 seconds

Umm.... I'm thinking for days but I could not came up with some solution / root cause of the problem...
Could you check again if any network access from ALCOM are not blocked by some security features of your PC?
And I made small executale tries to download the url with verbose log.
Could you try running this program and send me output log?
download-test.zip

download-test-log.txt
As far as i can tell nothing is being blocked, all vrchat and alcom stuff are allowed in windows firewall, im not sure what else i can check


Using the bundle with current stable symfony version

Is there a recommended way to use this bundle with the current stable version of symfony? I've upgraded to the newest version, which results in Call to undefined method Symfony\Component\HttpFoundation\Request::getLocale() as this is apparently only available in the HEAD of the symfony master branch.

For the stable version, use the tagged version of the bundle

thanks a lot.


(PUP-10366) defense to exit calls

Before this commit, run_in_fork is calling exit with value
returned by block without any check. If a block returns nil,
puppet run will fail and raise TypeError exception.
With this correction, in case a block returns nil puppet will
call exit(1) an run will fail.

CLA signed by all contributors.

Could you update some of the call sites like https://github.com/puppetlabs/puppet/blob/7ee339c41b12eba6dc244f5c1fd4514d34e481ad/lib/puppet/agent.rb#L64 to explicitly return 1. I think there may be a few other sites, but I haven't looked closely.

Looks good but we should have this targeted to 5.5.x since it impacts PE 2018.1.x.


Big Compilation (video timecodes)

https://youtu.be/Zg2UkHzJtLE
bugs timecodes:
07:07 - lagg
47:30 - strange food eating softlock
59:13 - attack and runaway tasks conflict
1:04:51 - strange TimeoutWanderTask softlock
01:12:06 - stopped collecting beds, didn't re-craft shield and other stuff, didn't sleep through the night, ran straight to the silverfish spawner :D
Developer Notes (leave this blank)
Difficulty: __
Estimated Time Required: __
Once development starts.

Thank you for the report, really appriciate it!
For the lag, no idea what might have caused it... These things are really hard to debug
I have never seem anything like the food eating glitch before.. Altough I will definitely need to investigate that
The TimeoutWanderTask softlock also seems strange to me..
And oh boy, dont know if you realise but you found one of the rarest (and stupidest) bugs I think! :D
The bot constantly checks for the portal and if it founds it, it just goes there... 100% need to change that lmao
Again, thank you for the report!

For the food eating bug, a hotfix might be just something like checking if the bot is trying to eat for a suspiciously long time and the hunger isnt going up...

Actually, for the lag I remember there being some commits saying that running a specific ResourceTask for too long on Hackerokuz's fork... Might be the issue, because the bot took a lot of time getting the pickace...

For the lag, I found a memory leak in the code xd
Will try to fix and push that ASAP

The memory leak should now be fixed in the latest release

All of these should be (finally 😅) fixed!


[Release] Stage to Main

Includes:

https://github.com/adobecom/milo/pull/1957
https://github.com/adobecom/milo/pull/1946
https://github.com/adobecom/milo/pull/2014
https://github.com/adobecom/milo/pull/2006
https://github.com/adobecom/milo/pull/1901
https://github.com/adobecom/milo/pull/2016

@yesil  I have few issues mentioned in https://jira.corp.adobe.com/browse/MWPW-144575 which needs to be fixed before this goes to Main , hence won't be able to sign off at the moment... discussed with @mirafedas on those

Our team is still seeing some issue with the modal in iphone with the fix going in this PR. Please see the details in the ticket here https://jira.corp.adobe.com/browse/MWPW-144601
cc @sigadamvenkata  @spadmasa @dstrong23 @salonijain3 @yesil @mirafedas

Validation done from CC and details are updated in https://jira.corp.adobe.com/browse/MWPW-144601

@yesil I have few issues mentioned in https://jira.corp.adobe.com/browse/MWPW-144575 which needs to be fixed before this goes to Main , hence won't be able to sign off at the moment... discussed with @mirafedas on those

Fixed with https://github.com/adobecom/milo/pull/2021


[PROD QA] Navigate to Concierge chat from Statement

Details

Fixed Issues

$ https://github.com/Expensify/App/issues/11097
Tests

Difficult to test on platforms besides web unless you're on production since there is no way to access the statement on NewDot without modifying the URL

Access the statement using the URL http://localhost:8080/statements/202201/
You should see something like this

Click on the concierge email and ensure that it redirects you to the concierge chat

To test on other devices, this is what I do: https://github.com/Expensify/App/blob/9489c1bf7aa6e26780b4ef513cf167f2fe9adb42/src/pages/home/sidebar/SidebarScreen/FloatingActionButtonAndPopover.js#L172-L176
Update to
onSelected: () => Navigation.navigate(ROUTES.getWalletStatementWithDateRoute('202211')),
This will override the new chat button to open up the statement for November, 2022
Offline tests

QA Steps

No QA
INTERNAL QA - PROD QA ONLY

On a mobile device, go to your Concierge chat (on your expensify account).
You should see a message link this - click on the link

On the statement page, click on the Concierge email address
It should open up the chat with Concierge in NewDot

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] 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 correct English and 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 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] 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/30609178/211116167-a62aa238-e076-40b8-ba48-45aab532a309.mov

Mobile Web - Chrome

https://user-images.githubusercontent.com/30609178/211117246-1350b239-13c2-4f7a-bae9-1220757e7640.mov

Mobile Web - Safari

Running into SSL errors (will test on prod)

Desktop

https://user-images.githubusercontent.com/30609178/211117330-db44651a-ef61-460c-a20f-78b1b5ecbbdb.mov

iOS
Running into SSL errors (will test on prod)

Android
x

Removing since this requires an internal engineer to test the statement

Reviewer Checklist

[ ] I have verified the author checklist is complete (all boxes are checked off).
[ ] I verified the correct issue is linked in the ### Fixed Issues section above
[ ] I verified testing steps are clear and they cover the changes made in this PR

[ ] I verified the steps for local testing are in the Tests section
[ ] I verified the steps for Staging and/or Production testing are in the QA steps section
[ ] I verified the steps cover any possible failure scenarios (i.e. verify an input displays the correct error message if the entered data is not correct)
[ ] 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)

[ ] I checked that screenshots or videos are included for tests on all platforms
[ ] I included screenshots or videos for tests on all platforms
[ ] I verified tests pass on all platforms & I tested again on:

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

[ ] If there are any errors in the console that are unrelated to this PR, I either fixed them (preferred) or linked to where I reported them in Slack
[ ] I verified proper code patterns were followed (see Reviewing the code)

[ ] 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).
[ ] I verified that comments were added to code that is not self explanatory
[ ] 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.
[ ] I verified any copy / text shown in the product is localized by adding it to src/languages/* files and using the translation method
[ ] I verified all numbers, amounts, dates and phone numbers shown in the product are using the localization methods
[ ] I verified any copy / text that was added to the app is correct English and approved by marketing by adding the Waiting for Copy label for a copy review on the original GH to get the correct copy.
[ ] 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.
[ ] I verified the JSDocs style guidelines (in STYLE.md) were followed

[ ] If a new code pattern is added I verified it was agreed to be used by multiple Expensify engineers
[ ] I verified that this PR follows the guidelines as stated in the Review Guidelines
[ ] I verified other components that can be impacted by these changes have been tested, and I retested again (i.e. if the PR modifies a shared library or component like Avatar, I verified the components using Avatar have been tested & I retested again)
[ ] I verified all code is DRY (the PR doesn't include any logic written more than once, with the exception of tests)
[ ] 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
[ ] If a new component is created I verified that:

[ ] A similar component doesn't exist in the codebase
[ ] All props are defined accurately and each prop has a /** comment above it */
[ ] The file is named correctly
[ ] The component has a clear name that is non-ambiguous and the purpose of the component can be inferred from the name alone
[ ] The only data being stored in the state is data necessary for rendering and nothing else
[ ] 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)
[ ] 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)
[ ] All JSX used for rendering exists in the render method
[ ] 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

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

[ ] 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

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

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

[ ] 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)
[ ] 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.
[ ] 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.
[ ] I have checked off every checkbox in the PR reviewer checklist, including those that don't apply to this PR.

Screenshots/Videos

Web

Mobile Web - Chrome

Mobile Web - Safari

Desktop

iOS

Android

🚀 Deployed to production by @Julesssss in version: 1.2.52-4 🚀

platform
result

🤖 android 🤖
success ✅

🖥 desktop 🖥
success ✅

🍎 iOS 🍎
success ✅

🕸 web 🕸
success ✅


Methods concept: two minor fixes about grammar and punctuation

Sorry, this is my fault.

My bad for not noticing it too initially :)
This is conflicting with the main branch of the repository because the main branch already has these 2 lines. My suggestion to fix this would be to first update your branch that is linked with this PR patch-5 to be up-to-date with the main branch and then perform the changes.

What about now?

The files you were supposed to change look good, but it also looks like you've included some extra files - I assume these were auxiliary files you forgot to exclude from your commit. Remove those extra files and we'll merge!

Sorry for committing those extra files.


Update readme screenshots for 4.3

Resolves https://github.com/godotengine/godot/issues/95761.
Screenshots taken on Windows 10.
I imported the master (4.x) branch of the TPS demo and moved some things around to match the old screenshot. I also turned on SSAO, SSIL, SDFGI, Volumetric Fog, and Glow on mostly default settings. Unfortunately, the particles on the core don't look like 3.5beta anymore. I tried turning up the max number of particles on each emitter but it didn't help.
I used self-contained mode, so this should be the default editor look on Windows 10 Godot 4.3.
The 1080 JPG was created by exporting the raw 1080 PNG screenshot at ~90% quality from Krita, to match the existing filesize.
For the 4K screenshot, I set DSR to 4x (3840 x2160) on my NVIDIA GeForce GTX 1660. I set the editor scaling to 100% - apparently Godot does not need the editor scaling changed for higher resolutions, at least with the DSR setup I used.

For the 4K screenshot, I set DSR to 4x (3840 x2160) on my NVIDIA GeForce GTX 1660. I set the editor scaling to 100% - apparently Godot does not need the editor scaling changed for higher resolutions, at least with the DSR setup I used.

Unfortunately, the screenshot you included looks like a 1080p screenshot with 2× nearest-neighbor scaling. It's not an actual hiDPI screenshot.

It's a bit of work to set up the project so it looks the same as the 3.5 version, so I'll try again. I missed the step of setting windows scale.

Final steps that worked for me:

Turn on DSR 4x. DSR smoothing was set to 50% (as I understand it, this shouldn't affect the outcome, only what displays on the 1080 screen.)
Set one 1080 monitor to 4K in windows display settings.
In windows settings, Display -> Scale and Layout -> Advanced scaling settings. Uncheck Let Windows try to fix apps so they're not blurry. Set custom scaling to 200%.
Log out. Log in.
Set Godot editor scale to 200% (Editor -> Editor Settings... -> Interface -> Editor -> Display Scale).
Take screenshot.

The particle effect downgrade was bothering me. I double checked and found that there was an actual VFX hidden underneath the orange sphere. Also made some tweaks to WorldEnvironment.
Now I'm happy with these screenshots as a representation of Godot 4.3.

Thanks for your patience with the upscaling!

thanks!


Document steps to follow when moving to a new version of the Swift binaries

Let's use the Wiki for this.

Steps can now be found here: https://github.com/IBM-Swift/Kitura/wiki/Moving-To-A-New-Version-Of-The-Swift-Binaries

@dfirsht Let me know if you'd like to add any steps.

Looks good to me.


Algorithm Greedy (Easy)

Solve Jim and the Orders and Largest Permutation

I want to do it in C++

i'll do em in Python

Assign me for Java

Assign me


Reduce noise when running entropy checks

When there's a word on a line with high entropy, we check if the line
matches any of the regex configured on the lineregexes element of the
entropy section. If so, it's marked as a leaked.
This has reduced the number of leaks found with entropy enabled up to
80%
This would close #155

@zricethezav sure! So, --entropy would include everything and --noise-reduction would apply these regexes, is that ok?

@camaya exactly


aggregate_failures hides exceptions in after block

Hi folks,
Some coworkers(@sfbrian & @claudiajf) and I stumbled upon what seems like a bug when using aggregate_failures. In our tests we have RSpec after hooks setup that check for example.exception which works normally. However when a spec has the aggregate_failures tag and it throws an exception, example.exception is nil.
PR #2288 has a spec that demonstrates this behavior.
@myronmarston when using aggregate_failures is there another way we should be checking for exceptions after an example other than this?
RSpec.configure do |config|
  config.after do |example|
    # Both return true with aggregate_failures
    example.exception.nil?
    example.execution_result.exception.nil?
  end
end

This is by design.  Remember that an after hook -- while a separate block of code from it -- is really part of the example. Failures in an after hook will make the example fail.  Since it could fail, aggregate_failures is still waiting to see if there are any more exceptions to include in its single, aggregate exception, so the example exception (if any) hasn't been assigned at that point.
In general, you can't count on the final result of an example being available in an after hook since it the hook is really part of the example.  Instead, you should wire up a listener to be notified after each example finishes and you can check the result there:
class ExampleListener
  def example_finished(notification)
    # you can access notification.example.exception here
  end
end

RSpec.configure do |c|
  c.reporter.register_listener ExampleListener.new, :example_finished
end

Thanks for the quick reply! I'll give it a try!

Hey @myronmarston I appreciate the work around. It works for checking the exception! Would you happen to also know why notification.example.execution_result.finished_at and notification.example.execution_result.status both return nil? My expectations was that the reporter ran after record_finished was called.

That surprises me, too.  Can you put together an reproducible example demonstrating the issue?

Sure thing! I'll work on that and I'll open a new issue to track it.

What if you want to use around ? I want to catch the exception and retry the example. Also, it seems you cannot register for specific tags.

@MaicolBen

What if you want to use around ? I want to catch the exception and retry the example.

It seems to be possible according to https://github.com/NoRedInk/rspec-retry/issues/72#issuecomment-509770334

Also, it seems you cannot register for specific tags.

Not sure what you mean exactly, can you please elaborate?

Not sure what you mean exactly

Achieve the next code with register:
config.around :each, type: :feature do |ex|
   ex.run_with_retry retry: 3
 end

It seems to be possible according to

I came from there, for now, we don't know is possible until we see some code. I tried myself and failed, so I'm going to remove aggregate_failures

Around hooks are also part of the example, so the same problem is likely to exist, I wonder how we can expose that aggregate failures is in use and some how allow access to see if any exceptions have occurred so far (and potentially clear them), as thats all whats needed for rspec-retry's purposes...

config.around :each, type: :feature do |ex|
  ex.run_with_retry retry: 3
end

This code should work, as long as it's being called in a required configuration block before the spec is run...


Kubernetes segment spams "error: current-context is not set" if kubectl available but not configured yet

When the command exists but kubernetes has no context currently configured, kubectl config current-context prints error: current-context is not set into the stderr.
It's annoying and can be bypassed by disabling the Kubernetes segment temporarily HOWEVER I think it may be worth fixing here:
https://github.com/chris-marsh/pureline/blob/main/segments/kubernetes_segment#L12
and changing it for:
        local context=$(kubectl config current-context 2>/dev/null)

to silence the stderr (because you have the exit code and stdout will be empty when not set, so it's superfluous.)

Thanks for the report and fix. I'll include it soon.


split pane changes

Closing in favor of https://github.com/vizhub-core/vzcode/pull/831
Some good ideas here! Specifically
for (const child of activePane.children) {

We'll need this sort of logic in the new SplitPaneView component! More like activePane.children.map(child => <SplitPaneView/>) or something - a recursive React component, which is super cool.
Also the
 // TODO Copy the tab list from the active pane

is totally valid and still needs to be done. Cheers!


Find Widget undo/redo stack doesn't work properly in Chrome

monaco-editor version: 0.14.6(6c8f02b41db9ae5c4d15df767d47755e5c73b9d5) - or whatever https://microsoft.github.io/monaco-editor/index.html is using
Browser: recent Chrome / Chromium, e.g. Version 68.0.3440.106 (Official Build) (64-bit)
OS: Windows, Linux
Steps or JS usage snippet reproducing the issue:

From https://github.com/Microsoft/vscode/issues/27035:

Steps to Reproduce:
Press Ctrl-F
Type something into the field
Select some text in the file being edited
Press Ctrl-F again
Try to undo/redo using keyboard shortcuts

Let's continue tracking in https://github.com/microsoft/vscode/issues/27035


Update file-manager extension

Description
Resolved an issue with deleting non-empty folders.
Screencast

Checklist

[x] I read the extension guidelines
[x] I read the documentation about publishing
[x] I ran npm run build and tested this distribution build in Raycast
[x] I checked that files in the assets folder are used by the extension itself
[x] I checked that assets used by the README are placed outside of the metadata folder

looks good 👍


feat(material): mat-hint alignment support

What kind of change does this PR introduce? (Bug fix, feature, docs update, ...)
Adds support for aligning mat-hints to the left or right (start or end).
Adds example on how to use to the docs
What is the current behavior? (You can also link to an open issue here)
Mat-hint is supported on form-fields through the description templateOptions property.
However, specifying the alignment of the hint is not supported.
What is the new behavior (if this is a feature change)?
You can display one start-aligned hint and one end-aligned hint. You can specify one or both.
Please check if the PR fulfills these requirements

[x] The commit messages follow our guidelines: https://github.com/angular/angular.js/blob/master/CONTRIBUTING.md#commit-message-format
[ ] A unit test has been written for this change.
[x] Running npm run build produced a successful build. (Unit testing can be done by running npm test;)
[x] My code has been linted. (npm run lint to do this. npm run build will fail if there are files not linted.)

Please provide a screenshot of this feature before and after your code changes, if applicable.

Other information:
No logic has been added, thus no unit tests added

@glenngr thanks for the PR, I'll check it when time allows :).

@aitboudad Great, thanks.
The only library code that has changed are the two lines here: https://github.com/ngx-formly/ngx-formly/pull/2169/commits/066080248a144037eea24af768fe5c9b74d80ce8#diff-f9b5c78ee270aed839b443fa98d571de
The other changes are documentation.

any news?

Hi, sorry for the delay right now the current PR has some limitation that needs some adjustments.
What I'm looking for is a solution similar to the prefix and suffix https://formly.dev/examples/other/material-prefix-suffix

The existing support for mat-hint is through the description property in templateOptions. Only strings are supported.
The description property translates to <mat-hint> in the form-field.wrapper.ts
<mat-hint> accepts a content-block, so we can implement it the way you suggest.
But what about backwards compatibility and usability? I think having a solution that only supports a template, like the prefix and suffix solution, is more flexible but it also requires more work to use it.
So the library should either support both string and templates, or only strings (because description only supports string).
I was thinking about creating a component to be used within the material form-field-wrapper that accepts either a template or a string and renders it. It could be used both for prefix,/suffix and for hints.
      <mat-hint *ngIf="field._matHintEnd as hintEnd" [id]="null" align="end">
        <formly-string-or-template [content]="hintEnd"></formly-string-or-template>
      </mat-hint>

What do you think? You will get what you asked for (template support for hints like in prefix/suffix), and in addition you will get string support for both prefix/suffix and hints.

@aitboudad I have updated my PR to reflect your comments and my ideas. I also rebased on master

Hey, I'll check your change in the following week, promised :pray:!

LGTM, the only issue is the ExpressionChangedAfterItHasBeenCheckedError which we need to find a solution before merging

I think I'm able to fix it, could you please enable "Allow edits" checkbox of this PR:

I am unable to find that checkbox. Where is it supposed to be?

close in favor of #2646

close in favor of #2646


Consider changing time sync defaults from NTP to chrony

Way back in 2018, @bdarnell suggested we might want recommend chrony instead of NTP as the default time sync software: https://github.com/cockroachdb/docs/issues/3856. I think this got lost, so putting it back in the queue.

I still feel like most people should use whatever is the default on their linux distribution - switching from one to another is error-prone and I don't think we want to encourage this. If you really are setting something up from scratch chrony is probably the best choice, but that's very uncommon.

More details from @bdarnell:

we generally want to recommend the platform's default time sync service to avoid interference between them (we've seen problems related to this in practice where two time synchronizers were active at once). But... as far as I know chrony is the "best" and if you're installing something with a clean slate that's the one to use. On ubuntu I wouldn't recommend replacing the default systemd-timesyncd with ntpd.


atomically write config file (POSIX only)

Config file can be updated concurrently so atomic write is necessary.
In this implementation, we write to a guaranteed unique temporary file - no concurrency issue. The issue becomes renaming the temp file to the final config name. On POSIX systems, this rename is atomic. @benbjohnson 's  FIX remains for non-POSIX systems.

Closing because influxdb/raft support is discontinuing.


BaseEvent attribute "transition_query" should be "transition_queries"

For consistency, I think the BaseEvent attribute "transition_query" should be "transition_queries"

This issue should be addressed after #181 is merged


Support remote assets in Bundle

It would be nice to be able to do something like
helper_libs = Bundle('https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.15.1/moment.min.js',
                                   'static/js/shims.js'
                                    output='public/libs.js')

Here's my current thinking for how this could work:

webassets would detect it as remote URL and download the raw file (if it doesn't exist yet)
the rest of the pipeline would continue and the url of the file for the rest of the process is the download location
tracking for changes is detecting changes on the URL.

If this isn't a goal of webassets/not a good fit - it looks easy enough to do as an extension/separate library.
I'd welcome implementation suggestions. My current implementation that doesn't touch the internals of webassets creates a subclass of Bundle (WebBundle) and defines the _urls method.

URLs are already supported; the limitation is that they are currently always fetched. We don't query for etags or something similar.


Make Eth2Genesis log produce a serialized object

For cleanliness we could have the Eth2Genesis log produce a serialized object, similar to how Deposit logs produce serialized objects. The Eth2Genesis object could be something like:
{
    'genesis_time': 'uint64',
    'deposit_root': Hash,
    'deposit_count': 'uint64',
}

@JustinDrake
Ah just realized it's a 23-day ago issue after assigning myself.
The Deposit log will be fields instead of serialized data after  https://github.com/ethereum/deposit_contract/pull/31, and it's okay to close this issue?

Logging the fields is the best 👍


Parse HTTP status-line even when reason-phrase not included.

Background: https://github.com/jakubroztocil/httpie/issues/811

@birkenfeld a non-capturing group is indeed a better solution — I’ve update the code.

Thanks!


Please confirm these before moving forward

[X] I have searched for my issue and not found a work-in-progress/duplicate/resolved issue.
[X] I have not been informed if the issue is resolved in a preview version of the winget client.

Category of the issue
Installation issue.
Brief description of your issue
Trying to install renders the following error
Installer hash does not match; this cannot be overridden when running as admin
Steps to reproduce
Execute the following from the terminal
winget install AntibodySoftware.WizTree
Actual behavior
This is the output:
PS C:\Users\xxxxxxx> winget install AntibodySoftware.WizTree
Found WizTree [AntibodySoftware.WizTree] Version 4.19
This application is licensed to you by its owner.
Microsoft is not responsible for, nor does it grant any licenses to, third-party packages.
Downloading https://diskanalyzer.com/files/wiztree_4_19_setup.exe
  ██████████████████████████████  4.65 MB / 4.65 MB
Installer hash does not match; this cannot be overridden when running as admin
PS C:\Users\xxxxxxx>

Expected behavior
That the package AntibodySoftware.WizTree installed successfully.
Environment
Windows Package Manager v1.8.1911
Copyright (c) Microsoft Corporation. All rights reserved.

Windows: Windows.Desktop v10.0.22631.3880
System Architecture: X64
Package: Microsoft.DesktopAppInstaller v1.23.1911.0

Winget Directories
-----------------------------------------------------------------------------------------------------------------------
Logs                               %LOCALAPPDATA%\Packages\Microsoft.DesktopAppInstaller_8wekyb3d8bbwe\LocalState\Diag…
User Settings                      %LOCALAPPDATA%\Packages\Microsoft.DesktopAppInstaller_8wekyb3d8bbwe\LocalState\sett…
Portable Links Directory (User)    %LOCALAPPDATA%\Microsoft\WinGet\Links
Portable Links Directory (Machine) C:\Program Files\WinGet\Links
Portable Package Root (User)       %LOCALAPPDATA%\Microsoft\WinGet\Packages
Portable Package Root              C:\Program Files\WinGet\Packages
Portable Package Root (x86)        C:\Program Files (x86)\WinGet\Packages
Installer Downloads                %USERPROFILE%\Downloads

Links
---------------------------------------------------------------------------
Privacy Statement   https://aka.ms/winget-privacy
License Agreement   https://aka.ms/winget-license
Third Party Notices https://aka.ms/winget-3rdPartyNotice
Homepage            https://aka.ms/winget
Windows Store Terms https://www.microsoft.com/en-us/storedocs/terms-of-sale

Admin Setting                             State
--------------------------------------------------
LocalManifestFiles                        Disabled
BypassCertificatePinningForMicrosoftStore Disabled
InstallerHashOverride                     Disabled
LocalArchiveMalwareScanOverride           Disabled
ProxyCommandLineOptions                   Disabled
DefaultProxy                              Disabled

Screenshots and Logs
No response

Issue verified.
16:28:37 D:\...\winget-pkgs  [issues/165210] 8.763s pwsh> winget download -e AntibodySoftware.WizTree --version 4.19
已找到 WizTree [AntibodySoftware.WizTree] 版本 4.19
此应用程序由其所有者授权给你。
Microsoft 对第三方程序包概不负责，也不向第三方程序包授予任何许可证。
正在下载 https://diskanalyzer.com/files/wiztree_4_19_setup.exe
  ██████████████████████████████  4.65 MB / 4.65 MB
安装程序哈希不匹配。

Currently in progress.

See #165058

Already solved and should be closed as "completed". CC @BraveThrasher @stephengillie

See #165282

Already solved and should be closed as "completed". CC @ BraveThrasher @ stephengillie

See Automatic deletion of AntibodySoftware.WizTree 4.19 #165282


Webpage displays only xml

I'm trying to build a website for a project and deploy it with Github pages. The website preview is available here, the source code for the website in the website-source branch and the deployed website in the gh-pages branch. I have no idea why only the XML portion of the website is displayed.
I use the deploy.sh script in the website-source branch to do all the adding, commiting and pushing, but the problem is probably in the source of the website.
While building the website I do get a few warnings which I'll try and upload tomorrow, though they say something about HTML, the page and home directories.

Here's the error: Building sites … WARN 2019/08/13 14:28:33 found no layout file for "HTML" for "page": You should create a template file which matches Hugo Layouts Lookup Rules for this combination. WARN 2019/08/13 14:28:33 found no layout file for "HTML" for "page": You should create a template file which matches Hugo Layouts Lookup Rules for this combination. WARN 2019/08/13 14:28:33 found no layout file for "HTML" for "page": You should create a template file which matches Hugo Layouts Lookup Rules for this combination. WARN 2019/08/13 14:28:33 found no layout file for "HTML" for "home": You should create a template file which matches Hugo Layouts Lookup Rules for this combination. WARN 2019/08/13 14:28:33 found no layout file for "HTML" for "section": You should create a template file which matches Hugo Layouts Lookup Rules for this combination. WARN 2019/08/13 14:28:33 found no layout file for "HTML" for "taxonomyTerm": You should create a template file which matches Hugo Layouts Lookup Rules for this combination. WARN 2019/08/13 14:28:33 found no layout file for "HTML" for "taxonomyTerm": You should create a template file which matches Hugo Layouts Lookup Rules for this combination.

Fixed it: the theme submodule wasn't properly downloaded.


Kill states after enabling of rule

Hi,
Thanks for a nice piece of code!
Maybe I have read over it, but is there a way to kill states after a rule gets enabled?
Even better would be a config option in the API call.

Interesting idea - added to the enhancements list, will take a look at next release


Added Sliding window topic in data structure

Added an important problem based on the Sliding Window problem and topic useful for placements.

@Shreyan111
Good work.
You can add other sliding window problems as well.
Also, you can follow me and star this repo for further updates.
Have fun.


Faster GurobiQP

This PR:

makes use of addMVar to vectorize the creation of variables
implements a fast seeding mechanism + caching for DPP problems
Currently: recreate a model object from scratch and set the Start attribute on each variable sequentially from the last model solution (warm start, no way to specify starting point manually).
This PR: re-use the model object without recreating it and seed it in a vectorized fashion (for variables as well as constraints) from the value attributes of the leafs. This allows for specifying an arbitrary seed from the top-level cp.Variable objects prior to any model run, but also makes the model itself cached in the case where the problem is DPP. However there is no "automatic" warm-start behavior anymore.

Since this PR drops support for Gurobi < 9 and changes the warm start behavior, I'd like to gauge the appetite of the maintainers before investing more time into testing+backward compatibility considerations.
Internal benchmark on small/medium-size MIPs show significant performance improvements.

@gglockner , would you or someone else at Gurobi like to provide input on this PR?
@bstellato , I've added you as a reviewer for this PR, since you recently merged in a PR modifying the warm-start behavior of the Gurobi interface.
A high-level comment: I'm not sure how many of our users rely on Gurobi < 9. If some do, one option is to check the version of the gurobipy package in the interface, and fall-back to the old implementation if the version is < 9.

Pinging @gglockner once more. A change like this would likely make Gurobi a lot more useful to many people

I'm interested in looking at this but it's going to be a couple of weeks until I get time. Perhaps @rluce might be able to look at it sooner.

Give me a few days, I'll go over the changes.

A few thoughts on the performance impact mentioned above:

Can you post a (maybe contrieved?) example that shows the warm start performance improvement?
What is contributing more to the improved performance:  The (now) skipped rebuilding of the model, or the different pathway to set Start values for the variables?
In most cases it is not necessary to use MVar objects for good model building performance (in contrast to using addMConstr and friends.)  The fact that you set the Start attribute in a vectorized syntax is only a little more than syntactic sugar.  That said, you should get almost the same performance by using patterns like

x = model.addVars(3)
[...]
s = np.array([1,2,3])
model.setAttr('Start', x, s)

In my experience there will be pleny of users on Gurobi <9, so if you could check the performance without using MVars that would be great.

However there is no "automatic" warm-start behavior anymore.
I'm not familiar enough with the current warm starting behaviour to see all the implications.   Could you explain what the direct implication for existing code would be?

@rostyboost it would be great if you could look at this again when you get a chance. I'm pushing for a new release and trying to get a lot of these PRs in there.

Can you post a (maybe contrieved?) example that shows the warm start performance improvement?

Yes. I will work on publishing a benchmark here.

What is contributing more to the improved performance:  The (now) skipped rebuilding of the model, or the different pathway to set Start values for the variables?

Avoiding the rebuild of the model is by far the major contributing factor to the improved performance.

In my experience there will be pleny of users on Gurobi <9, so if you could check the performance without using MVars that would be great.

Yes, your intuition is correct: the use of MVars only brings minor performance gains. However it arguably makes the code substantially simpler to read. But if there are still plenty of Gurobi cvxpy users on < 9 , it makes sense to keep compatibility with older versions.

I'm not familiar enough with the current warm starting behaviour to see all the implications. Could you explain what the direct implication for existing code would be?

I am not sure how widely used current warm-start mechanism is. The direct implication of current PR proposal means that without manually seeding the solver with a solution from a previous run (or known by other means), there won't be a warm start happening. There might be a way to not break the current behavior by detecting when no user-specified seed have been provided and to re-use the last solution as a seed in such cases. I'll think about it.

@rostyboost would you like to keep this PR open? Just comment here if so and we can get the ball rolling. I think that overall I'd like to retain our current warm-start behavior and support Gurobi v8, but your idea of caching the Gurobi model is valuable.

Closing due to inactivity. Happy to re-open if someone would like to pick up where things left off!


mobile_back_samsung update

Extending Samsung backend for Flutter app to more phones.

@AhmedTElthakeb, please, rebase this to the last commit from the master branch to fix the CI.
android-build-pr is broken because your branch simply doesn't have the config for it, because it was added recently.


Support hash for website url default value

R=@mounirlamouri
FIX https://github.com/mounirlamouri/manifest-validator/issues/31

lgtm


error with training own data

Hi
when I trained my own data with 16KHz sample rate, there is an error as following:
InvalidArgumentError (see above for traceback): Assign requires shapes of both tensors to match. lhs shape= [165] rhs shape= [28]
my voca_size = data.voca_size = 165
How can I fix it?
Many thanks

i want to know how can i train my own data.
could you help me please?


chore: maintenance

see: https://answers.netlify.com/t/support-guide-what-s-the-easiest-way-to-create-a-temporary-maintenance-page-for-my-site/338

closing as this served it's purpose. going to leave this branch around.


Installation hangs on unpacking libmapnik.dylib

Hey,
trying to install on MacOS Sierra with Node v4.3.2 via NPM. The installation hangs on the node-pre-gyp part. I can wait for hours and nothing happens. No error, nothing...
node-pre-gyp info it worked if it ends with ok
node-pre-gyp verb cli [ '/Users/coderocket/.nvm/versions/node/v4.3.2/bin/node',
node-pre-gyp verb cli   '/Volumes/VisionsBox/Development/webGLobe/node_modules/mapnik/node_modules/.bin/node-pre-gyp',
node-pre-gyp verb cli   'install',
node-pre-gyp verb cli   '--fallback-to-build' ]
node-pre-gyp info using<EMAIL_ADDRESS>node-pre-gyp info using<EMAIL_ADDRESS>| darwin | x64
node-pre-gyp verb command install []
node-pre-gyp info check checked for "/Volumes/VisionsBox/Development/webGLobe/node_modules/mapnik/lib/binding/node-v46-darwin-x64/mapnik.node" (not found)
node-pre-gyp http GET https://mapbox-node-binary.s3.amazonaws.com/mapnik/v3.5.14/Release/node-v46-darwin-x64.tar.gz
node-pre-gyp http 200 https://mapbox-node-binary.s3.amazonaws.com/mapnik/v3.5.14/Release/node-v46-darwin-x64.tar.gz
node-pre-gyp info install unpacking libmapnik.dylib

After several retries, withput changing a thing, it worked... Don't know what happend here.

This problem may have been #650 - this should no longer happen with node-mapnik >= v3.6.0.


[Bug]: GPTCache only caches and consider "user" role part message for OpenAI

Current Behavior
OpenAI prompt contains user role and system role message, as example below:
message = [
{"role": "system", "content": " You are AI assistant to help answer question"},
{"role": "user", "content": "What is capital of USA?" }
]
But gptCache  only consider and caches "user" role part.
If two messages have same "user" msg but different "system" msg, they will be considered the same item, and the cached
result will be used by both.
Expected Behavior
If two messages have same "user" msg but different "system" msg, they MUST not be considered the same cache item.
Steps To Reproduce
No response
Environment
Ubuntu 22.04 x64

Anything else?
No response

@SimFG  Thanks!  Using this function works. I thought that it should be enabled by default.


Library request in cdnjs.

Hi ~
There's a library request in cdnjs, and we desire to contain Semantic-UI-React.
However, I must to make a check for the files that we need to added.
The file I'd like to add is:
dist/umd/semantic-ui-react.min.js
Is that complete for the user? Or other files required?
Thanks for your great work ✨
Piicksarn

@Piicksarn That is correct.  We also plan to add many more files.  Preferably, we would include the entire dist/umd/* directory.  If this is not possible, is this something that we can add ourselves later?
Thanks much for the response.

@Piicksarn any update on this? Thanks again.

Cool, looks like it is available now 👍


HEROKU IS NOT SUPPORTED.

App will be suspended immediately on heroku deployment.

There is a fix for that again create that app in that same name


Problem with login and register

After installation, I can't register. I get the message 404 NOT FOUND.  I'm trying to go to localhost/register.php and localhost/register and does not work.

You need to ensure that the rewrite module is enabled. (The mod_rewrite Apache module, ISAPI_Rewrite IIS module or nginx rewrite module )

Ahh... Yes... My bad. Sorry for the problem. I'm starting to test :)


[improvement](regression test) add fe debug point

Proposed changes
Issue Number: close #xxx

Further comments
If this is a relatively large or complex change, kick off the discussion at<EMAIL_ADDRESS>by explaining why you chose the solution you did and what alternatives you considered, etc...

run buildall

run buildall

run buildall

run p0

run buildall


Swipe doesn't move sliders & also if starting location ends up on certain elements

I wanted to use this routine as a general "flick" replacement since iOS 7.x Simulators have the API broken for swipe.
It works in some cases - if the starting location of the mouse-down is not on certain kinds of elements then it works & scrolls the screen up/down or left/right.
There are 2 cases where I've found where it doesn't work:

When you are trying to move a slider - I click down on the slider picker and move right and it doesn't work - the mouse moves right, but the slider picker just stays where it is.  This of course works properly when you do this manually with the mouse on the slider picker.
For a generalized "flick" you don't know what elements are going to be on the screen - you generally just start from a position like 0.5,0.5 and change Y so you flick up or down.  The problem is that some times the mouse down position ends up on top of an element that has been programmed to no scroll the screen.  Its is just the luck of the draw what will be at the location & depending on the screen you want to scroll there might not be an obvious starting location that will always work for scrolling.

Hi Vic,
Definitely enjoying this workaround, thanks!
I would +1 #1 above with the sliders.  Not sure how we would handle this in AppleScript


Slivers are painted in reverse order which may produce unexpected outputs

Steps to reproduce

Run the example
Switch the page from mainAxisPage to pageThroughSlivers
2.1. hot reload
2.2. observe no changes
Switch the page from pageThroughSlivers to pageThroughList
3.1. hot reload
3.2. observe a different display

Expected results
I expect all of these examples to produce the same result, but they don't.
The blue box rendered by mainAxisPage and pageThroughSlivers should be above the brown one like it is for pageThroughList.
Actual results
The actual result is that the brown box is rendered above the blue one for mainAxisPage and pageThroughSlivers.
It seems, when using slivers that wrap box widgets, the slivers are painted in reverse order.
Code sample
Code sample
import 'package:flutter/material.dart';

void main() {
  runApp(const MainApp());
}

class MainApp extends StatelessWidget {
  const MainApp({super.key});

  @override
  Widget build(BuildContext context) {
    const mainAxisPage = MainAxisGroupPage();
    const pageThroughSlivers = PageThroughSlivers();
    const pageThroughList = PageThroughList();

    return const MaterialApp(
      home: mainAxisPage,
    );
  }
}

const _brown = ColoredBox(
  color: Colors.brown,
  child: SizedBox(height: 100),
);
final _blue = Transform.translate(
  offset: const Offset(0, -50),
  child: const ColoredBox(
    color: Color(0xcc0000ff),
    child: SizedBox(height: 100),
  ),
);

class MainAxisGroupPage extends StatelessWidget {
  const MainAxisGroupPage({super.key});

  @override
  Widget build(BuildContext context) {
    return Scaffold(
      body: CustomScrollView(slivers: [
        SliverMainAxisGroup(slivers: [
          const SliverToBoxAdapter(child: _brown),
          SliverToBoxAdapter(child: _blue),
        ]),
      ]),
    );
  }
}

class PageThroughSlivers extends StatelessWidget {
  const PageThroughSlivers({super.key});

  @override
  Widget build(BuildContext context) {
    return Scaffold(
      body: CustomScrollView(slivers: [
        const SliverToBoxAdapter(child: _brown),
        SliverToBoxAdapter(child: _blue),
      ]),
    );
  }
}

class PageThroughList extends StatelessWidget {
  const PageThroughList({super.key});

  @override
  Widget build(BuildContext context) {
    return Scaffold(
      body: CustomScrollView(slivers: [
        SliverList.list(children: [
          _brown,
          _blue,
        ]),
      ]),
    );
  }
}

Screenshots or Video
No response
Logs
No response
Flutter Doctor output
Doctor output
[✓] Flutter (Channel stable, 3.19.3, on macOS 14.4 23E214 darwin-arm64, locale en-SI)
    • Flutter version 3.19.3 on channel stable at /Users/.../Development/flutter
    • Upstream repository https://github.com/flutter/flutter.git
    • Framework revision ba39319843 (2 weeks ago), 2024-03-07 15:22:21 -0600
    • Engine revision 2e4ba9c6fb
    • Dart version 3.3.1
    • DevTools version 2.31.1

[✓] Android toolchain - develop for Android devices (Android SDK version 34.0.0)
    • Android SDK at /Users/.../Library/Android/sdk
    • Platform android-34, build-tools 34.0.0
    • Java binary at: /Applications/Android Studio.app/Contents/jbr/Contents/Home/bin/java
    • Java version OpenJDK Runtime Environment (build 17.0.7+0-17.0.7b1000.6-10550314)
    • All Android licenses accepted.

[✓] Xcode - develop for iOS and macOS (Xcode 15.3)
    • Xcode at /Applications/Xcode.app/Contents/Developer
    • Build 15E204a
    • CocoaPods version 1.15.2

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

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

[✓] VS Code (version 1.88.0-insider)
    • VS Code at /Applications/Visual Studio Code - Insiders.app/Contents
    • Flutter extension version 3.84.0

[✓] Connected device (2 available)
    • macOS (desktop) • macos  • darwin-arm64   • macOS 14.4 23E214 darwin-arm64
    • Chrome (web)    • chrome • web-javascript • Google Chrome 123.0.6312.58

[✓] Network resources
    • All expected network resources are available.

• No issues found!

On second thought, as per @Piinks comment in #145572. This is probably intentional to enable slivers like SliverAppBar to render above the other contents in the scroll view.
So, this issue is probably more of a request to perhaps give slivers something similar to what Column has with verticalDirection, where the caller could control in what order slivers are painted in.

Thanks @jellynoone! Yes, this is intentional as slivers like pinned app bars can overlap at the leading edge of the viewport.
I've updated this to be a request for an option to change that layout order. I think it is documented somewhere, but I could not find it so we should make sure our docs reflect this behavior as well.
Alternatively, you could change the order of the slivers in the scroll view to achieve the desired effect when applying transforms.
We could also consider instead, there are no SliverStack or SliverPositioned widgets, which could behave like Stack and Positioned. Maybe these could create an easier way for folks to layout overlapping slivers.


[Algorithm] Implement soft-actor-critic

Seems a good candidate for inclusion:
https://arxiv.org/abs/1801.01290
Applications:
https://arxiv.org/abs/1812.05905

Contributed via PR by @janislavjankov, closing.


DAWN-685 ⁃ Pass processing off to the system contract for native actions

All native actions that target the system contract should also be delivered implicitly to the eosio.system wasm code.

This enables rejection based on extra criteria as well as allows WASM to maintain extra state about accounts and permissions.

This was closed by #1942


⚠ Bofrost.fr has degraded performance

In 2dd8130, Bofrost.fr (https://www.bofrost.fr) experienced degraded performance:

HTTP code: 200
Response time: 1216 ms

Resolved: Bofrost.fr performance has improved in 4b58b0f after 1 minute.


Uri Error

DiscordWebhook hook = new DiscordWebhook();
hook.Uri = new Uri("https://discordapp.com/hook-url");

gives me an error:

This are my Directives:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Net.Http;
using System.Net;
using System.Net.Sockets;
using System.IO;
using Newtonsoft.Json;
using CSharpDiscordWebhook.NET.Discord;

Can anyone help me?

Hello, until I fix this issue, you can use the following code
DiscordWebhook hook = new DiscordWebhook() { Uri = new Uri("https://discord.com/hook-url") };

Issue has been fixed and the latest release has been updated.


Label "Github Link" crosses the border of field with its value (minor bug) +

Testing Environment:
Windows 10, Google Chrome 73.0.3683.86 (64bit), 15.6", 1920х1080
Steps to reproduce:

Navigate to http://rfai.singularitynet.io.s3-website-us-east-1.amazonaws.com/
Scroll down to the first request on "Active" tab
Expand info about this request
Press "Submit solution" button
Observe the fields in opened window

EXPECTED RESULT:
Label "Github Link" doesn't cross the borders of fields with its values
ACTUAL RESULT:
Label "Github Link" crosses the borders of field with its value
Please see the video below

@raamb can you please request Ananya to fix the UI issue. Thanks

This is as per the UX provided

Ok, if it's per requirements then in this particular case I can agree, this design can be perceived as original /interesting one. Thanks Raam.


Fix leak in r3_tree_insert_pathl_ex()

Includes a testcase triggering the issue when building with the leak sanitizer.
Resource leak (CID 355063) found by Coverity,

Coverage increased (+1.2%) to 91.455% when pulling da83760814660d5f0340578682398c7f0b22579a on Nordix:fix-coverity-issue into edbeb0631d615a7751d20d5f11a3a8959d5facb6 on c9s:2.0.

Strange that the Coverity run succeded once only, according to https://scan.coverity.com/faq it should freely handle:
The number of weekly builds per project are as follows:
Up to 28 builds per week, with a maximum of 4 builds per day, for projects with fewer than 100K lines of code.

Will retrigger this run tomorrow and hopefully there is an inital problem only.
Otherwise we might need to put this CI step as an optional/informational step only.

wow! so fast!!

Perhaps you need to configure the pull_request event https://docs.github.com/en/actions/using-workflows/workflow-syntax-for-github-actions#using-a-single-event

Perhaps you need to configure the pull_request event https://docs.github.com/en/actions/using-workflows/workflow-syntax-for-github-actions#using-a-single-event

We get an attempt to run Coverity, so the trigger seems to be ok via: https://github.com/c9s/r3/blob/edbeb0631d615a7751d20d5f11a3a8959d5facb6/.github/workflows/coverity.yml#L2
When I tried to run the following download step manually (with COVERITY_TOKEN replaced with correct token) it seems to work.
https://github.com/c9s/r3/blob/edbeb0631d615a7751d20d5f11a3a8959d5facb6/.github/workflows/coverity.yml#L14
but when running with a slightly changed token, i.e a faulty one, I get the same error code as in the CI job. Error code 6 means
"Username/password authentication failure." for wget.
> wget -q https://scan.coverity.com/download/linux64 --post-data "token=w..<mod>..w&project=r3" -O coverity-linux64.tgz
> echo $?
6

I wonder if a space or something else sneaked in when you added the Coverity project token in the Github secret COVERITY_TOKEN?
Maybe you could try to regenerate the token in
https://scan.coverity.com/projects/r3?tab=project_settings

and then update the Github secret with this new value?
Still strange it worked one, but I'm out of ideas otherwise..

let me check

CI green on default branch after merged. Thanks for the help.


Hosting design inconsistencies and lifetime confusion

Given various issues and discussions around the design, as well as confusions about the lifetime and purposes of the individual interfaces (#1419, #1403, #1401, #1221), in my opinion a lot of parts should be revised and possibly re-designed for the next major release of the generic hosting infrastructure.
With the current design, I see the following problems:
Start / Stop on IHost
The current IHost contract offers a Start and Stop method. This gives away the impression that the host can be started and stopped as many times as desired (essentially restarted), as long as it hasn't been disposed. However, since the IApplicationLifetime (and it's cancellation hooks) is only resolved once, the host ends up in an inconsistent state (where e.g. hosted services are restarted multiple times, but the host lifetime is not).
Proposal
Either a) get rid of the Stop method entirely or b) allow the cancellation hooks of the IApplicationLifetime to be reset.
IHostLifetime
The purpose of the IHostLifetime is not really obvious. On one side, it kinda looks like a hosting environment which encapsulates the current type of the process. So in that regard, it's obvious that there must be one, and only one. However, what the implementations mostly do is hook themselves up to some application events upon start, and what to do if the application receives any external stop events (SIGTERM, service stop etc.), which can basically be done by any service which gets the IApplicationLifetime contract injected. So, why aren't there multiple host lifetimes?
Proposal
Either a) get rid of the IHostLifetime contract entirely. Instead, let the HostBuilder create a single, shared instance of ApplicationLifetime by itself, and offer a method to configure the lifetime. (Possibly even hooking the callbacks up into a delegate factory of the IServiceCollection, so that they can be configured with the awareness of an existing IServiceProvider.)
IHostBuilder ConfigureLifetime(Action<HostBuilderContext, IApplicationLifetime> callback)

... or b) get rid of them and instead introduce a IHostInitializer, as proposed by #1401.
Consistency in service lifetimes (resolving IHost)
In most applications which make extensive use of inversion of control, the DI container is the 'root' and major 'manager' of service lifetimes. It's the first thing being created, and the last thing being disposed (for services managed this way). In the current implementation of the hosting infrastructure, things aren't quite as obvious. The HostBuilder acts as a wrapper around the factory service which creates the DI container, but isn't responsible for disposing it afterwards. This is up to the IHost (through implementing IDisposable), but the IHost itself is registered within the DI container and resolved from it.
Proposal
Don't register the IHost within the IServiceCollection. Create it manually via the HostBuilder, and pass along an instance of the IServiceProvider for further resolving host lifetimes or the like. Dispose the IServiceProvider afterwards when disposing the IHost. That way, it's obvious what implementation is responsible for managing what lifetime. This would also solve the issue with the weird casting of the ApplicationLifetime which breaks the entire thing anyway when the implementation is being replaced (described in #169).
I know this issue is kinda broad, so I guess it's best labeled as discussion topic.
Proposed implementations
- IHost.cs
interface IHost : IDisposable
    Task ExecuteAsync(CancellationToken cancellationToken = default);

- IApplicationLifetime.cs
CancellationToken ApplicationStarting;
CancellationToken ApplicationStarted;
...

- HostBuilder.cs
IHostBuilder ConfigureLifetime(Action<HostBuilderContext, IServiceProvider, IApplicationLifetime> callback) {
    ... (add to list of callbacks)
}

IHost Build() {
    ...
    var lifetime = new ApplicationLifetime();
    services.AddSingleton(provider => {
        foreach(var configureLifetime in _configureLifetimes) {
            configureLifetime.Invoke(context, provider, lifetime);
        }
        return lifetime;
    }
    ...
    return new Host(lifetime, ...);
}

Some of these are great suggestions but they don’t affect the usage in any way. It merely cleans some implementation details.
The first one is breaking and we’ll never do it so better to make it work. The others are quality of code improvements that seem low priority IMO.
How does this fix those related bugs you linked?

@davidfowl Yes, those points indeed address the implementation details of certain concepts and not issues per se, since it's about resolving incosistencies and provide clear APIs that give away their intentions.

The first one is breaking and we’ll never do it so better to make it work.

I don't really understand this tbh. What do you mean by 'we'll never do it'. The IHost contract offers methods that are required to be called in a certain way in a certain state, and can cause the application to end up in an unclean state otherwise, which means that a user has to rely on external documentation in order to have things work as intended.

How does this fix those related bugs you linked?

The linked issues are not bugs either, but users who expressed confusion about a certain thing on the API or requested a certain feature which isn't quite obvious why it isn't there in the first place. The proposals provided would address certain parts of those issues. Actual bugs woulds be for instance #169, where simply swapping out the 'IApplicationLifetime' breaks the entire expected startup procedure.

I don't really understand this tbh. What do you mean by 'we'll never do it'. The IHost contract offers methods that are required to be called in a certain order in a certain state, and can cause the application to end up in an unclean state otherwise, which means that a user has to rely on external documentation or should be aware of the implementation in order to have things work as intended.

I mean, we could look at what it means to make Start and Stop work. Removing APIs really isn't an option.

The linked issues are not bugs either, but users who expressed confusion about a certain thing on the API or requested a certain feature which isn't quite obvious why it isn't there in the first place. The proposals provided would address certain parts of those issues. Actual bugs woulds be for instance #169, where simply swapping out the 'IApplicationLifetime' breaks the entire expected startup procedure.

If I'm being pedantic:

https://github.com/aspnet/Hosting/issues/1403

That isn't confusing, we didn't add that feature intentionally.

https://github.com/aspnet/Hosting/issues/1401

This is the same as https://github.com/aspnet/Hosting/issues/1221 and this particular problem should be solved with IHostedService. I wouldn't exactly call the problem important unless more than one person has the issue.

https://github.com/aspnet/Hosting/issues/1221

This is the same as 1401

@davidfowl #1403 was indeed a mistake on my side, since I confused IHostingStartup with something that post-configures the application after it has been built.
I think my point still stands. The API as well as internal things are made in a way a developer needs to be aware of the individual implementations if they would want to e.g. swap out something, as expressed by the reasons I stated in the first comment. After all, the entire infrastructure is built around a IoC container abstraction, and the APIs give away a sense of 'you can replace anything you want', which is not the case. I've updated my original issues with some clarifications etc.

I don’t disagree with some of the assessment it just has a low priority is all.

Tentatively putting this in 3.0.0.  Based on the priorities, we may end up moving it out.

This design is a little confusing, I asked a question here about it:
https://stackoverflow.com/questions/52413002/whats-the-difference-between-these-ways-to-start-run-a-generic-host-in-asp-net
I can call Run/Start on the HostBuilder class as well as on the Host class. And these two options (Start vs Run), are both of them really necessary?


Add www.teamleader.eu as an user

added my company name as per request

Provide a description of what has been changed
Checklist

[ ] Commits are signed with Developer Certificate of Origin (DCO)
[ ] A PR is opened to update the documentation on our docs repo

Fixes #

Great, thanks! Would you mind adding your logo and fix DCO issues please?

@karthikeyanVK could you please update this one? thanks!

struggling to check in my changes from local. Will figure out.

struggling to check in my changes from local. Will figure out.

You should open the PR from your fork, from the error message I can read that you are trying to push to kedacore/keda-docs repo, which won't work for you.

Created a new PR, please check https://github.com/kedacore/keda-docs/pull/492


Integrate with RunKit

Would be nice to automatically integrate codeblocks in the readme with RunKit so user's are one click away from trying them out.

That could be awesome. I suppose the way for doing that is creating a unified plugin that transforms code blocks into Runkit routine if the language of the code block is compatible (javascript or any alias like js)

Yeah! Runkit only supports js right? Or also things like ts? 🤔

JS only. https://runkit.com/docs

what about https://github.com/featurist/codesandbox-example-links?


Add monadic interface to solver

This allows to plug in concurrency monads like Lwt, Async or Dune's Fiber into the solver and have the callbacks return the concurrency monad.
Currently work in progress, needs support code in 0install-solver as well.

This isn't needed with OCaml 5 - in fact, the ICFP Eio tutorial used the example of performing Lwt operations in the solver's callback, without having to modify the solver at all.
It seems a shame to add all this just for older systems. Dune has a way to build on newer compilers but run with older ones - perhaps that could be used instead?


Resize bug with htop and win32-openssh

Environment
Windows build number: 18362.145
Windows Terminal version (if applicable): 0.0.1906.0716 Terminal CI
Windows 10 OpenSSH
Steps to reproduce

Connect to a linux server with ssh
Run htop on server
Maximize window
Recovery window
Exit htop

Expected behavior

Actual behavior

@Tarocch1 Does this repro with ssh from within WSL? Or only with the OpenSSH built in to Windows?

@zadjii-msft OpenSSH built in to Windows

That's what I thought. This is more likely than not an issue that actually belongs in PowerShell/Win32-OpenSSH


Hitting rate limits

We're writing a bot, and are doing end-to-end testing on a private server.
The bot starts up and then interacts with another bot in a channel on the private server during the tests.
We're getting rate-limited pretty heavily, and added a delay of 1100ms after every action (message, react, etc) in order to try to avoid being rate-limited.
This works okay, but we're still frequently rate-limited.
Reading the documentation, it seems like twilight delays requests based on the rate limit headers, so I think either we're doing something wrong, or this isn't working for some reason in our case.
Here's an example response we're getting:
Response { status: 429, version: HTTP/2.0, headers: {"date": "Sun, 18 Jul 20
21 20:33:39 GMT", "content-type": "application/json", "content-length": "92", "retry-after": "3", "set-cookie": "__dcfduid=SNIP; Expires=Fri, 17-Jul-2026 20:33:39 GMT; Max-Age=157680000; Secure; HttpOnly; Path=/", "strict-transport-security": "max-ag
e=31536000; includeSubDomains; preload", "x-ratelimit-bucket": "aa6a962e04660e4eb788914e1ef32c12", "x-ratelimit-limit": "30", "x-ratelimit-
remaining": "0", "x-ratelimit-reset": "1626640421.366", "x-ratelimit-reset-after": "2.148", "x-envoy-upstream-service-time": "8", "via": "1
.1 google", "alt-svc": "h3-27=":443"; ma=86400, h3-28=":443"; ma=86400, h3-29=":443"; ma=86400, h3=":443"; ma=86400", "cf-cache-sta
tus": "DYNAMIC", "expect-ct": "max-age=604800, report-uri="https://report-uri.cloudflare.com/cdn-cgi/beacon/expect-ct/"", "report-to": "{\
"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v3?s=SNIP"}],"group":"cf-nel","max_age":604800}", "nel": "{"report_to":"cf-nel\
","max_age":604800}", "x-content-type-options": "nosniff", "server": "cloudflare", "cf-ray": "SNIP"}, body: Body(Streamin
g) }

(Some things that looked like they might be cookies removed.)

I can reproduce it reliably locally, but I don't have a self-contained reproduction.

Thanks for the report. I have a couple of questions just so we have additional information:

what requests are you performing?
is this happening often?
are requests performed only in a burst reaching a 429 ratelimit?

Sorry it took so long to follow up! I wanted to update to the latest version of twilight before replying, since we were a few versions behind.

what requests are you performing?

We're running unit tests that send messages and react to messages in a guild channel.

is this happening often?

Sometimes we get 429 responses and sometimes we don't. I'd say maybe 20% of the time we run our integration test suite we get 429 warnings. However, even if we don't get warnings, are integration tests still fail. However, when we run them one at a time, they always pass, so I suspect that we're running into rate-limiting issues, even when we don't see explicit 429 warnings in the terminal.

are requests performed only in a burst reaching a 429 ratelimit?

Since we were getting rate-limited, we actually tried to have a minimum of 1 second between requests, so we're issuing requests at what should be an even cadence.
All our code is public in quwue/quwue but the setup required to get integration tests working makes everything so convoluted that I'm not sure that I recommend taking a look at it 😅
Here's a partial log of the integration tests run with RUST_LOG=warn,twilight_http=debug, you can see the output here.
We didn't get any explicit 429 warnings in this run, but the sequence of requests is the same as runs where we did.

This was probably fixed by #1348. If it wasn't please let us know


s3 afterPhantomRequest function not firing

When using the s3 plugin, the cached page is never being saved in S3. I see the get request returns an error saying: The specified key does not exist. I've debugged the node application and see that next() is being called in the beforePhantomRequest method, but my breakpoint in the afterPhantomRequest method never hits.

Two things:

I turned on logging and started seeing the "cache hit"
I finally started seeing the debugger hit the cache.set in the s3 plugin, however for some reason it only hits for a second then continues (so it doesn't actually stop at the breakpoint)

Everything is indeed working!


js-file: do not interpret html as grit instructions

Nothing to do with autofixing or with validateQuoteMark rule, just
an error in regexp.
Also does not catch cases when tags are actually tags not grit.
Can't do nothing about it at the moment, until we can extend parser
Fixes #1578
/cc @tonyganch

Can't do nothing about it at the moment, until we can extend parser

/cc @mikesherov

:+1: