Feat/layout components

Preflight Checklist

[X] I have read the Contributing Guidelines for this project.
[X] I agree to follow the Code of Conduct that this project adheres to.
[X] I have searched the pull request tracker for a Pull Request (PR) that matches the one I want to submit, without success.

Issue
This PR Closes #979 #980 #1034
is related #834
Pull request checklist
Please check if your PR fulfills the following requirements:

[x] Tests for the changes have been added (for bug fixes / features)
[x] Docs have been reviewed and added / updated if needed (for bug fixes / features)
[x] Build (npm run build) was run locally and any changes were pushed
[x] Lint (npm run lint) has passed locally and any fixes were made for failures

Changes
Changes in this pull request:

addresses extensibility and composition possibilities of layout components with nesting capabilities

introduces footer component

introduces stack component (used within footer)

adds whitespace / inner layout capabilities for a generic whitespace  handling
adds placeholder capabilities to prototype with stack components
stacks are infinitely nestable, whished markup can be chosen depending on the use case / requirements (e.g. lists)

introduces section component

a section component is used to define a page section
the section component defines the page layout of the given section
section components are by default full bleed, but can have different max-width sizes

enhances mixins and styles

introduces a new storybook component structure / nesting

adds section to template entire pages

introduces home page

introduces a new link-list variant which switches from vertical to horizontal at a given breakpoint

enhances lyne-title capabilities for theming

introduces a new naming/CSS custom property concept for external (API like) and internal CSS custom properties e.g. --_icon-spacing-inset for internal usage. But without the underscore as API/external custom property --icon-spacing-inset

Browsers
I tested the build on the following browsers:

[x] Firefox Desktop
[x] Chrome Desktop
[x] Safari Desktop
[x] Firefox Mobile (Pixel 6)
[x] Chrome Mobile (Pixel 6)
[x] Safari Mobile (iPhone 13, iOS 15)
[x] Opera
[x] Brave

Pull request type

Please check the type of change your PR introduces:

[ ] Bugfix
[x] Feature
[ ] Code style update (formatting, renaming)
[ ] Refactoring (no functional changes, no api changes)
[ ] Build related changes
[ ] Documentation content changes
[ ] Other (please describe):

Does this introduce a breaking change?

[x] Yes
[ ] No

I removed the prefix for spacing variables which I once introduced for the responsive spacing variables. I did this, because the naming of the spacing variables was not consistent (responsive spacing variables used the prefix, fixed spacing variables did not use it) and it made it easier / no. exceptions for the stack component spacing which gets calculated/mapped through the property/css custom property like this var(--spacing-${this.gapHorizontal}).
I suggest to introduce the --lyne prefix for all Lyne custom properties, but as a refactoring task by itself.
Mentions

@lyne-design-system/core

Codecov Report

Merging #1035 (c7d9088) into master (5c55f7b) will increase coverage by 1.12%.
The diff coverage is 84.84%.

@@            Coverage Diff             @@
##           master    #1035      +/-   ##
==========================================
+ Coverage   60.21%   61.33%   +1.12%
==========================================
  Files          42       45       +3
  Lines        1385     1451      +66
  Branches      320      338      +18
==========================================
+ Hits          834      890      +56
- Misses        477      483       +6
- Partials       74       78       +4

Impacted Files
Coverage Δ

src/components/lyne-link-list/lyne-link-list.tsx
93.75% <ø> (ø)

src/components/lyne-stack/lyne-stack.tsx
78.57% <78.57%> (ø)

src/components/lyne-footer/lyne-footer.tsx
89.47% <89.47%> (ø)

src/components/lyne-section/lyne-section.tsx
89.47% <89.47%> (ø)

:mega: Codecov can now indicate which changes are the most critical in Pull Requests. Learn more


manifest: sync mbedtls alpn extension

https://github.com/zephyrproject-rtos/mbedtls/pull/16

Adds mbedtls alpn negotiation support

Signed-off-by: Emil Hammarstrom<EMAIL_ADDRESS>

@rlubos I assume this is what you requested in the mbedtls PR

@eHammarstrom Yes, thank you.


csv guess colum name detection behavior

I have expected the column detection like below but It results c0, c1....
Would you please improve column name detection behavior?
# expected
    columns:
    - {name: ID, type: string}
    - {name: 名前, type: string}
    - {name: 住所, type: string}

# actual
    columns:
    - {name: c0, type: string}
    - {name: c1, type: string}
    - {name: c2, type: string}

input files
All files encodings are utf-8.
$ cat << 'EOF' > test.csv
"ID","名前","住所"
"1","あ","北海道"
"2","い","東京"
EOF

$ cat << 'EOF' > partial-config.yml
in:
  type: file
  path_prefix: ./test.csv
out:
  type: stdout
EOF

guess outputs
$ embulk guess partial-config.yml -o config.yml
2015-04-22 10:16:48.650 +0900: Embulk v0.6.2
2015-04-22 10:16:49.384 +0900 [INFO] (guess): Listing local files at directory '.' filtering filename by prefix 'test.csv'
2015-04-22 10:16:49.388 +0900 [INFO] (guess): Loading files [test.csv]
/Users/y-ken/bin/embulk!/embulk/guess/schema_guess.rb:81 warning: already initialized constant TRUE_STRINGS
/Users/y-ken/bin/embulk!/embulk/guess/schema_guess.rb:90 warning: already initialized constant FALSE_STRINGS
/Users/y-ken/bin/embulk!/embulk/guess/schema_guess.rb:98 warning: already initialized constant TYPE_COALESCE
exec: {}
in:
  type: file
  path_prefix: ./test.csv
  parser:
    charset: UTF-8
    newline: CRLF
    type: csv
    delimiter: ','
    quote: '"'
    escape: ''
    skip_header_lines: 0
    columns:
    - {name: c0, type: string}
    - {name: c1, type: string}
    - {name: c2, type: string}
out: {type: stdout}

Created 'config.yml' file.

Adding an another case of related this issue.
$ vim test.csv
"No","種類","地域","市区町村コード"
1,"学生","北海道","01101"
2,"社会人","北海道","01102"

it results unexpected quoted column name.
exec: {}
in:
  type: file
  path_prefix: ./test.csv
  parser:
    charset: UTF-8
    newline: CRLF
    type: csv
    delimiter: ','
    quote: '"'
    escape: ''
    skip_header_lines: 1
    columns:
    - {name: '"No"', type: boolean}
    - {name: '"種類"', type: string}
    - {name: '"地域"', type: string}
    - {name: '"市区町村コード"', type: string}
out: {type: stdout}

Thank you for reporting! I fixed it at 75b6c70.

input csv
"No","種類","地域","市区町村コード","都道府県名","市区町村名","地区名","最寄駅：名称","最寄駅：距離（分）","取引価格（総額）","坪単価","間取り","面積（㎡）","取引価格（㎡単価）","土地の形状","間口","延床面積（㎡）","建築年","建物の構造","建物の用途","前面道路：方位","前面道路：種類","前面道路：幅員（ｍ）","都市計画","建ぺい率（％）","容積率（％）","取引時点","備考"
1,"宅地(土地)","住宅地","40202","福岡県","大牟田市","大字岩本","吉野(福岡)","30分〜60分",2300000,"84000","","90",26000,"","","","","","","南東","市道",6.0,"第１種低層住居専用地域",40,60,"平成17年第３四半期",""
2,"宅地(土地)","宅地見込地","40202","福岡県","大牟田市","大字岩本","吉野(福岡)","30分〜60分",5200000,"43000","","390",13000,"ほぼ長方形","","","","","","","",,"市街化調整区域",60,200,"平成17年第３四半期",""

results
$ embulk guess partial-config.yml -o config.yml
2015-04-22 13:21:08.517 +0900: Embulk v0.6.4
2015-04-22 13:21:09.275 +0900 [INFO] (guess): Listing local files at directory '.' filtering filename by prefix '40_Fukuoka'
2015-04-22 13:21:09.279 +0900 [INFO] (guess): Loading files [40_Fukuoka Prefecture_20053.csv]
/Users/y-ken/bin/embulk!/embulk/guess/schema_guess.rb:81 warning: already initialized constant TRUE_STRINGS
/Users/y-ken/bin/embulk!/embulk/guess/schema_guess.rb:90 warning: already initialized constant FALSE_STRINGS
/Users/y-ken/bin/embulk!/embulk/guess/schema_guess.rb:98 warning: already initialized constant TYPE_COALESCE
undefined method `each' for nil:NilClass
    /Users/y-ken/bin/embulk!/embulk/guess/schema_guess.rb:39:in `types_from_array_records'
    file:/Users/y-ken/bin/embulk!/embulk/guess/csv.rb:63:in `guess_lines'
    file:/Users/y-ken/bin/embulk!/embulk/guess_plugin.rb:121:in `guess'
    file:/Users/y-ken/bin/embulk!/embulk/guess_plugin.rb:25:in `guess'
    Embulk$$GuessPlugin$$JavaAdapter_1181242988.gen:13:in `guess'
    file:/Users/y-ken/bin/embulk!/embulk/command/embulk_run.rb:319:in `run'
    classpath:embulk/command/embulk.rb:43:in `(root)'

