generated code does not await database functions?

Here's a generated code snippet from one of our generated classes, they all look like this. Notice the .delete, .update, .insert, .findById, all the database functions are not awaited. Is this by design?
  static Future<WalletAddress?> findById(Session session, int id) async {
    return session.db.findById<WalletAddress>(id);
  }

  static Future<int> delete(
    Session session, {
    required WalletAddressExpressionBuilder where,
    Transaction? transaction,
  }) async {
    return session.db.delete<WalletAddress>(
      where: where(WalletAddress.t),
      transaction: transaction,
    );
  }

  static Future<bool> deleteRow(
    Session session,
    WalletAddress row, {
    Transaction? transaction,
  }) async {
    return session.db.deleteRow(
      row,
      transaction: transaction,
    );
  }

  static Future<bool> update(
    Session session,
    WalletAddress row, {
    Transaction? transaction,
  }) async {
    return session.db.update(
      row,
      transaction: transaction,
    );
  }

I don't know much about the internals of Serverpod but in general, you don't need a await a Future that you're returning -- you can just pass it back to the caller and they can await it. In other words, if someone does await deleteRow(...), they're not awaiting a new Future created by async, it's the future from session.db.deleteRow


label casing

I think it would be useful if the label's casing were preserved. I think it's getting toLowerCase here.
Would be neat to keep its casing. Especially since glamorous sets the label to the displayName of the component which will have special casing.

I ran into cases where slight confusing came from using all lowercase (using glamor through glamorous and the glamorous-displayname babel plugin). For example, repetitive letters distinguished by a difference in caps now run together in all lowercase. Preserving the capitalization would rule out any confusion here and would be a great enhancement!

this sounds reasonable. will get to it soon.


Text field should be extended to can add more fields

Hi, thanks for this component how could I extended the component to be able to add more fields on TEXT option?
https://github.com/FissionHQ/vue-survey-builder/blob/master/src/SurveyBuilder.vue#L102

You can fork this repo and make changes in the source, in the line which you mentioned above to add more types, if you would like to have your own custom type of input fields.


configure --verify doesn't check for tflint

Details
What steps did you take and what happened:
Went to make a commit, tflint step failed because the executable wasn't present
What did you expect to happen:
This to be caught by configure --verify
Anything else you would like to add:

Additional Information:

Thanks for the report, I've added it to the brew install and configure script


Azure Communication Services SMS (Certified Connector)

When submitting a connector, please make sure that you follow the requirements below, otherwise your PR might be rejected. We want to make you have a well-built connector, a smooth certification experience, and your users are happy :)
If this is your first time submitting to GitHub and you need some help, please sign up for this session.

[X] I attest that the connector doesn't exist on the Power Platform today. I've verified by checking the pull requests in GitHub and by searching for the connector on the platform or in the documentation.
[X] I attest that the connector works and I verified by deploying and testing all the operations.
[X] I attest that I have added detailed descriptions for all operations and parameters in the swagger file.
[X] I attest that I have added response schemas to my actions, unless the response schema is dynamic.
[X] I validated the swagger file, apiDefinition.swagger.json, by running paconn validate command.
[X] If this is a certified connector, I confirm that apiProperties.json has a valid brand color and doesn't use an invalid brand color, #007ee5 or #ffffff. If this is an independent publisher connector, I confirm that I am not submitting a connector icon.

If you are an Independent Publisher, you must also attest to the following to ensure a smooth publishing process:

[ ] I have named this PR after the pattern of "Connector Name (Independent Publisher)" ex: HubSpot Marketing (Independent Publisher)
[ ] Within this PR markdown file, I have pasted screenshots that show: 3 unique operations (actions/triggers) working within a Flow. This can be in one flow or part of multiple flows. For each one of those flows, I have pasted in screenshots of the Flow succeeding.
[ ] Within this PR markdown file, I have pasted in a screenshot from the Test operations section within the Custom Connector UI.
[ ] If the connector uses OAuth, I have provided detailed steps on how to create an app in the readme.md.

Hello @lei-msft,
Thank you very much and congratulations on your new submission. Our Certification Engineers will review it within 1-2 weeks.
Please let us know if you have any questions.
Thank you very much again for working with us.

Hello @lei-msft,
I hope you are doing well.
I am following up with you to see how things are going with preparing your connector.
Please let us know if you have any questions.
Thank you.


[suggestion/request] Buttons

Hey!
Just thought that it would be great if you would add the possibility to use buttons in script to open messages or jump to a label.
maybe define the picture at the begin of the script and use it like a condition?
{"Button": {
    "Button": button1;
    },
    "True": "display message Inventory",
}},

would be great for using message based inventory systems or mailboxes, or a movement system with arrows.
for now, does someone know an easy workaround?
thank you!

Ok, didn't recognize the Data Attributes section in the docs.
i managed to do it with a new screen (like the load or settings screen) in the index. Now my problem is that the variable i want to show does not update. I've tried to do it with some code I found in the internet, but it's not working.
i can't figure out how the data-action="open-menu" thing works. does it only show the menu (generated on the begin of the game and always the same) or does it really open it (the code is always executed when pressing the button)?
here the code I added:

Inventory

and:

<button class="fa fa-arrow-left top left" data-action="back"></button>

Inventory

The Number is:

The whole button idea seems like a nice way of adding more components to screen when something happens, I'll see how that can be used for more things, not just buttons :D Thanks! Now, since you are using the function document.write(storage.var1) you are right in the fact that it will only be run once, and in fact, it will be run as soon as the page is loaded, which is probably not what you want, instead of doing it like that, it may be better to add a listener to the click of the button so it can detect the click and then update the information before showing the inventory screen. I think you'll find this tutorial useful, the concepts are pretty much the same :)

{ Event: {
    "Condtion": function() {
        // some condition like storgage.player.stats.strength == 10; for beeing shown
    },
    "Success": function() {
        // some code/click events/to forwards
    },
    "Label": "Titel, Name, Text",
    "Image": "to/image/direction.png,
    "Position": "(e.g.: top right, middle, center, bottom left)"
}}

This is an example of my idea of using the buttons idea by @bobokox

Mmm that could work! the "Possition" property would probably be replaced with a "Class" one (since positions are just classes and that way you could also add other classes) I guess the thing here would be to decide whether the game should be locked (as in prevent the user from going forward) when they are displayed or not, or maybe add an option to indicate that.
These could actually be a subset of the new Components introduced in v2.0 allowing people to show any kind of HTML they want, I'm guessing this feature could be used for quite a lot of things so it needs to be as flexible as possible and in a way that stays simple. We would also need to check if its possible to revert whatever it does or not.
@KazutoSensei what does the "Label" property represents?

@Hyuchia I was thinking of something to display the text. If the event were a button, we must also be able to recognize the button if it has no image.
It could also be done as a mouse-over-event that the text/label is only displayed when you move over the event/button.


Added brackets to icrease priority of "??" operator

Added brackets to icrease priority of "??" operator because its priority lower than priority  of "+" operator.

Thanks @DamirAinullin !


Add notranslate tag to index.html

Hi.
Let me explain the reason for this PR.
When I create a new application, in the classic way (Angular CLI) or with ngx-rocket, one of the first configurations that I make is to disable the translation offered by Google Chrome.

Nowadays "automatic" translations are quite precise but they are not perfect, and this is the reason why automatic translation should be disabled.
I added a simple prompt option that ask to include this tag in the index.html (default to NO)

If the condition apply then the tag will be added

Cordially
Fabio

I am not sure about that notranslate thing. For sure I would better understand a page in Italian if it was translated into English, even by Google automatic translator.
Your problem seems to be that Chrome translates pages from English to Italian, and you do not want that because your English is better than Chrome's translation to Italian. To me, that is an issue on your side: you should set Chrome to never translate pages written in English (as I did).

I am not sure about that notranslate thing. For sure I would better understand a page in Italian if it was translated into English, even by Google automatic translator.
try to be more specific
Your problem seems to be that Chrome translates pages from English to Italian, and you do not want that because your English is better than Chrome's translation to Italian. To me, that is an issue on your side: you should set Chrome to never translate pages written in English (as I did).

Hi... I try to be more specific...
On my side as developer of course the better option is provide a full translated app in all the possible target languages (In my case usually English and Spanish)... but the final user?
(Is not a big deal to ask everyone to disable it on his side)
Some client asked me if would be possible to disable this "annoying" request made by Chrome to translate the content... and this is I think is the easy solution referenced here
Cordially

I agree with @bursauxa here, I don't think this is something we want to push for everyone, though I understand your logic here.
Keep in mind that even if it can be "annoying" for some users (it can be disabled easily on the user browser though) this is an important accessibility feature for a lot of users out there, and as such I don't think it makes it should be done by default.
If you want this to be enabled on all yours apps, you can always make it an add-on so you don't get bother adding this tag everytime.


Added fingerprint fw for 2023 Hyundai Santa Cruz Limited

dongle id: 7fad154b0e7243fb
fwdCamera and fwdRadar fingerprint added

Make sure you update docs/CARS.md when you bump the model year.


concurrent map writes on plugin/pkg/client/auth/gcp/gcp.go:115

client-go version: v2.0.0.alpha.1
We are encountering panics like:
fatal error: concurrent map writes
...
vendor/k8s.io/client-go/plugin/pkg/client/auth/gcp/gcp.go:115 +0x191 fp=0xc4206e5510 sp=0xc4206e5468

Seems to be fixed in https://github.com/kubernetes/kubernetes/pull/36680/
But the change isn't available in any client-go release, or release-2.0 branch which should track k8s 1.5 changes.

This should be fixed in v2.0.0.


Implement discovery protocol

Implement discovery protocol over metadata storage.
Initial version of discovery protocol will use metadata storage for keeping network to locator mappings.
The node register itself on startup by inserting self network address for locator ID into metadata storage. Later we may use local peer discovery for optimizations, or DHT for routing - keep it in mind when designing this protocol.

@g4s8 the puzzle #124 is still not solved.

@g4s8 the only puzzle #124 is solved here.


Nginx error 404 not found

This project seems not working correctly on my site.

Did you use the command:

Try again after uninstalling Nginx. It should work properly then.


Do we even need to use Option in Rope?

There's been some debate between @cjm00 and I in the past over whether it was better to use Option<Box<Node>> for representing empty nodes, or have a Node::Nil variant.
Regardless of the pros & cons of those approaches, it occurs to me now that we may not actually need either. Empty nodes occur very rarely. Mostly, we end up with empty nodes when we've created a brand new Rope with no contents, or when all the text is stored in one Leaf node. An empty node, then, is essentially just a Branch node without a String stored in it. Why not just represent empty nodes as Leaf("")?
This would remove a lot of unnecessary boilerplate for dealing with Options  which are almost always Some. In a majority of the cases where we need to get a value out of an Option, we already know that it's probably non-empty, but we have to litter our code with a lot of if let Some(...) = self.left { ... } else { unreachable!() } and so on.
WDYT, @cjm00?

Removing the Options seems correct at this point. I was originally inclined to use Option<Box<Node>> for performance reasons but I have no reason to think that performance will be meaningfully impacted without them, and as you said  we don't actually ever make None nodes. If the performance comes up at a later point we'll move to an Arena with indices anyway.


The necessity of sort function in get(LookupKey key, ReadStats readStats)

