[SPARK-28894][SQL][TESTS] Add a clue to make it easier to debug via Jenkins's test results

What changes were proposed in this pull request?
See https://amplab.cs.berkeley.edu/jenkins/job/SparkPullRequestBuilder/109834/testReport/junit/org.apache.spark.sql/SQLQueryTestSuite/

<?xml version="1.0" encoding="UTF-8"?>
<testsuite hostname="C02Y52ZLJGH5" name="org.apache.spark.sql.SQLQueryTestSuite" tests="3" errors="0" failures="0" skipped="0" time="14.475">
    ...
    <testcase classname="org.apache.spark.sql.SQLQueryTestSuite" name="sql - Scala UDF" time="6.703">
    </testcase>
    <testcase classname="org.apache.spark.sql.SQLQueryTestSuite" name="sql - Regular Python UDF" time="4.442">
    </testcase>
    <testcase classname="org.apache.spark.sql.SQLQueryTestSuite" name="sql - Scalar Pandas UDF" time="3.33">
    </testcase>
    <system-out/>
    <system-err/>
</testsuite>

Root cause seems a bug in SBT - it truncates the test name based on the last dot.
https://github.com/sbt/sbt/issues/2949
https://github.com/sbt/sbt/blob/v0.13.18/testing/src/main/scala/sbt/JUnitXmlTestsListener.scala#L71-L79
I tried to find a better way but couldn't find. Therefore, this PR proposes a workaround by appending the test file name into the assert log:
  [info] - inner-join.sql *** FAILED *** (4 seconds, 306 milliseconds)
+ [info]   inner-join.sql
  [info]   Expected "1	a
  [info]   1	a
  [info]   1	b
  [info]   1[]", but got "1	a
  [info]   1	a
  [info]   1	b
  [info]   1[	b]" Result did not match for query #6
  [info]   SELECT tb.* FROM ta INNER JOIN tb ON ta.a = tb.a AND ta.tag = tb.tag (SQLQueryTestSuite.scala:377)
  [info]   org.scalatest.exceptions.TestFailedException:
  [info]   at org.scalatest.Assertions.newAssertionFailedException(Assertions.scala:528)

It will at least prevent us to search full logs to identify which test file is failed.
Why are the changes needed?
To debug Jenkins logs easier. Otherwise, we should open full logs and search which test was failed.
Does this PR introduce any user-facing change?
It will print out the file name of failed tests in Jenkins' test reports.
How was this patch tested?
Manually tested but Jenkins tests are required in this PR.
Now it at least shows which file it is:

I am going to revert 28e7f2f after we see the test results. It's for testing if the failed tests really have the file name in its assert message.

Test build #109942 has started for PR 25630 at commit 28e7f2f.

cc @dilipbiswal, @dongjoon-hyun, @maryannxue FYI

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/testing-k8s-prb-make-spark-distribution-unified/14968/
Test PASSed.

Test build #109942 has finished for PR 25630 at commit 28e7f2f.

This patch fails Spark unit tests.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test FAILed.

Test FAILed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/109942/
Test FAILed.

Test build #109951 has started for PR 25630 at commit a3c73c8.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/testing-k8s-prb-make-spark-distribution-unified/14975/
Test PASSed.

Test build #109951 has finished for PR 25630 at commit a3c73c8.

This patch passes all tests.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/109951/
Test PASSed.

It seems that it still has the same title sql~

https://amplab.cs.berkeley.edu/jenkins/job/SparkPullRequestBuilder/109951/testReport/org.apache.spark.sql/SQLQueryTestSuite/

Yes but the log on failure test has it's file name - https://amplab.cs.berkeley.edu/jenkins/job/SparkPullRequestBuilder/109942/testReport/org.apache.spark.sql/SQLQueryTestSuite/sql/

@HyukjinKwon Its much better than what we had before. thanks !! Looks good to me.

Got it. It's much better! So, in the successful run, there is no information in the last Jenkins. When we have a failure, Error Message will have that information. Did I understand correctly?

I compared both results. +1, LGTM.

Thanks!


Food damage/energy resistance issue.

If you eat food with any type of damage resistance, save the game and reload it, the stat occasionally will stay. Or to paraphrase – the effect itself instantly disappears from active effects screen and transforms into DR modified by this effects's value.

Details
Last tested with food item "Galaxy Lo Mein", ID: 00122E94;
Restores 25 Health;
+300 Damage Resistance for 12m;
+300 Energy Resistance for 12m;
This time, after loading a save, Damage Resist effect transferred into the base value, but Energy Resist remained as effect. However the bug affects all resists, it all seems to be random, but must have some mechanism behind it.
Game Version
<IP_ADDRESS>
Language
English (EN)
New Game
Yes
Reproduction Steps

Sleep in a bed.
Eat food with Fortify DR effect.
Save.
Load.

This affects any magic effect, period. Seen it apply to the XP boost effect of one of the craftable food items. Also saw a “repulsing” effect get permanently stuck to a companion via a magic effect once.
This is not a bug we can fix, it will need to be addressed on the engine level.


Maintainership & Altrenatives

Hello,
Thank you so much for working on Addict. It's wonderful! JavaScript-like dot notation for Python dictionaries is extremely empowering, because it helps us avoid unnecessary class definitions.
We're big fans of Addict at my company. Typically, we use it without the recursive dict fallback, as KeyErrors can help prevent hard-to-diagnose bugs.
I noticed that Addict has been seeking new maintainers for a couple of months. I'd like to volunteer. But I must point out that we've recently released Dotsi, which is similar to Addict. While it is similar, there are a couple of differences:

Lists: Dotsi brings dot-access to dicts-within-lists-within-dicts.
Keys: Dotsi always raises a KeyError for missing keys.

My company relies on Addict. And while we plan on transitioning to Dotsi, I'd be happy to help maintain Addict.
I'd also like to urge you to kindly consider the following: Instead of seeking new maintainers, would you please be open to recommending EasyDict, Dotsi, or another library as an alternative/successor?
Thanks again for creating Addict. :)
Regards,
Sumukh

Hi Sumukh,
Thanks for the kind words and for reaching out! addict is still used frequently in the wild, and although it has some rough edges, I'd rather have someone work those out than sunsetting a library that's useful.
I also can't wholeheartedly recommend any other libraries because I've neither used them nor inspected their code.
While I appreciate your candidacy, at first glance it seems like your coming from a place where your motivation is promoting an alternative, Dotsi, and not necessarily develop addict further? I apologise if I've misread the situation.

Hi Mats,
Thanks for writing back. :)
I'm genuinely interested in helping with addict. At the same time, you're right, I'd like to promote Dotsi. While the two libraries are similar, I don't really think of them as competitors. They're both open source projects. addict has been around longer, and is far more battle-tested. I've used addict for quite some time, and have come to really like it.
Before addict/EasyDict, I'd often write classes just to enable dot-access. I honestly believe that classes are highly overrated. With addict, Python dicts start to resemble plain JavaScript object. By writing a single class, addict.Dict, you've helped everyone else avoid excessive classes.
I've started perusing addict's issues and should soon start participating in the discussion.
Cheers!

Got it!
Thank you for clearing that up.
A good first step would be to pull out the freeze/unfreeze functionality from this https://github.com/mewwts/addict/pull/123 one. We already decided to include it, but the PR also bundles string-nesting which I'm not sure I want.
I'm happy to work with you on a few issues/PR and then eventually add you as a maintainer :pray:


refactor: make the iterator be the first parameter in the operators.

Coverage remained the same at 100.0% when pulling ebd0c3f263786a56e66c11f560f76b8e64752952 on refactor-operators into 31170a36f290581abdf22fe70da8c90519896df1 on master.


Reminders

As a supervisor, I expect to be reminded when:

[x] half of the probation period
[x] end of probation period for each new hire
[ ] quarterly evaultaions

I also expect a link to the appropriate form to be sent along the reminder

@andrew-nassef
@mhmdhelmy28
Guys, we need one more celery task that runs for every quarter evaluation, implemented?


ARROW-6187: [C++] Fallback to storage type when writing ExtensionType to Parquet

https://issues.apache.org/jira/browse/ARROW-6187

It would be better to store the extension name and serialization in the Parquet metadata, no? Then you can recreate a true extension array when reading?

Yes, that was the idea to look into next. But I can probably directly try that in this PR.

I think that would be nice, since that would validate the whole approach. The metadata keys are currently private in arrow/ipc/metadata_internal.cc (see kExtensionTypeKeyName and kExtensionMetadataKeyName), you can probably make them extern in a .h somewhere.
Perhaps you could instead use Parquet-specific metadata keys if Parquet has a well-known convention for them, though.

The implementation looks good on the principle, feel free to ping when this is ready for review.

This should be ready for review now.

AppVeyor build: https://ci.appveyor.com/project/jorisvandenbossche/arrow/builds/27629229


form attribute for buttons

Buttons are trying to find form element using closest function. I want to specify which form element to use. See: https://www.w3schools.com/tags/att_button_form.asp

Thanks for reporting. I created a PR 😊


Fields that are not specified in a model

What should we do about them? Maybe something to mark a field optional? I think this is one of the main selling points of MongoDB, so it would be a pity not to support this. I'm not sure how big of an impact would that have on Ecto. I was thinking about something like this:
schema "users" do
  field :name, :string, optional: true
end

Then when the field won't exists we would get a struct without that key.

I don't think we should support this. We should treat all fields as optional, if it doesn't exist in the document we retrieve we set the field as nil. This way we can also chose to not persist fields with nil values so that we store more compact documents. Most Mongo ORMs do this.

And what about the fields that are not specified in a model? Should we just drop them when we get them from the database?

Yes, there's nothing we can do about those fields since you shouldn't add extra fields to structs. Ecto supports querying with a source without a model which we could use to retrieve full documents.

:+1: to everything @ericmj said. If it is in the model, we use it, otherwise, we discard it.


Spike: Use Renovate to update dependencies in non-standard files

Is there an existing issue for this?

[X] I have searched the existing issues

Problem Statement
Try to use Renovate's regex managers to automatically update dependencies defined in non-standard files (e.g. Kind docker image in GH workflows, Kong Helm chart in integration tests const, etc.).
Proposed Solution
Check if Renovate's regex managers are able to solve our issue of updating dependencies in non-standard files (not handled by currently used Dependabot).
Additional information
No response
Acceptance Criteria

[x] KIC fork exists with Renovate regex managers definitions that allow updating one of dependencies defined in non-standard files

I verified that Renovate is a good candidate for updating dependencies defined in non-standard files like GH workflows or any other custom format we might come up with in #4691.
I made it work to update a Kong Helm chart version in go sources and docker image in a workflow file with no huge difficulties.
The configuration used is defined here.

It disables all the default managers that are already handled by Dependabot (go.mod, Dockerfile, etc.).
It defines two regex managers: Kong Helm chart in helm.go and Kind docker image in _e2e_tests.yaml.
It disables minor bumps for Kind with the use of packageRules