Error: undefined method `each' for nil:NilClass


Removed style applyed on .ui.container

@razvanMiu See previous comment for padding issue on lower resolutions


Install EVE-OS on NUC10i7FNH failed

Description
Goal was to install EVE-OS onto an NUC10i7FNH using the standard USB stick installation method (used to install EVE-OS on x86 hardware)

Steps to Reproduce

use the docker docker image to build the installer.iso

docker run lfedge/eve:latest -f raw installer_iso > installer.iso

enter the boot menu and sellect the EVE-OS installer.iso

Actual Results
The installer.iso install failed on NUC10i7FNH.
Expected Results

wheather the EVE-OS support the NUC10i7FNH hardware?
how to deal with the errors?

Additional Information

I have one NUC10i7FNH running successfully, flashed from a image built on top of master some time ago, around version 6.4.0. And then we have other NUC10i7FNH's with similar looking issues.
The only difference in our case between those NUCs are:

The use of ECC ram
Different NVMe drive

Let me check the specs and come back with a follow up.

FWIW @Juken8104 -- I've seen similar issues with bad USB sticks

FYI we brought up / reinstalled some NUC9VXQNXs recently.
With one of them we had to try 3 different USB sticks until one worked.
For another set (in a different location) we could not find a single working USB stick.
Resolution for us was to install EVE via iPXE.
I have a feeling there's something sensitive in the USB3 controllers on the gen9 and gen10 NUCs (but no specific evidence / smoking gun).

@erkki
I try to dd the EVE OS to USB stick. And then use the NUC  bring up the os with the USB Stick . That works succeed.
Next, I will try to install EVE via iPXE, thanks!


Delete the right domain name

Api gateway domain doesn't get deleted as intended. "blog.zappa.io" seems to be hardcoded by accident.

THAT EXPLAINS A LOT

Coverage remained the same at 78.733% when pulling abad9663a0aef0185ae9fa99652de7ff3d2d2f73 on kwellman:master into 9b7fc410211c5af50610734f7e05d68bdf529a33 on Miserlou:master.


feat: support searching on yt music

solve #5
will merge when lavalink released the version

You should add Audio rather than description:(\"Auto-generated by YouTube.\")
Because sometimes It doesn't find the accurate song.

inaccurate song caused by yt music search actually, if it doesn't find matching song then it'll give random result


Add the "active" pseudoclass for the buttons

Since there’s no implementation for other skins and it’s implemented in Social Likes Next (but there’s no classic skin ;-) I’m going to close it. Sorry for the delay.


When switch between Markdown and WYSIWYG gives me a different look

When switch between Markdown and WYSIWYG and go back to Markdown gives me a different rendering.
For example
First look like this:

And then:

Also when use initialEditType: 'wysiwyg' for some file give me error:

if markdown is initial edit type then show text, but when switch tabs between markdown and wysiwyg show me this error.

* and - are available when generating the Bullet List.
However, when it is switched from WYSIWYG to Markdown again, we are only converting the delimeter on the list as *.
the problem with the list being combined. Markdown doesn't separate the list with a blank line.
It is the Known-Issue.
Can you tell me more about the error reproduction? Are you saying that an error occurs when the initial value is used as that text?

Thanks for your reply,
when I click on an item, the editor should appear in a new dialog, but when I try to switch to wysiwyg, this error is displayed
Example:
https://user-images.githubusercontent.com/47823760/204644153-f618cf84-ba60-4d81-a74c-01c6f444a452.mp4
This is the file where the problem occurs, but there are more examples:
example.md


[wip] fix s3test failed test

What problem are we solving?
How are we solving the problem?
How is the PR tested?
Checks

[ ] I have added unit tests if possible.
[ ] I will add related wiki document changes and link to this PR after merging.

@kungf This hack is superfluous if the Etag check conditions work.


DB container is not starting

I just wanted to try out harbor but I fail quite early:
The harbor-db container seems not to start properly (restarts all the time).
A docker-ps indicates it: "Restarting (137) 32 seconds ago".
What I did:

Downloaded 1.2.2 (I also tried 1.2.0) stable version offline and online installer
Changed the hostname in the harbor.cfg file
./install.sh

My docker version: 17.12.0
My docker-compose version: 1.8.0
Docker is running on a fresh ubuntu 16.04 digitalocean droplet.
Some lines of the mysql.log file:
Dec 31 17:07:57 <IP_ADDRESS> mysql[4069]: Maria DB flag not found, the DB was created in mysql image, running upgrade...
Dec 31 17:07:58 <IP_ADDRESS> mysql[4069]: Waiting for MySQL start...
Dec 31 17:08:00 <IP_ADDRESS> mysql[4069]: message repeated 2 times: [ Waiting for MySQL start...]
Dec 31 17:08:01 <IP_ADDRESS> mysql[4069]: Waiting for MySQL start...
Dec 31 17:08:02 <IP_ADDRESS> mysql[4069]: Waiting for MySQL start...
Dec 31 17:08:28 <IP_ADDRESS> mysql[4069]: message repeated 26 times: [ Waiting for MySQL start...]
Dec 31 17:08:29 <IP_ADDRESS> mysql[4069]: MySQL failed to start.
Dec 31 17:08:32 <IP_ADDRESS> mysql[4069]: /usr/local/bin/docker-entrypoint.sh: running /docker-entrypoint-updatedb.d/upgrade.sh
Dec 31 17:08:32 <IP_ADDRESS> mysql[4069]: Maria DB flag not found, the DB was created in mysql image, running upgrade...
Dec 31 17:08:32 <IP_ADDRESS> mysql[4069]: Waiting for MySQL start...
Here is a zip file containing all the logs:
harbor-logs.zip
If I should upload the config files, please tell me. But I don't think that makes any sense here as I did not alter them in any way (except the hostname).
My guess is that I am doing something wrong here. I would be glad if you could help me out.
Thanks

I tried to install the newest version. It works now without any issue. Thanks for your support anyway!


<EMAIL_ADDRESS>autoplay "Maximum call stack size exceeded"

Check that this is really a bug

[X] I confirm

Reproduction link
https://stackblitz.com/edit/vitejs-vite-6ep5ry?file=package.json,src%2FApp.vue&terminal=dev
Bug description
"Maximum call stack size exceeded" error, when I use autoplay.
<EMAIL_ADDRESS>it works fine

Expected Behavior
No response
Actual Behavior
No response
Swiper version
8.1.6 and 8.2.1 Maybe 8.16~8.2.1
Platform/Target and Browser Versions
window10 chrome 101.0.4951.67
Validations

[X] Follow our Code of Conduct
[X] Read the docs.
[X] Check that there isn't already an issue that request the same feature to avoid creating a duplicate.
[X] Make sure this is a Swiper issue and not a framework-specific issue

Would you like to open a PR for this bug?

[ ] I'm willing to open a PR

it is fixed by this commit https://github.com/nolimits4web/swiper/commit/56e050bcdbcc00db7af02ccb32e0725265dd242a


Spoofed XFH header causes runtime error

Description
Spoofing an X-Forwarded-Host header with an invalid host name, e.g.
X-Forwarded-Host: foo"><script>alert(313)</script><x=".com, main--myproj--myorg.hlx.page

causes a Runtime error:  Invalid URL string
To Reproduce
Curl the pipeline service with such a forged XFH header.
Expected behavior
A 400 Bad Request response should be returned or the error should be handled gracefully.

this is a duplicate of #346... should be fixed.

Seems to be only occur in v6 and only on Cloudflare stack.

this is a duplicate of #346... should be fixed.

on a node runtime, yes. on cloudflare, no

resolved via #217 and #218


Bug fixes, docs environment fixes, folder structure minor change

bug fixes in BaseProblem, _FunctionWrapper
readthedocs environment fix (mambaforge)
folder structure change (mainly restructuring cofi-examples)

Codecov Report

Merging #52 (7c773c4) into main (e3e4de6) will decrease coverage by 0.05%.
The diff coverage is 100.00%.

@@            Coverage Diff             @@
##             main      #52      +/-   ##
==========================================
- Coverage   99.51%   99.45%   -0.06%
==========================================
  Files          20       20
  Lines        1637     1652      +15
==========================================
+ Hits         1629     1643      +14
- Misses          8        9       +1

Impacted Files
Coverage Δ

src/cofi/_version.py
100.00% <100.00%> (ø)

src/cofi/base_problem.py
98.33% <100.00%> (-0.24%)
:arrow_down:

tests/test_base_problem.py
100.00% <100.00%> (ø)

Continue to review full report at Codecov.

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

Code_cov tests failed at environment setup due to a conda error.
Another attempt succeeded (by removing conda update conda).


WIP: Extend scheduled cloud cleaner to vmware

Currently scheduled cloud cleaner only takes care of azure, aws and gcp resources. Extend this functionality to vmware.
To do so, tag every vmware resource with "gitlab-ci-tag". And then remove the old enough ones in scheduled cloud cleaner.
This pull request includes:

[ ] adequate testing for the new functionality or fixed issue
[ ] adequate documentation informing people about the change such as

[ ] submit a PR for the guides repository if this PR changed any behavior described there: https://www.osbuild.org/guides/

Log with successful clean: https://gitlab.com/osbuild/ci/osbuild-composer/-/jobs/2015370638

Looks good, just one small change requested and I have a question about the .vmkd images that we upload, do they get removed along with the vm? I can see we're doing the same cleanup in the script itself but I'm just curious.

Any imaged gets destroyed when we remove the VM. Link to the documentation: https://github.com/vmware/govmomi/blob/master/govc/USAGE.md#vmdestroy

Starting to look it over


Incorrect pinnning

The recipe is pinning against libpng 1.6*, not the recommended pinning of https://github.com/conda-forge/staged-recipes/wiki/Pinned-dependencies. This has resulted in issues such as https://github.com/matplotlib/matplotlib/issues/6511.

We also did fontconfig and rebuilt matplotlib and cairo. However, the same issue still exist with qt now.


IndexOutOfBounds Exception thrown repeatedly when Eureka has no EIPs containing "ec2-"

The EIPManager has a running task that looks to bind Eureka to EIPs.  In our case we are writing an application which is hosted in AWS but will not be publicly available and will be accessible ONLY from our corporate network.
We have an AWS Direct Connect to our corporate environment.  My EC2 container running my docker images, including Eureka, does not have a public nor elastic IP address.  In this case the only "ec2Urls" value is "http://localhost:8761".
EIPManager.getEIPsFromServiceUrls(List ec2Urls) (line:346-349) does not handle this case and line 347 will throw:
java.lang.StringIndexOutOfBoundsException: String index out of range: -4
at java.lang.String.substring(String.java:1967) ~[na:1.8.0_91]
at com.netflix.eureka.aws.EIPManager.getEIPsFromServiceUrls(EIPManager.java:342) ~[eureka-core-1.4.6.jar!/:1.4.6]
at com.netflix.eureka.aws.EIPManager.getEIPsForZoneFromConfig(EIPManager.java:322) ~[eureka-core-1.4.6.jar!/:1.4.6]
at com.netflix.eureka.aws.EIPManager.getCandidateEIPs(EIPManager.java:304) ~[eureka-core-1.4.6.jar!/:1.4.6]
at com.netflix.eureka.aws.EIPManager.isEIPBound(EIPManager.java:157) ~[eureka-core-1.4.6.jar!/:1.4.6]
at com.netflix.eureka.aws.EIPManager$EIPBindingTask.run(EIPManager.java:412) ~[eureka-core-1.4.6.jar!/:1.4.6]
at java.util.TimerThread.mainLoop(Timer.java:555) [na:1.8.0_91]
at java.util.TimerThread.run(Timer.java:505) [na:1.8.0_91]
I propose a check to ensure that the index is greater than -1 before parsing the substrings.
See #819  as a potential fix.
Thanks,
Robert

Hi @robertnosburn thank you for the PR. Looking at your usecase, it seems like what you would prefer is that the EIPBinder not run at all?
Eureka servers need to have fixed IPs, and EIP is one mechanism that we use to guarantee that in a cloud environment. However if you are able to guarantee that via some other mechanism, then possibly a better way to disable the errors from the EIPBinder is to not initialize the EIPBinder at all.
Eureka server currently support a configuration AwsBinder strategy (see https://github.com/Netflix/eureka/blob/master/eureka-core/src/main/java/com/netflix/eureka/aws/AwsBinderDelegate.java) where configuration (eureka. awsBindingStrategy=<EIP, ROUTE53, ENI>) can be used to define the binder type. What about a proposal that we add a fourth option (NOOP for a no-op binder) to that set of binders, which you can then configure via properties in your setup?

Hi David,
I think that you are correct, I do not have any EIPs and so the EIPBinder would be unnecessary.  My Eureka runs in a docker container in an ec2 instance with a loadbalancer and a route-53 entry pointing to it.  This is how it's getting a fixed IP.  My microservices with Eureka clients know the location of the Eureka server by it's route-53 cname.
Looking through the code I also saw "e-ipbind-rebind-retries", which I tried setting to 0 in my application.yml both as
eureka:
    e-ipbind-rebind-retries: 0
  e-ipbinding-retry-interval-ms-when-unbound: 86400000
and
eureka:
  server:
    e-ipbind-rebind-retries: 0
    e-ipbinding-retry-interval-ms-when-unbound: 86400000
It looked as though this would allow the Binder to run once per day and not actually try to do the bind, but for some reason these values weren't getting picked up.
So yes, if I could persuade the EIPBinder to not run, that would be ideal.
As a side note, I think that my PR should still stand, it's probably not a bad idea to validate an index before using it in a substring, don't you think?
Thanks and Regards

David,
I found the "eureka.server.binding-strategy" and set it to route53.  This causes a NPE on the EurekaController:
2016-07-20 23:44:54.878 ERROR 5 --- [nio-8761-exec-2] o.a.c.c.C.[.[.[/].[dispatcherServlet]    : Servlet.service() for servlet [dispatcherServlet] in context with path [] threw exception [Request processing failed; nested exception is java.lang.NullPointerException] with root cause
java.lang.NullPointerException: null
at org.springframework.cloud.netflix.eureka.server.EurekaController.getServerContext(EurekaController.java:143) ~[spring-cloud-netflix-eureka-server-1.1.4.RELEASE.jar!/:1.1.4.RELEASE]
at org.springframework.cloud.netflix.eureka.server.EurekaController.getRegistry(EurekaController.java:139) ~[spring-cloud-netflix-eureka-server-1.1.4.RELEASE.jar!/:1.1.4.RELEASE]
Thoughts?
Thanks,

@robertnosburn I buy your point, thanks. Have merged your PR in. As for the route53binder, let me take a look at that. We don't actually use that binder optional at Netflix and it was contributed to us by an external user, so it may have quirks that's specific for their use case.

David,
Digging a little further, the actual exception is:
java.lang.RuntimeException: Cannot bootstrap eureka server :
at org.springframework.cloud.netflix.eureka.server.EurekaServerBootstrap.contextInitialized(EurekaServerBootstrap.java:87) ~[spring-cloud-netflix-eureka-server-1.1.4.RELEASE.jar!/:1.1.4.RELEASE]
at org.springframework.cloud.netflix.eureka.server.EurekaServerInitializerConfiguration$1.run(EurekaServerInitializerConfiguration.java:70) ~[spring-cloud-netflix-eureka-server-1.1.4.RELEASE.jar!/:1.1.4.RELEASE]
at java.lang.Thread.run(Thread.java:745) [na:1.8.0_91]
Caused by: java.lang.NoSuchMethodError: com.amazonaws.AmazonWebServiceRequest.copyPrivateRequestParameters()Ljava/util/Map;
at com.amazonaws.services.route53.AmazonRoute53Client.invoke(AmazonRoute53Client.java:1544) ~[aws-java-sdk-route53-1.9.3.jar!/:na]
at com.amazonaws.services.route53.AmazonRoute53Client.listHostedZones(AmazonRoute53Client.java:382) ~[aws-java-sdk-route53-1.9.3.jar!/:na]
at com.netflix.eureka.aws.Route53Binder.getHostedZone(Route53Binder.java:238) ~[eureka-core-1.4.9.jar!/:1.4.9]
at com.netflix.eureka.aws.Route53Binder.getResourceRecordSetWithHostedZone(Route53Binder.java:212) ~[eureka-core-1.4.9.jar!/:1.4.9]
at com.netflix.eureka.aws.Route53Binder.doBind(Route53Binder.java:109) ~[eureka-core-1.4.9.jar!/:1.4.9]
at com.netflix.eureka.aws.Route53Binder.start(Route53Binder.java:89) ~[eureka-core-1.4.9.jar!/:1.4.9]
However that method exists in the 1.9.3 version of the aws-sdk-core jar.
BUT..
A dependency:tree on my project reveals:
[INFO] |  |  +- com.netflix.eureka:eureka-core:jar:1.4.9:compile
[INFO] |  |  |  +- com.amazonaws:aws-java-sdk-core:jar:1.10.30:runtime
[INFO] |  |  |  +- com.amazonaws:aws-java-sdk-ec2:jar:1.10.30:runtime
[INFO] |  |  |  +- com.amazonaws:aws-java-sdk-autoscaling:jar:1.9.3:runtime
[INFO] |  |  |  +- com.amazonaws:aws-java-sdk-sts:jar:1.9.3:runtime
[INFO] |  |  |  +- com.amazonaws:aws-java-sdk-route53:jar:1.9.3:runtime
I have performed a thorough search and I cannot see any reason why v1.10.30 of ec2 and core should be included, instead of the 1.9.3, as specified in the gradle files in tag v1.4.9
Thanks,

@robertnosburn, @qiangdavidliu   I have a problem with aws-java-sdk-core:jar:1.10.30:runtime and aws-java-sdk-ec2:jar:1.10.30:runtime dependencies as well.
Note:
I am using aws-java-sdk-sqs:1.10.72 which depends on aws-java-sdk-core:jar:1.10.72
I am using eureka-core:jar:1.4.10 which depends on aws-java-sdk-core:jar:1.9.3 and aws-java-sdk-ec2:jar:1.9.3
Dependency tree for -Dincludes=com.amazonaws:
[INFO] |  - com.amazonaws:aws-java-sdk-sqs:jar:1.10.72:compile
[INFO] |     - (com.amazonaws:aws-java-sdk-core:jar:1.10.30:compile - version managed from 1.10.72; omitted for duplicate)
[INFO] +- org.springframework.cloud:spring-cloud-starter-eureka:jar:1.1.5.RELEASE:compile
[INFO] |  - com.netflix.eureka:eureka-core:jar:1.4.10:compile
[INFO] |     +- (com.amazonaws:aws-java-sdk-core:jar:1.10.30:runtime - version managed from 1.9.3; omitted for duplicate)
[INFO] |     +- com.amazonaws:aws-java-sdk-ec2:jar:1.10.30:runtime (version managed from 1.9.3)
[INFO] |     |  - (com.amazonaws:aws-java-sdk-core:jar:1.10.30:runtime - version managed from 1.9.3; omitted for duplicate)
[INFO] |     +- com.amazonaws:aws-java-sdk-autoscaling:jar:1.9.3:runtime
[INFO] |     |  - (com.amazonaws:aws-java-sdk-core:jar:1.10.30:runtime - version managed from 1.9.3; omitted for duplicate)
[INFO] |     +- com.amazonaws:aws-java-sdk-sts:jar:1.9.3:runtime
[INFO] |     |  - (com.amazonaws:aws-java-sdk-core:jar:1.10.30:runtime - version managed from 1.9.3; omitted for duplicate)
[INFO] |     - com.amazonaws:aws-java-sdk-route53:jar:1.9.3:runtime
[INFO] |        - (com.amazonaws:aws-java-sdk-core:jar:1.10.30:runtime - version managed from 1.9.3; omitted for duplicate)
Which causes java.lang.ClassNotFoundException: com.amazonaws.ClientConfigurationFactory
When I explicitly declare the dependency aws-java-sdk-core:1.10.72 it fixes my problem with the aws-java-sdk-core dependency and I can run my application, but the dependency tree still shows that something is forcing the version aws-java-sdk-ec2:jar:1.10.30
[INFO] |  - com.amazonaws:aws-java-sdk-sqs:jar:1.10.72:compile
[INFO] |     - (com.amazonaws:aws-java-sdk-core:jar:1.10.72:compile - omitted for duplicate)
[INFO] +- org.springframework.cloud:spring-cloud-starter-eureka:jar:1.1.5.RELEASE:compile
[INFO] |  - com.netflix.eureka:eureka-core:jar:1.4.10:compile
[INFO] |     +- (com.amazonaws:aws-java-sdk-core:jar:1.10.72:runtime - version managed from 1.9.3; omitted for duplicate)
[INFO] |     +- com.amazonaws:aws-java-sdk-ec2:jar:1.10.30:runtime (version managed from 1.9.3)
[INFO] |     |  - (com.amazonaws:aws-java-sdk-core:jar:1.10.72:runtime - version managed from 1.10.30; omitted for duplicate)
[INFO] |     +- com.amazonaws:aws-java-sdk-autoscaling:jar:1.9.3:runtime
[INFO] |     |  - (com.amazonaws:aws-java-sdk-core:jar:1.10.72:runtime - version managed from 1.9.3; omitted for duplicate)
[INFO] |     +- com.amazonaws:aws-java-sdk-sts:jar:1.9.3:runtime
[INFO] |     |  - (com.amazonaws:aws-java-sdk-core:jar:1.10.72:runtime - version managed from 1.9.3; omitted for duplicate)
[INFO] |     - com.amazonaws:aws-java-sdk-route53:jar:1.9.3:runtime
[INFO] |        - (com.amazonaws:aws-java-sdk-core:jar:1.10.72:runtime - version managed from 1.9.3; omitted for duplicate)
I took a look at the gradle and pom files of eureka-core:1.4.10 and both declare dependencies to aws-java-sdk-core:1.9.3 and aws-java-sdk-ec2:1.9.3 so I don't know what is forcing the version 1.10.30

@ibaiul can you double check to see that all of your aws-java-sdk-* dependencies are at the exact same patch version? Misalignment between the aws java sdk jar can cause these kind of errors.

@qiangdavidliu @robertnosburn I have similar requirement where I dont want any EIP binder is there a way to stop EIPManager


Outdated refs example

ref={cropper}

This does not work in specific cases. It should be set in the constructor of the class.

Also no example of how to set up using React.useRef instead of React.createRef

This is a general usecase and not specific. My issue is about the outdated example in the docs / readme.

i'll link the pr of @DanielRuf here for completeness: https://github.com/roadmanfong/react-cropper/pull/128/
however, this does not resolve the problem that the current props interface is not compatible with useRef hook. (https://github.com/roadmanfong/react-cropper/issues/134)
iiuc this is why ReactCropper can't be used in functional components


Error Provisioning EC2 Hosts with longer AWS resource ids

Rancher Version:
1.1.4
Docker Version:
1.12.3
OS and where are the hosts located? (cloud, bare metal, etc):
AWS EC2
Environment Type: (Cattle/Kubernetes/Swarm/Mesos)
Cattle
Steps to Reproduce:
Launch a new EC2 Host. Issue noticed on 17th December
Results:
Host will not launch. Error communicating with Docker. We noticed that AWS is now using longer instance id's and wondering if this could be cause of issue?
https://dl.dropboxusercontent.com/s/h74v9f2xj5eklay/chrome_2016-12-18_02-00-53.png

I have encountered the same issue. I have got different errors,

Could not verify OS (when provisioned with RancherOS) and
Waiting for SSH to be available (when provisioned with ubuntu)

which AMI are you using? can you launch that AMI in the same VPC subnet and add the host that route? That would ensure the vpc can reach out to the rancher server.

Hi. We are using Ubuntu 15 LTS ami. AMI id is ami-8aa67cf9

We have not had an issue with this AMI previously. When we try to clone an existing host in rancher we have the issue so no difference between ones that are successfully deployed and running.

Docker version is actually 1.10.3 not 1.12.3 as stated above

We have captured logs from rancher management host when trying to provision. Maybe this sheds some light?

RancherOS ami-c6d073a5 (ap-southeast-1 region), yes the Rancher server and rancher host are in subnet, all the NACL and SG's are in place for server <-> client communications. If I build the instance via Terraform and run the agent everything works as expected.

This should have been resolved in a more modern version of rancher. If you can reproduce the issue there, please do file an issue.


Bug

Thank you very much for your plugin, which makes me very focused on typing, but there are some abnormal problems when I use the Chinese input method. I have recorded pictures. If you can fix the abnormality, it will be a very happy thing. Thank you very much.
The anomalies are as follows,
But when you enter Chinese characters with many lines, you add [[]], and then type in the last typing place, some abnormal situations will automatically pop up. I don't know why.
[7794473a8ca1cc93443c2f2caf5e5d6b.gif](https://i.mji.rip/2023/10/05/7794473a8ca1cc93443c2f2caf5e5d6b.gif](url)


Can't find instructions for installing repository for development + jinja2.exceptions.TemplateNotFound: index.html

🐛 Bug
I've tried searching several times on github, https://lightning.ai/. But I simply cannot find a guide on installing this project for development. I want to contribute a PanelFrontend - see https://github.com/Lightning-AI/lightning/issues/13335
To Reproduce
Checkout https://github.com/Lightning-AI/lightning. Most other repositories I know have an easy to find link to the instructions for installing for development.
Checkout https://lightning.ai/ and https://pytorch-lightning.readthedocs.io/en/latest/generated/CONTRIBUTING.html. I am not able to find clear instructions on installing.
Expected behavior
I would expect it to be very easy to find clear and simple instructions.
Additional Context - jinja2.exceptions.TemplateNotFound: index.html
I am working on PR #13531 which I now want to run. But I cant. To reproduce
git clone https://github.com/MarcSkovMadsen/lightning.git
git checkout b59f80224843886459d54c828325683d770da746
cd lightning
python -m venv .venv
source .venv/Scripts/activate
pip install -e .

 This won't take long.
INFO: Your app has started. View it in your browser: http://<IP_ADDRESS>:7501/view
template name index.html
ERROR:    Exception in ASGI application
Traceback (most recent call last):
  File "C:\repos\private\lightning\.venv\lib\site-packages\uvicorn\protocols\http\httptools_impl.py", line 372, in run_asgi
    result = await app(self.scope, self.receive, self.send)
  File "C:\repos\private\lightning\.venv\lib\site-packages\uvicorn\middleware\proxy_headers.py", line 75, in __call__
    return await self.app(scope, receive, send)
  File "C:\repos\private\lightning\.venv\lib\site-packages\fastapi\applications.py", line 269, in __call__
    await super().__call__(scope, receive, send)
  File "C:\repos\private\lightning\.venv\lib\site-packages\starlette\applications.py", line 124, in __call__
    await self.middleware_stack(scope, receive, send)
  File "C:\repos\private\lightning\.venv\lib\site-packages\starlette\middleware\errors.py", line 184, in __call__
    raise exc
  File "C:\repos\private\lightning\.venv\lib\site-packages\starlette\middleware\errors.py", line 162, in __call__
    await self.app(scope, receive, _send)
  File "C:\repos\private\lightning\.venv\lib\site-packages\starsessions\middleware.py", line 85, in __call__
    await self.app(scope, receive, send_wrapper)
  File "C:\repos\private\lightning\.venv\lib\site-packages\starlette\middleware\cors.py", line 84, in __call__
    await self.app(scope, receive, send)
  File "C:\repos\private\lightning\.venv\lib\site-packages\starlette\exceptions.py", line 93, in __call__
    raise exc
  File "C:\repos\private\lightning\.venv\lib\site-packages\starlette\exceptions.py", line 82, in __call__
    await self.app(scope, receive, sender)
  File "C:\repos\private\lightning\.venv\lib\site-packages\fastapi\middleware\asyncexitstack.py", line 21, in __call__
    raise e
  File "C:\repos\private\lightning\.venv\lib\site-packages\fastapi\middleware\asyncexitstack.py", line 18, in __call__
    await self.app(scope, receive, send)
  File "C:\repos\private\lightning\.venv\lib\site-packages\starlette\routing.py", line 670, in __call__
    await route.handle(scope, receive, send)
  File "C:\repos\private\lightning\.venv\lib\site-packages\starlette\routing.py", line 266, in handle
    await self.app(scope, receive, send)
  File "C:\repos\private\lightning\.venv\lib\site-packages\starlette\routing.py", line 65, in app
    response = await func(request)
  File "C:\repos\private\lightning\.venv\lib\site-packages\fastapi\routing.py", line 227, in app
    raw_response = await run_endpoint_function(
  File "C:\repos\private\lightning\.venv\lib\site-packages\fastapi\routing.py", line 160, in run_endpoint_function
    return await dependant.call(**values)
  File "c:\repos\private\lightning\src\lightning_app\core\api.py", line 258, in frontend_route
    return templates.TemplateResponse("index.html", {"request": request})
  File "C:\repos\private\lightning\.venv\lib\site-packages\starlette\templating.py", line 97, in TemplateResponse
    template = self.get_template(name)
  File "C:\repos\private\lightning\.venv\lib\site-packages\starlette\templating.py", line 84, in get_template
    return self.env.get_template(name)
  File "C:\repos\private\lightning\.venv\lib\site-packages\jinja2\environment.py", line 997, in get_template
    return self._load_template(name, globals)
  File "C:\repos\private\lightning\.venv\lib\site-packages\jinja2\environment.py", line 958, in _load_template
    template = self.loader.load(self, name, self.make_globals(globals))
  File "C:\repos\private\lightning\.venv\lib\site-packages\jinja2\loaders.py", line 125, in load
    source, filename, uptodate = self.get_source(environment, name)
  File "C:\repos\private\lightning\.venv\lib\site-packages\jinja2\loaders.py", line 214, in get_source
    raise TemplateNotFound(template)
jinja2.exceptions.TemplateNotFound: index.html
template name index.html
ERROR:    Exception in ASGI application
Traceback (most recent call last):
  File "C:\repos\private\lightning\.venv\lib\site-packages\uvicorn\protocols\http\httptools_impl.py", line 372, in run_asgi
    result = await app(self.scope, self.receive, self.send)
  File "C:\repos\private\lightning\.venv\lib\site-packages\uvicorn\middleware\proxy_headers.py", line 75, in __call__
    return await self.app(scope, receive, send)
  File "C:\repos\private\lightning\.venv\lib\site-packages\fastapi\applications.py", line 269, in __call__
    await super().__call__(scope, receive, send)
  File "C:\repos\private\lightning\.venv\lib\site-packages\starlette\applications.py", line 124, in __call__
    await self.middleware_stack(scope, receive, send)
  File "C:\repos\private\lightning\.venv\lib\site-packages\starlette\middleware\errors.py", line 184, in __call__
    raise exc
  File "C:\repos\private\lightning\.venv\lib\site-packages\starlette\middleware\errors.py", line 162, in __call__
    await self.app(scope, receive, _send)
  File "C:\repos\private\lightning\.venv\lib\site-packages\starsessions\middleware.py", line 85, in __call__
    await self.app(scope, receive, send_wrapper)
  File "C:\repos\private\lightning\.venv\lib\site-packages\starlette\middleware\cors.py", line 84, in __call__
    await self.app(scope, receive, send)
  File "C:\repos\private\lightning\.venv\lib\site-packages\starlette\exceptions.py", line 93, in __call__
    raise exc
  File "C:\repos\private\lightning\.venv\lib\site-packages\starlette\exceptions.py", line 82, in __call__
    await self.app(scope, receive, sender)
  File "C:\repos\private\lightning\.venv\lib\site-packages\fastapi\middleware\asyncexitstack.py", line 21, in __call__
    raise e
  File "C:\repos\private\lightning\.venv\lib\site-packages\fastapi\middleware\asyncexitstack.py", line 18, in __call__
    await self.app(scope, receive, send)
  File "C:\repos\private\lightning\.venv\lib\site-packages\starlette\routing.py", line 670, in __call__
    await route.handle(scope, receive, send)
  File "C:\repos\private\lightning\.venv\lib\site-packages\starlette\routing.py", line 266, in handle
    await self.app(scope, receive, send)
  File "C:\repos\private\lightning\.venv\lib\site-packages\starlette\routing.py", line 65, in app
    response = await func(request)
  File "C:\repos\private\lightning\.venv\lib\site-packages\fastapi\routing.py", line 227, in app
    raw_response = await run_endpoint_function(
  File "C:\repos\private\lightning\.venv\lib\site-packages\fastapi\routing.py", line 160, in run_endpoint_function
    return await dependant.call(**values)
  File "c:\repos\private\lightning\src\lightning_app\core\api.py", line 258, in frontend_route
    return templates.TemplateResponse("index.html", {"request": request})
  File "C:\repos\private\lightning\.venv\lib\site-packages\starlette\templating.py", line 97, in TemplateResponse
    template = self.get_template(name)
  File "C:\repos\private\lightning\.venv\lib\site-packages\starlette\templating.py", line 84, in get_template
    return self.env.get_template(name)
  File "C:\repos\private\lightning\.venv\lib\site-packages\jinja2\environment.py", line 997, in get_template
    return self._load_template(name, globals)
  File "C:\repos\private\lightning\.venv\lib\site-packages\jinja2\environment.py", line 958, in _load_template
    template = self.loader.load(self, name, self.make_globals(globals))
  File "C:\repos\private\lightning\.venv\lib\site-packages\jinja2\loaders.py", line 125, in load
    source, filename, uptodate = self.get_source(environment, name)
  File "C:\repos\private\lightning\.venv\lib\site-packages\jinja2\loaders.py", line 214, in get_source
    raise TemplateNotFound(template)
jinja2.exceptions.TemplateNotFound: index.html

Maybe the concrete issue I have is that the index.html file has been move to the public subfolder?

Please note I am on a windows laptop in a security constrained enterprise environment. I prefer pip but can use conda.

WTF :-) It seems the setup.cfg has some instructions for installing and building.

For development, I usually had to download the frontend manually by running python scripts/download_frontend.py. It looks like this helper script was not yet ported over to the OSS for lightning. We need to include it or automate this step on installation. I'm pretty sure this is the reason for the template not found error.

Thanks @awaelchli . I cannot run that command as scripts is not included in the repository. Do you have another suggestion? Thanks.

@MarcSkovMadsen Could you try again with PACKAGE_NAME=app pip install -e .?
Here is the function to be executed to download the UI: https://github.com/Lightning-AI/lightning/blob/master/.actions/setup_tools.py#L330

Update: Automated UI download on pip install has been introduced in #13499


feat(protocol): Token vault can not handle ERC20s behind proxy's

Describe the feature request
TokenVault should be able to handle ERC20s behind proxies, or at least determine if it is behind a proxy and fail gracefully.
Describe alternatives you've considered
No response
Additional context
No response

Jeff, ERC20 proxies shall be transparent to function callers, or did I miss something?

Closed due to TTKO works on A3 tokenVault


Update CocoaPod

I saw that you updated the repo to swift 3 however cocoa pods still has the swift 2 version. Could you please update the cocoa pod?

@entotsu Had the same issue as well

Me Too
And thanks for your work!


Improved error handling

the current error handling in loadDataSource and other async functions were made more readable, maintainable, and efficient by focusing on best practices in TS and JS

Hi, thanks for the prs


Fix SA1508

SA1508 throws ArgumentOutOfRange

Could you include a test for this?

Please add a test case that will reproduce the issue.

Will try, but I'm not sure what's going wrong. It was happen in moment of typing multiline comment
public void Bar(string s, int i, int i2) /* */
{
    var ints = new[] { 1, 2, 3 };
}


Try to fix intermittently failing CI

Selected Reviewer: @davidhewitt

please review

For reference:

https://github.com/pydantic/pydantic/actions/runs/5554788105/jobs/10145043098?pr=6679
https://github.com/frostming/findpython/pull/22


Doesn't understand Chinese

Hello.

How are you?

 I think the root cause is that there isn't very much data available for Chinese.

Looks like there's much data for Chinese.
https://github.com/Helsinki-NLP/Tatoeba-Challenge/blob/master/data/README-v2021-08-07.md
Can someone train an argos package with it please? I really need good Chinese to English translation

The Chinese model was updated recently hopefully the new one is better.
https://community.libretranslate.com/t/improving-chinese-translations/364/
If we can find more data we could retrain again too.

still bad. How many GPU cards need if I want to train it?

https://huggingface.co/Helsinki-NLP/opus-mt-zh-en does a pretty good job, I wonder if we can use that.
# pip install torch
# pip install sentencepiece
# pip install sacremoses

from transformers import MarianMTModel, MarianTokenizer

def chinese_to_english(text):
    model_name = 'Helsinki-NLP/opus-mt-zh-en'
    model = MarianMTModel.from_pretrained(model_name)
    tokenizer = MarianTokenizer.from_pretrained(model_name)

    # Tokenize the text
    tokenized_text = tokenizer.encode(text, return_tensors="pt")

    # Translate the tokenized text
    translated_tokens = model.generate(tokenized_text)

    # Decode the translated tokens to a string
    translated_text = tokenizer.decode(translated_tokens[0], skip_special_tokens=True)
    return translated_text

if __name__ == "__main__":
    chinese_text = input("Enter Chinese text: ")
    translated_text = chinese_to_english(chinese_text)
    print(f"Translated Text: {translated_text}")```

