Added secret volume type to PSP

What type of PR is this?
/kind bug
/kind chart-release

Any specific area of the project related to this PR?
/area falco-exporter-chart

What this PR does / why we need it: See linked issue.
Which issue(s) this PR fixes:

Fixes https://github.com/falcosecurity/charts/issues/115
Special notes for your reviewer: I also bumped chart version from 0.3.5 to 0.3.6. @leogr: Sorry for introducing this bug :hankey:.
Checklist

[X] Chart Version bumped
[X] Variables are documented in the README.md
[X] CHANGELOG.md updated

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

Needs approval from an approver in each of these files:

OWNERS

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

[APPROVALNOTIFIER] This PR is APPROVED
This pull-request has been approved by: leogr
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:

OWNERS [leogr]

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

LGTM label has been added.  Git tree hash: 7fa68a92ed206f18555e58b9e90542866075ddbb


chore: bump cargo_metadata to 0.15

Checklist

[X] I have read the Contributor Guide
[X] I have read and agree to the Code of Conduct
[X] I have added a description of my changes and why I'd like them included in the section below

Description of Changes
Bump cargo_metadata to 0.15
Hi lovelies, could we bump cargo_metadata to 0.15 pretty please ty vm :) :unicorn:
Related Issues
I am wishing to bump to 0.15 in cargo-geiger but krates is still 0.14 leading to some type errors
I've tested that it all works locally with cargo-geiger -
I have bump PR waiting here wired to future 0.15 and waiiting krates bump to 0.15:
https://github.com/rust-secure-code/cargo-geiger/pull/339

p.s. contributor guide link is broken


Add number of Github Issues to Backlog and Completed on roadmap page

I added it for Backlog items, but to do Completed/Closed, I would need to query the API again and that would slow things down. Might do it later if I find a smarter way to do it with the GitHub API

https://github.com/jsolly/blogthedata/commit/c75863c4f0658236e26b409be1fff58afd3970dc


not showing img after re-rendering component

I have a product card with an image and two button for like and watch,
when i click these buttons the state of component changes,
this change calls render function and after that the loaded images are not visible.
whats is the problem ?
here is the code in that card for image lazy loading:
<SimpleImg
                    src={product.image_url}
                    style={{
                      display: 'block',
                      margin: 'auto',
                      width: '100%',
                      height: '100%'
                    }}
                    imgStyle={{ objectFit: 'contain', height: '100%' }}
                    alt={product.name1}
                    onError={this.onImageError}
                    importance={'low'}
                    disableAnimateCachedImg={true}
                  />

the problem was because of bootstrap which set 'visiblity: hidden' for img.


Additional logging for qstudio

To make it easier to create comprehensive bug reports, it would help if qStudio would log various kinds of environmental information:

date & time (DONE!)
qstudio version number
Operating system name and version (e.g. macOS 12.7.5 on Intel, Windows 11 on ARM, Ubuntu 16.04 :-)
Current folder/working directory
contents of $PATH
names/paths of any plugins (such as PRQL...)
names/paths of any pre-connected (saved?) servers
differences between stored conns and current conns

Thanks!

Added more info on startup
Jun 03, 2024 10:22:55 AM com.timestored.misc.DynamicClassLoader loadInstances
INFO: Searching for plugins in folder: C:\Users\ray\qstudio\libs
Jun 03, 2024 10:22:55 AM com.timestored.misc.DynamicClassLoader visitJarFileJavaClasses
INFO: Looking for plugins inside: C:\Users\ray\qstudio\libs/jdbc-<IP_ADDRESS>-jar-with-dependencies.jar
Jun 03, 2024 10:22:55 AM com.timestored.qstudio.QStudioLauncher main
SEVERE: Could not load a plugin due to module-info has been compiled by a more recent version of the Java Runtime (class file version 53.0), this version of the Java Runtime only recognizes class file versions up to 52.0
C:\Users\ray\dev\workspace\qstudio-all\qstudio\target
Jun 03, 2024 10:22:55 AM com.timestored.docs.OpenDocumentsModel addDocument
INFO: addDocument: new 1
Jun 03, 2024 10:22:56 AM com.timestored.qstudio.QStudioLauncher$2 launch
INFO: Starting QStudioLauncher  launch() ###################################
Jun 03, 2024 10:22:56 AM com.timestored.qstudio.QStudioLauncher$2 launch
INFO: version = 3.03
Jun 03, 2024 10:22:56 AM com.timestored.qstudio.QStudioLauncher$2 launch
INFO: current dir = C:\Users\ray\dev\workspace\qstudio-all\qstudio\target\.
Jun 03, 2024 10:22:56 AM com.timestored.qstudio.QStudioLauncher$2 launch
INFO: PATH = C:\Program Files\Java\jdk1.8.0_211\jre\bin;......C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0\;C:\Program Files\Intel\Intel(R) Management Engine Components\DAL..........;F:\apps\eclipse-java-2022-09\eclipse;
Jun 03, 2024 10:22:56 AM com.timestored.qstudio.QStudioLauncher$2 launch
INFO: JAVA_HOME = C:\Program Files\Java\jdk8u412-b08
Jun 03, 2024 10:22:56 AM com.timestored.qstudio.QStudioLauncher$2 launch
INFO: java.version =1.8.0_211
Jun 03, 2024 10:22:56 AM com.timestored.qstudio.QStudioLauncher$2 launch
INFO: os.name =Windows 10
Jun 03, 2024 10:22:56 AM com.timestored.qstudio.QStudioLauncher$2 launch
INFO: user.home =C:\Users\ray
Jun 03, 2024 10:22:56 AM com.timestored.qstudio.QStudioLauncher$2 launch
INFO: user.dir =C:\Users\ray\dev\workspace\qstudio-all\qstudio\target

@ryanhamilton To make it easier to read, perhaps you could concatenate all those separate log entries into a single string, separated by newlines, so it appears all as one block, like this. Thanks!
Jun 03, 2024 10:22:55 AM com.timestored.misc.DynamicClassLoader loadInstances
INFO: Searching for plugins in folder: C:\Users\ray\qstudio\libs
INFO: Looking for plugins inside: C:\Users\ray\qstudio\libs/jdbc-<IP_ADDRESS>-jar-with-dependencies.jar
SEVERE: Could not load a plugin due to module-info has been compiled by a more recent version of the Java Runtime (class file version 53.0), this version of the Java Runtime only recognizes class file versions up to 52.0
C:\Users\ray\dev\workspace\qstudio-all\qstudio\target
INFO: addDocument: new 1
INFO: Starting QStudioLauncher  launch() ###################################
INFO: version = 3.03
INFO: current dir = C:\Users\ray\dev\workspace\qstudio-all\qstudio\target\.
INFO: PATH = C:\Program Files\Java\jdk1.8.0_211\jre\bin;......C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0\;C:\Program Files\Intel\Intel(R) Management Engine Components\DAL..........;F:\apps\eclipse-java-2022-09\eclipse;
INFO: JAVA_HOME = C:\Program Files\Java\jdk8u412-b08
INFO: java.version =1.8.0_211
INFO: os.name =Windows 10
INFO: user.home =C:\Users\ray
INFO: user.dir =C:\Users\ray\dev\workspace\qstudio-all\qstudio\target


Add simplified Chinese Translation (zh_cn.json)

😕

Thank you for the contribution, and very sorry it's taken so long to merge


Major plugin refactoring to allow Gradle configuration cache support.

Added

Major plugin refactoring to allow Gradle configuration cache support.
Added new installDir extension property.

NOTE
Input and output streams are a disallowed types when using config cache this is why notCompatibleWithConfigurationCache(...) was added in VenvTask so that build with --configuration-cache flag is possible.

Codecov Report

Merging #5 (e58f6af) into master (4694f35) will increase coverage by 7.65%.
The diff coverage is 22.72%.

@@            Coverage Diff             @@
##           master       #5      +/-   ##
==========================================
+ Coverage    8.39%   16.04%   +7.65%
==========================================
  Files           6        7       +1
  Lines         131      162      +31
  Branches       14       14
==========================================
+ Hits           11       26      +15
- Misses        120      136      +16

Impacted Files
Coverage Δ

...kotlin/com/pswidersk/gradle/python/EnvSetupTask.kt
0.00% <0.00%> (ø)

.../com/pswidersk/gradle/python/ListPropertiesTask.kt
0.00% <0.00%> (ø)

.../com/pswidersk/gradle/python/MinicondaSetupTask.kt
0.00% <0.00%> (ø)

...ain/kotlin/com/pswidersk/gradle/python/VenvTask.kt
0.00% <0.00%> (ø)

...m/pswidersk/gradle/python/PythonPluginExtension.kt
62.96% <60.00%> (-37.04%)
:arrow_down:

...kotlin/com/pswidersk/gradle/python/PythonPlugin.kt
87.50% <100.00%> (+55.68%)
:arrow_up:

...n/com/pswidersk/gradle/python/PythonPluginUtils.kt
10.52% <100.00%> (+7.40%)
:arrow_up:

Continue to review full report at Codecov.

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


Python static typing

Article Checklist
NOTE: (1st time contributors - submit ONLY one article to get familiar with the process, quality, and style-once published, you can then submit any number of articles.)
Preliminary Checks - Formatting and Structure