Sample PRs generated by Renovate:

https://github.com/czeslavo/kubernetes-ingress-controller/pull/8
https://github.com/czeslavo/kubernetes-ingress-controller/pull/6

Closing with https://github.com/Kong/kubernetes-ingress-controller/issues/4692 as its successor.


Cache file creation after upgrade

With the latest 2.14.3 release, but also during earlier 2.13 releases, I'm experiencing an issue with the cache files located /usr/local/munki/preflight.d/cache when enabling additional modules as part of an upgrade.
munkireport does not create missing files, but rather fails with an "Can't open ..." error message. If I run the respective script manually using sudo, the cache file is created without issue. It also works if I do a fresh install on a new machine after enablement of the additional modules.
Is anyone experiencing the same issue or is there a best-practice approach to enable new modules on an existing installation base?

That is normal for machines that don't have the caching service turned on. The caching module is designed to only be used on a Mac running Server.app's caching service. Running it on a regular Mac will generate that harmless error.

Thanks. I might be wrong but to me it looks like that the files in the above directory are created by the various scripts in preflight.d as temp and used to upload the information to munkireport - rather than being specific to the caching service (e.g. /usr/local/munki/preflight.d/cache/displays.txt)?

I misread your first message. How are you running MunkiReport? It should always be run as root/sudo and is generally done so my Munki.

When running the scripts manually using sudo (e.g. sudo /usr/local/munki/preflight.d/wifi), the files get created as they should.
Just leaving it to the regular munki-run seem to cause the issue. That said, I assume munki runs with privileged rights as well ...?
For reference, this is how the permissions in my /usr/local/munki/preflight.d look like:
drwxr-xr-x  33 root  wheel  1122 26 Mai 10:14 .
drwxr-xr-x  21 root  wheel   714 26 Mai 10:12 ..
-rwxr-xr-x   1 root  wheel   915 26 Mai 09:54 appusage
-rwxr-xr-x   1 root  wheel  2595 26 Mai 09:54 bluetooth.py
drwxr-xr-x  28 root  wheel   952 31 Mai 20:09 cache
-rwxr-xr-x   1 root  wheel   508 26 Mai 09:54 caching
-rwxr-xr-x   1 root  wheel  3558 26 Mai 09:54 cert_check
-rwxr-xr-x   1 root  wheel  2035 26 Mai 09:54 directoryservice.sh
-rwxr-xr-x   1 root  wheel  8355 26 Mai 09:54 disk_info
-rwxr-xr-x   1 root  wheel  2962 26 Mai 09:54 displays.py
-rwxr-xr-x   1 root  wheel  5496 26 Mai 09:54 fan_temps.sh
-rwxr-xr-x   1 root  wheel   354 26 Mai 09:54 filevaultstatus
-rwxr-xr-x   1 root  wheel  1427 26 Mai 09:54 findmymac.sh
-rwxr-xr-x   1 root  wheel  4430 26 Mai 09:54 fonts.py
-rwxr-xr-x   1 root  wheel  2979 26 Mai 09:54 gpu.py
-rwxr-xr-x   1 root  wheel   504 26 Mai 09:54 localadmin
-rwxr-xr-x   1 root  wheel  4656 26 Mai 09:54 munkiinfo.py
-rwxr-xr-x   1 root  wheel  2311 26 Mai 09:54 network_shares.py
-rwxr-xr-x   1 root  wheel   561 26 Mai 09:54 networkinfo.sh
-rwxr-xr-x   1 root  wheel  7900 26 Mai 09:54 power.sh
-rwxr-xr-x   1 root  wheel  1829 26 Mai 09:54 printer.py
-rwxr-xr-x   1 root  wheel  2273 26 Mai 09:54 profile.py
-rwxr-xr-x   1 root  wheel  7096 26 Mai 09:54 security.py
-rwxr-xr-x   1 root  wheel  5045 26 Mai 09:54 servermetrics.py
-rwxr-xr-x   1 root  wheel  1171 26 Mai 09:54 servermetrics.sh
-rwxr-xr-x   1 root  wheel   800 26 Mai 09:54 service_check
-rwxr-xr-x   1 root  wheel  2674 26 Mai 09:54 softwareupdate.sh
-rwxr-xr-x   1 root  wheel  1919 26 Mai 09:54 submit.preflight
-rwxr-xr-x   1 root  wheel  4345 26 Mai 09:54 timemachine
-rwxr-xr-x   1 root  wheel  3146 26 Mai 09:54 usb.py
-rwxr-xr-x   1 root  wheel  3814 26 Mai 09:54 user_sessions.py
-rwxr-xr-x   1 root  wheel   598 26 Mai 09:54 warranty
-rwxr-xr-x   1 root  wheel  3323 26 Mai 09:54 wifi
I also did some additional testing: if I delete a cache file it gets re-created but ONLY if the module was enabled at the time the machine got the first munkireport package installed. If I delete a cache file of a module which was enabled at a later time, re-creation fails.
As an example: let's assume I had all plugins activated except user_sessions when doing the first installation on a machine. As part of a munkireport-update, I also enabled user_sessions and created a new package which was deployed to the device. Although the respective script and hooks are installed correctly, the muni-run fails repeatedly to create user_sessions.plist.
The only way to fix this issue is to manually run sudo user_sessions.py.
Is there maybe some "execution cache" file somewhere munkireport is using which is not removed correctly by the installation package?

A 'normal' munki run calls sudo /usr/local/munki/preflight which will create a couple of files in the cache folder. After munki is finished, it will call sudo /usr/local/munki/postflight which checks the files for changes and uploads them to the munkireport server when changed.
It would help if you could post the output of both preflight and postflight.

I was trying to re-create the issue I've seen after the update, but for whatever reason it now works on all machines (maybe some timing/caching problem?).
As it runs successfully even when I empty the whole cache folder, I will close this issue and re-open in case I find a way to reliably re-produce the problem


How to inport Q-matrix (from structure) to achieve Q+K mix module

Professor liu
The program can import kindship matrix, but i can't find the way of loading Q-matrix which accumulate from Structure. So ,when i want Q+K mix module, there is someway to achieve it?
Thank you!

Thank Professor liu，thank you very much


Added missing Spanish translations.

Hello,
I added a couple of missing Spanish translations. Please let me know if you have any questions.
Thanks,
Ezra

Thanks!


Constant Position Update

Dev Branch
Expected Behaviour
Bot to run properly
Actual Behavior
2016-08-12 01:23:18,249 [FollowSpiral] [INFO] [position_update] Walking from (40.792158, -73.95570561006281, 0) to (40.791527286156786, -73.95570561006281, 0) (70.1321943924 m)
2016-08-12 01:23:27,572 [FollowSpiral] [INFO] [position_update] Walking from (40.791527286156786, -73.95570561006281, 0) to (40.79089657231357, -73.95570561006281, 0) (70.1321943924 m)
2016-08-12 01:23:36,842 [FollowSpiral] [INFO] [position_update] Walking from (40.79089657231357, -73.95570561006281, 0) to (40.79089657231357, -73.9564963050314, 0) (66.5650862008 m)
2016-08-12 01:23:47,687 [FollowSpiral] [INFO] [position_update] Walking from (40.79089657231357, -73.9564963050314, 0) to (40.79089657231357, -73.957287, 0) (66.5650862008 m)
2016-08-12 01:23:54,650 [FollowSpiral] [INFO] [position_update] Walking from (40.79089657231357, -73.957287, 0) to (40.79089657231357, -73.9580776949686, 0) (66.5650862008 m)
2016-08-12 01:24:02,644 [FollowSpiral] [INFO] [position_update] Walking from (40.79089657231357, -73.9580776949686, 0) to (40.79089657231357, -73.95886838993718, 0) (66.5650862008 m)
2016-08-12 01:24:12,946 [FollowSpiral] [INFO] [position_update] Walking from (40.79089657231357, -73.95886838993718, 0) to (40.791527286156786, -73.95886838993718, 0) (70.1321943924 m)
2016-08-12 01:24:21,986 [FollowSpiral] [INFO] [position_update] Walking from (40.791527286156786, -73.95886838993718, 0) to (40.792158, -73.95886838993718, 0) (70.1321943924 m)
2016-08-12 01:24:31,457 [FollowSpiral] [INFO] [position_update] Walking from (40.792158, -73.95886838993718, 0) to (40.792788713843215, -73.95886838993718, 0) (70.1321943924 m)
2016-08-12 01:24:40,955 [FollowSpiral] [INFO] [position_update] Walking from (40.792788713843215, -73.95886838993718, 0) to (40.79341942768643, -73.95886838993718, 0) (70.1321943924 m)
2016-08-12 01:24:50,112 [FollowSpiral] [INFO] [position_update] Walking from (40.79341942768643, -73.95886838993718, 0) to (40.79341942768643, -73.9580776949686, 0) (66.5625569751 m)
2016-08-12 01:24:57,988 [FollowSpiral] [INFO] [position_update] Walking from (40.79341942768643, -73.9580776949686, 0) to (40.79341942768643, -73.957287, 0) (66.5625569751 m)
2016-08-12 01:25:05,811 [FollowSpiral] [INFO] [position_update] Walking from (40.79341942768643, -73.957287, 0) to (40.79341942768643, -73.9564963050314, 0) (66.5625569751 m)
2016-08-12 01:25:13,759 [FollowSpiral] [INFO] [position_update] Walking from (40.79341942768643, -73.9564963050314, 0) to (40.792788713843215, -73.9564963050314, 0) (70.1321943924 m)
2016-08-12 01:25:23,522 [FollowSpiral] [INFO] [position_update] Walking from (40.792788713843215, -73.9564963050314, 0) to (40.792158, -73.9564963050314, 0) (70.1321943924 m)
Other Information
OS:
Git Commit: (run 'git log -n 1 --pretty=format:"%H"' and paste it here)
Python Version: (run 'python -V' and paste it here)

The bot keeps repeating this over and over again doesn't catch anything.

It's a softban, try to open your pokemongo account in your smartphone, you won't see any pokestop and/or pokemon, been there ;)
Stop botting for about an hour and you are good to go.

btw if you not using follow spiral task, your bot will stuck at egg hatching.

https://github.com/PokemonGoF/PokemonGo-Bot/issues/3720
@k4n30

#3308 #3394 #3475 #3646 #3692 #3711 #3721


Added conda virtualenv support to python module.

Closes #1144: this pr fix merge conflict in #1144.
Closes #1438: this pr is essentially the same as #1438, but preserving commit history in #1144.

Thanks for doing this! I'm not sure how I missed this, but it's been merged now. :D


#1266 LinkedIn v2 API support

#1266 LinkedIn v2 API support

Great,
I wrote the e-mail yesterday before the pull request but I forgot to send
it. Anyway here is the gist.