New Chinese simplified/traditional models (from OPUS-MT) are up:
https://libretranslate.com/?source=zh&target=en&q=你好

Thanks @pierotofy! After reinstalling not only zh but also pl  is now working great : )


[Grid] - ui four column grid inside of a row doesn't work (Fiddle provided)

Not sure if i'm doing anything wrong here, but kind of expected this to work?
http://jsfiddle.net/r3772wkt/
Check the 4th column, it's on a new row.

Use four column row instead.
https://jsfiddle.net/illyism/1quLm7Lv/1/

Check nested grid example, nested grid should still appear inside column
http://jsfiddle.net/nh1zuxko/
http://semantic-ui.com/collections/grid.html#nesting-grids


SuperBuilder: consider lombok.builder.className for builder extends clause

@SuperBuilder now correctly considers lombok.builder.className when generating the extends clause for the abstract builder class.
This PR fixes #2647.

Is there any problem with this PR? I'd be happy to fix it...


Fix Memory and File Descriptor Leaks

Results from security review bsc#1191692. Apart from some cosmetical stuff this mainly addresses memory and file descriptors leaks in the code. One file descriptor leak in loadConfigData() (see commit f2c12a766d48d247283a6119ee014161f74ffeaf) even affects the success code path and a user's config file descriptor will be inherited to the child process(es).
I suggest carefuly review of the changes, since the error handling situations are tricky to get right even with the gotos I introduced.