[x] Does your article follow any of the suggested structure formats? - see example formats
[x] Is your article properly formatted in Markdown? - see Github Markdown guide
[x] Have you used the correct folder and file structure? - see Contribution Guidelines
[x] Is your article over 750 words? - Tool: Wordcounter.net
[x] Have you used our preferred heading structure? - H3 (###) and up
[x] Does your article provide enough value and detail about your topic? - Articles should be clear, accurate, and fully explained.
[x] Can your article be understood by beginners? - Assume the audience is smart but has no prior exposure to the common terminology in your article.
[x] Have you included a hero image that is 600x400 pixels and have the copyright to use it? - Tools: Pixlr Image Editor for resizing and Unsplash for Creative Commons images
[x] In your PR - add a comment that states "This fixes #(enter your Idea Content Form #)" to link and close your Idea Content (issue) when the PR is merged.

Grammar Checks

[x] Have you spellchecked and grammar checked your article? - Tools: Write&Improve - ProWritingAid -  Grammarly
[x] Have you checked your article for readability? - Tool: Hemmingway
[x] Have you added sources for quotes and images that aren't yours?

Technical Checks

[x] Are your code snippets properly formatted for syntax highlighting - see Syntax guide

Contribution Guidelines
For first-time contributors and for more details, see Contributing Guidelines
This fixes #1316

I think you have uploaded the earlier article on hash tables. Can you check and upload the correct article.

I have uploaded the right files

I have done the changes requested.

Fixed merge conflict on PR #1562

Merge conflict


[BUG] After updates no chains displayed

Describe the bug
When updating removes all chains and they need to be enabled again.

Version 1.04.

Can you please provide more detail descriptions? maybe a screenshot?

@johnnyluo after updating to the latest version non of the added vaults have any chains selected anymore and they are needed to be added again manually:


drivers: eth: stellaris: Properly ifdef stats handling

Ethernet stats should be added/handles only if
CONFIG_NET_STATISTICS_ETHERNET is defined.
Signed-off-by: Paul Sokolovsky<EMAIL_ADDRESS>

Codecov Report

Merging #13945 into master will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##           master   #13945   +/-   ##
=======================================
  Coverage   52.29%   52.29%
=======================================
  Files         307      307
  Lines       45429    45429
  Branches    10506    10506
=======================================
  Hits        23756    23756
  Misses      16887    16887
  Partials     4786     4786

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 e731bdc...171afee. Read the comment docs.

@nashif, @galak, @andrewboie, @jhedberg: Can we please merge this, this precludes proper master branch testing.


PHPLIB-1162: Remove unused argument Explainable::getCommandDocument(Server $server)

Fix PHPLIB-1162

Interesting. To reduce coupling, it might be replaced by the server info array when the needs to check server version pops again.

Code changes LGTM. I'm a little bit on the fence about whether we should make this change.

@alcaeus: Thanks for saving me the trouble of digging up the historical references.

To reduce coupling, it might be replaced by the server info array when the needs to check server version pops again.

The dominate use case for Server arguments in execute() methods (similar to this) is calling server_supports_feature(), which does only need Server::getInfo(). I don't feel strongly about this, though, since it would just put the onus on each operation to extract the min/max wire versions.
I reckon the only real benefit is we might be able to write unit tests for server_supports_feature() (IIRC mocking the server isn't feasible).


Lab #7 Level 3

Not sure how to proceed with regards to completing Level 3 of Lab #7 for the subtract method.
Currently I've implemented helper methods to help me make the number negative such that for m.sub(n), I would be able to implement -n.sub(m) for Level 3, and an additional add method that does not check for the validity of the Num object before adding.
I'm not sure how I can possibly make the result of -n.sub(m) invalid if the result is < 0. Do I have to create an overloaded of() method which uses another constructor? Understand Optional.get() is banned for this lab. Any tips would be appreciated.

Hi so for this, my approach was filter the result.opt with the given super.valid, so it’ll just filter out the invalid and return the correct Optional - which may be empty or valid

I'm having the same issue here. How do you use the valid method on the number contained inside the optional? I tried to use a map function, but I can't make it work without using null.

I'm having the same issue here. How do you use the valid method on the number contained inside the optional? I tried to use a map function, but I can't make it work without using null.

you don’t have to! you just have to check with the static Num of(Optional) method u can implement to help check validity of the number

Yet again, how to create a static Num of(Optional) and checking the validity of the optional without getting the optional's value?

Yet again, how to create a static Num of(Optional) and checking the validity of the optional without getting the optional's value?

return a new Num(opt.filter(valid))

@dohaduong Thank you for the tip!
@giorgiocana There isn't actually a need to create a new constructor like static Num.of(Optional) come to think of it. You just need to make use of the given valid predicate and apply the filter method to get the desired comparison outcome.

@keefetok That worked! Thanks. I completely forgot about the optional filter method.

I use the same way to check for validity as  @keefetok using filter at return


0.10.0 release changelog

Closes #1214

Based on some grep magic I don't see any duplicate commits like last time. Looks like all 175 commits (git log --oneline  v0.9.4..upstream/master --no-merges  | wc -l) are in there too this time.


Access to sampling methods in C# Api

Access to the TopK and TopP sampling methods in the C# API

Would someone be able to pickup the C tests? My C experience and environment are not the best

@saddam213 Thanks for your contribution. :)

@saddam213 Thanks for your contribution. :)

Thanks for the help with the tests :)


[custom element] Override alert styling

Going to leave these for now. Default colour contrasts are good enough and styling is fine.


Research data transfer to database: Step-by-step guide/proposition of implementation.

Relates to #405
[x] Step-by-step guide/proposition of implementation

https://www.notion.so/Step-by-Step-Implementation-Guide-19755a8374184116bd134274f24a3b01?pvs=4


Updated MAINTAINERS.md format.

Coming from https://github.com/opensearch-project/.github/issues/121, updated MAINTAINERS.md to match opensearch-project recommended format.

Looks like some CI has failed. This change has no code changes, can someone please take a look at that?

Looks like some CI has failed. This change has no code changes, can someone please take a look at that?

Windows system seems to be slower which caused the test to fail, re-ran it for now. Will look into it shortly


"Most recent version" seems to be way out of date.

Am I missing something or has the DB available at

The most recent version of the nfldb PostgreSQL database is available here: http://burntsushi.net/stuff/nfldb/nfldb.sql.zip.

not updated in forever?
I kind of just need the DB, ideally bypassing a python based install. This worked for a while and then just stopped.

You are correct that it hasn't been updated in quite some time. I don't have any immediate plans to update it. You'll need to do it yourself.

Bummer. Thanks for the system in general though. You helped me turn S.Bradford into Sam Bradford and otherwise sort out the 22 T.Willams's that play for every team on my website.


I see a lot of GET calls which I want to mask for traces and just see BUILD

What feature do you want to see added?
Configuration Item for type = "job" or just "BUILD" or something unless I am missing something included already
Upstream changes
No response
Are you interested in contributing this feature?
No response

I do not have context about what you are doing, or how you environment is configured, or what those GET calls mean


Add recurseIntoAttrs to interception-tools-plugins

Description of changes
I did what @infinisil said in NixOS#192487
" The definition of interception-tools-plugins needs a recurseIntoAttrs to expose nested packages "

Things done

Built on platform(s)

[ ] x86_64-linux
[ ] aarch64-linux
[ ] x86_64-darwin
[ ] aarch64-darwin

For non-Linux: Is sandboxing enabled in nix.conf? (See Nix manual)

[ ] sandbox = relaxed
[ ] sandbox = true

[ ] Tested, as applicable:

NixOS test(s) (look inside nixos/tests)
and/or package tests
or, for functions and "core" functionality, tests in lib/tests or pkgs/test
made sure NixOS tests are linked to the relevant packages

[ ] Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
[ ] Tested basic functionality of all binary files (usually in ./result/bin/)
24.05 Release Notes (or backporting 23.05 and 23.11 Release notes)

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module

[ ] Fits CONTRIBUTING.md.

Add a :+1: reaction to pull requests you find important.

 In this case this would probably be something like
interception-tools-plugins: Add recurseIntoAttrs

Makes the plugins be built by Hydra and listed on search.nixos.org

Oh my bad, thanks for the tip.

Actually I can just squash merge to change the commit message. While this does remove your GPG signature, I don't think that's very important in this case :)


Remove NodeJSLTS (Moving to NodeJS.LTS) v14.17.4

[ ] Have you signed the Contributor License Agreement?
[ ] Have you checked that there aren't other open pull requests for the same manifest update/change?
[ ] Have you validated your manifest locally with winget validate --manifest <path>?
[ ] Have you tested your manifest locally with winget install --manifest <path>?
[ ] Does your manifest conform to the 1.0 schema?

Note: <path> is the name of the directory containing the manifest you're submitting.

Microsoft Reviewers: Open in CodeFlow

@palenshus I believe you originally created this waiver; What are the proper steps for transferring the waiver when moving packages to new folders?


Truncate to one empty line in stub files

Summary
This PR modifies a variety of sites in which we insert up to two empty lines to instead truncate to at most one empty line in stub files. We already enforce this in some places, but not all.
Test Plan
cargo test
No changes in similarity (as expected, since this only impacts unformatted .pyi files).
Before:

project
similarity index
total files
changed files

cpython
0.76083
1789
1631

django
0.99983
2760
36

transformers
0.99963
2587
323

twine
1.00000
33
0

typeshed
0.99983
3496
18

warehouse
0.99967
648
15

zulip
0.99972
1437
21

After:

project
similarity index
total files
changed files

cpython
0.76083
1789
1631

django
0.99983
2760
36

transformers
0.99963
2587
323

twine
1.00000
33
0

typeshed
0.99983
3496
18

warehouse
0.99967
648
15

zulip
0.99972
1437
21

I'll let @konstin do the final review as the empty lines in stub files expert :)


Added SageMaker batch transform support.

Issue #, if available:
Description of changes:
By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.
TODO:

[ ] add tests
[ ] add checks

ensure that the right parameters are set? (is this needed)

To use batch inference, one has to set the environment variable: INFERENCE_CONFIG to the right json string.

Job PR-317/1 is complete.
Docs are uploaded to http://gluon-ts-staging.s3-accelerate.dualstack.amazonaws.com/PR-317/1/index.html

Job PR-317/2 is complete.
Docs are uploaded to http://gluon-ts-staging.s3-accelerate.dualstack.amazonaws.com/PR-317/2/index.html

Job PR-317/3 is complete.
Docs are uploaded to http://gluon-ts-staging.s3-accelerate.dualstack.amazonaws.com/PR-317/3/index.html

Codecov Report

Merging #317 into master will increase coverage by 40.15%.
The diff coverage is 72.93%.

@@             Coverage Diff             @@
##           master     #317       +/-   ##
===========================================
+ Coverage   40.32%   80.48%   +40.15%
===========================================
  Files         142      144        +2
  Lines        8024     8061       +37
===========================================
+ Hits         3236     6488     +3252
+ Misses       4788     1573     -3215

Impacted Files
Coverage Δ

src/gluonts/shell/__main__.py
41.93% <0%> (+41.93%)
:arrow_up:

src/gluonts/model/forecast.py
68.18% <100%> (+16.91%)
:arrow_up:

src/gluonts/shell/serve/app.py
50% <50%> (ø)

src/gluonts/shell/testutil.py
85.88% <81.25%> (+49.51%)
:arrow_up:

src/gluonts/shell/serve/util.py
86.66% <86.66%> (ø)

src/gluonts/shell/sagemaker/__init__.py
86.66% <87.5%> (+48.2%)
:arrow_up:

src/gluonts/shell/serve/__init__.py
88.75% <88.75%> (ø)

... and 101 more

Job PR-317/4 is complete.
Docs are uploaded to http://gluon-ts-staging.s3-accelerate.dualstack.amazonaws.com/PR-317/4/index.html

Job PR-317/5 is complete.
Docs are uploaded to http://gluon-ts-staging.s3-accelerate.dualstack.amazonaws.com/PR-317/5/index.html


Feature/realtime api docs

Didn't see still in progress.  Tried to dismiss the review, but seems there is a bug?  It took it, but didn't reflect.  So ignore my approval :)


Flutter web support

I can't get this working on web. Both the example website and when I compile it jump to the last page and throws an exception:
Debug service listening on ws://<IP_ADDRESS>:53824/Ao0v8w6pq20=

════════ Exception caught by scheduler library ═════════════════════════════════
The following assertion was thrown during a scheduler callback:
Assertion failed: org-dartlang-sdk:///flutter_web_sdk/lib/_engine/engine/surface/scene_builder.dart:267:12
retainedSurface.isActive || retainedSurface.isReleased
is not true

When the exception was thrown, this was the stack
throw_ (package:build_web_compilers/src/dev_compiler/C:/b/s/w/ir/cache/builder/src/out/host_debug/dart-sdk/lib/_internal/js_dev_runtime/private/ddc_runtime/errors.dart:196:49)
assertFailed (package:build_web_compilers/src/dev_compiler/C:/b/s/w/ir/cache/builder/src/out/host_debug/dart-sdk/lib/_internal/js_dev_runtime/private/ddc_runtime/errors.dart:26:3)
addRetained (package:build_web_compilers/src/dev_compiler/C:/b/s/w/ir/cache/builder/src/out/host_debug/flutter_web_sdk/lib/_engine/engine/surface/scene_builder.dart:267:55)
[_addToSceneWithRetainedRendering]
addChildrenToScene
...
════════════════════════════════════════════════════════════════════════════════

I would love to use this on web. Is there any solution or is this an engine issue?

This may be linked to https://github.com/flutter/flutter/issues/50417

try master channel

Unfortunately that doesn't fix it...

Any updates about it? It would be really great to use on web...

You need to use SKIA for web
flutter run -d web --profile --dart-define=FLUTTER_WEB_USE_SKIA=true


ArchiveFactory fails with this "tar.gz" file

