docker issue with version 1.15.1

I work as well over a Kubernetes cluster with Habana Gaudi2 version 1.14. When I upgrade the packages to 1.15.1, I can't add the node with Gaudi2 to the cluster, and I see this Docker error:
Apr 14 20:59:37 1070fd2644da.jf.intel.com dockerd[189513]: time="2024-04-14T20:59:37.266044799+03:00" level=error msg="stream copy error: reading from a closed fifo"
Apr 14 20:59:37 1070fd2644da.jf.intel.com dockerd[189513]: time="2024-04-14T20:59:37.336528703+03:00" level=error msg="failed to start container" container=451450e03a2b8d3daf9f2380e6d0e6fd1b341df2caa34909a4ebc5c7ff2d7d64 error="failed to create task for container: failed to create shim task: OCI runtime create failed: runc create failed: unable to start container process: error during container init: error running hook #0: error running hook: exit status 1, stdout: , stderr: exposing interfaces: failed creating temporary link on host: file exists\nexit status 1: unknown"

We are hitting exactly same issue, @oelezra did you manage to fix it?

yes, i changed the config.toml file.
see wiki: https://docs.habana.ai/en/latest/Installation_Guide/Bare_Metal_Fresh_OS.html#install-container-runtime


Propagate strides to simplify aliasing of transposes

This is a bit of hack, but does help to eliminate transposes in one of the test cases.

I realized a potential problem with both this and #464: suppose you have a pipeline that both transposes A -> B, and uses A -> C in some other operation, where C is bigger than B. The bounds of A will be bigger than B, so propagating the stride is incorrect. Does anything stop that from happening in this PR?
I'm generally becoming pretty wary of both #464 and this PR, it seems like it's going to be hard to make this fully correct.

I realized a potential problem with both this and #464: suppose you have a pipeline that both transposes A -> B, and uses A -> C in some other operation, where C is bigger than B. The bounds of A will be bigger than B, so propagating the stride is incorrect. Does anything stop that from happening in this PR?
I'm generally becoming pretty wary of both #464 and this PR, it seems like it's going to be hard to make this fully correct.

This is a good point, currently this won't handle it correctly, but I think it would be easy to fix by checking that corresponding permutated inferred bounds of A (they are available at this point already) are just (buffer_min(x, B), buffer_max(x, B)). Maybe #464 could do something similar? I don't want to give up on this too easily, because it's a valuable optimization.

Closing in favor of #491.


esp_http_client use results in stack overflow when sending simple text data to the server (IDFGH-4328)

Hello, I am trying to post a simple query to the server but there is always stack overflow every time a call to esp_err_t err = esp_http_client_perform(client); is made.
The log:

I (3077) HTTP_CLIENT: HTTP_EVENT_DISCONNECTED
I (3077) HTTP_CLIENT: Last esp error code: 0x103
I (3080) HTTP_CLIENT: Last mbedtls failure: 0x0
I (3085) HTTP_CLIENT: HTTP_EVENT_DISCONNECTED
I (3090) HTTP_CLIENT: Last esp error code: 0x103
I (3096) HTTP_CLIENT: Last mbedtls failure: 0x0
ERROR A stack overflow in task main has bee

The code:

esp_http_client_config_t config = {
.host = "<IP_ADDRESS>",
.path = "/api/cognitive/voice_interaction_wav",
.port=8000,
.query = "POST",
.event_handler = _http_event_handler,
.user_data = local_response_buffer,        // Pass address of local buffer to get response
};
esp_http_client_handle_t client = esp_http_client_init(&config);
// POST
ESP_LOGW(PTAG,"configuered");

const char* post_data = "{\"voiceFile\":\"UklGRiRwDQBXQVZFZm10IBAAAAABAAIARKwAABCxA\"}";
esp_http_client_set_url(client, "https://centralindia.stt.speech.microsoft.com/speech/recognition/conversation/cognitiveservices/v1?language=en-US");
esp_http_client_set_method(client, HTTP_METHOD_POST);
esp_http_client_set_header(client, "Content-Type", "audio/wav; codecs=audio/pcm; samplerate=16000");
esp_http_client_set_header(client, "Connection", "keep-alive");
esp_http_client_set_header(client, "Accept", "application/json");
esp_http_client_set_header(client, "Expect", "100-continue");
esp_http_client_set_post_field(client, post_data, strlen(post_data));
esp_err_t err = esp_http_client_perform(client);
if (err == ESP_OK) {
    ESP_LOGI(PTAG, "HTTP POST Status = %d, content_length = %d",
        esp_http_client_get_status_code(client),
        esp_http_client_get_content_length(client));
}
else {
    ESP_LOGE(PTAG, "HTTP POST request failed: %s", esp_err_to_name(err));
}
ESP_LOG_BUFFER_CHAR(PTAG, local_response_buffer, strlen(local_response_buffer));

Thanks for reporting, we will look into.

@rjam-xav
Please post entire sample code along with sdkconfig. Please see github issue template for more information.

You can set buffor for transmision in config structure
esp_http_client_config_t config = {
...
.buffer_size = XXZ, //size in Bytes
.buffer_size_tx = YYZ,
};
buffer is set by default on #define DEFAULT_HTTP_BUF_SIZE (512)
if you sure that problem is according to stack, you might try menuconfig
Menu path: (Top) -> Component config -> LWIP
Name: LWIP_TCPIP_TASK_STACK_SIZE
Prompt: TCP/IP Task Stack Size
Type: int
Value: 3072
but I don't have that is this option.

@rjam-xav, From the logs it seems esp_http_client_perform() is called from main task. Stack size for main task is 3584 by default, which is not enough for https request. To perform https request, it is recommended to have stack size of 8192 bytes.
You can refer to esp_http_client example, where requests are performed from http_test_task with stack size of 8192.

Increasing the stack size significantly to 8192 did indeed work. thank you.


v9 - What would YOU like to see?

Hello All! and Thanks in Advance!
UPDATE: v9.0.0 RC1 is out, please let me know what you think
I will soon be rewriting validator v9, from scratch, and am looking for any ideas or suggestions from you the community for anything you would like to see in the new version. I cannot guarantee all will be included, but can't add it if I don't know about it 😄
Here is a short list of changes that I will continue to add to:

Update errors to return as an array instead of map ( more efficient + map is not needed until a translation of the error is generated, if at all ) ✔
Attempt to cache parameter for struct fields already cast to the appropriate data type. this would work for allot of scenarios, however when adding custom validator could cause issues, especially with CrossField validation and is just too risky. ✔
Add Interface/Implements check for structs that satisfy a Validatable interface (TBD), which will mirror Struct Level Validation. This will also allow those who are concerned with ultimate speed and not RAD to validate natively, but still report errors in a consistent way through validator; a true have your 🍰  and eat it too change. This would end up being very confusing to developers as there would be a method on a struct that can only be called by a library? that and would have 2 different ways of struct validation, overall it was just too confusing, would have been inefficient compared to struct validation that can be cached so sticking with just one way, and that struct level validation ✔
Allow Structs to be validated, just like fields, see #245 ✔
Remove the exists tag (which v8 now supports as well), in favour of required (Release v8.17.3 made this possible)
Keep required and drop exists Change required to nondefault or have both tags present? required makes more sense when reporting errors, but nondefault is clearer for those using the library. Thoughts? ✔
Unexpose FieldError fields in favour of interface methods enabling easier updating of changes ✔
Custom Error Messages + Translations ( this will be added in a separate repo as a totally optional component, post validation, when universal-translator is ready)
Don't Panic with invalid input, but return InvalidValidationError ✔
Change FieldName tag to be a hook to allow users to subscribe their own in order to support many more than just JSON... ✔
remove initCheck(), if it's used without initialization.... that's not the library's responsibility. ✔
Unexpose internal validator to accommodate new simpler syntax...a tradeoff ✔
add alphaunicode and alphanumunicode to compliment the regular ascii checks for #239 will accept a pull request, but would also allow allot of other characters not expected, so leaving out for now.
more to come...

first of all, I think you should change list of changes to numeric list :) so I we can talk better

Allow Structs to be validated, just like fields, see #245
I do not agree with this.
Change required to nondefault or have both tags present? required makes more sense when reporting errors, but nondefault is clearer for those using the library. Thoughts?
I do not agree with this.
There is awesome library that written with PHP.
https://laravel.com/docs/5.2/validation
I think go-playground/validator is best validation package in golang. but it is small.
sorry for my bad english.

And, Please don't remove the "dive" tag!

thanks @alioygur for your feedback! 😄  and don't worry the dive tag is staying!
as for # 4 - I think you may be right
I was hoping you could expand on 2 of your answers:
Change required to nondefault or have both tags present? required makes more sense when reporting errors, but nondefault is clearer for those using the library. Thoughts?
I do not agree with this.

So you are saying just stick with required?
When you say it is small, do you mean the number of validations? if so if you could provide a list of ones you would like to see I could work towards adding them.

Yes. about number of validations.
So I provide a package. https://laravel.com/docs/5.2/validation this package has a lot validations.

Hey @alioygur just released v9.0.0 RC1 and would love your feedback if you can find time :)

v9 has been released!

Hm, the required tag does not work the same way as exists did with pointers! See https://github.com/go-playground/validator/issues/142#issuecomment-250163238
E.g. using a false for a bool pointer results in a failed validation. Now using v8 where exists worked exactly as intended.

@deankarn
hello,I don't understand,why you drop exists tag,the required still have problem with those zero value while decode json in go-gin,it cannot replace complete by required.please take a look of
https://github.com/gin-gonic/gin/issues/491


fix passing server port back into callback

Hi @LinusU!
I had a play with your cleanup of nicercast, great job!
I had a similar issue to @yoiang where I couldn't use this as a drop in replacement with airsonos. I found it was simply that the port was not being provided correctly to the listen callback - here's the fix.
BTW I'm trying to gather patched versions of airsonos, nicercast, and nodetunes on my remote (jabooth) as I get the sense looking over the activity on these repos over the last 12 months that @stephen is a little bandwidth constrained to play with all this stuff at the mo! I'm hoping that might be a proving ground for this stuff for @stephen to look over down the line, hope that's OK! 👍

@LinusU to be clear I've already merged this into my jabooth fork: https://github.com/jabooth/nicercast/pull/1

The API was designed like this on purpose to mimic the http.Server from Node.js core. You can currently get the port like so:
const Nicercast = require('nicercast')

// Stream raw audio from stdin
const input = process.stdin
const server = new Nicercast(input, { metadata: 'Process Input' })

server.listen(function () {
  console.log('The port is:', sever.address().port)
})

No need for any additional api. Also, the API suggested is very strange since the callback is receiving the port as the first argument, in most Node.js apis, the first argument to the callback is reserved for a possible error...

@LinusU fair enough, that's a nice design policy to match the node API. Point still remains though that that API is incompatible with the way AirSonos presently expects to call Nicercast:
https://github.com/stephen/airsonos/blob/master/lib/tunnel.js#L75
The best solution is likely to update AirSonos to query the server for the port as you suggest, but either that change or this patch here is needed to make your version of Nicercast play nice with AirSonos - as is it doesn't work.

