[bug] post_accept_timeout struct element is removed in 1.19.7

../nginx-http-flv-module/ngx_rtmp.c:817:9: error: 'ngx_listening_t {aka struct ngx_listening_s}' has no member named 'post_accept_timeout'; did you mean 'post_accept_buffer_size'?
  ls->post_accept_timeout = 60000;

in 1.19.6 the code was
./nginx-1.19.6/src/core/ngx_connection.h:    ngx_msec_t          post_accept_timeout;
./nginx-1.19.6/src/http/ngx_http.c:    ls->post_accept_timeout = cscf->client_header_timeout;

maybe that structure element could be used to fix the code in this module.

See #191


Add fallback for IE background-color with rgba declarations

Add fallback for IE background-color with rgba declarations.

This change looks for rgba() declarations in custom values and modifies the output to have an initial rgb() solid-color declaration alongside it, eg:
.Bgc\(steve\) {
  background-color: rgba(45,45,45,0.3);
}
becomes...
```css
.Bgc\(steve\) {
  background-color: rgb(45,45,45);
  background-color: rgba(45,45,45,0.3);
}

This seems reasonable to me, though I do still wonder if stuff like this is better handled by a post-processor rather than in Atomizer.

Part of the issue here is that the fallback is opinionated - rather than using IE filters to achieve opacity, it assumes you want a solid color.  Maybe not a bad opinion, but still seems like something that shouldn't be decided by Atomizer
fyi @renatoi

I agree. Even though it's worth considering adding it, I'd prefer using better tools that can help achieve fallbacks such as PostCSS Color RGBA Fallback.
This PR is handling background-color, but there are also other properties such as color, border, outline, etc.
Consider using PostCSS for this as it addresses the problem better.

@renatoi Good point, I had forgotten this was narrowly targeted to background-color... that'd be an issue too.
I'm going to close this one out in favor of adding the above-referenced postcss plugin to the project's build tasks.  Seems we should add some documentation to explain what then the --ie flag really gets you - eg, how do we decide what belongs in Atomizer vs what is up to you via a post-processor.


Track delegation pool size and check before transitioning validator into Active state

Currently the implementation of validator state transitions has an open TODO:
// If an Inactive or Unbonding validator is in the top `validator_limit` based
// on voting power and the delegation pool has a nonzero balance,
// then the validator should be moved to the Active state.

Only the voting power check is being performed right now.
pd will need to be modified to track the validator's current delegation pool size. This should probably be implemented as a new field on ValidatorStatus and a corresponding column in the validators table. The value will need to be updated whenever delegation changes occur, and checked during the transition to Active.
@avahowell says this is how we can check the delegation token supply (is that the same as the delegation pool size?):
            let mut delegation_token_supply = reader
                .asset_lookup(identity_key.delegation_token().id())
                .await?
                .map(|info| info.total_supply)
                .unwrap_or(0)

Done already

I misspoke, this actually isn't done yet, but I'm not clear if it needs to be done -- is it possible for a validator to be in the top N validators with a 0-size delegation pool? Since voting power is based on delegations, I'd think "no"? Am I missing anything @hdevalence @avahowell ?

After thinking a bit more, I think this does need to be implemented, for the case where there are < N validators, and some of them have 0 voting power.

Implemented this in https://github.com/penumbra-zone/penumbra/pull/561
Since the voting power is determined by the delegation pool, any validator with non-zero power is guaranteed to have delegations (and vice versa).
pub fn voting_power(&self, total_delegation_tokens: u64, base_rate_data: &BaseRateData) -> u64 {
        ((total_delegation_tokens as u128 * self.validator_exchange_rate as u128)
            / base_rate_data.base_exchange_rate as u128)
            .try_into()
            .unwrap()
    }


Could you add these Taiwan news TV? Thanks a lot!

https://www.youtube.com/watch?v=V0WxUakDV7M
https://www.youtube.com/watch?v=xL0ch83RAK8
https://www.youtube.com/watch?v=pJ0VgJloR9E
https://www.youtube.com/watch?v=NHTD_g1LYOM
https://www.youtube.com/watch?v=XxJKnDLYZz4
https://www.youtube.com/watch?v=R2iMq5LKXco
https://www.youtube.com/watch?v=ABn_ccXn_jc
https://www.youtube.com/watch?v=lu_BJKxqGnk
https://www.youtube.com/watch?v=EmuMuVyAjh4

Done

Thanks man.


Latest Selenium 4 beta 4 breaking Appium elements

Description
From Selenium change log https://github.com/SeleniumHQ/selenium/blob/trunk/dotnet/CHANGELOG
_* Updated Chromium-based browsers to correclty inherit Options.

Refactored .NET bindings class inheritance hierarchy. This breaks the
assumption that all browser-specific driver (ChromeDriver, FirefoxDriver,
EdgeDriver, etc.) are all subclasses of RemoteWebDriver. This is no longer
the case. The guidance for all users has always been to write your
Selenium code using the IWebDriver interface, rather than the concrete
implementation classes. If you have followed this guidance in your Selenium
code, this change should be largely transparent to you. If you have used
the implementation classes, this might be a breaking change._

I have some basic code that looks like this
AndroidDriver<AppiumWebElement> appiumDriver = new AndroidDriver<AppiumWebElement>(new System.Uri("http://hub-cloud.browserstack.com/wd/hub/"), appiumOptions);
Which is throwing a build error
Error	CS7069	Reference to type 'RemoteWebElement' claims it is defined in 'WebDriver', but it could not be found
If I try to switch away from the AppiumWebElement like so
AndroidDriver<IWebElement> appiumDriver = new AndroidDriver<IWebElement>(new System.Uri("http://hub-cloud.browserstack.com/wd/hub/"), appiumOptions);
Then I get
Error	CS7069	Reference to type 'ICommandExecutor' claims it is defined in 'WebDriver', but it could not be found	KeyWordDriver	C:\Automation\VSTS\SeleniumDriver\Selenium\DriverHelper.cs	758	Active
Environment
C# .Net
Using latest 4.3.1 of this project.

Same issue as well 👍
AppiumDriver<AppiumWebElement> driver = new AndroidDriver<AppiumWebElement>(new Uri("http://<IP_ADDRESS>:4723/wd/hub"), appiumOpt);
throw the below exception:

@akinsolb

ENV:
C# .Net
Appium.WebDriver 4.3.1
Selenium.WebDriver 4.0.0-Beta 4
Selenium.Support 4.0.0 -Beta 4

As Dor showed,  AppiumWebElement / AndroidElement  are not recognized .
AppiumDriver driver = new AndroidDriver(new Uri("http://<IP_ADDRESS>:4723/wd/hub"), appiumOpt);

@akinsolb
ENV:
C# .Net
Appium.WebDriver 4.3.1
Selenium.WebDriver 4.0.0-Beta 4
Selenium.Support 4.0.0 -Beta 4

@akinsolb When do you expect this to be fixed?

I don't see anyone of the contributors responding, so I took the liberty and started working on a beta version that will work with the new Selenium 4 version. the main issue here is that the did a massive refactor regarding 2 major topics:

refactor of driverOptions on v4.0.0a1: Refactored DriverOptions class and subclasses. This commit deprecates the AddAdditionalCapability method in the driver-specific Options classes in favor of two methods. The first, AddAdditionalOption, adds a capability to the top-level, global section of a browser's desired capabilities section. The second method adds a capability to a browser's specific set of options. Accordingly, these methods are different for each browser's Options class (AddAdditionalChromeOption for ChromeOptions, AddAdditionalFirefoxOption for FirefoxOptions, AddAdditionalInternetExplorerOption for InternetExplorerOptions, etc.).

Refactor of .NET bindings class inheritance hierarchy on v4.0.0b4: Refactored .NET bindings class inheritance hierarchy. This breaks the assumption that all browser-specific driver (ChromeDriver, FirefoxDriver, EdgeDriver, etc.) are all subclasses of RemoteWebDriver. This is no longer the case. The guidance for all users has always been to write your Selenium code using the IWebDriver interface, rather than the concrete implementation classes. If you have followed this guidance in your Selenium code, this change should be largely transparent to you. If you have used the implementation classes, this might be a breaking change.

I already made some changes according to point 2, but point 1 require much more work and planning. I will appreciate if someone can give some advice on the correct approach, basically I plan to refactor the AppiumOptions so it will be an abstract class with all of the Capabilities and each driver will have it's own Options class (ie. Android, IOS, MAC etc..)

@Dor-bl 1. There is currently a WIP branch (here)[https://github.com/TroyWalshProf/appium-dotnet-driver]. I'm not sure if you want to continue going through the trouble of the migration, but it can be a remote branch in the near future once the bugs are ironed out.

I believe AppiumOptions should be an abstract class derived from DriverOptions, with each driver deriving from that.

In an ideal world, the current version would have driver options in one final release before migrating to Selenium 4. I'm back on this project from this week.

@Dor-bl Have you already started on the driver option changes? if you have, I'll remove that from my todo list, and if so, is it tied selenium v4?

@akinsolb good to see you back in business. :)
yes, I started working on the driver option changes, also it's tied to Selenium V4.0.0-rc1.
I will just need an hand when it will be ready, I dont use Git too much

Ok.. then we now have two branches prepping for v4.0.0-rc1.. I'm more than happy to help, I just wouldn't want people duplicating effort on the same thing. Nonetheless @TroyWalshProf is the person with the other branch, and whichever is ready and published for a pull request will get considered. We can all chat on the slack channel if you have access to that. Feel free to drop me an e-mail at<EMAIL_ADDRESS>and I'll send an invite

I don't know anything about anything on this repo, but I am happy to see this conversation :-)

I'm still getting this error with version 4.1.0 of the Selenium.WebDriver and Selenium.Support nuget packages.  Please reopen.

Downgrade (Selenium.WebDriver and Selenium.Support) nuget packages to 3.141.0....your issue will be resolved.

I'm still getting this error with version 4.1.0 of the Selenium.WebDriver and Selenium.Support nuget packages. Please reopen.

Please send your code and the error you are getting.
There has been some breaking changes that require some refactoring

I'm still getting this error with version 4.1.0 of the Selenium.WebDriver and Selenium.Support nuget packages. Please reopen.

@agray Please send your code and the error you are getting. There has been some breaking changes that require some refactoring

Hi @Dor-bl, Broken code is here:
https://github.com/Sauceforge/Saucery/tree/feat/selenium4

I'm still getting this error with version 4.1.0 of the Selenium.WebDriver and Selenium.Support nuget packages. Please reopen.

@agray Please send your code and the error you are getting. There has been some breaking changes that require some refactoring

Hi @Dor-bl, Broken code is here: https://github.com/Sauceforge/Saucery/tree/feat/selenium4

@agray . first of all I see you still haven't updated your Appium.WebDriver to nuget to 5.0.0-Beta01.
secondly, I assume your issues start here: AndroidDriver which should become : AndroidDriver.
you can refer to this PR: https://github.com/appium/appium-dotnet-driver/pull/470
Hope that helps

@Dor-bl Does this issue happen also when using Appium.WebDriver 5.0.0-beta01 and
Selenium.WebDriver 4.1.0?

Use the function with the three parameters
driver = new AndroidDriver(uri, appiumOptions, TimeSpan.FromSeconds(waiTimeOut));

I'm still getting this error with version 4.1.0 of the Selenium.WebDriver and Selenium.Support nuget packages. Please reopen.

@agray Please send your code and the error you are getting. There has been some breaking changes that require some refactoring

Hi @Dor-bl, Broken code is here: https://github.com/Sauceforge/Saucery/tree/feat/selenium4

@agray . first of all I see you still haven't updated your Appium.WebDriver to nuget to 5.0.0-Beta01. secondly, I assume your issues start here: AndroidDriver which should become : AndroidDriver. you can refer to this PR: #470
Hope that helps

I'm not sure what's being replaced with what here^^ @Dor-bl - they both look the same.
Thanks,
Dermot

@dermotcanniffe It's best that you open a new issue with your isolated problem. Looking at your last error: Using the generic type 'AndroidDriver<W>' requires 1 type arguments[sic]
Are you referring to new AndroidDriver<AndroidElement> ? where  AndroidElement is <w>
If that doesn't solve your problem, please proceed to raise a new issue

@dermotcanniffe It's best that you open a new issue with your isolated problem. Looking at your last error: Using the generic type 'AndroidDriver<W>' requires 1 type arguments[sic] Are you referring to new AndroidDriver<AndroidElement> ? where AndroidElement is <w>
If that doesn't solve your problem, please proceed to raise a new issue

Is it an isolated problem if it's literally the same problem as stated above, on the recommended versions and latest version of Selenium.WebDriver?
As for the "AndroidDriver" error, yes, it was in reply to the comment by @nesreenmaged . It's not so much that the statement doesn't solve the issue, more that the solution proposed is syntactically incorrect.
Logging a new ticket would essentially be replicating this existing ticket, losing all context, especially since this issue was closed without a reported/tested solution.
Downgrading Selenium.WebDriver below v4 doesn't fix the problem, it just hides it. Besides, there are presumably reasons why users upgraded beyond v4 in the first place.

Any update on this issue, we still getting the same issue.

@shubhamkalihari this issue is closed. Please open a new one if needed


Make 2d Collision

Is there anyway to add a 2d box/edge collider that follows the path?

Fixed it by getting the Vertex Count and setting them to a list.
using System.Collections.Generic;
using UnityEngine;
using PathCreation;

public class pathCollider : MonoBehaviour
{
    [SerializeField]private EdgeCollider2D _edgeCollider2D;
    private List<Vector2> _list = new List<Vector2>();
    private PathCreator _path;
    private int _VertexCount;

    private void Start()
    {
        _VertexCount = _path.path.NumPoints;
        for (int i = 0; i < _VertexCount; i++)
        {
            _list.Add(_path.path.GetPoint(i));
        }

        _edgeCollider2D.SetPoints(_list);
    }
}


Fixing tests

Just fixing the tests so that we can get a build of this and kick it out.

Not sure why but this seems stuck. It's been running for over 20 minutes and the tests only took 12 seconds locally.


Problem with Content-Type: application/vnd.api+json

I'm newbie with jsonapi and I made a test to encode an author (using some of your test files) and when I tested it with Postman I get: Content-Type →text/html; charset=UTF-8
Content type should not be application/vnd.api+json?.
I encoded it with: echo $encoder->encodeData($author);
Also I made a test to response only meta information and I get a Content-Type text/html too. I used this code: $encoder->encodeMeta(array(http_response_code(204)));
I'm using v1.x because it's a project with php 5.6. I don't know if I'm making something wrong or there's some other issue.
Attached two images with the response I got in Postman:

Hi, what you're trying to do is usually done something like
$json = $encoder->encodeData($author);

// now reply with a response
$response = new Zend\Diactoros\Response\JsonResponse($json);

// now return the response back to client
...

As you can see the response part is quite simple but very framework dependent. The example above uses diactoros, however there are other very respectable frameworks (e.g. guzzle). Of cource, you can use old good header function to send Content-Type as well.
This JSON API framework is framework agnostic so you can use anything you like.

Ok, I will take a look to those frameworks. Thank you so much for help.

Just a clarification, I used this code to get a response according to jsonapi:
$data = $encoder->encodeData($author);
$response = new TextResponse($data, 200, [ 'Content-Type' => ['application/vnd.api+json']], JSON_PRETTY_PRINT);

$emitter = new Zend\Diactoros\Response\SapiEmitter();
$emitter->emit($response);

The response is:
{
    "data": {
        "type": "people",
        "id": "123",
        "attributes": {
            "first_name": "John",
            "last_name": "Dow"
        },
        "links": {
            "self": "http://example.com/api/v1/people/123"
        }
    }
}

Because if I use the class Zend\Diactoros\Response\JsonResponse the response is:
{\n    \"data\": {\n        \"type\": \"people\",\n        \"id\": \"123\",\n        \"attributes\": {\n            \"first_name\": \"John\",\n            \"last_name\": \"Dow\"\n        },\n        \"links\": {\n            \"self\": \"http:\\/\\/example.com\\/api\\/v1\\/people\\/123\"\n        }\n    }\n}

Absolutely! The JsonResponse internally uses json_encode which is not what you need. I myself use this class.


default-branch-button - Does not preserve the current file URL

Description
See below. This is not a cache issue
How to replicate the issue + URL

Open https://github.com/pixiebrix/pixiebrix-extension/blob/b0c930e3cc6acc534d96941d31922388d7984343/src%2Fbricks%2Frenderers%2FdocumentView%2FDocumentViewLazy.tsx
Click default-branch-button
End up on the repo home instead of the same file on main, which currently exists: https://github.com/pixiebrix/pixiebrix-extension/blob/main/src/bricks/renderers/documentView/DocumentViewLazy.tsx

Extension version
23.12.1
Browser(s) used
Safari

The issue is that somehow the filepath in the URL is escaped so GitHubFileURL fails. No idea where that came from and the UI doesn't seem to create that. I'm gonna close for now as it's a rare/impossible occurrence.
It can be reopened if we find the page that creates such URLs


Prometheus fails to parse metrics with a "/" on it.

Fixed by replacing "/" with ":".

Thanks @mevansam!


preempt pods from low priority to high priority

This PR to fix a case for #69
Kube-arbitrator will get label "preemptionrank" of pod if it exists. When preemption happens, kube-arbitrator chooses pod with lower "preemptionrank" to terminate first.
The label "preemptionrank" will be treated as 0 by kube-arbitrator if it doesn't exist.

Kube-arbitrator will sort pods as following conditions:

preemption rank. The lower rank pod will be terminated first.
pod status. The pending pod will be terminated first.
pod running time. The pod with shorter runtime will be terminated first.


Tag Helpers: Investigate Assembly.Load vs. IAssemblyLoader.Load in DTH / Runtime

Right now we're utilizing Assembly.Load for the TagHelperDescriptorResolver which may or may not cause issues in the DTH. We should attempt to use Assembly.Load to see consequences when using it in both design time (in DTH) and runtime.
This issue was spawned from the following conversation with @davidfowl  and @pranavkm: https://github.com/aspnet/Razor/pull/226#discussion_r20661671

We don't think there is anything left to do here. We can revisit if the need arises again.


Done - Fixing country selector bug

Done #30

@antoinefalisse Can you test if you are able to register using the new country selector? Also, please check that the step forward button works before merging.

@AlbertoCasasOrtiz I picked Belgium but it did not get saved:

I think it is working now, it is showing the country for my new user.

Great, thanks!


added open graph meta tags & twitter specific card data

This adds Open Graph data and Twitter card specific meta as well: https://developer.twitter.com/en/docs/twitter-for-websites/cards/overview/summary-card-with-large-image
Use case would be when a user shares a direct link to one of these font specific pages: the image preview, font name etc is shared within this summary_large_image twitter card on their tweet.

i also tried to test the netlify deploy url with twitters validator here: https://cards-dev.twitter.com/validator
But y'alls deploy logic in src/_data/images.js prevents absolute pathing of the image asset unless published on the prod doman: https://coding-fonts.css-tricks.com/

Great addition.
Looks like a little merge conflict with the previous update to the head. Other than that seems good to go. Not terribly worried about the deploy preview for this.

@chriscoyier forgot to tell you I fixed the merge conflict on this PR too.


Added scrumlr logo component with dynamic gradient

Branch can be used to refactor current implementation. Closed for now


[Docs] Module sorting (created, updated) does not work

Environment
Website
Reproduction
Go to the Nuxt.com Website and try to sort the modules by created at / updated at
Describe the bug
It's still sorting alphabetically  despite choosing updated/created
Additional context
No response
Logs
No response

Transferring to (currently) private https://github.com/nuxt/nuxt.com repo to track there.


Create a Code Anlaysis tool to perform basic Refactoring of RC1 code to RC2

I initially dismissed this idea, however I think it would be good to perform some basic analysis of CSharp code files, and do some refactorings like namespace changes as per #11
Never done this kind of thing before but I will experiment with: https://github.com/dotnet/roslyn/wiki/Getting-Started-C%23-Syntax-Analysis
to see if it is viable.

This is viable and I am making progress on this in my branch.


"main" field in package.json refers to missing file

currently, this package doesn't make anything available to its programmatic interface:
user@localhost:~/test1$ node
Welcome to Node.js v14.12.0.
Type ".help" for more information.
> require("@farazahmad759/dricup-crud-express")
Uncaught:
Error: Cannot find module<EMAIL_ADDRESS>Please verify that the package.json has a valid "main" entry
    at tryPackage (internal/modules/cjs/loader.js:321:19)
    at Function.Module._findPath (internal/modules/cjs/loader.js:534:18)
    at Function.Module._resolveFilename (internal/modules/cjs/loader.js:880:27)
    at Function.Module._load (internal/modules/cjs/loader.js:743:27)
    at Module.require (internal/modules/cjs/loader.js:965:19)
    at require (internal/modules/cjs/helpers.js:88:18) {
  code: 'MODULE_NOT_FOUND',
  path<EMAIL_ADDRESS>  requestPath: '@farazahmad759/dricup-crud-express'
}
>

and after uninstalling:
user@localhost:~/test1$ node
Welcome to Node.js v14.12.0.
Type ".help" for more information.
> require("@farazahmad759/dricup-crud-express")
Uncaught Error: Cannot find module '@farazahmad759/dricup-crud-express'
Require stack:
- <repl>
    at Function.Module._resolveFilename (internal/modules/cjs/loader.js:893:15)
    at Function.Module._load (internal/modules/cjs/loader.js:743:27)
    at Module.require (internal/modules/cjs/loader.js:965:19)
    at require (internal/modules/cjs/helpers.js:88:18) {
  code: 'MODULE_NOT_FOUND',
  requireStack: [ '<repl>' ]
}

This is because the "main" entry in package.json, src/index.js does not exist.
It seems like either the package.json should not contain the field or it should point to a file which would through the exception telling the user to user the CLI interface instead.

I was actually doing this because i wanted to write some tests and start with requireing the module and trying to generate some code generated outputs based on human friendly json schema as in #2, but I also noticed that there was no compilation step - even if there was an index file which exported everything, module support is presently limited enough that you cannot require it from the repl, gives:
SyntaxError: Cannot use import statement inside the Node.js REPL, alternatively use dynamic import

and taking that advice yields this:
> import('./generators/index.js').then(console.log)
Promise { <pending> }
> (node:273306) UnhandledPromiseRejectionWarning: /home/user/dricup-crud-express/src/generators/index.js:1
import dvMigrations from "./migrations/index.js";
^^^^^^

SyntaxError: Cannot use import statement outside a module
    at wrapSafe (internal/modules/cjs/loader.js:992:16)
    at Module._compile (internal/modules/cjs/loader.js:1040:27)
    at Object.Module._extensions..js (internal/modules/cjs/loader.js:1097:10)
    at Module.load (internal/modules/cjs/loader.js:941:32)
    at Function.Module._load (internal/modules/cjs/loader.js:782:14)
    at ModuleWrap.<anonymous> (internal/modules/esm/translators.js:139:27)
    at ModuleJob.run (internal/modules/esm/module_job.js:140:23)
    at processTicksAndRejections (internal/process/task_queues.js:93:5)
    at async Loader.import (internal/modules/esm/loader.js:165:24)
    at async importModuleDynamicallyWrapper (internal/vm/module.js:443:15)
(node:273306) UnhandledPromiseRejectionWarning: Unhandled promise rejection. This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). To terminate the node process on unhandled promise rejection, use the CLI flag `--unhandled-rejections=strict` (see https://nodejs.org/api/cli.html#cli_unhandled_rejections_mode). (rejection id: 3)

so i thought that the right thing to do was to introduce a proper compilation step from tsc to js and expose the compiled js dist/index.js instead of src/index.js but i am not well-versed enough in the technology to do this. I am not fond of the module system overall.

How about requiring like this?
require("esm")(module /*, options*/)("@farazahmad759/dricup-crud-express").cli(process.argv)
This works.

nice, didn't notice that; that will do.


Improving efficiency of code in smirky - for future move proposal tools

I wanted to get an issue started for this that can be used for documentation. I continue to believe that it isn't worth investing significant time into speeding up SMIRKY now, but certain functions from this code will likely carry over to future move proposal engines.
This issue will focus on places that the code can be more efficient, not making "smarter" chemical moves, though that is also going to be important.
At the OFF meeting this week, Daniel Smith has been helping me diagnose what is causing the code to be slow. We've identified the get_typed_molecules as a particularly problematic part of the code, it scales as N^4.

Moved to chemper issue#12


Clarity Team: Request to attend podcast

@youdz Would you and one of your teammates be interested in coming on Adventures in Angular podcast to talk about the Clarity project? It's a pretty chill podcast, where the panelists will just ask you questions, and you can talk about whatever you want to with regards to the Clarity project.
https://devchat.tv/adv-in-angular
Sorry for submitting an issue for this. I didn't know how else to get in touch with your team.

I found your email address. I will email you.


Fix in GH API URL for release script & add backporting scripts

FYI this incremental seems to fix all the issues for me:
diff --git a/contrib/backporting/cherry-pick b/contrib/backporting/cherry-pick
index 9cf05f1b79f8..3db74f27a28f 100755
--- a/contrib/backporting/cherry-pick
+++ b/contrib/backporting/cherry-pick
@@ -5,8 +5,9 @@ if [ $# -ne 1 ]; then
   exit 1
 fi
 CID=$1
-REM=`git remote -v | grep "github.com/cilium/cilium.git" | head -n1 | cut -f1`
-if [[ "`git branch -q -r --contains $CID $REM/master 2> /dev/null`" != *"$REM/master"* ]]; then
+REM=`git remote -v | grep "github.com.cilium/cilium" | head -n1 | cut -f1`
+BRANCHES=`git branch -q -r --contains $CID $REM/master 2> /dev/null`
+if ! echo ${BRANCHES} | grep ".*$REM/master.*"; then
   echo "Commit $CID not in $REM/master!"
   exit 1
 fi
@@ -21,8 +22,8 @@ IFS=
 while read line
 do
   echo "$line" >> $TMPF2
-  if [ "$line" == "" ]; then
-    if [ $HDR_DONE == false ]; then
+  if echo "$line" | grep "^$"; then
+    if [ $HDR_DONE = "false" ]; then
       echo "$FROM" >> $TMPF2
       echo "" >> $TMPF2
       echo "[ upstream commit $FULL_ID ]" >> $TMPF2


to support path reference parameters for multiple verbs

If you got a yaml fine like this one, you would got an exception as getIn() / getName() won't work.
I left in comment the workaround which is to copy path parameters in each verb definition.
swagger: '2.0'

info:
  title: test
  version: "1.0.0"
  description: test

host: api.test.com
schemes:
  - https

paths:
  '/buckets/{bucketKey}/details':
    parameters:
      - $ref: '#/parameters/bucketKey'
    get:
      operationId: get_bucket_details
      description: test
#    parameters:
#      - $ref: '#/parameters/bucketKey'
    responses:
        '200': { $ref: '#/responses/OK' }
  '/buckets/{bucketKey}/objects/{objectName}':
    parameters:
      - $ref: '#/parameters/bucketKey'
      - $ref: '#/parameters/objectName'
    put:
      operationId: upload_object
      description: test
#      parameters:
#        - $ref: '#/parameters/bucketKey'
#        - $ref: '#/parameters/objectName'
      responses:
        '200': { $ref: '#/responses/OK' }
    get:
      operationId: get_object
      description: test
#      parameters:
#        - $ref: '#/parameters/bucketKey'
#        - $ref: '#/parameters/objectName'
      responses:
        '200': { $ref: '#/responses/OK' }

parameters:
  bucketKey:
    name: bucketKey
    in: path
    description: URL-encoded bucket key
    required: true
    type: string
  objectName:
    name: objectName
    in: path
    description: URL-encoded object name
    required: true
    type: string

responses:
  OK:
    description: OK, Success

confirmed fixed


add flex support + fix raw amount display

Checklist

[x] App update process has been followed
[x] Target branch is develop
[x] Application version has been bumped

@Z4karia could you please push force again your branch we had issue with the CI. Sorry for that.


initial build

Changes:

initial build

https://github.com/RKrahl/pytest-dependency

Linter check found the following problems:
The following problems have been found:
ERROR: clone/recipe/meta.yaml:15: pip_install_args: pip install should be run with --no-deps and --no-build-isolation.
ERROR: clone/recipe/meta.yaml:47: invalid_license_family: The recipe has an incorrect about/license_family value.{}
Errors were found


Startup files for GCC

Good day.
CMSIS_5 had a set of folders with generic startup files for GCC.
For example, Device/ARM/ARMCM3/Source/GCC/startup_ARMCM3.S.
It was very useful since those files had a startup routine to initialize the .data section content in ram.
Why were all those GCC startup files excluded from the Cortex-DFP pack?

For better portability between different compiler the use of assembler language startup files is discouraged:
https://arm-software.github.io/CMSIS_6/latest/Core/cmsis_device_files.html


Content screen improvements

refs https://github.com/TryGhost/Ghost/issues/7860

fix Chrome perf issues
move towards the desired list content and styling (still WIP)
bring the keyboard navigation back that was lost in the initial prototype

Current WIP styles:

Coverage decreased (-0.5%) to 75.12% when pulling c41014d16a7368e69d5fdb2862bc71193205c711 on kevinansfield:make-content-screen-betterer into aebe06dd147bb84cd54870803a2d95b63446d404 on TryGhost:master.

Tests fixed, should be good to go now 😄

LGTM 👍


API access intention

I'm currently developing an enhancement to a development environment and would like to include the ability for a user to browse the published web components and view documentation from within the environment. Essentially I'd like to provide the user in context access to information provided by the beta webcomponents API so that as they are developing they can find new web components and read the details about the components.
In the application the user would be able to search the web components database and then select a repo to access the associated documentation. I've been playing with the API a bit and have been pleased with the performance and available information. I'm currently planning on using the following API:
GET /api/search/:query
GET /api/docs/:owner/:repo
I'm opening this issue to acknowledge my usage of the API as requested in the API documentation. Please advise me of any restrictions or limitations.

That sounds awesome!
Let us know if there's any changes we need to make.
I don't expect the search api to change, but the docs API may change. @andymutton: any idea if this will change once we switch to Analyzer?

I'm going to close this, feel free to ping on the Gitter or here. We'll try make sure we update here when we do expect a change in the API.


Fix #14246

Please make sure to label your PR with "bug", "new feature" or "breaking change" label(s).
To prevent this PR from going to the changelog marked it with the "skip changelog" label.

Snapshot stored with reference name:
refs/pull/14260/merge
Test environment:
https://babylonsnapshots.z22.web.core.windows.net/refs/pull/14260/merge/index.html
To test a playground add it to the URL, for example:
https://babylonsnapshots.z22.web.core.windows.net/refs/pull/14260/merge/index.html#WGZLGJ#4600
Links to test babylon tools with this snapshot:
https://playground.babylonjs.com/?snapshot=refs/pull/14260/merge
https://sandbox.babylonjs.com/?snapshot=refs/pull/14260/merge
https://gui.babylonjs.com/?snapshot=refs/pull/14260/merge
https://nme.babylonjs.com/?snapshot=refs/pull/14260/merge
To test the snapshot in the playground with a playground ID add it after the snapshot query string:
https://playground.babylonjs.com/?snapshot=refs/pull/14260/merge#BCU1XR#0


Collections that start with a numerical character

I have a collection that starts with a numerical character, i.e. 5b9003223345afc3d7c89900.
When I'm at the MongoDB CLI, I have to use the getCollection function to access the collection.
For example:
$ c = db.getCollection('5b9003223345afc3d7c89900')
$ c.find()

If I want to use this with mongodb-grafana, how you suggest I set this up in the metrics field?

BTW, I did try something like this:
db.getCollection('5b8f88f33345af4961e38a62').aggregate( [... ])
But it doesn't seem to display anything.  The exact querty does work from the mongo CLI.
I do see this error tag in the chart (the little red tab in corner of chart):
{
"message": "Failed to parse query - Invalid collection and operation syntax:Unknown operation undefined, only aggregate supported"
}

It should just work as db.5b9003223345afc3d7c89900.aggregate(.....
All the backend js does is search for the '.' and then call
db.get_collection()
James
On Thu, 20 Sep 2018 at 18:15 jacohn16<EMAIL_ADDRESS>wrote:

BTW, I did try something like this:
db.getCollection('5b8f88f33345af4961e38a62').aggregate( [... ])
But it doesn't seem to display anything. The exact querty does work
from the mongo CLI.
I do see this error tag in the chart (the little red tab in corner of
chart):
{
"message": "Failed to parse query - Invalid collection and operation
syntax:Unknown operation undefined, only aggregate supported"
}
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/JamesOsgood/mongodb-grafana/issues/27#issuecomment-423263139,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AGzx-MWsCfNsZLY89yIGw6wKYs4qeIZaks5uc81NgaJpZM4Wyite
.

See
https://github.com/JamesOsgood/mongodb-grafana/blob/master/server/mongodb-proxy.js#L200
and
https://github.com/JamesOsgood/mongodb-grafana/blob/master/server/mongodb-proxy.js#L289
James
On Thu, 20 Sep 2018 at 22:32 James Osgood<EMAIL_ADDRESS>wrote:

It should just work as db.5b9003223345afc3d7c89900.aggregate(.....
All the backend js does is search for the '.' and then call
db.get_collection()
James
On Thu, 20 Sep 2018 at 18:15 jacohn16<EMAIL_ADDRESS>wrote:

BTW, I did try something like this:
db.getCollection('5b8f88f33345af4961e38a62').aggregate( [... ])
But it doesn't seem to display anything. The exact querty does work
from the mongo CLI.
I do see this error tag in the chart (the little red tab in corner of
chart):
{
"message": "Failed to parse query - Invalid collection and operation
syntax:Unknown operation undefined, only aggregate supported"
}
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/JamesOsgood/mongodb-grafana/issues/27#issuecomment-423263139,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AGzx-MWsCfNsZLY89yIGw6wKYs4qeIZaks5uc81NgaJpZM4Wyite
.

Thx James.  That worked.
FWIW, my next issue was missing quotes around "symbol" and "interval".
So here's what worked for me:
db.5b8f88f33345af4961e38a62.aggregate( [
{"$match": {"symbol": "ES", "interval": "15m"} },
{"$sort": {"dts": 1}},
{"$project": {"name": "ES backtest", "ts": "$dts", "value": "$Close", "_id": 0}}
])


[Bug]: Optimize transaction should be not shown under transaction tab in AMS Dashboard

What happened?
Optimize transaction should be not shown under transaction tab in AMS Dashboard
Affects Versions
master
What engines are you seeing the problem on?
AMS
How to reproduce

Create an iceberg table
Write into the new iceberg table
Wait for optimize operation completed
Show the table transaction and you will got 2 witch one of it is procedured by optimize process

Relevant log output
No response
Anything else
No response
Code of Conduct

[X] I agree to follow this project's Code of Conduct

cc @hameizi

i will fix this in #701


Constrained number types raise TypeError

Initial Checks

[X] I confirm that I'm using Pydantic V2

Description
Using conint or confloat with any parameters (ge, lt, etc) raises an error, making it impossible to use for constraining values. It doesn't seem to matter what the constrain values are or how many are provided.
The full trace is:
Traceback (most recent call last):
  File "C:\pydantic_test.py", line 3, in <module>
    class Model(BaseModel):
  File "C:\pydantic_test.py", line 4, in Model
    myint: conint(ge=1950)
  File "C:\.venv\lib\site-packages\pydantic\types.py", line 160, in conint
    annotated_types.Interval(gt=gt, ge=ge, lt=lt, le=le),
TypeError: Interval() takes no arguments

The stack trace is raised at conint, but confloat raises the same exception.
Example Code
from pydantic import BaseModel, conint, confloat

class Model(BaseModel):
    myint: conint(ge=1950, le=2023)
    myfloat: confloat(ge=195.0, le=202.3)

m = Model(myint=2002, myfloat=200.2)

Python, Pydantic & OS Version
pydantic version: 2.3.0
        pydantic-core version: 2.6.3
          pydantic-core build: profile=release pgo=false
                 install path: C:\.venv\Lib\site-packages\pydantic
               python version: 3.9.7 (tags/v3.9.7:1016ef3, Aug 30 2021, 20:19:38) [MSC v.1929 64 bit (AMD64)]
                     platform: Windows-10-10.0.19042-SP0
     optional deps. installed: ['typing-extensions']

Hi @goatsweater,
I'm unable to reproduce this issue. When I run the code below, I get the output shown.
from pydantic import BaseModel, conint, confloat

class Model(BaseModel):
    myint: conint(ge=1950, le=2023)
    myfloat: confloat(ge=195.0, le=202.3)

m = Model(myint=2002, myfloat=200.2)
print(repr(m))
#> Model(myint=2002, myfloat=200.2)

I also get the expected validation errors when constructing a Model instance with invalid myint or myfloat values.

I just tried it on a Python 3.10 install and it works fine. I think this may be a Python 3.9 specific problem.

@goatsweater I'm also experiencing this problem with Python 3.9.7. Will look into this further and get back to you :)


gen-push-lists fix imports

fixes #765

thanks Marc :) does it also fixes the limitation of item issue?


Updated SOA <IP_ADDRESS> readme with latest info

Hi,
We are in the process of uploading the latest SOA <IP_ADDRESS>.0 image to OCR and updated the README.md with the latest information. This README.md will be pushed to the OCR for the user's reference to set up the SOA domain using docker.
Please review and approve this pull request.
Thanks
Samba

Also, please update the CODEOWNERS file and add an entry for OracleSOASuite to point to the right person to review future pull requests.

Hi @Djelibeybi
Could you please review the latest changes?
Also please add @rdas0405  and @vivek-sam to this review.
Thanks
Samba

Hi @Djelibeybi
This PR was already went thru the review process long back, but somehow merge was not happened.
Could you please help merging this PR ?
Thanks
Samba

It was merged 10 hours ago.


[SPARK-44429][SQL][TESTS] Make MsSqlServerIntegrationSuite robust in ANSI mode

What changes were proposed in this pull request?
This PR changes the filter condition from col("c") === 0 to !col("c") in MsSqlServerIntegrationSuite to avoid AnalysisException when ANSI is enabled by default. The root cause is that AnsiTypeCoercion does not contain BooleanEquality.
Why are the changes needed?
Make MsSqlServerIntegrationSuite robust in ANSI mode. This test has nothing to do with whether ANSI is enabled or not.
Does this PR introduce any user-facing change?
No.
How was this patch tested?
N/A.

Merged to master.


Add sticky option to navbar

Add an option to the navbar to make it stick to top when scrolling.

v4.0.0 will support navbar fixed to top or fixed to bottom.

v4.0.0 will support navbar fixed to top or fixed to bottom.

Thanks! Does v4 have a release date?

Thanks! Does v4 have a release date?

Not a fixed date, but I hope that at the end of this month it will be published.


Fix EndpointDescriptor

Fix creation of EndpointDescriptor and add unit tests for both possible
lengths.

Your PR is failing the test_descriptor_collection unit test:
got:      [9, 2, 32, 0, 1, 1, 0, 128, 250, 9, 4, 1, 0, 2, 255, 255, 255, 0, 9, 5, 129, 2, 64, 0, 255, 9, 5, 1, 2, 64, 0, 255]
expected: [9, 2, 32, 0, 1, 1, 0, 128, 250, 9, 4, 1, 0, 2, 255, 255, 255, 0, 7, 5, 129, 2, 64, 0, 255, 7, 5, 1, 2, 64, 0, 255]

https://github.com/greatscottgadgets/python-usb-protocol/blob/f7b287f87688b626eadc157c9568edbd7044081e/usb_protocol/emitters/descriptors/standard.py#L569
Your approach works when creating the descriptor using EndpointDescriptor.build() but using the context manager syntax with i.EndpointDescriptor() as e: the descriptor's bLength field will be set to 9 even when the optional fields aren't specified.


[HAWQ-1172][LIBHDFS3]. Fix typo of LIBUUID_INCLUDE_DIRS in FindLibUUID.cmake.

cc @pidefrem @wangzw

+1
thanks

+1

Merged into master.


specs-go/v1: add annotations field to descriptor

Signed-off-by: Stephen J Day<EMAIL_ADDRESS>@opencontainers/image-spec-maintainers  PTAL

LGTM

9bdb5c5b looks good to me.
#501 also left them out of the schema, but #533 is fixing that missing
piece 1.

LGTM

cc @philips @jbouzane @brendandburns @jstarks

bump

LGTM

@vbatts Added omitempty.

LGTM

LGTM

LGTM

LGTM

lgtm


Pass storeState as a third argument to reducers when using combineReducers

This pull request makes reducers have the following signature:
(state, action[, storeState]) => nextState
I first proposed this idea here:
https://productpains.com/post/redux/full-single-state-atom-not-passed-to-reducers
The more I think about it, the more I realize that having access to only the reducer's slice of state severely impacts the architecture of apps. It results in lots of business logic being forced into Action Creators. This means Action Creators are now becoming decision-makers in how state gets updated, rather than fulfilling their purpose of simply formatting an action object. When Action Creators own the business logic of what gets sent, actions end up being more like imperative commands tailored to a specific reducer as opposed to a description of an event that any reducer can react to as it sees fit. This goes against one of Redux's main strengths of decoupling actions from the reducer functions that handle them.
Testing becomes more difficult as now you're having to test your Action Creators for logic that's dependent on state and now buried in the returned action object. Testing reducers is a breeze since they are pure functions and you're testing input state vs. output state.
It also prevents you from reusing Reselect selectors inside of your reducers.
I still think having the sliced state as the first argument passed to a reducer is the right design choice for convenience, as that prevents you from having to slice it yourself and ensure you're returning the correct slice again from the function. However, that convenience should not be the reason for logic being forced into other parts of the application. Having access to the full store state as an additional argument will let reducers keep the separation of concerns clear.

Any downsides or reservations about this?

Some downsides I see about this:

when using storeState, your reducers are coupled to the whole state tree which hurts reusability and (independent) testing
combineReducers doesn't actually combine reducers anymore, since these functions are not reducers based on their signature

Your reasoning sounds a lot like the best practice would be to use combineReducers as much as possible and fall back to thunks if things don't work out. I'm not overly familiar with redux best practices and what the docs say, but imo this approach is wrong.
Instead, I would only use combineReducers if you can partition your reducers that way, and write your own way of composing reducers/function otherwise that better suits your needs. Starting out with a big, monolithic reducer and refactor later may not always be a bad idea. And I would only use thunks for asynchronous things or, perhaps, when you need to access external APIs (eg. web storage).
After a quick look at the docs, I think they agree with what I said:

it's mentioned several times that combineReducers is just an (opinionated) helper that you can, but don't have to use. You may write your own
under "Reducers -> Splitting Reducers" the docs explicitly say that combineReducers can be useful when your reducers are independent; otherwise "more consideration is required"
thunks are only introduced in relation to async actions

Thank you for the PR!
Some past discussions on this:

https://github.com/reactjs/redux/issues/1518
https://github.com/reactjs/redux/issues/1400

Instead, I would only use combineReducers if you can partition your root reducer like that, and otherwise write your own way of composing reducers/functions which better suits your needs. Starting out with a big, monolithic reducer and refactor later may not always be a bad idea.

This is what we recommend.
In general passing the whole state to subreducers is an anti-pattern because it encourages tight coupling. This is why I’m inclined not to allow this by default, and not to merge this PR.
In some cases it can be useful to pass some small parts of the state (the smaller the better), and in this case I think that the parent reducer needs to be written manually to do that, so that the dependency is explicit rather than hidden away in the combineReducers() implementation.
Alternatively you can pass more information in the actions, use something like https://github.com/slorber/rereduce for expressing those dependencies, or something like https://github.com/reactjs/reselect for calculating derived data outside reducers so that they don’t need to depend on one another.
Hope it helps!

Thanks for taking the time to think this over with me! However, I'm still not convinced this is a bad idea.
@taurose

when using storeState, your reducers are coupled to the whole state tree which hurts reusability and (independent) testing

That coupling has to live somewhere, and it makes more sense to have reducers be coupled to the whole state tree than to have action creators coupled to the state tree.

combineReducers doesn't actually combine reducers anymore, since these functions are not reducers based on their signature, strictly speaking

The way I see it, splitting reducers up is purely an organizational decision, not an architectural one. The fact that combineReducers deals with handling state slicing for you is just sugar. As you mention, we could avoid the problems this PR is addressing by eschewing reducer composition altogether and using a monolithic reducer, but who wants to work with thousand-line files? I don't think that reducers not being "strict" reducers is a valid argument against giving them access to the full state tree. In fact, it's actually kind of the problem itself.

it's mentioned several times that combineReducers is just an (opinionated) helper that you can, but don't have to use. You may write your own

The same could be said for pretty much all of Redux. Doesn't mean we can't rethink its design decisions. Opinions can change!

@gaearon

In general passing the whole state to subreducers is an anti-pattern because it encourages tight coupling. This is why I’m inclined not to allow this by default, and not to merge this PR.

As mentioned above, this coupling makes more sense in reducers than anywhere else. Plus, you can use Reselect to move the tight coupling into selectors.
I disagree with the final advice given in #1518 that in some cases the view should determine the next derived state, but I don't want to stray too far off topic.

Alternatively you can pass more information in the actions

Why should action creators be privileged to have access to the whole state tree and not reducers? Why is it ok for them to be tightly coupled to state?

use something like https://github.com/slorber/rereduce for expressing those dependencies

To me, this and most of the solutions presented feel like they're addressing symptoms (reducers need state other than their own) rather than the problem itself (reducers don't have access to state other than their own). Also, it seems like you could easily get yourself at an impasse with circular dependencies with something like rereduce.

or something like https://github.com/reactjs/reselect for calculating derived data outside reducers so that they don’t need to depend on one another.

This works great for reads, but not writes.

tl;dr: Reducer composition should only serve as a way to organize your code to make your app more maintainable. App state is a single atom. Reducer composition gives you a way to manage who is responsible for updating parts of the state. It shouldn't constrain what app state is visible, because... well, app state is an atom.

I think those are some good points.  Forcing additional state through the action creators increases complexity elsewhere else in a much less centralized way and is more difficult to manage.

Additionally, I might add redux organizational structure already introduces a fair bit of coupling such as global actions that makes it difficult to reuse redux reducers in any other application anyway.  So given a reducer is already coupled to an individual application, why not let it take advantage of that?

I'd appreciate more of a discussion around this when you get a chance. If this truly is a bad idea, I'd love to be convinced of that now before I start using my own version of combineReducers only to later realize it's bad in the future and have to refactor a bunch of stuff.

I understand your points. I stand my what I said before. Adding emphasis:

In general passing the whole state to subreducers is an anti-pattern because it encourages tight coupling. This is why I’m inclined not to allow this by default, and not to merge this PR.

In some cases it can be useful to pass some small parts of the state (the smaller the better), and in this case I think that the parent reducer needs to be written manually to do that, so that the dependency is explicit rather than hidden away in the combineReducers() implementation.

Taking on a dependency on the whole state tree makes reducer a lot more fragile and harder to test. Yes, sometimes, it’s necessary, but usually only for small parts of the tree. I find it important that such changes are as scoped as possible, are very noticeable in code review and are explicitly called out in code. Implicitly passing the whole state tree by default would not hit these goals well.

I find it important that such changes are as scoped as possible, are very noticeable in code review and are explicitly called out in code. Implicitly passing the whole state tree by default would not hit these goals well.

You'd still need to explicitly reference storeState in your reducer's arguments, which is just as noticeable as using rereduce. You could even use destructuring to make the signature the same as with rereduce if you really wanted.
I understand rereduce isn't a default use case, but the reason it exists is that the way combineReducers behaves by default is too limiting for real-world apps with associations between data. For example, if you use normalizr to keep a set of entities in one reducer and have another one that references those entities by id, you don't have a lot of good options. You can tightly couple your reducer's action handler to the action creator and action creator to app state, instrument some hierarchical reducer chain a la rereduce, or just give up and put them both in the same reducer. I'd imagine this is a pretty common scenario people find themselves in, and if everyone has to write their own version of combineReducers then the library isn't being as useful as it could be, especially when a simple solution such as this exists.
As far as scoping goes, this wouldn't make your reducer dependent on the entire state tree. You're only dependent on the piece of data you reference. The only fragility is if you decide to change your other reducer's name or state shape, which would just bite you somewhere else (i.e. the action creator if you chose to pass in extra data via the action). Or, you could save yourself the repetition and use a selector (which can be tested in isolation). I might be missing your point here.
Anyways, thanks for responding. I don't mean to beat a dead horse. It seems like you're pretty firm on this, so I guess I'll go ahead and use my own version of combineReducers if you don't wish to discuss any further.


Update AL2022 Neuron Volume Type to GP3 and change AMI description

Summary

Implementation details

Testing

New tests cover the changes:
Description for the changelog

Licensing
By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.

How was this tested?  Is there a recent commit that already tested this change

How was this tested? Is there a recent commit that already tested this change

There are multiple test build of AL2022 Neuron ECS Optimized AMI and tested with MACIS - https://github.com/aws/amazon-ecs-ami/pull/58. For this specific PR, I built an ECS Optimized AMI in my account - ami-0ca1eaea9f1053bc9
I haven't done the full test, because there is a problem with ec2 that neuron devices are not able to be created. (This is specific to distribution release AFAIK). I will do the full test before merging feature branch to main.


Chinese: /docs/concepts/what-is-istio/index.md

Merge two docs into what-is-istio/index.md
Refer https://github.com/servicemesher/istio-official-translation/issues/114

[APPROVALNOTIFIER] This PR is APPROVED
This pull-request has been approved by: rootsongjc
The full list of commands accepted by this bot can be found here.
The pull request process is described here

Needs approval from an approver in each of these files:

content_zh/OWNERS [rootsongjc]

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

/lgtm

[APPROVALNOTIFIER] This PR is APPROVED
This pull-request has been approved by: fleeto, rootsongjc
The full list of commands accepted by this bot can be found here.
The pull request process is described here

Needs approval from an approver in each of these files:

content_zh/OWNERS [fleeto,rootsongjc]

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


Assigning tickets

When creating a new issue it should not be possible to assign tickets to simple 'users'. They can't do anything with it.

I have moved the second part to #28

Thanks and closed.


Gdu hangs (100% cpu) when entering a folder with only empty files.

Describe the bug
Gdu hangs (100% cpu) when entering a folder with only empty files.
It also crashes when starting normally and navigating to a folder with the same empty files.
Is only killable via killall / kill -9 etc.
To Reproduce
Steps to reproduce the behavior:
mkdir -p /tmp/foo && cd $_ && touch a b c d && gdu
Expected behavior
It shouldn't crash
Screenshots

System (please complete the following information):

OS: Debian 12 / x86
Terminal iTerm
Version v5.28.0

Additional context
Version that I use - https://github.com/dundee/gdu/releases/download/v5.28.0/gdu_linux_amd64_static.tgz

I am not able to reproduce that. Could you retry without the -x option?

Found it. This was fixed in https://github.com/dundee/gdu/pull/359, I will release 5.29.0 soon.

Amazing! ❤


fix: Wrong PlayerCommandEventListener import

Wrong import completely broke Velocity side. Please merge quickly and make new version

You could also do a multi module project out of this to avoid this problem completely

You are awesome!


Support table output on commands

The infrastructure for table output is implemented but many/most commands don't provide default tables for their output.

[ ] Produce table output for get/list commands
[ ] Produce table output for the other more complex commands

Feel free to close it as you are tracking some of the fringe items as bugs


Old make cmds at Making a release in Developer guide

Some options were removed in Makefile #280 (253d8ed8633755eef2d5bce76f9285b28a248f2d) like make docs and make package.
But the "Making a release" section in "Developer guide" was not updated and it still refers to this old commands.
Edit: I just found #302, so this issue is already covered anyway.

@rafaelmds thanks for spotting this! That section has been very outdated for  a while and it's probably best to just get rid of it for now. The process changed a lot between v0.4 and now so it's in need of a rewrite (which will have to wait for #302).
For now, do you want to try to delete the "Making a release" section from the dev docs? It would be greatly appreciated! I can promise you a free Fatiando sticker shipped to you from the new batch I'm currently designing :smiley:
The file you'll need to edit is doc/develop.rst . You can delete the whole section (that's the beauty of version control).
If you need any help getting started or working with git/github (branching, creating a pull request, etc), just let me know (either here or in the gitter chat).


Jetpack 4.5 + Jetson Xavier NX - Installation

Hello, I am using a Jetson Xavier NX, with Jetpack 4.5. I have tried to run the docker build command on my Jetson of the 20.30 branch, and I am getting the following error. Any ideas what's the problem?
@yashnv

You should only use the inference app on Xavier, not entirely recommended to install the whole repo on Xavier.

Thank you for your response! What do you mean by saying the inference app?

This can be handy if you have an ONNX model exported from host x86 device: https://github.com/NVIDIA/retinanet-examples/tree/main/extras/cppapi

Thank you very much! Have a nice day!


feat(V2): add custom wrapper class to SearchPage, fix title

Motivation
Currently there is not possible to customize the SearchPage styling without swizzling the component.
This PR adds the custom wrapper class name to the SearchPage, so it will be possible to add custom styles which only apply to this page.
Have you read the Contributing Guidelines on pull requests?
Yes.
Test Plan
Local run of Docusaurus V2 website.
Preview

Related PRs
No.

Hi,
PR should pass after updating your branch, it's an error on master I fixed

I have decided also to add small fix for the title of the SearchPage.
Currently the page title do not follow the general pattern which includes titleDelimiter and siteTitle. Also passing the title to Layout instead of placing it into the Head produced warning:

Missing required 'title' element

@Simek thanks!


layer.conf: Add warrior to compatible release series

Signed-off-by: Khem Raj<EMAIL_ADDRESS>

Added also to warrior branch and thud branch (5.11 is currently used by LuneOS with warrior).


[Clarification] Explain the group_by() & summarize() pattern

** What needs to be clarified **
It's not clear how and why the lines of dialog need to be deduped depending on what we're trying to analyze or count.
** Page(s) which need to be clarified (Optional) **
Verbosity viz post: https://syvwlch.github.io/Data-Ignota/viz/2022-10-09-exploring-verbosity/

The violin plots really do seem a good choice for visualization of the results.
A couple questions/observations
The deduplication table immediately under the title "Overall Verbosity" showing who Mycroft addresses in line two made me wonder about de-referencing personal pronouns. I believe that's in the markup in the private repository, but I wonder how you did that?
Again not having the text for reference and comparing violin-plots "Verbosity by Language" and Mycroft's "Verbosity by Addressee," I wonder: are we seeing an aspect of Japanese-Mitsubishi as translated into English, or could we be teasing out the hierarchy of dominance we discussed a while back? My recollection is that Mycroft is being subservient w/ Ando & Danae.

In the Digital Edition, I'm marking up names, but not pronoun. So the person column in the data indicates who is mentioned by name, not who is mentioned by a pronoun. I quailed at the thought of going that far, if I'm honest.
I do believe it's a reflection of the power dynamic, as you suggest. In particular under threat from Ando and under sexy-wiles from Danaë our Mycroft does start to blabber rather a lot. So the distribution is bi-modal: short answers for normal convo and loquacious when under applied persistent pressure to reveal more?

1. In the Digital Edition, I'm marking up names, but not pronoun. So the `person` column in the data indicates who is mentioned by name, not who is referenced by a pronoun. I quailed at the thought of going that far, if I'm honest.

Understandable.

2. I do believe it's a reflection of the power dynamic, as you suggest. In particular under threat from Ando and under sexy-wiles from Danaë our Mycroft does start to blabber rather a lot. So the distribution is bi-modal: short answers for normal convo and loquacious when under applied persistent pressure to reveal more?

Yes, that makes intuit sense to me.

I am planning to add scene milestones at a later date. These would indicate who is present from that point until the next scene change.
So no pronouns but we would know if persons mentioned are there or not.


USB Next Mass Storage not working

Describe the bug
When running the USB Mass Storage example with USB Next enabled, connection of a Host results in Zehyr Kernel Panic and System Hold.
Tested with STM32U585 on ST BU585-IOT02A board.
Without USB Next enabled, Mass storage is working fine.
To Reproduce
Steps to reproduce the behavior:

west build -p always -b b_u585i_iot02a samples/subsys/usb/mass -DEXTRA_DTC_OVERLAY_FILE="ramdisk.overlay" -DCONFIG_APP_MSC_STORAGE_RAM=y -DCONF_FILE=usbd_next_prj.conf
west flash
Connect USB Host (Windows 11)
MSC is not detected. Zephyr crashes.

Expected behavior
Mass Storage device is mounted in windows and write/readable. Zephyr does not crash.
Impact
USB Next can't be used with MSC, at least with STM32U585
Logs and console output
Console Output:
`*** Booting Zephyr OS build v3.6.0-935-g42c8b7fb00a8 ***
Mount /RAM:: 0
/RAM:: bsize = 512 ; frsize = 512 ; blocks = 158 ; bfree = 158
/RAM: opendir: 0
End of files
[00:00:00.052,000]  main: The device is put in USB mass storage mode.
[00:00:00.058,000]  usbd_core: SUSPEND event
[00:00:05.858,000]  udc: Spurious suspend/resume event
[00:00:05.858,000]  usbd_core: SUSPEND event
[00:00:06.021,000]  udc: Spurious suspend/resume event
[00:00:06.021,000]  usbd_core: SUSPEND event
[00:00:06.171,000]  usbd_core: RESET event
[00:00:06.171,000]  usbd_core: Bus reset event
[00:00:06.259,000]  usbd_core: RESET event
[00:00:06.259,000]  usbd_core: Bus reset event
[00:00:06.467,000]  usbd_msc: Enable
[00:00:06.467,000]  usbd_msc: Bulk-Only Mass Storage Reset
[00:00:06.524,000]  usbd_core: RESET event
[00:00:06.524,000]  usbd_core: Bus reset event
[00:00:06.524,000]  usbd_msc: Disable
[00:00:06.524,000]  usbd_msc: request ep 0x01, len 0 cancelled
[00:00:06.611,000]  usbd_core: RESET event
[00:00:06.611,000]  usbd_core: Bus reset event
[00:00:06.655,000]  usbd_msc: Enable
[00:00:06.655,000]  usbd_msc: Bulk-Only Mass Storage Reset
[00:00:06.711,000]  usbd_core: RESET event
[00:00:06.711,000]  usbd_core: Bus reset event
[00:00:06.711,000]  usbd_msc: Disable
[00:00:06.711,000]  usbd_msc: request ep 0x01, len 0 cancelled
[00:00:06.799,000]  usbd_core: RESET event
[00:00:06.799,000]  usbd_core: Bus reset event
[00:00:06.844,000]  usbd_msc: Enable
[00:00:06.844,000]  usbd_msc: Bulk-Only Mass Storage Reset
[00:00:06.901,000]  usbd_core: RESET event
[00:00:06.901,000]  usbd_core: Bus reset event
[00:00:06.901,000]  usbd_msc: Disable
[00:00:06.901,000]  usbd_msc: request ep 0x01, len 0 cancelled
[00:00:06.989,000]  usbd_core: RESET event
[00:00:06.989,000]  usbd_core: Bus reset event
[00:00:07.032,000]  usbd_msc: Enable
[00:00:07.032,000]  usbd_msc: Bulk-Only Mass Storage Reset
[00:00:07.088,000]  usbd_core: RESET event
[00:00:07.088,000]  usbd_core: Bus reset event
[00:00:07.088,000]  usbd_msc: Disable
[00:00:07.088,000]  usbd_msc: request ep 0x01, len 0 cancelled
[00:00:07.176,000]  usbd_core: RESET event
[00:00:07.176,000]  usbd_core: Bus reset event
[00:00:07.220,000]  usbd_msc: Enable
[00:00:07.220,000]  usbd_msc: Bulk-Only Mass Storage Reset
[00:00:07.277,000]  usbd_core: RESET event
[00:00:07.277,000]  usbd_core: Bus reset event
[00:00:07.277,000]  usbd_msc: Disable
[00:00:07.277,000]  usbd_msc: request ep 0x01, len 0 cancelled
[00:00:07.365,000]  usbd_core: RESET event
[00:00:07.365,000]  usbd_core: Bus reset event
[00:00:07.409,000]  usbd_msc: Enable
[00:00:07.409,000]  usbd_msc: Bulk-Only Mass Storage Reset
[00:00:07.465,000]  usbd_core: RESET event
[00:00:07.465,000]  usbd_core: Bus reset event
[00:00:07.466,000]  usbd_msc: Disable
[00:00:07.466,000]  usbd_msc: request ep 0x01, len 0 cancelled
[00:00:07.554,000]  usbd_core: RESET event
[00:00:07.554,000]  usbd_core: Bus reset event
[00:00:07.597,000]  usbd_msc: Enable
[00:00:07.597,000]  usbd_msc: Bulk-Only Mass Storage Reset
[00:00:07.655,000]  usbd_core: RESET event
[00:00:07.655,000]  usbd_core: Bus reset event
[00:00:07.655,000]  usbd_msc: Disable
[00:00:07.655,000]  usbd_msc: request ep 0x01, len 0 cancelled
[00:00:07.743,000]  usbd_core: RESET event
[00:00:07.743,000]  usbd_core: Bus reset event
[00:00:07.787,000]  udc_stm32: Unable to allocate FIFO for 0x81
[00:00:07.787,000]  usbd_iface: Failed to handle op 1, ep 0x81, bm 0x00000000, -12
[00:00:07.787,000]  usbd_ch9: Failed to set configuration 1, -12
[00:00:07.787,000]  usbd_core: unrecoverable error -12, ep 0x00, buf 0x2001bd08
[00:00:07.787,000]  os: r0/a1:  0x00000004  r1/a2:  0x00000000  r2/a3:  0x20000938
[00:00:07.787,000]  os: r3/a4:  0x20000938 r12/ip:  0x00001e6b r14/lr:  0x08001a97
[00:00:07.787,000]  os:  xpsr:  0x41000000
[00:00:07.787,000]  os: Faulting instruction address (r15/pc): 0x08003b66
[00:00:07.787,000]  os: >>> ZEPHYR FATAL ERROR 4: Kernel panic on CPU 0
[00:00:07.787,000]  os: Current thread: 0x20000938 (unknown)
[00:00:07.896,000]  os: Halting system`
Environment (please complete the following information):

OS:  Windows 11
STM32U585

I can confirm that UDC STM32 shim driver does not work with MSC using HS controller, not sure about FS only.

#71702

Tested again with the latest Zephyr Main Branch. The Kernel Panic is gone now, but enumeration still fails:
`[00:00:00.052,000]  main: The device is put in USB mass storage mode.
[00:00:00.432,000]  usbd_msc: Enable
[00:00:00.432,000]  usbd_msc: Bulk-Only Mass Storage Reset
[00:00:00.489,000]  usbd_msc: Disable
[00:00:00.489,000]  usbd_msc: request ep 0x01, len 0 cancelled
[00:00:00.620,000]  usbd_msc: Enable
[00:00:00.620,000]  usbd_msc: Bulk-Only Mass Storage Reset
[00:00:00.676,000]  usbd_msc: Disable
[00:00:00.676,000]  usbd_msc: request ep 0x01, len 0 cancelled
[00:00:00.807,000]  usbd_msc: Enable
[00:00:00.807,000]  usbd_msc: Bulk-Only Mass Storage Reset
[00:00:00.863,000]  usbd_msc: Disable
[00:00:00.863,000]  usbd_msc: request ep 0x01, len 0 cancelled
[00:00:00.994,000]  usbd_msc: Enable
[00:00:00.994,000]  usbd_msc: Bulk-Only Mass Storage Reset
[00:00:01.050,000]  usbd_msc: Disable
[00:00:01.050,000]  usbd_msc: request ep 0x01, len 0 cancelled
[00:00:01.180,000]  usbd_msc: Enable
[00:00:01.180,000]  usbd_msc: Bulk-Only Mass Storage Reset
[00:00:01.236,000]  usbd_msc: Disable
[00:00:01.236,000]  usbd_msc: request ep 0x01, len 0 cancelled
[00:00:01.367,000]  usbd_msc: Enable
[00:00:01.367,000]  usbd_msc: Bulk-Only Mass Storage Reset
[00:00:01.423,000]  usbd_msc: Disable
[00:00:01.423,000]  usbd_msc: request ep 0x01, len 0 cancelled
[00:00:01.554,000]  usbd_msc: Enable
[00:00:01.554,000]  usbd_msc: Bulk-Only Mass Storage Reset
[00:00:01.611,000]  usbd_msc: Disable
[00:00:01.611,000]  usbd_msc: request ep 0x01, len 0 cancelled
[00:00:01.742,000]  udc_stm32: Unable to allocate FIFO for 0x81
[00:00:01.742,000]  usbd_iface: Failed to handle op 1, ep 0x81, bm 0x00000000, -12
[00:00:01.742,000]  usbd_ch9: Failed to set configuration 1, -12`
I think the issue is in udc_stm32.c function udc_stm32_ep_mem_config(). The variable priv->occupied_mem is only counted up and not down on disable. This results in error "udc_stm32: Unable to allocate FIFO for 0x81".
With my fix from #71702 enumeration is now working, the flash drive is mounted and can files can be written.
Still I wonder why the Endpoint is Enabled/Disabled 22 Times before it is connected successfull.


Fixes #867 Provide type and method extensibility to high level language ...

Stream[T] now allows method extensibility and overrides using class implicits.
Stream[T].writeToHBase has been simplified to provide a simpler SinkClosure[T] for the high level DSL.
HBaseConsumer now allows HBaseSinkInterface DI for easier testing (See ProcessorsSpec.scala).

@kkasravi
For operator like writeToHbase, I do think it is a good idea to use a implicit class conversion so that we can decouple the class dependencies. For normal operator like map, reduce, flatmap, what is the motive to seperate them to seperate classes?

I've updated PipeLineDSL and PipeLineDSLSpec to show one possibility of overriding map, reduce. I think it would facilitate testing as well since we could have implicit classes that could possibly do validation, verification and these classes could be imported just for test cases. I also thought that this approach may be valuable on dynamic DAG operations where intermediate nodes could possibly be transparently added.

Closing this for now until I refactor. Basic operations will be kept within Stream like flatMap, map, reduce, filter, groupBy. Other ones like source, sink if generic can be included within Stream otherwise will be implicit classes.


Fix video driver dialog theme

Fixed #20297

The right fix is to add the dialog to gui_base, which contains the theme.
I have this fixed in my branch at home, but as the building is out of power I could not commit, so closing this. Still, thanks for giving it a try!

No problem ! Thanks for review


API question - Response body as byte[], any plans for OutputStream option?

In terms of design are you looking at changing the Response body such that it supports say an OutputStream?
I could add some more details here but I am one of the maintainers of avaje-jsonb and I have recently added an optimisation to write json content to Helidon Nima http response which translates to ... write the json content from the avaje-jsonb buffer to the http server response without incurring the cost of an extra copy of the output.
The TLDR of that is that for me I'm looking for some API like write(byte[] buffer, int position, int length) [which exists on OutputStream] to support writing json content without incurring an extra copy.

This would definitely be a great feature to support, but it does have some implications on when writes are actually triggered. I'll investigate and get it on the roadmap.


Add setup dev environment scripts

Created bash scripts for setup dev environments on OCP cluster and minikube.
Updated the docs/user-guide/running.md file in order to add documentation for using these scripts.
Signed-off-by: arielireni<EMAIL_ADDRESS>

Update:

Now at the beginning of the script, the user will choose which Flotta component to start (operator, agent, or both).
Then, the user will be requested to enter the required variables (one by one, depending on the chosen component).
I removed the use of gnome-terminal, so now the whole script will run on the same terminal (and not three separate tabs as it was originally)

This PR depends on PR #200 which should fix current issues with the ingress (and may cause further changes, such as running make install-router before deploying the operator on minikube)

Due to the updated documentation here and the auto-gen scripts for running the device locally, this task can be closed.


Review if it makes sense to move the Quarkus extension back into this project.

It's currently a maintenance burden to have two separate projects and also makes it confusing/difficult for users to figure out which version of the SDK is used for a given version of the Quarkus extension. It might therefore make sense to move the extension back here, provided the nice things we got by being part of the Quarkiverse can be ported over.
/cc @maxandersen

This was brought up at the community meeting today, I think we all agree it would make sense to consolidate the repos, noting that there may be some additional complexity for the build.

Didn't follow the comment on what version of operator sdk is used with what quarkus? What is that referring to? How would that change ?
About quarkiverse advantages it's mainly about automatic setup of quarkus registry and publish to maven central.
Other is doc publishing.
If we do it this way we would need to figure out how to handle the GAV/package rename.
Before that have you considered setting up direct testing and possible have the project as a sub module ?

Didn't follow the comment on what version of operator sdk is used with what quarkus? What is that referring to? How would that change ?

Users have historically been confused about the Quarkus extension vs the SDK versions, i.e. if you're using the Quarkus extension at version 3.0.2, which version of the SDK are you using?

About quarkiverse advantages it's mainly about automatic setup of quarkus registry and publish to maven central.
Other is doc publishing.

There's also participating in code.quarkus.io and eventually becoming part of the Quarkus platform (i.e. I don't want to move the extension back only to move it again down the line if it ever graduates to something more than it is now).

If we do it this way we would need to figure out how to handle the GAV/package rename.

People are not using the extension code directly so there shouldn't be an impact on users (at least, at first approximation) so I don't think that this would be a big deal.

Before that have you considered setting up direct testing and possible have the project as a sub module ?

Not sure I follow… if this comes to pass, the Quarkus extension would become a sub-module of the SDK maven project (but I suspect you're referring to a different kind of sub module (git, perhaps?)).  The idea to move the extension back here would be to be able to work on both at the same time and that the SDK couldn't be released without the extension being up to date, which wouldn't be the case with a sub-module or simple testing integration to check for breakage.

Don't know if it really matter or outweight the pros, but the quarkus extension sometimes needs to deal with quarkus platform version. A new version could be release without JOSDK improvement.

This is indeed something we need to take into account, and while we could release new versions of JOSDK to deal with this, it definitely wouldn't be very elegant.


Heavy usage of flat instead of ds atomic operations

Hello
I observed that the lightning compiler - at least those that is included with rga prefers to use flat atomic operations in local memory instead of ds_atomics This applies as well to my Radeon VII as to RX 580 target.
I wondered why this happens and if it would not be more beneficiary to default to ds operations when available, because the flat operations

need 8 byte instead of 4 byte (ds ops) addressing in shared memory (when in 64 bit addressing mode)

require a "s_waitcnt    vmcnt(0) & lgkmcnt(0)" wait instead of "lgkmcnt" (ds ops) only, which causes a performance regression when the shared atomics are interleaved with global read or write operations

On Ellesmere target only: the additional address offset causes an extra "s_load_dword" operation followed by a "lgkmcnt" wait when ever occurring - I do not know why this sreg is not loaded in the beginning of the kernel and then kept for every use - it seems this happens on Vega target correctly and saves a lot of s_load operations in a tight loop I have in my code.

(Not a down, but strange: for pure read and write operation the ds_ operations are used... so we have indeed to different ways of addressing same space mixed in the kernel)

So I would appreciate usage of ds_ instead of flat_ operations and I do not see why this is not default. In case there is good reason to have flat_ as default maybe there is a switch that can toggle the behavior? If yes any comment about it would be heavily appreciated.

@Lolliedieb I assume you are using the hip language.  In this language, and unlike OpenCL C, there is no concept of address spaces, and a pointer can point to anything.  In OpenCL terminology, every pointer is a generic pointer.  So with hip, we have to rely on the compiler being able to "figure out" that a generic pointer is actually pointing to a shared/__local variable, and this is not always possible.  That being said, it is possible that the compiler can do a better job of this than it does now.  It would be helpful if you can provide a minimal standalone example (i.e. definitely not a pointer to a repo with hundreds of thousands of lines of code and tons of external dependencies) where you're certain the compiler should be able to do better.

No, I am speaking about rocm-cl / the OpenCl compiler integrated in rga 2.3.1.
Since my source code is of OpenCL 1.2 standard kind of the oposite is the case: every memory has a clearly defined address space (const, private, private scratch, local (lds) or global), so it should be easy to guess the right operation type.

Thanks for the clarification.  Would you be able to provide or point to a (ideally small or minimal) OpenCL C source that exhibits the problem?

Sorry for the delay - summer holidays ;)
Yes of course. Consider the following OpenCL source
`attribute((reqd_work_group_size(1024, 1, 1)))
__kernel void sort (	__global uint4 * input,
__global uint4 * output,
__global uint * counter,
uint grpDist,
uint bucketSize) {
uint lId = get_local_id(0);
uint grp = get_group_id(0);

__local uint histo[256];

if (lId < 256) histo[lId] = 0;

barrier(CLK_LOCAL_MEM_FENCE);

uint4 load0, load1, load2, load3;

load0 = input[grp * bucketSize + lId];
load1 = input[grp * bucketSize + lId + 1024];
load2 = input[grp * bucketSize + lId + 2048];
load3 = input[grp * bucketSize + lId + 3072];

atomic_inc(&histo[load0.s0 & 0xFF]);
atomic_inc(&histo[load1.s0 & 0xFF]);
atomic_inc(&histo[load2.s0 & 0xFF]);
atomic_inc(&histo[load3.s0 & 0xFF]);

barrier(CLK_LOCAL_MEM_FENCE);

if (lId < 256) {
	histo[lId] = atomic_add(&counter[lId], histo[lId]);
}

barrier(CLK_LOCAL_MEM_FENCE);

uint pos;

pos = atomic_inc(&histo[load0.s0 & 0xFF]);
pos += bucketSize * (load0.s0 & 0xFF);
output[pos] = load0;

pos = atomic_inc(&histo[load1.s0 & 0xFF]);
pos += bucketSize * (load1.s0 & 0xFF);
output[pos] = load1;

pos = atomic_inc(&histo[load2.s0 & 0xFF]);
pos += bucketSize * (load2.s0 & 0xFF);
output[pos] = load2;

pos = atomic_inc(&histo[load3.s0 & 0xFF]);
pos += bucketSize * (load3.s0 & 0xFF);
output[pos] = load3;

}`
The kernel is rather simple. Each thread loads 4 uint4 and then tries to sort it according to the lowest 2 byte of the first uint int each uint4 package (Kind of a bucket sort). To save global atomic operations the work group first collects the number of outputs to each buffer before writing something.
Now compiled with rga for Ellesmere target (and well quite similar for Vega or VII), when writing it looks like
flat_store_dwordx4    v[19:20], v[13:16] flat_atomic_add       v0, v[17:18], v2 glc s_waitcnt             vmcnt(0) lgkmcnt(0) v_add_u32_e32         v0, vcc, v0, v23 v_lshlrev_b64         v[13:14], 4, v[0:1] v_add_u32_e32         v13, vcc, s14, v13 v_addc_u32_e32        v14, vcc, v30, v14, vcc flat_store_dwordx4    v[13:14], v[7:10] flat_atomic_add       v0, v[11:12], v2 glc s_waitcnt             vmcnt(0) lgkmcnt(0) v_add_u32_e32         v0, vcc, v0, v24 v_lshlrev_b64         v[0:1], 4, v[0:1] v_add_u32_e32         v0, vcc, s14, v0 v_addc_u32_e32        v1, vcc, v21, v1, vcc flat_store_dwordx4    v[0:1], v[3:6]
Here you see that after fetching an address to write element B to, the compiler inserts "s_waitcnt             vmcnt(0) lgkmcnt(0)" which it needs to do, because the local atomic was translated to a flat atomic add instead of a local one. This vmcnt(0) wait but also waits for the (likely uncoalesced) write of element A before increasing the latency before the writing of B can be issued significantly.
Compiling the same code with the amdgpu-pro building compiler (thats else often much worse then rocm, but this times does better) produces code
flat_store_dwordx4 v[9:10], v[1:4] ds_add_rtn_u32  v0, v21, v23 v_bfe_u32       v1, v13, 0, 8 v_mul_lo_u32    v1, v1, s7 s_waitcnt       lgkmcnt(0) v_add_u32       v0, vcc, v1, v0 v_mov_b32       v1, 0 v_lshlrev_b64   v[0:1], 4, v[0:1] v_add_u32       v0, vcc, s0, v0 v_addc_u32      v1, vcc, v19, v1, vcc flat_store_dwordx4 v[0:1], v[13:16] ds_add_rtn_u32  v0, v22, v23 v_bfe_u32       v1, v5, 0, 8 v_mul_lo_u32    v1, v1, s7 s_waitcnt       lgkmcnt(0) v_add_u32       v0, vcc, v1, v0 v_mov_b32       v1, 0 v_lshlrev_b64   v[0:1], 4, v[0:1] v_add_u32       v0, vcc, s0, v0 v_addc_u32      v1, vcc, v19, v1, vcc flat_store_dwordx4 v[0:1], v[5:8]
This performs significantly better in this case and even requires less vector registers for addressing.
Note that I am aware the kernel is a bit artificial - but there are other examples like reading elements from global buffer and then inserting them into a local hash table (that needs atomic_cmpxchg in a tight loop). Here the reading operation and the insertion can barely be interleaved when the local atomic (but translated to flat atomic) requires a  vmcnt(0) wait instruction.

Thanks @Lolliedieb for reaching out.
I will get back to you with an update on this asap.
Thank you.

Hi @Lolliedieb
I have assigned this issue to developer and got an update that this issue got fixed in the latest internal builds.
So it will be part of first release of 2021.
Request you to wait till that time for the fix.
Thank you.

Hi @Lolliedieb
Fix is ready and its part of our internal builds.
We will make sure the fix will be part of next possible release.
Thank you.

Hi @Lolliedieb
Fix is ready and its part of our internal builds.
We will make sure the fix will be part of next possible release.
Thank you.

Hi @Lolliedieb
Verified with our internal builds and issue is fixed and the changes will be part of next ROCm release.
Please stay tuned for the next ROCm release.
Thank you.

Hi @Lolliedieb
Verified with our internal builds and issue is fixed and the changes will be part of next ROCm release.
Please stay tuned for the next ROCm release.
Thank you.

Verified and fixed with 4.1.
Thank you.


Inconsistent output shape for tf.image.resize_images() when preserve_aspect_ratio=True

TF Version: r1.11
I found a bug in tf.image.resize_images()  when specifying preserve_aspect_ratio=True.
This is how to reproduce the problem.
def resize_images_issue(img_shape, target):
    img_ph = tf.placeholder(tf.uint8, name="img", shape=[None, None, 3])
    img = tf.image.resize_images(img_ph, [target, target], preserve_aspect_ratio=True)

    with tf.Session() as sess:
        img_np  = np.zeros(img_shape, dtype=np.uint8)
        result = sess.run(img, feed_dict={img_ph: img_np})

    if np.max(result.shape) != target:
        print("Error!! Length of the longer edge is {} though target size is {}".format(np.max(result.shape), target))
    else:
        print("ok")

For some sets of input shape and output shape, it returns inconsistent shape.
resize_images_issue((200, 100, 3), 50)
# ok

resize_images_issue((437, 779, 3), 225)
# ok

resize_images_issue((437, 779, 3), 224)
# Error!! Length of the longer edge is 223 though target size is 224

I found this bug is fixed in r1.12 👍
https://github.com/tensorflow/tensorflow/commit/7cf39dde90f83e584d14ce1c371ff17477a1e57e
Since it is not the stable version currently, we can solve this problem by using the method in r1.12 :)
https://github.com/tensorflow/tensorflow/blob/7cf39dde90f83e584d14ce1c371ff17477a1e57e/tensorflow/python/ops/image_ops_impl.py#L944


Revert #8216

https://github.com/chainer/chainer/pull/8266#issuecomment-540364066

Jenkins, test this please

Just a pointer: #8216

Jenkins CI test (for commit 3fe1f4d8bef3ac812b888d0fefb7ba25bd8b94f7, target branch master) succeeded!


etcd solution shouldn't use port forward

Description
at the end of the chatflow, it asks the user to use port-forward to expose the cluster. but users don't have access to the node to do that. Also, etcd should use ingress to expose the cluster since it uses http.

verified


Fix/response headers

Pull Request Test Coverage Report for Build 477991596

1 of 1 (100.0%)  changed or added relevant line in 1 file are covered.
No unchanged relevant lines lost coverage.
Overall coverage increased (+0.05%) to 94.068%

Totals

Change from base Build 477387968:
0.05%

Covered Lines:
87

Relevant Lines:
91

💛  - Coveralls

Pull Request Test Coverage Report for Build 477991596

0 of 1 (100.0%)  changed or added relevant line in 1 file are covered.
No unchanged relevant lines lost coverage.
Overall coverage increased (+0.05%) to 94.068%

Totals

Change from base Build 477387968:
0.05%

Covered Lines:
87

Relevant Lines:
91

💛  - Coveralls

Pull Request Test Coverage Report for Build 477991596

0 of 1 (100.0%)  changed or added relevant line in 1 file are covered.
No unchanged relevant lines lost coverage.
Overall coverage increased (+0.05%) to 94.068%

Totals

Change from base Build 477387968:
0.05%

Covered Lines:
87

Relevant Lines:
91

💛  - Coveralls

Pull Request Test Coverage Report for Build 477991596

1 of 1 (100.0%)  changed or added relevant line in 1 file are covered.
No unchanged relevant lines lost coverage.
Overall coverage increased (+0.05%) to 94.068%

Totals

Change from base Build 477387968:
0.05%

Covered Lines:
87

Relevant Lines:
91

💛  - Coveralls


Fix for pickerViews with attributedTitleForRow called

I commit the FAQ change before I signed the CLA. Rerunning now.

Starting over with two separate branches.


Delete: existing documents may still be cached on client app despite delete being successful

Steps to replicate:

find document to delete
delete
search for document after reload

should still be there, but inaccessible

this won't even be a problem at all when we work on #14 to implement it server side instead of client pagination...
but in the mean time, a simple fix should be just clearing browser cache. also i wasn't able to get the page to reload either!


Client Allocation Request for: Guazi Dynamic

Client Allocation Questions
Core Information

Name: Guazi Dynamic
Website / Social Media: guazi.io
Region: Greater China
DataCap Requested: 5TiB
Addresses to be Notarized: f3qaipvxrz2gxexc7mcvjsxifmscfiw7c7zfhrmq76j5ee4hcbvg3gbtpea7wgz72kkjcjmwzhm5uo2onxyocq
Notary Requested: NeoGe-IPFSMain

Hello, notary officer,
Looking forward to move the notary process to the next step. Please let me know if there anything else you need. Thank you and have a good day!

Hello, @NeoGe-IPFSMain,
Looking forward to hear back from you!

Hey @Fatman13, thanks for the request. I have some questions regarding your request. Please describe answers as much specificity as you can.

Can you introduce yourself? Where can I find you online? (Github, Twitter, Linkedin handle, Wechat, etc.)
If you represent an organization, what is the name, nature, registration country, time since inception, and named officers of your organization?
In which region(s) do you intend to use the DataCap?
What is your use case for the DataCap being requested?
Do you plan to specify advanced features when utilizing a DataCap in your storage deal? If so, please specify the feature.
How many miners do you plan on allocating the DataCap? If you have a specific miner(s) you would like to allocate a DataCap, please specify.
Do you agree on providing transparency of DataCap allocation decisions & execution details in public to prevent excessive/unfair self-dealing?

Before starting to answer questions, I encourage you to take a look of our allocation strategy here which shows how we utilize the assessment.
Thanks.

Sure thing! Here it is, @NeoGe-IPFSMain

Can you introduce yourself? Where can I find you online? (Github, Twitter, Linkedin handle, Wechat, etc.)
me<EMAIL_ADDRESS>Github: @Fatman13
WeChat public account: 瓜子动力

If you represent an organization, what is the name, nature, registration country, time since inception, and named officers of your organization?
name: Guazi Dynamic
country: China
Founded in 2020

In which region(s) do you intend to use the DataCap?
Greater China area

What is your use case for the DataCap being requested?
Storing datasets from slingshots, also other interested public datasets

Do you plan to specify advanced features when utilizing a DataCap in your storage deal? If so, please specify the feature.
Not aware of any advanced feature for now.

How many miners do you plan on allocating the DataCap? If you have a specific miner(s) you would like to allocate a DataCap, please specify.
Will look for miners with well maintained nodes to store deal with. Will update if the list is finalized. Will keep this guideline in mind when allocating dataCap.

Do you agree on providing transparency of DataCap allocation decisions & execution details in public to prevent excessive/unfair self-dealing?
Agreed.

@NeoGe-IPFSMain Please let me know if there is anything else that you might need! Thank you!

Hey @Fatman13, sorry for the delays during the holiday season, future requests would be processed at a faster pace. My allocation strategy is to build trust progressively. So I could allocate 10 GiB to you for the first time. Feel free to request more DataCap when you use up the allocation.
To better understand how future allocation looks, please take a look here for my allocation process.

Request Approved
Your Datacap Allocation Request has been approved by the Notary
Message sent to Filecoin Network

bafy2bzacea3l4pfwwohnzjkgcz7cvtwirtem2ojdxcidczyy3vz76j6whk2di

Address

f3qaipvxrz2gxexc7mcvjsxifmscfiw7c7zfhrmq76j5ee4hcbvg3gbtpea7wgz72kkjcjmwzhm5uo2onxyocq

Datacap Allocated

10 GiB

You can check the status of the message here: https://filfox.info/en/message/bafy2bzacea3l4pfwwohnzjkgcz7cvtwirtem2ojdxcidczyy3vz76j6whk2di

@NeoGe-IPFSMain Got it. Will definitely apply more after using current datacap. Thanks for the approval!

Hello, @NeoGe-IPFSMain, I raised this concern in fplus governance.

Deals made thus far...
https://filfox.info/zh/deal/1593631
https://filfox.info/zh/deal/1593632


About the implemenation of Eq4 of the EGNN paper.

Hi,
I wonder about the implementation of Eq4 of the EGNN paper.
According to equation 4 from the paper, the position update takes into accounts all interactions among the nodes in the graph. In that sense, the meaning of normalizer C=1/(M-1) makes more sense. However, according to the
code, the aggregations to update the coord are done only for the existing edges. May I ask to clarify which one is the expected behavior of EGNN?
def coord_model(self, coord, edge_index, coord_diff, edge_feat):
        row, col = edge_index
        trans = coord_diff * self.coord_mlp(edge_feat)
        if self.coords_agg == 'sum':
            agg = unsorted_segment_sum(trans, row, num_segments=coord.size(0))
        elif self.coords_agg == 'mean':
            agg = unsorted_segment_mean(trans, row, num_segments=coord.size(0))
        else:
            raise Exception('Wrong coords_agg parameter' % self.coords_agg)
        coord = coord + agg
        return coord

Thank you :)
Junyoung

Hi,
As you very well noticed this implementation can handle sparse graphs. And edges are provided in the argument edge_index. Despite that, we can still use this implementation in a fully connected setting (all interactions) by passing fully connected edges in the argument edge_index. This is what we did in the code.
The reason we used a sparse implementation while providing fully connected edges is that it can be easily extended to sparse message passing settings in the future by just replacing the content of the argument edge_index.
Best,
Victor

Hi Victor,
Thanks for the reply. I've got a couple of questions after reading the comment.
The coverage of aggregation operations of Eq (4), (5)
In the beginning, I thought that Eq. (4) is to aggregate the interaction of all particles (nodes) to the target node, as the summation is done for all nodes but the target. I thought It resembles/reflects that the physical forces exert the effect even though two particles are located at an infinitely far distance. On the other hand, the summation of Eq (5) is done in a "local" manner.
I guess, according to the comment, both summations are done locally, at least in implementation. However, in implementation, it is the same whether it is local or global because the graphs are fully connected. Do I understand correctly?
About the coverage of summations in Eq(4), Eq(7)
These may be pretty similar questions from above. I genuinely believe the paper takes a lot of effort to use correct notations for conveying concise ideas. Hence, it seems like the summations done for i !=j and j in N(i) are carried out to realize the different ideas. For instance, the former aggregates global features, and the latter is for local aggregations. Besides the implementation, may I ask you to explain this part more?
Sincerely,
Junyoung


Scala gRPC server implements all RPC services

Take the initial reference implementation to a robust, tested, feature complete implementation.

All RPC services have been implemented by the Scala RPC server.