I wasn't able to login to linkedin with the supplied credentials because
apparently I was looking suspicious. So LinkedIn required an extra step of
authentication via email but since I don't own the test account email I
wasn't able to do it.
So I logged in with my credentials and created a pack4j v2 app with the
redirection callback set at https://www.pac4j.org/test.html

That worked. I was able to fix all the crashes in the tests due to missing
fields and fix some serialization issues that I wasn't aware of. The most
scary change was the addition to the trustedPackages variable.
thanks for the review.

I will fix the if-one-line-curly-brace style wherever I find it in my
patch.
I will fix the 3.8 vs 3.9 per your request. I thought 3.8 has been
released but I was wrong.
Yes these are the keys and the secret of the test I created with my
credentials. I would strongly suggest to
a) create another app that is v2 capable with your credentials - or -
b) update your current pack4j test app in order to be v2 capable.
I will prepare the new pull request tonight and after that I will start
working on the 4.0 branch

Thanks again for the review and your guidance.
Vassilis

On Wed, Aug 28, 2019 at 9:41 AM LELEU Jérôme<EMAIL_ADDRESS>wrote:

@leleuj requested changes on this pull request.
Looks good to me. Once finished, a similar PR is expected for the master
branch.
The release notes must be updated as well:
https://github.com/pac4j/pac4j/blob/3.8.x/documentation/docs/release-notes.md
In
pac4j-oauth/src/main/java/org/pac4j/oauth/profile/linkedin2/LinkedIn2Profile.java
https://github.com/pac4j/pac4j/pull/1360#discussion_r318412922:

}

@Override
public URI getProfileUrl() {

   return (URI) getAttribute(LinkedIn2ProfileDefinition.PUBLIC_PROFILE_URL);

}

public LinkedIn2Location getCompleteLocation() {

   return (LinkedIn2Location) getAttribute(LinkedIn2ProfileDefinition.LOCATION);

}

public String getMaidenName() {

   return (String) getAttribute(LinkedIn2ProfileDefinition.MAIDEN_NAME);

}

   final LinkedIn2ProfilePicture pp = getProfilePicture();

   if (pp == null)

It's written nowhere, but I'd prefer to have curly brackets even for
single line.
In
pac4j-oauth/src/main/java/org/pac4j/oauth/profile/linkedin2/LinkedIn2Profile.java
https://github.com/pac4j/pac4j/pull/1360#discussion_r318412954:

   return (URI) getAttribute(LinkedIn2ProfileDefinition.PUBLIC_PROFILE_URL);

}

public LinkedIn2Location getCompleteLocation() {

   return (LinkedIn2Location) getAttribute(LinkedIn2ProfileDefinition.LOCATION);

}

public String getMaidenName() {

   return (String) getAttribute(LinkedIn2ProfileDefinition.MAIDEN_NAME);

}

   final LinkedIn2ProfilePicture pp = getProfilePicture();

   if (pp == null)

       return null;

   final DisplayImageTilde displayImageTilde = pp.getDisplayImageTilde();

   if (displayImageTilde == null)

Same here...
In
pac4j-oauth/src/main/java/org/pac4j/oauth/profile/linkedin2/LinkedIn2ProfileCreator.java
https://github.com/pac4j/pac4j/pull/1360#discussion_r318413338:

+import java.io.IOException;
+
+import org.pac4j.core.client.IndirectClient;
+import org.pac4j.core.context.WebContext;
+import org.pac4j.core.exception.HttpCommunicationException;
+import org.pac4j.oauth.config.OAuth20Configuration;
+import org.pac4j.oauth.profile.JsonHelper;
+import org.pac4j.oauth.profile.creator.OAuth20ProfileCreator;
+
+/**

A specific LinkedIn2 profile creator.

@author Jerome Leleu

@author Vassilis Virvilis

@since 3.9.0

It's version 3.8.0 in fact.
In
pac4j-oauth/src/main/java/org/pac4j/oauth/profile/linkedin2/LinkedIn2ProfileEmails.java
https://github.com/pac4j/pac4j/pull/1360#discussion_r318413409:

@@ -0,0 +1,78 @@
+package org.pac4j.oauth.profile.linkedin2;

+import java.io.Serializable;
+import java.util.Arrays;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+*
+* @author Vassilis Virvilis
+* @since 3.9.0
3.8.0
In pac4j-oauth/src/test/java/org/pac4j/oauth/run/RunLinkedIn2Client.java
https://github.com/pac4j/pac4j/pull/1360#discussion_r318413621:

@@ -38,9 +36,9 @@ protected String getPassword() {
@Override
protected IndirectClient getClient() {
final LinkedIn2Client client = new LinkedIn2Client();

   client.setKey("gsqj8dn56ayn");

   client.setSecret("kUFAZ2oYvwMQ6HFl");

   client.setScope("r_basicprofile r_emailaddress rw_company_admin w_share");

   client.setKey("86xtdkj897xk7d");

It's the key and secret of a demo app, right?
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/pac4j/pac4j/pull/1360?email_source=notifications&email_token=AA7BCOBXJAPUBROA4AGXPOLQGYMZHA5CNFSM4IQOWJ72YY3PNVWWK3TUL52HS4DFWFIHK3DMKJSXC5LFON2FEZLWNFSXPKTDN5WW2ZLOORPWSZGOCC45S4Q#pullrequestreview-280615282,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AA7BCOCE6JSPNX4C7Y3RSW3QGYMZHANCNFSM4IQOWJ7Q
.

--
Vassilis Virvilis

I did the changes and now there are two commits in the existing pull request. Not sure what to do next.

This PR is ready for merge. What you need to do now is to create the same PR targeting the master branch (future v4.0.0) because of course, we need this change to be available in the latest version.

ok
I will try to do it tonight. If I can't make though it will have to wait
after the weekend.
On Thu, Aug 29, 2019 at 10:10 AM LELEU Jérôme<EMAIL_ADDRESS>wrote:

This PR is ready for merge. What you need to do now is to create the same
PR targeting the master branch (future v4.0.0) because of course, we need
this change to be available in the latest version.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/pac4j/pac4j/pull/1360?email_source=notifications&email_token=AA7BCOGYA4HPF55KPNF4TUDQG5Y7LA5CNFSM4IQOWJ72YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOD5NPYHI#issuecomment-526056477,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AA7BCOD7EGH3G47BHUYXQATQG5Y7LANCNFSM4IQOWJ7Q
.

--
Vassilis Virvilis


⚠ Bofrost.at has degraded performance

In e130398, Bofrost.at (https://www.bofrost.at) experienced degraded performance:

HTTP code: 200
Response time: 1316 ms

Resolved: Bofrost.at performance has improved in 7b8950b after 16 minutes.


Hope to improve the docs for v4 and latest rnrf example

Version

react-native-router-flux v4.?.? -beta17
react-native v0.47.1

Expected behaviour
Well and right docs for newest version.
And same to the rnrf redux example.
Actual behaviour
Current docs are old and lack of new features details,
and many props used in example are not in docs.
It is so hard for newbees to learn about it. So bad!

Sorry, but it is open source and free software. If you can improve something - submit PR.
P. S. I don't see you in either list of contributors or sponsors or bakers. So bad!


Adding new bulk command option: -W to mount ports tree in read-write …

…mode,
allowing to patch the port tree in interactive mode.
Interactive mode is used to troubleshoot a port build, so being able to use a make makepatch from it seems useful.

Thanks.
I'm conflicted by things like this as I want to steer Poudriere to be simpler which means less options. The -i flag feels (no data) obscure already and this added on is even more obscure.
Maybe it makes sense to always have the ports tree read-write when in interactive mode?
Or to have Poudriere install a script that you can run to do it - meaning a big notice when dropping to shell about interacting with the environment with Poudriere. The script would have to interact with some socket API to do it. I don't think we can delegate permissions to change the mount to the jail since it is nullfs but maybe.

Maybe it makes sense to always have the ports tree read-write when in interactive mode?

Yes, if this option could be done it will be great (and simpler!)

I will propose a new Pull Request with "always have the ports tree read-write when in interactive mode".


Expression that requires serving both Nodes or not serving either Node

I'd like Node B to be visited later than Node A (not necessarily immediately after) and, if either A or B  cannot be served - skip visiting both A and B.
Applying just the time constraint works fine and Solver finds a solution and visits both (a simple case with only two Nodes):
model.solver().Add(model.CumulVar(model.NodeToIndex(A), "time") <= model.CumulVar(model.NodeToIndex(B), "time"));

But, when I add the "both or either" condition, no solution is found:
model.solver().Add(model.ActiveVar(model.NodeToIndex(A)) == model.ActiveVar(model.NodeToIndex(B)));

Do I really need the second condition?   Any tips?

Hey @GuyBenhaim, I am currently having the same issue with optional visits for (pickup and delivery) pairs of nodes. I was wondering whether you found a solution for this problem and if so if would you mind sharing it?
I have tried the inital approach with an equality constraint on the ActiveVars() of the pair and thanks to you this discussion I understand why it will not find a solution.
Currently I have implemented the AddDisjunction method as decribed by @jmarca but although it will always produce a solution, in some instances only one part of a pickup and delivery pair is dropped but not the other. In a way this makes sense to me since
Any help is highly appreciated!

Hello,
Sorry, I do not recall finding a perfect way for this. However, I did not try @jmarca's suggestion at the time.  If I get some time, I will look again ...

I found a solution that works for me. Obviously, I made a mistake in adding the constraints.
From my understanding, ["same vehicle" constraints + singleton disjunctions] should do the trick.
Nevertheless, this is probably not the hard constraint you were searching for. Also, I am yet to fully understand the AddDisjunction with max_cardinality = 2.
As far I can see atm, I found a working solution for my problem! So no need for you to search through your old code :) Appreciate your response to an outdated post!

Hey @selting could you be more specific about the working solution you found?
I have the same problem as @GuyBenhaim for a roadside assistance problem.
If node A is active then node B must be routed together and visited after node A.
In what way did you solve this problem?
Thank you

But NOT necessarily by the same vehicle .... (which P&D forces)

It's been a minute since I had this problem. So, I'm not sure if I fully understand your problem atm. But here is a snippet I grabbed from my code
# PICKUP AND DELIVERY
routing.AddPickupAndDelivery(pickup_index, delivery_index)
solver.Add(routing.VehicleVar(pickup_index) == routing.VehicleVar(delivery_index))
solver.Add(total_time_dimension.CumulVar(pickup_index) <= total_time_dimension.CumulVar(delivery_index))

disjunction_indexes.append(routing.AddDisjunction([pickup_index], penalty))
disjunction_indexes.append(routing.AddDisjunction([delivery_index], penalty))

I apply this by looping over all Pickup & Delivery pairs. In my particular case, the disjunctions were only applied for the last pair.


Testnet 64: Titan

Testnet Release
Testnet name: Titan
Release date: 2023-12-04
Testnet release manager: @conorsch
We expect this release to be one of the final testnets that resets chain state. From 64 to 65, we plan to perform a chain upgrade, coordinating validators.
Testnet Release Manager Checklist
Preceding Friday (sprint planning day):

[x] Create GitHub project column, work with team to populate the milestone with tickets targeted for the release.

Tuesday (or after release of previous testnet):

[x] Construct the genesis data for the release:

[x] Create new testnet directory with initial genesis allocations for this testnet by running cd testnets && ./new-testnet.sh

This genesis data will be used for testnet-preview with a randomized version of the future testnet's chain ID.

Thursday:

[x] Check in with team again in a release meeting and update the GitHub milestone to ensure it represents what will make it into the testnet.
[x] Draft an announcement for peer review to ensure major changes included are comprehensive.

Following Monday (release day):

[x] Verify that testnet-preview.penumbra.zone is operational; it is redeployed on every push to main, and is an exact preview of what is about to be deployed.
[x] Bump the version number and push its tag, via cargo-release.

[x] Run cargo release minor for a new testnet, or cargo release patch for a bugfix. For the latter, make sure you're on a dedicated release branch.
[x] Push the commit and newly generated tag, e.g. v0.51.0, to the remote.

[x] Wait for the "Release" workflow to complete: it'll take ~60m, most of which is the Windows builds.
[x] Edit the newly created (and published) release object, then click "Generate release notes." Cut and paste the generated text from the bottom to the top of the post, then save it.
[x] You must manually review the Waiting deployment in the GitHub Actions UI before the deployment will begin. Monitor the GitHub action to ensure it completes after it is approved.
[x] Delegate to the Penumbra Labs CI validators; use amounts of ~200k penumbra per validator.
[x] Open a position to provide some initial liquidity: pcli tx lp replicate xyk penumbra:test_usd 20000penumbra --current-price 20
[x] Update Galileo deployment, following docs.
[x] Update Osiris deployment, following docs.
[x] Make the announcement to Discord! 🎉🎉🎉

The allocations should be updated for 64:

split up galileo allos across addresses 0-3
update historical discord allocations (smaller given address fmt change)

Shipped https://github.com/penumbra-zone/penumbra/releases/tag/v0.64.0 We don't have IBC relaying re-enabled yet, due to a build error with hermes, but we'll follow up on that this week.


Feature request: More Options Menu Cleanup

While naming is understandable in pretty much all options now, making slight adjustments it would allow to make it even better.
"Enable Remote Services" and "Disable Remote Service", both are clear, but they are not going one after another.
How about renaming them to "Remote Services - Enable" and "Remote Services - Disable", this way they would go in a row and make things simpler.
"Backup ArkOS Settings" and "Restore ArkOS Settings" to "ArkOS Settings - Backup" and "ArkOS Settings - Restore", same words, same meaning, but again, they would go in a row and make things look cleaner.
"Disable Low Battery Warning" and "enable low battery warning" to "Low Battery Warning - Enable" and "Low Battery Warning - Disable".
"Wifi" and "Network Info" could be bundled into something similar too, "WiFi Configuration" and "WiFi IP Address"
"ES FullScreen" and "ES Header" do go in a row, but as there are other options that take more symbols, I see no reason why they could not be renamed to "EmulationStation FullScreen" and "EmulationStation Header" for clarity.
Regarding all of the stuff related to RetroArch entries (in options), not sure how popular those are, but if possible (simple?), how about merging all of those entries into a single one that would open terminal-like interface in which you can select which option to use (similar to the one that RetroPie has for optional package management) and call it just "RetroArch Reset" or maybe even moving all of them to RetroArch/Run Command if it is possible to make it that RetroArch 32/64 still appear as first two entries in that list.

My concern for this is that if I change this up, then others will say well now they have to scroll farther down for options they may use regularly.  I’ll leave this ticket here for now and see if anyone else would like to see these changes or to just leave them alone.  Maybe most don’t care and if not, I’ll make these changes.  Not really wanting to spend to much time on these items so I don’t want any back and forth on something like this if I can help it.

Using "Favorites" allows having entry listed at the very top. I personally have "Update" and "Enable Remote Services" in favorites, thus they always appear at the top and they are the only options that I use.
On top of that "System/Collection" Favorites is hidden in my ArkOS installation and I use "Last Played", this all depends on how it is configured in other people's OS.
Personally, the suggestions above would make things clearer and more simple to navigate.

fwiw, throwing in my 2 cents: i really like @farfenkugell 's suggestions personally, but i think in some themes it would be hard to see. some themes cut off the text in the game list, so youll end up seeing "Low Battery Wa" twice.

Or do something similar for most CLI based linux/Unix systems that have you select items from a list.
Number them...

Whatever xxx
Whatever again xxx
Still here???

That way you have complete control over what goes where as it's sorted by numbers instead of letters.

I've decided that this is not something I will focus on anytime soon.


cmd/go: test deals poorly with running out of memory

What version of Go are you using (go version)?

root@54a4d2c88906:/go# go version
go version go1.16.6 linux/amd64

Does this issue reproduce with the latest release?

Some kind of error that indicates which test failed or why it failed or something; doing this same thing with a bunch of tests behaves the same way, it just stops.  It would be really, really nice if it said "I ran out of memory", but I don't know how possible that is.
What did you see instead?
"signal: killed"

It is indeed not obvious what that failure message mean. Here's a concrete example where the gob test suite was failing due to a OOM, and it took a while to realize that an OOM was the root cause: #31517.
On the other hand, I don't know if it's even possible to catch that specific panic reason and print a special report for it.
cc @aclements @mknyszek

go test could probably be a bit more explicit when a test process for some specific package terminates due to a signal.
That said, I don't know that it's possible to distinguish a child process being terminated by the OOM killer from a process terminated by something else that sent SIGKILL.

To the best of my knowledge, on Linux the only ways to find out about an OOM kill are to scrape dmesg or to have the process in a memcg and watch memory.oom_control.

I don't think we can reasonably do anything other than what we already do.  To avoid the OOM killer on Linux you have to adjust /proc/sys/vm/overcommit_memory, which will have other consequences.
I'm going to close this issue because I don't think there is any reasonable action for us to take here.  Sorry.


Stuck on loading screen wih internal crash

I can't create a new world, the loading screen is stuck on 1%.
Here's the MultiMC game log
New Paste 1.txt

@GustavoJadson Use Fabric API 0.33 or below for the 1.16.5 version.


Unhandled Exception: HiveError: Cannot read, unknown typeId: 35. Did you forget to register an adapter?

I've added Flutter_data to a new project, that must sync user data with api. Configured it as in example.
Usage:
      await GetIt.instance.allReady();

      final repository = GetIt.instance.get<Repository<AppUser>>();

      var localUser = await repository.findOne(apiUser.id);

      localUser?.about = 'test about';

      await localUser?.save();

And after second launch I'm receiving that error, that can be fixed only through deleting app data (unfortunately only for next launch)
E/flutter ( 2586): [ERROR:flutter/runtime/dart_vm_initializer.cc(41)] Unhandled Exception: HiveError: Cannot read, unknown typeId: 35. Did you forget to register an adapter?
E/flutter ( 2586): #0      BinaryReaderImpl.read
binary_reader_impl.dart:325
E/flutter ( 2586): #1      HiveLocalAdapter.read
hive_local_adapter.dart:176
E/flutter ( 2586): #2      BinaryReaderImpl.read
binary_reader_impl.dart:328
E/flutter ( 2586): #3      BinaryReaderImpl.readFrame
binary_reader_impl.dart:276
E/flutter ( 2586): #4      FrameHelper.framesFromBytes
frame_helper.dart:21
E/flutter ( 2586): #5      FrameIoHelper.framesFromFile
frame_io_helper.dart:42
E/flutter ( 2586): <asynchronous suspension>
E/flutter ( 2586): #6      StorageBackendVm.initialize
storage_backend_vm.dart:86
E/flutter ( 2586): <asynchronous suspension>
E/flutter ( 2586): #7      HiveImpl._openBox
hive_impl.dart:111
E/flutter ( 2586): <asynchronous suspension>
E/flutter ( 2586): #8      HiveImpl.openBox
hive_impl.dart:142
E/flutter ( 2586): <asynchronous suspension>
E/flutter ( 2586): #9      HiveLocalStorage.openBox
hive_local_storage.dart:72
E/flutter ( 2586): <asynchronous suspension>
E/flutter ( 2586): #10     HiveLocalAdapter.initialize
hive_local_adapter.dart:38
E/flutter ( 2586): <asynchronous suspension>
E/flutter ( 2586): #11     _RemoteAdapter.initialize
remote_adapter.dart:187
E/flutter ( 2586): <asynchronous suspension>
E/flutter ( 2586): #12     Repository.initialize
repository.dart:29
E/flutter ( 2586): <asynchronous suspension>
E/flutter ( 2586): #13     repositoryInitializerProvider.<anonymous closure>
main.data.dart:56
E/flutter ( 2586): <asynchronous suspension>
E/flutter ( 2586): #14     FutureHandlerProviderElementMixin.handleFuture.<anonymous closure>.<anonymous closure>
base.dart:310
E/flutter ( 2586): <asynchronous suspension>

sorry, my bad

nope, still happens

I had my model with relation OneToOne which is not supported by this library and results in above error.

Correct, only BelongsTo and HasMany are supported as relationships.


Fix backspace to shift focus to previous element in useDateSegment

Closes https://github.com/adobe/react-spectrum/issues/5261 , https://github.com/adobe/react-spectrum/issues/5223
✅ Pull Request Checklist:

[x] Included link to corresponding React Spectrum GitHub Issue.
[x] Added/updated unit tests and storybook for this change (for new code or code which already has tests).
[x] Filled out test instructions.
[ ] Updated documentation (if it already exists for this component).
[x] Looked at the Accessibility Practices for this feature - Aria Practices

📝 Test Instructions:

Test 1: Re-entering Data in the Time Field

Visit the Date Field Example in Storybook.
Enter "45" into the Number Field for minutes.
Clear the entry using the backspace key.
Enter a new value, such as "30", for minutes.
Confirm that you can correctly re-enter the minutes.

Test 2: Backspace Focus Shift on Empty DateSegment

Visit the Date Field Example in Storybook.
Enter "45" into the Number Field for minutes.
Use the backspace key to clear the minutes entered.
Press backspace again when the field is empty (showing placeholder).
Confirm that the focus shifts to the previous field.
Refocus on the minutes field and enter a new value, such as "30".
Confirm that the minutes can be correctly re-entered.

🧢 Your Project:

GET_BUILD

GET_BUILD

GET_BUILD


Improvig test formatting (indentation and spaces)

I have fixed the indentation format of the tests.
Major changes Changes are in ompval/templates and ompval/utils.py.
This also includes changes in PR #1
The idea is that we have a level that is calculated during the creation of the parse path. This level is next to the clause. With it we use it to generate spaces through a new helper function called indent_gen()

Not worth the extra effort. Recommending using indent instead


ngMock fails at $componentController after update from 1.4.8 to 1.5.0

i have no idea whats up?
Error: [$injector:modulerr] Failed to instantiate module ngMock due to:
Error: [$injector:pget] Provider '$componentController' must define $get factory method.

FYI: tests are also working in 1.4.9
after some digging:
https://github.com/angular/angular.js/blob/v1.5.0/src/ngMock/angular-mocks.js#L2186
shouldn't this read this.$get = ....? after fixing that in the dist file, the tests are working
also, to clarify, I am running tests on module, which only consists of services and factories

Yes, I think you are right. I'll fix it.

Interesting that our tests didn't catch this :confused:

It is because our unit tests for ngMock do not rely on instantiation via the injector.

I take that back. We do use the injector.... not sure why this doesn't fail in our unit tests then...

This is weird. We do indeed instantiate the $componentController service via the $injector in our ngMock tests and the full set of tests pass whether the provider is setup using the this.$get = ... style or the return { $get: ... } style.
So in the injector we have these lines:
  function provider(name, provider_) {
    assertNotHasOwnProperty(name, 'service');
    if (isFunction(provider_) || isArray(provider_)) {
      provider_ = providerInjector.instantiate(provider_);
    }
    if (!provider_.$get) {
      throw $injectorMinErr('pget', "Provider '{0}' must define $get factory method.", name);
    }
    return providerCache[name + providerSuffix] = provider_;
  }

So you can see that we are "instantiating the function that is passed. We ought to be able to have the constructor return an object and that be used instead.
I wonder if this is some browser/jsdom specific thing where instantiating in that environment does not work with a constructor returning an object?
@ctaepper can you confirm how you are running the tests?

But I guess we can change it for consistency anyway

@petebacondarwin sorry for late response! yes i do my tests exactly like that. i pinned it down to PhantomJS. I was using 1.9.x, which apparently can't handle it (did before with ng 1.4.8). I switched to 2.1.x and everything works fine.


Removed deprecated update-zos page

Signed-off-by: samanthasusu<EMAIL_ADDRESS>
Removed the updating zowe on z/os using the update script page per #2651 request

Your checklist for this pull request
🚨Please review the guidelines for contributing to this repository.

[ ] If the changes in this PR is part of the next future release, make this pull request against the docs-staging branch which will be published at the next release boundary. If the changes in this PR are part of the current release, use the default base branch, master. For more information about branches, see https://github.com/zowe/docs-site/tree/master#understanding-the-doc-branches.

[x] If this PR relates to GitHub issues in docs-site or other repositories, please list in Description, prefixed with close, fix or resolve keywords.
Close #2651

Description (including links to related git issues)
Please describe your pull request.
:heart:Thank you!

Thank you for picking up that we need to remove it from the earlier v2 chapters in the doc !


{QUESTION} is there any way to patch in any more episodes?

I love playing doom while I'm waiting (in-game) and it so happens I beat the first episode on my first day playing with the mod installed,
I would love to play more levels while in-game as replaying the first episode is quite repetitive.
Edit: "I beat the hardest difficulty on the first day"

I figured it out, you must first obtain the doom ultimate unity version WAD, put it in the folder "C:\Users{YourName}\AppData\Roaming\r2modmanPlus-local\LethalCompany\profiles{ProfileName}\BepInEx\plugins\Cryptoc1-LC_DOOM", now change your config so it directs to that file, And Boom there you have it Doom.


Kernel* packages should be ignored by FeatureDetectors

Unless evidence to the contrary, code provided by kernel* packages is never executed by containers.

I'm not sure if this is the ideal behavior.
If you're shipping a container with a vulnerable kernel, you should still be informed of this. Clair should be responsible for the raw data. Hiding specific packages should probably be implemented by whatever frontend (hyperclair, Quay, etc...) to the clair API people are using.

The official statement is that we're not going to hide this information from the API and tools should filter this if it is not relevant to the API consumers.


v44

sync-k3s-images is red because 'https://update.k3s.io/v1-release/channels' references versions like "latest": "v1.31.3+k3s1", but the image repo doesn't (yet) contain this tag:
        "v1.31.2-k3s1",
        "v1.31.2-k3s1-amd64",
        "v1.31.2-k3s1-arm",
        "v1.31.2-k3s1-arm64",
        "v1.31.2-rc2-k3s1",
        "v1.31.2-rc2-k3s1-amd64",
        "v1.31.2-rc2-k3s1-arm",
        "v1.31.2-rc2-k3s1-arm64",
        "v1.31.3-k3s1-arm",
        "v1.31.3-k3s1-arm64",
        "v1.31.3-rc1-k3s1",
        "v1.31.3-rc1-k3s1-amd64",
        "v1.31.3-rc1-k3s1-arm",
        "v1.31.3-rc1-k3s1-arm64",
        "v1.31.3-rc2-k3s1",
        "v1.31.3-rc2-k3s1-amd64",
        "v1.31.3-rc2-k3s1-arm",
        "v1.31.3-rc2-k3s1-arm64"

This is benign (and the check isn't required to merge).


Sporadic crashes in AnimationMixer

Tested versions

Reproducible in v4.2.1 and v4.2.2

System information
Windows 10 / Vulkan API 1.3.242 - Forward+ - Using Vulkan Device #0: NVIDIA - NVIDIA GeForce GTX 1660
Issue description
Lately my game has been crashing more often, so I've built a custom build with debug symbols in order to get to the bottom of it.
This crash happens only occasionally, and logs nothing in the normal build of the engine.
Can anyone help me with understanding what the problem is and how could I go around it? Would just not using AnimationPlayer anywhere be good enough?
Here's the backtrace:
================================================================
CrashHandlerException: Program crashed
Engine version: Godot Engine v4.2.1.stable.mono.custom_build (b09f793f564a6c95dc76acc654b390e68441bd01)
Dumping the backtrace. Please include this when reporting the bug to the project developer.
[0] Object::set (C:\godot\core\object\object.cpp:230)
[1] Object::set (C:\godot\core\object\object.cpp:230)
[2] Object::set_indexed (C:\godot\core\object\object.cpp:408)
[3] AnimationMixer::_blend_process (C:\godot\scene\animation\animation_mixer.cpp:1447)
[4] AnimationMixer::_process_animation (C:\godot\scene\animation\animation_mixer.cpp:940)
[5] AnimationMixer::_notification (C:\godot\scene\animation\animation_mixer.cpp:2046)
[6] AnimationMixer::_notificationv (C:\godot\scene\animation\animation_mixer.h:44)
[7] AnimationPlayer::_notificationv (C:\godot\scene\animation\animation_player.h:39)
[8] Object::notification (C:\godot\core\object\object.cpp:840)
[9] SceneTree::_process_group (C:\godot\scene\main\scene_tree.cpp:950)
[10] SceneTree::_process (C:\godot\scene\main\scene_tree.cpp:1023)
[11] SceneTree::process (C:\godot\scene\main\scene_tree.cpp:510)
[12] Main::iteration (C:\godot\main\main.cpp:3634)
[13] OS_Windows::run (C:\godot\platform\windows\os_windows.cpp:1474)
[14] widechar_main (C:\godot\platform\windows\godot_windows.cpp:182)
[15] _main (C:\godot\platform\windows\godot_windows.cpp:206)
[16] main (C:\godot\platform\windows\godot_windows.cpp:218)
[17] __scrt_common_main_seh (D:\a\_work\1\s\src\vctools\crt\vcstartup\src\startup\exe_common.inl:288)
[18] <couldn't map PC to fn name>
-- END OF BACKTRACE --
================================================================

Steps to reproduce
The best I can do is provide the backtrace. In the code that crashes:

my game data is laoded
the main scene of the game is instantiated
the current Start menu scene is removed

Minimal reproduction project (MRP)
This one isn't possible to provide as it's my whole commercial project that suffers from this.

Should have been already fixed in https://github.com/godotengine/godot/pull/86687.

Can confirm it's not happening ever since I tried 4.3! Thanks @TokageItLab !


Error running tests: SyntaxError: Cannot use import statement outside a module

I get an error running the tests...
SyntaxError: Cannot use import statement outside a module
Steps to reproduce:

clone the repository
cd into the project directory and run npm i
run npm run test

I also get an error trying to do the following in Node, which I believe is possibly related...

Using Node 18 LTS create a simple project and
run "npm i comet-js-sdk"
create a file with the "js" extension
import the library like this... import comet from "comet-js-sdk"; or import { CometServer } from "comet-js-sdk";
run the file with node
The error is
Error [ERR_MODULE_NOT_FOUND]: Cannot find module '/path/to/my-project/node_modules/comet-js-sdk/dist/mjs/lib/output' imported from /path/to/my-project/node_modules/comet-js-sdk/dist/mjs/index.js

Thanks for raising this issue - both problems are caused by running in script mode instead of module mode.
I can confirm the issue with the Jest tests. To run the tests in module mode, try this (for Node 16 or 18):
NODE_OPTIONS=--experimental-vm-modules npm run test

For your test app, you can either

(A) get node.js into Module mode by renaming your .js file to .mjs and running with the --experimental-vm-modules argument; or
(B) embrace the classic script mode, and load the SDK with require instead of import, using the provided CommonJS instructions: const { CometServer } = require('comet-js-sdk')

Hope this helps - please let us know if you manage to resolve the issue,


PersistentContainer findBundle Returning Incorrect Bundle

In the PersistentContainer init method there are the following two lines:
https://github.com/RichardBlanch/Einstein/blob/5a304fd7fa6b9d5de22c638d7572e2f790727c01/Sources/Einstein/Shared/Core Data/PersistentContainer.swift#L35-L36
The static findBundle method refers to this method:
https://github.com/RichardBlanch/Einstein/blob/5a304fd7fa6b9d5de22c638d7572e2f790727c01/Sources/Einstein/Shared/Core Data/PersistentContainer.swift#L161-L165
When printing all bundles po Bundle.allBundles I get the following results (MyApp changed from something else since this is a public form):
▿ 3 elements
  - 0 : NSBundle </Applications/Xcode-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Library/Developer/CoreSimulator/Profiles/Runtimes/iOS.simruntime/Contents/Resources/RuntimeRoot/System/Library/CoreServices/CoreGlyphs.bundle> (not yet loaded)
  - 1 : NSBundle </Users/charliefish/Library/Developer/CoreSimulator/Devices/15038C5F-BCEB-41DE-B05E-01DD23427E94/data/Containers/Bundle/Application/DF1D9447-D513-4FE5-AF79-D42DC1C5C99C/MyApp.app> (loaded)
  - 2 : NSBundle </Applications/Xcode-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Library/Developer/CoreSimulator/Profiles/Runtimes/iOS.simruntime/Contents/Resources/RuntimeRoot/System/Library/PrivateFrameworks/UIKitCore.framework/Artwork.bundle> (not yet loaded)

When trying to print which bundle it will return, I get the following result:
(lldb) po Bundle.allBundles.first(where: { $0.urls(forResourcesWithExtension: "momd", subdirectory: nil) != nil })
▿ Optional<NSBundle>
  - some : NSBundle </Applications/Xcode-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Library/Developer/CoreSimulator/Profiles/Runtimes/iOS.simruntime/Contents/Resources/RuntimeRoot/System/Library/CoreServices/CoreGlyphs.bundle> (not yet loaded)

Which is not correct. Therefor PersistentContainer.findModelName(in: bundle) is failing, so the application is reverting to the GrioExample model name. Which causes an application crash.

I have a few ideas about possible solutions to fix this, but I don't know the use case for all of this code, so it's hard to determine the best solution here.

@RichardBlanch This can be closed, right?

@fishcharlie No, it's still borked. :(


Add support for basic union types in TurboModules

Summary:
This diff is a first take at parsing union types in TurboModules.
Changelog:
[General][Added] - Add parsing union types in TM
Differential Revision: D44575234

Closing as abandoned internally


Incremental IMPORT (append to existing tables)

Background: https://airtable.com/tblD3oZPLJgGhCmch/viw5Jsp2TrY3it9Yr/rec61l6R44P4iVk17
PM: @rolandcrosby
Eng partner: @dt

Closed in favor of https://github.com/cockroachdb/docs/issues/4744.


Drawer does not look native

At least on iOS. I think it should be styled in a platform specific way.

On iOS:
Cell height: 40px
font: ".HelveticaNeueInterface-Regular"
font-size: 17
This is what it looked like:

For Android: http://www.google.com/design/spec/patterns/navigation-drawer.html#navigation-drawer-specs


build: Update Vulkan-Headers and VUL to 1.3.300

CI Vulkan-ExtensionLayer build queued with queue ID 287987.

CI Vulkan-ExtensionLayer build # 1008 running.

CI Vulkan-ExtensionLayer build # 1008 passed.


Questions about performance with other partially overlapping data

Thanks for making such a great work. Recently, I tried to train RegFormer on ModelNet, ModelLoNet, Kitti, but the results are not so good. For example, I trained on ModelNet with no modifications to the network, optimizer, and other parameters, and immediately after training for 150 epochs, I evaluated it, and the final rre calculated for the validation set was 42. Could you please tell me what modifications I need to make, e.g., parameters, etc.?
Can you please provide some suggestions to help me, it is very important for me, thanks! Thanks again for the superior work you have done.
Sincerely looking forward to your reply!

I fixed the kitti problem, but not the modelnet problem

For modelnet, did you test it on a clean, complete point cloud, and how did it work

For modelnet, did you test it on a clean, complete point cloud, and how did it work

I fixed the kitti problem, but not the modelnet problem

How did you resolve this and could you offer some advice?

I fixed the kitti problem, but not the modelnet problem

How did you resolve this and can you offer some advice?

For modelnet, did you test it on a clean, complete point cloud, and how did it work

I have only tried modelnet under partial overlap, following the rpmnet protocol for partial overlap data generation. Found it didn't work well, rre was only 42.

My suggestion is to adapt the entire framework to geotransformer parameters and then load kitti data using predator preprocessed code,it is not difficult

For the modelnet dataset, I can also trainning smoothly

For the modelnet dataset, I can also trainning smoothly

Okay, could you tell me how you adjusted it, please. I want to use roitr as a comparison algorithm, not an improved optimization based on Roitr. If it's convenient for you, could you guide me in detail what I should change. I tried to change the parameters of roitr yesterday against GeoTransformer, but the training remains the same!

For the modelnet dataset, I can also trainning smoothly

Excuse me. Can you help me please, I'm only using it for comparison algorithm experiments, not plagiarizing. This is very important to me, thanks. Looking forward to your reply.

First of all, we also used the preprocessing code of predator for the modelnet data set, which was verified and found that the framework could be trained smoothly under crop, jitter and clean conditions, and the test results were found to be normal. After the training, I will upload the screenshot

First of all, we also used the preprocessing code of predator for the modelnet data set, which was verified and found that the framework could be trained smoothly under crop, jitter and clean conditions, and the test results were found to be normal. After the training, I will upload the screenshot

May I ask how your subsequent experiments have worked out and if you are getting good performance?

My suggestion is to adapt the entire framework to geotransformer parameters and then load kitti data using predator preprocessed code,it is not difficult

If it is convenient for you, is it possible to provide the modified code? I promise to use it only for experimental comparison testing.

You can comment out the data enhancement code without affecting the final comparison test of the experiment


Pixel Wallpapers app icon added.

Here's the link to the app: https://github.com/wacko1805/Pixel-Wallpaper-app

Iʼd suggest making the app logo in the icon slightly larger: suggestions.zip.

I updated the SVG and XML files.

Thanks, @LimeWools!


Update package.json

Fix the git URL so that the github project is properly linked by npmjs.com.

Closing this to include the change in a different PR with additional changes.


homeassistant with zwave-js is not working properly

Dear all,
i switched from homebridge to home assistant with zwave-js-ui as backend for zwave devices.
but when i look into the home assistant, if the button is multilevel, i don't have the option to change the item to behave like other item.

here i can change the show as in home assistant (regular button)

the option show as , dissapper and i get a multilevel item.

Hi @zeev-mindali, this is not the right place for such questions, I suggest to ask them in home assistant core repo or discord.
@kpine may be able to help you

o.k.
i thought since the integration is zwave-js in home assistant, maybe it is the right place.
it's shows shutters as light dimmers without ability to change the device.
i will try my luch in ha


Can't add items to shop

Hi!
Recently, I have been having a problem, where when I make shop item, it doesn't go on the shop.
If you have a solution, please help me. I really need help, as it is affecting my server a lot.

The issue tracker is only for bug reports and enhancement suggestions. If you have a question, please ask it in the Discord server instead of opening an issue – you will get redirected there anyway.

does our issue tracker get worse everyday or something

setup GitHub bot that will track if issue follows issue template and user has filled some info. If it doesn't follow issue template give some useful URLs like where to ask for help and close issue with lock.
Also, it would be better if it ignored contributors.
That should stop 99% of issues like this

hm that sounds like a good idea tbh


when triggering build via PaC trigger, we should explicilty supply

source_url as param, because without it, PaC isn't able to resolve {{source_url}}
STONEBLD-2669
Checklist:

PR has reference to the issue(s) it resolves
Write / update unit tests
Write / update integration (envtest) tests
Ensure there is an issue for e2e tests if needed
Ensure make test passes
Ensure test coverage hasn't decreased
Test code changes manually
Update readme and documentation
Write PR description that highlights overall changes and add usage examples if applicable

/retest


config.yml replaced

Whenever a yaml error is present in the config.yml file, the config gets replaced with the default one, deleting all the current work. I think there are better ways to handle this, like saving a backup yml when an error occurs.

Noted. I'll keep this in mind for the recode.

This will be fixed in the upcoming recode.
https://github.com/fatpigsarefat/Quests-2


[Feature Request] Frontend to emit i1 packed tensor for attention masks

Request description
As the title says.  In #19354 we are adding one extra encoding attribute #iree_encoding.packed_storage to indicate that a tensor has a back to back packed memory layout. such as tensor<1024x1024xi1, #iree_encoding.packed_storage>.
The backend will handle such tensor accordingly.
What component(s) does this issue relate to?
No response
Additional context
No response

@rsuderman #19354 will enable packed tensor types, which the frontend can emit and the backend can process it properly.


add get pinned repos from github

#562

Build log
Preview build with this PR (adc8ede1f389ddc449366756fdc6589665168ba9)

more info:cloud: Storage Free space   7.74 GiB    51.60%:open_file_folder: 148.29 MiB  CI_WORK/GitHubActions/roki-web

Build log
Preview build with this PR (bb52aecbdbf08c0eb5dee8135cf96b7eb2c8661c)

more info:cloud: Storage Free space   7.65 GiB    51.03%:open_file_folder: 61.47 MiB  CI_WORK/GitHubActions/roki-web

Build log
Preview build with this PR (c8a2b4e6eb48037211b41ddf9eb4265613646bcd)

more info:cloud: Storage Free space   7.49 GiB    49.90%:open_file_folder: 61.47 MiB  CI_WORK/GitHubActions/roki-web

Build log
Preview build with this PR (06be19331481d38843063d763d3cc09e9a81b8ad)

more info:cloud: Storage Free space   7.32 GiB    48.77%:open_file_folder: 61.47 MiB  CI_WORK/GitHubActions/roki-web

Build log
Preview build with this PR (1d69e2a49f3c864b417753efe857b8fdb3f1effc)

more info:cloud: Storage Free space   7.15 GiB    47.64%:open_file_folder: 61.47 MiB  CI_WORK/GitHubActions/roki-web

Build log
Preview build with this PR (6ea46e7dbefe5a3d0b483e8faef042e8bbeae6de)

more info:cloud: Storage Free space   6.98 GiB    46.51%:open_file_folder: 61.47 MiB  CI_WORK/GitHubActions/roki-web

Build log
Preview build with this PR (d4e0475673a53acb48e0ae0c1279bf02c95503ef)

more info:cloud: Storage Free space   6.81 GiB    45.38%:open_file_folder: 61.47 MiB  CI_WORK/GitHubActions/roki-web

Build log
Preview build with this PR (c24891df4426888af38054217df59cc1013f5c7f)

more info:cloud: Storage Free space   6.64 GiB    44.25%:open_file_folder: 61.47 MiB  CI_WORK/GitHubActions/roki-web

Build log
Preview build with this PR (7d69c5ccc8a6ccbbc74f4f124f1fcc0a12a43ce5)

more info:cloud: Storage Free space   6.47 GiB    43.12%:open_file_folder: 61.47 MiB  CI_WORK/GitHubActions/roki-web

Build log
Preview build with this PR (e4e7601d28044e7bdae76f798b72d9fd315ae6d5)

more info:cloud: Storage Free space   6.12 GiB    40.77%:open_file_folder: 235.11 MiB  CI_WORK/GitHubActions/roki-web

Build log
Preview build with this PR (69cc606d1a97a8068d7bb64238ceb9eead8c0bc8)

more info:cloud: Storage Free space   6.03 GiB    40.21%:open_file_folder: 148.29 MiB  CI_WORK/GitHubActions/roki-web

Build log
Preview build with this PR (c9ecf7c9f9b4b25fba877be799786726a9a34e6a)

more info:cloud: Storage Free space   5.78 GiB    38.51%:open_file_folder: 61.47 MiB  CI_WORK/GitHubActions/roki-web

Build log
Preview build with this PR (7bc690775648622cc7828221f71b98aba8e513d2)

more info:cloud: Storage Free space   5.65 GiB    37.64%:open_file_folder: 61.47 MiB  CI_WORK/GitHubActions/roki-web

Build log
Preview build with this PR (abee09745638f4a696c47fb0d14fbc785bdc168b)

more info:cloud: Storage Free space   5.48 GiB    36.51%:open_file_folder: 61.47 MiB  CI_WORK/GitHubActions/roki-web

Build log
Preview build with this PR (abee09745638f4a696c47fb0d14fbc785bdc168b)

more info:cloud: Storage Free space   5.31 GiB    35.38%:open_file_folder: 61.47 MiB  CI_WORK/GitHubActions/roki-web


export startCompletionEffect and closeCompletionEffect

Trying to programmatically open the autocompletion menu when CodeMirror is empty and focused, as opposed to requiring a Ctrl+Space.
Would need to have state effects exported if I want to use https://codemirror.net/docs/ref/#state.EditorState^transactionExtender.
Work-around right now is using updateListener, and calling startCompletion.
EditorView.updateListener.of(
  ({ docChanged, view, state }) => {
    const shouldOpen = (docChanged || view.hasFocus) && !completionStatus(state);
    if (!state.doc.length && shouldOpen) {
      startCompletion(view);
    }
  }
)

This works but requires an additional check that completionState isn't already open to prevent an infinite loop of updates.
But I view this as more similar to the auto language example here https://codemirror.net/examples/config/

I think your workaround is decent enough. Exporting these doesn't seem worth it without a more compelling use case.


Very nice tool; thanks

Thanks Ferry for this tool. Very nice.
I was using another ones (mine then one found in a gist) but yours is the fastest and the given output is really intuitive.  Many thanks for command line arguments like -e, great!

Glad you find it useful!


AMBARI-23348 - service advisor has the option to calculate colocatSe…

…rvices with more information from the services list (dili)
What changes were proposed in this pull request?
Add a new method to the top level service_advisor.py so that each service can either implement colocateService or colocateServiceWithServiceInfo(). The point is to not break existing service advisor implementations in HDP 3.0
How was this patch tested?
Patch an AMbari 2.7/HDP 3.0 cluster with the changes, add KNox, verify I could add Knox
Please review Ambari Contributing Guide before opening a pull request.

Refer to this link for build results (access rights to CI server needed):
https://builds.apache.org/job/Ambari-Github-PullRequest-Builder/1353/
Test FAILed.
Test FAILured.

retest this please

Refer to this link for build results (access rights to CI server needed):
https://builds.apache.org/job/Ambari-Github-PullRequest-Builder/1392/
Test FAILed.
Test FAILured.

Refer to this link for build results (access rights to CI server needed):
https://builds.apache.org/job/Ambari-Github-PullRequest-Builder/1393/
Test FAILed.
Test FAILured.

ambari-server Python unit test failure is unrelated to the service advisor change
_FAIL: test_web_server_startup_timeout (TestAmbariServer.TestAmbariServer)
Traceback (most recent call last):
File "/home/jenkins/jenkins-slave/workspace/Ambari-Github-PullRequest-Builder/ambari-common/src/test/python/mock/mock.py", line 1199, in patched
return func(*args, **keywargs)
File "/home/jenkins/jenkins-slave/workspace/Ambari-Github-PullRequest-Builder/ambari-server/src/test/python/TestAmbariServer.py", line 8697, in test_web_server_startup_timeout
self.assertEquals(50, timeout)
AssertionError: 50 != 90_

retest this please

Hi Jonanthan,
Yes, this is just to provide the necessary method that each service can implement.  HDP services don't need it, current service advisor implementations in HDP 3.0 still work. It's more or less for work on my side, and I don't want to hammer service advisor during my custom service or mpack install.

Refer to this link for build results (access rights to CI server needed):
https://builds.apache.org/job/Ambari-Github-PullRequest-Builder/1472/
Test PASSed.


Config item keep_dropped_targets appears not to take effect

What did you do?
With Prometheus v2.47.0, running in agent mode, I tried setting the new keep_dropped_targets config item to 50. I set this in the global section of the config.
What did you expect to see?
In the Status → Service Discovery section of the web UI, I expected to see fewer entries in scrape jobs where we matched many possible targets but only selected a few.
What did you see instead? Under which circumstances?
I do not see any change.

The expanded kubernetes-apiservers section has significantly more than 53 entries — I did not count them, but it seems like it probably has all 1226 possible targets.
Perhaps I am misunderstanding the intent of the keep_dropped_targets config, but I expected to see only 50 dropped targets in this section of the web UI.
System information
Linux, Kubernetes
Prometheus version
Using the Docker image `prom/prometheus:v2.47.0`.

From the web UI:

version	2.47.0
revision	efa34a5840661c29c2e362efa76bc3a70dccb335
branch	HEAD
buildUser	root@409eb5e6b30c
buildDate	20230906-10:20:07
goVersion	go1.21.0

### Prometheus configuration file

```yaml
# Prometheus configuration for running in K8S cluster
#
#  - https://github.com/prometheus/prometheus/blob/master/documentation/examples/prometheus-kubernetes.yml
#
#  Since we are running in-cluster, we only need to tell Promethues to ask k8s
#  for a list of endpoints, nodes, etc. and it can figure out how to find the
#  API server and how to authenticate.
#

global:
  scrape_interval: 15s
  external_labels:
    # These labels are not stored on disk, but are added during egress
    # (e.g. when we are scraped by the central Prometheus).
    monitor: 'kubernetes'
    cluster_loc: "{{.cluster.location_code}}"
    kubernetes_cluster: "{{.cluster.name}}"

  # {{if feature "BACREL-690-prometheus" }}
  # This limits the number of dropped targets displayed in the UI. The
  # limit is per job. Under k8s it's quite common to match 1000s of pods
  # but only select a few of them; we don't need to know about every
  # single one! A setting of 50 gives us enough of a sample size to be
  # able to debug relabelling config errors.
  keep_dropped_targets: 50
  # {{end}}

##############
# REMOTE WRITE
##############
remote_write:
  - name: aggregator_0
    url: "{{.prometheus.remote_write.agg0_url}}"
    follow_redirects: false
    tls_config: &_remote_write_tls_config
      ca_file:   "/etc/prometheus/remote-write/ca.pem"
      key_file:  "/etc/prometheus/remote-write/key.pem"
      cert_file: "/etc/prometheus/remote-write/cert.pem"
      min_version: TLS12
    queue_config: &_remote_write_queue_config
      # as measured in LD5 production with 24 agents at sample rates between
      # 4–43k sps, 6 shards allows backfill to occur without totally
      # overwhelming the server while still making forward progress
      max_shards: 6
      # increasing this to 1000 or 4000 increases the kb/s written for the same
      # level of samples/sec and greatly increases the latency while seemingly
      # having no positive effect
      max_samples_per_send: 500

  - name: aggregator_1
    url: "{{.prometheus.remote_write.agg1_url}}"
    follow_redirects: false
    tls_config:
      <<: *_remote_write_tls_config
    queue_config:
      <<: *_remote_write_queue_config

################
# SCRAPE TARGETS
################
#
# Note the following, common safety limits for each target:
#
# Safety limit to avoid applications creating time series with a very
# large number of labels (not cardinality, but actual count of labels
# like "id" and "pod" and so on).
#   label_limit: 100
#
# Safety limit to avoid applications creating lables with excessively
# long names.
#   label_name_length_limit: 100
#
# Safety limit to avoid applications creating labels with excessively
# long string values.
#
# In clusterx (app layer) "url" and "id" were both in the highest
# cumulative label length section. Dividing by cardinality (no. of
# values) we can see the mean lengths:
#   id:  160 bytes
#   url: 171 bytes
#
# Set the overall max to be just over 10× the mean.
#   label_value_length_limit: 2000
#
scrape_configs:
  #
  # Scrape from the Kubernetes API servers
  #
  - job_name: 'kubernetes-apiservers'
    label_limit: 100
    label_name_length_limit: 100
    label_value_length_limit: 2000

    # ask k8s for a list of endpoints
    kubernetes_sd_configs:
      - role: endpoints

    # talk to endpoints (in this case k8s itself) over HTTPS, and load HTTPS
    # config from the service account
    scheme: https
    tls_config:
      ca_file: /var/run/secrets/kubernetes.io/serviceaccount/ca.crt
      server_name: kubernetes # overrides SNI / TLS verification since the apiserver IP isn't in its cert
    bearer_token_file: /var/run/secrets/kubernetes.io/serviceaccount/token

    # Keep only the default/kubernetes service endpoints for the https port. This
    # will add targets for each instance of kube-apiserver (since they are all
    # named in the endpoint).
    relabel_configs:
      # this selects only the https://kubernetes.default endpoint itself
      - source_labels: [__meta_kubernetes_namespace, __meta_kubernetes_service_name, __meta_kubernetes_endpoint_port_name]
        action: keep
        regex: default;kubernetes;https

    #
    # reduce or drop unused high-cardinality metrics
    #
    metric_relabel_configs:
      # apiserver_request_duration_seconds — reduce resolution on the histogram
      #  ref: https://github.com/prometheus-operator/kube-prometheus/blob/main/manifests/kubernetesControlPlane-serviceMonitorApiserver.yaml
      - source_labels: ['__name__', 'le']
        regex: 'apiserver_request_duration_seconds_bucket;(0.15|0.25|0.3|0.35|0.4|0.45|0.6|0.7|0.8|0.9|1.25|1.5|1.75|2.5|3|3.5|4.5|6|7|8|9|15|25|30|50)'
        action: drop

      # etcd_request_duration_seconds — keep only "endpoints" (most frequently referenced object type) as an exemplar
      #
      # implementation:
      #  for the metrics named etcd_request_duration_seconds_.* only,
      #  copy the 'type' label to __tmp_etcd_type
      #  then for all metrics with __tmp_etcd_type,
      #  only keep the ones where it refers to 'v1.Endpoints'
      #  then for all metrics with __tmp_etcd_type,
      #  drop this temporray label
      # (this implementation doesn't mess with other metrics that have a type label)
      - source_labels: ['__name__', 'type']
        target_label: __tmp_etcd_type
        regex: 'etcd_request_duration_seconds_[^;]*;(.*)'
      - source_labels: ['__tmp_etcd_type']
        regex: '(|.*v1.Endpoints.*)'
        action: keep
      - regex: '__tmp_etcd_type'
        action: labeldrop

      # apiserver_request_slo_duration_seconds_sum
      # apiserver_request_duration_seconds_sum
      #  - resource=endpoints

      # apiserver_admission_controller_admission_duration_seconds_sum

      # apiserver_admission_controller_admission_duration_seconds
      # apiserver_admission_step_admission_duration_seconds
      # apiserver_flowcontrol_request_wait_duration_seconds
      # apiserver_request_duration_seconds
      # apiserver_request_filter_duration_seconds
      # apiserver_request_slo_duration_seconds
      # rest_client_request_duration_seconds
      # workqueue_queue_duration_seconds
      # workqueue_work_duration_seconds
      #  + several related…
      #
      #  These are all pretty high cardinality histograms. Unfortunately, in
      #  agent mode, we can't use recording rules to rewrite these as
      #  summaries. But if we drop the buckets, we can at least get the
      #  event rates and total time spent, which is something.
      - source_labels: ['__name__']
        regex: 'apiserver_(admission|flowcontrol|request)_.*_bucket'
        action: drop
      - source_labels: ['__name__']
        regex: 'rest_client_request_duration_seconds_bucket'
        action: drop
      - source_labels: ['__name__']
        regex: 'workqueue_.*_bucket'
        action: drop

      # apiserver_response_sizes — drop it
      - source_labels: ['__name__']
        regex: 'apiserver_response_sizes(.*)'
        action: drop

      # apiserver_watch_events_sizes — drop it
      - source_labels: ['__name__']
        regex: 'apiserver_watch_events_sizes.*'
        action: drop

  #
  # Scrape from Kubernetes nodes
  #
  - job_name: 'kubernetes-nodes'
    label_limit: 100
    label_name_length_limit: 100
    label_value_length_limit: 2000

    # ask k8s for a list of nodes
    kubernetes_sd_configs:
      - role: node

    # talk to endpoints (in this case kubelet) over HTTPS, and load HTTPS
    # config from the service account
    scheme: https
    tls_config:
      ca_file: /var/run/secrets/kubernetes.io/serviceaccount/ca.crt
    bearer_token_file: /var/run/secrets/kubernetes.io/serviceaccount/token

    relabel_configs:
      # node labels get mapped to Prometheus labels
      - action: labelmap
        regex: __meta_kubernetes_node_label_(.+)

      # this tells Prometheus how to turn a node name into an endpoint URL that
      # it can query
      - target_label: __address__
        replacement: kubernetes.default:443
      - source_labels: [__meta_kubernetes_node_name]
        regex: (.+)
        target_label: __metrics_path__
        replacement: /api/v1/nodes/${1}/proxy/metrics

    #
    # Drop high-cardinality or duplicated metrics
    #
    metric_relabel_configs:
      - source_labels: [__name__]
        regex: 'process_start_time_seconds'
        action: drop

  #
  # K8S nodes (cadvisor)
  #  same as kubernetes-nodes, but we change the scrape path
  #
  - job_name: 'kubernetes-nodes-cadvisor'
    label_limit: 100
    label_name_length_limit: 100
    label_value_length_limit: 2000

    kubernetes_sd_configs:
      - role: node
    scheme: https
    tls_config:
      ca_file: /var/run/secrets/kubernetes.io/serviceaccount/ca.crt
    bearer_token_file: /var/run/secrets/kubernetes.io/serviceaccount/token
    relabel_configs:
      - action: labelmap
        regex: __meta_kubernetes_node_label_(.+)
      - target_label: __address__
        replacement: kubernetes.default:443
      - source_labels: [__meta_kubernetes_node_name]
        regex: (.+)
        target_label: __metrics_path__
        replacement: /api/v1/nodes/${1}/proxy/metrics/cadvisor   # differs from kubernetes-nodes

    #
    # Drop high-cardinality or duplicated metrics
    #
    metric_relabel_configs:
      - source_labels: [__name__]
        regex: '(container_tasks_state|container_memory_failures_total|container_memory_working_set_bytes|container_cpu_usage_seconds_total)'
        action: drop

      # cadvisor exports metrics regarding all cgroups on the system, many
      # of which don't correspond to k8s pods. Filter those out; we only
      # use these metrics for k8s pods. node_exporter covers everything
      # else we need.
      - source_labels: [__name__, pod]
        regex: 'container_[^;]*;'
        action: drop

      # the "id" label contains the full cgroup path which isn't useful
      # to us since we only care about the pod/container. But Prometheus
      # would still have to spend memory and CPU tracking these values
      # even though they are never consulted or used, so drop them.
      #
      # NB: to validate this, use PromQL:
      #   sort_desc( count({job="kubernetes-nodes-cadvisor", pod!="", id!=""}) by (id, __name__) )
      # and note that the top hits (i.e. most common labels) are all still
      # the individual cgroups. On digging in there is always some other
      # differentiating factor here (e.g. "interface" for network or
      # "device" for filesystem) so we maintain 1:1 cardinality.
      - regex: "id"
        action: labeldrop

  #
  # K8S nodes (probes)
  #  same as kubernetes-nodes, but we change the scrape path
  #
  - job_name: 'kubernetes-nodes-probes'
    label_limit: 100
    label_name_length_limit: 100
    label_value_length_limit: 2000

    kubernetes_sd_configs:
      - role: node
    scheme: https
    tls_config:
      ca_file: /var/run/secrets/kubernetes.io/serviceaccount/ca.crt
    bearer_token_file: /var/run/secrets/kubernetes.io/serviceaccount/token
    relabel_configs:
      - action: labelmap
        regex: __meta_kubernetes_node_label_(.+)
      - target_label: __address__
        replacement: kubernetes.default:443
      - source_labels: [__meta_kubernetes_node_name]
        regex: (.+)
        target_label: __metrics_path__
        replacement: /api/v1/nodes/${1}/proxy/metrics/probes   # differs from kubernetes-nodes

  #
  # Scrape from Kubernetes pods
  #
  - job_name: 'kubernetes-pods'
    label_limit: 100
    label_name_length_limit: 100
    label_value_length_limit: 2000

    # ask k8s for a list of pods
    kubernetes_sd_configs:
      - role: pod

    relabel_configs:
      # Pod scraping config comes from annotations on the pod.
      #  • `prometheus.io/scrape`: Only scrape pods that have a value of `true`
      #  • `prometheus.io/path`: If the metrics path is not `/metrics` override this.
      #  • `prometheus.io/port`: If the metrics are exposed on a different port to the
      #    pod then set this appropriately.
      - source_labels: [__meta_kubernetes_pod_annotation_prometheus_io_scrape]
        action: keep
        regex: true
      - source_labels: [__meta_kubernetes_pod_annotation_prometheus_io_path]
        action: replace
        target_label: __metrics_path__
        regex: (.+)
      - source_labels: [__address__, __meta_kubernetes_pod_annotation_prometheus_io_port]
        action: replace
        target_label: __address__
        regex: ([^:]+)(?::\d+)?;(\d+)
        replacement: $1:$2

      # Only scrape pods that are in the Running phase.
      #  https://github.com/prometheus/prometheus/issues/10755#issuecomment-1139248161
      #  https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.22/#podstatus-v1-core
      #    Pending — not all containers running yet. Pod may not even be scheduled yet.
      #    Running — all containers created and at least one still running.
      #    Succeeded — all containers exited with status=0, pod will not restart.
      #    Failed — one or more containers exited with status≠0, pod will not restart.
      #    Unknown — we lost contact with the host's kubelet. We have seen this persist for
      #              days after a node machine dies.
      - source_labels: [__meta_kubernetes_pod_phase]
        action: keep
        regex: Running

      # Add pod name and namespaces labels to the time series.
      - source_labels: [__meta_kubernetes_namespace]
        action: replace
        target_label: kubernetes_namespace
      - source_labels: [__meta_kubernetes_pod_name]
        action: replace
        target_label: kubernetes_pod_name

      # Yoti uses "serviceName" quite extensively in the application layer,
      # which is useful to select "all pods by service". In platform-deploy
      # we have used k8s-app for much the same purpose.
      - source_labels:
          - __meta_kubernetes_pod_label_serviceName
          - __meta_kubernetes_pod_label_k8s_app
        separator: ""    # makes the source string just be …serviceName+…k8s_app with no separator
        action: replace
        target_label: serviceName

    #
    # reduce or drop unused high-cardinality metrics
    #
    metric_relabel_configs:
      # request_duration_summary, response_duration_summary and friends from
      # provemyage have a "path" label with attacker-controlled values.
      - source_labels: ['__name__', 'kubernetes_namespace']
        regex: 'request_duration_summary.*;provemyage'
        action: drop
      - source_labels: ['__name__', 'kubernetes_namespace']
        regex: 'response_duration_summary.*;provemyage'
        action: drop

      # http_server_requests_seconds_bucket from billing just has way too
      # many buckets.
      - source_labels: ['__name__', 'kubernetes_namespace']
        regex: 'http_server_requests_seconds_.*;billing'
        action: drop

      # istio_request_bytes_bucket
      # istio_request_duration_milliseconds_bucket
      # istio_response_bytes_bucket
      #  These metrics emit multiple time series for each combination of
      #  pod-to-pod traffic, and are just too expensive for the agent to
      #  scrape at this time.
      - source_labels: ['__name__']
        regex: 'istio_request_bytes_.*'
        action: drop
      - source_labels: ['__name__']
        regex: 'istio_request_duration_milliseconds_.*'
        action: drop
      - source_labels: ['__name__']
        regex: 'istio_response_bytes_.*'
        action: drop

      # vertx_http_server_response_bytes_bucket
      # vertx_http_client_response_bytes_bucket
      # vertx_http_server_request_bytes_bucket
      # vertx_http_client_request_bytes_bucket
      #  These metrics are emitted by vert.x library used by a few Java projects.
      #  They are extremely high cardinality. Pedro will look into configuring
      #  them to reduce the cardinality.
      - source_labels: ['__name__']
        regex: 'vertx_http_.*_bytes_.*'
        action: drop

      # envoy_server_initialization_time_ms_bucket
      # envoy_listener_manager_lds_update_duration_bucket
      # envoy_cluster_manager_cds_update_duration_bucket
      # envoy_cluster_upstream_cx_connect_ms_bucket
      # envoy_cluster_upstream_cx_length_ms_bucket
      #  These are high-cardinality but low-value metrics emitted by istio's
      #  envoy proxy. We are not tracking these for anything.
      - source_labels: ['__name__']
        regex: 'envoy_server_initialization_time_ms_.*'
        action: drop
      - source_labels: ['__name__']
        regex: 'envoy_listener_manager_lds_update_duration_.*'
        action: drop
      - source_labels: ['__name__']
        regex: 'envoy_cluster_manager_cds_update_duration_.*'
        action: drop
      - source_labels: ['__name__']
        regex: 'envoy_cluster_upstream_cx_connect_ms_.*'
        action: drop
      - source_labels: ['__name__']
        regex: 'envoy_cluster_upstream_cx_length_ms_.*'
        action: drop

Alertmanager version
No response
Alertmanager configuration file
No response
Logs
No response

Thanks for the detailed report.
I think you are using it correctly.
Try setting it to a very small number, e.g. 1 or 2, then you won't have to scroll 50 lines to see if it worked.

Hi,
I have trialled the setting again, this time with a lower value of 5 and with Prometheus v2.50.1.
I am afraid that I still see many hundreds of entries in the "Service Discovery" page that are filtered out.
Is there anything else I should try?

When you check the /config page of your Prometheus, do you see the keep_dropped_targets setting?
I notice some templating in the file where you specified it, which makes me uncertain.

Sorry for that.
Yes, we see the expected value (in this scenario, now 10). It is interesting that it has type string (hence the quotes around the value) — is that expected?

I think the problem is that keep_dropped_targets is indented so it is parsed as an external label.