Thank you for the fixes and refactoring to make things more readable.
All merged individually.


https://github.com/whoeevee/EeveeSpotify/releases/tag/swift4.7

https://github.com/whoeevee/EeveeSpotify/releases/tag/swift4.7

https://github.com/GMOogway/shadowrocket-rules

iOS更新屏蔽
https://github.com/invalidunit/chflags_trollhelper/blob/main/disable_updates.md


RPC: fix numNonVoteTransactions in getPerformanceSamples

Problem
The value numNonVoteTransactions returned in the RPC getPerformanceSamples endpoint was actually reporting the number of successful non vote transactions that were executed. That field is documented in the RPC docs with the following statement:

To get a number of voting transactions compute numTransactions - numNonVoteTransaction"

But before this fix, numTransactions - numNonVoteTransaction is actually computing the number of vote transactions + errored non-vote transactions.
Summary of Changes

Increment executed_non_vote_transactions_count whether the non-vote tx failed or succeeded. This value will get fixed on restart since we don't persist the value in snapshots

Fixes #

Codecov Report
All modified and coverable lines are covered by tests :white_check_mark:

Project coverage is 82.1%. Comparing base (7daa369) to head (542b784).
Report is 13 commits behind head on master.

Additional details and impacted files
@@           Coverage Diff           @@
##           master    #1189   +/-   ##
=======================================
  Coverage    82.1%    82.1%