I see, 🤔
Well, I don't have a problem with changing the start function since it's only provided for backwards compatibility...

I just pushed 1e1c076, what do you think? :)

Nice, that fixes the issue for @yoiang and others that try and use your PR with the current stephen/airsonos master without sacrificing the more principled API :)
I got a bit carried away in modernizing the code on my airsonos/nicercast/nodetunes forks, so I've actually implemented the API you suggested above there:

https://github.com/jabooth/airsonos/commit/af30ac3dfc01a4c5ea7287d97c156945e28bec15
https://github.com/jabooth/nicercast/commit/6a6f9cb91d255f82f878590a2f004b7b07dbc00c

Will see over the next few weeks if the direction of travel makes sense, but for now I'm merging all active useful bug fixes/bumping dependencies/moving to ES2015 paradigms (and hence moving to Node 6+).
May only be for myself in the end, but hey, I'm having fun. ;)


Suppress error messages in document?

Hey, thanks for making this—I'm glad to see a tool that converts Markdown without many errors around bold and italic characters, which I know was a sticking point of the old gdocs2md plugin. I just wanted to offer a couple of thoughts/ideas on this:

I think there should be a way to suppress error messages, especially as they show up inline in some cases. (Some of the things that create error messages, specifically the message around there being multiple H1s in a document, aren't useful for me, as I tend to write multiple headlines when I'm editing.)  My suggestion would be to either put them all at the top of the document so they don't disrupt the flow of the doc, or to allow users to turn them off entirely. For my purposes (mostly just standard core features of the MD spec like links, headers, bold, ital, blockquote, and the occasional image), the error messages would probably just slow things down.
Since Google Docs doesn't have a natural equivalent to the blockquote, I wonder if you'd be open to making it so that when a section is indented, it treats the indent the same as a blockquote. Could be left as an option for users.

Overall though, thanks for creating this. I write everything in Markdown, but all my stuff inevitably gets edited in Gdocs, meaning that it creates a lot of headaches around trying to convert things back. This helps ease some of the frustrations, I think. :)

Hi -- glad you like gd2md-html for converting Google Docs to Markdown. This is a side project, so I'm not sure when I'll get to these, but thanks for the suggestions!

Suppressing error messages: I'll consider this as an enhancement request, but if your Google
is pretty clean, you shouldn't have any error messages. Usually, they're a warning that something won't render properly (or images that need to be handled separately. One exception is the multiple H1s: that's the convention we tend to observe at Google, but it's not technically an error.

Blockquote: Google Docs does allow you to indent a block, but there's nothing that marks it explicitly as a blockquote element. Processing indented paragraphs is certainly possible, but I'm not sure how complicated it would be. One workaround for now (and this is true for almost any Markdown element) is that you can just write a Markdown blockquote in your Doc.

Regarding the H1 heading warning. I agree with you that that should not be an inline warning. I'll remove that when I get a chance (probably as a separate bug).

Thanks! Appreciate it.

Closing this -- heading warning fixed, and there's another bug for the blockquote/indent issue that's still open.

Thanks for taking care of this, by the way.

You're welcome -- I'll try to think about the block quote/indent issue when I have some time.

@readtedium Exploring the behavior of Google Docs might be a good subject for you newsletter!

@evbacher I love that you suggested this. Let me think on it—I think it could be a lot of fun. Will keep you posted, cheers!


Update Readme and embed the YouTube Link

Hey Jay!
Looking forward to contribute to your project and update the readme so that youtube link becomes an embed and more accessible!
Requesting you to also add the girlscript label to the issue.

okay!


Please ignore the changes

Learning pull request, fork, bla bla in GitHub.

fdsfdsf

fdsfdsfdsfda

I think it is enough to complete your project

I think it is enough to complete your project


Bubble up errors from the Bitcoin interface instead of panic'ing there

We assume a bitcoind is always running beneath Liana. As such, we make a reasonable attempt to stay connected on spurious errors but we panic if we can't reach it for more than a minute. We also panic on unexpected API breaks (if an expected field isn't present or of the right type).
The rationale for this is pretty simple:

We simply can't continue without a running bitcoind. On a bitcoind failure there is nothing else to than stopping the program.
Failing directly in the bitcoind module (or any other implementation of the Bitcion interface) avoids cluttering the whole API with Result's.

That said, we manifested some interest recently in actually bearing the cost of cumbersome Result's in the API in order to:

Have nicer failures. Sure, we can't continue without bitcoind. But it doesn't mean we should straight away crash from under the user who would probably be using the GUI and have no clue what's going on.
On some non-fatal failures (which ones? cc @edouardparis), try to restart Liana. (Maybe for https://github.com/wizardsardine/liana/issues/566? If so there is nicer way to achieve this..)

I open this as a draft as it's based on #906 and i still have open questions:

Is it worth it? Not going to pretend i don't have a huge sunk cost here since i've implemented it all already, but still worth asking ourselves this question.
What do you think of the API?

The poller thread now needs to be externally managed, which i think makes the most sense.
I couldn't come up with anything better than Result<T, Box<dyn std::error::Error>> for the Bitcoin interface trait. I haven't looked too hard into it but if you've got a better suggestion i'd love to hear it.

Failing directly in the bitcoind module (or any other implementation of the Bitcion interface) avoids cluttering the whole API with Result's.

I personally believe Result is not cluttering the API. Rust has great ways to write error handling code in contrary of GO where you have if err != nil everywhere, and even with GO I was told to never use panic except in the internal of encapsulated code that have very clear invariants. Bitcoin node is totally external to the code and should not be considered a such.

Have nicer failures. Sure, we can't continue without bitcoind. But it doesn't mean we should straight away crash from under the user who would probably be using the GUI and have no clue what's going on.
On some non-fatal failures (which ones? cc @edouardparis), try to restart Liana. (Maybe for
https://github.com/wizardsardine/liana/issues/566? If so there is nicer way to achieve this..)

We agree about the user UX/UI, better to show him the issue. I see three kinds of errors:

specific errors returned by commands (client request is not good, context changed, coin was already spent...): the error is already displayed to the user in a orange banner.
Failure error in the commands (means the poller is still running): we can display an error to the user to debug in an orange banner.
Failure error in the poller (the poller stopped): we can redirect user to a full page like the one when the bitcoin node is not running with the same layout and a restart button.

Is it worth it? Not going to pretend i don't have a huge sunk cost here since i've implemented it all already, but still worth asking ourselves this question.

Yes, especially in the long term. If we have multiple backend support we may have errors that we want to propagate instead of panicking.

What do you think of the API? poller thread now needs to be externally managed, which i think makes the most sense.

I like that we have a final error handling in the main.rs.

I couldn't come up with anything better than Result<T, Box> for the Bitcoin interface trait. I haven't looked too hard into it but if you've got a better suggestion i'd love to hear it.

I believe it is fine for now, we can always rework on top if we need fined grained error matching.

specific errors returned by commands (client request is not good, context changed, coin was already spent...): the error is already displayed to the user in a orange banner.

If we are making a bad request i don't see how restarting could make a difference. We should stop as soon as possible. (Except maybe in rare mishandled edge cases where the delay might solve the issue.)

Failure error in the poller (the poller stopped): we can redirect user to a full page like the one when the bitcoin node is not running with the same layout and a restart button.

I'm not sure. It seems to be very specific while the error could be due to many other things than the connection with bitcoind?
Maybe if the poller crash, a modal with the error should be displayed. We could let the user change their bitcoind settings there and try to restart but we shouldn't make it feel as if it's necessarily going to fix the issue.

If we are making a bad request i don't see how restarting could make a difference. We should stop as soon as possible. (Except maybe in rare mishandled edge cases where the delay might solve the issue.)

Then not a banner, but a full page error (not in ugly orange) with a warning icon and all the details.

I'm not sure. It seems to be very specific while the error could be due to many other things than the connection with bitcoind?

Maybe if the poller crash, a modal with the error should be displayed. We could let the user change their bitcoind settings there and try to restart but we shouldn't make it feel as if it's necessarily going to fix the issue.

In both case, it is good to have an error message to the user and maybe a button "retrieve the logs", that open the file system management window and let user register the logs of the day in a file he chose the location.
(Instead of pointing him toward the not trivial "//liana.log")
And I agree that we shouldn't make it feel as if it's necessarily going to fix the issue.

Yes, that's all good points.


rustup

Make sure that https://github.com/rust-lang/rust/pull/72425 helped

@bors r+

:pushpin: Commit 11d9409e82e68876dd292c364d4bfaf66220de36 has been approved by RalfJung

:hourglass: Testing commit 11d9409e82e68876dd292c364d4bfaf66220de36 with merge 63ea143684a8f3baa5e327b0614f6daee821b607...

:sunny: Test successful - checks-travis, status-appveyor
Approved by: RalfJung
Pushing 63ea143684a8f3baa5e327b0614f6daee821b607 to master...


:star: Pass login info from front to back

'loginInfo' no longer needs to be a global variable; it is passed from
from top-level to all functions that require it

Codecov Report

Merging #139 (cb76783) into main (7ae1e7a) will decrease coverage by 6.13%.
The diff coverage is 89.18%.

@@             Coverage Diff             @@
##              main     #139      +/-   ##
===========================================
- Coverage   100.00%   93.86%   -6.14%
===========================================
  Files           16       18       +2
  Lines          177      212      +35
===========================================
+ Hits           177      199      +22
- Misses           0       13      +13

Impacted Files
Coverage Δ

src/core/apiCalls/httpRequests/HttpError.js
100.00% <ø> (ø)

src/core/apiCalls/httpRequests/linkHeaderParser.js
100.00% <ø> (ø)

src/core/validations/validationOfAction.js
100.00% <ø> (ø)

src/core/validations/validationOfEntryType.js
100.00% <ø> (ø)

...re/apiCalls/httpRequests/httpRequestBodyBuilder.js
73.46% <73.33%> (-26.54%)
:arrow_down:

src/core/apiCalls/apiResponseGetter.js
100.00% <100.00%> (ø)

.../apiCalls/httpRequests/httpRequestHeaderBuilder.js
100.00% <100.00%> (ø)

src/core/apiCalls/httpRequests/httpRequestMaker.js
100.00% <100.00%> (ø)

...apiCalls/httpRequests/httpRequestResponseGetter.js
100.00% <100.00%> (ø)

...ore/apiCalls/httpRequests/httpRequestUriBuilder.js
100.00% <100.00%> (ø)

... and 6 more

Continue to review full report at Codecov.

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


Demo seems to be broken

I tried running the example app and it does not quite look as I would expect it to :

What is not working? Can you provide repro(s)?

Cannot reproduce, closing it for now


Fix hang following failed finish-commit

Steps to reproduce:
$ pachctl create-repo foo
$ pachctl finish-commit foo bar # commit doesn't exist
$ pachctl start-commit foo # now hangs

looks like we have a locking issue when calls to finish-commit fail.

This currently works for me:

$ pachctl create-repo foo
$ pachctl finish-commit foo bar
rpc error: code = 2 desc = "commit foo/bar not found"
$ pachctl start-commit foo
af44ba6e7aba4e399a563ca5397f3586

Nice, makes sense that this would be fixed too given the new storage backend. Closing.


feat(model): correctly store time data on read / write

Search Records must convert DD/MM/YYYY -> ISO 8061 form
Create Record must convert ISO 8061 form -> DD/MM/YYYY
Patch Record must convert ISO 8061 form -> DD/MM/YYYY
This is done to adhere to data formatting standards set
https://docusign.atlassian.net/browse/XPLAT-3581


Any plans to get this project on Maven Central?

After looking around I can tell this is one of the better Coinbase Pro Java projects out there: well tested, regularly maintained, follows good Git practices. But the jar not being available on Maven Central makes it much more difficult to use this work in other projects. Are there any plans to do that? It would be very nice if I could just put the dependency in my build file, and it would be much appreciated!

I looked at maven central but couldn't figure out their open-source policy yet. In the interim, the plan is to publish to git using git-workflows


Fix CI failures on develop

This fixes a bug in eliminate_identity.

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

Comparison is base (8137ada) 91.43% compared to head (3cfb5d5) 91.43%.

:exclamation: Current head 3cfb5d5 differs from pull request most recent head 73efc07. Consider uploading reports for the commit 73efc07 to get more accurate results

:exclamation: Your organization needs to install the Codecov GitHub app to enable full functionality.
Additional details and impacted files
@@           Coverage Diff            @@
##           develop    #2609   +/-   ##
========================================
  Coverage    91.43%   91.43%
========================================
  Files          458      458
  Lines        17355    17355
========================================
  Hits         15868    15868
  Misses        1487     1487

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


Stories/webpack setup

Sets up webpack

I think this PR is too big, we may have to restrict scope of this PR to a working condition and create separate issues enhancements
Like,

Reduce prototype corruptions
Remove global states
Basic benchmarking setup
etc

Big PRs will be very hard to review


Organize Fish List

The fish list should be alphabetized or organized by fish type or both. It's a little difficult to find a fish if you have a lot of them.

Fish list is organized in v1.14.


Add IPFamily() / IPStringFamily() / CIDRFamily() / CIDRStringFamily()

What type of PR is this?
/kind api-change
/kind feature
What this PR does / why we need it:
Often you want to test whether two IPs/CIDRs are of the same family,
without actually caring which family they are. While you can do this
by checking:

  if utilsnet.IsIPv6(ip[0]) == utilsnet.IsIPv6(ip[1]) {

this is somewhat confusing to read and can look like it is checking
that they are both IPv6 if you read it quickly.

So add new functions so that you can do

  if utilsnet.IPFamily(ip[0]) == utilsnet.IPFamily(ip[1]) {

(This also renames the former "IPFamily" type to "IPFamilyType", so
that "IPFamily" can be used for a function name.)

Some examples:

kubelet (though that should be using netutils.IsDualStackIPs() anyway)
endpoints controller
iptables proxy
ipvs proxy
tons of examples in ovn-kubernetes...

Which issue(s) this PR fixes:
none
Special notes for your reviewer:
I had thought utils wasn't API-stable, but I see in the README.md now that "stable, or backward compatible, API" is listed among the "criteria for adding code here".
I broke API by renaming "IPFamily" to "IPFamilyType" so I could use "IPFamily" as a function name. If I can't do that then I need alternate name suggestions...
Release note:
Renamed the IPFamily type to IPFamilyType.

Added IPFamily() / IPStringFamily() / CIDRFamily() / CIDRStringFamily() functions
to make it easier to check "are these two IPs/CIDRs the same family?"

/sig network
/cc @aojea

/sig network

minor comment for adding a test case
LGTM but with the same doubt about the IPFamily -> IPFamilyType change
/assign @thockin
for approval and try to clarify the doubts

redone with IPFamilyOf(net.IP), IPFamilyOfString(string), IPFamilyOfCIDR(*net.IPNet), IPFamilyOfCIDRString(string)

LOL. OK, apparently in the current code, utilsnet.IPv4 is an IPFamily, but utilsnet.IPv6 is an untyped string. I'm going to assume that's obviously a mistake and we should break API to fix it.

/unassign thockin
so it will show up as needing an API reviewer...
/remove-lifecycle stale

API review needed because:

This PR fixes an obvious bug where netutils.IPv4 had the type netutils.IPFamily, but netutils.IPv6 was an untyped string. Though this is an API break, it is unlikely to break any existing code. Among other things, it appears that k/k never got ported to use the utils-ified version of this API anyway, nor is it used by sigs.k8s.io/kpng.


Can we create a feedback/suggest a correction button for DPUL similar to that of FInding Aids site?

@kelynch and I discussed this briefly as well.
Met  with Ellen A (South Asian Ephemera) and Gabrielle W. (Latin American Ephemera) about ephemera collections. IT would be great to have a button similar to the Finding Aid site that would open a form for suggestions to enhance metadata or feedback to alert staff to mistakes or corrections needed to metadata and/or images.
A feedback mechanism of some sort (perhaps exactly this?) was also discussed with Emma S. of SC (Coordinator of the Curated Collections program).

Yeah, this is an old ticket: https://github.com/pulibrary/pomegranate/issues/285.

Here's a screenshot of the Finding Aids "Suggest a correction" form:

I like that, @escowles . It's clean and we would want something relatively simple to try out.  Box/container number wouldn't be needed...actually. The space could be repurposed for DPUL, perhaps to a dropdown? "feedback", "suggest a correction", whatever -- so that it could be sent to the appropriate people? what do yo think?

This seems like a different issue from #285. That one is a general feedback form as in the header on the catalog; this one is specific to a given record. What email address should this one submit to @kelea99 ?

@hackmastera it depends on the item and I would really like to hear your thoughts. I see  a couple of ways this can go--one is a bit of a pain, but more direct. the other seems like it would be programmatically easier (but I do not know)?

(Easier?): the correction suggestion goes to the exhibition owner(s).
The Correction Suggestion, depending on what the item/correction is, would be triaged:

The metadata is incorrect in the DPUL/Figgy/Online Catalog record:

Any corrections requests for MARC/catalog records may be sent to<EMAIL_ADDRESS>

Any corrections requests for EAD/Finding Aids: click on “suggest a correction” within the finding aid component itself or wherever that form is sent to ( would Kevin know this?)

Any corrections requests for ephemeral items would go to the Selector who works with the ephemeral collection (examples include Gabrielle/Fernando for LAE, Thomas/Anna for Soviet, Ellen for SAE, etc.)

If an item is described in an exhibition in DPUL incorrectly (in a curators note, or text within and exhibition, for example)

Contact Kim Leaman<EMAIL_ADDRESS>/ Slack: Kelea) and/or the exhibition curator listed in the left hand column on the “About” pages within the exhibit.

If the wrong metadata is associated with an item in Figgy and/or DPUL.

Contact Kim Leaman<EMAIL_ADDRESS>/ Slack: Kelea), and provide a link to the item in figgy.
If the images are oriented incorrectly in the viewer, pages are askew and/or missing in Figgy.
Contact Kim Leaman<EMAIL_ADDRESS>/ Slack: Kelea) or Roel Munoz<EMAIL_ADDRESS>/ Slack: Roel) and provide a link to the figgy/online catalog/DPUL URL, along with a description as to what is wrong with the images.

@kelea99 Either way works and it seems like a discussion to have with the exhibition owners. Option 1 we would do by pulling the email addresses from the exhibit record. Option 2 we would do by sending them all to a single / central email address (probably a metadata-oriented libguides email address?); and then the person monitoring that address would follow the workflow you lay out. We would just need to know what the email address is to send to.

Sorry I said libguides but I meant libanswers.


[MEM-445] Update READMEs

Prettify the READMEs so people can use them as a proper reference 🤸
It's still not running for me locally and there's a high chance that what I wrote here isn't possible (mostly due to lack of OP Bank credentials). But if there's a way that people could clone the repo, run the tests and try out the mock server - that'd be good to mention. Otherwise, if it's not possible, we can point this out and say that they can follow the tutorial for full instructions and that this code is only for reference.
I pinged you on Slack @aby2s but happy to continue the conversation here if you'd prefer. Whatever's easier!

Also if you know why the build is failing because of two README files, let me know 😂 @aby2s


Is this project an UI component library?

Could you add a README.md ?

Yes, but it's used for MASA Stack, if you want to try use it, you can startup the MasaWebApp project. Before release MASA Stack 1.0, we will add README.md for it.


Can Someone help me in setting up the double take.[FEAT]

Is your feature request related to a problem? Please describe.
Need help with the installation of double take, I use an Intel NUC along with a google coral TPU. Frigate is up and running but there is an issue with the MQTT. The error for MQTT is Client not connected.

It might be obvious but sharing this just to be sure. This is a part of my config as example:
mqtt:   host: <IP_ADDRESS>   username: username   password: passwordHere123


Why browser-sync instead of webpack-dev-server?

Could you please explain?

browser sync has a lot of additional features (like browser synchronization, https out of the box and many other cool stuff), which speeds up development and testing your application (especially manual, since we can't fully automate UI testing without checking in by hands).
And since webpack-dev-server is just a simple express server with webpack-dev-middleware, why not use webpack-dev-middleware with browser sync? It gives us more power and doesn't brings much overhead.


Thank you!

No issue — just wanted to say thank you for this project. It's really nice to be able to use this in environments where standard dotnet test tooling isn't available. ❤

your welcome :-)


Crash on fake player

The server crashes any time a block entity with a fake player is ticked, and TabTPS is installed. Crash report as follows, create's deployer being the block used to test the issue here, but could theoretically be recreated with any fake player: https://pastebin.com/D85sH97i

duplicate #39


GH-36752: [Python] Remove AWS SDK bundling when building wheels