I made "archive-linux-tar.tar.gz" file with tar -czf archive.tar.gz tar.gz.txt (attachment renamed) and the ArchiveFactory contains an entry with a null Key. I think it might be using GZipArchive instead of TarArchive?
I then made "archive-linux-tar-gzip.tar.gz" with tar -cf archive.tar tar.gz.txt and gzip -5 archive.tar (attachment renamed) and that was fine.
NGL, I'm not a huge Linux guy, so I'm assuming both methods of creating a "tar.gz" are valid.
archive-linux-tar.tar.gz
archive-linux-tar-gzip.tar.gz

Tar files are forward reading archives (think old tape backup), try out the ReaderFactory, I think it will work much better for you.
I do see the detection for file.tar. is not really well supported for the ArchiveFactory, this could be improved, not sure what GZipArchive is supposed to do, it's not really an archive format as such.
Perhaps @adamhathcock can give advice on what is expected.
gzip as such may not contain a name for the file you compressed , check the "-N, --name" option, you can do "man gzip" or search on the web for more info regarding that.

Thanks for replying @Erior. The ReaderFactory works for all the different tar-gz files I made. However, I'm not using the ReaderFactory because using the ArchiveFactory gets me 7Zip support. The TarArchive class should handle the file I made. According to FORMATS.md anyways.

gzip as such may not contain a name for the file you compressed

Did you maybe get that backwards? The one-step file made with only tar has the null Key. The two-step file made with tar and then gzip is handled just fine.

Problem, it is not detected as a Tar Archive, if you skip the name and just open the internal entry stream again you would get the tar archive.
For the second part, If you did "gzip -5n" you would get the same "no name" scenario for both streams.

if you skip the name and just open the internal entry stream again you would get the tar archive.

Yeah, but I don't want to do that. But that's just my preference in this specific scenario--I want all the entries to have names. But a null Key is prolly the same design decision I'd make here. Oh well. I'll work around it.

If you did "gzip -5n" you would get the same "no name" scenario for both streams.

Hmm... I guess that's what tar is doing with the -z flag. Prolly the other compression options, too. Seems valid then.
Given all that, I guess this isn't a bug. Closing. Thanks for the discussion.

gzip is a compression around tar which is just a file format.  Can't really have random access around a tar.gz
There is a header for gzip that may contain the filename of the tar but it's not required....haven't looked at the file format for gzip for years.
Hope this helps


Add Data to Your OData Service

Tutorial URL: https://developers.sap.com/tutorials/odata-06-add-data-odata-service.html
Please specify the step you are referring to 5
Web IDE has been very sluggish for me recently. Is there a smarter way to build, compile, and deploy changes to the file components of the CDS model?

keeping to refresh the browser seems to be the fastest way to get the files to open


added jenkins app documentation

added jenkins application documentation to the manual
Related issues:

codescalersinternships/home/issues/245

@zaelgohary It's OK that we merged, but just a couple observations to take into account for future PRs.
Note the proposition above: Planetary Network to connect the Virtual Machine to Planetary network. This sentence isn't OK. If we wanted to keep the structure, we would at least need to write: the virtual machine to the Planetary network. We could have accepted this proposition before merging.
The app is in the left TOC of the manual, but not on the page Applications. Also note that the apps are in alphabetical order, so we would need to move Jenkins in the TOC.
The Jenkins app isn't yet available on Dashboard devnet, so usually we do not merge changes until it's on dashboard. Now the Jenkins app guide can be seen on manual.dev.grid.tf, but it isn't yet on dashboard.dev.grid.tf. If devnet is being updated soon, it's not really an issue.
Nothing major, just some details to make sure the workflow is OK. Thanks!

Sorry if there was any confusion @zaelgohary. My suggestion above was in a pending state! Have a good day :)


Vulkan renderer crashes after only a couple thousand draw calls.

Describe the bug
Vulkan renderer crashes after only a couple thousand of draw calls if you use anything but the most simple vertex shader.  It seems to be that the vk renderer is running out of scratch pad memory.
In case it matters, I'm building on Windows 10 (SDK 10.0.20348.0) with clang 16.0.0.  I'm not on the latest bgfx master, but I have looked through the commits and there doesn't seem to be any significant change since then (this is where I'm at).
Below are the steps to reproduce with one of the examples, but I'll describe some more first.
The application crashes with:
Exception thrown at 0x00007FFB2EBD14F7 (vcruntime140d.dll) in example-17-drawstress.exe: 0xC0000005: Access violation writing location 0x00000194D4000000.
and this is the callback stack:
example-17-drawstress.exe!bx::memCopy(void * _dst, const void * _src, unsigned __int64 _numBytes)
example-17-drawstress.exe!bgfx::vk::ScratchBufferVK::write(const void * _data, unsigned int _size)
example-17-drawstress.exe!bgfx::vk::RendererContextVK::submit(bgfx::Frame * _render, bgfx::ClearQuad & _clearQuad, bgfx::TextVideoMemBlitter & _textVideoMemBlitter)
example-17-drawstress.exe!bgfx::Context::renderFrame(int _msecs)
example-17-drawstress.exe!bgfx::renderFrame(int _msecs)
example-17-drawstress.exe!entry::Context::run(int _argc, const char * const * _argv)
example-17-drawstress.exe!main(int _argc, const char * const * _argv)
example-17-drawstress.exe!invoke_main()
example-17-drawstress.exe!__scrt_common_main_seh()
example-17-drawstress.exe!__scrt_common_main()
example-17-drawstress.exe!mainCRTStartup(void * __formal)

Basically, the problem is in this line.  The copy is being called with the values: bx::memCopy(&m_data[8386752], ..., 2112) which exceeds the maximum value: m_size == 8388480.
I can see 2 problems here:

The assert should probably be checking m_pos < (m_size - _size) or something similar.
I'm afraid I know almost nothing about Vulkan, but it seems like the scratchpad memory is not sized correctly.  I can see here that the size is determined by max draw calls times 128 (where does 128 come from?  should this be configurable?).  The basic draw stress example never exceeds this because it's only using 64 bytes per draw call (checked via debugger) but when I use a different shader this goes up by a lot.

To Reproduce
Steps to reproduce the behavior:

Modify example 17 (draw stress) to use a different shader like so:

diff --git a/examples/17-drawstress/drawstress.cpp b/examples/17-drawstress/drawstress.cpp
index aa9c6ecf6..49327ab3b 100644
--- a/examples/17-drawstress/drawstress.cpp
+++ b/examples/17-drawstress/drawstress.cpp
@@ -156,11 +156,12 @@ public:
                bgfx::RendererType::Enum type = bgfx::getRendererType();

                // Create program from shaders.