=======================================
  Files         886      886
  Lines      236397   236397
=======================================
+ Hits       194227   194250   +23
+ Misses      42170    42147   -23

Summary of Changes
* Increment `executed_non_vote_transactions_count` whether the non-vote tx failed or succeeded. This value will get fixed on restart since we don't persist the value in snapshots

I'm actually not completely familiar with how the snapshots are generated, but we do store these values in RocksDB.
Here is the struct that holds then:
https://github.com/anza-xyz/agave/blob/93749446cbb147645edefb7a9c8ecc2cbf2e12b3/ledger/src/blockstore_meta.rs#L503-L513

Yeah good point, there will be a period of time where the perf samples returned by rpc have a mix of old incorrect values and new correct values. The SAMPLE_INTERVAL is one minute and the PERFORMANCE_SAMPLES_LIMIT is 720 so a restarted node will return old values for 12 hours. And then if for some reason a node rolls back its software version, it could start reporting incorrect values again.
I think the alternative is to purge old incorrect values from blockstore but that feels like a worse end user experience that the proposed change. @CriesofCarrots do you have any preference here?

I think the alternative is to purge old incorrect values from blockstore but that feels like a worse end user experience that the proposed change. @CriesofCarrots do you have any preference here?

I think serving the old, incorrect values for ~12 hours after restart is acceptable.

I think the other discrepancy would be that different node might be returning different counts, depending on if there were upgraded or not.
Not sure how big of an issue is it.
It seems that a feature flag might be a cleaner approach to fix this?
Though, maybe, it is too much work for this case.

different node might be returning different counts, depending on if there were upgraded or not.

getRecentPerformanceSamples is already a node-specific view (and could be totally wonky when a node is booting or on a fork), so I personally don't think it's worth doing any gymnastics to coordinate activation of this fix between nodes.


feat(angular): config input

<swiper [config]="{ slidesPerView: 3 }" [spaceBetween]="50">
    <ng-template swiperSlide>Best slide ever 2</ng-template>
    <ng-template swiperSlide>Best slide ever 2</ng-template>
    <ng-template swiperSlide>Best slide ever 2</ng-template>
    <ng-template swiperSlide>Best slide ever 2</ng-template>
    <ng-template swiperSlide>Best slide ever 2</ng-template>
  </swiper>

@nolimits4web I'm not sure if it should be merged.
If yes I guess this functionality should be implemented in other frameworks too.

I am not sure too :) In other frameworks it is not needed as it is possible to use object spread there:
const params = {
  slidesPerView: 1,
  spaceBetween: 50,
}

// and then just
<Swiper { ...params }>...</Swiper>

If Angular doesn't allow this, then I think it will be useful. Is it ready to be merged?

Even checked to be sure... Nope it's not possible
https://github.com/angular/angular/issues/14545
It is ready to be merged. It will probably have some improvements in thumbs & controller PR.
After swipers angular library, I feel that I must learn Vue or React :))

Merged, thanks!


adding month_code for yearMonth

Adds methods to yearMonth
month
year
calendarId
monthCode
daysInYear
daysInMonth
monthsInYear
inLeapYear

@nekevss let me know your thoughts
I've been trying to add add() but it seems it's iso is using the date version of add_date_duration, but it seems like i need an implementation more like dateTime's:
https://github.com/boa-dev/temporal/blob/dd51ebbf92fb48701c3236af0c3fb302ea180e30/src/iso.rs#L125-L164
The former doesn't use the calendar at all by the looks of it
secondly why does the leap_year not return a bool? Is that wasteful?
https://github.com/boa-dev/temporal/blob/dd51ebbf92fb48701c3236af0c3fb302ea180e30/src/utils.rs#L230-L233

Oh, I had an unsent pending review 😅 I'll push the comments and I think we can address them on a separate PR


[GSK-3361] Model predictions are casted to double by default in regression mode

That's problematic, for decathlon their model outputs 32-bit precision values, and we're casting them to 64-bit, which I think makes our scan detecting it as data-leakage (predictions are changing with the same input)

@Hartorn, @kevinmessiaen it seems that this is not breaking anything on the side of the library. @bmalezieux is verifying it on the hub side.

@Hartorn, @kevinmessiaen it seems that this is not breaking anything on the side of the library. @bmalezieux is verifying it on the hub side.

It works for our current project, but maybe this would break in other scenarios.

@Hartorn, @kevinmessiaen it seems that this is not breaking anything on the side of the library. @bmalezieux is verifying it on the hub side.

It works for our current project, but maybe this would break in other scenarios.

I will try to run the e2e tests to make sure of it
Did you try on the regression notebooks in docs/reference/notebooks ?

Running in https://github.com/Giskard-AI/giskard-hub/actions/runs/8374478584/job/22929809288?pr=544

Tested on insurance_prediction_lgbm and hotel_text_regression


Fix shortcut receiver

Task/Issue URL: https://app.asana.com/0/488551667048375/1202920141690379/f
Description
Steps to test this PR
Feature 1

[ ]
[ ]

UI changes

Before
After

!(Upload before screenshot)
(Upload after screenshot)

Current dependencies on/for this PR:

develop

PR #2256   👈

This comment was auto-generated by Graphite.


introduction of push notifications broke the webView for some reason.

The issue does not exist in: eff5d5e4b77fa0e0b31aaec389323bf956684bf8
The issue exists in: ef8ad54b2d70f7f4ade59e94beb2dec4f440e723
The interesting thing is, the webView is not fundamentally broken, we can successfully initialize it and connect to a node. But all calls into JS afterwards, e.g. transferring tokens, lead to below error.
E/flutter (17528): [ERROR:flutter/runtime/dart_vm_initializer.cc(41)] Unhandled Exception: MissingPluginException(No implementation found for method evaluateJavascript on channel com.pichillilorenzo/flutter_inappwebview_1214122967374174233124163190134233129107185174)
E/flutter (17528): #0      MethodChannel._invokeMethod (package:flutter/src/services/platform_channel.dart:294:7)
E/flutter (17528): <asynchronous suspension>
E/flutter (17528): #1      InAppWebViewController.evaluateJavascript (package:flutter_inappwebview/src/in_app_webview/in_app_webview_controller.dart:1420:16)
E/flutter (17528): <asynchronous suspension>
E/flutter (17528):

Ok, it seems the problem is ExistingWorkPolicy.replace.

I made an issue there: https://github.com/fluttercommunity/flutter_workmanager/issues/430


RPlidar burst!