Rationale for this change
In https://github.com/apache/arrow/pull/12227 we decided to use a bundled version of the AWS SDK when compiling Python wheels, in order to downgrade the AWS SDK version.
Now that we have fixed S3 finalization issues (https://github.com/apache/arrow/pull/36442), it should be ok to rely on the vcpkg-installed version of the AWS SDK again.
What changes are included in this PR?
Remove use of bundled AWS SDK and use S3 vcpkg feature for requirements.
Are these changes tested?
On CI and via crossbow
Are there any user-facing changes?
No

Closes: #36752

@github-actions crossbow submit -g wheel

@github-actions crossbow submit java-jars

@github-actions crossbow submit java-jars

Can we change https://github.com/apache/arrow/blob/main/ci/scripts/python_wheel_windows_build.bat too?

Can we change https://github.com/apache/arrow/blob/main/ci/scripts/python_wheel_windows_build.bat too?

Thanks @kou, I didn't see that one :)

@github-actions crossbow submit -g wheel

@github-actions crossbow submit wheel-windows-cp310-amd64

The Windows wheel failure is now unrelated, see the above issue.
The build is successful with aws-sdk-cpp from VCPKG, it is failing due to a couple of tests that are failing on main too.


Fixes 4151: remove support for YYYY-MM-DD date formats

Summary

Changes /snapshots/for_date/ request to remove support for YYYY-MM-DD date formats

We currently support both RFC3339 and YYYY-MM-DD formats to maintain backward compatibility with IB. We can remove support for YYYY-MM-DD now as they've made the necessary changes here

 Frontend PR should be merged first

Testing steps

Try to make a request to /snapshots/for_date/ with a YYYY-MM-DD date, this should fail:

{
  "date": "2024-10-02",
  "repository_uuids": ["30050c99-e904-4bf3-a31d-c213e203e19d"]
}

A request like this should still work:

{
  "date": "2024-10-02T00:00:00Z",
  "repository_uuids": ["30050c99-e904-4bf3-a31d-c213e203e19d"]
}

https://issues.redhat.com/browse/HMS-4151

/retest


Demo try

/packit build

/packit-stg build

/packit copr-build

/packit-stg copr-build

/packit-stg production-build

/packit-stg upstream-koji-build


Support Polls

Summary
Support polls from the discord documentation https://discord.com/developers/docs/resources/poll,
Why is this needed?
This is needed because polls are cool 😎 (and also a new API feature)
Ideal implementation
To be decided.
Checklist

[X] I have searched the issue tracker and have made sure it's not a duplicate. If it is a follow up of another issue, I have specified it.

Considiering it's just a minor change to the TextableChannel.send(), I'm proposing the following implementation:

A hikari.polls module holding all relevant classes/enums, similar to that of hikari.embeds.
A minor modification to TextableChannel.send() to accept poll= argument.
2 new routes in hikari.internal.routes.


logstash dies with OpenBreaker exception

About twice a day, logstash 1.5.2 will stop processing requests.  It logs this message:
{:timestamp=>"2015-07-07T09:25:07.113000-0700", :message=>"Exception in lumberjack input thread", :exception=>#<LogStash::CircuitBreaker::OpenBreaker: for Lumberjack input>, :level=>:error}

The only reference I see for this is in the code, where it says, "it's safe to ignore".  Either that's not true, or not implemented well.
The comment also says that it's a result of too many errors.  No other errors are logged before this message appears.
Restarting logstash by itself doesn't help much, because it doesn't seem to like waking up with 500 shippers trying to connect.  It will say "Lumberjack input: the pipeline is blocked, temporary refusing new connection" and throw more of these OpenBreaker errors (though not always fatally?)  Sometimes I have to shut down all the shippers and bring them back up slowly, allowing the backlog to clear before bringing more shippers online.

I'm now running a cron job to restart logstash every three hours, because if it's dead when I get to the office, it won't catch up.

The comment also says that it's a result of too many errors. No other errors are logged before this message appears.

I think its badly phrased. The history here is that if events were coming in faster than Logstash could handle, lumberjack connections would begin to block too long trying to push events into the Logstash queue. If Logstash forwarder timed out while its connection was blocked, it would disconnect, reconnect, and send events again, and potentially block again. Problem is a blocked connection never frees. So if the rate at which forwarders begin reconnecting exceeds the rate at which connections are becoming unblocked and becoming freed, the connection count would increase to the point where Logstash would crash (Too many open files or OutOfMemory).
To prevent the crash, latest lumberjack now times out connections if they can't push onto the Logstash queue. However, clients would still keep reconnecting and resending events and potentially duplicating events. First try only manages to push 5 of 50 events, second try managed 10 of 50, third try managed 2 of 50 - but its the same 50 every time. Basically all events in the spool must be pushed within the timeout or they are ALL retried.
To prevent that storm of event duplication if Logstash is going to slow - the breaker was implemented to throw up a barrier until Logstash caught up.
TL;DR:
At the time the breaker throws, your event incoming rate is bigger than Logstash handle. You likely need more resources.
However, if it's just at one point in day where rate is too big, and you don't mind a slight delay while it catches up, Log Courier might help.

I added a second logstash server to the mix yesterday, which I don't think has helped.  I had already increased my timeout to 60 seconds and decreased the batch size to 100 events.
logstash-forwarder just stops - no retry messages are seen as I've seen before (with debug enabled).  Since it doesn't failover to the other logstash server, now I have to restart all 500 shippers via cron.

  LS_WORKER_THREADS was set high, but the init script didn't use it.  Sigh.

Except I don't see that any of the packaged init script handle "-w" or "--filterworkers"...
https://github.com/elastic/logstash/tree/02886972192c3d9972f867c80d069b1bd719a917/pkg

You put it in LS_OPTS in the /etc/default or /etc/sysconfig file for logstash.

LS_OPTS="-w 10"

The problem continues to haunt. Is there any solution available so far?
Thanks a lot.
Udai

Is it default config of the filterworker thread is 1?should set to a higher num by -w num phase while starting the process. I met with this problem today,once I setup more LSF process, then the LS get jam after a while.Now I use -w 10 to start process seems to work. It's able to avoid the jam for now.should wait and see what's going to happen next.BTW,should get the jvm of logstash enough heap mem

Could you please let me know how do i pass the LS_OPTS="-w 10" in the zip version, i am not using the rpm packages, what i tried added the OPTS in the logstash startup script but still i am facing the same issue
{::timestamp=>"2015-08-29T18:01:34.538000-0700", :message=>"Lumberjack input: the pipeline is blocked, temporary refusing new connection.", :level=>:warn}.
thank you.

+1


On Sign Transaction, visually indicate a tx has been signed

What problem does your feature solve?
Click on the sign transaction button doesn't have any UI changes because a new section is created at the page bottom to submit the tx, but the user cannot see the section.
What would you like to see?
Suggestion is similar to what we have done previously and scroll the user to the section showing signing is successful and they can submit the tx

Behavior to scroll user down has been covered by this scope of work: https://github.com/stellar/laboratory/issues/1034


Test-TargetRessource throws an error (comparing block sizes fails at line 225)

if($BlockSize -gt 0 -and $AllocationUnitSize -ne 0)
should be..
if($BlockSize.BlockSize -gt 0 -and $AllocationUnitSize -ne 0)

Confirmed this is an issue.
Other solutions...
$BlockSize = Get-WmiObject -Query "SELECT BlockSize from Win32_Volume WHERE DriveLetter = '$($DriveLetter):'" -ErrorAction SilentlyContinue  | select -ExpandProperty BlockSize
or
$BlockSize = (Get-WmiObject -Query "SELECT BlockSize from Win32_Volume WHERE DriveLetter = '$($DriveLetter):'" -ErrorAction SilentlyContinue).BlockSize

Is apparently already fixed in the dev branch with the Pull Request #19 from @Richiban.
So the issue should be gone with the next release to the PS gallery.


Ping/MTR packet loss with traffic looping back to WSL with every hop.

Windows Build Number
Microsoft Windows [Version 10.0.19042.985]
WSL Version

[X] WSL 2
[ ] WSL 1

Kernel Version
5.4.72
Distro Version
Ubuntu 20.04
Other Software
My traceroute v0.93
Repro Steps
I am just going traceroutes and ping tests to other sites and I am only getting weird traces and packet loss in WSL.
mtr google.ca
Expected Behavior
The route should reach the destination without loss.
Actual Behavior
Getting 25% or more packet loss. Appears traffic is looping back to WSL with every hop.
Diagnostic Logs
$mtr google.ca
 Host                                                                        Loss%   Snt   Last   Avg  Best  Wrst StDev
 1. LWI376877.mshome.net                                                      7.4%    95    8.0 679.0   0.2 2983. 904.7
    <IP_ADDRESS>
 2. <IP_ADDRESS>                                                            6.3%    95   17.3 657.5  11.3 2870. 864.7
    <IP_ADDRESS>
    <IP_ADDRESS>
 3. be123.bhs-d1-a75.qc.ca                                                    6.3%    95   18.9 694.3  11.6 3145. 911.9
    <IP_ADDRESS>
    <IP_ADDRESS>
 4. <IP_ADDRESS>                                                                6.3%    95   17.2 699.5  12.7 3112. 916.3
    <IP_ADDRESS>
    <IP_ADDRESS>
 5. <IP_ADDRESS>                                                            6.3%    95   15.5 651.1  13.7 3001. 876.2
    <IP_ADDRESS>
    <IP_ADDRESS>
 6. (no route to host)

$ip a s dev eth0

4: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 1000
    link/ether 00:15:5d:3b:85:07 brd ff:ff:ff:ff:ff:ff
    inet <IP_ADDRESS>/20 brd <IP_ADDRESS> scope global eth0
       valid_lft forever preferred_lft forever
    inet6 fe80::215:5dff:fe3b:8507/64 scope link
       valid_lft forever preferred_lft forever

$ip r
default via <IP_ADDRESS> dev eth0 linkdown
<IP_ADDRESS>/20 dev eth0 proto kernel scope link src <IP_ADDRESS> linkdown

Issue seems fine today. I will close this for now.
Strangely the issue was happening when connected or not connected to VPN, but only occurring on WSL.


Step 3 of instructions "Set the Redirect URI." needs more meaningful guidance.

[Enter feedback here]

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

ID: 11caa291-2e98-ac3a-d5d1-ecd416b93bdf
Version Independent ID: 4f30cddd-8849-1887-ada0-a83a3d2a0027
Content: Tutorial: Register an app with Azure Active Directory (Microsoft Dataverse) - Power Apps
Content Source: powerapps-docs/developer/data-platform/walkthrough-register-app-azure-active-directory.md
Service: powerapps
Sub-service: dataverse-developer
GitHub Login: @paulliew
Microsoft Alias: jdaly

Thanks for your comment, @davecatt. This issue has been assigned to the doc author for review.

@davecatt There is documentation for that value in the Azure app registration form. It states:
Redirect URI (optional)
We’ll return the authentication response to this URI after successfully authenticating the user. Providing this now is optional and it can be changed later, but a value is required for most authentication scenarios.
You have to provide a valid URL, but the URL target does not need to exist.
Thanks for the feedback.


feat(Flow): add Flow theme

Flow is a new theme that removes the friend's activity and replaces it vertical playbar. It also modifies the lyrics' text size to make it more presentable. It has a gradient effect. The overall color scheme is light and pastel-like tone.

Remove friend's activity
Vertical Playbar
Gradient Effect
Change Lyrics Text Size
Better Hovering Effect on Cards

Thanks for the new theme!!


Issue with Async-http-client package for WatchOS app

When I test my watchOS app on the simulator the network call works fine but when I test on the real device it appears there's an issue with this 'Async-http-client'package.
in HTTPHandler.swift this line:
static let maxByteBufferSize = Int(UInt32.max)
crashes the app,
when I replace it with:
static let safeMaxBufferSize: Int = {
if MemoryLayout.size == MemoryLayout.size {
// 32-bit system - use Int32.max
return Int(Int32.max)
} else {
// 64-bit system - using UInt32.max is safe
return Int(UInt32.max)
}
}()
static let maxByteBufferSize = safeMaxBufferSize

it no longer crashes the app but the network call to OpenAI still fails.
When I tested the iOS version of my app on the real device it works no problem. Not sure where the issue could be coming from.
Where is this 'Async-http-client' package sourced from?

The exact error I get once I've changed this line is:
LLM generate The operation couldn’t be completed. (NIOPosix.NIOConnectionError error 1.)

https://github.com/swift-server/async-http-client is a famous package.
Sorry, I can`t test on real device, can you provide details?

where is it being sourced from in the dependencies though. I want to relink it to a forked version but its not in the package.swift file. It must be coming upstream from another package right?
I think it's only being used in the OpenAI.swift file for the engine call right?
Could I use Alamofire's functionality (or some other package) to do the same thing?

Yes.

I fixed this issue by switching the openAI.swift file to use URL session like he recommends in the OpenAI-kit git repo Readme

Thanks, please review https://github.com/buhe/langchain-swift/pull/99

Until i buy apple watch at October :)

This is what worked for me:
let urlSession = URLSession(configuration: .default)
let organization = ""
let configuration = Configuration(apiKey: apiKey, organization: organization)
let openAIClient = OpenAIKit.Client(session: urlSession, configuration: configuration)

Thanks, please review https://github.com/buhe/langchain-swift/pull/99


Cant sing up with email

sadly we don't support sign up in our open source app. you can sign up at http://www.kickstarter.com/ or via our apps!


Add Pre-defined Effect that can give Advantage to Class Abilities

Hi,
Can you please add Advantage to Class Abilities and Spells if you can?   Checkbox?
This would allow the talents for advantage  on spells and elixirs to be added.

As always,
Thanks,

It's already possible to give advantage to spells via the built-in spellAdvantage pre-defined effect.
It would be possible to extend this to Class abilities as well though.

Pushing this back until we do #915


Expression parsing

The most difficult part of this: parsing expressions/equations. Here is an example of a simple linear function:
2x - 3

The functions not only have to be parsed, but the uses of x have be substituted for an actual x value. After that, the function has to be evaluated.
How should this be done?

Try passing over the string multiple times, each time looking for the next step in a sequence of operations:

Groups: (), [], {}
Exponents: a^b
Radicals: \_/{a}{2} (square root of a)
Multiplication and division: a*b/ab and a/b
Addition and subtraction: a+b and a-b

This will be 5 passes, and an extra 5 passes for every group there is.


Add android support

Fixes #10.

But wait, does SBCL have :android in *features* on Android? Have you checked?
My comment in #10 is about ECL, just in case :)

But wait, does SBCL have :android in features on Android? Have you checked?

Yes, of course.

Cool! Then I've nothing to complain about, feel free to merge!

Merged via  0089ea2 and d146e4a.
Thanks.


fix: bumped Go version from 1.13 to 1.15

Closes #263

Thanks @alexal. The commit should be a chore.


MAINT: spatial: distance refactoring

@@            master   #5762   diff @@
======================================
  Files          235     235
  Stmts        43281   43254    -27
  Branches      8163    8154     -9
  Methods          0       0
======================================
- Hit          33609   33600     -9
+ Partial       2598    2596     -2
+ Missed        7074    7058    -16

Review entire Coverage Diff as of bdcc9de

Powered by Codecov. Updated on successful CI builds.

From the peanut gallery: is gh-4668 anyhow relevant/related/wanted here?

@ev-br Not that I know of, are you sure that's the right issue number?

thanks, lgtm. there was some weird stuff there...


Support ES Module configuration files

Currently SVGLint only supports CommonJS module configuration files, as seen in the documentation. We should look into supporting ES Modules as configuration files as well.
This will likely require quite some changes to the codebase as importing ES Modules from CommonJS modules isn't trivial (the other way around is). So, the most straightforward way of supporting this is converting the codebase to ES Modules, however, this has the same drawback as mentioned in #34

This was resolved as part of #41. If you have any trouble using an ESM configuration file feel free to leave a comment in this thread :slightly_smiling_face:


ENH: add binder links

closes #34

Codecov Report

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

@@           Coverage Diff           @@
##           master      #45   +/-   ##
=======================================
  Coverage   75.85%   75.85%
=======================================
  Files          12       12
  Lines        1379     1379
=======================================
  Hits         1046     1046
  Misses        333      333

Continue to review full report at Codecov.

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

@rythorpe this might interest you. I added binder links to all the examples so you can try them on the cloud. Here is the somato example for instance. It's slow but it works!

This is great! As you said, it runs a little slow but I like how accessible it is.


Add improved ES6 Annex B regexp identity escape

Allow almost all source characters as identity escapes when DUK_USE_ES6_REGEXP_SYNTAX is enabled. However, the pull doesn't add support for backtracking out of e.g. an invalid hex escape and treat it literally.
Fixes #643.

Still need to implement the character class case.

Ok, seems to fix #643.


Xbox players seem to bypass blacklist

Apparently, xbox players are able to use any devcommands if they can get their console working.
If the devs won't tackle it quick enough, maybe Jere will just mod it right 🗡

It seems there is a trainer called wemod and some others but I couldn't get their names sadly, one of em enables m_cheat in the _console object and lets them use devcommands on any server.
Seems like there's not much that can be done about it afaik, as it's a clientside thing.
sorry if this wasted your time :)

Yeah, unfortunately my mod is pretty much the only one that has some kind of admin checks.


The description of the default backoff algorithm does not match the implementation

Describe the bug
In object_store::BackoffConfig we have:
Exponential backoff with jitter

See https://aws.amazon.com/blogs/architecture/exponential-backoff-and-jitter/

However, the actual implementation is "decorrelated jitter" (which is not exponential).
To Reproduce
N/A docs bug
Expected behavior
Docs describe implementation
Additional context
N/A

It is still exponential backoff, in that it multiples the last delay by some base? The linked docs also describe it thus?

Sort of...it's kind of "exponential with restarts" in the sense that it can always randomly jump back to a very small value:

It can also just randomly choose not to grow at all (e.g. 70-80 in the chart).  I think my problem is that both "exponential backoff" and "exponential backoff with jitter" are well known approaches (they've been around since before AWS) and if anyone sees "exponential backoff" they aren't going to bother to read the linked document.
Also, the linked document treats exponential backoff as an algorithm of its own.  E.g. it has its own bar in the legend:

I take your point, however, it is a jittered exponential backoff, i.e. the base is exponential backoff which is then jittered. This is reflected both in the wording of the linked doc, and the naming in the various AWS codebases, e.g. - https://github.com/aws-samples/aws-arch-backoff-simulator/blob/master/src/backoff_simulator.py#L40
The backoff growth is still non-linear, and this is important to convey IMO

I disagree (chart included), but I don't really want to fight the point.  As long as the actual process is clearly documented readers should figure it out.  I've accepted your PR suggestion.


Allowing Custom Ordering Adstock & Saturation

Hello team, as we all know we now have a large number of saturation and lagging functions, however our code was only forcing a specific type.
Create a folder with the lagging and saturation components, this will allow users to define the function they want and have it mapped.
Currently we could choose the function in the following way:
mmm = DelayedSaturatedMMM(
    model_config = my_model_config,
    sampler_config = my_sampler_config,
    lagging_function = "geometric",
    saturation_function = "logistic",
    date_column="date_week",
    channel_columns=["x1", "x2"],
    control_columns=[
        "event_1",
        "event_2",
        "t",
    ],
    adstock_max_lag=8,
    yearly_seasonality=2,
)

Important: For now the model continues applying lagging and then saturation, this cannot be modified yet but after doing this merge, I will start working on it in another PR.
Right now the model works perfectly with the following functions:
a) Saturation:

Hill
Michaelis Menten
Logistic

b) Lagging:

Weibull (PDF & CDF)
Geometric

Any of these combinations train properly. Important, the function plot_channel_contributions_grid is not available right now because was hard coded to work only with the main principal lagging and saturation functions. I need to think how to make it general, that being said, I do not consider that this should be a blocker to do merge, because it is only to display the saturation functions only. We can work on an improvement in another PR.

Description

Related Issue

[x] Closes #602
[x] Related to #551

Checklist

[x] Checked that the pre-commit linting/style checks pass
[ ] Included tests that prove the fix is effective or that the new feature works
[x] Added necessary documentation (docstrings and/or example notebooks)
[ ] If you are a pro: each commit corresponds to a relevant logical change

Modules affected

[x] MMM
[ ] CLV

Type of change

[x] New feature / enhancement
[ ] Bug fix
[ ] Documentation
[ ] Maintenance
[ ] Other (please specify):

📚 Documentation preview 📚: https://pymc-marketing--632.org.readthedocs.build/en/632/

Now is possible to pass an string to the class or a custom component class, e.g:
mmm = DelayedSaturatedMMM(
    model_config = my_model_config,
    sampler_config = my_sampler_config,
    adstock = "geometric",
    saturation = LogisticSaturationComponent,
    date_column="date_week",
    channel_columns=["x1", "x2"],
    control_columns=[
        "event_1",
        "event_2",
        "t",
    ],
    adstock_max_lag=8,
    yearly_seasonality=2,
)

If the user wants to allow for a custom function (Component) then he must create a class which contains a variable mapping property and a default config property. In order to allow other functions as lift test integration work.

I have still the issue of:
Traceback (most recent call last):
  File "/home/docs/checkouts/readthedocs.org/user_builds/pymc-marketing/envs/632/lib/python3.10/site-packages/sphinx/config.py", line 358, in eval_config_file
    exec(code, namespace)  # NoQA: S102
  File "/home/docs/checkouts/readthedocs.org/user_builds/pymc-marketing/checkouts/632/docs/source/conf.py", line 5, in <module>
    import pymc_marketing  # isort:skip
  File "/home/docs/checkouts/readthedocs.org/user_builds/pymc-marketing/envs/632/lib/python3.10/site-packages/pymc_marketing/__init__.py", line 1, in <module>
    from pymc_marketing import clv, mmm
  File "/home/docs/checkouts/readthedocs.org/user_builds/pymc-marketing/envs/632/lib/python3.10/site-packages/pymc_marketing/mmm/__init__.py", line 1, in <module>
    from pymc_marketing.mmm import base, delayed_saturated_mmm, preprocessing, validating
  File "/home/docs/checkouts/readthedocs.org/user_builds/pymc-marketing/envs/632/lib/python3.10/site-packages/pymc_marketing/mmm/delayed_saturated_mmm.py", line 22, in <module>
    from pymc_marketing.mmm.models.components.lagging import _get_lagging_function
ModuleNotFoundError: No module named 'pymc_marketing.mmm.models.components'

@juanitorduz @wd60622
If you don't find the separation into folders something practical then I'm going to leave everything in the main to avoid it. If you want to modify, feel free. Anything to move quickly.

The lift tests will need something like this:
variable_mapping = {
    "lam": "saturation_lambda",
    "beta": "saturation_beta",
}

def saturation_function(x, beta, lam):
    return beta * logistic_saturation(x, lam)

add_lift_measurements_to_likelihood(
    df_lift_test,
    variable_mapping,
    saturation_function=saturation_function,
    model=model,
    dist=dist,
    name=name,
)

The variable_mapping is already used, but the saturation_function would have to be exposed in each class as well

Action items:

[ ] Run the notebooks @carlosagostini
[ ] Point out new functionality in notebook @carlosagostini
[ ] Add docstring example for defining a custom saturation function @wd60622
[ ] Consider renaming DelayedSaturatedMMM -> MMM
[ ] Check the default priors for all of the adstock and saturation functions
[ ] Fix the commented out code
[ ] Fix the forward pass used in various methods
[ ] Create various tests for new saturation function behavior @wd60622

pre-commit.ci autofix

pre-commit.ci autofix

Lots of good stuff here. Think we got some more items to tackle
Sadly, I think the name change should be separate from this PR. Though having flexible saturation and adstock which makes the "Delayed" "Saturated" hints a name change.
Would love to hear the overall thoughts from the Bayesian wizard @juanitorduz

@cetagostini-wise @wd60622 I will review this PR tomorrow (it is my top priority). Today, I looked into the older ones that are ready to be merged soon 🙇 .

Hey @wd60622 @cetagostini, I had a quick look! It looks super nice, and the code is much cleaner! Thank you 🙏  I left some initial questions and comments later.
One thing I do not understand is the name Philly?  IMO can be very confusing and does not seem to relate to MMM.... why is the name compared to a simple MMM?

Hey team,
I address a few of the recommendations. I ran the notebook and it works properly.

I suggest we keep the class DelayedSaturatedMMM and add a deprecation warning. We can say we will remove it in the next release (e.g. 0.6)

Agree with this! @juanitorduz

Sadly, I think the name change should be separate from this PR. Though having flexible saturation and adstock which makes the "Delayed" "Saturated" hints a name change.

Sorry, my English is a bit bad lately @wd60622. But I understood that the name fascinates you and you are very excited about it but you don't like to express it in public! 🙂

One thing I do not understand is the name Philly? IMO can be very confusing and does not seem to relate to MMM.... why is the name compared to a simple MMM?

Regarding the background of the name, details from the internal (Top secret for now) 😅 But my opinion is that the big and great names don't have to be related to the product. What do apples have to do with technology? or What did "Google" mean even before it was a company? I'm sure a name like TheWorldsBestSearcher would never have suited them 💭
Current missing items:

[ ] Add docstring example for defining a custom saturation function @wd60622
[ ] Create various tests for new saturation function behavior @wd60622
[ ] Changing folder structures @cetagostini
[ ] Add deprecation warning @cetagostini

Feel free to modify or recommend suggestion if needed 💪🏻

@cetagostini @wd60622 This is looking great 🎸  !
As this is such a big refactor, shall we also re-un all the MMM notebooks (example, optimization and lift tests) to update the api if needed and to see if everything works as expected from the documentation perspective?

Tomorrow I'll be going over all comments!

I will make some tests and add to docs after the weekend!

FYI: https://github.com/cetagostini-wise/pymc-marketing/pull/3

I've added some docstrings
https://github.com/cetagostini-wise/pymc-marketing/pull/4

I think that this will close this issue: #383
Someone else might know a bit more context about that

I've added some docstrings
https://github.com/cetagostini-wise/pymc-marketing/pull/4

Able to merge these in @cetagostini ?
Think we are gettig closer. Any ideas you need help with?

[docs/source/notebooks/mmm/mmm_example copy.ipynb](https://github.com/pymc-labs/pymc-marketing/pull/632/files#diff-185a5ca13ee863d30d3ef55846e1efe76b397b8fa5ee51a0cd02baf40e09c398) this file should probably not show up here.

[docs/source/notebooks/mmm/mmm_example copy.ipynb](https://github.com/pymc-labs/pymc-marketing/pull/632/files#diff-185a5ca13ee863d30d3ef55846e1efe76b397b8fa5ee51a0cd02baf40e09c398) this file should probably not show up here.

Indeed, I have this file to test my code, will be deleted before merge @twiecki

I've added some docstrings
cetagostini-wise#4

Able to merge these in @cetagostini ?
Think we are gettig closer. Any items you need help with?

Not now, I'm finishing the plots this week, you can start to review if you want 🙌🏻 I should make a few plots, and will start to work on the new test, and pre-commits.

@cetagostini @wd60622 this is looking great! The code is so nice to read! For the next steps, I suggest:

Update branch (click the button XD)
Address comments and questions
Add missing type hints (and make MyPy happy)
Add missing unittests.
Make pre-commit-happy.
Rerun the MMM notebooks (all, to make sure we are not breaking something and also to see how this will look from the user perspective). Also, to remove the mmm_exaple_copy notebook ;)

After these steps are done, I can give another review round 🙌 . WDYT?

Hey team, majority of comments address.
All test are good except some plot test for 3.10. Maybe one of you can help with it?
Otherwise, both notebooks ran perfectly and the new adjustments feels pretty cool, would love if you have time to read the adjusted notebook for budget allocation.
Let me know!
cc: @juanitorduz @wd60622

Many of the failures are from the mmm test_plotting due to plot_direct_contribution_curves and plot_channel_parameter which at first glance is confusing unless those are still commented out. Are you able to run that test file locally?
i.e.
pytest tests/mmm/test_plotting.py

test_get_valid_distribution and test_get_invalid_distribution use the old _get_distribution method directly. Can you pull out that test logic and use the new get_distribution_from_dict
I'd have to look into the test_allocate_budget_zero_total a bit more.

+1 Like this plot! and really like the colors!

View entire conversation on ReviewNB

Or is it just the original one being renamed? The loaded model has the posterior / Dataset, right? Or do these plots require the model graph?

View entire conversation on ReviewNB

I've added tests for the adstock and saturation component modules in this PR
@cetagostini will have to merge them

My guess here is, the following intervals are coming from the real model, and not being estimated by scipy based on the posterior. Meaning, probably even when we used the posterior intervals to estimate the parameters, the results were not necessarily representing the whole uncertainty.

View entire conversation on ReviewNB

Regarding the model, run the example notebook. I added a "save" example which generates this model.

View entire conversation on ReviewNB

Done!

View entire conversation on ReviewNB

I've fixed the test_plotting and the _get_distribution tests in this PR
Would you be able to merge @cetagostini @cetagostini-wise
closes #86
related to #518

Thoughts on

removing the MMM class here
make use of MMM name now for the "DelayedSaturatedMMM"
Make a DelayedSaturatedMMM wrapper function which:

has same function signature as the current DelayedSaturatedMMM class init
warns that MMM class should be used instead
returns as specific instance of MMM with "geometric_adstock" and "logistic_saturation"

The only failing test now should be test_allocate_budget_zero_total
We are getting very close!!!

All tests are working on my side.

a few test on base failing locally.
================================================================== short test summary info ===================================================================
FAILED tests/mmm/test_base.py::TestMMM::test_init[toy_mmm0] - AttributeError: <module 'pymc_marketing.mmm.validating' from '/Users/carlostrujillo/Documents/GitHub/pymc-marketing/pymc_marketing/mmm/validating.py'> do...
FAILED tests/mmm/test_base.py::TestMMM::test_init[toy_mmm1] - AttributeError: <module 'pymc_marketing.mmm.validating' from '/Users/carlostrujillo/Documents/GitHub/pymc-marketing/pymc_marketing/mmm/validating.py'> do...
================================================================ 2 failed, 8 passed in 4.48s

Others test are are working properly on my local, trying to debug the reason to not work here.

Ah, forgot about the class methods. So the function for delayedsaturated will not work. Has to be a wrapper class instead. Same idea though

Indeed, didn't catch that, good catch mate!

@cetagostini-wise We are so close! At the very end could you please run all the mm notebooks :)

Yes!

View entire conversation on ReviewNB

I think the title is still missing!

View entire conversation on ReviewNB

Fixing the tests right now

Brought in some of the mock_fit logic from #582 because I didn't have the patience to wait for the local fits 😢
But I have all of the delayed_saturated tests running locally and have a couple of new ones for the new initialization ways

The only test that I expect to fail is the test_allocate_budget_zero_total. Maybe you can figure that one out! @cetagostini @cetagostini-wise

The only test that I expect to fail is the test_allocate_budget_zero_total. Maybe you can figure that one out! @cetagostini @cetagostini-wise

Totally, should be solved today during night!

Another item that will need to happen is docstring updating.
Lots of them have "delayed" and "logistic" hard-coded.

And we should write a test for the new hill_saturation function in the test_transformers.py. Can you take that @cetagostini

properties

Note it. I'll make it

We have just one test failing:
    def test_allocate_budget_zero_total(
        total_budget, budget_bounds, parameters, expected_optimal, expected_response
    ):
        adstock = _get_adstock_function(function="geometric", l_max=4)
        saturation = _get_saturation_function(function="logistic")
        optimizer = BudgetOptimizer(adstock, saturation, 30, parameters, adstock_first=True)
        optimal_budgets, total_response = optimizer.allocate_budget(
            total_budget, budget_bounds
        )
        assert optimal_budgets == pytest.approx(expected_optimal, rel=1e-2)
>       assert total_response == pytest.approx(expected_response, rel=1e-2)
E       assert 0.0 == 2.38e-10 ± 2.4e-12
E         comparison failed
E         Obtained: 0.0
E         Expected: 2.38e-10 ± 2.4e-12

tests/mmm/test_budget_optimizer.py:94: AssertionError

maybe use abs=1e-1 (or similar)

Made the change to 1e-1 and still failing. What is our tolerance here?

@cetagostini-wise @wd60622 If we add the type hint missing above and run all the notebooks, we are good to go, right? (plus the updating of the docstrings?)

budget_bounds: dict[str, tuple[float, float]] | None = None,
custom_constraints: dict[Any, Any] | None = None,
):

Already add the hints and ran the notebooks!

@cetagostini-wise @wd60622 If we add the type hint missing above and run all the notebooks, we are good to go, right? (plus the updating of the docstrings?)

Ready, except for the docstring. On it, should be done during the morning!

+1

View entire conversation on ReviewNB

+1

View entire conversation on ReviewNB


[Bug] create a config with the same name reported an incorrect error

Describe the bug

create a config with the same name reported an incorrect error, and the same name check did not work

To Reproduce

Expected behavior

Screenshots

KubeVela Version
1.6.5

Cluster information

Additional context

@wonderflow


Add Dockerfile for lbrycrdd

Addresses #1
Resulting images will be built using latest release by default. Can also be built from specific releases by docker build --build-arg RELEASE=v<IP_ADDRESS> foo/bar .
The image is built from ubuntu but using debian will result into a smaller image size.
foo/bar                ubuntu              ce625ddabdaf        13 minutes ago      156MB
foo/bar                debian              6a629229cc4d        18 minutes ago      109MB

@uLan08 we are likely going to move a lot of this over to https://github.com/lbryio/lbry-docker-orig and then replace this repository with that.  We have a lot of this ready already its just been a struggle to merge over to the lbryio repo from my repo.  Have a look at that repo and see if theres anywhere you can contribute I'd be happy to have other peoples eyes on this


TRNG needs to be enabled in SytemTop_axi4lite

I started a new design today and Vivado won't let me insert the neorv32_SystemTop_axi4lite-template into a block design.
I could track the issue down to the new TRNG-Module: when not enabled there is a problem with the neoTRNG_cell shown in the source-view .
When enabled, the problem disappears, and I can insert the module into the block design. After that I can disable it again, without any problems. Thats why an older project still worked, although I updated the processor.

Just so I understand correctly:
There is a problem with the TRNG when it is not enabled?
So Vivado shows a problem even before synthesis?

Exactly,

when not activated there is this "Question-mark"-Symbol.
Since this is in an inactive module, synthesis works. It just won't let me insert the module into a block design.

I can reproduce this behavior for simple file-based synthesis (no block design). However, Vivado does not complain.

The TRNG is the only thing that has three in-file entities. Seems like Vivado has problems with the last (lowest) entity level...
At least the question mark symbol vanishes when I comment the instantiation of the lowest TRNG entity.
https://github.com/stnolting/neorv32/blob/602b471a384c04671094fab9980b6c385265faa5/rtl/core/neorv32_trng.vhd#L308-L322

It just won't let me insert the module into a block design.

So you cannot synthesize the block design when the TRNG is enabled?

I now know, that the questionmark means, that the source is not found, but when I set the default value of IO_TRNG_EN to true (line 106 in the axi4-lite-template-file), Vivado finds the source for the neoTRNG_cell, and the Questionmark disappears:

)
Now I can insert the template into a block Design, and disable the TRNG again:

everything after that works, synthesis, implementation and so on

everything after that works, synthesis, implementation and so on

So this is more like a Vivado "feature" that requires an inconvenient GUI work-around?
Block design-based synthesis with TRNG enabled/disabled works, right?

Yes, just another "feature"...
As I said, everything after that works.

Do you think we should add a note to the according User Guide section regarding this feature?

Yes, I think that should be ok, like the note regarding the Tri-State Drivers.

Any proposals? :wink:

During the update to the newest core, the on-chip-debugger stopped working for me, and I had to dig a bit to find the note that the Zifencei-extension has to be activated for the debug-mode, which wasn't the case when I last started a new design. At first I thought of a hardware problem, since it worked before...

That also broke some of my Vivado designs... 😅
That's why I have added "Sanity checks" to the VHDL code (using assert ... report) like this:
https://github.com/stnolting/neorv32/blob/602b471a384c04671094fab9980b6c385265faa5/rtl/core/neorv32_cpu.vhd#L229
But Vivado conveniently ignores that...

However, Vivado conveniently ignores that...

At least for simulations you can choose to stop at an error

would it be an option to 'or' both [...]

Sure, but I like the "you get what you see" concept - so only the actually enabled extensions do get synthesized. Furthermore, some extension combinations have side effect on other extensions and there even are extension combinations that are illegal... I think the current approach using those sanity checks is the best trade-off here.

Do you think we should add a note to the according User Guide section regarding this feature?

the more I think about that, the more I think the TRNG should be activated in the AXI4 template from the beginning, since AXI is mainly a Xilinx/Arm-thing, isn't it. So most users using the AXI-template would run into this issue.
That doesn't mean there shouldn't be a note about that somewhere...

I think the current approach using those sanity checks is the best trade-off here

thats true

the more I think about that, the more I think the TRNG should be activated in the AXI4 template from the beginning, since AXI is mainly a Xilinx/Arm-thing, isn't it. So most users using the AXI-template would run into this issue.

Good idea. I'm OK with that. :+1:

That doesn't mean there shouldn't be a note about that somewhere...

True. I cannot think about a good wording...

You could include the following note (right below the one regarding TWI Tri-State-Drivers):

TRNG
For the neorv32_top_axi4lite-template the TRNG-Periphal is activated by default. Otherwise Vivado cannot insert this module into a block design.
If you don't need the TRNG, you can disable it by double-clicking on the module's block and deselecting 'Io Trng En', after inserting the module.

or something like this...

Sounds good!


Require login

New PR for requiring client side roles.  Props to @igorauad for the idea.

Supersedes https://github.com/meanjs/mean/pull/686
Great work @igorauad and @trainerbill
LGTM @lirantal

Closed #686
Thank you guys for the great work and collaboration on this.

@mleanos looks like I missed your comment there before merging in. @trainerbill ?


provide more granular way to manage embedding cache

close due to https://github.com/m10-payments/CompreFace


Ensure namespace is specified for all the 3rd party libraries

Summary:
As stated here https://github.com/react-native-community/discussions-and-proposals/issues/671 React Native 0.73 will depend on Android Gradle Plugin (AGP) 8.x  which requires all libraries to specify a namespace in their build.gradle file, even though this issue was raised many months ago, lots of libraries have not been updated and don't specify a namespace inside their build.gradle files
Changelog:
[ANDROID] [CHANGED] - Ensure namespace is specified for all the 3rd party libraries
Test Plan:
Run RNGP tests and test building rn-tester after doing the following procedure

Remove namespace "com.facebook.react" from react-native/packages/react-native/ReactAndroid/build.gradle
Add package="com.facebook.react" to react-native/packages/react-native/ReactAndroid/src/main/AndroidManifest.xml
Build rn-tester

Also tested this using BareExpo with AGP 8.1.1 and all libraries that were missing the namespace compiled correctly

This will not work if the 3rd party librariy's name is before the 'app', such as 'aliyun' .....,
How can I fix it? @gabrieldonadel ,@cortinico


Fix starlark patching example syntax

Type of change
Documentation correctness.
Test plan
N/A

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.You have signed the CLA already but the status is still pending? Let us recheck it.


[FEAT] HELP CENTER - SEARCH ARTICLE(s).

Description
This page serves as the central hub for our help center, providing users with access to a wealth of informative articles. With its intuitive search functionality, users can easily find the articles they need to address their questions or concerns. Additionally, the help center page implements rate limiting on its search endpoints.
Acceptance Criteria

Articles can be searched for.
Rate limiting is set on search endpoints.

Purpose
Users can search for articles by titles / topics.
Requirements

[ ] Articles can be searched for.
[ ] Rate limiting is set.

Endpoints
[GET] /api/v1/topics/search?title={title}
Description

Will accept query parameters that would be used to filter the result based on the passed title

Successful Response
Status code: 200
{
  "success": true,
  "message": "string",
  "status_code": 200
  "topics": [
    {
      "article_id": "int",
      "title": "string",
      "content": "string"
    }
    ...
  ]
}

Error Response
Status code: 404
No article matches the title search param.
{
  "success": false,
  "message": "string",
  "status_code": 404
}

Status code: 429
Too many requests, Rate limit reached.
{
  "success": false,
  "message": "string",
  "status_code": 429
}

Status code: 500
Internal Server Error
{
  "success": false,
  "message": "string",
  "status_code": 500
}

Database Schema
Table name: articles_table
- article_id:
  - constraints: string(uuid), unique, primary-key, not null
- title:
  - constraints: string, unique, not null, text
- content:
  - constraints: string, not null, text
- createdAt:
  - constraints: datetime
- updatedAt:
  - constraints: datetime

Database diagram
Database image
Testing

Unit Tests

The system should have unit tests covering rate limit check.
The return data for the query param in /api/v1/topics matches the documentation.

This issue is linked to the approved issue here


Add function to get message digest info from context

Description
I wanted to add getter functions to get details of the message digest from a message_digest_context_t struct. The existing getters operate on md_info_t, so if you only have the context, you can't get the details of the message digest.
I figured that the simplest solution is just to add a function that extracts the md_info member from the context. I'm open to instead implement functions that get the name, type, size, etc. from the context individually, if you prefer that.
Status
READY
Requires Backporting
NO
Migrations
NO
Todos

[x] Tests
[x] Documentation
[x] Changelog updated

Sorry, I didn't see that continuous-integration/jenkins/pr-merge fails. The "Details" link gives me "Server Not Found". Can you tell me what the error is?


Fixed all ESLint warnings

fixes #226
fixes all ESLint warnings.
And finally a green clean terminal @Luson045  😅😅.

would really suggest adding a pre-commit hook for no more ESLint warnings #274.

@lade6501 yeah sure you can work on it i am a bit busy, whenever I'm free i'll assign you on tht


Crash: AST parsing problem causes Expected CustomValueType to be a type name, not UserDefinedValueTypeDefinition

I ran scribble on the following file (which compiles just fine):
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.9;

contract Dummy2 {
  type CustomValueType is uint32;

  /// #if_updated
  ///   forall(CustomValueType t in _map)
  ///     true;
  mapping(CustomValueType => uint) private _map;
}

and it crashes with:
/home/un/nifty/web/sc/node_modules/solc-typed-ast/dist/misc/utils.js:36
    throw new Error(message);
          ^

Error: Expected CustomValueType to be a type name, not UserDefinedValueTypeDefinition
    at assert (/home/un/nifty/web/sc/node_modules/solc-typed-ast/dist/misc/utils.js:36:11)
    at makeUserDefinedType (/home/un/nifty/web/sc/node_modules/eth-scribble/dist/spec-lang/expr_parser.js:39:33)
    at peg$c301 (/home/un/nifty/web/sc/node_modules/eth-scribble/dist/spec-lang/expr_parser.js:692:16)
    at peg$parseUserDefinedType (/home/un/nifty/web/sc/node_modules/eth-scribble/dist/spec-lang/expr_parser.js:8812:22)
    at peg$parseSimpleType (/home/un/nifty/web/sc/node_modules/eth-scribble/dist/spec-lang/expr_parser.js:8543:38)
    at peg$parseArrayType (/home/un/nifty/web/sc/node_modules/eth-scribble/dist/spec-lang/expr_parser.js:8828:14)
    at peg$parseMappingType (/home/un/nifty/web/sc/node_modules/eth-scribble/dist/spec-lang/expr_parser.js:9100:18)
    at peg$parsePointerType (/home/un/nifty/web/sc/node_modules/eth-scribble/dist/spec-lang/expr_parser.js:9132:14)
    at peg$parseFunctionType (/home/un/nifty/web/sc/node_modules/eth-scribble/dist/spec-lang/expr_parser.js:9577:18)
    at peg$parseFor_All (/home/un/nifty/web/sc/node_modules/eth-scribble/dist/spec-lang/expr_parser.js:1550:30)

Defining the custom value type and the mapping aren't problems, but it seems that the crash is happening in the forall.
I believe the code is valid, but even if there is an issue with the code, I think scribble should fail cleanly and with a line number into Dummy2.sol - in order to cut a minimal example for this report, I kinda had to binary search my large contract file to figure out what was causing the problem, because the crash trace doesn't give a line number.

Hello @NeverFearTomorrow. I created a small pull request #193 to fix the issue - it would need to pass a review and get into a next release. Thank you for reporting this.


"images/atp-gpo-proxy1.png" is not showing

https://docs.microsoft.com/ja-jp/windows/security/threat-protection/microsoft-defender-atp/configure-proxy-internet

ドキュメントの詳細
⚠ このセクションを編集しないでください。 docs.microsoft.com で必須です ➟ GitHub の問題のリンク。

ID: 83207fc9-2c91-eb07-4237-6bb1f42e3778
Version Independent ID: 5db33cf3-2dcb-bb33-a252-3a13ca9737f9
Content: コンピューターのプロキシとインターネット接続の設定を構成する
Content Source: windows/security/threat-protection/microsoft-defender-atp/configure-proxy-internet.md
Product: w10
Technology: windows
GitHub Login: @mjcaparas
Microsoft Alias: macapara

@officedocsbot assign @e0i

@officedocsbot assign @dongmicro
@officedocsbot add label localization

Looks like a conversion issue in the HTML generating process. The first image is clearly not linked correctly when you view the HTML source:
The correct HTML tag should be

-- but instead, the HTML tag
has been generated, which will not display any image.

管理用テンプレート > Windows コンポーネント > データの収集とプレビュービルド > 接続されているユーザーエクスペリエンスとテレメトリサービスの認証済みプロキシの使用を構成します。

--
  |
有効に設定して、認証された![プロキシ使用を無効にする] を選択します。グループポリシー設定のイメージ

  |

  |

  |

管理用テンプレート > Windows コンポーネント > データの収集とプレビュービルド >、接続されたユーザーエクスペリエンスとテレメトリを構成します。

  |

  |

プロキシを構成します。

  |

en-us:https://docs.microsoft.com/en-us/windows/security/threat-protection/microsoft-defender-atp/configure-proxy-internet

ja-jp:https://docs.microsoft.com/ja-pj/windows/security/threat-protection/microsoft-defender-atp/configure-proxy-internet

@officedocsbot assign @MollyMalone

@officedocsbot unassign @MollyMalone
@officedocsbot unassign @TinaMcN

@officedocsbot unassign @dongmicro

@e0i & @TinaMcN : I got an idea from looking at the Github source text to see the difference between the 2 images:
- Administrative Templates > Windows Components > Data Collection and Preview Builds > Configure Authenticated Proxy usage for the Connected User Experience and Telemetry Service
  - Set it to **Enabled** and select **Disable Authenticated Proxy usage**:
  ![Image of Group Policy setting](images/atp-gpo-proxy1.png)
- **Administrative Templates > Windows Components > Data Collection and Preview Builds > Configure connected user experiences and telemetry**:
  - Configure the proxy:

    ![Image of Group Policy setting](images/atp-gpo-proxy2.png)

Notice that the second image, which gets converted correctly on the ja-jp page, is preceded by a
 HTML "break" tag, whereas the previous image is not.
Both images are placed similarly (possibly identically) on the en-us page, so I presume it should not cause any change to the en-us version of the page to add a
 HTML "break" tag to the line before the first image (which caused this issue). Would it be useful if I propose a PR to have that extra
 HTML "break" tag added, something like this? (see below)
- Administrative Templates > Windows Components > Data Collection and Preview Builds > Configure Authenticated Proxy usage for the Connected User Experience and Telemetry Service
  - Set it to **Enabled** and select **Disable Authenticated Proxy usage**:

  ![Image of Group Policy setting](images/atp-gpo-proxy1.png)
- **Administrative Templates > Windows Components > Data Collection and Preview Builds > Configure connected user experiences and telemetry**:
  - Configure the proxy:

    ![Image of Group Policy setting](images/atp-gpo-proxy2.png)

Hi @illfated thanks for looking into this.  I checked other languages (Chinese, French) etc. and they are all displaying the image correctly so it seems to be an issue with Japanese only.  Therefore adding the  tag probably won't help.   I will convert the Japanese topic to human translation and it should be completed by 4-Nov.

@hyoshioka0128 記事は現在、人間が翻訳されています。 問題が解決したことを確認してください。 フィードバックをありがとう。
(The article is now human translated.  Please verify that the issue is fixed.  Thanks again for the feedback.)

The en-us page (https://docs.microsoft.com/en-us/windows/security/threat-protection/microsoft-defender-atp/configure-proxy-internet) was last updated 11/07/2019 (November 7, 2019) -- at the time of this comment. This change was based on commit https://github.com/MicrosoftDocs/windows-itpro-docs/commit/35af62b13d0272bdeabd9ceca23d57e97598f59d from November 1, 2019.
The ja-jp page (https://docs.microsoft.com/ja-jp/windows/security/threat-protection/microsoft-defender-atp/configure-proxy-internet) was updated 2019/11/12 (2019, November 12), and it shows both images.
This issue looks very much resolved to me.

@TinaMcN @illfated - Fixed.
Closed #3969.


Karpenter Helm chart not deploying CRDs

Description
Observed Behavior:
Installing Karpenter Helm chart using the terraform kubernetes_manifest resource doesn't install the Karpenter CRD's.
│ Error: API did not recognize GroupVersionKind from manifest (CRD may not be installed)
│
│   with kubernetes_manifest.ec2_node_class,
│   on k8s-karpenter.tf line 54, in resource "kubernetes_manifest" "ec2_node_class":
│   54: resource "kubernetes_manifest" "ec2_node_class" {
│
│ no matches for kind "EC2NodeClass" in group "karpenter.k8s.aws"
╵
╷
│ Error: API did not recognize GroupVersionKind from manifest (CRD may not be installed)
│
│   with kubernetes_manifest.node_pool,
│   on k8s-karpenter.tf line 105, in resource "kubernetes_manifest" "node_pool":
│  105: resource "kubernetes_manifest" "node_pool" {
│
│ no matches for kind "NodePool" in group "karpenter.sh"

Expected Behavior:
Custom CRD's should be installed when installing a helm chart
Reproduction Steps (Please include YAML):
###############################
# Karpenter
###############################

data "aws_security_group" "eks_nodes_sg" {
  name = "${local.prefix}-nodes-sg"
}

resource "kubernetes_namespace" "ns_karpenter" {
  metadata {
    name = "karpenter"
  }
}

resource "helm_release" "karpenter" {
  namespace  = kubernetes_namespace.ns_karpenter.id
  name       = "karpenter"
  repository = "oci://public.ecr.aws/karpenter"
  chart      = "karpenter"
  version    = "0.37.0"

  values = [
    templatefile("helmchart-values/karpenter.tpl", {
      service_account_role_arn = aws_iam_role.karpenter_controller.arn,
      cluster_name              = "${local.prefix}-eks",
      interruption_queue = aws_sqs_queue.termination_queue.name
    })
  ]
}

###############################
# Karpenter Node Class
###############################

resource "kubernetes_manifest" "ec2_node_class" {
  manifest = {
    apiVersion = "karpenter.k8s.aws/v1beta1"
    kind       = "EC2NodeClass"
    metadata = {
      name = "default"
    }
    spec = {
      amiFamily = "AL2023"

      subnetSelectorTerms = [
        for subnet_id in data.aws_subnets.private_subnets.ids : { id = subnet_id }
      ]

      securityGroupSelectorTerms = [
        { id = data.aws_security_group.eks_nodes_sg.id }
      ]

      role = data.aws_iam_role.eks_node_role.name

      metadataOptions = {
        httpEndpoint            = "enabled"
        httpProtocolIPv6        = "disabled"
        httpPutResponseHopLimit = 2
        httpTokens              = "required"
      }

      blockDeviceMappings = [
        {
          deviceName = "/dev/xvda"
          ebs = {
            volumeSize           = "100Gi"
            volumeType           = "gp3"
            iops                 = 3000
            encrypted            = true
            deleteOnTermination  = true
            throughput           = 125
          }
        }
      ]

      detailedMonitoring      = true
      associatePublicIPAddress = false
    }
  }
}

###############################
# Karpenter Node Class
###############################

resource "kubernetes_manifest" "node_pool" {
  manifest = {
    apiVersion = "karpenter.sh/v1beta1"
    kind       = "NodePool"
    metadata = {
      name = var.environment
    }
    spec = {
      template = {
        metadata = {
          labels = {
            agentpool = var.environment
          }
        }
        spec = {
          nodeClassRef = {
            apiVersion = "karpenter.k8s.aws/v1beta1"
            kind       = "EC2NodeClass"
            name       = "default"
          }
          requirements = [
            {
              key      = "kubernetes.io/arch"
              operator = "In"
              values   = ["amd64"]
            },
            {
              key      = "kubernetes.io/os"
              operator = "In"
              values   = ["linux"]
            },
            {
              key      = "karpenter.k8s.aws/instance-hypervisor"
              operator = "In"
              values   = ["nitro"]
            },
            {
              key      = "karpenter.k8s.aws/instance-generation"
              operator = "Gt"
              values   = ["2"]
            },
            {
              key      = "karpenter.k8s.aws/instance-category"
              operator = "In"
              values   = ["c", "m", "r"]
            },
            {
              key      = "karpenter.k8s.aws/instance-cpu"
              operator = "In"
              values   = ["2", "4"]
            },
            {
              key      = "karpenter.sh/capacity-type"
              operator = "In"
              values   = ["on-demand"]
            }
          ]
          kubelet = {
            maxPods = 50
          }
        }
      }
      limits = {
        cpu    = 20
        memory = "80Gi"
      }
      disruption = {
        consolidationPolicy = "WhenUnderutilized"
        expireAfter         = "720h"
        budgets = [
          {
            nodes = "20%"
          },
          {
            schedule = "0 7 * * mon-fri"
            duration = "16h"
            nodes    = "0"
          }
        ]
      }
      weight = 1
    }
  }
}

Versions:

Chart Version:
0.37.0
Kubernetes Version (kubectl version):
Client Version: v1.30.2
Kustomize Version: v5.0.4-0.20230601165947-6ce0bf390ce3
Server Version: v1.30.2-eks-db838b0

Terraform v1.9.0:
provider registry.terraform.io/hashicorp/aws v5.61.0
provider registry.terraform.io/hashicorp/helm v2.14.0
provider registry.terraform.io/hashicorp/kubernetes v2.31.0

Please vote on this issue by adding a 👍 reaction to the original issue to help the community and maintainers prioritize this request
Please do not leave "+1" or "me too" comments, they generate extra noise for issue followers and do not help prioritize the request
If you are interested in working on this issue or have submitted a pull request, please leave a comment

seems like you need to open it on https://github.com/aws/karpenter-provider-aws

I recommend opening this in https://github.com/aws/karpenter-provider-aws like @liangyuanpeng said. Will close so you re-open there

It seems due to https://github.com/hashicorp/terraform-provider-kubernetes/issues/1380


Output valid Go code initializing structs

Is is possible to output valid Go code that initialize a struct with pointers that can be used in tests? I am printing a large struct (with pointer members) received back as part of a Protobuf response. Trying to use this data to initialize test data. Converting this using fmt.Printf("%#v") does not chase down pointers -- otherwise the format is just perfect. spew uses a different format and I cannot use that.
type Y struct {
	Y1 *string
	Y2 *int32
}

If these are assigned values "str" and 42, then the output should be something like:
Y{ Y1:&[]string{"str"}[0], Y2:&[]int32{42}[0] }

It should also bypass the stringer methods so that field names are used and not struct tagnames etc.

I'm aware of (but have not used) https://github.com/shurcooL/go-goon which is a fork of spew that outputs Go expressions, but I'm not sure exactly how it deals with pointers and cycles.


YumRepo Support in OSM

User Story
Support cloud-init yumRepos module support as part of the OSP

Closed by https://github.com/kubermatic/operating-system-manager/pull/177