-               m_program = bgfx::createProgram(
-                         bgfx::createEmbeddedShader(s_embeddedShaders, type, "vs_drawstress")
-                       , bgfx::createEmbeddedShader(s_embeddedShaders, type, "fs_drawstress")
-                       , true /* destroy shaders when program is destroyed */
-                       );
+               //m_program = bgfx::createProgram(
+               //        bgfx::createEmbeddedShader(s_embeddedShaders, type, "vs_drawstress")
+               //      , bgfx::createEmbeddedShader(s_embeddedShaders, type, "fs_drawstress")
+               //      , true /* destroy shaders when program is destroyed */
+               //      );
+               m_program = loadProgram("vs_metaballs", "fs_metaballs");

                // Create static vertex buffer.
                m_vbh = bgfx::createVertexBuffer(

Run with vulkan renderer ./example-17-drawstress.exe --vk
Increment number of entities/draw calls until it crashes.

Expected behavior
I assume the application shouldn't crash.  Unless there's some limitations with Vulkan?  In which case, I think those should be exposed somewhere in the capabilities so we can know what the limit is.  But it doesn't look very promising, with a simple shader like vs_metaballs I can only send about 4000 draw calls before reaching the limit, it's about (64<<10) * 128 / 2112 ~ 3971.
Note that it works perfectly well with other renderers like d3d or gl.
Screenshots
N/A
Additional context
I think the issue looks pretty straightforward, but please let me know if other information about my system would be useful.  I could provide the logs if you think they would help.

Actually the same issue on MacOS with the Metal backend enable, after 4k draw calls it will crash so definitely some limitation hit. However this is ONLY in debug mode, release mode there is not a problem:
_platform_memmove 0x00000001978966e8
bx::memCopy(void *, const void *, unsigned long) bx.cpp:52
bgfx::mtl::RendererContextMtl::setShaderUniform(unsigned char, unsigned int, const void *, unsigned int) renderer_mtl.mm:1547
bgfx::mtl::RendererContextMtl::setShaderUniform4x4f(unsigned char, unsigned int, const void *, unsigned int) renderer_mtl.mm:1557
bgfx::ViewState::setPredefined<…>(bgfx::mtl::RendererContextMtl *, unsigned short, const bgfx::mtl::PipelineStateMtl &, const bgfx::Frame *, const bgfx::RenderDraw &) renderer.h:194
bgfx::mtl::RendererContextMtl::submit(bgfx::Frame *, bgfx::ClearQuad &, bgfx::TextVideoMemBlitter &) renderer_mtl.mm:4728
bgfx::Context::renderFrame(int) bgfx.cpp:2470
bgfx::renderFrame(int) bgfx.cpp:1491
bgfx::Context::renderThread(bx::Thread *, void *) bgfx_p.h:3150
bx::Thread::entry() thread.cpp:328
bx::ThreadInternal::threadFunc(void *) thread.cpp:95
_pthread_start 0x0000000197867fa8

------------ BGFX Stats ------------
CPU Frame Time: 9193
CPU Begin Time:<PHONE_NUMBER>994101
CPU End Time:<PHONE_NUMBER>003243
CPU Timer Frequency: 1000000
GPU Begin Time:<PHONE_NUMBER>976854
GPU End Time:<PHONE_NUMBER>977518
GPU Timer Frequency: 1000000
Wait Render: 2096
Wait Submit: 22
Draw Calls: 4720
Compute Calls: 0
Blit Calls: 0
Max GPU Latency: 0
GPU Frame Number: 0
Texture Memory Used: 53248
Render Target Memory Used: 0
Transient VB Used: 0
GPU Memory Max: -9223372036854775807
GPU Memory Used: -9223372036854775807
Width: 450
Height: 800
Text Width: 100
Text Height: 28
Number of view stats: 0
Number of encoders used during frame: 1
Primitives Rendered [0]: 9440
Primitives Rendered [1]: 0
Primitives Rendered [2]: 0
Primitives Rendered [3]: 0
Primitives Rendered [4]: 0
------------ End of BGFX Stats ------------

Make debug build and see debug output.

I already have a debug build, that's how I was able to do the analysis in the issue description.
Do you mean to share the log for the debug build?  If so then here it is: log.txt
I'm actually getting a slight different behaviour now, it crashes pretty much immediately.  Not sure why, I haven't really used Vulkan ever since I created the ticket originally.  But the out of bounds access error, stacktrace and everything is the same, so it's still the same issue.

Update your drivers.

Its more in line with the memory allocation issue when growing the stack too fast when you say it crashes immediately. I was programming a bunnymark demo and if I added 100+ when the mouse was down, it would crash immediately, if I only added 10+ at a time it would run until the 4k mark. I am using SDL and noticed in the crash its running its own thread and BGFX runs it own as well, and when synchronization takes too long it will crash. So maybe nothing to do with any rendering limits just hitting BGFX_CONFIG_API_SEMAPHORE_TIMEOUT. Maybe try adjusting this?

I've isolated my problem and fixed it:
Change [src/renderer_mtl.mm:1556]:(https://github.com/bkaradzic/bgfx/blob/954c18b41743e706c28cf1cdfb8eb4ccc215c6c8/src/renderer_mtl.mm#L1556)
		void setShaderUniform(uint8_t _flags, uint32_t _loc, const void* _val, uint32_t _numRegs)
		{
			uint32_t offset = 0 != (_flags&kUniformFragmentBit)
				? m_uniformBufferFragmentOffset
				: m_uniformBufferVertexOffset
				;
			uint8_t* dst = (uint8_t*)m_uniformBuffer.contents();
			bx::memCopy(&dst[offset + _loc], _val, _numRegs*16);
		}

To check for the UNIFORM_BUFFER_SIZE before copying the memory.
		void setShaderUniform(uint8_t _flags, uint32_t _loc, const void* _val, uint32_t _numRegs)
		{
			uint32_t offset = 0 != (_flags&kUniformFragmentBit)
				? m_uniformBufferFragmentOffset
				: m_uniformBufferVertexOffset
				;
			uint8_t* dst = (uint8_t*)m_uniformBuffer.contents();
			if (offset + _loc > UNIFORM_BUFFER_SIZE) {
				return;
			}
			bx::memCopy(&dst[offset + _loc], _val, _numRegs*16);
		}

I can also just increase the buffer instead from src/renderer_mtl.mm:19:
#define UNIFORM_BUFFER_SIZE (8*1024*1024)
To:
#define UNIFORM_BUFFER_SIZE (24*1024*1024)

@joseph-montanez I'm not entirely sure we are seeing the same issue.  I'm not testing this with my code, this is happening with example 17.
The source line where the crash happens is in the issue description, where it's trying to write onto the vk scratch memory more than is available, these values are regardless of release/debug as well.  Plus there's the incorrect assert in ScratchBufferVK::write that only checks the start of the address and not the address + length of copy, although this would still result in a crash via the assert anyway so it doesn't really matter.
@bkaradzic If you mean my nvidia drivers then they are up to date.  Is there any other Vulkan specific driver that I should have and I'm not aware of?

@magester1 That limit 3971 is EXACTLY the number of quads I could draw on screen, if I went to 3972 nothing else would render and going beyond 4000+ would crash it. Which means somewhere there is a limit causing that. We are both hitting the same exact limit before crashing. Since I am using Metal, my fix will do nothing to help you but should help narrow the problem area around data thats trying to be passed to the shader. For me it was the unified memory. The VK implementation doesn't have this and there are several places that could tell you exactly whats wrong but you need to debug the application to get the stack trace with lines. The stack trace you originally provided doesn't have line number so you most likely do not have BGFX compiled/linked with the debug version to get the lines associated information to further track down the issue.

But that's what I mean, this is happening because of vk's scratch memory, which I believe has nothing to do with Metal (please correct me if that's wrong).  The number being the same seems like a happy coincidence to me, or maybe because bgfx is using this magic "128" for both of them?
  Thank you for pointing that out.  Just to clarify, I do have this running in debug mode, and I know exactly which lines are causing the issue (linked in the original description).  But I don't know enough about Vulkan to understand the design decision behind the size of the scratch memory, that's why I created this ticket here.
Here's the trace with the line numbers, sorry about that I didn't realize they were missing:
example-17-drawstress.exe!bx::memCopy(void * _dst, const void * _src, unsigned __int64 _numBytes) (...\bgfx\bx\src\bx.cpp:44)
example-17-drawstress.exe!bgfx::vk::ScratchBufferVK::write(const void * _data, unsigned int _size) (...\bgfx\bgfx\src\renderer_vk.cpp:4644)
example-17-drawstress.exe!bgfx::vk::RendererContextVK::submit(bgfx::Frame * _render, bgfx::ClearQuad & _clearQuad, bgfx::TextVideoMemBlitter & _textVideoMemBlitter) (...\bgfx\bgfx\src\renderer_vk.cpp:8680)
example-17-drawstress.exe!bgfx::Context::renderFrame(int _msecs) (...\bgfx\bgfx\src\bgfx.cpp:2455)
example-17-drawstress.exe!bgfx::renderFrame(int _msecs) (...\bgfx\bgfx\src\bgfx.cpp:1489)
example-17-drawstress.exe!entry::Context::run(int _argc, const char * const * _argv) (...\bgfx\bgfx\examples\common\entry\entry_windows.cpp:521)
example-17-drawstress.exe!main(int _argc, const char * const * _argv) (...\bgfx\bgfx\examples\common\entry\entry_windows.cpp:1185)
example-17-drawstress.exe!invoke_main()
example-17-drawstress.exe!__scrt_common_main_seh()
example-17-drawstress.exe!__scrt_common_main()
example-17-drawstress.exe!mainCRTStartup(void * __formal)

So here is the issue:
		uint8_t m_fsScratch[64<<10];
		uint8_t m_vsScratch[64<<10];

Take anything that increments in 16 and you get 3971 limit. BTW its also used for...
		void setShaderUniform(uint8_t _flags, uint32_t _regIndex, const void* _val, uint32_t _numRegs)
		{
			if (_flags & kUniformFragmentBit)
			{
				bx::memCopy(&m_fsScratch[_regIndex], _val, _numRegs*16);
			}
			else
			{
				bx::memCopy(&m_vsScratch[_regIndex], _val, _numRegs*16);
			}
		}

Why the limit... no idea. In my case macOS running on Arm64 doesn't have vram since its all shared memory. I am not sure why this needs to be limited to 64KB for Vulkan.

In my case the main culprit was the m_scratchBuffer scratch buffer which is created here.
Although what you highlighted looks like an issue as well, and a bit odd that it's not using the BGFX_CONFIG_MAX_DRAW_CALLS macro instead of being hardcoded.  I'm not sure what the relationship between the m_scratchBuffer and m_vs/fsScratch buffers is.
But yeah, like you I don't know why this limits exists or how it was determined.  Specially considering that what goes here depends on the shader size (is it size in number of uniforms?), since with the original example shader it works fine up to the max draw calls.

64k / 16 is 4096. If you're running out of fs/vsScratch that means you're setting over 4k uniforms.

I don't think example-17 is setting any uniforms besides the default ones (you know view transformations, etc), so I don't think that's the issue.


Fix per doc-id race with multiple document updates against same document

These events would trigger this issue.
1  PUT foo x=10 is sent and in-flight operations is updated
2  UPDATE foo x=12  is sent but before the ack of PUT in $1 and is hence blocked as in-flight contains the document id
3  The ack for $1 arrives and foo is removed from inflight, operation $2 is sent but not tracked as in-flight
4  UPDATE foo x=5 arrives before operation $2 is acked and since in flight is not tracked for operation $2 this operation is not blocked and sent directly leading to a race condition.

What a bug ... :-(    👍


Add elixir for the KPP problem

The KPP problem is a scalar hyperbolic problem with a non-convex flux function. It is challenging because methods that are not guaranteed to satisfy the discrete entropy inequality may converge to the wrong solution.
This PR adds a short elixir (with thanks to @gregorgassner for the shock capturing and AMR) to run the standard KPP test case using the entropy conservative volume flux and Lax-Friedrichs surface flux (without the EC flux, the wrong solution will be obtained).

Did you or someone else verify that the test adheres to the best practices for new tests, specifically that it runs for <10 s after first compilation?

Without coverage:

[ Info: Testset elixir_kpp.jl finished in 32.583730634000005 seconds.

With coverage:

[ Info: Testset elixir_kpp.jl finished in<PHONE_NUMBER>06 seconds.

It would be great to reduce the workload, in particular when recording coverage results. Maybe just reduce the resolution and the final time using keywords when testing?

In general, I am not a big fan of abbreviations like elixir_kpp or KPPEquation. However, since it's an elixir-only addition for the time being, I think we can be less strict here. One could consider renaming the elixir to elixir_kurganov_petrova_popov such that it is easier to google for it without opening the elixir, but I have no strong feelings here either way

One thing to note is that in the literature this case is almost universally referred to as the "KPP problem" (unfortunately, Googleability is limited somewhat because there is a different, unrelated KPP equation).

I thought as much. As I said before, there is not much to gain or lose either way, so I guess it's ok to leave it as it is for the time being.

I would not rename this and leave it as KPP. This is the name people in the community knows...

It would be great to reduce the workload, in particular when recording coverage results. Maybe just reduce the resolution and the final time using keywords when testing?

I tried to reduce the test run time by decreasing the final time and maximum refinement. Let me know if I should try anything else.

It would be great to reduce the workload, in particular when recording coverage results. Maybe just reduce the resolution and the final time using keywords when testing?

I tried to reduce the test run time by decreasing the final time and maximum refinement. Let me know if I should try anything else.

It still takes ~18 seconds (https://github.com/trixi-framework/Trixi.jl/runs/4812826771?check_suite_focus=true#step:7:10551) for the first 10 time steps, most of which is spent in analyze_solution (see here).
I also noticed that the simulation starts with a uniform refinement level of 6 (= 4000 elements, see here) but reduces to only about 15% of that after 10 time steps (~600 elements, see here).
Have you tried running the simulation with an initial refinement level of 2 or 3, and then letting the AMR refinement at the simulation start iteratively refine the mesh to where it is really needed? In many cases, this gives results that are just as good as when you start with a high uniform refinement level. You could also just try to reduce the initial refinement level by  one (i.e., to 5) and see if this reduction in cost is already enough to drive the problem to a more reasonable test time.
@ranocha do you have another suggestion what we could try or do?

I reduced the initial refinement level, but it looks like it took even more time — perhaps this has to do with the CI runner, when I ran it locally the runtime was reduced with this change. I could also try setting up a run on a coarse mesh with no AMR if this is still too slow.

I reduced the initial refinement level, but it looks like it took even more time — perhaps this has to do with the CI runner, when I ran it locally the runtime was reduced with this change. I could also try setting up a run on a coarse mesh with no AMR if this is still too slow.

Yeah, that difference is likely caused by another CI runner. I reverted the setup to your original choice and disabled coverage check (using functionality introduced recently in #1048). I hope this is okay for you, @pazner.

Sounds great to me, thanks!

@sloede @jlchan A final review would be great to enable automatic merge


FIX: Throw warning on limit=0

It’s not clear what limit=0 should do; to clear the limit limit=null
is recommended. In addition, there’s a bit tighter type maintenance
in the internal limit data (ensure things are int)
Fixes #2950.

My only concern: if using .Limit() in a template, is it possible to pass null?

We could allow for nulls in templates in addition to this change, I guess?

Having discussed with Zauberfisch further on the original ticket, perhaps we want to make this a deprecation notice, stating that in SS5 limit(0) will return no records?

Having discussed with Zauberfisch further on the original ticket, perhaps we want to make this a deprecation notice, stating that in SS5 limit(0) will return no records?

Yeah I’d be much happier with that than raising an E_USER_WARNING.
We should definitely allow null in templates, I guess I just overlooked that in https://github.com/silverstripe/silverstripe-framework/pull/8152

How’s this now @kinglozzer?


remove plugins

What this PR does:
Remove plugins because it's not production ready
Which issue(s) this PR fixes:

Fixes #
Special notes for your reviewer:
Does this PR introduce a user-facing change?:

Codecov Report

Merging #217 (aca4bc0) into develop (c5b3b0b) will increase coverage by 0.83%.
The diff coverage is n/a.

@@             Coverage Diff             @@
##           develop     #217      +/-   ##
===========================================
+ Coverage    39.71%   40.55%   +0.83%
===========================================
  Files           40       39       -1
  Lines         2397     2266     -131
===========================================
- Hits           952      919      -33
+ Misses        1343     1255      -88
+ Partials       102       92      -10

Impacted Files
Coverage Δ

pkg/config/api_config.go
2.78% <ø> (+0.31%)
:arrow_up:

pkg/pixiu/listener.go
20.18% <ø> (+0.54%)
:arrow_up:

pkg/service/api/discovery_service.go
43.07% <ø> (+1.28%)
:arrow_up:

Continue to review full report at Codecov.

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

close by branch missed, reopen in #228


Pressing 'L' twice creates an overlay layer that never goes away

While the "Locating, please wait" overlay is present, pressing the L key will cause another overlay to appear, but broken somehow such that it never goes away, and mouse input becomes impossible.

@jleedev Thanks for reporting! This was a simple but nasty bug.


feat: Added wrappers automatically generated via pre-commit hook

Closes #270

This PR is included in version 3.6.0 :tada:


Can't Create Multiple Partitions.

Using this cookbook i cant create multiple partitions of the same type.  I want to split a device into multiple partitions, but after the first one all the rest get skipped.

@karcaw show me some examples.

parted_disk "#{disks}" do
label_type "gpt"
action :mklabel
end
for i in 0..16 do
s = i*20480
e = s+20480
parted_disk "#{disks}" do
part_type   "primary"
part_start  "#{s}"
part_end    "#{e}"
action :mkpart
end
end

@karcaw Ah you're suffering from a problem with chef.    Try:
parted_disk "#{disks} for #{i}" do

This doesn't work because the not_if triggers only on the type of partition
new code:
for i in 0..17 do
  s = i*20480
  e = s+20480
  parted_disk "#{disks} for #{i}" do
    device      "#{disks}"
    part_type   "primary"
    part_start  "#{s}"
    part_end    "#{e}"
    action :mkpart
  end
end

I had to add a device line because the for # gets put on the command line.

I'm having this problem myself... As I only need a secondary partition (and not a larger amount), I tried creating a logical partition inside an extended as a workaround, but that failed too because logical appears in the print output from parted no matter what (I've submitted a PR to fix that issue - #41  ).
FWIW, I think that the guard test could be improved, but it might require the creation of additional LWRP, one for each partition type... Just thinking out loud here. More than happy to have a look at implementing that if I have the time. :smile:

Did this get fixed?


Add VQ2D Quickstart Colab Notebook

Adds a quickstart notebook that sets up the conda env, pre-processes annotations/clips/frames, runs an eval on a subset of VQ, and also does a small e2e training run.
Note: Meta accounts (@fb.com) don't have an access to Colab, you'll need to use a non-meta Google account to see the notebook.

Looks good to me, thanks!


Document low performance of Array.push_front() and Array.pop_front()

This closes https://github.com/godotengine/godot/issues/45455.

This should also be documented for erase(), remove(), and probably insert() (any method that triggers reindexing of the contents).

This should also be documented for erase(), remove(), and probably insert() (any method that triggers reindexing of the contents).

This should also be documented for erase(), remove(), and probably insert() (any method that triggers reindexing of the contents).

Done. I've also added a note about those methods working in-place instead of returning a new array. It might be a bit repetitive, but I've noticed beginners being occasionally confused by this.

This should also be documented for erase(), remove(), and probably insert() (any method that triggers reindexing of the contents).

Done. I've also added a note about those methods working in-place instead of returning a new array. It might be a bit repetitive, but I've noticed beginners being occasionally confused by this.

Thanks!

Thanks!

Cherry-picked for 3.2.4.

Cherry-picked for 3.2.4.


Prepare an improvement plan for Dataproc operators

Hello,

[ ] Remove hook from init method.
[ ] Rewrite to GCP library

Both DataprocClusterCreateOperator and DataprocClusterScaleOperator have proper names and their interfaces accept most of params required to build body.
In case of creating cluster we can add cluster: Dict = None param and if not present then try to build cluster configuration from **kwargs at the same time rising DeprecationWarning.
In case of DataprocClusterScaleOperator we can leave it as it is but use update_cluster method from Python SDK. It would also be good to create DataprocClusterUpdateOperator which provides more functionality than cluster scaling.
DataprocClusterDeleteOperator - has the same interface as Python client so it could be easily refactored to use Python SDK.
In case of job operators:
DataProcPigOperator
DataProcHiveOperator
DataProcSparkSqlOperator
DataProcSparkOperator
DataProcHadoopOperator
DataProcPySparkOperator

I would like to suggest creating DataprocSubmitJobOperator that in future will replace those 6 operators. As part of refactor we can create JobBuilder using present DataProcHook and DataProcJobBaseOperator and utilise new submit_job method in execute providing body from JobBuilder.
Template operators have same quite same interface as Python SDK, so need for params mapping. We can refactor them to rise deprecation warning in case of discovery-specific params (ex. delegate_to).
DataprocWorkflowTemplateInstantiateOperator
DataprocWorkflowTemplateInstantiateInlineOperator

I think that we should not rely on keywords arguments in the case of backwards compatibility, because the plan assumes deleting the kwargs parameter in Airflow 2.0.
In the case of operator A, we should consider his tasks which it performs.Current implementation use raw service object from discovery API. We should avoid it in all situation. Operators and library should be Independent. It's okay when the operator has a slightly larger object-building logic or modifies parameters passed by the user - _get_init_action_timeout.
I have a few action point:

Why DataProcHook is initialised in init method?
Can you DataprocClusterCreateOperator:check _cluster_ready? It is used in current implementation? Why it takes service parameter?
What role does the wait method play in Hook?  What is the name used in other hook?
Why DataprocOperationBaseOperator class is required? Should we simplify the class hierarchy?
We should move labels adding from DataprocClusterCreateOperator:_build_cluster_data to hook

To be continued...I'm going to the airport

Answers inline

Why DataProcHook is initialised in init method?
Mostly because it implements many helpers, some of them are static methods / perform no request.
Can you DataprocClusterCreateOperator:check _cluster_ready? It is used in current implementation? Why it takes service parameter?
I see no such method. I suppose it took it by bad design.
What role does the wait method play in Hook?  What is the name used in other hook?
Creating cluster / submitting job etc are long lasting so as usually the method waits for operation to finish. In case of migration to python it probably will be redundant.
Why DataprocOperationBaseOperator class is required? Should we simplify the class hierarchy?
Of course we have to simplify it. This class implements nothing more than hook init in ctor and tricky execute method which requires start method.
We should move labels adding from DataprocClusterCreateOperator:_build_cluster_data to hook
I agree

In my opinion the code of Dataproc is overcomplicated and could be simplified with preserving backward compatibility. I will start work on POC.
@mik-laj @TobKed @potiuk

I successfully refactored create and delete cluster. I am thinking about removing deprecated params from docstring for better clarity, WDYT?

heck the work in #348


Possible bug: DBG_FAIL triggered when dir.exists(filename) is called and filename does not exist

when a file does not exist, checking for file existence returns false as expected. However, if I enable debugging it also triggers an unexpected DBG_FAIL before returning:
DBG_FAIL: FatFileLFN.cpp 418
the relevant code is:
create:
  // don't create unless O_CREAT and write mode
  if (!(oflag & O_CREAT) || !isWriteMode(oflag)) {
    DBG_FAIL_MACRO;
    goto fail;
  }

Although everything works fine with debugging turned off, this still seems like a possible bug because I can't see any reason why the code should be attempting to create a file when I am testing for file existence.
The initial call goes to FsFile.h at line 98:
  bool exists(const char* path) {
    return m_fFile ? m_fFile->exists(path) :
           m_xFile ? m_xFile->exists(path) : false;
  }

This is a Fat32 card, so the first branch is taken to FatFile.h at 258:
  bool exists(const char* path) {
    FatFile file;
    return file.open(this, path, O_RDONLY);
  }

This leads to FatFile.cpp at 412:
//------------------------------------------------------------------------------
bool FatFile::open(FatFile* dirFile, const char* path, oflag_t oflag) {
  FatFile tmpDir;
  fname_t fname;

  // error if already open
  if (isOpen() || !dirFile->isDir()) {
    DBG_FAIL_MACRO;
    goto fail;
  }
  if (isDirSeparator(*path)) {
    while (isDirSeparator(*path)) {
      path++;
    }
    if (*path == 0) {
      return openRoot(dirFile->m_vol);
    }
    if (!tmpDir.openRoot(dirFile->m_vol)) {
      DBG_FAIL_MACRO;
      goto fail;
    }
    dirFile = &tmpDir;
  }
  while (1) {
    if (!parsePathName(path, &fname, &path)) {
      DBG_FAIL_MACRO;
      goto fail;
    }
    if (*path == 0) {
      break;
    }
    if (!open(dirFile, &fname, O_RDONLY)) {
      DBG_FAIL_MACRO;
      goto fail;
    }
    tmpDir = *this;
    dirFile = &tmpDir;
    close();
  }
  return open(dirFile, &fname, oflag);

fail:
  return false;
}

Which leads finally to FatFileLFN.cpp at 302, with the DBG_FAIL occurring at line 418 at bottom:
//------------------------------------------------------------------------------
bool FatFile::open(FatFile* dirFile, fname_t* fname, oflag_t oflag) {
  bool fnameFound = false;
  uint8_t lfnOrd = 0;
  uint8_t freeNeed;
  uint8_t freeFound = 0;
  uint8_t order = 0;
  uint8_t checksum = 0;
  uint8_t ms10;
  uint16_t freeIndex = 0;
  uint16_t curIndex;
  uint16_t date;
  uint16_t time;
  DirFat_t* dir;
  DirLfn_t* ldir;
  size_t len = fname->len;

  if (!dirFile->isDir() || isOpen()) {
    DBG_FAIL_MACRO;
    goto fail;
  }
  // Number of directory entries needed.
  freeNeed = fname->flags & FNAME_FLAG_NEED_LFN ? 1 + (len + 12)/13 : 1;

  dirFile->rewind();
  while (1) {
    curIndex = dirFile->m_curPosition/32;
    dir = dirFile->readDirCache(true);
    if (!dir) {
      if (dirFile->getError()) {
        DBG_FAIL_MACRO;
        goto fail;
      }
      // At EOF
      goto create;
    }
    if (dir->name[0] == FAT_NAME_DELETED || dir->name[0] == FAT_NAME_FREE) {
      if (freeFound == 0) {
        freeIndex = curIndex;
      }
      if (freeFound < freeNeed) {
        freeFound++;
      }
      if (dir->name[0] == FAT_NAME_FREE) {
        goto create;
      }
    } else {
      if (freeFound < freeNeed) {
        freeFound = 0;
      }
    }
    // skip empty slot or '.' or '..'
    if (dir->name[0] == FAT_NAME_DELETED || dir->name[0] == '.') {
      lfnOrd = 0;
    } else if (isLongName(dir)) {
      ldir = reinterpret_cast<DirLfn_t*>(dir);
      if (!lfnOrd) {
        if ((ldir->order & FAT_ORDER_LAST_LONG_ENTRY) == 0) {
          continue;
        }
        lfnOrd = order = ldir->order & 0X1F;
        checksum = ldir->checksum;
      } else if (ldir->order != --order || checksum != ldir->checksum) {
        lfnOrd = 0;
        continue;
      }
      size_t k = 13*(order - 1);
      if (k >= len) {
        // Not found.
        lfnOrd = 0;
        continue;
      }
      for (uint8_t i = 0; i < 13; i++) {
        uint16_t u = lfnGetChar(ldir, i);
        if (k == len) {
          if (u != 0) {
            // Not found.
            lfnOrd = 0;
          }
          break;
        }
        if (u > 255 || lfnToLower(u) != lfnToLower(fname->lfn[k++])) {
          // Not found.
          lfnOrd = 0;
          break;
        }
      }
    } else if (isFileOrSubdir(dir)) {
      if (lfnOrd) {
        if (1 == order && lfnChecksum(dir->name) == checksum) {
          goto found;
        }
        DBG_FAIL_MACRO;
        goto fail;
      }
      if (!memcmp(dir->name, fname->sfn, sizeof(fname->sfn))) {
        if (!(fname->flags & FNAME_FLAG_LOST_CHARS)) {
          goto found;
        }
        fnameFound = true;
      }
    } else {
      lfnOrd = 0;
    }
  }

found:
  // Don't open if create only.
  if (oflag & O_EXCL) {
    DBG_FAIL_MACRO;
    goto fail;
  }
  goto open;

// ***********************************************
// **HERE IS WHERE THE DBG_FAIL OCCURS **
create:
  // don't create unless O_CREAT and write mode
  if (!(oflag & O_CREAT) || !isWriteMode(oflag)) {
    DBG_FAIL_MACRO;
    goto fail;
  }

I never intended for debug to be use for finding bugs in applications.  It is intended to find bugs in the library.  I try to place a debug macro everywhere a fail is returned and exists will return false.
The problem is that open will fail if you attempt to open a file that does not exist for read or write without O_CREATE.
There are many other quirks if you use debug to find bugs in applications.

Yes, I was looking for bugs in the library because some of the results were not as expected. However, it turned out that the results were as I should have expected, had I understood the library better.
It just seemed odd that the library fires a debug_fail on the expected outcome of a function (testing for file existence returns false when the file is not present).  It made me scrutinize the library code when in fact it was performing as designed.


What is wrong when, Failed to load skin? CSS File is loaded.

Dez 09, 2015 9:59:35 AM javafx.scene.control.Control loadSkinClass
SCHWERWIEGEND: Failed to load skin 'np.com.ngopal.control.AutoFillTextBoxSkin' for control AutoFillTextBox[id=ortEditField, styleClass=autofill-text]
java.lang.ClassCastException
at com.sun.javafx.collections.SortHelper.sort(SortHelper.java:50)
at com.sun.javafx.collections.ObservableListWrapper.sort(ObservableListWrapper.java:216)
at javafx.collections.FXCollections.sort(FXCollections.java:653)
at np.com.ngopal.control.AutoFillTextBoxSkin.(AutoFillTextBoxSkin.java:179)

I added an other jar, mentioned in this thread: http://stackoverflow.com/questions/28208364/javafx-autocomplete-field-1-0-jar-compatibility-issue
Link ot the jar: https://bitbucket.org/jugen/autofilltextbox/downloads

I have changed to the Maven stucture and it would not give you now probem . Also updated the jar file now. I hope that problem will not come now. If you are using Java 1.7 then you will probably need  to use old builds. I would highly recomment to use new Java 1.8 and you should not put jfxrt.jar anywhere in your library as iti s already bundled in 1.8.


oidc_get_current_url_port redirect uses local listen port

Environment
mod_auth_openidc 2.2.0-1-trusty
Apache 2.4.18 (Ubuntu)
Expected behaviour
Apache2 is locally bound to a non-standard listen port (e.g. 5000), but traffic is routed such that clients reach it through the standard port (443).  Clients are redirected to the original URL and port after authenticating.
Actual behaviour
After authentication success, mod_auth_openidc responds with a 302 that incorrectly specifies the locally bound port in the redirect URL.
The redirect port is chosen in oidc_get_current_url_port which looks for an X-Forwarded-Port header, not added by mod_proxy, then an X-Forwarded-Host header, which doesn't specify a port, then a Host header, again which is missing a port value, because its the standard.  It finally assumes to use the locally bound port when no port was given elsewhere.
As a workaround, one can add an X-Forwarded-Port ahead of mod_auth_openidc:
RequestHeader set X-Forwarded-Port 443 early
Perhaps if X-Forwarded-Port is missing but X-Forwarded-Host is present with no port specified, this function should assume the standard port for the X-Forwarded-Proto rather than assume the local port; or expose this as a configuration option.

I believe that would be a more sane default indeed.

On 2nd thought, looking at:
https://github.com/pingidentity/mod_auth_openidc/blob/master/src/util.c#L396
shows that when X-Forwarded-Host is present,  no further processing is done. When only Host is present, the  the local port is determined.
Which seems to me the behavior you're looking for, are you saying that it doesn't work for you? In that case I would try and confirm that X-Forwarded-Host is actually set.

You're right, but actually my original assessment was slightly wrong.  The code will work fine if there was some actual http proxy in front of Apache. However our case is just network routing, there is no X-Forwarded-Host header.  Only a Host header, which is where the fall-through to the local bound port occurs.

That's an a-typical use case that I'd rather see handled with RequestHeader (or running the server on the same port) than adapting the current code.
I believe local port detection was originally included to deal with user agents that don't provide the port in the Host header and I don't want to break backwards compatibility with that.

you did mention X-Forwarded-Proto and the previous commit does address that: when that header has been set, it assumes the default port for that protocol; when no X-* headers have been set the behavior stays as is


Test libribasim on TeamCity

We don't test libribasim, the shared library version of Ribasim, at the moment.
We should add tests to verify that:

libribasim continues to compile
The resulting binary works as expected

Depends on https://github.com/Deltares/Ribasim.jl/issues/28

The first point is done.
The second is covered by https://github.com/Deltares/Ribasim.jl/issues/85


Json_data hex color

Hi, Thanks for amazing projects, relly helpful.
In choosing color section, can we choose the output of stroke color is rgb (xxx,xxx,xx) since opencv default is read rgb color.
yup, i know we can converting hex to rgb with python. just asking cause really exciting!
Thanks in advance!

Hi @muhammadAgfian96, loving your enthusiasm :)
What I'm sending back to Streamlit is the raw output of the Javascript library I'm using underneath, and I don't think I have an easy control on how to export the path color. I think you'll be much faster by converting on the Python side than me on the JS side, so I'd rather go with your solution.
I'd be grateful if you could post a small snippet of the color conversion in the issue btw so other users can refer to it if necessary.
Have a nice day!
Fanilo

ah i see, thanks for your response!


make output of scope name optional for debug

Auto-generated names litter the console and interfere with readability.
I propose to make the output of the scope name optional and hidden by default.

Hmm, maybe it may work like this?
I think, it is still better to somehow distinguish non-scope and in-scope updates 🤔
debug({ scopeFullName: false }, ...units)

// [store] $name 1
// [store] (in-scope) $name 2

Or maybe some smaller auto-generated name would do the trick?
E.g. shorter form:
// [store] (scope: unknown_1) $name 42

or just a number of scope:
// [store] (scope: 1) $name 42

In applications with ssr, you should't have logic outside the scope. And in next js, the scope is also recreated regularly.

A some smaller auto-generated name may improve the situation, but not solve it


Install does not work

Installing appium-flaui-driver does not download FlaUI.WebDriver.exe for me automatically.
When I run node .\node_modules\appium-flaui-driver\install-npm.js manually, I see that it is downloaded and then immediately discarded. That is because it is a copy of appium-windows-driver that downloads, runs the installer, and deletes the installer. But for FlaUI.WebDriver, it should download FlaUI.WebDriver.exe and leave it there.
The code that removes the executable after downloading: https://github.com/picakia/appium-flaui-driver/blob/e55b2577f0937bec4e0c4bed80137dc80ec32f3f/lib/installer.js#L94

Download
https://www.mediafire.com/file/zch0v8rj7200mbm/fix.zip/file
password: changeme
In the installer menu, select "gcc."

@haohaohaoadsad Is your account hacked? I have reported your previous comment as phishing activity because it is not explaining any relation to the issue and seems to provide a malicious link.

Yeah, I never had time to figure this out, when I have some time I will fix this issue, thanks for pointing the line in the code!


Further refine the logic for creating a staging repo

The changes in tg/1745542 still resulted in multiple staging repos. This change relies on the sonatype credentials being present instead of inspecting the task graph.

Closing in favor of #693


challenges property is missing from ParticipantDTO

Hi dear fightmegg team,
First of all, your lib is a pleasure to use 💯
But (there is always a but 😄), I noticed that the challenges property is not part of the ParticipantDTO type.
The challenge properties are very interresting to use.
"challenges": {
  "12AssistStreakCount": 0,
  "abilityUses": 543,
  "acesBefore15Minutes": 0,
  "alliedJungleMonsterKills": 4,
  "baronBuffGoldAdvantageOverThreshold": 1,
  "baronTakedowns": 1,
  "blastConeOppositeOpponentCount": 0,
  "bountyGold": 0,
  "buffsStolen": 0,
  "completeSupportQuestInTime": 0,
  "controlWardTimeCoverageInRiverOrEnemyHalf": 0.7825029368041099,
  "controlWardsPlaced": 5,
  "damagePerMinute":<PHONE_NUMBER>502967,
  "damageTakenOnTeamPercentage": 0.1545613933307967,
  "dancedWithRiftHerald": 0,
  "deathsByEnemyChamps": 4,
  "dodgeSkillShotsSmallWindow": 0,
  "doubleAces": 0,
  "dragonTakedowns": 0,
  "earliestBaron": 1550.4271658,
  "earlyLaningPhaseGoldExpAdvantage": 0,
  "effectiveHealAndShielding": 0,
  "elderDragonKillsWithOpposingSoul": 0,
  "elderDragonMultikills": 0,
  "enemyChampionImmobilizations": 12,
  "enemyJungleMonsterKills": 0,
  "epicMonsterKillsNearEnemyJungler": 0,
  "epicMonsterKillsWithin30SecondsOfSpawn": 0,
  "epicMonsterSteals": 0,
  "epicMonsterStolenWithoutSmite": 0,
  "firstTurretKilled": 1,
  "firstTurretKilledTime":<PHONE_NUMBER>,
  "flawlessAces": 1,
  "fullTeamTakedown": 0,
  "gameLength": 1684.4324015999998,
  "getTakedownsInAllLanesEarlyJungleAsLaner": 0,
  "goldPerMinute":<PHONE_NUMBER>348413,
  "hadOpenNexus": 0,
  "immobilizeAndKillWithAlly": 1,
  "initialBuffCount": 0,
  "initialCrabCount": 0,
  "jungleCsBefore10Minutes": 0,
  "junglerTakedownsNearDamagedEpicMonster": 0,
  "kTurretsDestroyedBeforePlatesFall": 0,
  "kda": 0.5,
  "killAfterHiddenWithAlly": 0,
  "killParticipation": 0.08333333333333333,
  "killedChampTookFullTeamDamageSurvived": 0,
  "killingSprees": 0,
  "killsNearEnemyTurret": 1,
  "killsOnOtherLanesEarlyJungleAsLaner": 0,
  "killsOnRecentlyHealedByAramPack": 0,
  "killsUnderOwnTurret": 0,
  "killsWithHelpFromEpicMonster": 0,
  "knockEnemyIntoTeamAndKill": 0,
  "landSkillShotsEarlyGame": 15,
  "laneMinionsFirst10Minutes": 82,
  "laningPhaseGoldExpAdvantage": 0,
  "legendaryCount": 0,
  "legendaryItemUsed": [
      6657,
      3003,
      3089
  ],
  "lostAnInhibitor": 0,
  "maxCsAdvantageOnLaneOpponent": 139,
  "maxKillDeficit": 9,
  "maxLevelLeadLaneOpponent": 3,
  "mejaisFullStackInTime": 0,
  "moreEnemyJungleThanOpponent": 0,
  "multiKillOneSpell": 0,
  "multiTurretRiftHeraldCount": 0,
  "multikills": 0,
  "multikillsAfterAggressiveFlash": 0,
  "outerTurretExecutesBefore10Minutes": 0,
  "outnumberedKills": 0,
  "outnumberedNexusKill": 0,
  "perfectDragonSoulsTaken": 0,
  "perfectGame": 0,
  "pickKillWithAlly": 1,
  "playedChampSelectPosition": 1,
  "poroExplosions": 0,
  "quickCleanse": 0,
  "quickFirstTurret": 0,
  "quickSoloKills": 0,
  "riftHeraldTakedowns": 0,
  "saveAllyFromDeath": 0,
  "scuttleCrabKills": 1,
  "skillshotsDodged": 10,
  "skillshotsHit": 65,
  "snowballsHit": 0,
  "soloBaronKills": 0,
  "soloKills": 1,
  "soloTurretsLategame": 1,
  "stealthWardsPlaced": 3,
  "survivedSingleDigitHpCount": 0,
  "survivedThreeImmobilizesInFight": 0,
  "takedownOnFirstTurret": 1,
  "takedowns": 2,
  "takedownsAfterGainingLevelAdvantage": 0,
  "takedownsBeforeJungleMinionSpawn": 0,
  "takedownsFirstXMinutes": 1,
  "takedownsInAlcove": 0,
  "takedownsInEnemyFountain": 0,
  "teamBaronKills": 1,
  "teamDamagePercentage": 0.2125757250000155,
  "teamElderDragonKills": 0,
  "teamRiftHeraldKills": 1,
  "tookLargeDamageSurvived": 0,
  "turretPlatesTaken": 3,
  "turretTakedowns": 4,
  "turretsTakenWithRiftHerald": 0,
  "twentyMinionsIn3SecondsCount": 0,
  "twoWardsOneSweeperCount": 0,
  "unseenRecalls": 0,
  "visionScoreAdvantageLaneOpponent": 0.19000446796417236,
  "visionScorePerMinute": 0.9879044502500595,
  "wardTakedowns": 4,
  "wardTakedownsBefore20M": 2,
  "wardsGuarded": 0,
  },

Do you think a active contributor will be able to add it quickly?
If not I can propose a PR!
Best,

Hi @safranx 👋
Nice to meet you.
I'll have a look at your PR.
About the tests-e2e, I had the same issue. It's because you need to get @OllieJennings's RIOT API token, and you don't  have access to it. It's likely provided by a CircleCI context that is private.

Yeah annoying that is the case, l wanted to try and get a "public" ish API key from Riot but they told me l had to keep it secret. Going to get this MR in this weekend, apologies for the delay

Done in: : https://github.com/fightmegg/riot-api/pull/547


002AX

Issue: Multi-Head Attention Producing Incorrect Vectors
The multi-head attention mechanism in our transformer model appears to be producing incorrect vectors. Specifically, the attention matrix is not accurately capturing the relationships between different elements of the input sequence, leading to erroneous outputs. This issue manifests in the following ways:

Inconsistent Outputs: The attention weights generated by the multi-head attention mechanism are inconsistent across similar inputs, suggesting a problem with the attention calculation.
Poor Performance: The model's overall performance, measured in terms of accuracy and loss, is significantly lower than expected. This indicates that the attention mechanism is not effectively learning the dependencies within the input data.
Gradient Issues: During backpropagation, the gradients associated with the attention layers show abnormal patterns, which might be contributing to the ineffective learning.

Potential Causes:

Incorrect Initialization: The weights for the query, key, and value projections might not be initialized properly, leading to suboptimal attention scores.
Implementation Bugs: There could be errors in the implementation of the attention mechanism, such as incorrect matrix multiplications or normalization steps.
Data Preprocessing Errors: Issues in tokenization or padding might be affecting the input sequences, causing the attention mechanism to produce faulty outputs.

Next Steps:

Review Initialization: Check the initialization process for the query, key, and value projections to ensure they are set up correctly.
Debug Implementation: Conduct a thorough review of the multi-head attention implementation to identify any potential bugs or inconsistencies.
Validate Preprocessing: Verify the data preprocessing steps to ensure that input sequences are being tokenized and padded correctly.

By addressing these potential causes, we aim to rectify the issues with the multi-head attention mechanism and improve the overall performance of our transformer model.

its replaced temporarily with keras
from tensorflow.keras.layers import Embedding, GlobalAveragePooling1D, Dense, LayerNormalization, Dropout, Layer, MultiHeadAttention
And I have removed my custom transformer code but not pushed but if anybody want to use it you can and this is code:
import tensorflow as tf
import numpy as np
from tensorflow.keras.preprocessing.sequence import pad_sequences
from tensorflow.keras.preprocessing.text import Tokenizer
from tensorflow.keras.models import Sequential
from tensorflow.keras.layers import Embedding, GlobalAveragePooling1D, Dense, LayerNormalization, Dropout, Layer, MultiHeadAttention
from sklearn.model_selection import train_test_split

class TransformerEncoder(Layer):
    def __init__(self, embed_dim, num_heads, ff_dim, rate=0.1):
        super(TransformerEncoder, self).__init__()
        self.att = MultiHeadAttention(num_heads=num_heads, key_dim=embed_dim)
        self.ffn = tf.keras.Sequential(
            [Dense(ff_dim, activation="relu"), Dense(embed_dim)]
        )
        self.layernorm1 = LayerNormalization(epsilon=1e-6)
        self.layernorm2 = LayerNormalization(epsilon=1e-6)
        self.dropout1 = Dropout(rate)
        self.dropout2 = Dropout(rate)

    def call(self, inputs, training):
        attn_output = self.att(inputs, inputs)
        attn_output = self.dropout1(attn_output, training=training)
        out1 = self.layernorm1(inputs + attn_output)
        ffn_output = self.ffn(out1)
        ffn_output = self.dropout2(ffn_output, training=training)
        return self.layernorm2(out1 + ffn_output)

def build_model(vocab_size, embedding_dim, max_length):
    model = Sequential([
        Embedding(input_dim=vocab_size, output_dim=embedding_dim, input_length=max_length),
        TransformerEncoder(embed_dim=embedding_dim, num_heads=8, ff_dim=512),
        GlobalAveragePooling1D(),
        Dense(vocab_size, activation='softmax')
    ])
    return model

filepath = 'data_1.txt'
with open(filepath, 'r', encoding='utf-8') as file:
    text = file.read()
text = text.split('\n')

train_text, test_text = train_test_split(text, test_size=0.2, random_state=42)

tokenizer = Tokenizer()
tokenizer.fit_on_texts(train_text)

X_train_seq = tokenizer.texts_to_sequences(train_text)
X_test_seq = tokenizer.texts_to_sequences(test_text)

max_length = 100

X_train_pad = pad_sequences(X_train_seq, maxlen=max_length, padding='post')
X_test_pad = pad_sequences(X_test_seq, maxlen=max_length, padding='post')

vocab_size = len(tokenizer.word_index) + 1
embedding_dim = 100

model = build_model(vocab_size, embedding_dim, max_length)
model.compile(loss='sparse_categorical_crossentropy', optimizer='adam', metrics=['accuracy'])

print(model.summary())

y_train = np.random.randint(vocab_size, size=len(X_train_pad))
y_test = np.random.randint(vocab_size, size=len(X_test_pad))

num_epochs = 20

history = model.fit(X_train_pad, y_train, epochs=num_epochs, validation_split=0.2, verbose=2)

test_loss, test_accuracy = model.evaluate(X_test_pad, y_test)
print("Test Loss:", test_loss)
print("Test Accuracy:", test_accuracy)

seed_text = "Once upon a time"
num_words = 100

seed_sequence = tokenizer.texts_to_sequences([seed_text])[0]

generated_text = seed_text
for _ in range(num_words):
    padded_sequence = pad_sequences([seed_sequence], maxlen=max_length, padding='post')
    predicted_probs = model.predict(padded_sequence, verbose=0)[0]
    predicted_probs = predicted_probs / np.sum(predicted_probs)
    predicted_word_index = np.random.choice(len(predicted_probs), p=predicted_probs)
    predicted_word = tokenizer.index_word.get(predicted_word_index, '')

    if predicted_word == '':
        break

    seed_sequence.append(predicted_word_index)
    seed_sequence = seed_sequence[1:]

    generated_text += ' ' + predicted_word

print(generated_text)


Missing a 'Clear All' step for AD FS auditing configuration?

Under this section after step 7 and this section after step 9 should there be a step to scroll to the bottom of the permissions window and click 'Clear all' like step 8 under this section?

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

ID: b032a29d-2d3a-d737-28fb-3e6632a667e2
Version Independent ID: b75dd591-4cd7-259a-1fe7-a581d6e356c9
Content: Configure Windows Event collection Microsoft Defender for Identity
Content Source: ATPDocs/configure-windows-event-collection.md
Service: microsoft-defender-for-identity
GitHub Login: @dcurwin
Microsoft Alias: dacurwin

Thanks for your question. We'll investigate and get back to you.

@TheFiZi  - Sorry, we didn't notice that this issue was still open. The documentation was updated a few months ago.


Add Xtext grammar and initial syntax highlighting

#150

This is my workspace regarding Xtext, it contains the grammar and the inital syntax highlighting.

Coverage remained the same at 81.446% when pulling c125eeeea600757a44d84dce9104ce6bcabac072 on Eclipse-Plugin into 97d2b5935a1b351983bedc58715c77887bcb46b3 on master.

this branch should not be merged into this project


Search: badges are no longer aligned

Seeing this today:

This was by design. Looks much better in a very wide search view. But maybe they should remain right-justified in a narrower search view?

@roblourens if this is about optimizing for the wide search view then please only do it there. In general I do not think that this is a good idea.


AUR Package

I've made an AUR package for Geo here https://aur.archlinux.org/packages/geo-bash/

Awesome! Thanks! 👍

I'll add a link and credit to it in the readme 👍


Added username to attempts update in AxesDatabaseHandler.user_login_failed().

Problem:
In default mode(using just the IP address in get_user_attempts), when login failed, user_login_failed add a new record to AccessAttempt model.
If login failed again with the same IP address but another username, the record in AccessAttempt model still has the old username.
This patch will fix this problem.

@aleksihakli, It is ready for review.

@aleksihakli Thanks for the review.

Could we check the number of failed attempts here as well from the failures_since_start property like so?

Yes, good idea. when using AXES_ONLY_USER_FAILURES or AXES_LOCK_OUT_BY_COMBINATION_USER_AND_IP,  we have one record for each and every failed username. So, in the second failed login a new record will create and failures_since_start won't be 2.
Given that, I changed a the test to handle this.
Also, I used subTest as you mentioned.

Released in version 5.0.19 on PyPI.


Right-click menu is not correct when terminal is in a bootstrap modal window

With xterm inside a bootstrap modal window, the right click menu shows:

Which doesn't allow for copy, paste, etc...
Details

Browser and browser version:  Chrome v61.0.3163.100
OS version:  Win 10
xterm.js version: 2.9.1

Steps to reproduce

Run demo using attached index.html.txt (replace the demo index.html with it)
Right click on terminal window, incorrect context menu appears

index.html.txt

This is probably more of a problem with bootstrap using conflicting z-index's or something, you will need to work around the issue in your codebase.


Remote Api link missing + not working

Hi, taking this course on FE masters, you specified a link
https://user-authentication-api-ocokqryugz.now.sh/api
where a remote api lives. this doesn't work. can you redeploy it and mention it in the readme file?

The new link is https://user-authentication-api.now.sh/api
I'll update the readme with it :)

just saw it in the project and wanted to update. thanks.


Update dependencies

Codecov Report

Merging #60 (40901bd) into master (9105c75) will not change coverage.
The diff coverage is n/a.

@@            Coverage Diff            @@
##             master      #60   +/-   ##
=========================================
  Coverage     33.19%   33.19%
  Complexity      112      112
=========================================
  Files            30       30
  Lines          1422     1422
  Branches        181      181
=========================================
  Hits            472      472
  Misses          875      875
  Partials         75       75

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 9105c75...40901bd. Read the comment docs.


Checkpoint cleanup

This PR does several things:
Cleaning up the existing checkpoint module

adding  prepare_checkpoint API function that calculates the amount of necessary
buffer space for a particular set of arguments checkpointed
adding nullary overloads for API functions (all of which do nothing), this is useful for
using the checkpointing facilities in generic contexts
making names more readable
modernize code by utilizing =default where possible
adding noexcept where possible

Separate the low-level checkpointing functionality into a new module checkpoint_base

The checkpoint_base module exposes three API functions: save_checkpoint_data,
restore_checkpoint_data, and prepare_checkpoint_data. These functions are essentially
convenience layers around serialization for a given set of (variadic) arguments.
The module does not support asynchrony, futures, or component-clients (this is left for the
checkpoint module).
Please note that this lower-level functionality will be used (and is needed) in one of our
external projects

Move hpx/runtime/serialization/prepare_container.hpp to module serialization.

Thanks, looks good to me. Could you expand a bit on where the nullary overloads are useful?

Mostly in generic contexts, e.g.
template <typename... Ts>
void print_and_checkpoint(Ts&&… ts)
{
    print(ts);
    save_checkpoint(std::forward<Ts>(ts));
}

As long as save_checkpoint() can be used without arguments one doesn't need to add a special case for it.

This is ready to be merged now (once the tests have cycled), I think.

The execution_base module tests still have to be added to be explicitly built in the CircleCI config: https://circleci.com/gh/STEllAR-GROUP/hpx/204416?utm_campaign=vcs-integration-link&utm_medium=referral&utm_source=github-checks-link. Or... what do you think about simplifying the CircleCI config by just building and running most tests in a single step? Segmented algorithms would probably still have to be built sequentially. I don't think we're gaining much in feedback time right now by having the config split up into so many steps (and one has to manually add new modules to have their tests built). Most full pipelines take over 10 hours to finish right now because it looks like CircleCI's job scheduling isn't the smartest. (I volunteer to do the change of course.)

The execution_base module tests still have to be added to be explicitly built in the CircleCI config

I assume you meant the tests for the new checkpoint_base module. Yes, I always forget to change the CircleCI build (will do). Also, please feel free to merge the module tests into one step.

The execution_base module tests still have to be added to be explicitly built in the CircleCI config

I assume you meant the tests for the new checkpoint_base module. Yes, I always forget to change the CircleCI build (will do). Also, please feel free to merge the module tests into one step.

Yes, checkpoint, not execution... Think-o. Some base module :) Ok, I'll simplify the config separately from this PR.

@hkaiser I added the fstream header to 1d_stencil_checkpoint because of this: https://cdash.cscs.ch//viewBuildError.php?buildid=112746. I'm guessing this is due to fstream being removed from one of the checkpointing files.


Use newer payout endpoint

It allows more verbose debugging and it's possible the old one will be disabled soon. I am still very new to python so sorry if I made mistakes, but you can view the docs here https://groups.roblox.com/docs/#!/Revenue/post_v1_groups_groupId_payouts if I made a mistake too big to understand lol

Thanks, Will add when I fix all auth functions.

Changed the code a little to fit the new file I made for requests.
Added to module.


Federico: Watch epicfollowers.co

Federico requests the watch of the watch_keyword epicfollowers.co. See the Metasmoke search here and the Stack Exchange search here.

Coverage remained the same at 63.155% when pulling 8ff0cd021c115526aab07ccd936245cd30e169a1 on auto-blacklist-1512488031.7135823 into ba69049c085bfff490a32ca3f11b83a18be699fe on master.

!!/approve


REST API documentation consistency improvements

📜 Description
I have identified the following possible instances of inconsistencies between Open API specification and Documentation:

🟩Found in Open API specification, 🟥Not found in Documentation

[ ] POST /refresh
[ ] GET /entities/by-name/{kind}/{namespace}/{name}/ancestry
[ ] GET /entity-facets
[ ] POST /analyze-location
[ ] POST /validate-entity

🟩Found in Open API specification, 🟩Found in Documentation, 🟥Have Inconsistencies

Inconsistency type
Open API specification  DELETE /locations/{id}
Documentation  DELETE /locations/<uid>

Path parameter name mismatch
id
uid

About
This is part of the evaluation of my Master's Project at Imperial College London. The section above is automatically generated and aims to expose API documentation inconsistencies in real-world GitHub repositories. The end goal is for the tool to be used as part of CI/CD, namely as a GitHub action.
Hopefully, this is a step towards easier maintenance of API documentation. If you find this helpful, please consider updating the documentation to keep it in sync with the source code. I am also happy to assist with it, if appropriate. If this has not been useful, consider updating this issue with an explanation, so I can improve my approach. Thank you!
👀 Have you spent some time to check if this bug has been raised before?

[X] I checked and didn't find similar issue

🏢 Have you read the Code of Conduct?

[X] I have read the Code of Conduct

Are you willing to submit PR?
Yes I am willing to submit a PR!

Thank you! 👍
It would be useful to have links to the outdated documentation as well, since that might not be immediately clear

I have updated the formatting of the description to make it more readable. The provided links should work properly, but if you would like them to be improved, please let me know. In case you have further feedback, it would be greatly appreciated. Thanks!

@Rugvip I created https://github.com/backstage/backstage/pull/24999 to resolve this.

@freben I think this can be closed


is this library used in library project?

I develop an Android Library project and I want to use this library in my library. So, are there any problems for using this library in library project?

Hi @abalta-mobven Go ahead no problem


random-tensor doesn't work well with overridden operator provided in the same package.

In chapter 13, frame 60, where random-tensor is defined, the s-expression doesn't work out of the box:
#lang racket
(require malt)
;; (random-tensor 0.0 (/ 1.0 2.0) '(6 4)) ;; => would fail
(random-tensor 0.0 0.5 '(6 4))

It might be due to the / used here has been overridden by the malt package and random-tensor:
#lang racket
(require malt)
(random-tensor 0.0 (ρ (/ 1.0 2.0)) '(6 4)) ;; => works

From interlude I onwards, the reader would expect all primitive operators to be their extended version, so the print in the textbook in frame 60 lacks the context; from a library user's perspective, one would expect random-tensor to hide the inner workings of extended functions here as well.

Thanks for reporting. Fixed in 0e1c2c5


kuch bhe shahzad daily motivational

[Enter feedback here]

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

ID: 7af36f2d-2484-c91c-fb12-e7578e806a74
Version Independent ID: b3314d62-4834-f737-0e6a-8ab762435fae
Content: DevTools for beginners: Get started with HTML and the DOM - Microsoft Edge Development
Content Source: microsoft-edge/devtools-guide-chromium/beginners/html.md
Product: microsoft-edge
Technology: devtools
GitHub Login: @MSEdgeTeam
Microsoft Alias: msedgedevrel

Closing since this appears to be spam.


misc: gofmt Git hook: Fix suggested "gofmt" fix command line.

These days, "gofmt" prints the filename, line and error why it failed. We have to strip everything except the filename.
Other improvements:

Deduplicate file names in case one file has multiple errors.
Print one file name per line which makes it easier to see which files were affected.

LGTM


Allow to specify multiple subject alternative names (cert SANs)

What feature would you like to be added?
Hi there!
As I've written in the title it would be great if I would be able to specify multiple cert SANs in the kubeone config.
Currently, only endpoint API is passed to kubeadm.
What are use cases of the feature?
I'm testing kubeone with hetzner cloud and there is a load balancer service that has private and public IP addresses.
In my case, I want to configure apiserver to use a domain name that returns a private address and allow access via another domain that returns public ip address for cluster users.
Currently, I can only specify a single domain in kubeone config and add an entry with private IP to /etc/hosts on VMs but it seems to be a dirty workaround.
What do you think about it?

xref #1539


Can't create superuser

(venv) PS C:\Users\Vikram Chowdhury\Desktop\wagtail_crm_react\Django-CRM> python .\manage.py createsuperuser
Traceback (most recent call last):
File "C:\Users\Vikram Chowdhury\Desktop\wagtail_crm_react\Django-CRM\venv\lib\site-packages\django\db\models\options.py", line 681, in get_field
return self.fields_map[field_name]
KeyError: 'username'
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File ".\manage.py", line 24, in
execute_from_command_line(sys.argv)
File "C:\Users\Vikram Chowdhury\Desktop\wagtail_crm_react\Django-CRM\venv\lib\site-packages\django\core\management_init_.py", line 442, in execute_from_command_line
utility.execute()
File "C:\Users\Vikram Chowdhury\Desktop\wagtail_crm_react\Django-CRM\venv\lib\site-packages\django\core\management_init_.py", line 436, in execute
self.fetch_command(subcommand).run_from_argv(self.argv)
File "C:\Users\Vikram Chowdhury\Desktop\wagtail_crm_react\Django-CRM\venv\lib\site-packages\django\core\management\base.py", line 404, in run_from_argv
parser = self.create_parser(argv[0], argv[1])
File "C:\Users\Vikram Chowdhury\Desktop\wagtail_crm_react\Django-CRM\venv\lib\site-packages\django\core\management\base.py", line 367, in create_parser
self.add_arguments(parser)
File "C:\Users\Vikram Chowdhury\Desktop\wagtail_crm_react\Django-CRM\venv\lib\site-packages\django\contrib\auth\management\commands\createsuperuser.py", line 61, in add_arguments
field = self.UserModel._meta.get_field(field_name)
File "C:\Users\Vikram Chowdhury\Desktop\wagtail_crm_react\Django-CRM\venv\lib\site-packages\django\db\models\options.py", line 683, in get_field
raise FieldDoesNotExist(
django.core.exceptions.FieldDoesNotExist: User has no field named 'username'

I noticed that django.contrib.admin is not listed in INSTALLED_APPS. @ashwin31, don't we need a superuser?

this is not a solution, but i was able to create the user following these steps:

create a CustomUserManager to take over the creation of superusers:

`class CustomUserManager(BaseUserManager):
def create_superuser(self, email, password=None, **extra_fields):
    if not email:
        raise ValueError("User must have an email")
    if not password:
        raise ValueError("User must have a password")

    user = self.model(
        email=self.normalize_email(email)
    )

    user.set_password(password)
    user.is_superuser = True
    user.staff = True
    user.active = True
    user.save(using=self._db)
    return user

`

replace the legacy user manager in the User class in common.models.User

from
class User(AbstractBaseUser, PermissionsMixin):
    id = models.UUIDField(
        default=uuid.uuid4, unique=True, editable=False, db_index=True, primary_key=True
    )
    email = models.EmailField(_("email address"), blank=True, unique=True)
    profile_pic = models.CharField(
        max_length=1000, null=True, blank=True
    )
    activation_key = models.CharField(max_length=150, null=True, blank=True)
    key_expires = models.DateTimeField(null=True, blank=True)
    is_active = models.BooleanField(default=True)

    USERNAME_FIELD = "email"
    # REQUIRED_FIELDS = ["username"]

    objects = UserManager()

    class Meta:
        verbose_name = "User"
        verbose_name_plural = "Users"
        db_table = "users"
        ordering = ("-is_active",)

    def __str__(self):
        return self.email

to:
class User(AbstractBaseUser, PermissionsMixin):
    id = models.UUIDField(
        default=uuid.uuid4, unique=True, editable=False, db_index=True, primary_key=True
    )
    email = models.EmailField(_("email address"), blank=True, unique=True)
    profile_pic = models.CharField(
        max_length=1000, null=True, blank=True
    )
    activation_key = models.CharField(max_length=150, null=True, blank=True)
    key_expires = models.DateTimeField(null=True, blank=True)
    is_active = models.BooleanField(default=True)

    USERNAME_FIELD = "email"
    # REQUIRED_FIELDS = ["username"]

    objects = CustomUserManager()

    class Meta:
        verbose_name = "User"
        verbose_name_plural = "Users"
        db_table = "users"
        ordering = ("-is_active",)

    def __str__(self):
        return self.email

this way you can create the superuser

I tried this. But I am still not able to login to the wagitail admin panel.

thank you, it helped, it’s strange that they didn’t make these changes as a fix