// Version.java
    public LookupResult get(LookupKey key)
    {
        LookupResult lookupResult = level0.get(key, readStats);
        if (lookupResult == null) {
            for (Level level : levels) {
                lookupResult = level.get(key, readStats);
                ...
            }
        }
        ...
        return lookupResult;
    }

// Level0.java
    public LookupResult get(LookupKey key, ReadStats readStats)
    {
        ...
        List<FileMetaData> fileMetaDataList = new ArrayList<>(files.size());
        for (FileMetaData fileMetaData : files) {
            if (...) {
                fileMetaDataList.add(fileMetaData);
            }
        }
        Collections.sort(fileMetaDataList, NEWEST_FIRST);
        ...
    }

// Level.java
    public LookupResult get(LookupKey key, ReadStats readStats)
    {
        ...
        List<FileMetaData> fileMetaDataList = new ArrayList<>(files.size());
        if (levelNumber == 0) {
            for (FileMetaData fileMetaData : files) {
                if (...) {
                    fileMetaDataList.add(fileMetaData);
                }
            }
        }
        else {
            // Binary search to find earliest index whose largest key >= ikey.
        }
        ...
    }

In the above function, level0.get() and level.get() are called respectively. However, In the implementation of the former, calls the sort function Collections.sort(fileMetaDataList, NEWEST_FIRST); to make the newer files in front of the list while the other call doesn't. So do we need this sort function call or not? And why get function in Level.java should consider the situation of level0?

Level 0 files are not compacted, so you have to process them in temporal order to ensure that old (deleted or over written) values are not returned.  Later levels are compacted, so you don't need this.

I understand that. I mean, does the get method in Level.java need to consider the situation of levelnumber = = 0 (the first if), I think it has been processed by the get method in Level0,java, which also means that the get method in Level.java doesn't need the sort as you said.

In other words, can we just delete the code fragment below in Level.java because this situation has been considered in Level0.java:
        if (levelNumber == 0) {    // Do we really need to judge this condition ?
            for (FileMetaData fileMetaData : files) {
                if (...) {
                    fileMetaDataList.add(fileMetaData);
                }
            }
        }


Specifying epub format causes the tool to silently fail

My hopeful assumption that Springer would make epub formatted versions of their free textbooks available at a similar URL as the PDF files:
https://links.springer.com/content/pdf/section/book_id.pdf

Alas, substituting epub for pdf in the URL results in a 404.
We could maybe do translation from PDF to epub on the fly if a URL for epub versions cannot be determined.
At a minimum, the tool needs to indicate when it did not successfully download a file.

The epub URL ended up being:
https://links.springer.com/download/epub/section/book_id.epub

Tip of the hat to Pybites @davidcolton for supplying that URL.

The download method is only succeeding for ~350 of the 407 textbooks when the format is epub and still silently fails. I am considering logging errors to a file in the destination directory to avoid messing up the typer.progressbar animation but still provide enhanced feedback to the user why some files were not downloaded.

I've added logging to capture file downloads that fail.  Messages are logged to a file named DOWNLOAD_ERRORS.txt in the destination directory.  The logs indicate 404 for a large percentage of epub formatted files. At any rate, the failures are no longer silent.


Error cloning

Dev Home version
<IP_ADDRESS>
Windows build number
10.0.23466.1001
Other software
OS Build Version: 10.0.23466.1001.arm64fre.ni_prerelease.230522-1422
.NET Version: .NET 6.0.16
Steps to reproduce the bug
machine config > add repository > accept terms > fail.
Expected result
Clone repository
Actual result
failed on setup
Included System Information
Physical Memory: 7.65GB (0.79GB free)
Processor Architecture: ARMx64
Included Extensions Information
Extensions:
Microsoft.Windows.DevHome_<IP_ADDRESS>_arm64__8wekyb3d8bbwe
Microsoft.Windows.DevHomeGitHubExtension_<IP_ADDRESS>_arm64__8wekyb3d8bbwe

Would you mind providing a little more info here? Such as:

Was it a URL or account repository?
Were you signed in with GitHub?
Did you receive an error message? If so, what was it?

Thanks!

I have the same issue, I get error code 0x80131500. In my case it was an account repository.
Any repository I tried failed. This is on Windows Dev Kit 2023

Duplicate of #978


Resume Signal Form

https://github.com/flyteorg/flyteconsole/issues/587
TL;DR

SetSignal is still waiting to be deployed on the backend side

Type

[ ] Bug Fix
[x] Feature
[ ] Plugin

Are all requirements met?

[ ] Code completed
[ ] Smoke tested
[ ] Unit tests added
[ ] Code documentation added
[ ] Any pending items have an associated Issue

Complete description
How did you fix the bug, make the feature etc. Link to any design docs etc
Tracking Issue
fixes https://github.com/flyteorg/flyteconsole/issues/587

@olga-union I've fixed your comments. Just FYI, the flyteidl version is not yet updated because if it points to 1.1.14, it fails to build as Core.SignalIdentifier is not defined.
For the tests, I've fixed PausedTasksComponent & NodeExecutionActions
Still working on ResumeSignalForm


Windows implementation with NamedPipes

Used tokio::named_pipe to implement the Windows version of IPC.
socket_path had to be adjusted in Config for it to work properly.

@ddd-mtl need any actioning on this for this PR?
are you putting it through the paces (real world testing)?

Seems good enough to me. Don't know how to push this forward.
@neonphog ?

merging through https://github.com/holochain/lair/pull/38 -- thanks, this looks awesome!


Azure+Rancher: Cloning Rancher-made Azure hosts boots NSG/Route Table/Users off of subnet

rancher/rancher [Cattle Orchestration Environment Template]
rancher version: v1.5.9
Steps to Reproduce:
Create an Azure host through rancher GUI.
Clone the previously created host on rancher GUI. (Cloned host uses same Subnet and Subnet Prefix CIDR normally)
Results:
The subnet of the Azure VPN you pointed to will have all attachments removed(NSG, Route Table, and Users) which causes all instances in the subnet to lost networking capabilities.
Through Powershell/Azure resources GUI, you have to manually attach the removed elements back to the subnet to resume processing normally.

With the release of Rancher 2.0, development on v1.6 is only limited to critical bug fixes and security patches.


Switch vector flag off when new layers are added

From now on vector flag will be true at the new editor and embed for maps with less than 10k features. That is a potential issue when you add a new layer, since it might have more than 10k features thus compromising tiler.
Needed by #7307.
Backend side ready at #7658 (7307-send_vector_flag_true_in_the_editor_when_number_of_features_is_less_than_10k branch).
cc @xavijam

@alonsogarciapablo, could you add this thing in your layer-management epic issue? :)

So the idea is to disable vector in the builder?

Yep, when a new layer is added, if vector was enabled before.

For now, we are no longer developing anything regarding Tangram or vector rendering in Builder. Feel free to open a new issue if in the feature we come to this again.


DOC-3123 email step non Harness users

https://harness.atlassian.net/browse/DOC-3123
https://harness.atlassian.net/browse/DOC-3225
Harness Developer Pull Request
Thanks for helping us make the Developer Hub better. The PR will be looked at
by the maintainers.
What Type of PR is This?

[ x] Issue
[ ] Feature
[ ] Maintenance/Chore

If tied to an Issue, list the Issue(s) here:

https://harness.atlassian.net/browse/DOC-3123
https://harness.atlassian.net/browse/DOC-3225

House Keeping
Some items to keep track of. Screen shots of changes are optional but would help the maintainers review quicker.

[ ] Tested Locally
[ ] Optional Screen Shoot.

Please check the Execution Link of the Pipeline for the Website Draft URL. This is located in the Preview Step and also is available in #hdh_alerts. E.g Website Draft URL: https://unique-id--harness-developer.netlify.app

Please check the Execution Link of the Pipeline for the Website Draft URL. This is located in the Preview Step and also is available in #hdh_alerts. E.g Website Draft URL: https://unique-id--harness-developer.netlify.app


Update readme for opentelemetry-core

related to #96
Signed-off-by: Olivier Albertini<EMAIL_ADDRESS>

Codecov Report

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

@@           Coverage Diff           @@
##           master     #113   +/-   ##
=======================================
  Coverage   98.87%   98.87%
=======================================
  Files          27       27
  Lines        1784     1784
  Branches      201      201
=======================================
  Hits         1764     1764
  Misses         20       20


Fix UB

I sorta just rewrote it, but there shouldn't be any UB in this

Also, do you want to move this to the RustPython org? Do you have permission to create new repos?

Actually, I'm not sure if the approach of storing it in the least-significant bit of the pointer will work, since u8 has an align of one and allocators written in rust (e.g. for wasm) might actually pay attention to the layout requested for allocation. Maybe we could bitshift the length left one, since the max length of a slice is isize::MAX: https://stackoverflow.com/questions/32324794/maximum-size-of-an-array-in-32-bits


added method ifExists for ease of use

Method takes in a consumer so users can easily check if a node is not virtual and work with it without having to separate things into if statements.
All tests created passed on my end but can be tested again if wanted

Perhaps make this return the same ConfigurationNode, and add an associated ifVirtual?
node
  .ifVirtual(thing -> ....)
  .ifExists(thing -> ...);

I'm also not sold on the ifExists name.

Just want to start by saying this is really just an opinion and to not consider this a rejection.