[ WARN] [1461155288.335518420]: RPLidar : Publishing Invalid data; might burst! watch out..
[ WARN] [1461155288.335636631]: RPLidar : Node count is not equal to 360
[ WARN] [1461155288.335677183]: Node Count: 1
[ WARN] [1461155288.335721848]: RPLidar : Time increment is infinity!
[ WARN] [1461155288.335751098]: Node Count: 1
terminate called after throwing an instance of 'std::runtime_error'
  what():  Time is out of dual 32-bit range
[navi/move_base-36] process has died [pid 27903, exit code -6, cmd /opt/yujin/amd64/indigo-devel/lib/move_base/move_base /move_base/honk:=/gopher/commands/honk local_planner/future_odom:=/gopher/trajectory_controller/future_odom trajectory_control_end_time:=/gopher/trajectory_controller/trajectory_control_end_time cmd_vel:=/navi/commands/velocity /move_base/clear_and_rotate/cmd_vel:=/gopher/yocs_cmd_vel_mux/input/teleop odom:=/gopher/odom /move_base/clear_and_rotate/bumper:=/gopher/events/bumper __name:=move_base __log:=/home/yujin/.ros/log/4c92fc0c-06ed-11e6-9937-d0509978a29e/navi-move_base-36.log].
log file: /home/yujin/.ros/log/4c92fc0c-06ed-11e6-9937-d0509978a29e/navi-move_base-36*.log

Awesome! Looks like it's time to get the fix in. Maybe we should leave a warning/info message saying when the driver discards scans.

There is also the case when there is invalid data and node count is less than 360 (more than 300) but not 1. It does not cause the crash.
Should we drop it also? (not sure if the data is useful or not)

Maybe we should leave a warning/info message

Definitely

Should we drop it also? (not sure if the data is useful or not)

Sounds like you have to find out what that data looks like then. Do the laser scans pass on the reduced count? And if they do, they won't represent a full 360 degrees. I suspect that the data will be misrepresentative.
Q) What does the 1 actually mean in real world terms? I'm happy we can avoid the crash, but I would like to know the root cause, can you shed some light Naveed?

From the driver scan routine, it seems like it aborts scanning as soon as it hits some error, resulting in invalid data. I think 1 would mean the scan routine encounters error at the beginning of putting the device into scan and special case as compared to other cases where count is less than 360. But for that we would have to look inside the driver.
I assume the data less than 360 degrees is corrupt and at most can represent correct data less but than 2pi. If not occuring too frequently, dropping it is the safe choice, as it would mess up with scan splitter(maybe).

I assume the data less than 360 degrees is corrupt and at most can represent correct data less but than 2pi. If not occuring too frequently, dropping it is the safe choice, as it would mess up with scan splitter(maybe).

+1 let's do it.

PR here


Unhandled error when Java not available

Describe the Bug
A call to validator.validateXML crashes the application calling it due to an unhandled error if Java is not available.
Assessment: On a system with no trace of Java, environment variable process.env.JAVA_HOME will not exist. Therefore validator.js line 9 will set JAVA_HOME to undefined. Then since undefined is falsy, the test on line 24 will be false, and the code will attempt to spawn Java.
Steps to Reproduce
Invoke validator.validateXML on a system on which Java has not been installed and where the environment variable JAVA_HOME does not exist.
Expected Behavior
Return an error to the caller rather than attempting to spawn Java.
Environment
Linux RHEL 7, Node.js v14.16.1, xsd-schema-validator v0.6.0.

Thanks for opening this bug.
I aggree with you that a meaningful error is a more appropriate response.
Would you like to contribute a PR?

Oddly enough, even though I have experience with git and have used both GitHub and GitLab, I've somehow managed to avoid environments where PRs were the order of the day. So I'm hesitant. However, I ran the following (extracted from validator.js) on a system without Java, and with JAVA_HOME undefined, as a test:
var JAVA_HOME = process.env.JAVA_HOME; var JAVAC = JAVA_HOME ? JAVA_HOME + '/bin/javac' : 'javac'; console.log( fs.existsSync(JAVAC)); console.log( fs.existsSync(JAVAC + '.exe'));
"false" was output twice, as expected. So I think all that's needed here to remove JAVA_HOME from the if statement on line 24. If you agree, may I politely request that you handle that change?
Much appreciated!

Will pick up your suggestion once time allows. Thanks for the prompt response.

Well, I had to circle back and look a little more deeply. The simple solution I suggested above is wrong.

If JAVA_HOME is defined, the if statement on line 24 will run at least one of and ideally both of the existsSync calls to make sure Java is available in the folder defined by JAVA_HOME. If Java doesn't exist in that folder an error is returned. Otherwise spawn is called using the JAVA_HOME path. This is fine.

