Feature Plans

Move logging configuration to XML (Not YAML due to not being natively supported by Java)
Support the use of CCDTs for connections to queue managers.
Tidy up the startup methods and refactor duplicate code.
Add handling for target queue full condition.

Logging configuration is being moved to XML, due to Log4J 2 internally depending on a YAML library that is marked as public archive & is deprecated. Queue manager config may not move to YAML due to requiring additional dependencies to parse. Given the simple nature of the key:value pairs in the properties file at the moment, it may not be necessary to put this into YAML either.
That being said, hostname & port may need to be combined into a "connection_list" config that allows for a connection list like some_host.com(port),some_host_2.com(port) which can then be used as a proper connection list in the application's source code.
CCDT handling is being investigated.

Use of a connection list in the config file is now supported, as well as settings for output message persistence & whether to use syncpoint in message transactions.

Duplicate code has been refactored, number 4 is done.

Working on adding handling for queue full & some other situations. This has actually proven to be considerably more intensive than first thought. Startup of the entire app is being re-written into JMS 2.0 calls rather than 1.1 calls (no idea why I thought I needed the old 1.1 objects... really should've done some reading about the JMS spec before I started this project, ah well we live and we learn). Error handling is also being spread out to be more localised to the issue area rather than having a centralised error handling routine that loses contextual scope.

Further updates, JMS 2.0 is misusing MQPUT1 calls instead of allowing proper MQOPEN / MQPUT * number of messages / MQCLOSE. Therefore, the JMS 2.0 rewrite is being abandoned. However, other goals of the rewrite are still being targeted.


Migrate tests from net5.0 to net6.0

Since .NET 5's End of Support is scheduled for May 8, 2022 (see here), let's migrate to .NET 6 right away.

Should we actually try to migrate to using HttpClient? @meziantou
Not sure it would be easily feasible though

Should we actually try to migrate to using HttpClient? @meziantou
Not sure it would be easily feasible though

Well, I found a way: I deleted the NGitLab.Tests/HttpTracing.cs file.


Why does the email mask let me enter in the format<EMAIL_ADDRESS>?

the domain name would be<EMAIL_ADDRESS>or<EMAIL_ADDRESS>.. Why does it let me enter any number of characters in the domain?

What invalid in this? or abc.co.ukkkkkkkkk invalid domain name?

it is letting me enter any number of characters after I enter '.co.' .. Example<EMAIL_ADDRESS>

@NewbieAngular DNS does not limit upper domain name, so it's correct


wrong studyinfo file used if already present

there's several bugs in ds that occur when moving sim files to new directories/computers. one weird one i haven't been able to diagnose is when I used an old studyinfo file made on a different computer doing local sims. then i moved to cluster for jobs submissions. for some reason, the new studyinfo file had mostly the new paths, but the mech filepaths were referencing the old computer's mech file paths.

i can avoid the bug if i rename/remove the old studyinfo file.


[gentoo] fix pip install fail as root

The gentoo don't allow use the root to run the pip install command.

Running pip as root is not advised. It can render important system tools like emerge useless.[1]
pip - Gentoo Wiki

Error message from Docker Hub.

https://hub.docker.com/r/chusiang/ansible-jupyter/builds/b6fgkggbrgrybkz5dfesgzs/

...
Step 6/15 : RUN pip install -U pip

 ---> Running in e803e1f60837

ERROR: (Gentoo) Please run pip with the --user option to avoid breaking python-exec

Removing intermediate container e803e1f60837

The command '/bin/sh -c pip install -U pip' returned a non-zero code: 1

I see the official ansible package is latest, I will use the equery to install ansible, not pip.

app-admin/ansible – Gentoo Packages

I remove the pip install ansible part, but the setup playbook have some pip install tasks. 😢


[Azure Monitor Exporter] Change foreach loop to use ref readonly for tag/event/link enumeration

API change check
API changes are not detected in this pull request.


Allow RO to revoke grant / access token

Resource owner should be able to revoke a grant via the RS(?) as an alternative to via the client (who would revoke the token via GNAP)
https://datatracker.ietf.org/doc/html/draft-ietf-gnap-core-protocol#section-1.5

Finalized  After the access tokens are issued, if the AS does not
allow any additional updates on the grant request, the grant
request enters the finalized state.  This state is also entered
when an existing grant request is revoked by the client instance
(Section 5.4) or otherwise revoked by the AS (such as through out-
of-band action by the RO).

Should this happen via an AS admin api?

Move introspection to different admin router and add these two

listing grants

revoking grants

as REST endpoints to that.

Actually, we are having a change of hearts. Listing and revoking grants should be on an auth server Graphql admin API. @domin191013 I hope you haven't gotten too far with this already. And I'll create a new issue for moving the introspection endpoint to a new router.

@sabineschaller  Yup, not yet far away. By the way can you please add some more details? Thanks

I imagine this will look a lot like the backend's graphql admin api
https://github.com/interledger/rafiki/tree/main/packages/backend/src/graphql

@domin191013 let me know if @wilsonianb 's reference is enough or whether you need more details 🙂.

I think I need to add 2 functions to graphql
https://github.com/interledger/rafiki/tree/main/packages/backend/src/graphql
listing grants
revoking grants
Is there a way to test after adding these? Or just unit testing would be enough for now?
@sabineschaller

You'll end up adding at least

packages/auth/codegen.yml
packages/auth/src/graphql/resolvers/grant.ts
packages/auth/src/graphql/resolvers/grant.test.ts (unit tests)
packages/auth/src/graphql/resolvers/index.ts
packages/auth/src/graphql/schema.graphql

You can look at the corresponding files in backend for reference.

@domin191013 my PR adds a new mutation: https://github.com/interledger/rafiki/pull/986, you can use this as a reference to see how the GraphQL side works.
I first wrote a new mutation in packages/auth/src/graphql/schema.graphql and then ran pnpm generate to create TypeScript types that you can use in the resolvers.

@mkurapov  @wilsonianb Can you please check revokeGrant function if I'm in the right way?
Also this currently have issues in testings.

Anyone has idea about why this happens?

https://github.com/interledger/rafiki/pull/1013

@domin191013 leaving some PR comments right now.
I think if you are running the local environment it's possible you are using that port already


use disc-cuer new config

@CodiumAI-Agent /review

PR Reviewer Guide 🔍
Here are some key observations to aid the review process:

⏱ Estimated effort to review: 3 🔵🔵🔵⚪⚪
🧪 No relevant tests
🔒 No security concerns identified
⚡ Recommended focus areas for review
Configuration UpdateThe configuration paths and environment variables have been changed. Ensure that these changes are reflected in the documentation and that all references to the old configuration paths and variables are updated accordingly.
Function ModificationThe ExecuteAction function now requires a 'device' parameter. This change affects how the function is called throughout the code. Verify that all calls to this function have been correctly updated to pass the new parameter.
Configuration HandlingNew configuration variables and paths have been introduced. It's crucial to ensure that these additions are compatible with existing configurations and do not introduce any breaking changes.


Problem: "mainnet" network hardcoded in client queries

We should expand the cli query args to have an optional flag --network which defaults to "mainnet"

@Isaac-DeFrain, you mean a global option/flag for all commands?

Related to #650.

Perhaps so, but this begs the question: will the indexer work with 2 different networks simultaneously? Or, maybe we need to work with some network, but only one network.

My thinking is that we now index almost everything in the db by network so it is possible to make queries on multiple networks. The indexer will only ever be "running" on one network at a time but that network may change, e.g. with the hardfork. I'm envisioning the indexer running on current mainnet and having the ability to upgrade to the new network without downtime, after which we can query all old and new network data


WIP cleanValidationRules turned off for insert

As for now, there was an issue with required files in INSERT
		'uvf_dob'					=> 'required|valid_date',

if uvf_dob is not exists in data posted to insert then required rule is ignored cuz it is deleted by cleanValidationRules()
the same was happend with uploaded[file] rule;
I think at least for insert cleanValidationRules should not remove rules with required or uploaded
Each pull request should address a single issue, and have a meaningful title.
Description
Explain what you have changed, and why.
Checklist:

[ ] Securely signed commits
[ ] Component(s) with PHPdocs
[ ] Unit testing, with >80% coverage
[ ] User guide updated
[ ] Conforms to style guide

---------Remove from here down in your description----------
Notes

Pull requests must be in English
If the PR solves an issue, reference it with a suitable verb and the issue number
(e.g. fixes 12345
Unsolicited PRs will be considered, but there is no guarantee of acceptance
Pull requests should be from a feature branch in the contributor's fork of the repository
to the develop branch of the project repository

It could break some tests and it'll require to make changes in test cases, but I am sure for insert cleaning rules should be turned off.
I am not sure about uploaded (FILE) rule if it should be cleared or not...during update/replace

@lonnieezell @jim-parry  could you check this useful PR?

This breaks tests/system/Database/Live/ModelTest :(

@jim-parry : Yes, I excepted that. However, IMHO it should work that way. When we are trying to insert data to DB every role should be checked; cleaning validation rules is useful and desirable in update operation only.

I just came across the same issue...
I want to ensure that certain fields always exist during an insert. If they don't a validation error should occur... but the $this->cleanValidationRules just removes those rules, I can understand how removing some of the rules makes sense on update, however I still feel like any rule that has a 'required' should be required, rather than getting removed...
Perhaps we could introduce a 'required_on_insert' / 'required_on_update' ?

@lonnieezell: tests are passing, I've added  one additional

We've had an added parameter to some of the methods it looks like. Revisited this without any additional arguments in https://github.com/codeigniter4/CodeIgniter4/pull/2433


Roles Groups

Everything works when I just use the default role like in the "Usage" ( "roles": ["blogAdmin"] ). But I use groups for roles using "alanning:roles". So my roles field would like something like this:
{ roles: {blog: [ "blogAdmin" ] } }. Is there any way I can change the blog settings so that they check groups too?

just checked the code, there are groups for the settings
adminRole: null
adminGroup: null
authorRole: null
authorGroup: null
setting those works.


help error for command "createnewaddress"

The help text shows below when I try to use createnewaddress command before load_wallet:

Wallet "default_wallet" is not loaded. Use "electrum daemon load_wallet"

The word electrum should be electron-cash

Fixed in git head


Image-Circle width

An adjustable width of image-circle item would be nice, takes always full image size

Image circle is responsive so that wouldn't make sense anymore.


How to add a splash screen with animation transitions in android studio

Topic Suggestion
How to add a splash screen with animation transitions in android studio
Proposed article introduction
A splash screen is a screen that loads first whenever an application is launched. It can be designed as a motion layout splash screen, onboarding splash screen, or graphics that are animated. It is mostly used to catch the attention of the user by displaying certain information about the application such as a brief title of the application and the logo of the company. The importance of the splash screen is to give room for the application to load the data to the cache ready for the user and sometimes check internet connection for apps that requires internet for operating among others.
In this tutorial, we will be majoring in creating an animated splash screen that has transitions animation of a graphic that occur for a few seconds then the main activity opens. I will be using simple terms to explain every bit of the Kotlin code that beginners can understand and implement in the application they are building.
Key takeaways

Introduction to the splash screen
Creating the activities splash and main
Working with the activities XML's
Creating animated XML files
Writing Kotlin code in the splash activity.kt file
Configuring the manifest file
Conclusion

Article quality
In this article, i will be using other transition features that are not used in other blogs so that we can build a more catchy animation transition in our splash screen. I will also discuss the importance of developers using splash screens in their applications.
References
N/A

Good afternoon and thank you for submitting your topic to the EngEd program.
After some careful consideration it struck us that this topic may be a bit over saturated throughout other blog sites and official documentations. We're more interested in original, practitioner-focused content that takes a deeper dive into programming-centric concepts. Please feel free to suggest an alternate topic to explore. 🚀
We typically refrain from publishing content that is covered widely on the net or other blogs. We're more interested in original, practitioner-focused content that takes a deeper dive into programming-centric concepts.
But in order to approve the topic it has to serve value to the larger developer community at large. Please feel free to suggest an alternate topic to explore. 🚀
https://www.google.com/search?q=splash+screen+with+animation+transitions+in+android+studio&rlz=1C1CHBF_enUS891US891&sourceid=chrome&ie=UTF-8


Hi, I have a user reporting a 15% performance regression in gocryptfs ( https://github.com/rfjakob/gocryptfs/issues/828 ) due to change https://github.com/golang/go/issues/63871 .
The CPU is Intel(R) Core(TM) i3-2100 CPU @ 3.10GHz so I guess too old for AVX but it does have PSHUFB.
Can PSHUFB be detected at runtime instead?
Reproducer is the built-in gocryptfs speed test:
./gocryptfs -speed

What did you see happen?
With go 1.22: Slow XChaCha20-Poly1305
gocryptfs v2.4.0-15-g9958b63; go-fuse [vendored]; 2024-03-03 go1.22.0 linux/amd64
cpu: Intel(R) Core(TM) i3-2100 CPU @ 3.10GHz; no AES acceleration
[...]
XChaCha20-Poly1305-Go            616.01 MB/s    (selected in auto mode)

What did you expect to see?
With go 1.21: Fast XChaCha20-Poly1305
gocryptfs v2.4.0; go-fuse [vendored]; 2023-10-12 go1.21.3 linux/amd64
cpu: Intel(R) Core(TM) i3-2100 CPU @ 3.10GHz; no AES acceleration
[...]
XChaCha20-Poly1305-Go            728.97 MB/s    (selected in auto mode)

That processor is 13 years old now.
We could make the check dynamic if not building with GOAMD64=v2 or better. The challenge is how do we test that code? I suspect we don't have any processors without PSHUFB support in our trybot fleet.
GODEBUG=cpu.X=off for the right value of X might be enough, not sure.

There is more discussion going on at https://github.com/golang/go/issues/63872 to discuss how to test GOAMD64=v1 features in the builder fleet.

I suspect we don't have any processors without PSHUFB support in our trybot fleet.

The CPU in question does have PSHUFB. Looking at https://en.wikipedia.org/wiki/X86-64#Microarchitecture_levels, this makes it a x86-64-v2 CPU.
So the question is more about testing on x86-64-v2. I guess the trybot fleet is x86-64-v3 and later.


Password Hashing

Im having to integrate a application that is written in python with one that uses symphony 2 and need to know how symphony2 hashes its passwords?

It's pbkdf2 https://github.com/symphonycms/symphony-2/blob/master/symphony/lib/toolkit/cryptography/class.pbkdf2.php


the new "Cloud Run" fields in whereami show up no matter where you run whereami

GKE:
$ curl <IP_ADDRESS>
{
  "cloud_run_instance_id":<PHONE_NUMBER>415764399,
  "cloud_run_service_account": "am-arg-01.svc.id.goog",
  "cluster_name": "gke-us-central1-c-01",
  "host_header": "<IP_ADDRESS>",
  "metadata": "frontend",
  "node_name": "gke-gke-us-central1-c-01-pool-1-2923881e-34b0",
  "pod_ip": "<IP_ADDRESS>",
  "pod_name": "whereami-5666bfd97d-glspj",
  "pod_name_emoji": "👨🏼❤👨🏿",
  "pod_namespace": "whereami",
  "pod_service_account": "whereami-ksa",
  "project_id": "am-arg-01",
  "timestamp": "2023-01-11T15:13:41",
  "zone": "us-central1-c"
}

local (on Cloud Workstation):
$ curl http://<IP_ADDRESS>:8080
{
    "pod_name": "workstation-lcrqz0e1",
    "pod_name_emoji": "🈸",
    "timestamp": "2023-01-11T15:16:11",
    "project_id": "spanner-reporter-01",
    "zone": "us-central1-a",
    "cloud_run_instance_id":<PHONE_NUMBER>864006658
}

Need to add some additional logic or filtering.

https://github.com/GoogleCloudPlatform/kubernetes-engine-samples/pull/453


[SPARK-37147][SS] MetricsReporter producing NullPointerException when element 'triggerExecution' not present in Map[]

What changes were proposed in this pull request?

Bug Fix.
The problematic code is in MetricsReporter:
registerGauge("latency", _.durationMs.get("triggerExecution").longValue(), 0L)
Instead of .getOrDefault(...).longValue() it uses .get("triggerExecution").longValue() which can return a null pointer exception if "triggerExecution" is not in the durationMs map.
Solution: use .getOrDefault when accessing a map.
Why are the changes needed?

When MetricsReporter.scala registers a Gauge it occasionally returns a NPE. This breaks reporting custom metrics via Dropwizard and logs multiple times a stacktrace. It usually happens when using StructuredStreaming on a slow data source but I'm not able to reliably reproduce it every time.
Does this PR introduce any user-facing change?

Yes - fixes occasional failures when reporting metrics with Dropwizard
How was this patch tested?

Added a unit-test.

Can one of the admins verify this patch?

Thanks @gitplaneta for your contribution! I merged this to master/3.2 branches.

+1, LGTM.


Segmentation fault executing Kernel.system("ls -lha") inside Logstash

A user of Logstash, implementing a simple pipeline with some Ruby code to execute external process, reaches a segmentation fault.
Error
Executing the pipeline:
input {generator{}}
filter {ruby {code => 'status = Kernel.system("ls -lha")'} }
output { stdout {} }

the JVM crashes with:
# A fatal error has been detected by the Java Runtime Environment:
#
#  SIGSEGV (0xb) at pc=0x00007fbca5474344, pid=1167683, tid=1168059
#
# JRE version: OpenJDK Runtime Environment AdoptOpenJDK (11.0.10+9) (build 11.0.10+9)
# Java VM: OpenJDK 64-Bit Server VM AdoptOpenJDK (11.0.10+9, mixed mode, tiered, concurrent mark sweep gc, linux-amd64)
# Problematic frame:
# C  [libc.so.6+0xeb344]  __spawnix+0x64

happening during jffi call:
Java frames: (J=compiled Java code, j=interpreted, Vv=VM code)
J 18876  com.kenai.jffi.Foreign.invokeN6O2(JJJJJJJJLjava/lang/Object;IIILjava/lang/Object;III)J (0 bytes) @ 0x00007fbc8cc1b110 [0x00007fbc8cc1b040+0x00000000000000d0]
J 21131 c2 com.kenai.jffi.Invoker.invokeN6(Lcom/kenai/jffi/CallContext;JJJJJJJILjava/lang/Object;Lcom/kenai/jffi/ObjectParameterStrategy;Lcom/kenai/jffi/ObjectParameterInfo;Ljava/lang/Object;Lcom/kenai/jffi/ObjectParameterStrategy;Lcom/kenai/jffi/ObjectParameterInfo;Ljava/lang/Object;Lcom/kenai/jffi/ObjectParameterStrategy;Lcom/kenai/jffi/ObjectParameterInfo;Ljava/lang/Object;Lcom/kenai/jffi/ObjectParameterStrategy;Lcom/kenai/jffi/ObjectParameterInfo;Ljava/lang/Object;Lcom/kenai/jffi/ObjectParameterStrategy;Lcom/kenai/jffi/ObjectParameterInfo;Ljava/lang/Object;Lcom/kenai/jffi/ObjectParameterStrategy;Lcom/kenai/jffi/ObjectParameterInfo;)J (1392 bytes) @ 0x00007fbc8d0a76cc [0x00007fbc8d0a74e0+0x00000000000001ec]
J 21130 c2 jnr.posix.LinuxLibC$jnr$ffi$0.posix_spawnp(Ljnr/ffi/byref/ByReference;Ljava/lang/CharSequence;Ljnr/ffi/Pointer;Ljnr/ffi/Pointer;[Ljava/lang/CharSequence;[Ljava/lang/CharSequence;)I (356 bytes) @ 0x00007fbc8d0a96f8 [0x00007fbc8d0a8b60+0x0000000000000b98]
J 26944 c2 org.jruby.RubyKernel.system(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;[Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject; (239 bytes) @ 0x00007fbc8e06e750 [0x00007fbc8e06d6e0+0x0000000000001070]

I tried to reproduce on my local host without being successful.
Environment:

JRuby version:

bin $ ruby -version
jruby <IP_ADDRESS> (2.5.8) 2021-06-15 55810c552b OpenJDK 64-Bit Server VM 11.0.11+9 on 11.0.11+9 +jit [linux-x86_64]

JVM:

openjdk version "11.0.10" 2021-01-19
OpenJDK Runtime Environment AdoptOpenJDK (build 11.0.10+9)
OpenJDK 64-Bit Server VM AdoptOpenJDK (build 11.0.10+9, mixed mode)

glibc:

ldd (GNU libc) 2.28
Copyright (C) 2018 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
Written by Roland McGrath and Ulrich Drepper.

OS and Kernel:

Linux version 4.18.0-240.1.1.el8_3.x86_64<EMAIL_ADDRESS>(gcc version 8.3.1 20191121 (Red Hat 8.3.1-5) (GCC)) #1 SMP Fri Oct 16 13:36:46 EDT 2020

CPU:

vendor_id : GenuineIntel
cpu family : 6
model name : Intel(R) Xeon(R) Gold 6246 CPU @ 3.30GHz

I opened this issue here since it seems JFFI related, however let me know if you think that other repositories are best matched for this.

@andsel I think this would be better as a JRuby issue so I will transfer it there. This is unlikely to be a bug in jffi. Could be something in jnr-ffi (still unlikely), jnr-posix (more likely), or JRuby's use of jnr-posix's posix_spawn binding (most likely).
If it is possible to reproduce outside of Logstash that would be immensely helpful, or if you can provide a simple standalone example that also crashes.

Could you refile this as a jruby/jruby issue please?

Sure!

If it is possible to reproduce outside of Logstash that would be immensely helpful, or if you can provide a simple standalone example that also crashes.

I asked the user to execute bin/ruby -e "while 1==1 do Kernel.system('ls -lha >> /dev/null') end" with the JRuby shipped with Logstash, but after 48h run it didn't happen.
It could be something related to the way Logstash embeds JRuby, so maybe could be along the lines of embedded vs not embedded, so you could suggest a thing that I should pay attention would be great.

@andsel Yeah that's what I was afraid of. This will be tricky to diagnose without a reproduction. The Kernel.system call you show is pretty basic and clearly working for most JRuby users, so there's something peculiar happening here.
Once you open the new issue I will try to suggest some things to look into.

@headius Opened at https://github.com/jruby/jruby/issues/6948


Set model tag

i'm having some local setup issue that's breaking unit test, putting this up for you to take look. will fix it tmr

@Renkai do you have bandwidth to tackle this one next?

@changhiskhan I think I would have, but the description on this PR is too simplified that I can't get the complete goal of it. Maybe we could discuss it in detail in the next community meeting.

take over this PR


Select and rememeber language mode

Once I set language mode for the file (in my case VS Code does not understand one file is ASP), VS Code should remember this selection next time I open the project. Since editor cannot do it automatically, each time I open a project with ASP files I have to manually set language mode over and over again.

This is #207, it only occurs when you have no folder opened.

Hi,
I am sorry, I was supposed to click "Create file association for '.aspx'" file when assiging language mode. Please, close this


Add "hacktoberfest" as a topic to the repo so it can be considered as participating

Right now the topics for this repo are tutorial, hacktoberfest-starter and hacktoberfest2021 but for hacktoberfest to consider it a legitimate repository it should have a topic named "hacktoberfest".
This topic -> https://github.com/topics/hacktoberfest

Have added.


[Fix]  Fix label smoothing bug.

Fix bug when apply label smoothing. https://github.com/athena-team/athena/issues/322

@Some-random please help check

@Some-random please help check

Sure


Copying projects is broken badly

Description
When duplicating a project with multiple files, the content of the files is juggled around and each files gets some other files content.
Reproduction URL
No response
Browsers
No response
OS
No response

Fixed.


Updating show method for RB Item results with some security.

Refs #5929
What's this PR do?
While the index collection of RB Items from the API is now doing a better job of securing content that should not be accessible to anonymous API requests, the show view for a single RB Item was not. This update adds a method to check whether an RB Item returned via requests to /reportback-items should be accessible or not. If the anonymous user does not have access to flagged, excluded, and pending items that are specifically requested by their ID, then an exception is thrown and caught via the normal process within the API request cycle.
Where should the reviewer start?
In the one file changed, ** ReportbackItemTransformer.php**.
Any background context you want to provide?
Not 100% sure on the naming of method in this PR or in #5953, but good enough for now! :sheep:
What are the relevant tickets?
#5929

@DFurnes @angaither
cc: @jonuy @aaronschachter

:+1: :ship:


Use ruboty even more than 1.1.3

Found following error in Ruby 2.1 and 2.2:
$ bundle exec ruboty
/Users/hfm/program/exam-ruboty-rss/vendor/bundle/ruby/2.2.0/gems/ruboty-1.0.4/lib/ruboty/command_builder.rb:22:in `options': undefined method `parse!' for Slop:Module (NoMethodError)
        from /Users/hfm/program/exam-ruboty-rss/vendor/bundle/ruby/2.2.0/gems/mem-0.1.5/lib/mem.rb:44:in `block in memoize'
        from /Users/hfm/program/exam-ruboty-rss/vendor/bundle/ruby/2.2.0/gems/ruboty-1.0.4/lib/ruboty/command_builder.rb:18:in `command_class'
        from /Users/hfm/program/exam-ruboty-rss/vendor/bundle/ruby/2.2.0/gems/ruboty-1.0.4/lib/ruboty/command_builder.rb:12:in `build'
        from /Users/hfm/program/exam-ruboty-rss/vendor/bundle/ruby/2.2.0/gems/ruboty-1.0.4/bin/ruboty:6:in `<top (required)>'
        from /Users/hfm/program/exam-ruboty-rss/vendor/bundle/ruby/2.2.0/bin/ruboty:23:in `load'
        from /Users/hfm/program/exam-ruboty-rss/vendor/bundle/ruby/2.2.0/bin/ruboty:23:in `<main>'

Ruboty more than v1.1.3 solves this error:

Error with slop 4.0.0 https://github.com/r7kamura/ruboty/issues/9

Thank you!


Request: Support for long distance matching

Hi,
is it possible to configure usage of long distance matching for compression?
I could find it in file https://github.com/oleg-st/ZstdSharp/blob/7dfb8b45862d4eac067a5d6f99b09a23ed521e90/src/ZstdSharp/Unsafe/ZstdLdm.cs#L195 but I don't see how I can configure it.
Is there something I am missing out or is it currently not possible to configure for long distance matching?

Hi,
you can use compressor.SetParameter(ZSTD_cParameter.ZSTD_c_enableLongDistanceMatching, 1);

That works, thank you very much, is this enabling long distance matching or is it also possible to set a windows log?
Reference: https://github.com/facebook/zstd/tree/dev/programs

--long[=#]: enable long distance matching with given window log (default: 27)

You can use parameters from here:
https://facebook.github.io/zstd/zstd_manual.html#Chapter5
ZSTD_c_enableLongDistanceMatching, ZSTD_c_windowLog etc

ZSTD_c_enableLongDistanceMatching=160, /* Enable long distance matching.
This parameter is designed to improve compression ratio
for large inputs, by finding large matches at long distance.
It increases memory usage and window size.
Note: enabling this parameter increases default ZSTD_c_windowLog to 128 MB
except when expressly set to a different value.
Note: will be enabled by default if ZSTD_c_windowLog >= 128 MB and
compression strategy >= ZSTD_btopt (== compression level 16+) */

Thank you very much!


Introduce ActiveMove; make Template/Move/Ability/Item read-only

The types Template, Move, Ability, and Item are now read-only. This should guard against accidental writing to types that shouldn't be written to.
A new type, ActiveMove, has been introduced. Like it sounds, it's used for moves that are currently actively being used. A lot of attributes that are only relevant to active moves, such as hasBounced, are now only available on ActiveMove, not on Move. ActiveMoves are mutable, unlike Moves.
Dex.getMoveCopy has been renamed Dex.getActiveMove, to better reflect its role. .isCopy has been deprecated, and distinguishing Moves from ActiveMoves is now done by typeof move.hit === 'number' where necessary.
ActiveMoves now internally track which hit of a multihit move they're on, in move.hit, so move.hit doesn't need to be manually incremented by Triple Kick and Parental Bond anymore.
move.hasParentalBond has been replaced by a more generic move.multihitType.

Pullreqqing so everyone knows about the new ActiveMove type, and when to use it in place of Move.

Also, I notice people using multiple Object.assigns to clone templates for modification. While that is slightly more optimal, Dex.deepClone exists and is a lot safer. I've moved them over now that TypeScript complains about Object.assign.


usage of asset_filter breaks target

With the following simple config file
[global]
  target = "~/bin"
  upgrade_only = true

the command eget neovim/neovim downloads the appimage and places it in ~/bin.
But when I add
["neovim/neovim"]
   asset_filters = "nvim.appimage"

the download ends up in ./ (i.e. the current directory).

It looks like this might be a bug related to the expansion of the tilde (~). Can you verify that it works correctly if you use an absolute pathname in the [global] section for target?
i.e.,
[global]
  target = "/home/someuser/bin"
  upgrade_only = true

No, that doesn't help.
But testing that, it seems, that adding asset_filters = "nvim.appimage" simply (and silently!) breaks reading the global section.

@leapfog Does using the array syntax fix this? Just trying to narrow down the possibilities here.
["neovim/neovim"]
   asset_filters = [ "nvim.appimage" ]

I think this is an effect of what I just reported in #84.
When a configuration file is malformed, eget simply ignores it and uses defaults if no other valid config files are found.
The default for target is to save the binaries in the current directory.

I believe this is fixed by #85.


VkLayer_core_validation hangs when creating image view for swapchain.

I'm getting this exception inside VkLayer_core_validation.dll when calling vkCreateImageView.
Exception thrown at 0x00007FFD8D5477A6 (VkLayer_core_validation.dll): 0xC0000005:
Access violation reading location 0x00000000000000F8.

What I'm doing

Create the swapchain: vkCreateSwapchainKHR
Get the images: vkGetSwapchainImagesKHR
Create an image view for the first image: vkCreateImageView

I tried running with a locally built validation layer to debug inside the dll and found the reason for the error.
In buffer_validation.cpp inside PostCallRecordCreateImageView, image_state is dereferenced but is null:
sub_res_range.levelCount = ResolveRemainingLevels(&sub_res_range, image_state->createInfo.mipLevels);

Stack
VkLayer_core_validation.dll!PostCallRecordCreateImageView(core_validation::layer_data * device_data, const VkImageViewCreateInfo * create_info, VkImageView_T * view) Line 3507	C++	Symbols loaded.
VkLayer_core_validation.dll!core_validation::CreateImageView(VkDevice_T * device, const VkImageViewCreateInfo * pCreateInfo, const VkAllocationCallbacks * pAllocator, VkImageView_T * * pView) Line 4476	C++	Symbols loaded.
VkLayer_object_tracker.dll!00007ffd8d1940b3()	Unknown	No symbols loaded.
VkLayer_parameter_validation.dll!00007ffd8cef7c43()	Unknown	No symbols loaded.
VkLayer_threading.dll!00007ffd9e931bcb()	Unknown	No symbols loaded.

Environment

Windows 10 64bit
Vulkan SDK <IP_ADDRESS>
AMD Ryzen 7 1800X
AMD Radeon RX Vega 64

No validation messages before the crash.

Perhaps you can include your source code, or make modifications to cube that reproduce the issue?

I'll update once I get back home.

@mark-lunarg This is a stripped version of my code, hangs in the same way (there are a couple of validation warnings since I removed a few checks)
https://gist.github.com/kikijiki/cf9c843b4653a63d96b528863af63370
Maybe I'm doing something wrong? I wouldn't be surprised 😅

I don't know why but this is what is happening

vkCreateSwapchainKHR

PostCallRecordGetSwapchainImagesKHR gets called with pSwapchainImages == { 3, 4, 5 }
swapchain_state->images is empty so it gets filled

vkGetSwapchainImagesKHR
PostCallRecordGetSwapchainImagesKHR gets called with pSwapchainImages == { 6, 7, 8 }
swapchain_state->images is already set, { 6, 7, 8 } are ignored
vkCreateImageView

PostCallRecordCreateImageView tries to get 6 wich is not in the image map, thus getting a nullptr

I wasn't able to reproduce using your code (Win10 64bit, 32/64-bit builds, Vulkan SDK <IP_ADDRESS>, MSVC Community 17, GeForce 388.59).
Which compiler are you using?

@cforfang I'm using Visual Studio 15 2017, toolset is  v141 (x64).
I tried creating a new solution from scratch and it behaves the same for me: vulkan_test.zip

Driver info:
Radeon Software Version - 18.1.1
Radeon Software Edition - Adrenalin
Graphics Chipset - Radeon RX Vega
High Bandwidth Cache Size - 8176 MB
High Bandwidth Cache Type - HBM2
Core Clock - 1630 MHz
Windows Version - Windows 10 (64 bit)
System Memory - 16 GB
CPU Type - AMD Ryzen 7 1800X Eight-Core Processor

I tried your solution on my laptop with Intel drivers this time and no crash there also. :-/ Got the following validation warnings, which are all expected (but unrelated) I think:
[vkDbgReport][DL] vkCreateDevice: pCreateInfo->pQueueCreateInfos[0].queueFamilyIndex (= 0) is not less than any previously obtained pQueueFamilyPropertyCount from vkGetPhysicalDeviceQueueFamilyProperties (the pQueueFamilyPropertyCount was never obtained). The spec valid usage text states 'queueFamilyIndex must be less than pQueueFamilyPropertyCount returned by vkGetPhysicalDeviceQueueFamilyProperties' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkDeviceQueueCreateInfo-queueFamilyIndex-00381)

[vkDbgReport][DS] vkCreateSwapChainKHR(): pCreateInfo->surface is not known at this time to be supported for presentation by this device. The vkGetPhysicalDeviceSurfaceSupportKHR() must be called beforehand, and it must return VK_TRUE support with this surface for at least one queue family of this device. The spec valid usage text states 'surface must be a surface that is supported by the device as determined using vkGetPhysicalDeviceSurfaceSupportKHR' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkSwapchainCreateInfoKHR-surface-01270)

[vkDbgReport][DS] vkCreateSwapChainKHR() called before calling vkGetPhysicalDeviceSurfaceFormatsKHR().

[vkDbgReport][DS] vkCreateSwapChainKHR() called before calling vkGetPhysicalDeviceSurfacePresentModesKHR().

$(VULKAN_SDK) is C:\VulkanSDK\<IP_ADDRESS>, and layers are downloaded from https://vulkan.lunarg.com/sdk/home#windows (ie. I didn't build them myself).
Intel HD Graphics 620, driver version <IP_ADDRESS>49
Seems like we're using the same MSVC version.

PostCallRecordGetSwapchainImagesKHR gets called with pSwapchainImages == { 6, 7, 8 }

I tried stepping into the layers, and this never happens to me -- it's always 3, 4, 5. Could it be a driver bug -- are you on the latest drivers? Did you use the SDK from the LunarG website or build yourself?

I do not get a crash either.
Try recording a VK_LAYER_LUNARG_api_dump log.
You should be checking all the VkResults systematically to know if the preceeding commands succeeded.

Hmm, I have literally no idea what's going on.
First I tried adding the result checks to all Vulkan calls, but they were fine.
Then I added the dump layer, and now the error does not happen anymore.
Both the test solution and the original one work fine, even if I remove the layer again.
I even tried rebooting but I cannot reproduce anymore.

Anyway, having null checks in PostCallRecordCreateImageView might help debugging when you try to create an imageview from an invalid image handle.

@kikijiki There generally are null checks.
Yea, no, it is weirdly implemented. Ideally it should not access image state at all when creating the new image view state.

@kikijiki, we rely on the object_tracker layer to provide information to the application regarding invalid handles.  Big thanks to @cforfang and @krOoze for taking this on!  Very much appreciated.

I managed to get the same error, in my case it was caused by running the program MSIAfterburner when starting the application.

@moertelrupp Now that you mention it, I had afterburner installed! And I uninstalled some days ago, maybe that's the reason I could not reproduce the error anymore.

@mark-lunarg I confirmed that this was caused by Afterburner. Just having it installed is fine, but enabling the on-screen display causes the validation layer to crash as described.


Animation look at

There is always the same Error with:
Here the win animation as an example
Head.look_at() missing 2 required positional arguments: 'y' and 'z'
https://github.com/alpakadev/robot-ludens/blob/171da8b21276a476c0db8bd5b995bf456a5faf97/PythonScripts/Movement/Animations/Win.py#L13-L15
Should be more like this:
https://github.com/alpakadev/robot-ludens/blob/171da8b21276a476c0db8bd5b995bf456a5faf97/PythonScripts/Movement/MoveImpl.py#L221-L223

should be fixed now, imports of do_head_move or move_head would lead to error due to circular import. Thus, back to using reachy.head.look_at()


chore(main): release snaefell-ui 1.1.0

:robot: I have created a release beep boop
1.1.0 (2024-06-18)
Features

nfts: snaefell ui fixes (#17391) (14a9939)
nfts: snaefell-ui pre-mint disclaimer (#17484) (99731fa)
nfts: snaefell-v2 contract, ui adaptations (#17614) (728657f)

Bug Fixes

nfts: snaefell day1 fixes (#17420) (34f1ae2)
nfts: snaefell fixes, v3 (#17401) (7f40e3a)
nfts: snaefell ui chains modal and counters (#17395) (91d1a34)
nfts: snaefell ui fixes v4 (#17414) (ee9b711)
nfts: snaefell-ui figma implementations (#17400) (cca2358)
nfts: snaefell-ui fix date (#17425) (5bb8bf4)
nfts: snaefell-ui fixes (#17398) (53b74f2)
nfts: snaefell-ui scroll fixes (#17402) (a72e187)
nfts: snaefell-ui, show success panel after user has minted permanently (#17447) (efb7610)

This PR was generated with Release Please. See documentation.

:robot: Created releases:

snaefell-ui-v1.1.0
:sunflower:


feat(filewatcher,secrets): Support for  parsing  Vault CSI Directories

Did a rework of this PR. instead of adding a new object ive just allowed filewatcher to handle directories as well
This feat gives baseplate-go a feature that has been in baseplate-py for a while

closing in favor of https://github.com/reddit/baseplate.go/pull/565


Error fetching charge_mode data

Configuration
All via HACS with the latest update.
Describe the bug
I have a 2014 Renault Zoe, the charge mode entity is unavailable. Even after deactivating it, it still shows this error in the logs.
Debug log
This error originated from a custom integration.

Logger: custom_components.renault.renault_vehicle
Source: helpers/update_coordinator.py:219
Integration: Renault (documentation, issues)
First occurred: 12:40:57 AM (1 occurrences)
Last logged: 12:40:57 AM

Error fetching VF1123441234 charge_mode data: This endpoint has been disabled: ('err.func.403', 'Access is denied for this resource')

I got this warning a bit after:
This error originated from a custom integration.

Logger: custom_components.renault.renault_vehicle
Source: custom_components/renault/renault_vehicle.py:130
Integration: Renault (documentation, issues)
First occurred: 12:40:57 AM (1 occurrences)
Last logged: 12:40:57 AM

`Access Denied` on HA coordinator charge_mode was not caught by `endpoint_available` method. It may be useful to open an issue on https://github.com/hacf-fr/renault-api/issues

⚠ The Renault integration was originally merged into core in 2021.8 and finalised in 2021.10. The use of this custom component has been deprecated since then and should no longer be used

Note: you should raise an issue on https://github.com/hacf-fr/renault-api instead


A little bit of lag/delay when gettiing data?

Esp32 1mbit with this library
   if (ESP32CAN_OK == ESP32Can.CANReadFrame(&rx_frame))     { /* only print when CAN message is received*/      processdata(rx_frame);     }
Seems as though its not as responsive as the Wagner version.  Wagner vers doesnt do 1mbit but it does 500k. 500k is really fast but this one reading at 1mbit seems like there is a small delay somewhere?

Anyone?  Definitely some lag/delay.  Is there a buffer or something that can be increased to address?


Add possibility to set a webp decoding function

This is useful in Windows to let the application set this function to decode webp data present when some applications provide it when dropping some element (like Chrome does when dragging&dropping an image from a result page).

@martincapello just merged, remember to create the bug/feature branches in your own fork (not in aseprite/laf or igarastudio/laf).


data serialize bug！

if  a server want to GET a resource which is  integer type or float .etc and Accept type is OPAQUE,  lwm2m_data_serialize function will malloc memory of undifined size and copy undefined value while dataP->type is LWM2M_TYPE_INTEGER.see below:
 switch (*formatP)
    {
    case LWM2M_CONTENT_TEXT:
        return prv_textSerialize(dataP, bufferP);

    case LWM2M_CONTENT_OPAQUE:
        *bufferP = (uint8_t *)lwm2m_malloc(dataP->value.asBuffer.length);
        if (*bufferP == NULL) return -1;
        memcpy(*bufferP, dataP->value.asBuffer.buffer, dataP->value.asBuffer.length);
        return (int)dataP->value.asBuffer.length;

Thank you for reporting this.
Please see #321 as a proposed fix.
Regards,

Is there a need to write a function prv_opaqueSerialize just like prv_textSerialize? Maybe it is friendly to users to write object related functions. However, It's also OK of this fix.

if (*formatP == LWM2M_TYPE_OPAQUE
     && dataP->type != LWM2M_TYPE_OPAQUE)
    {
        LOG("Opaque format is reserved to opaque resources.");
        return -1;
    }

Is LWM2M_TYPE_OPAQUE should be LWM2M_CONTENT_OPAQUE?

Is there any need to write a function prv_opaqueSerialize just like prv_textSerialize?

Ï fixed the bad enum.
Currently there are no need for a prv_opaqueSerialize function as only opaque data can be encoded as opaque. This may change with future versions of LwM2M.
Regards,

Fixed by #321


How to install from NPM

How to install this plugin from NPM ?
How to add this plugin to leaflet imported from NPM?

For those who come across this later, it's leaflet-draw.


Does this work in 2019.3? I get pink texture

Does this work in 2019.3?

Also, what are those 8 Ignore Shaders By Name you included in  ShaderStripperVariantCollection

What does this warning mean?
Sigtrap.Editors.ShaderStripper.ShaderStripperEditor must be instantiated using the ScriptableObject.CreateInstance method instead of new ShaderStripperEditor.
UnityEditor.EditorWindow:.ctor()
Sigtrap.Editors.ShaderStripper.ShaderStripperEditor:.ctor() (at Assets/Editor/ShaderStripperEditor.cs:42)
UnityEditor.EditorApplication:Internal_CallGlobalEventHandler()

It does work in 2019.3 - however ShaderStripperVariantCollection is unfortunately very hard to use correctly. Unity doesn't seem to actually include all necessary variants in the collection files it generates, so this stripper will strip far more than you actually intend. I recommend only using it for debug purposes, e.g. if you're testing a specific set of shaders and want to keep build time to an absolute minimum.
I'm not sure what you mean by the 8 ignore shaders by name. If "8" is a typo, and you're asking how Ignore Shaders By Name works, it just doesn't strip any shaders matching those patterns even if they're not in the collection(s).
That warning does pop up sometimes and I'm not sure why, but it doesn't seem to cause any problems for me.


Galaxy model taking over point source in a galaxy+point source blend

I've been coming across some tricky issues when trying to deblend a galaxy with a bright point source and wanted to crowd source some ideas. This is the scarlet1 model, which look pretty good when rendered but has more noise than usual around the point source in the residuals, which presumably arises because it's so bright.

When I model this in Scarlet2, source 0 (a normal source with the HSC prior) tries to model the point source, while source 1 (a point source) has its best-fit flux set to 0. Then the actual galaxy is poorly modeled:

I tried making a smaller box size just to see what happens when the galaxy doesn’t completely overlap the point source, and things go terribly wrong in a way that I can’t quite understand:

Is there a good way to make sure the galaxy model doesn't use its flexibility to model the bright point source? There is no variability in this case - just 3 images in different bands.

Hi Charlotte, I have no experimented much with point sources but am no looking at some ground trotting for how well scarlet 2 performs in highly blended environments.  I did somewhat of a recreation of this setup, here I have a single very bright (mag ~23) central source with other sources well inside its flux. I found the results are quite sensitive to the fitting parameters, and in the case of a totally hidden blend, the positive constant is needed for decent behavior right now, while we are working with flat, potentially non-ideal step sizes.
Here is an example, with positive constraints and HSC prior

Now same example no constraints

This really, is down to convergence issues, with heavily blended images the step sizes need to reduce otherwise the convergence will just fall off a cliff and we begin to go completely outside the domain of the prior. The positive constraints seem to significantly help stabilize this for now.
However, if you are using the positive constraints and still getting this, then an option is to really start turning down the step size (maybe 1e-4 or smaller even) and see what happens?

Also, if possible maybe try avoiding point sources totally and see how scarlet2 does

Step sizes could be an issue here, for sure.
Looking at another plot Charlotte showed, it looks like there could also be a sky subtraction issue because the residuals show the outline of source 0. If that's the case, convergence will be particularly hard for all sources.
This might argue for adding a FlatSource component into the mix, which basically has
def __call__(self):
    return jnp.ones(self.bbox.shape)[None,:,:] * self.spectrum[:, None, None]

Relative step sizes and the updated temperature change in #23 potentially fix this, let me know if issues still persist.

@charlotteaward Can this issue be closed?

Yes, it's no longer a problem!

Then close it, please

Resolved with relative step sizes.


Python SDK for Azure Advisor Alerts

Is your feature request related to a problem? Please describe.
A clear and concise description of what the problem is. Ex. I'm always frustrated when [...]
Describe the solution you'd like
It would be much easier and better if python SDK is supported for Azure Advisor Alerts as It is difficult to create and maintain Advisor alerts manually when there are multiple subscriptions.
Describe alternatives you've considered
I wasn't able to find any SDK for Advisor alerts and only alternate as of now is creating in portal.
Additional context*
Add any other context or screenshots about the feature request here.

@spoloj apologies for the delay, Azure Advisor alerts are basically activity log alerts. https://github.com/Azure-Samples/azure-samples-python-management/blob/master/samples/monitor/manage_activity_log_alert.py has a Python sample for creating activity log alerts. And https://docs.microsoft.com/en-us/azure/advisor/advisor-alerts-arm?tabs=CLI has details on the template you can use to set up Advisor alerts.


ShareResource should be a dummy class and should be in the root namespace

Hello, it took me few hours to realize that if dummy class ShareResource isn't in the root namespace as startup class then localization isn't working. Please put it in docs. Data Annotation -> Using one resource string for multiple classes.
Thanks.

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

ID: d1833676-ff1b-c587-cc9c-81afffa8ef68
Version Independent ID: ad989395-3f49-4d55-521e-cf6fe56281ee
Content: Globalization and localization in ASP.NET Core
Content Source: aspnetcore/fundamentals/localization.md
Product: asp.net-core
GitHub Login: @Rick-Anderson
Microsoft Alias: riande

Thanks for the comment. We'll get to this in the next doc sweep.

@szykov  it's mentioned at https://docs.microsoft.com/en-us/aspnet/core/fundamentals/localization?view=aspnetcore-2.1#resource-file-naming

@Rick-Anderson Sorry, my bad. You're right. By mistake, I wasn't expecting that for my dummy class same file naming rules applies. Now it makes sense. Thanks.

Another way to solve this issue is:
.AddDataAnnotationsLocalization(options =>
{
options.DataAnnotationLocalizerProvider = (type, factory) =>
{
var assemblyName = new AssemblyName(typeof(SharedResource).GetTypeInfo().Assembly.FullName);
return factory.Create("SharedResource", assemblyName.Name);
};
});
Source: https://damienbod.com/2017/11/01/shared-localization-in-asp-net-core-mvc/

@OrihuelaConde nice catch, thanks.


Reworked links.md page

I have reworked the links document a bit:

Added several packages with links to tutorials, galleries, and videos if available
Moved a few of the items in the Introductory/Basics section to the Packages section.
Added several courses/multi-lesson tutorials to the Lessons and Courses section.

This is just a starting point in terms of content for these sections; just wanted to get some feedback first before proceeding.
One challenge I see is to keep this document from getting too large and unwieldy.

Looks great to me -- again seems like since my review wasn't requested I cannot leave a review due to permissions. But it builds fine and everything looks clean. The links I tried work.

Looks great to me -- again seems like since my review wasn't requested I cannot leave a review due to permissions. But it builds fine and everything looks clean. The links I tried work.

@ktyle:  Is this ready to merge?

@ktyle:  Is this ready to merge?

@kmpaul Ready to merge!

@kmpaul Ready to merge!

Thanks, @ktyle!

Thanks, @ktyle!


The Azure AD attached table does not auto display as broken if removing its associated azure account

Storage Explorer Version: 1.24.0-dev
Build Number: 20220315.1
Branch: main
Platform/OS: Windows 10/Linux Ubuntu 20.04/MacOS Monterey 12.1 (Apple M1 Pro)
Architecture ia32\x64
How Found: Exploratory testing
Regression From: Not a regression
Steps to Reproduce

Expand one storage account -> Tables.
Create a table -> Attach the table via Azure AD.
Remove its associated azure account.
Check whether the Azure AD attached table auto displays as broken.

Expected Experience
The Azure AD attached table doesn't auto display as broken.
Actual Experience
The Azure AD attached table auto displays as broken.
Additional Context

The Azure AD attached table displays as broken after manually refreshing.
It needs to manually refresh to make the broken Azure AD attached table display as normal after signing-in back the Azure Account.

Don't worry about this if it also reproduces with other services. I don't think we added any sort of auto refreshing to attached nodes after removing accounts.

@v-xianya As per Matthew's comment, can you determine whether this reproduces for blobs, files, or queues?

@v-xianya I confirmed that blobs and queues do automatically update, so tables need to as well.

Verified this issue on the build main/20220324.2. Fixed.


shows this error?

app_starter -n toto -o io.example -t https://github.com/ThomasEcalle/flappy_template
[INFO] Let's create toto application !
[INFO] Creating flutter project using your current flutter version...
[INFO] Retrieving your template from https://github.com/ThomasEcalle/flappy_template...
[ERROR] Error creating project : ProcessException: The system cannot find the file specified.
Command: rm -rf C:\Users\faiz/toto/lib
Unhandled exception:
ProcessException: The system cannot find the file specified.
Command: rm -rf C:\Users\faiz/toto
#0      _ProcessImpl._runAndWait (dart:io-patch/process_patch.dart:476:7)
#1      _runNonInteractiveProcessSync (dart:io-patch/process_patch.dart:619:18)
#2      Process.runSync (dart:io-patch/process_patch.dart:66:12)
#3      CommandRunner.create (package:app_starter/src/command_runner.dart:204:15)

No active package app_starter.

Hello !
Could you please show the result of the commande flutter doctor -v in order to have a little bit of context about your environment ?
Have you well launched the command flutter pub global activate app_starter in order to install the package before using it ?


Should MarkerViewManager implement a more 'reactive' camera listener ?

Hello,
The MarkerViewManager implements the MapView.OnCameraDidChangeListener so updating a MarkerView is only updated after the camera did change, and not while the camera is changing.
The consequence of that is some sluggish MarkerView re-positioning after a camera move, as shown here:

I tried replacing MapView.OnCameraDidChangeListener by MapView.OnCameraIsChangeingListener and had no more updates ?!
I then tried using MapboxMap.OnCameraMoveListener with better results:

https://imgur.com/ZNweZfQ
GPU usage is a tad high, that's why I'm not sending a PR.
Should MarkerViewManager implements a more 'reactive' camera listener ?
PS: on the above gifs, I'm using react-native with:

https://github.com/react-native-mapbox-gl/maps
and https://github.com/react-native-community/lottie-react-native for the animated orange markers

Hi there! Any update ?

Seems to be fixed by https://github.com/mapbox/mapbox-plugins-android/pull/1165


Fix uploading image to s3

It was giving error while uploading an image whether PNG or JPEG. This PR resolves it.
Refer ticket number #164

Thanks! I believe some of this will be addressed in @chennisden 's upcoming refactor, will land that first I think

these were addressed in #187 ! closing now that it is merged


Impossible to sign up new members in loyalty shop

Hi colleagues,
On a loyalty storefront set up by following the application guide, new members can't sign up for the loyalty program. An error appears in the Console (using Chrome, on Mac):
angular.js:12416 TypeError: Cannot read property 'analytics' of undefined
    at Object.getHybrisProfileAnalyticsUrl (store.min.js:12051)
    at Object.checkForHybrisProfileSubscription (store.min.js:11630)
    at Scope.$scope.registerCustomerForProgram (store.min.js:12940)
    at Scope.$scope.getLoyaltyProgramMembership (store.min.js:12992)
    at fn (eval at compile (angular.js:13231), <anonymous>:4:272)
    at angular-touch.js:472
    at Scope.$eval (angular.js:15878)
    at Scope.$apply (angular.js:15978)
    at HTMLButtonElement.<anonymous> (angular-touch.js:471)
    at HTMLButtonElement.dispatch (jquery.js:4435)

Maybe this is related to the 403 error which appears a few lines above?
https://api.yaas.io/hybris/profile-edge/v1/events Failed to load resource: the server responded with a status of 403 (Forbidden)

If I am required to subscribe to SAP Hybris Profile packages to use this storefront, then I feel that the documentation should mention it.
Background information:

I followed the instructions from the application guide and from the README file on this repository to set up a tenant and a loyalty storefront. Then I started the storefront using grunt prepare:mystorefront and grunt run:mystorefront and I accessed http://localhost:9099/mystorefronttenant.
I clicked "SIGN IN" and selected "CREATE ACCOUNT" without checking the box "Sign me up for MyLoyaltyProgram to earn welcome points".
On the "My Account" page, I clicked the button "SIGN UP FOR MyLoyaltyProgram". Nothing happened (and no new entry appeared in the Members builder module under Loyalty), so I checked the console.

Best regards
Pierre

Hi Pierre Fritsch,
Thank you for pointing it out, the url file had required entry missing.


Remove .NET Core files

I want to resolve #198 here.
I added a these files and folders to the gitignore:

/NBitcoin.NETCore.sln
NBitcoin.NETCore.Tests
NBitcoin.NETCore

Now there is an other issue that I am only 80% sure I am doing the GitHub workflow right. The UI is a confusing.
What I want to do (If I remember correctly this is what @NicolasDorier told me half a year ago that would be the fine way to contribute):

Create a branch on my fork for the work.
Pull request that branch into the master of upstream.

Would be great if someone could take a quick look that I am doing it right.

I am doing something wrong. @knocte comment should not be here, neither my previous commits.
Not sure what is happening, should I just delete my PR and fork and start it over or it is not so complicated to figure out what's going on and fix it?

Wow, you cloned a github comment from me, that is weird.

Only the SLN is not needed, the rest should stay.

Why?
By the way in that case you have to add the NBitcoin.NETCore.Tests\NBitcoin.NETCore.Tests.xproj.

if I accept your PR, then NBitcoin would not support .NETCOre on nugget anymore, why doing that?

I thought your plan was to remove core altogether and you rather have it locally so you can build it for nuget.
What is your goal with removing only the .sln file?

I don't want to remove Core support. I don't care about opening the core project into visual studio. I'm using it only in my building scripts for creating my nuget package with Core support.

Makes sense now.
So remove only the .sln.
Then how about removing the .xproj file from the NBitcoin.NETCore folder, too to be consinstent?
(Just to reiterate my original problem I opened the issue for was that I was not able to open properly the .sln file, because there were no .xproj file in NBitcoin.Tests folder, there is only an .xproj in NBitcoin.NETCore folder.)

yes we can remove both xproj and sln

I just nuked them https://github.com/MetacoSA/NBitcoin/commit/c051f8ca607ba539b8c3a39d13995c9759a8fcbf


devicetree: deprecate DT_CHOSEN_ZEPHYR_FLASH_CONTROLLER_LABEL

DT_CHOSEN_ZEPHYR_FLASH_CONTROLLER_LABEL was the last macro to be
deprecated from the DT_CHOSEN_()_LABEL series. All its usages have been
replaced with DT_CHOSEN(zephyr_flash_controller), usually combined with
DEVICE_DT_GET to obtain references at compile time.
Resolves https://github.com/zephyrproject-rtos/zephyr/issues/44128

@gmarull looks like you need to update mcuboot also.
 /__w/zephyr/bootloader/mcuboot/boot/zephyr/main.c: In function 'main':
/__w/zephyr/bootloader/mcuboot/boot/zephyr/main.c:449:13: error: Macro is deprecated [-Werror]
  449 |     if (!flash_device_get_binding(DT_CHOSEN_ZEPHYR_FLASH_CONTROLLER_LABEL)) {
      |             ^~~~~~~~~~~~~~~~~~~~~
/__w/zephyr/bootloader/mcuboot/boot/zephyr/main.c:451:13: error: Macro is deprecated [-Werror]
  451 |        DT_CHOSEN_ZEPHYR_FLASH_CONTROLLER_LABEL);
      |             ^~~~~~~~~~~~~~~~~~~~~

D'oh, you already saw that ...

zephyr/mcuboot update: https://github.com/zephyrproject-rtos/mcuboot/pull/74

rebased to pick updated mcuboot revision

@Laczen @nvlsianpu @de-nordic @carlescufi please re-approve :pray:


WMS ID #6942: Corrected the image and copy tags in Task 7

Add image description as suggested by Arabella


Parser as an independent module?

Apologies that this is a question, and a repeat as well (#916 asked the same thing but is dated 2015, so I thought it worth asking again).
For Testcontainers we're thinking about replacing the (growing) ball of mud that is our SQL script splitting class. We literally only need this for running DB init scripts, and I'd consider SQL parsing well outside our area of core competency.
Flyway's parser, particularly the 6.0.0 version, seems quite appealing as a replacement - I'd trust your implementation a lot more than ours!
Have you given any more thought to the question of releasing this separately?
Or would your suggestion still be to use the internal API? (We'd shade Flyway to guard against breaking changes if we do this).

Let me turn this around: Why not integrate Flyway directly as a way to initialize the database?

Any news?

Argh, I had written a long reply and I think I forgot to send. I'm sorry. I'll try and rewrite (maybe more concisely).
I do think that's a very interesting suggestion indeed.
We need to run a single specific SQL script, and if the user has Flyway migration files present we do not want to run those, nor create a schema history table.
It's essentially a very dumbed-down subset of the migrate operation that we're after. Any more than this would be a substantial behaviour change that might contradict what our users expect.
I'm not sure if there's an elegant way to configure Flyway to do this - is there?

@rnorth you could migrate, then use a callback to delete the schema history table. https://flywaydb.org/documentation/callbacks

For executing the SQL, you could use initSql.
As for not executing migrations, you could use dry run.
This would parse and execute the specific SQL you wish to execute, and not execute any migrations or create a schema history table. Would this suffice?

Closing until further activity


Nx generate does not work for project opened in new window

Describe the bug:
Hi, we have a monorepo and there plugin works, but for one project opened in new window plugin doesn't work (ng generate ui is disabled)
Steps to reproduce:

Open one of the monorepo project in new window
Search by "nx generate ui" or open from New -> ...
nx generate ui is disabled

Expected behavior:
Plugin works for one of the monorepo project

I had that also today, when I tried to open it by right clicking on libs, but right clicking on a deeper folder showed it. (using 0.48.0)


Refactor "Managed by Ansible" notices in templates

As of now, we have no coherence between "Managed by Ansible" and have a mix of
this string and "Ansible Managed".
We also have no indication on the remote filesystem to which role a given
templated file belongs or how to locate it once it's deployed.
I propose that we change to using the built-in {{ ansible_managed }} tag on
any template that we wish to signify is managed by our Ansible setup. On the
remote systems, this renders something like this:
joe@lovelace:~$ cat /etc/nginx/conf.d/charset.conf
# Managed by Ansible. Belongs to nginx role.
charset utf-8;

I haven't finalised the format or which variables to include (though for obvious
reasons they should be static variables), hence why this is a draft.
I also haven't yet gone through to update templates with this change and re-run
all roles.

This is a good idea.
However, how do you expect to handle 2 block in file replacements of the same file when you don't have a template? Or is this just for the files for which we have a template?

This is a good idea.
However, how do you expect to handle 2 block in file replacements of the same file when you don't have a template? Or is this just for the files for which we have a template?

I think for now we are fine to just handle templates, the blockinfiles are normally simple enough to understand and have constant marks.


Notify feature request

Please add an ability to find a specific xPath after each click and notify the user if the target xPath is located on the page, and stop clicking after that.

You can use dicord notification to get notifications on your device.
You can use an addon to configure it in such a way that if it found any particular element on the page stop/process/skip actions.


Support for a Leader to leave the cluster cleanly

When a node that is the current leader leaves the cluster it will do so without properly updating the cluster configuration. This happens because the state transition from LEADER to LEAVE prevents committing the updating cluster configuration.

Do, you're obviously right and this is a bug. Really, I suppose the leader needs to step down and wait for a new leader to be elected before it can try to leave the cluster. There are definitely some behavioral concerns here. What if, e.g., the leader is one of 2/3 nodes? Presumably, no new leader will be elected and so the leader can't remove itself from the cluster. That's correct behavior, but I wonder how that should be exposed to the user. It's not currently clear whether or not a node successfully left a cluster (the cluster was reconfigured) or just timed out and shut down, and that's important information since the reconfiguration effects the quorum size. Should the close() future never complete if the cluster can't be reconfigured? Should the future be completed exceptionally? If the future is completed exceptionally, should the server still be shut down or should it remain active?
I think we can do a rudimentary implementation for this issue that simply extends the current algorithm to step down and wait for a leader to be elected or time out after n election timeouts, but there are certainly a lot of concerns around reconfiguration that need to be addressed.

Ugh. I gotta stop writing in issues on my phone. That first word is "so." Auto-correct is the bane of my existence!

Fully agree that this is an issue with a lot of interesting scenarios.
My understanding of the Raft protocol's behavior around cluster configuration is that when the current leader wants to leave it can first commit the updated configuration and then step down. Here is the relevant snippet from the paper: The second issue is that the cluster leader may not be part of the new configuration. In this case, the leader steps down (returns to follower state) once it has committed the Cnew log entry.
My fear is that exiting no matter what after a timeout can result in a cluster that can no longer reach consensus. For example if we have a 2 node cluster and one node decides to leave then the remaining node cannot do anything useful. For a 2+ node cluster we will have a slightly improved tolerance for this behavior: in a 3 node cluster the remaining 2 can still do useful work. But the the moment another node decides to just leave we are in trouble.
My preference would be to block the close() until a node can successfully leave. At least that way we are safe.
And additionally also support another entry point to cluster reconfiguration. This can be useful in a 3 node scenario where one node just crashed and died and the admin wants to reconfigure the cluster so that it now only has 2 nodes.

Alright, here's what I came up with. I modified the LeaveState to attempt to leave the cluster over up to three election timeouts. This ensures that in most cases a leader will be elected and the leaving node will be able to reconfigure the cluster. In the event that a new leader cannot be elected quickly enough (unlikely, particularly with the pre-vote protocol) or the server transitioning to the leave state results in a loss of quorum, the server will time out and the close() future will be completed exceptionally with a new server ConfigurationException. I think this gives us the benefit of ensuring servers can leave if possible and users are notified if the reconfiguration fails.
There are still some cases where this is not ideal. For instance, if 2/3 nodes in a cluster are alive, and one of the servers leaves, it can't participate in the commitment of the configuration that removes it from the cluster since it's in the leave state which doesn't receive append entries RPCs or vote in elections. However, perhaps it's not such a bad thing that this algorithm will effectively disallow removing a quorum from the cluster. That is, if 2/3 nodes are alive, and one is removed, an exception will be thrown in that exceptional case.

Bah I missed your comment referring to exactly the scenario I mentioned - a server leaving a cluster where 2/3 nodes are alive.
The use of LeaveState definitely prevents some reconfiguration. I think the issue of a server needing to participate in the quorum to remove itself should definitely be handled. I'll probably commit the changes I have and then work on improving upon that to handle all configuration cases. It might be the case that LeaveState needs to be replaced by some state-specific method to allow a leader to leave the cluster differently than a follower. In that case, essentially every server would commit the configuration before transitioning at all. That probably makes more sense and ensures servers contribute to quorums until the reconfiguration is complete. The alternative to a leader committing its own configuration change is transitioning to follower instead of the LeaveState and committing the reconfiguration through a new leader, but i don't see much benefit to that.
With respect to blocking on close(), I think because of the limitations of the current implementation - even with the commit I'm about to push - it should not block on close since closing a server can result in a loss of quorum from the transition to LeaveState, and that could essentially mean a deadlock. Instead, I'll leave the ConfigurationException to handle this case for the time being and work on replacing LeaveState with a more elegant solution that allows servers to commit their configuration change before dropping out of the quorum.

I suppose we could say that the goal for this feature should be to allow clusters to scale from 1-3 servers and back down with failures taken into account. Currently, a cluster can scale from 3-2 nodes only if all three nodes are alive and healthy, and a cluster cannot scale down from 2 nodes to 1 node since removing the leaving server from the quorum will prevent the reconfiguration.

@madjam I decided to take a quick stab at it tonight. I haven't put 0594601ec48057fe543883e9d4d2f80f619cc3a8 through much testing other than running the existing join/leave tests. Basically, what I did was replaced JoinState and LeaveState with methods in ServerState. The join() method behaves like the JoinState did previously, but the leave() method essentially passes the leave call directly to the internal state to allow it to be handled by e.g. a follower, the leader, etc. Can you check this out and see what you think? I'm too tired to do any more hacking on this tonight, but would be interested in your feedback.

I have to take a more closer look. But after a quick glance and running couple of tests I feel we'll have trouble shrinking a 2 node cluster to 1 node. The reason being: when a node (which is leader) wants to leave, it transitions to leave state which is a descendant of inactive state. In this state it fails all requests (poll, vote, append). So a new leader cannot be elected.

@kuujo Here are couple of [changes] (https://github.com/atomix/copycat/compare/master...madjam:leader-leave) I tried yesterday that does manage to resize the cluster correctly in my testing. The idea is as follows: If the leaving node is a leader it transitions into a special RENOUNCE state from which it will try to commit the cluster config (RenounceState is a descendant of LeaderState)
On the other hand if the leaving node is a follower, it will transition into LeaveState as before. The only difference now is that LeaveState is a ActiveState meaning the node can still participate in commits. That way in a 2 node cluster if the follower is leaving, the leader will still be able to commit the config change.
I felt this is the smallest diff that will get us to a working state. There is still some scope for failures to interfere but I feel this should be safe. Just thought I will update the thread just in case you find this direction useful.

I mentioned that the master branch does indeed have the problem wherein a cluster cannot be downsized from 2 nodes to 1 node for the reasons related to LeaveState you mentioned.
But the cluster-configuration branch removes the LEAVE state and replaces it with similar retry behavior that operates on existing states. So, if close() is called on a LEADER the LeaderState will handle the reconfiguration, and if close() is called on a FOLLOWER the FollowerState will handle it. This is the proper/cleaner pattern for handling state-specific logic.
I added a test to the cluster-configuration branch that resizes the cluster from 1 to 3 nodes and back down. The reconfiguration test actually exposed a bug when servers are joining and leaving the cluster concurrently. That was fixed in the last commit.

Tests were broken due to the fix to configuration changes.
One of the existing tests submitted commands to a 3/5 node cluster. The test cleanup close()es servers once the tests are complete. But in the case of a 3/5 node cluster, once the first server leaves the cluster it becomes a 2/4 node cluster and so a new configuration cannot be committed to remove the second node from the cluster. This is good behavior. Updating the tests to encapsulate reconfiguration only in the appropriate test methods.

Also, while I'm at it, #23 fixes the bug recently found in single-member configuration changes.

All tests pass. I'm closing this and we should open new issues for bugs in the implementation.
We're working on more advanced Jepsen tests that include reconfiguration. This will hopefully expose any potential flaws in the implementation that might e.g. allow a dual majority.


Lighthouse fails with 503 using default args

I just ran on local Docker the package with default args, and got a failure waiting for Lighthouse to become available:
$ kurtosis run github.com/kurtosis-tech/ethereum-package
...........
> print msg="Successfully added 1 EL participants"
Successfully added 1 EL participants

> print msg="Launching CL network"
Launching CL network

> add_service name="cl-1-lighthouse-geth" config=ServiceConfig(image="sigp/lighthouse:latest", ports={"http": PortSpec(number=4000, transport_protocol="TCP", application_protocol="http"), "metrics": PortSpec(number=5054, transport_protocol="TCP", application_protocol="http"), "tcp-discovery": PortSpec(number=9000, transport_protocol="TCP", application_protocol=""), "udp-discovery": PortSpec(number=9000, transport_protocol="UDP", application_protocol="")}, files={"/data": "el-cl-genesis-data"}, cmd=["lighthouse", "beacon_node", "--debug-level=info", "--datadir=/consensus-data", "--testnet-dir=/data/data/custom_config_data", "--disable-enr-auto-update", "--enr-address=KURTOSIS_IP_ADDR_PLACEHOLDER", "--enr-udp-port=9000", "--enr-tcp-port=9000", "--listen-address=<IP_ADDRESS>", "--port=9000", "--http", "--http-address=<IP_ADDRESS>", "--http-port=4000", "--http-allow-sync-stalled", "--slots-per-restore-point=32", "--disable-packet-filter", "--execution-endpoints=http://{{kurtosis:278e7eb6f9574907ab09e728acd380ee:ip_address.runtime_value}}:8551", "--jwt-secrets=/data/data/jwt/jwtsecret", "--suggested-fee-recipient=0x8943545177806ED17B9F23F0a21ee5948eCaa776", "--subscribe-all-subnets", "--metrics", "--metrics-address=<IP_ADDRESS>", "--metrics-allow-origin=*", "--metrics-port=5054"], env_vars={"RUST_BACKTRACE": "full"}, private_ip_address_placeholder="KURTOSIS_IP_ADDR_PLACEHOLDER", max_cpu=1000, min_cpu=50, max_memory=1024, min_memory=256, ready_conditions=ReadyCondition(recipe=GetHttpRequestRecipe(port_id="http", endpoint="/eth/v1/node/health"), field="code", assertion="IN", target_value=[200, 206], timeout="15m"), labels={"ethereum-package-client": "lighthouse", "ethereum-package-client-image": "sigp-lighthouse-latest", "ethereum-package-client-type": "beacon", "ethereum-package-connected-client": "geth"})
There was an error executing Starlark code
An error occurred executing instruction (number 21) at github.com/kurtosis-tech/ethereum-package/src/cl/lighthouse/lighthouse_launcher.star[149:38]:
  add_service(name="cl-1-lighthouse-geth", config=ServiceConfig(image="sigp/lighthouse:latest", ports={"http": PortSpec(number=4000, transport_protocol="TCP", application_protocol="http"), "metrics": PortSpec(number=5054, transport_protocol="TCP", application_protocol="http"), "tcp-discovery": PortSpec(number=9000, transport_protocol="TCP", application_protocol=""), "udp-discovery": PortSpec(number=9000, transport_protocol="UDP", application_protocol="")}, files={"/data": "el-cl-genesis-data"}, cmd=["lighthouse", "beacon_node", "--debug-level=info", "--datadir=/consensus-data", "--testnet-dir=/data/data/custom_config_data", "--disable-enr-auto-update", "--enr-address=KURTOSIS_IP_ADDR_PLACEHOLDER", "--enr-udp-port=9000", "--enr-tcp-port=9000", "--listen-address=<IP_ADDRESS>", "--port=9000", "--http", "--http-address=<IP_ADDRESS>", "--http-port=4000", "--http-allow-sync-stalled", "--slots-per-restore-point=32", "--disable-packet-filter", "--execution-endpoints=http://{{kurtosis:278e7eb6f9574907ab09e728acd380ee:ip_address.runtime_value}}:8551", "--jwt-secrets=/data/data/jwt/jwtsecret", "--suggested-fee-recipient=0x8943545177806ED17B9F23F0a21ee5948eCaa776", "--subscribe-all-subnets", "--metrics", "--metrics-address=<IP_ADDRESS>", "--metrics-allow-origin=*", "--metrics-port=5054"], env_vars={"RUST_BACKTRACE": "full"}, private_ip_address_placeholder="KURTOSIS_IP_ADDR_PLACEHOLDER", max_cpu=1000, min_cpu=50, max_memory=1024, min_memory=256, ready_conditions=ReadyCondition(recipe=GetHttpRequestRecipe(port_id="http", endpoint="/eth/v1/node/health"), field="code", assertion="IN", target_value=[200, 206], timeout="15m"), labels={"ethereum-package-client": "lighthouse", "ethereum-package-client-image": "sigp-lighthouse-latest", "ethereum-package-client-type": "beacon", "ethereum-package-connected-client": "geth"}))
  Caused by: An error occurred while checking if service 'cl-1-lighthouse-geth' is ready
  Caused by: An error occurred checking if service 'cl-1-lighthouse-geth' is ready, using recipe 'GetHttpRequestRecipe(port_id="http", endpoint="/eth/v1/node/health")', value field 'code', assertion 'IN', target '[200, 206]', interval '1s' and time-out '15m0s'.
  Caused by: Recipe execution timed-out waiting for the recipe execution to become valid on service 'cl-1-lighthouse-geth'. Tried '900' times. Last assertion execution error was:
   '$Verification failed '503' 'IN' '[200, 206]'
   --- at /home/circleci/project/core/server/api_container/server/startosis_engine/kurtosis_instruction/verify/verify.go:195 (Verify) ---'

Error encountered running Starlark code.

Made with Kurtosis - https://kurtosis.com
INFO[2023-11-19T14:06:34-03:00] =======================================================
INFO[2023-11-19T14:06:34-03:00] ||          Created enclave: dazzling-glade          ||
INFO[2023-11-19T14:06:34-03:00] =======================================================
Name:            dazzling-glade
UUID:            ec9fd3e52394
Status:          RUNNING
Creation Time:   Sun, 19 Nov 2023 13:43:39 -03
Flags:

========================================= Files Artifacts =========================================
UUID           Name
23a615a54e9f   1-lighthouse-geth-0-63
ad4b58e0fbcf   el-cl-genesis-data
fb2c4d1a89a1   final-genesis-timestamp
63e45701da66   genesis-el-cl-env-file
8925de5d2779   genesis-validators-root
c7ed4e4269f3   prysm-password
ffa0a4f82ac1   task-95ac789a-9d2b-44f8-93fa-315c6c91e784-python-script
cf99d839c429   task-96b80c76-3c37-4adf-9a5c-370b768689d9-python-script

========================================== User Services ==========================================
UUID           Name                                             Ports                                         Status
cffa38e18561   cl-1-lighthouse-geth                             http: 4000/tcp -> http://<IP_ADDRESS>:51837      RUNNING
                                                                metrics: 5054/tcp -> http://<IP_ADDRESS>:51838
                                                                tcp-discovery: 9000/tcp -> <IP_ADDRESS>:51839
                                                                udp-discovery: 9000/udp -> <IP_ADDRESS>:55036
8dfdc35a7bc4   el-1-geth-lighthouse                             engine-rpc: 8551/tcp -> <IP_ADDRESS>:51832       RUNNING
                                                                metrics: 9001/tcp -> <IP_ADDRESS>:51829
                                                                rpc: 8545/tcp -> <IP_ADDRESS>:51831
                                                                tcp-discovery: 30303/tcp -> <IP_ADDRESS>:51830
                                                                udp-discovery: 30303/udp -> <IP_ADDRESS>:56316
2d3cde50bc80   task-4608296c-79f1-4403-b510-de89d8c51f75        <none>                                        RUNNING
4335610adf2b   task-95ac789a-9d2b-44f8-93fa-315c6c91e784        <none>                                        RUNNING
74b69c9ea15f   task-96b80c76-3c37-4adf-9a5c-370b768689d9        <none>                                        RUNNING
a5fa143705ef   validator-key-generation-cl-validator-keystore   <none>                                        RUNNING

The Lighthouse client seems to be unhappy for some reason:
2023-11-19 14:09:34 Nov 19 17:09:34.371 ERRO Error updating deposit contract cache   error: Failed to get remote head and new block ranges: EndpointError(FarBehind), retry_millis: 60000, service: deposit_contract_rpc
2023-11-19 14:09:40 Nov 19 17:09:40.004 WARN Low peer count                          peer_count: 0, service: slot_notifier
2023-11-19 14:09:40 Nov 19 17:09:40.004 INFO Searching for peers                     current_slot: 118, head_slot: 0, finalized_epoch: 0, finalized_root: 0x024d…7117, peers: 0, service: slot_notifier
2023-11-19 14:09:40 Nov 19 17:09:40.004 WARN Not ready for merge                     info: The execution endpoint is connected and configured, however it is not yet synced, service: slot_notifier
2023-11-19 14:09:52 Nov 19 17:09:52.006 WARN Low peer count                          peer_count: 0, service: slot_notifier
2023-11-19 14:09:52 Nov 19 17:09:52.006 INFO Searching for peers                     current_slot: 119, head_slot: 0, finalized_epoch: 0, finalized_root: 0x024d…7117, peers: 0, service: slot_notifier
2023-11-19 14:09:52 Nov 19 17:09:52.006 WARN Not ready for merge                     info: The execution endpoint is connected and configured, however it is not yet synced, service: slot_notifier
2023-11-19 14:10:04 Nov 19 17:10:04.002 WARN Low peer count                          peer_count: 0, service: slot_notifier
2023-11-19 14:10:04 Nov 19 17:10:04.002 INFO Searching for peers                     current_slot: 120, head_slot: 0, finalized_epoch: 0, finalized_root: 0x024d…7117, peers: 0, service: slot_notifier
2023-11-19 14:10:04 Nov 19 17:10:04.002 WARN Not ready for merge                     info: The execution endpoint is connected and configured, however it is not yet synced, service: slot_notifier
2023-11-19 14:10:16 Nov 19 17:10:16.002 WARN Low peer count                          peer_count: 0, service: slot_notifier
2023-11-19 14:10:16 Nov 19 17:10:16.003 INFO Searching for peers                     current_slot: 121, head_slot: 0, finalized_epoch: 0, finalized_root: 0x024d…7117, peers: 0, service: slot_notifier
2023-11-19 14:10:16 Nov 19 17:10:16.003 WARN Not ready for merge                     info: The execution endpoint is connected and configured, however it is not yet synced, service: slot_notifier
2023-11-19 14:10:28 Nov 19 17:10:28.002 WARN Low peer count                          peer_count: 0, service: slot_notifier
2023-11-19 14:10:28 Nov 19 17:10:28.002 INFO Searching for peers                     current_slot: 122, head_slot: 0, finalized_epoch: 0, finalized_root: 0x024d…7117, peers: 0, service: slot_notifier
2023-11-19 14:10:28 Nov 19 17:10:28.002 WARN Not ready for merge                     info: The execution endpoint is connected and configured, however it is not yet synced, service: slot_notifier
2023-11-19 14:10:34 Nov 19 17:10:34.368 WARN Execution endpoint is not synced        last_seen_block_unix_timestamp:<PHONE_NUMBER>, endpoint: http://<IP_ADDRESS>:8551/, auth=true, service: deposit_contract_rpc
2023-11-19 14:10:34 Nov 19 17:10:34.368 ERRO Error updating deposit contract cache   error: Failed to get remote head and new block ranges: EndpointError(FarBehind), retry_millis: 60000, service: deposit_contract_rpc
2023-11-19 14:10:40 Nov 19 17:10:40.004 WARN Low peer count                          peer_count: 0, service: slot_notifier
2023-11-19 14:10:40 Nov 19 17:10:40.005 INFO Searching for peers                     current_slot: 123, head_slot: 0, finalized_epoch: 0, finalized_root: 0x024d…7117, peers: 0, service: slot_notifier
2023-11-19 14:10:40 Nov 19 17:10:40.005 WARN Not ready for merge                     info: The execution endpoint is connected and configured, however it is not yet synced, service: slot_notifier
2023-11-19 14:10:52 Nov 19 17:10:52.000 WARN Low peer count                          peer_count: 0, service: slot_notifier
2023-11-19 14:10:52 Nov 19 17:10:52.001 INFO Searching for peers                     current_slot: 124, head_slot: 0, finalized_epoch: 0, finalized_root: 0x024d…7117, peers: 0, service: slot_notifier
2023-11-19 14:10:52 Nov 19 17:10:52.001 WARN Not ready for merge                     info: The execution endpoint is connected and configured, however it is not yet synced, service: slot_notifier
2023-11-19 14:11:04 Nov 19 17:11:04.005 WARN Low peer count                          peer_count: 0, service: slot_notifier
2023-11-19 14:11:04 Nov 19 17:11:04.005 INFO Searching for peers                     current_slot: 125, head_slot: 0, finalized_epoch: 0, finalized_root: 0x024d…7117, peers: 0, service: slot_notifier
2023-11-19 14:11:04 Nov 19 17:11:04.005 WARN Not ready for merge                     info: The execution endpoint is connected and configured, however it is not yet synced, service: slot_notifier
2023-11-19 14:11:16 Nov 19 17:11:16.001 WARN Low peer count                          peer_count: 0, service: slot_notifier
2023-11-19 14:11:16 Nov 19 17:11:16.002 INFO Searching for peers                     current_slot: 126, head_slot: 0, finalized_epoch: 0, finalized_root: 0x024d…7117, peers: 0, service: slot_notifier
2023-11-19 14:11:16 Nov 19 17:11:16.002 WARN Not ready for merge                     info: The execution endpoint is connected and configured, however it is not yet synced, service: slot_notifier
2023-11-19 14:11:28 Nov 19 17:11:28.002 WARN Low peer count                          peer_count: 0, service: slot_notifier
2023-11-19 14:11:28 Nov 19 17:11:28.002 INFO Searching for peers                     current_slot: 127, head_slot: 0, finalized_epoch: 0, finalized_root: 0x024d…7117, peers: 0, service: slot_notifier
2023-11-19 14:11:28 Nov 19 17:11:28.002 WARN Not ready for merge                     info: The execution endpoint is connected and configured, however it is not yet synced, service: slot_notifier
2023-11-19 14:11:34 Nov 19 17:11:34.372 WARN Execution endpoint is not synced        last_seen_block_unix_timestamp:<PHONE_NUMBER>, endpoint: http://<IP_ADDRESS>:8551/, auth=true, service: deposit_contract_rpc
2023-11-19 14:11:34 Nov 19 17:11:34.373 ERRO Error updating deposit contract cache   error: Failed to get remote head and new block ranges: EndpointError(FarBehind), retry_millis: 60000, service: deposit_contract_rpc
2023-11-19 14:11:40 Nov 19 17:11:40.004 WARN Low peer count                          peer_count: 0, service: slot_notifier
2023-11-19 14:11:40 Nov 19 17:11:40.004 INFO Searching for peers                     current_slot: 128, head_slot: 0, finalized_epoch: 0, finalized_root: 0x024d…7117, peers: 0, service: slot_notifier
2023-11-19 14:11:40 Nov 19 17:11:40.004 WARN Not ready for merge                     info: The execution endpoint is connected and configured, however it is not yet synced, service: slot_notifier

Full dump of the enclave:
dazzling-glade.zip

Just tried again and it seems to be consistent; something's messed up with Lighthouse:
2023-11-19 14:15:00 Nov 19 17:15:00.961 WARN Error processing HTTP API request       method: GET, path: /eth/v1/node/health, status: 503 Service Unavailable, elapsed: 276.625µs
2023-11-19 14:15:01 Nov 19 17:15:01.935 WARN Error processing HTTP API request       method: GET, path: /eth/v1/node/health, status: 503 Service Unavailable, elapsed: 216.916µs
2023-11-19 14:15:02 Nov 19 17:15:02.947 WARN Error processing HTTP API request       method: GET, path: /eth/v1/node/health, status: 503 Service Unavailable, elapsed: 215.875µs
2023-11-19 14:15:03 Nov 19 17:15:03.954 WARN Error processing HTTP API request       method: GET, path: /eth/v1/node/health, status: 503 Service Unavailable, elapsed: 222µs
2023-11-19 14:15:04 Nov 19 17:15:04.954 WARN Error processing HTTP API request       method: GET, path: /eth/v1/node/health, status: 503 Service Unavailable, elapsed: 201.167µs
2023-11-19 14:15:05 Nov 19 17:15:05.962 WARN Error processing HTTP API request       method: GET, path: /eth/v1/node/health, status: 503 Service Unavailable, elapsed: 253µs
2023-11-19 14:15:06 Nov 19 17:15:06.932 WARN Error processing HTTP API request       method: GET, path: /eth/v1/node/health, status: 503 Service Unavailable, elapsed: 214.417µs
2023-11-19 14:15:07 Nov 19 17:15:07.003 WARN Low peer count                          peer_count: 0, service: slot_notifier
2023-11-19 14:15:07 Nov 19 17:15:07.003 INFO Searching for peers                     current_slot: 2, head_slot: 0, finalized_epoch: 0, finalized_root: 0x109c…f8e4, peers: 0, service: slot_notifier
2023-11-19 14:15:07 Nov 19 17:15:07.003 WARN Not ready for merge                     info: The execution endpoint is connected and configured, however it is not yet synced, service: slot_notifier
2023-11-19 14:15:07 Nov 19 17:15:07.947 WARN Error processing HTTP API request       method: GET, path: /eth/v1/node/health, status: 503 Service Unavailable, elapsed: 218.458µs
2023-11-19 14:15:08 Nov 19 17:15:08.946 WARN Error processing HTTP API request       method: GET, path: /eth/v1/node/health, status: 503 Service Unavailable, elapsed: 190.75µs
2023-11-19 14:15:09 Nov 19 17:15:09.953 WARN Error processing HTTP API request       method: GET, path: /eth/v1/node/health, status: 503 Service Unavailable, elapsed: 213.625µs
2023-11-19 14:15:10 Nov 19 17:15:10.954 WARN Error processing HTTP API request       method: GET, path: /eth/v1/node/health, status: 503 Service Unavailable, elapsed: 221.209µs
2023-11-19 14:15:11 Nov 19 17:15:11.958 WARN Error processing HTTP API request       method: GET, path: /eth/v1/node/health, status: 503 Service Unavailable, elapsed: 195.375µs
2023-11-19 14:15:12 Nov 19 17:15:12.952 WARN Error processing HTTP API request       method: GET, path: /eth/v1/node/health, status: 503 Service Unavailable, elapsed: 204.583µs
2023-11-19 14:15:13 Nov 19 17:15:13.964 WARN Error processing HTTP API request       method: GET, path: /eth/v1/node/health, status: 503 Service Unavailable, elapsed: 249.209µs
2023-11-19 14:15:14 Nov 19 17:15:14.960 WARN Error processing HTTP API request       method: GET, path: /eth/v1/node/health, status: 503 Service Unavailable, elapsed: 246.917µs
2023-11-19 14:15:15 Nov 19 17:15:15.951 WARN Error processing HTTP API request       method: GET, path: /eth/v1/node/health, status: 503 Service Unavailable, elapsed: 201µs
2023-11-19 14:15:16 Nov 19 17:15:16.953 WARN Error processing HTTP API request       method: GET, path: /eth/v1/node/health, status: 503 Service Unavailable, elapsed: 222.459µs
2023-11-19 14:15:17 Nov 19 17:15:17.950 WARN Error processing HTTP API request       method: GET, path: /eth/v1/node/health, status: 503 Service Unavailable, elapsed: 224.5µs
2023-11-19 14:15:18 Nov 19 17:15:18.958 WARN Error processing HTTP API request       method: GET, path: /eth/v1/node/health, status: 503 Service Unavailable, elapsed: 252.916µs
2023-11-19 14:15:19 Nov 19 17:15:19.001 WARN Low peer count                          peer_count: 0, service: slot_notifier
2023-11-19 14:15:19 Nov 19 17:15:19.001 INFO Searching for peers                     current_slot: 3, head_slot: 0, finalized_epoch: 0, finalized_root: 0x109c…f8e4, peers: 0, service: slot_notifier
2023-11-19 14:15:19 Nov 19 17:15:19.001 WARN Not ready for merge                     info: The execution endpoint is connected and configured, however it is not yet synced, service: slot_notifier
2023-11-19 14:15:19 Nov 19 17:15:19.933 WARN Error processing HTTP API request       method: GET, path: /eth/v1/node/health, status: 503 Service Unavailable, elapsed: 247.417µs
2023-11-19 14:15:20 Nov 19 17:15:20.937 WARN Error processing HTTP API request       method: GET, path: /eth/v1/node/health, status: 503 Service Unavailable, elapsed: 287.042µs
2023-11-19 14:15:21 Nov 19 17:15:21.945 WARN Error processing HTTP API request       method: GET, path: /eth/v1/node/health, status: 503 Service Unavailable, elapsed: 228.166µs
2023-11-19 14:15:22 Nov 19 17:15:22.944 WARN Error processing HTTP API request       method: GET, path: /eth/v1/node/health, status: 503 Service Unavailable, elapsed: 187.875µs
2023-11-19 14:15:23 Nov 19 17:15:23.940 WARN Error processing HTTP API request       method: GET, path: /eth/v1/node/health, status: 503 Service Unavailable, elapsed: 248.083µs
2023-11-19 14:15:24 Nov 19 17:15:24.942 WARN Error processing HTTP API request       method: GET, path: /eth/v1/node/health, status: 503 Service Unavailable, elapsed: 204.875µs

It hasn't failed yet, but it looks like it's going to after the 15-minute (!!) timeout

Pls rerun with --image-download always and confirm it still fails. Most likely you just have an older lh version on your local.

That was it - great shout!


Klipper doesn't copy anything if a blank string is passed to copy()

Calling copy('') will be a no-op for the Klipper functions. I'm not sure if there's a solution for this.

I can take a look at it then, but if no good solution can be found perhaps one of the following.
python
if text is None:
    return

# or
if text is None:
    raise PYPerclipKlipperException('Blank string is the equivalent to a no-op function.')


Fix concurrent bug in QueryContext

Description
Fix concurrent bug in QueryContext, use ConcurrentHashMap and CopyOnWriteArraySet instead of HashMap and HashSet.

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

Comparison is base (59fe3fe) 49.12% compared to head (0f1a40c) 49.13%.
Report is 2 commits behind head on master.

Additional details and impacted files
@@            Coverage Diff            @@
##             master   #11983   +/-   ##
=========================================
  Coverage     49.12%   49.13%
- Complexity    26023    26031    +8
=========================================
  Files          2931     2931
  Lines        183547   183547
  Branches      22010    22010
=========================================
+ Hits          90175    90186   +11
+ Misses        93372    93361   -11

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.