I'm not convinced about this in this form because this could very quickly turn into being a mapping function by accident. These lambdas were never intended to be pure functions by any means but they shouldn't be affecting the object that calls them in this instance.
The problem is that, generally, ifPresent(x -> ...); will return the enclosing value rather than the wrapping object, most obvious example here is Optional<T>#ifPresent(Consumer<? super T>) and not allow for the alteration of the parent object. The Optional in question is immutable anyway, but it gives you quick access to the value. Your proposal doesn't do that, it's effectively a glorified if statement and nothing more. Worse, you can alter more that just the value with this ConfigurationNode, while no lambda in Java can be made to be pure, we're just inviting the side effects here and it's not entirely obvious that can happen - hence my comment about being an accidental mapping function.
I would have less of a problem if changes made to the node in the function weren't reflected in the node that called the function. We could do this if we make a ConfigurationNode#copy() before using it in the consumer  (so that changes to this node won't affect the main tree), but then we potentially spend a lot of time making this copy to simply bypass an if statement.
I see the problem as to why you chose to return the ConfigurationNode (we don't know the value of the type without asking for it as a TypeToken), but it is what it is.
While I like using functional forms, it doesn't seem right to do so here, particularly if you want to modify the basic node after - if that's the case, you really should stick to the standard if statements. Otherwise, I would advise you looking at making this either a mapping function .mapIfVirtual(node -> return node);, .mapIfPresent(node -> return node); or by considering if some of the getters should have OptionalX or Optional<X> forms, because at least then it would be consistent with functional terms.

If this goes ahead as is, the javadocs must be crystal clear as to how this works and, if it remains like this, any mutations to the configuration node inside the lambda will be reflected in the node itself, that it is not a copy.

Perhaps make this return the same ConfigurationNode, and add an associated ifVirtual?
node
  .ifVirtual(thing -> ....)
  .ifExists(thing -> ...);

I'm also not sold on the ifExists name.

Any suggestions as an alternative to ifExists? I asked in the discord and that was the consensus but am open to whatever is most descriptive.

Just want to start by saying this is really just an opinion and to not consider this a rejection.
I'm not convinced about this in this form because this could very quickly turn into being a mapping function by accident. These lambdas were never intended to be pure functions by any means but they shouldn't be affecting the object that calls them in this instance.
The problem is that, generally, ifPresent(x -> ...); will return the enclosing value rather than the wrapping object, most obvious example here is Optional<T>#ifPresent(Consumer<? super T>) and not allow for the alteration of the parent object. The Optional in question is immutable anyway, but it gives you quick access to the value. Your proposal doesn't do that, it's effectively a glorified if statement and nothing more. Worse, you can alter more that just the value with this ConfigurationNode, while no lambda in Java can be made to be pure, we're just inviting the side effects here and it's not entirely obvious that can happen - hence my comment about being an accidental mapping function.
I would have less of a problem if changes made to the node in the function weren't reflected in the node that called the function. We could do this if we make a ConfigurationNode#copy() before using it in the consumer (so that changes to this node won't affect the main tree), but then we potentially spend a lot of time making this copy to simply bypass an if statement.
I see the problem as to why you chose to return the ConfigurationNode (we don't know the value of the type without asking for it as a TypeToken), but it is what it is.
While I like using functional forms, it doesn't seem right to do so here, particularly if you want to modify the basic node after - if that's the case, you really should stick to the standard if statements. Otherwise, I would advise you looking at making this either a mapping function .mapIfVirtual(node -> return node);, .mapIfPresent(node -> return node); or by considering if some of the getters should have OptionalX or Optional<X> forms, because at least then it would be consistent with functional terms.
If this goes ahead as is, the javadocs must be crystal clear as to how this works and, if it remains like this, any mutations to the configuration node inside the lambda will be reflected in the node itself, that it is not a copy.
EDIT: To clarify - I'm not going to lose sleep over this and I'm not stopping this, my point is from a more pure point of view. As long as it's clear what the method does (particularly about the mutation of the node) I'm not going to cry foul.

That brings up a good point. The point to this originally was never to make a copy but actually to make mutating the node easier. I’ll look into some alternatives like your example of mapIfVirtual() but otherwise I will spruce up the javadocs to be clear it isn’t just a copy but the node itself.

I’d argue the idea of using (not replacing entirely) if statements with a function ifPresent() or whenPresent() functional method is the next step in the modern java landscape. It would be the same reason why ifPresent() exists for optional. Yes, you can easily just check if it’s present then get the optional from there but on a regular basic I choose the functional route just because it saves me a few lines of code which is quite helpful in the long run.
Take for example the following example:
if(rootNode.getNode("Message").isVirtual()) {
     Text message = Text.of(rootNode.getNode("Message).getValue());
     player.sendMessage(message);
}

That isn't a huge amount of work but that can all be merged into
rootNode.getNode("Message").whenPresent(msg -> player.sendMessage(Text.of(msg));

It isn't a massive change but can be used in a lot of ways and can shorten up hundreds of lines of code if there are lots of isVirtual() checks for highly configurable plugins. In the above code we eliminate the need to have boolean checks in config to see if a message should be sent for example. Now you can simply just not have the line there in the first place and have no second thought to it. Personally, that would be quite helpful for a GUI Shop plugin I'd like to work on as it'd need to have many options for the item in the GUI that are optional. I could use the following when creating the itemstack:
node.getNode("Item#, Name).whenPresent(stack.offer(Keys.DISPLAY_NAME, node.getString());

I could do that for each new offer and cut down the code a bit without sacrificing readability or any extra resources.
In terms of the mutability, if the javadocs clearly defined that it does get the actual node and not just a copy of the node, it shouldn't create problems for anyone. This allows for the programmer to still easily use the lambda function without having to expend resources with another copy() call. Plus this adds in extra functionality if someone did want to mutate the node inside the lambda. That wouldn't be my personal use but it is there if someone wanted it.
I'd say that although the PR is a small change, it can really cut down on unwanted if statements everywhere. The push for more functional workings with Java is great and can be used to simplify a lot without writing extra methods which is why I made this PR in the first place.

I get what you're trying to do and why. I never said I didn't. I said I disagree with this solution, but have also provided mitigations and thoughts on alternatives.
I've made my points that I stand by and I don't really want to let this issue spiral out - especially as I have already said in a previous comment that I will settle for clear documentation and I wasn't going to fight against it.

I disagree with this PR.

Configurate is about configuration, not dynamic data storage, use database if you want to store data.
Use configurate auto-mapping system. You shall never manually parse data from ConfigurationNode except serializer/deserializer and/or custom ObjectMapper.

I generally do use h2 DBs for storage and many of my large plugins are using ConfigSerializable for the config anyway. This was just a solution for a much more dynamic plugin that requires quick checks without having to setup a mapper.
However this seems to be pretty contested and I can live without it so I'll take down this PR.


acl typo fix

Resolves #89
DCO1.1 Signed-off-by: Narine Cholakyan<EMAIL_ADDRESS>

Hi narinearraul,
Thanks for submitting this pull request!
I can confirm that the DCO1.1 sign-off has been included. It is okay to process this pull request.
dco-bot


refactor(stream-agg): remove Emitter

I hereby agree to the terms of the RisingWave Labs, Inc. Contributor License Agreement.
What's changed and what's your intention?
abstraction not very useful

Checklist For Contributors

[x] I have written necessary rustdoc comments
[x] I have added necessary unit tests and integration tests
[x] I have added fuzzing tests or opened an issue to track them. (Optional, recommended for new SQL features #7934).
[x] I have demonstrated that backward compatibility is not broken by breaking changes and created issues to track deprecated features to be removed in the future. (Please refer to the issue)
[x] All checks passed in ./risedev check (or alias, ./risedev c)

Checklist For Reviewers

[ ] I have requested macro/micro-benchmarks as this PR can affect performance substantially, and the results are shown.

Documentation

[x] My PR DOES NOT contain user-facing changes.

Click here for Documentation
Types of user-facing changes
Please keep the types that apply to your changes, and remove the others.

Installation and deployment
Connector (sources & sinks)
SQL commands, functions, and operators
RisingWave cluster configuration changes
Other (please specify in the release note below)

Release note

RPITIT here :p
https://github.com/risingwavelabs/risingwave/blob/650b42102f29db027d6949eea34a1c5d2bad96d1/src/stream/src/common/cache/state_cache/mod.rs#L51


[core]decompilation error in class ProviderFactory of simplexml

decompilation error  in class ProviderFactory  of  simplexml (simple-xml-2.7.1.jar.zip)
decompilation java code
package org.simpleframework.xml.stream;

/* loaded from: simple-xml-2.7.1.jar:org/simpleframework/xml/stream/ProviderFactory.class */
final class ProviderFactory {
    ProviderFactory() {
    }

    public static Provider getInstance() {
        try {
            return new StreamProvider();
        } catch (Throwable th) {
            return new DocumentProvider();
        }
    }
}

decompilation smali code
###### Class org.simpleframework.xml.stream.ProviderFactory (org.simpleframework.xml.stream.ProviderFactory)
.version 50  # Java 6
.class final super org/simpleframework/xml/stream/ProviderFactory
.source "ProviderFactory.java"

.method <init>()V
    .max stack 1
    .max locals 1

    .local 0 "this" Lorg/simpleframework/xml/stream/ProviderFactory;
    .line 33
    aload 0
    invokespecial java/lang/Object <init> ()V
    return
.end method

.method public static getInstance()Lorg/simpleframework/xml/stream/Provider;
    .max stack 2
    .max locals 1

  :L0
    .line 48
    new org/simpleframework/xml/stream/StreamProvider
    dup
    invokespecial org/simpleframework/xml/stream/StreamProvider <init> ()V
  :L1
    .catch java/lang/Throwable :L0 .. :L1 goto :L2
    .catch java/lang/Throwable :L0 .. :L1 goto :L3
    areturn
  :L2
    .line 49
    .stack same1 java/lang/Throwable
    astore 0
    .local 0 "e" Ljava/lang/Throwable;
    .line 50
    new org/simpleframework/xml/stream/PullProvider
    dup
    invokespecial org/simpleframework/xml/stream/PullProvider <init> ()V
  :L4
    .catch java/lang/Throwable :L2 .. :L4 goto :L3
    areturn
  :L3
    .line 52
    .end local 0 # "e"
    .stack same1 java/lang/Throwable
    astore 0
    .local 0 "e" Ljava/lang/Throwable;
    .line 53
    new org/simpleframework/xml/stream/DocumentProvider
    dup
    invokespecial org/simpleframework/xml/stream/DocumentProvider <init> ()V
    areturn
.end method

as you can see :L2 is not in java code
my jadx :
jadx version: 1.3.2
Java VM: OpenJDK 64-Bit Server VM
Java version: 17.0.2

谢谢您的来信，您的邮件已收到！

Turns out issue was caused by a weird catch table, i.e. one instruction can have several exception handlers with same type. For more general case: one exception handler can shadow others by wider type. I added a check to fix such cases (by removing shadowed handlers), so this issue is fixed now.


[ISSUE #8293]Remove the redundant code from the MessageDecoder#encodeMessage method

Which Issue(s) This PR Fixes

Fixes #8293
Brief Description

How Did You Test This Change?

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

Project coverage is 42.86%. Comparing base (6b59155) to head (b42994d).

Additional details and impacted files
@@              Coverage Diff              @@
##             develop    #8294      +/-   ##
=============================================
- Coverage      42.93%   42.86%   -0.08%
+ Complexity     10416    10397      -19
=============================================
  Files           1274     1274
  Lines          88952    88951       -1
  Branches       11438    11438
=============================================
- Hits           38192    38127      -65
- Misses         46060    46107      +47
- Partials        4700     4717      +17

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


Does not work in my case if I use the babel configuration in webpack

Use webpack.config
use: {
          loader: 'babel-loader',
          options: {
            presets: ['env', 'react'],
            plugins: [
              'transform-class-properties',
              'react-docgen'
            ]
          }
        }

class Doc extends PureComponent {
  static defaultProps = {
    name: 'stranger'
  };

  static propTypes = {
    name: PropTypes.string
  };
  render() {
    return
123
;
  }
}

return Doc.__docgenInfo = undefined

I am sorry, win.
If import Doc in file index.js then working
if use console.log(Doc.__docgenInfo) in file when create class Doc  - not work

I wonder if docgen detects PureComponent as a valid class type. Let me investigate this when I have time, or please feel free to open a PR if you'd like to try and solve this as well.


Update NetBSD patch locations

The directory /pub/pkgsrc/pkgsrc-2016Q4/ doesn't exist anymore on the
ftp.netbsd.org FTP server. Noticed this while customizing the image and building it
from scratch.
Instead there are two other directories, /pub/pkgsrc/pkgsrc-2017Q4/ and
/pub/pkgsrc/stable, where the patch files seem to be located.
There's a good chance these URIs will need to be updated again next year
if we use the 2017Q4 ones, so instead use the stable directory as a
source location.

Let me know if instead the 2017Q4 directory is preferred. Both seem to provide the same patch files.

This is contained in #206.

Superseded by #206 so closing this


Upgrade RDS to Aurora V2

It has been strongly suggested by Core Services to move towards  Aurora V2 Serverless for some time.
This will enable significant cost savings while strengthening the applications ability to quickly scale to meed demand.
Amazon Aurora Serverless v2 is suitable for the most demanding, highly variable workloads. For example, your database usage might be heavy for a short period of time, followed by long periods of light activity or no activity at all. Some examples are retail, gaming, or sports websites with periodic promotional events, and databases that produce reports when needed. Others are development and testing environments, and new applications where usage might ramp up quickly. For cases such as these and many others, configuring capacity correctly in advance isn't always possible with the provisioned model. It can also result in higher costs if you overprovision and have capacity that you don't use.
excerpt
Example upgrade path:
https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/aurora-serverless-v2.upgrade.html

To be moved back to PB until versions are in place (blocker)

AWS just released a blog post on the steps required to make this happen:
https://aws.amazon.com/blogs/database/upgrade-from-amazon-aurora-serverless-v1-to-v2-with-minimal-downtime

Upgrade scheduled for Monday at 7am

Upgrade completed


Add Disconnected Support

Tested with the following steps
Validating the GitHub Actions

Using this Action redhat-cop/github-actions/disconnected-csv@master
Tested using the GitHub Actions section of my own fork at cnuland/proactive-node-scaling-operator
Used my own quay.io account for the image destination for both bundle and application https://quay.io/repository/cnuland/proactive-node-scaling-operator
Validated both the build portion and the operatorhub portion passed their build using my quay.io account

Validating the disconnected image

Added the GitHub Actions for disconnected in both the build and the operatorhub deploy sections of the push workflow
pushed to my forked version of the operator at cnuland/proactive-node-scaling-operator
Added the environment variables for GitHub Actions to point to my own quay instance at quay.io/cnuland
used the opm CLI to generate an index off of the generated bundle and pushed to quay.io/cnuland
Created a SourceCatalog based on the above index
Installed and validated the operator
CSV used digest as expected

LGTM


NodeJS 400 Error

Hi there, I'm trying to send from ExpressJS and receive the following error:
ResponseError: Bad Request
    at Request._callback (node_modules/@sendgrid/client/src/classes/client.js:124:25)
    at Request.self.callback (node_modules/request/request.js:185:22)
    at Request.emit (events.js:316:20)
    at Request.<anonymous> (node_modules/request/request.js:1154:10)
    at Request.emit (events.js:316:20)
    at IncomingMessage.<anonymous> (node_modules/request/request.js:1076:12)
    at Object.onceWrapper (events.js:422:28)
    at IncomingMessage.emit (events.js:328:22)
    at endReadableNT (_stream_readable.js:1201:12)
    at processTicksAndRejections (internal/process/task_queues.js:84:21) {
  code: 400,
  message: 'Bad Request',
  response: {
    headers: {
      server: 'nginx',
      date: 'Mon, 30 Mar 2020 02:56:08 GMT',
      'content-type': 'application/json',
      'content-length': '402',
      connection: 'close',
      'access-control-allow-origin': 'https://sendgrid.api-docs.io',
      'access-control-allow-methods': 'POST',
      'access-control-allow-headers': 'Authorization, Content-Type, On-behalf-of, x-sg-elas-acl',
      'access-control-max-age': '600',
      'x-no-cors-reason': 'https://sendgrid.com/docs/Classroom/Basics/API/cors.html'
    },
    body: { errors: [Array] }
  }
}

Hello @joshlsullivan  ,
We're sorry you're having this issue! Since this is not a docs-related issue, please contact our Support team directly and they can help you out. You can access support contact options by logging into https://support.sendgrid.com.
Twilio SendGrid Docs Team


Implement option DontSerializeNullObjects for deserialization

Should fix #174

Codecov Report

Merging #177 (1fa4464) into master (680d8d5) will increase coverage by 0%.
The diff coverage is 100%.

@@          Coverage Diff          @@
##           master   #177   +/-   ##
=====================================
  Coverage      80%    80%
=====================================
  Files          63     63
  Lines        3766   3769    +3
  Branches      726    727    +1
=====================================
+ Hits         3017   3020    +3
  Misses        545    545
  Partials      204    204

Impacted Files
Coverage Δ

YAXLib/YAXSerializer.cs
76% <100%> (+<1%)
:arrow_up:

Continue to review full report at Codecov.

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

Confirmed to resolve the issue

@304NotModified Do you think the PR could be merged?


pakcs: 2.0.2-b7 -> 2.0.2-b9

Motivation for this change
Things done

[ ] Tested using sandboxing (nix.useSandbox on NixOS, or option sandbox in nix.conf on non-NixOS)
Built on platform(s)

[x] NixOS
[ ] macOS
[ ] other Linux distributions

[ ] Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
[ ] Tested compilation of all pkgs that depend on this change using nix-shell -p nox --run "nox-review wip"
[x] Tested execution of all binary files (usually in ./result/bin/)
[ ] Determined the impact on package closure size (by running nix path-info -S before and after)
[x] Fits CONTRIBUTING.md.

@GrahamcOfBorg  build pakcs

No attempt on aarch64-linux (full log)
The following builds were skipped because they don't evaluate on aarch64-linux: pakcs
Partial log (click to expand)

a) For `nixos-rebuild` you can set
  { nixpkgs.config.allowUnfree = true; }
in configuration.nix to override this.

b) For `nix-env`, `nix-build`, `nix-shell` or any other Nix command you can add
  { allowUnfree = true; }
to ~/.config/nixpkgs/config.nix.

No attempt on x86_64-darwin (full log)
The following builds were skipped because they don't evaluate on x86_64-darwin: pakcs
Partial log (click to expand)

a) For `nixos-rebuild` you can set
  { nixpkgs.config.allowUnsupportedSystem = true; }
in configuration.nix to override this.

b) For `nix-env`, `nix-build`, `nix-shell` or any other Nix command you can add
  { allowUnsupportedSystem = true; }
to ~/.config/nixpkgs/config.nix.

Success on x86_64-linux (full log)
Attempted: pakcs
Partial log (click to expand)
/nix/store/1wrb5x16ad5b24j5a7srb4a25r5dxmkb-pakcs-2.0.2/pakcs/bin/pakcs-makecgi: interpreter directive changed from "/bin/sh" to "/nix/store/56nrxy58wbhvs2sy3rir1jqa68p0kkm5-bash-4.4-p23/bin/sh"
/nix/store/1wrb5x16ad5b24j5a7srb4a25r5dxmkb-pakcs-2.0.2/pakcs/bin/.pakcs-wrapped: interpreter directive changed from "/bin/sh" to "/nix/store/56nrxy58wbhvs2sy3rir1jqa68p0kkm5-bash-4.4-p23/bin/sh"
/nix/store/1wrb5x16ad5b24j5a7srb4a25r5dxmkb-pakcs-2.0.2/pakcs/bin/pakcs-fcypp: interpreter directive changed from "/bin/sh" to "/nix/store/56nrxy58wbhvs2sy3rir1jqa68p0kkm5-bash-4.4-p23/bin/sh"
/nix/store/1wrb5x16ad5b24j5a7srb4a25r5dxmkb-pakcs-2.0.2/pakcs/bin/cleancurry: interpreter directive changed from "/bin/sh" to "/nix/store/56nrxy58wbhvs2sy3rir1jqa68p0kkm5-bash-4.4-p23/bin/sh"
/nix/store/1wrb5x16ad5b24j5a7srb4a25r5dxmkb-pakcs-2.0.2/pakcs/src/pakcs: interpreter directive changed from "/bin/sh" to "/nix/store/56nrxy58wbhvs2sy3rir1jqa68p0kkm5-bash-4.4-p23/bin/sh"
/nix/store/1wrb5x16ad5b24j5a7srb4a25r5dxmkb-pakcs-2.0.2/pakcs/testsuite/test.sh: interpreter directive changed from "/bin/sh" to "/nix/store/56nrxy58wbhvs2sy3rir1jqa68p0kkm5-bash-4.4-p23/bin/sh"
/nix/store/1wrb5x16ad5b24j5a7srb4a25r5dxmkb-pakcs-2.0.2/pakcs/lib/test.sh: interpreter directive changed from "/bin/sh" to "/nix/store/56nrxy58wbhvs2sy3rir1jqa68p0kkm5-bash-4.4-p23/bin/sh"
/nix/store/1wrb5x16ad5b24j5a7srb4a25r5dxmkb-pakcs-2.0.2/pakcs/examples/test.sh: interpreter directive changed from "/bin/sh" to "/nix/store/56nrxy58wbhvs2sy3rir1jqa68p0kkm5-bash-4.4-p23/bin/sh"
checking for references to /build in /nix/store/1wrb5x16ad5b24j5a7srb4a25r5dxmkb-pakcs-2.0.2...
/nix/store/1wrb5x16ad5b24j5a7srb4a25r5dxmkb-pakcs-2.0.2

@xeji Thanks!


Transform the existing deployment instructions into a Workshop

Take this content of the demo and turn it into a workshop explaining each component, it's purpose, steps to install and configure, etc.
Once set up, this will be hosted on our website

/cc @henrikrexed @sherwoodzern

Recommendations for the Workshop:

Monitoring and Observability Overview
Installation of the required tools (hands-on)
Configure each of the installed tools (hands-on)
Overview of the application
Install the application
Walk-through each of the monitoring and observability products while the application is running
Introduce latency, errors, or other chaos
Set up alerting
Use the logs, metrics, and traces to identify RCA
Wrap-up

We should also include a section where we introduce the CNCF observability tooling .
And the design of observability pipeline ( otel collector and fluentbit).

I've created a Google Doc for us to collaborate on section 1, as I felt it would be fastest to get going with. Once we've made progress we can switch to a file in a repo

I've put together a strawman for the content. Please provide feedback


Limit the hints size by default

Fixes https://github.com/rust-analyzer/rust-analyzer/issues/8175
Fixes https://github.com/rust-analyzer/rust-analyzer/issues/3138

20 is a bit too short imo, reason being that our impl Iterator<Item = > trick for hints becomes completely useless as the inner type will always be hidden giving impl Iterator<Item = ...> since the template string is already greater than 20 characters. I personally have been using 25 which works reasonably well which I would also propose

changelog fix

bors r=Veykril


TypeError: Do not know how to serialize a BigInt

When I use the interaction node to listen a button interaction, an error is being returned:
[red] Uncaught Exception:
[error] TypeError: Do not know how to serialize a BigInt
at stringify (<anonymous>)
at Object.stringify (/data/node_modules/flatted/cjs/index.js:76:17)
at Client.<anonymous> (/data/node_modules/node-red-contrib-discord-advanced/discord/discordInteraction.js:64:49)
at processTicksAndRejections (node:internal/process/task_queues:96:5)

The flow I'm trying to use is the same as the example provided here on the Wiki, both the one that sends the message and creates with the buttons and the one that listens for an interaction.
I think this problem happens with commands too.

I'm facing how to resolve this because with my actual environment of node-red interactionObject serialize ok.
But testing outside i got this error.
A quickest way is adding
BigInt.prototype.toJSON = function () {
    return this.toString()
}

at the top of lib/discordBotManager


Create umons.txt

.umons.ac.be replaces both .umh.ac.be and .fpms.ac.be, since those universities merged in 2009.

@DamienLegay Pull request merged. Thank you!


Update disable_git_info.patch

fix after reformatting of script in master branch
@looooo please merge asap, I've seen this has been causing errors in the conda builds

macos might need an update of boost


fix(bo): replace deprecated translation method

Questions
Answers

Description?
In the back office configuration controller, a deprecated method was used for all the translations. This PR replaces it with the new method.

Type?
bug fix

BC breaks?
no

Deprecations?
no

Fixed ticket?
Fixes PrestaShop/Prestashop#32266.

How to test?
Go to BO > Design > Theme & Logo > Click on Pages Configuration > No more exception

thank you @tleon and @HanaRebaiQA !


Improve design of WalkableCell

From a user:

Walking time addition is neat. Looks like the row isn't tall enough. Also the walking time text may contrast and flow better encapsulated within the green strip.

[ ] Needs final design
[ ] Needs implementation

I think putting the walking time in the green strip might be confusing to users because the green strip is dynamic and moves around.
This solution also doesn't account for when a bus isn't available or if none of the buses are within walking time. The user still might want to know how long it takes to walk to a stop.

fixed in #1045


Create a VM from custom image in Azure not working.

Seems that is not possible to create VM from custom image. It does not look like it supports custom images.
For example what is working:
--azure-image=Canonical:UbuntuServer:18.04-LTS:18.04.201805220
It expects you to supply the publisher, sku and version of the image, these options are only availible in gallery images, not custom ones
For example what is not working:
--azure-image=my-custom-image-created-with-packer-with-type-image

Duplicate: https://github.com/docker/machine/issues/4233


Display problem when deleting a file

Description
When I delete a folder (to the recycle bin), when the operation is started, the message displayed is: "The recycle bin is empty" whereas on the contrary I just filled it.
My app is in French
Steps To Reproduce

Select a folder
Delete the folder
Check the message on the top right

Expected behavior
Message: The folder has been moved to the recycle bin
Files Version
Version : <IP_ADDRESS> OS Version: 10.0.22621.160
Windows Version
Windows 11 22H2
Relevant Assets/Logs

Yes

Asking @yaichenbaum for approval.

@Josh-65 can you reproduce the issue?

I have not had this happen to me.

We need some more information like what kind of folder, was it a network drive etc.

It was a classic folder on the desktop that wasn't networked. For me the bug occurs for all folders.

This may be an English -> French translation bug

Definitely a translation error.
The current translation was "The recycle cin is empty", changed it for "The emptying of the recycle bin is done."
Cannot link a PR for this one, but next time the french translations are updated, you may close that ticket @yaichenbaum. Thanks in advance :)

Thanks @QuaintMako


odcs related metadata in koji build

Signed-off-by: Robert Cerven<EMAIL_ADDRESS>

updated as well koji.md

rn updated:

Koji build metadata now includes ODCS related information


Heap Sort in Dart

💥 Proposal
The script will show the implementation of heap sort in Dart
Have you read the Contributing Guidelines on Pull Requests?
Yes

/assign


[HTTP] Don't allow multiple properties in a response to be annotated with @statusCode

Fix #2347.
The fix was surprisingly less involved than I expected.
BREAKING CHANGE since this will now fail instead of outputting nonsense.

Describe the breaking change
Not allowing multiple properties from being anotated with status code, this caused weird behavior in the emitted code(Duplicate response)
Back-compat design to avoid immediate breaking
Any back-compat design:
Use @statusCode _: 200 | 201 instead
Link to detailed breaking design
Link:
Impact
This change affecting:

[ ] ARM
[ ] Data-plane
[x] Existing specs: 0
[ ] New specs
[ ] Emitters
[ ] SDK

Targeted Sprint
Sprint: October
Additional information
Add any other information about the change including fixes for here.


Sensitive outputs shouldn't be exposed when using terraform.OutputRequired

Hi,
We are working on a test-case that creates some IAM users and access keys that we use for authenticating with some AWS resources within that test. To be able to use the credentials we pull them from the outputs,  e.G:
outputs.tf:
output "aws_iam_access_key_secret" {
  description = "The acccess key secret."
  value       = aws_iam_access_key.docker.secret
  sensitive   = true
}

test.go:
accessKeySecret := terraform.OutputRequired(t, terraformOptions, 'aws_iam_access_key_secret')

Using the helper methods to retrieve outputs with terraform will dump the outputs to the logs. I believe we should align the behavior of terratest with terraform and only write <sensitive> instead of the actual values to the logs.

Oh, good point! Would you be up for a PR to fix this?

Ok, so running terraform output will mask any outputs that have sensitive = true. If one calls terraform output on a specific output ( e.g. terraform output aws_iam_access_key_secret terraform returns the value of the output as clear text, which also makes kind of sense to me also.
It seems to me that there is no easy way to be aware if we deal with sensitive data or when calling terraform output on a specific output. The log line is written command.go file. It might be a reasonable and simpler approach to make the logging of the output configurable.
wdyt @brikis98 ?

Try terraform output -json. I believe that shows you which ones are sensitive.

yeah sure, terraform output also shows you which ones are sensitive. That isn't very helpful though since the outputs methods in terratest would end up calling terraform output key, which will always return clear text.

Yea, what I meant was that the terraform.Output(xxx) helper would always run terraform output -json with no logging, read output xxx from the JSON, and only log what it saw if it wasn't sensitive. So it's making the logging optional in command.go as you said, but also making the terraform.Output helper in how it uses it.

Thank you, that makes sense to me! I will take a proper look in a bit.

We've been seeing this issue as well. We apply some terraform, and then use terratest's output functions to fetch out a randomly generated password. We need the password to ensure that the applied resources have been set up, but by getting the output, it also prints out the password to our logs - not ideal.
It feels like by default logging should be turned off for any sensitive output.
Has there been any progress on this issue?

Here is a workaround for this that we recently identified:
func fetchSensitiveOutput(t *testing.T, options *terraform.Options, name string) string {
    defer func() {
        options.Logger = nil
    }()
    options.Logger = logger.Discard  // import path is github.com/gruntwork-io/terratest/modules/logger
    return terraform.Output(t, options, name)
}

I started using terratest to test my Kubernetes Webhook (k8s-image-swapper). The IAM keys and docker credentials were exposed in the logs, which is not ideal for CI purposes. I came up with the following solution:
Usage:
func TestHelmDeployment(t *testing.T) {
	workingDir, _ := filepath.Abs("..")

	awsAccountID := os.Getenv("AWS_ACCOUNT_ID")
	awsRegion := os.Getenv("AWS_DEFAULT_REGION")
	awsAccessKeyID := os.Getenv("AWS_ACCESS_KEY_ID")
	awsSecretAccessKey := os.Getenv("AWS_SECRET_ACCESS_KEY")
	ecrRegistry := awsAccountID + ".dkr.ecr." + awsRegion + ".amazonaws.com"
	ecrRepository := "docker.io/library/nginx"

	logger.Default = logger.New(newSensitiveLogger(
		logger.Default,
		[]*regexp.Regexp{
			regexp.MustCompile(awsAccountID),
			regexp.MustCompile(awsAccessKeyID),
			regexp.MustCompile(awsSecretAccessKey),
			regexp.MustCompile(`(--docker-password=)\S+`),
		},
	))

    ...

Implementation::

type sensitiveLogger struct{
	logger logger.TestLogger
	patterns []*regexp.Regexp
}

func newSensitiveLogger(logger *logger.Logger, patterns []*regexp.Regexp) *sensitiveLogger {
	return &sensitiveLogger{
		logger: logger,
		patterns: patterns,
	}
}

func (l *sensitiveLogger) Logf(t terratesttesting.TestingT, format string, args ...interface{}) {
	var redactedArgs []interface{}

	obfuscateWith := "$1*******"

	redactedArgs = args

	for _, pattern := range l.patterns {
		for i, arg := range redactedArgs {
			switch arg := arg.(type) {
			case string:
				redactedArgs[i] = pattern.ReplaceAllString(arg, obfuscateWith)
			case []string:
				var result []string
				for _, s := range arg {
					result = append(result, pattern.ReplaceAllString(s, obfuscateWith))
				}
				redactedArgs[i] = result
			default:
				panic("type needs implementation")
			}
		}
	}

	l.logger.Logf(t, format, redactedArgs...)
}

@brikis98 What are your thoughts on this? Do you think this is something we can add to terratest itself?


reconnect for each mail

With the sender dialing once in the config, the dialed connection might get closed at any time leading to the following error when qor tries to use it later.
gomail: could not send email 1: write tcp $from->$to: write: broken pipe
A better approach for high load might be keep the sender and use a ping-like smtp command before sending an email and re-dial then on error.

Wish I noticed this earlier but 0555e49f99acf5467a77747fc855d7e005d902c1 is not a fix for this.


NET/IB : Got completion from peer <IP_ADDRESS><39138> with error 12, opcode 0, len 0, vendor err 129

[E ProcessGroupNCCL.cpp:455] Some NCCL operations have failed or timed out. Due to the asynchronous nature of CUDA kernels, subsequent GPU operations might run on corrupted/incomplete data. [E ProcessGroupNCCL.cpp:460] To avoid data inconsistency, we are taking the entire process down. terminate called after throwing an instance of 'std::runtime_error' what(): NCCL error: remote process exited or there was a network error, NCCL version 2.14.3 ncclRemoteError: A call failed possibly due to a network error or a remote process exiting prematurely. Last error: NET/IB : Got completion from peer <IP_ADDRESS><39138> with error 12, opcode 0, len 0, vendor err 129

torch.distributed.init_process_group(backend='nccl', init_method='env://', timeout=datetime.timedelta(seconds=1800))


Add an e2e test for out of process adapter

Add a e2e test for out of process adapter with a testing out of process prometheus adapter.
#12506

[APPROVALNOTIFIER] This PR is NOT APPROVED
This pull-request has been approved by: bianpengyuan
To fully approve this pull request, please assign additional approvers.
We suggest the following additional approver: nmittler
If they are not already assigned, you can assign the PR to them by writing /assign @nmittler in a comment when ready.
The full list of commands accepted by this bot can be found here.
The pull request process is described here

Needs approval from an approver in each of these files:

tests/OWNERS

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

@bianpengyuan: The following test failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

prow/e2e-simpleTests-cni.sh
1f37c7d2f6132efb86718fd67edc3c04950e1cbf
link
/test e2e-simpleTests-cni

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@bianpengyuan: The following tests failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

prow/e2e-simpleTests-cni.sh
1f37c7d2f6132efb86718fd67edc3c04950e1cbf
link
/test e2e-simpleTests-cni

prow/istio-pilot-multicluster-e2e.sh
1f37c7d2f6132efb86718fd67edc3c04950e1cbf
link
/test istio-pilot-multicluster-e2e

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

LG. I do wonder what the plan is about migration to the new testing framework, but that's a bigger question.

/lgtm

@kyessenov: changing LGTM is restricted to assignees, and assigning you to the PR failed.

In response to this:

/lgtm

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository.

[APPROVALNOTIFIER] This PR is NOT APPROVED
This pull-request has been approved by: bianpengyuan, kyessenov
To fully approve this pull request, please assign additional approvers.
We suggest the following additional approver: nmittler
If they are not already assigned, you can assign the PR to them by writing /assign @nmittler in a comment when ready.
The full list of commands accepted by this bot can be found here.
The pull request process is described here

Needs approval from an approver in each of these files:

tests/OWNERS

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

@utka May I get your approval on this? Thanks!

Master in unblocked. You just need to assign it to one of us. Bot lost capability to assign people at some point.

E.g. you need to assign it to @utka

/assign @utka

/lgtm
/approve

[APPROVALNOTIFIER] This PR is APPROVED
This pull-request has been approved by: bianpengyuan, kyessenov, utka
The full list of commands accepted by this bot can be found here.
The pull request process is described here

Needs approval from an approver in each of these files:

tests/OWNERS [utka]

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

@bianpengyuan: The following tests failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

prow/istio-pilot-multicluster-e2e.sh
1f37c7d2f6132efb86718fd67edc3c04950e1cbf
link
/test istio-pilot-multicluster-e2e

prow/e2e-simpleTests-cni.sh
1f37c7d2f6132efb86718fd67edc3c04950e1cbf
link
/test e2e-simpleTests-cni

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@bianpengyuan: The following tests failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

prow/e2e-simpleTests-cni.sh
1f37c7d2f6132efb86718fd67edc3c04950e1cbf
link
/test e2e-simpleTests-cni

prow/istio-pilot-multicluster-e2e.sh
1f37c7d2f6132efb86718fd67edc3c04950e1cbf
link
/test istio-pilot-multicluster-e2e

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.


GuardClauseAssertion fails on generic parameter with IEquatable constraint

A System.BadImageFormatException is generated when attempting to run GuardClauseAssertion  against a method with a generic parameter with an IEquatable constraint.  e.g.:
public void DoSomething<T>(T value) where T : IEquatable<T>
{
    // ...
}

This appears to occur during generation of the dynamic dummy for the generic, as indicated by the exception stack trace:
Result StackTrace:
at System.Reflection.Emit.TypeBuilder.TermCreateClass(RuntimeModule module, Int32 tk, ObjectHandleOnStack type)
   at System.Reflection.Emit.TypeBuilder.CreateTypeNoLock()
   at System.Reflection.Emit.TypeBuilder.CreateTypeInfo()
   at AutoFixture.Idioms.GuardClauseAssertion.DynamicDummyType.get_Value() in C:\projects\autofixture\Src\Idioms\GuardClauseAssertion.cs:line 696
   at AutoFixture.Idioms.GuardClauseAssertion.AutoGenericArgument.get_Value() in C:\projects\autofixture\Src\Idioms\GuardClauseAssertion.cs:line 613
   at AutoFixture.Idioms.GuardClauseAssertion.AutoGenericMethod.<GetTypedArguments>b__5_0(Type t) in C:\projects\autofixture\Src\Idioms\GuardClauseAssertion.cs:line 570
   at System.Linq.Enumerable.WhereSelectArrayIterator`2.MoveNext()
   at System.Linq.Buffer`1..ctor(IEnumerable`1 source)
   at System.Linq.Enumerable.ToArray[TSource](IEnumerable`1 source)
   at AutoFixture.Idioms.GuardClauseAssertion.AutoGenericMethod.GetTypedArguments() in C:\projects\autofixture\Src\Idioms\GuardClauseAssertion.cs:line 568
   at AutoFixture.Idioms.GuardClauseAssertion.ResolveUnclosedGenericMethod(MethodInfo methodInfo) in C:\projects\autofixture\Src\Idioms\GuardClauseAssertion.cs:line 361
   at AutoFixture.Idioms.GuardClauseAssertion.Verify(MethodInfo methodInfo) in C:\projects\autofixture\Src\Idioms\GuardClauseAssertion.cs:line 143
   at AutoFixture.Idioms.IdiomaticAssertion.Verify(MethodInfo[] methodInfos) in C:\projects\autofixture\Src\Idioms\IdiomaticAssertion.cs:line 231
   at AutoFixture.Idioms.IdiomaticAssertion.Verify(IEnumerable`1 methodInfos) in C:\projects\autofixture\Src\Idioms\IdiomaticAssertion.cs:line 242
   at AutoFixture.Idioms.IdiomaticAssertion.Verify(Type type) in C:\projects\autofixture\Src\Idioms\IdiomaticAssertion.cs:line 93
   at ...

At the moment, I am particularly interested in the case where there is also a struct constraint, but the presence of either a struct or a class constraint has no effect on generation of the exception.

@bordecal Thanks for firing the issue. May I ask you to attach a Minimal, Complete, and Verifiable example of the full scenario, so I can better see it from end to end?
Also please clarify which exact AutoFixture packages you have installed in your project (as we have different glue libraries participating in interface activation).
Thanks.

Ok, I've managed to figure out the scenario:
[Fact]
public void TestGenericMethod()
{
    var fixture = new Fixture();
    var methodToTest = this.GetType().GetMethod(nameof(DoSomething));

    new GuardClauseAssertion(fixture).Verify(methodToTest);
}

public void DoSomething<T>(T value) where T : IEquatable<T>
{
}

If I remove the generic type constrain, it will work as expected.
Let me investigate that in more detail.

Yup, that's pretty much it.   Nothing fancy, and using the latest releases for both AutoFixture and AutoFixture.Idioms.

@bordecal I can confirm it's a bug. I'll try to look into that if I have free time. If you wish, you could also take a look 😉

I'd be happy to take a look, but it'll probably need to wait a few weeks since I'm rather busy with the start of a new project at the moment...

I took a look at this and although I am pretty sure I figured out what the issue is, actually fixing it is beyond me. The problem only occurs if the method signature is like this:
public void DoSomething<T>(T value) where T : IEquatable<T>
and goes away by changing it to this:
public void DoSomething<T>(T value) where T : IEquatable<AClass>
The error is thrown by this line in DynamicDummyType.Value:
var dummyType = this.typeBuilder.CreateTypeInfo();
which is a standard framework call.
This happens with any generic type in the constraints for T.  For example:
public void DoSomething<T>(T value) where T : ICustomInterface<T>
Sorry I can't be of more help. Hopefully this info will help someone fix this.

@Excelzn Thanks for the report. I've also tried to quickly solve the issue, however found that a closer look is required. It appeared that Reflection.Emit API in .NET is overcomplicated when you operate with TypeBuilder like with Type.


Update for newer HAproxy, newer Sidecar

Hey Nitro folks, this is some small updates that support newer HAproxy, which doesn't allow rspadd any more, and newer Sidecar, which has moved the state endpoint under /api.

@donaladams I'm tagging you because I don't know who to tag on PRs any more! Hopefully you can help steer this to the right person.

hey @relistan - sorry just seeing this now! We've just migrated to k8 so this isn't being used any longer here as far as I know. I'll cc @kabute + @bettlebrox but I'll also approve!


Parallelize Builds with Matrix

While it doesn't make it any faster, I like surfacing the checks like this.


Compatibility with mod "East Asia Reboot"

See if compatibility with mod East Asia Reboot / 아시아추가 is feasible and how
While the page is in Korean, the mod is an interesting expansion of CK3 to allow for Eastern Asia and also has scenarios up to 1836

There's a CK2 counterpart named "Tianxia" too


max command not supported

	float t = max(1,0);
results in

Severity	Code	Description	Project	File	Line	Suppression State
Error		2 compilation errors.  No code generated.	Exercise5	C:\Users\tborowski\Desktop\tmp\Exercise5\build\CUSTOMBUILD	1
Error		0:39: 'max' : no matching overloaded function found	Exercise5	C:\Users\tborowski\Desktop\tmp\Exercise5\build\CUSTOMBUILD	1
Error		0:39: '' :  syntax error	Exercise5	C:\Users\tborowski\Desktop\tmp\Exercise5\build\CUSTOMBUILD	1

Try max(1.0, 0.0). From my understanding, the GLSL version that Kore targets doesn't have a max for integer, and the variable isn't automatically casted.

Aye, that error message is correct (same thing happens on shadertoy for example). "no matching overloaded function" -> there is no function of that name and the passed argument types.

you are absolutely right.


Add copy to clipboard button to Sphinx-rendered code blocks

Find out how Xarray does it, e.g. https://docs.xarray.dev/en/stable/getting-started-guide/quick-overview.html

I found this in the getting started page. But now sure how we would do this in the code itself.
.. ipython:: python

    import numpy as np
    import pandas as pd
    import xarray as xr

https://github.com/choldgraf/sphinx-copybutton


Implement Edit Task and add test cases

Edit tasks - ToDos, Deadlines and Assignments
Delete Students from assignment task
Add some test cases, not all

Codecov Report

Merging #112 (70dceaf) into master (85c1c55) will increase coverage by 0.96%.
The diff coverage is 59.37%.

@@             Coverage Diff              @@
##             master     #112      +/-   ##
============================================
+ Coverage     60.76%   61.72%   +0.96%
- Complexity      602      626      +24
============================================
  Files           111      114       +3
  Lines          2179     2307     +128
  Branches        240      265      +25
============================================
+ Hits           1324     1424     +100
- Misses          796      801       +5
- Partials         59       82      +23

Impacted Files
Coverage Δ

...java/seedu/address/logic/commands/TaskCommand.java
100.00% <ø> (ø)

.../seedu/address/logic/parser/AddressBookParser.java
82.60% <0.00%> (-3.76%)
:arrow_down:

src/main/java/seedu/address/model/Model.java
100.00% <ø> (ø)

...main/java/seedu/address/model/task/Assignment.java
0.00% <0.00%> (ø)

...s/model/task/exceptions/TaskNotFoundException.java
0.00% <0.00%> (ø)

...du/address/logic/parser/EditTaskCommandParser.java
32.14% <32.14%> (ø)

...c/main/java/seedu/address/model/task/TaskList.java
80.76% <66.66%> (-4.24%)
:arrow_down:

.../seedu/address/logic/commands/EditTaskCommand.java
69.13% <69.13%> (ø)

...ain/java/seedu/address/logic/parser/CliSyntax.java
93.33% <100.00%> (+0.47%)
:arrow_up:

...rc/main/java/seedu/address/model/ModelManager.java
100.00% <100.00%> (ø)

... and 3 more

Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.


Enhancement: Test coverage and infection testing

This PR

[x] Removes the php_unit_test_class_requires_covers rule
[x] Removes the @coversNothing annotations
[x] Moves back to using one phpunit.xml, and split up tests by testsuite.
[x] Changes references to the old config files to use the testsuites instead

This makes a few things possible.

The mutation tests now take our integration tests into account, which means we can make PR's require a certain mutation 'score': https://infection.github.io/guide/using-with-ci.html
To run a specific integration test, you can once again run vendor/bin/phpunit <path to tests>, without having to specify a configuration to use.

I left running the infection tests on travis out of this PR. One of the downsides is that it takes quite a while to run the full suite. I suggest that before running this on travis we

fix some of the really slow tests
decide what mutators we are interested in
decide on minimum msi

For more information on infection, see: https://infection.github.io/guide/
Our current metrics are:
714 mutations were generated:
     476 mutants were killed
     106 mutants were not covered by tests
      61 covered mutants were not detected
      63 errors were encountered
       8 time outs were encountered

Metrics:
     Mutation Score Indicator (MSI): 77%
     Mutation Code Coverage: 85%
     Covered Code MSI: 90%

I don't think that we should be getting Travis to run the mutation tests as part of the normal build. I feel like the mutation tests belong in the same category of using static analyzers -- good tools for the developers to find things behind the scenes to fix.
I'll fix the conflict and merge. Thanks folks

Thank you @chartjes


Add key mapping capability to ProxyManager

Proof of concept from discussion on #358

Add withMapper method to ProxyManager to allow mapping any ProxyManager to any other ProxyManager given an appropriate Function<K1, K>

I will look at weekend.


Doc: update development documentation

Updated golang version to 1.13.x and also updated user to set GO111MODULE=on and CGO_ENABLED=1 when doing development in cephcsi
Signed-off-by: Madhu Rajanna<EMAIL_ADDRESS>

@humblec PTAL


Add option for specifying manifest file

Fixes #10

@holly-cummins, any comments on this pr?

Hi Martin, thanks very much for the PR (and the reminder!), and apologies for the slow response. I think this looks good, but we've got a couple of concerns about the duplication in main.go. Instead of doing the NewFlagSet logic in two places, it would be cleaner to do it in one place and then pass through a struct or the ManifestPath and SmokeTestPath to the CfPlugin initialisation. I think the fact that you had to do it in two places is probably a weakness of how the current code is structured, so cleaning that up would be generally useful. If you're happy to make that adjustment, that would be great - otherwise we can do a commit on top of this one.

I'd like to help, but can't do it right now, so if you like to fix that, it'd be great. Hope to get some spare time next week, if you want to wait for an update by me.

We'll pick this up and do the add-on commit now.

Now merged! Thanks for the PR.


how to build reladomo from IntelliJ/IDEA

I cloned reladomo code and imported the project into IntelliJ/IDEA.
See the build errors below.
missing libraries.
import org.eclipse.collections.api.list.FixedSizeList;
import org.eclipse.collections.impl.factory.Lists;
Where is the JAR for above 2 Java classes located?
Could you someone provide instructions on how to build the reladomo project in IntelliJ/IDEA?

The build instructions are in https://github.com/goldmansachs/reladomo/blob/master/BUILD.md.
The short answer is, you have to use the provided build scripts.


[Service Bus] Support cancellation on $management operations

This PR updates all the $management operations on the sender, receiver, session receiver and the  rule manager to respect the abort signal. Exceptions are

peek operations: We will end up with multiple optional arguments, so keeping this out of scope of this PR
renew lock: This is on the message, we'll touch this when we do the settlement operations

The RequestResponse.sendRequest() already respects the abort signal. So, the majority of the work in this PR is to ensure that the option is plumbed through.
Send operations will be updated in a separate PR

/azp run js - servicebus - tests

And tests?

@richardpark-msft The changes to the messageSender.ts file got into this PR by accident which I have now reverted. Marking all your comments on this file as resolved as I wanted to restrict this PR only to $management operations

Tests have been added with https://github.com/Azure/azure-sdk-for-js/pull/8159/commits/ab06ab1c3a4405cdc58b5973b96de67fde80e033


Area Measurement Mesh for Side Shapes

Generate meshes correctly on sides of buildings
Project for Delaney algorithm from first 3 points normal
Fixes AB#2335

Peter asked me to try get rid of the * quat::create(half_pi), so this isn't ready to merge until I've either fixed that, or discovered it's actually correct

Peter asked me to try get rid of the * quat::create(half_pi), so this isn't ready to merge until I've either fixed that, or discovered it's actually correct

So I checked this, and it looks like the quaternion generated from the plane normal tells us how to get from {1, 0, 0} to the plane normal, but we project to {0, 0, 1}. Adding or subtracting half_pi to the pitch fixes this.


Inconsistent openAI responses with zod-to-json

I saw there were some significant changes to parser developed for zod-to-json in #1025 . I'm curious if this change was an improvement.
I regularly still get errors with the json responses where GPT3.5 doesn't return the json``` markdown. The format before had similar before and was significantly shorter. With the new text added to the formatted input, it also now requires about 200-300 more tokens. With GPT4, tens of thousands of requests really add up.

Found this new section
https://js.langchain.com/docs/modules/prompts/output_parsers/#output-fixing-parser


Add quotes

Fixes ERROR Failed to parse /build/source/pyproject.toml: Expected '=' after a key in a key/value pair (at line 34, column 5)

Thanks!


Feature: Add display mode to show local difficulty

a sort of heat map overlay to show the difficulty in that chunk would be nice
reference http://minecraft.gamepedia.com/Difficulty#Regional_difficulty

closed with #296


Reorganize code inside handlers module

aries_vcx is currently organized primarily per protocol, eg. src/handlers/connection, src/handlers/issuance and within each protocol is contained both logic of both aries_vcx and Aries FSM (as referred to in diagram https://github.com/hyperledger/aries-vcx/blob/main/docs/architecture/ariesvcx_architecture_now_180821.png )
The code should be reorganized as follows:
- src
    - aries
       - messages/..
       - utils/..
       - fsm
           - connection
               - invitee
                   - states/..
                   - state_machine.rs
               - inviter/..
           - issuance
               - holder/..
               - issuer/..
           - presentation/..
    - vcx
       - connection.rs
       - issuer.rs
       - holder.rs
       - prover.rs
       - verifier.rs

so that the business of aries_vcx is contained in module vcx and everything aries related, which should ideally have no dependency on ledger or credential library, shall be contained in module aries.

Addressed by #436 .


cli: Tracebacks from executing "nipap pool view "

$ nipap pool view link-pni-x-x
-- Pool
ID                         : 10
Name                       : link-pni-x-x
Description                : Link networks
Default type               : assignment
Implied VRF RT / name      : 65000:30 / xxx
Preflen (v4/v6)            : 31 / 112
-- Extra Attributes
-- Tags
-- Statistics
Traceback (most recent call last):
File "/usr/bin/nipap", line 122, in
cmd.exe(cmd.arg, cmd.exe_options, options)
File "/usr/lib/python2.7/dist-packages/nipap_cli/nipap_cli.py", line 798, in view_pool
used_percent_v6 = (float(p.used_prefixes_v6)/p.total_prefixes_v6)*100
TypeError: unsupported operand type(s) for /: 'float' and 'NoneType'

The function that calculates the number of free prefixes returns NULL for various error conditions which leads to these values being None in the CLI and therefore ending up with a Traceback.
In the web UI we explicitly check things like number of member prefixes in pool and that the default prefix length is set to a value. Those are the basic prerequisites for this thing to work and so we simply avoid trying to print any statistics under those conditions. Doing the same in the CLI would make sense from that perspective.
But I'm more interested in the underlying issue. Should free_prefixes_v6 be 0 or None when there are no prefixes in pool or the default prefix length hasn't been set?
free_addresses_v6 is 0 under those same conditions where free_prefixes_v6 would be None/NULL, so there is certainly an inconsistency there.
Why None and not 0? Well, it might be nice to differentiate a pool that is full (free_prefixes_vX = 0) from one that doesn't have any IPvX member prefixes at all. A full pool should lead to it being filled up with more member prefixes so it becomes non-full whereas a pool that doesn't have any member prefixes of a certain address family might be per design.
@garberg waddya think?

Related to #693.


AttributeError when using 'cupyx.scipy.signal.butter'

Description
I was trying to design a lowpass filter using butter from cupyx.scipy.signal. But it gave me an error saying AttributeError: module 'cupyx.scipy.signal' has no attribute 'butter'.
My Cupy was successfully installed via pip and I executed cupy.fft before the butter without any error. Did I miss anything when I install Cupy?
To Reproduce
# The import statement does not cause any error
from cupyx.scipy import signal

b, a = signal.butter(3, 35, fs=1024)
# AttributeError: module 'cupyx.scipy.signal' has no attribute 'butter'

Installation
Source (pip install cupy)
Environment
OS                           : Linux-5.15.0-84-generic-x86_64-with-glibc2.35
Python Version               : 3.10.12
CuPy Version                 : 12.2.0
CuPy Platform                : NVIDIA CUDA
NumPy Version                : 1.25.2
SciPy Version                : 1.11.1
Cython Build Version         : 0.29.36
Cython Runtime Version       : None
CUDA Root                    : /usr/local/cuda
nvcc PATH                    : /usr/local/cuda/bin/nvcc
CUDA Build Version           : 11080
CUDA Driver Version          : 12020
CUDA Runtime Version         : 11080
cuBLAS Version               : (available)
cuFFT Version                : 10900
cuRAND Version               : 10300
cuSOLVER Version             : (11, 4, 1)
cuSPARSE Version             : (available)
NVRTC Version                : (11, 8)
Thrust Version               : 101501
CUB Build Version            : 101501
Jitify Build Version         : <unknown>
cuDNN Build Version          : 8801
cuDNN Version                : 8901
NCCL Build Version           : None
NCCL Runtime Version         : None
cuTENSOR Version             : None
cuSPARSELt Build Version     : None
Device 0 Name                : NVIDIA GeForce RTX 3090
Device 0 Compute Capability  : 86
Device 0 PCI Bus ID          : 0000:3B:00.0

Additional Information
No response

cupyx.scipy.signal.butter is available in CuPy v13.0.0b1 or later (#7591). Please try out pre-releases 😃
https://github.com/cupy/cupy/?tab=readme-ov-file#installation

Oh, thank you. Did not notice the pre-releases.


Wrap the label widget of the Chip in a Flexible. (#11523)

This allows the Chip to constrain the size of its content after taking into account the space occupied by the avatar and delete icon (if they are present)

This needs tests, to verify that chips are acting as expected in various scenarios (most notably, the case you don't want us to regress!).

This is great, thanks! Let me know when you've adjusted the formatting and I'll land it for you!

Adjustment to formatting done! Thanks for the call-out and quick review!

Thanks! Will land on green.

Friendly ping.

Oops, sorry! Landing now! Thanks again!

This merge breaks the Chip class for me.
Sample code;
new Row(
                    crossAxisAlignment: CrossAxisAlignment.center,
                    children: [
                      new Chip(
                          label: new Text(DateHelper.hoursMinutes(program.airTime),
                              style: new TextStyle(
                                  fontSize: 14.0,
                                  fontWeight: FontWeight.w300))),
                      new Padding(padding: const EdgeInsets.all(5.0)),
                      new Text(program.programName,
                          style: new TextStyle(
                              color: Colors.black54,
                              fontSize: 18.0,
                              fontWeight: FontWeight.w300)),
                    ],
                  )

Eror log;
Performing full restart...
Restarted app in 2.065ms.
I/flutter ( 7435): ══╡ EXCEPTION CAUGHT BY RENDERING LIBRARY ╞═════════════════════════════════════════════════════════
I/flutter ( 7435): The following assertion was thrown during performLayout():
I/flutter ( 7435): RenderFlex children have non-zero flex but incoming width constraints are unbounded.
I/flutter ( 7435): When a row is in a parent that does not provide a finite width constraint, for example if it is in a
I/flutter ( 7435): horizontal scrollable, it will try to shrink-wrap its children along the horizontal axis. Setting a
I/flutter ( 7435): flex on a child (e.g. using a Flexible) indicates that the child is to expand to fill the remaining
I/flutter ( 7435): space in the horizontal direction.
I/flutter ( 7435): These two directives are mutually exclusive. If a parent is to shrink-wrap its child, the child
I/flutter ( 7435): cannot simultaneously expand to fit its parent.
I/flutter ( 7435): The affected RenderFlex is:
I/flutter ( 7435):   RenderFlex#23264 relayoutBoundary=up13 NEEDS-LAYOUT NEEDS-PAINT
I/flutter ( 7435): The creator information is set to:
I/flutter ( 7435):   Row ← Padding ← DecoratedBox ← ConstrainedBox ← Container ← Semantics ← Chip ← Row ← Padding ←
I/flutter ( 7435):   DecoratedBox ← Container ← Listener ← ⋯
I/flutter ( 7435): The nearest ancestor providing an unbounded width constraint is:
I/flutter ( 7435):   RenderFlex#03bd4 relayoutBoundary=up8 NEEDS-LAYOUT NEEDS-PAINT
I/flutter ( 7435):   creator: Row ← Padding ← DecoratedBox ← Container ← Listener ← _GestureSemantics ←
I/flutter ( 7435):   RawGestureDetector ← GestureDetector ← InkWell ← Container ← ProgramItem ← RepaintBoundary-[<1>] ←
I/flutter ( 7435):   ⋯
I/flutter ( 7435):   parentData: offset=Offset(0.0, 0.0) (can use size)
I/flutter ( 7435):   constraints: BoxConstraints(w=371.4, 0.0<=h<=Infinity)
I/flutter ( 7435):   size: MISSING
I/flutter ( 7435):   direction: horizontal
I/flutter ( 7435):   mainAxisAlignment: start
I/flutter ( 7435):   mainAxisSize: max
I/flutter ( 7435):   crossAxisAlignment: center
I/flutter ( 7435):   textBaseline: nullSee also: https://flutter.io/layout/
I/flutter ( 7435): If this message did not help you determine the problem, consider using debugDumpRenderTree():
I/flutter ( 7435):   https://flutter.io/debugging/#rendering-layer
I/flutter ( 7435):   http://docs.flutter.io/flutter/rendering/debugDumpRenderTree.html
I/flutter ( 7435): If none of the above helps enough to fix this problem, please don't hesitate to file a bug:
I/flutter ( 7435):   https://github.com/flutter/flutter/issues/new
I/flutter ( 7435):
I/flutter ( 7435): When the exception was thrown, this was the stack:
I/flutter ( 7435): #0      RenderFlex.performLayout.<anonymous closure> (package:flutter/src/rendering/flex.dart:500:11)
I/flutter ( 7435): #2      RenderFlex.performLayout (package:flutter/src/rendering/flex.dart:462:16)
I/flutter ( 7435): #3      RenderObject.layout (package:flutter/src/rendering/object.dart:1892:7)
I/flutter ( 7435): #4      RenderPadding.performLayout (package:flutter/src/rendering/shifted_box.dart:160:11)
I/flutter ( 7435): #5      RenderObject.layout (package:flutter/src/rendering/object.dart:1892:7)
I/flutter ( 7435): #6      RenderBox&RenderObjectWithChildMixin&RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:106:13)
I/flutter ( 7435): #7      RenderObject.layout (package:flutter/src/rendering/object.dart:1892:7)
I/flutter ( 7435): #8      RenderConstrainedBox.performLayout (package:flutter/src/rendering/proxy_box.dart:256:13)
I/flutter ( 7435): #9      RenderObject.layout (package:flutter/src/rendering/object.dart:1892:7)
I/flutter ( 7435): #10     RenderBox&RenderObjectWithChildMixin&RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:106:13)
I/flutter ( 7435): #11     RenderObject.layout (package:flutter/src/rendering/object.dart:1892:7)
I/flutter ( 7435): #12     RenderFlex.performLayout (package:flutter/src/rendering/flex.dart:541:15)
I/flutter ( 7435): #13     RenderObject.layout (package:flutter/src/rendering/object.dart:1892:7)
I/flutter ( 7435): #14     RenderPadding.performLayout (package:flutter/src/rendering/shifted_box.dart:160:11)
I/flutter ( 7435): #15     RenderObject.layout (package:flutter/src/rendering/object.dart:1892:7)
I/flutter ( 7435): #16     RenderBox&RenderObjectWithChildMixin&RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:106:13)
I/flutter ( 7435): #17     RenderObject.layout (package:flutter/src/rendering/object.dart:1892:7)
I/flutter ( 7435): #18     RenderBox&RenderObjectWithChildMixin&RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:106:13)
I/flutter ( 7435): #19     RenderObject.layout (package:flutter/src/rendering/object.dart:1892:7)
I/flutter ( 7435): #20     RenderBox&RenderObjectWithChildMixin&RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:106:13)
I/flutter ( 7435): #21     RenderObject.layout (package:flutter/src/rendering/object.dart:1892:7)
I/flutter ( 7435): #22     RenderBox&RenderObjectWithChildMixin&RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:106:13)
I/flutter ( 7435): #23     RenderObject.layout (package:flutter/src/rendering/object.dart:1892:7)
I/flutter ( 7435): #24     RenderSliverList.performLayout.advance (package:flutter/src/rendering/sliver_list.dart:200:17)
I/flutter ( 7435): #25     RenderSliverList.performLayout (package:flutter/src/rendering/sliver_list.dart:233:19)
I/flutter ( 7435): #26     RenderObject.layout (package:flutter/src/rendering/object.dart:1892:7)
I/flutter ( 7435): #27     RenderSliverPadding.performLayout (package:flutter/src/rendering/sliver_padding.dart:144:11)
I/flutter ( 7435): #28     RenderObject.layout (package:flutter/src/rendering/object.dart:1892:7)
I/flutter ( 7435): #29     RenderViewportBase.layoutChildSequence (package:flutter/src/rendering/viewport.dart:248:13)
I/flutter ( 7435): #30     RenderViewport._attemptLayout (package:flutter/src/rendering/viewport.dart:899:12)
I/flutter ( 7435): #31     RenderViewport.performLayout (package:flutter/src/rendering/viewport.dart:823:20)
I/flutter ( 7435): #32     RenderObject._layoutWithoutResize (package:flutter/src/rendering/object.dart:1767:7)
I/flutter ( 7435): #33     PipelineOwner.flushLayout (package:flutter/src/rendering/object.dart:1056:18)
I/flutter ( 7435): #34     BindingBase&SchedulerBinding&GestureBinding&ServicesBinding&RendererBinding.drawFrame (package:flutter/src/rendering/binding.dart:251:19)
I/flutter ( 7435): #35     BindingBase&SchedulerBinding&GestureBinding&ServicesBinding&RendererBinding&WidgetsBinding.drawFrame (package:flutter/src/widgets/binding.dart:504:22)
I/flutter ( 7435): #36     BindingBase&SchedulerBinding&GestureBinding&ServicesBinding&RendererBinding._handlePersistentFrameCallback (package:flutter/src/rendering/binding.dart:189:5)
I/flutter ( 7435): #37     BindingBase&SchedulerBinding._invokeFrameCallback (package:flutter/src/scheduler/binding.dart:695:15)
I/flutter ( 7435): #38     BindingBase&SchedulerBinding.handleDrawFrame (package:flutter/src/scheduler/binding.dart:643:9)
I/flutter ( 7435): #39     _invoke (file:///b/build/slave/Linux_Engine/build/src/flutter/lib/ui/hooks.dart:86)
I/flutter ( 7435): #40     _drawFrame (file:///b/build/slave/Linux_Engine/build/src/flutter/lib/ui/hooks.dart:75)
I/flutter ( 7435): (elided one frame from class _AssertionError)
I/flutter ( 7435):
I/flutter ( 7435): The following RenderObject was being processed when the exception was fired:
I/flutter ( 7435):   RenderFlex#23264 relayoutBoundary=up13 NEEDS-LAYOUT NEEDS-PAINT
I/flutter ( 7435):   creator: Row ← Padding ← DecoratedBox ← ConstrainedBox ← Container ← Semantics ← Chip ← Row ←
I/flutter ( 7435):   Padding ← DecoratedBox ← Container ← Listener ← ⋯
I/flutter ( 7435):   parentData: offset=Offset(0.0, 0.0) (can use size)
I/flutter ( 7435):   constraints: BoxConstraints(0.0<=w<=Infinity, h=32.0)
I/flutter ( 7435):   size: MISSING
I/flutter ( 7435):   direction: horizontal
I/flutter ( 7435):   mainAxisAlignment: start
I/flutter ( 7435):   mainAxisSize: min
I/flutter ( 7435):   crossAxisAlignment: center
I/flutter ( 7435):   textBaseline: null
I/flutter ( 7435): This RenderObject had the following child:
I/flutter ( 7435):   RenderParagraph#d4215 NEEDS-LAYOUT NEEDS-PAINT
I/flutter ( 7435): ════════════════════════════════════════════════════════════════════════════════════════════════════
I/flutter ( 7435): Another exception was thrown: 'package:flutter/src/rendering/box.dart': Failed assertion: line 1429 pos 12: 'hasSize': is not true.
I/flutter ( 7435): Another exception was thrown: 'package:flutter/src/rendering/box.dart': Failed assertion: line 1429 pos 12: 'hasSize': is not true.
I/flutter ( 7435): Another exception was thrown: 'package:flutter/src/rendering/box.dart': Failed assertion: line 1429 pos 12: 'hasSize': is not true.
I/flutter ( 7435): Another exception was thrown: 'package:flutter/src/rendering/box.dart': Failed assertion: line 1429 pos 12: 'hasSize': is not true.
I/flutter ( 7435): Another exception was thrown: 'package:flutter/src/rendering/box.dart': Failed assertion: line 1429 pos 12: 'hasSize': is not true.
I/flutter ( 7435): Another exception was thrown: 'package:flutter/src/rendering/box.dart': Failed assertion: line 1429 pos 12: 'hasSize': is not true.
I/flutter ( 7435): Another exception was thrown: 'package:flutter/src/rendering/box.dart': Failed assertion: line 1429 pos 12: 'hasSize': is not true.
I/flutter ( 7435): Another exception was thrown: 'package:flutter/src/rendering/box.dart': Failed assertion: line 1429 pos 12: 'hasSize': is not true.
I/flutter ( 7435): Another exception was thrown: 'package:flutter/src/rendering/box.dart': Failed assertion: line 1429 pos 12: 'hasSize': is not true.
I/flutter ( 7435): Another exception was thrown: 'package:flutter/src/rendering/box.dart': Failed assertion: line 1429 pos 12: 'hasSize': is not true.
I/flutter ( 7435): Another exception was thrown: 'package:flutter/src/rendering/sliver_multi_box_adaptor.dart': Failed assertion: line 428 pos 12: 'child.hasSize': is not true.
I/flutter ( 7435): Another exception was thrown: 'package:flutter/src/rendering/box.dart': Failed assertion: line 1429 pos 12: 'hasSize': is not true.
I/flutter ( 7435): Another exception was thrown: 'package:flutter/src/rendering/box.dart': Failed assertion: line 1429 pos 12: 'hasSize': is not true.
I/flutter ( 7435): Another exception was thrown: 'package:flutter/src/rendering/box.dart': Failed assertion: line 1429 pos 12: 'hasSize': is not true.

I'm working on a fix.

Fix in https://github.com/flutter/flutter/pull/11669