If JAVA_HOME is undefined the if statement on line 24 makes no calls to existsSync and always evaluates to false, so it always reaches the spawn call, with the assumption that Java is available on the PATH. And there's the rub. If that assumption is incorrect (i.e., Java is not available), spawn fails to start, so there is never an exit event. But spawn does generate an error, and it's a nasty one that evades try/catch blocks. But spawn does raise an error event in that case, as opposed to an exit event. So I believe the solution is for a listener for the error event to be added to the spawn call. (I assume listeners can be chained so an .on('error') listener can immediately follow the .on('exit') listener.) Then an error can be returned via the callback. (See https://nodejs.org/api/child_process.html#child_process_event_error.)

Thanks again for your assessment.
The best option forward would be if you bake your knowledge into a PR with accompanying test cases. The second best option is for me to pick up this issue, some time in the future.

I copied validator.js and XMLValidator.java and applied my fix to validator.js (adding .on error listener to the spawn call for javac, so there are listeners for both the exit and error events), and I was able to receive an error I could trap (as opposed to an error that simply could not be trapped) on a Linux system on which Java was not installed. I'm okay with submitting a PR with this fix, except for the issue of testing:
This change has to be tested in an environment where environment variable JAVA_HOME is not defined and where spawn is unable to find javac. For the latter, requiring testing on a system where Java is missing is asking too much. However, I think it could be simulated by modifying (or removing) the PATH variable, testing this case, and then restoring PATH. And honestly I'm not comfortable writing that test.
What's the way forward?

Please provide your PR as is and I'll look into the remaining bits as a follow up.

Turns out I cannot publish code due to restrictions from my employer. But here's what's needed:

Both invocations of spawn need a handler for the error event in addition to a handler for the exit event.
Assuming an error handler would invoke the callback routine, note that it's possible for both error and exit to fire. While that does not appear to happen when Java is not available—only the error event fires—documentation suggests taking care when there are listeners for both error and exit so the callback routine is not called multiple times.


Windows 10 Local Account issue?

As a test to reproduce this, I set up my local account plugin for authentication to fail on every request.  However, when entering correct credentials, my plugin is somehow bypassed and I am able to log in.
Entering incorrect credentials, I am able to see my custom error message.

Here are the logs for 2 login attempts.  The first fails with known bad credentials, the second succeeds with good credentials, but does not appear to use the local account plugin

2017-08-25 18:43:47,021 [5096|11|DEBUG] RemoteLog[NativeLib]: [Credential.cpp:492] Credential::Connect: Processing login for foo
2017-08-25 18:43:47,084 [5096|21|DEBUG] PluginDriver:adceaffe-8894-4d1e-80b2-88cb54b39a32: New PluginDriver created
2017-08-25 18:43:47,099 [5096|21|ERROR] Abstractions: GetDomainInfo() Error:1355 The specified domain either does not exist or could not be contacted
2017-08-25 18:43:47,099 [5096|21|INFO ] pGina.Service.Impl: domain:DESKTOP-3HHKNIJ
2017-08-25 18:43:47,099 [5096|21|INFO ] pGina.Service.Impl: domain:DESKTOP-3HHKNIJ
2017-08-25 18:43:47,115 [5096|21|ERROR] Abstractions: GetDomainInfo() Error:1355 The specified domain either does not exist or could not be contacted
2017-08-25 18:43:47,115 [5096|21|INFO ] pGina.Service.Impl: domain check:[False] [False] [False]
2017-08-25 18:43:47,130 [5096|21|DEBUG] pGina.Service.Impl: Processing LoginRequest for: foo in session: 1 reason: Login
2017-08-25 18:43:47,177 [5096|21|DEBUG] pGina.Service.Impl: Program running as user:SYSTEM
2017-08-25 18:43:47,177 [5096|21|DEBUG] pGina.Service.Impl: Program running as user:NETWORK SERVICE
2017-08-25 18:43:47,177 [5096|21|DEBUG] pGina.Service.Impl: Program running as user:LOCAL SERVICE
2017-08-25 18:43:47,177 [5096|21|DEBUG] pGina.Service.Impl: Program running as user:UMFD-0
2017-08-25 18:43:47,193 [5096|21|DEBUG] pGina.Service.Impl: Program running as user:DWM-1
2017-08-25 18:43:47,193 [5096|21|DEBUG] pGina.Service.Impl: Program running as user:UMFD-1
2017-08-25 18:43:47,209 [5096|21|DEBUG] PluginDriver:adceaffe-8894-4d1e-80b2-88cb54b39a32: Begin login chain, 0 stateful plugin(s).
2017-08-25 18:43:47,209 [5096|21|DEBUG] PluginDriver:adceaffe-8894-4d1e-80b2-88cb54b39a32: Performing login process
2017-08-25 18:43:47,209 [5096|21|DEBUG] PluginDriver:adceaffe-8894-4d1e-80b2-88cb54b39a32: Authenticating user foo, 1 plugins available
2017-08-25 18:43:47,224 [5096|21|DEBUG] PluginDriver:adceaffe-8894-4d1e-80b2-88cb54b39a32: Calling 12fa152d-a2e3-4c8d-9535-5dcd49dfcb6d
2017-08-25 18:43:47,224 [5096|21|WARN ] PluginDriver:adceaffe-8894-4d1e-80b2-88cb54b39a32: 12fa152d-a2e3-4c8d-9535-5dcd49dfcb6d Failed with Message: I just don't feel like it
2017-08-25 18:43:47,240 [5096|21|ERROR] PluginDriver:adceaffe-8894-4d1e-80b2-88cb54b39a32: Failed to authenticate foo, Message: I just don't feel like it
2017-08-25 18:43:47,240 [5096|21|DEBUG] PluginDriver:adceaffe-8894-4d1e-80b2-88cb54b39a32: End login chain, 0 stateful plugin(s).
2017-08-25 18:43:47,255 [5096|10|ERROR] RemoteLog[NativeLib]: [Credential.cpp:496] Credential::Connect: Failed attempt
2017-08-25 18:43:47,959 [5096|9|DEBUG] RemoteLog[NativeLib]: [Provider.cpp:273] Provider::UnAdvise() - provider events callback reference released
2017-08-25 18:43:47,959 [5096|25|DEBUG] RemoteLog[NativeLib]: [CredentialProviderFilter.cpp:74] CredentialProviderFilter::Filter
2017-08-25 18:43:47,990 [5096|31|DEBUG] RemoteLog[NativeLib]: [Provider.cpp:121] Provider::SetUsageScenario(1, 0x00000000)
2017-08-25 18:43:47,990 [5096|20|DEBUG] RemoteLog[NativeLib]: [CredentialProviderFilter.cpp:74] CredentialProviderFilter::Filter
2017-08-25 18:43:47,990 [5096|29|DEBUG] RemoteLog[NativeLib]: [Provider.cpp:262] Provider::Advise(0000028245B78D20,<PHONE_NUMBER>00000F) - provider events callback reference added
2017-08-25 18:43:48,006 [5096|24|DEBUG] RemoteLog[NativeLib]: [Provider.cpp:431] SerializedUserNameAvailable: No serialized creds set
2017-08-25 18:43:48,006 [5096|19|DEBUG] RemoteLog[NativeLib]: [Credential.cpp:177] Credential::GetBitmapValue: Loading image from: C:\ThreeSquareMarketLogo200x200.bmp
2017-08-25 18:43:51,850 [5096|23|DEBUG] RemoteLog[NativeLib]: [Credential.cpp:492] Credential::Connect: Processing login for sam
2017-08-25 18:43:51,866 [5096|26|DEBUG] PluginDriver:35858deb-2011-415b-b8a1-01c924bca1ff: New PluginDriver created
2017-08-25 18:43:51,866 [5096|26|ERROR] Abstractions: GetDomainInfo() Error:1355 The specified domain either does not exist or could not be contacted
2017-08-25 18:43:51,881 [5096|26|INFO ] pGina.Service.Impl: domain:DESKTOP-3HHKNIJ
2017-08-25 18:43:51,881 [5096|26|INFO ] pGina.Service.Impl: domain:DESKTOP-3HHKNIJ
2017-08-25 18:43:51,881 [5096|26|ERROR] Abstractions: GetDomainInfo() Error:1355 The specified domain either does not exist or could not be contacted
2017-08-25 18:43:51,881 [5096|26|INFO ] pGina.Service.Impl: domain check:[False] [False] [False]
2017-08-25 18:43:51,897 [5096|26|DEBUG] pGina.Service.Impl: Processing LoginRequest for: sam in session: 1 reason: Login
2017-08-25 18:43:51,991 [5096|28|DEBUG] RemoteLog[NativeLib]: [Credential.cpp:765] Credential::ReportResult(0x00000000, 0x00000000)
2017-08-25 18:43:52,225 [5096|7|INFO ] pGina.Service.Impl: SessionChange:1 5
2017-08-25 18:43:52,225 [5096|5|INFO ] pGina.Service.Impl: SessionChange: 1 -> SessionLogon
2017-08-25 18:43:53,718 [5096|14|DEBUG] RemoteLog[NativeLib]: [Provider.cpp:273] Provider::UnAdvise() - provider events callback reference released
2017-08-25 18:43:53,734 [5096|3|DEBUG] RemoteLog[NativeLib]: [Provider.cpp:94] Stopping service state helper thread (if necessary)

I just disabled all credential providers besides pgina and am still experiencing the same behavior.

Please read the documentation.
Especially, pGina Users Guide -> How pGina Works

Understood, I'm assuming you are trying to point me to this:

exists a user with that name on the system incl. the comment "pGina created" than he will be processed by pGina
exists a user with that name on the system without the comment "pGina created" than he will be authenticated by the WinAPI and doesn’t go trough the pGina chain.


how do i change the fnf logo

Describe your problem here. If you are modding, please try testing your problem in a clean version of the engine instead, this ensures the problem is actually caused by the engine itself. Also, if you're using an older version of JSE, please try the latest action build in the Actions tab or the latest release build. The issue has probably been fixed since that version. Oh yeah, and also be sure to check the pinned 'JS Engine: Known Issues' issue, to double check if your issue hasn't already been found!
i
Are you modding a build from source or with Lua?
Lua
What is your build target?
Windows x64
Did you edit anything in this build? If so, mention or summarize your changes.
no

you use the source code to do that

i dont know how to change via source code is there a simpiler way and/or is that the only way

you can replace the png file for the logo directory

you can replace the png file for the logo directly, that should be in assets/images or assets/shared/images

yeah but make sure to change the xml too so the image offsets aren’t kind of fucked

thx


Need for dealing with strides when writing performant code against multiple array libraries

Early on when putting the array API standard together, we made a decision that strides must not be exposed in the Python API, because multiple array libraries don't support that and it's memory layout which is more implementation detail than an API that should be exposed to Python users. We made that decision so early that there isn't even a dedicated issue for it I believe; the closest one is gh-571 about C vs. Fortran memory order. It's also related to gh-24 (strides are mentioned explicitly there).
The strides topic came up a couple of times recently though, and we should think about this more:

In the SciPy proceedings paper one of the main review comments was about this: https://github.com/scipy-conference/scipy_proceedings/pull/822
In the SciPy RFC for array API standard adoption it quickly came up because one of the first functions for which a conversion was tried used as_strided: https://github.com/scipy/scipy/issues/18286#issuecomment-1522287189

Previous comments
I'll copy some of the key comments below to have them in a single place:
From @jpivarski: The thing I was most surprised about in the read-through was that "strides" are not considered part of the array object. I recognize that some libraries (e.g. JAX) are able to do great things by not allowing strides to be free. But then, you show in the SciPy benchmark (Fig. 2c, 2d) that not having this handle implies a severe performance penalty, which is likely to be a major take-away from this paper by most readers. In the discussion, you say that it illustrates that users will need to apply library-specific optimizations after all. (Implementing a backend or runtime switching system is non-goal number 2.) It seems to me like strides-awareness would be a good candidate for one of the optional extensions, if extensions are not strictly sets of functions. Perhaps that's a question or suggestion I should take up with the Consortium's normal channels, not a review of the paper, but it's a question the paper leads me to have.
From @leofang: Regarding strides: I have conflicting views and will continue to self-debate. On the one hand, when over half of the array libraries (Jax, TF, Dask, cuNumeric) do not offer strides for various reasons (ex: it makes no sense for distributed arrays), it's my opinion that even making it optional is not the right way to go, just like many other design considerations that we've made. Also, for those supporting the stride semantics, their strides are accessible via DLPack, it's just that currently it's hard to access them from within pure Python. On the other hand, as a low-level C++ library developer (in short, we write backends for the array libraries), I do see the pain point that it's hard for us to even imagine how our library would be adopted and consumed by the array libraries that do not have strides. It could be possible that our library simply cannot serve as the battery behind them due to different design philosophies, idk. Though, to be fair, the standard aims at the array libraries, not their backends, so if there's a standardization effort targeting array backends, it might be a better place for standardizing strides.
From @tylerjereddy: scipy.signal.welch seemed to be a well-behaved target for prototyping based on that so I tried doing that from scratch on a feature branch locally, progressively allowing more welch() tests to accept CuPy arrays when an env variable is set.
Even for this "well-behaved"/reasonable target, I ran into problems pretty early on. For example, both in the original feature branch and in my branch, there doesn't seem to be an elegant solution made for handling numpy.lib.stride_tricks.as_strided. The docs for that function don't even recommend using it, and yet CuPy (and apparently torch from the Quansight example) do provide it, outside of the array API standard proper.
So, I guess my first real-world experience makes me wonder what our policy on special casing in these scenarios will be--ideally, I'd like to just remove the usage of as_strided() and substitute with some other approach that doesn't require conditionals on the exact array type/namespace. While this is a rather specific blocker, if I encounter something like this even for a "well behaved" case, I can imagine quite a few headaches for the cases that are not well behaved.
From @rgommers: Let's have a look at this case - this is the code in question:
    # Created strided array of data segments
    if nperseg == 1 and noverlap == 0:
        result = x[..., np.newaxis]
    else:
        # https://stackoverflow.com/a/5568169
        step = nperseg - noverlap
        shape = x.shape[:-1]+((x.shape[-1]-noverlap)//step, nperseg)
        strides = x.strides[:-1]+(step*x.strides[-1], x.strides[-1])
        result = np.lib.stride_tricks.as_strided(x, shape=shape,
                                                 strides=strides)

The as_strides usage is there to save memory. It's actually pretty difficult to understand what the code does exactly though, so it's good for performance but not great for maintainability.  <.... example with more details cut, see here> At that point, we can say we're happy with more readability at the cost of some performance (TBD if the for-loop matters, my guess is it will). Or, we just keep the special-casing for numpy using as_strided. At that point, we do have two code paths, but no performance loss and also easier to understand code.
To discuss
It's clear that strides cannot be universally supported, and equally clear that users who write algorithmic code may need to access strides in some cases to avoid significant performance loss.
I think essentially, dealing with strides by hand for libraries that allow that is doing the work that in a more full-featured array library will/should be done by a compiler (e.g. the JIT/AOT compilers in JAX or PyTorch).
We need to at least suggest and document some strategy for cases like the as_strided usage above. In the similar but more specifc case of order=, which mattered quite a bit performance-wise for scikit-learn, they ended up writing a library-specific utility function to use the order keyword when present, and avoid it otherwise: https://github.com/scikit-learn/scikit-learn/blob/21312644df0a6b4c6f3c27a74ac9d26cf49c2304/sklearn/utils/_array_api.py#L360

Having a look at the usage frequency of as_strided and .strides in Python code:
Scikit-learn:
$ rg strides --type py
sklearn/datasets/tests/test_samples_generator.py
135:            signs = signs.view(dtype="|S{0}".format(signs.strides[0]))

sklearn/feature_extraction/image.py
284:    """Extracts patches of any n-dimensional array in place using strides.
326:    patch_strides = arr.strides
329:    indexing_strides = arr[slices].strides
336:    strides = tuple(list(indexing_strides) + list(patch_strides))
338:    patches = as_strided(arr, shape=shape, strides=strides)

$ rg as_strided --type py
sklearn/feature_extraction/image.py
16:from numpy.lib.stride_tricks import as_strided
338:    patches = as_strided(arr, shape=shape, strides=strides)

SciPy:
$ rg as_strided --type py
signal/_spectral_py.py
1958:        result = np.lib.stride_tricks.as_strided(x, shape=shape,

linalg/_special_matrices.py
5:from numpy.lib.stride_tricks import as_strided
218:    return as_strided(vals[len(c)-1:], shape=out_shp, strides=(-n, n)).copy()
259:    return as_strided(c_ext[L-1:], shape=(L, L), strides=(-n, n)).copy()
316:    return as_strided(vals, shape=out_shp, strides=(n, n)).copy()

signal/_signaltools.py
2124:                zi = np.lib.stride_tricks.as_strided(zi, expected_shape,

signal/tests/test_signaltools.py
445:        a = np.lib.stride_tricks.as_strided(a, shape=(n, 1000), strides=(8008, 8))

linalg/special_matrices.py
12:    'fiedler', 'fiedler_companion', 'convolution_matrix', 'as_strided'

interpolate/tests/test_fitpack.py
347:        from numpy.lib.stride_tricks import as_strided
354:        x = as_strided(np.zeros(()), shape=(size,))

There's some more usages of .strides in SciPy, but not that many either. Cleaned up by hand because the code searches returned comments and .py files that are only used to generate Cython code:
$ rg strides --type py
signal/_signaltools.py
2110:                strides = zi.ndim * [None]
2115:                        strides[k] = zi.strides[k]
2117:                        strides[k] = zi.strides[k]
2119:                        strides[k] = 0
2125:                                                     strides)

linalg/_special_matrices.py
217:    n = vals.strides[0]
218:    return as_strided(vals[len(c)-1:], shape=out_shp, strides=(-n, n)).copy()
258:    n = c_ext.strides[0]
259:    return as_strided(c_ext[L-1:], shape=(L, L), strides=(-n, n)).copy()
315:    n = vals.strides[0]
316:    return as_strided(vals, shape=out_shp, strides=(n, n)).copy()
signal/_spectral_py.py
779:                # Sxx has one additional dimension for time strides
1957:        strides = x.strides[:-1]+(step*x.strides[-1], x.strides[-1])
1959:                                                 strides=strides)

signal/tests/test_signaltools.py
445:        a = np.lib.stride_tricks.as_strided(a, shape=(n, 1000), strides=(8008, 8))
1123:        # numpy arrays that have odd strides. The stride value below gets
1127:        a.strides = 16

interpolate/_ndbspline.py
189:        _strides_c1 = np.asarray([s // c1.dtype.itemsize
190:                                  for s in c1.strides], dtype=np.intp)
202:                                 _strides_c1,

spatial/tests/test_kdtree.py
1296:    assert query_discontiguous.strides[-1] != query_contiguous.strides[-1]
1297:    assert d_discontiguous.strides[-1] != d_contiguous.strides[-1]

spatial/transform/tests/test_rotation.py
1473:    assert all(i >= 0 for i in e1.strides)
1474:    assert all(i >= 0 for i in e2.strides)

Interestingly enough the second of the as_strided feature requests to JAX was left open and they're willing to implement it: jax#11354. Quoting: "But instead of closing the request like jax#11354, I think we should consider adding an as_strided API, with clear warnings about the lack of operational semantics guarantees. It may be a lower priority item though..."
It may be insightful to take the scipy.signal.welch for-loop implementation above, and see if JAX can actually optimize it to give similar (or even better) performance to the NumPy as_strided equivalent.

Strides also come up a lot in broadcast implementations:
...
I'm not sure if this is relevant (because it's an implementation), ...

I don't think so, broadcasting is a separate topic from strides. For strided array libraries, they do have certain behavior regarding the strides for broadcast arrays, as you pointed out. But, all array libraries, strided or not, can support broadcasting, and thus it's already included in the standard.
FYI this issue has been discussed in the array API meeting this week 🙂 Someone will write up a summary later, so I wouldn't  dare attempt to give a poor summary in my own words.
But I do just come up with another reason against standardizing strides. Strides are meaningful only for dense arrays/tensors. Suppose I wanna write an multidimensional array library (oh, believe me, I really wish I could do, I just don't have time for it) that is array-API compliant and has dual dense/sparse support under the hood, without users making any decision if an array should be stored in the dense or any of the known sparse format (COO, CSR, ..., it gets complicated for N-D tensors). Then, clearly I simply cannot return strides, because it is an implementation detail of my library that most users should not need to know/rely on.

I agree with what @leofang says. Everything up to (2, 3, 5) will work for any conforming library, and is unrelated to striding. Only this part is specific:
>>> bprime.strides
(0, 0, 0)

and it's very rarely needed to explicitly access or manipulate strides.

I suspect all of those uses of strides can be written using sliding_window_view; some as broadcast_to.  Which probably should be more visible anyway.
In either case, the point is that sliding_window_view promises a view (no copy), but otherwise doesn't refer to strides and doesn't need to.  Maybe the no copy promise doesn't need to exist (unspecified), otherwise the only thought I would have is an apply_... function;  I am not exactly sure how much it would help.
Memory order can be a useful to ensure or hint (it even makes some sense for sparse as CSC and CSR are basically the same thing as F vs. C).
Allowing order= or preferred_order= or so seems fine, but you will probably want that only as part of arr.__array_namespace__() and not as part of the end-user API?  Unless you "hide" it a bit?

FYI this issue has been discussed in the array API meeting this week 🙂 Someone will write up a summary later, so I wouldn't dare attempt to give a poor summary in my own words.

Not a summary, but one point I made there and I should probably mention here too, is that for the SciPy welch implementation, which is the benchmark we included in the paper, the difference between the strides-optimized and the non-strides, purely standard portable version was literally four orders of magnitude (0.039 seconds vs. 124 seconds on PyTorch GPU). Of course, for practicality, SciPy will keep the fast path for NumPy, CuPy, and PyTorch, but that doesn't help if some other library comes along that it doesn't know about.


Support construction of lists and maps

https://github.com/opencypher/cypher-for-apache-spark/blob/3afbaabb55d6ec808e7b181f80911e332fef8aa1/src/main/scala/org/opencypher/caps/impl/spark/convert/rowToCypherMap.scala#L44

Already works: https://github.com/opencypher/cypher-for-apache-spark/pull/276


Create a way to pass non-KRM files through function input/output

This came up in the slack channel:
https://kubernetes.slack.com/archives/C0155NSPJSZ/p1651968001107699
There are cases where users would like non-KRM files to be available to functions.
Examples that have come up include:

including code files, such as Starlark functions or Rego in Gatekeeper ConstraintTemplates: #2350
generating or updating documentation markdown
inputs for generating ConfigMaps, as kustomize does (e.g, env files)
other generator inputs: #2528
kustomize-style strategic merge patches

I'm sure there are more.
I imagine we could do this with KRM wrappers and SDK library functions to unwrap/wrap the files, so they could be included in the ResourceList.
Where we can identify common file types, it would be useful to give them dedicated KRM types rather than generic File kinds.
I'd be open to more radical changes to the ResourceList, but that would require a KEP to kustomize (https://github.com/kubernetes/enhancements/tree/master/keps/sig-cli).
Speaking of which, with kustomize moving towards KRM functions, how is it planning to deal with this? Mounting filesystems and/or pulling files over the network is maybe necessary in some cases (e.g., helm charts), but seems suboptimal for common cases.

This came up in the slack channel:
https://kubernetes.slack.com/archives/C0155NSPJSZ/p1651968001107699

/cc @yuwenma

I was working on KRM support in SopsCecretGenerator and found that it's not possible because it reads external files (line env files) to generate the Secrets.
Without support for local files, all K8s resources that use local files will not be supported by KRM functions.

We need this for ConfigMap generation: #3119

Some updates: we did POC about passing non-KRM files through functions input/output.
Demo1: https://drive.google.com/file/d/1BMYH3HcTzUcnSTk0iO0oO_O4O_RiUhF7/view
Demo2: https://drive.google.com/file/d/1yvrWxDQJRGqCdzvvT0zmR-Cr6nUR3nMc/view
The graph below explains the high level workflow, more context can be found in the CUJ and Strawman doc


Argo UI workflow duration is counting down

What happened:
Workflow duration is counting down.
What you expected to happen:
Workflow duration should count up.
How to reproduce it (as minimally and precisely as possible):
Deploy a workflow, navigate to workflow in UI and see duration.
Anything else we need to know?:
Nope
Environment:

Argo version:

argo: v2.6.1
  BuildDate: 2020-03-04T21:25:34Z
  GitCommit: 842739d7831cc5b417c4f524ed85288408a32bbf
  GitTreeState: clean
  GitTag: v2.6.1
  GoVersion: go1.13.4
  Compiler: gc
  Platform: linux/amd64

Kubernetes version :

clientVersion:
  buildDate: "2020-02-06T03:29:33Z"
  compiler: gc
  gitCommit: f5757a1dee5a89cc5e29cd7159076648bf21a02b
  gitTreeState: clean
  gitVersion: v1.14.10-dispatcher
  goVersion: go1.12.12b4
  major: "1"
  minor: 14+
  platform: linux/amd64
serverVersion:
  buildDate: "2020-01-17T23:10:13Z"
  compiler: gc
  gitCommit: bdceba0734835c6cb1acbd1c447caf17d8613b44
  gitTreeState: clean
  gitVersion: v1.14.10-gke.17
  goVersion: go1.12.12b4
  major: "1"
  minor: 14+
  platform: linux/amd64

Message from the maintainers:
If you are impacted by this bug please add a 👍 reaction to this issue! We often sort issues this way to know what to prioritize.

Thank you. Would you like to submit a PR to fix this?

Double checking the details table, it seems that the start and end time are actually in the future

This is probably why the duration is negative in the beginning.

Interesting... I am unable to reproduce this. All times are assigned using the system time. Perhaps your cluster's clock is ahead of your machine's clock, and when times are returned to the client side the TS tenderer uses your machine's time as truth?

What the.... That explains why I almost missed my train yesterday, my laptop's time is about two minutes behind :astonished: Not much you can do from your end though


Add maximum width to press release

On higher resolutions and wider screens the press release still has a stretched appearance. As was pointed out in an earlier ticket. Setting a maximum width will fix this.

Added maximum width option to the style sheet.


Revert "HUDI-101: added mevn-shade plugin with filters."

The original PR is accidentally creating fat jars for all hoodie packages ( including hoodie-common, hoodie-client,....)
 You might need to  move your base pom file change to each bundle's pom file or do other maven tricks (if at all there is) to avoid fat jars for all packages.

Merging this change myself to keep master sane

@bvaradar I will try to look if shade plugin can be applicable on selective sub-projects or using some else plugin which can help us to achieve the intent. Can you please list down the sub-projects for which fat jar is not needed?

Just checked, all four bundle packages pom in packaging folder & hoodie-utilities pom already using maven-shade-plugin. I think it's better to move exclusion entries there. @bvaradar, please share your input.

@abhioncbr : Yes, that seems fine


Are you familiar with enableSingleRequest()?

I'm trying to implement enableSingleRequest().
I have it set up the way google suggests:
    this.googletag.cmd.push(() => {
      if (this.props.enableSingleRequest) {
        // Infinite scroll requires SRA
        this.googletag.pubads().enableSingleRequest();
      }

      // add support for async loading
      this.googletag.pubads().enableAsyncRendering();

      // collapse div without ad
      this.googletag.pubads().collapseEmptyDivs();

      // load ad with slot refresh
      this.googletag.pubads().disableInitialLoad();

      // enable google publisher tag
      this.googletag.enableServices();
    });

I have 6 ads on one of the pages, and I'm still seeing 6 requests.
I'm also seeing multiple slots have the exact same ad, which is the problem that SRA is used to resolve.
I have an adComponent that gets loaded in each slot.
Do I need to restructure how I'm using my googleAd react component so that it works in harmony with the other slots?
Any help is appreciated.
I found the high level solution in the google docs for enableSingeRequest() but no pattern for how to implement this in a react application:
Create one SRA request with all ad slots to best serve guaranteed
roadblocks or competitive exclusions, instead of sending
SRA requests with one ad slot at a time.

Thanks :)

Bueller?

You can not use enableSingleRequest because it will not download new ads on the next page. This package is for SPA

I figured out how to enable SRA in a react app using redux and I've verified that only one request results in 6 ad slots being served where previously there were 6 requests.
One thing I'm not sure of is whether I should be seeing all unique ads.
3 of the ads are always the same ad - this is what SRA is meant to prevent. Google calls it a "guaranteed roadblock"


pin selenium to version 2.44.0 so we don't see inconsistencies across te...

cc @cdangg @Bassoon08 @rtabor

Good call.