Add Keyboard navigation.

Hi!
For accesibility reasons, keyboard navigation on the calendar and time picker would be highly appreciated.
https://www.w3.org/WAI/ARIA/apg/patterns/dialog-modal/examples/datepicker-dialog/
Nico

Hey, @nico-k3 thanks for reaching with this question.
This is the next thing to do, maybe not this year, but it will come up.

On a slightly related note, tabbing through the calendar and time used to work in v6.0.0 but no longer works in v6.5.0

Hi @Feshchenko, can I implement this feature?


Custom tabs task should be gradle's copy task

Custom tabs task must depend on default copy tasks, not custom implementation.

Copy task supports only single folder destination.


Update text in BORO ID approval messages

Describe the task
As an internal user clicking "approve" to issue a BORO ID, I want to see corrected language in the pop-up messages (screenshots 1 and 2).
In both messages, "... request for carbon tax exemption" should be replaced with "application for a B.C. OBPS Regulated Operation ID".

Acceptance Criteria

[ ] first
[ ] second
[ ] third

Additional context

Add any other context about the task here.
Or here

@hannavovk , should the message be changed when declining applications too? "You have declined the application for a B.C. OBPS Regulated Operation ID." and "Are you sure you want to decline this application for a B.C. OBPS Regulated Operation ID?"?

@BCerki Yes, please! Thanks

Awesome! Thanks @BCerki


Provide better UI for self uninstall on platforms that don't actually support it

Right now juliaup self uninstall is an error as "unknown command" on platforms where Juliaup is installed via some third party method (brew, cargo etc). Instead of just pretending that the command doesn't exist, we could either output a more useful error message, or maybe on some platforms even initiate the uninstall (similar to Windows, where juliaup self update triggers a Windows Store update for Juliaup).

\cc @davidanthoff . not sure if the PR linked / mentioning this issue solves this.


Remove Ant Commander Personal version 4.9

Checklist for Pull Requests

[x] Have you signed the Contributor License Agreement?
[ ] Is there a linked Issue?

Manifests

[x] Have you checked that there aren't other open pull requests for the same manifest update/change?
[x] This PR only modifies one (1) manifest
[ ] Have you validated your manifest locally with winget validate --manifest <path>?
[ ] Have you tested your manifest locally with winget install --manifest <path>?
[ ] Does your manifest conform to the 1.6 schema?

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

Removed Ant Commander Personal version 4.9 as latest version is 4.10
Microsoft Reviewers: Open in CodeFlow

URL: https://www.antcommander.com/personal/versions/AntCommander-4.9.exe
OK
(Automated message - build 882)


Hello, I use protonhax to launch CE but my game crashes when I launch a local game, is this coming from the game?

edit: I started the installation program with protonhax and after the installation when launching CE I got an error code "access denied"

Could you please elaborate the steps to reproduce this error?  Images would help too.


Provide a brief explanation on how the notebooks differ

This is the first code pattern we have where there are two notebooks in on repo. This issue is a bit nit-picky, but can you provide a brief explanation before the "Steps" that explain what the purpose of each notebook is?
As it stands now, the user is just told to load them both up and run them. It doesn't really explain why i'm doing any of that.

cc @rhagarty @MadisonJMyers

@stevemart @rhagarty  definitely agree with this! Would be super helpful to readers who want to follow along. @aloknsingh if you help explain why the notebooks are separate and what each notebook/step purpose is, it will help readers follow along with your story.


Better error for calling <Plug>BufTabLine.Go beyond available buffers

Hey!
So far it seems like a great lightweight plugin. So much more performant than MiniBufExplorer and Airline. Thanks!
Would you mind improving the error message when calling <Plug>BufTabLine.Go beyond the available buffers? Given 3 buffers, calling <Plug>BufTabLine.Go(4) throws a two-line error with a prompt to press Enter at the end:
E684: list index out of range: 4
E15: Invalid expression: 'b'.buftabline#user_buffers()[4]

The "Press Enter" requirement from Vim is slightly too disruptive. Maybe limit that to a one-liner.
Thanks and cheers!

Well… the plugin itself isn’t throwing any error, that’s Vim complaining. But that’s just nitpicking.
Yes of course it should do something less noisy than spamming the command line and asking for a keypress. Thank you for the report – I can’t believe it never occurred to me to test that case.

Fixed. Share and enjoy. 😊

Superb. Thank you!


2.2.1 How to open a DM for the first time

In the previous version, I used to open it using client.openDM(slack_id, callback). Now the method does not exist anymore. How can I open a DM for the first time?

I feel like I've written something like this before, but I'll do it again. Do be warned, however, that I've been awake for less than an hour and this whole post may be but a jumble of words to you. Basically, check the aforementioned write-up if any of the below is confusing.
First and foremost, the Slack API docs is (are?) your best friend when using this module. Specifically, the methods and events sections, as they tell you what the names of events and methods are, plus they also detail what data is sent back/requried.
Second, you should make sure you understand the difference between the RTM client and the web client; the RTM client is used for accepting events, the web client is used for sending methods.
Looking at the method listing, it's quite obvious we want the im.open method. So, since it's a method, we'll use the web client.
webClient.im.open(someUserId, function(err, resp) {
    // Check `err` for any errors.
    // `resp` is the parsed response from the api.
    // Check API docs for what `resp` can be.
});

:balloon: :tada: :balloon:

I did lie a little earlier in implying that you can't use the RTM client for sending methods, you actually can. Both clients (the RTM client and web client) inherit from a BaseAPIClient class, which has a makeAPICall method. Using that method, you can make a method call, so long as you provide an endpoint and optionally parameters and/or a callback.
What the RTM client doesn't do is create the facet instances as children of itself. Basically put, you can't access methods via the RTM client like you can with the web client by calling the endpoint as a child of the client.
Side note: The im facet is special in that you can either call it im or dm when using the module. Nothing about this info is really needed to be able to do something, just a nice tidbit of knowledge.

Thanks, @Everesty
I am using the rtm client and makeAPICall did the trick!

Thanks @Everesty!


Cannot install .inf file ( no option to install )

I was trying to install courser concept file in folder and when i right click the .inf file , unlike typical windows right click there is no option to install .inf file in Shell . plz add this feature , that will be helpful. Thanks

Add this code to shell.nss in dynamic section
item(type="file" find='.inf' title="Install" cmd='InfDefaultInstall.exe'<EMAIL_ADDRESS>
Save changes, press ctrl + right-click to reload setting.

Thanks
On Fri, Mar 3, 2023 at 8:30 PM Mahmoud Gomaa @.***>
wrote:

Add this code to shell.nss in dynamic section
item(type="file" find='.inf' title="Install" cmd='InfDefaultInstall.exe' @.***"')
Save changes, press ctrl + right-click to reload setting.
—
Reply to this email directly, view it on GitHub
https://github.com/moudey/Shell/issues/178#issuecomment-1453636516, or
unsubscribe
https://github.com/notifications/unsubscribe-auth/AP56MTW7QE2HPZ3WUUVEZK3W2H7YBANCNFSM6AAAAAAVOOJH34
.
You are receiving this because you authored the thread.Message ID:
@.***>


unknown feature proc_macro_span_shrink with Rust 1.74.0

I cannot build assert_cmd using Rust nightly 1.74.0, with all features enabled.
> cargo +nightly check --features=color-auto --all-targets
   Compiling proc-macro2 v1.0.47
error[E0635]: unknown feature `proc_macro_span_shrink`
  --> /home/somers/.cargo/registry/src/index.crates.io-6f17d22bba15001f/proc-macro2-1.0.47/src/lib.rs:92:30
   |
92 |     feature(proc_macro_span, proc_macro_span_shrink)
   |                              ^^^^^^^^^^^^^^^^^^^^^^

For more information about this error, try `rustc --explain E0635`.
error: could not compile `proc-macro2` (lib) due to previous error

> rustc --version
rustc 1.74.0-nightly (e4133ba9b 2023-09-22)

Are you building in the assert_cmd repo at HEAD or pulling it in as a dependency and building that?

I tried to build it at HEAD.

Ah, looks like I missed a flag needed to hit this.  Fixed now


Rename to Identity Protection Risk Analysis

IdentityProtectionRiskAnalysis.workbook to Identity Protection Risk Analysis.workbook
PR Checklist

[x] Explain your changes, so people looking at the PR know what and why, the code changes are the how.

If adding or updating templates:

[ ] post a screenshot of templates and/or gallery changes
[ ] ensure your template has a corresponding gallery entry in the gallery folder
[ ] If you are adding a new template, add your team and template/gallery file(s) to the CODEOWNERS file. CODEOWNERS entries should be teams, not individuals
[ ] ensure all steps have meaningful names
[ ] ensure all parameters and grid columns have display names set so they can be localized
[ ] ensure that parameters id values are unique or they will fail PR validation (parameter ids are used for localization)
[ ] ensure that steps names are unique or they will fail PR validation (step names are used for localization)
[ ] grep /subscription/ and ensure that your parameters don't have any hardcoded resourceIds or they will fail PR validation
[ ] remove fallbackResourceIds and fromTemplateId fields from your template workbook or they will fail PR validation

closing pull request per John Gardener's recommendation - to not touch the file path in order to ensure soft-links don't break.


Support fixed-size arrays

For most languages this prevents memory allocation as the content can be embedded into the struct. There are many good uses such as IPv6 addresses, UUIDs and binary signatures.

Version 2 will support fixed size opaque data from 1 to 32 bytes [256-bit]. C and Go support embedded arrays in a struct. For Java a final byte array seems most performant. Maybe the compiler could support alternative bindings, such as an unsigned integer for up to 8 bytes. Ideas are welcome at this point.

I don't know how out of your way you need to go to support other fixed length integer types, but 128 bit would be great and using [16]byte for that in go would be very cool.

Yes, Go and C will have the fixed size arrays. I'm thinking about a compiler flag such as -O uuid:typeX.field1,type2.field3+ipv6:type.field for custom bindings per language, say java.util.UUID.

I think it would be nice to allow field annotations, like protobuf and thrift already do.  These annotations can then be used to specify type aliases for code generation.  The generator can then decide how and if to interpret these annotations.

Hello! Looking to use colfer for my next project in Go and stumbled upon the need for fixed-size arrays - has there been any progress on it so far? I'd love to lend a hand as well :smile:.

Hi @lithdew. The current release does not support the feature. It would not be hard to implement the most basic form, which is a byte array. If you can spare 40 hours then we could do this. I already know how.

Hi @lithdew. The current release does not support the feature. It would not be hard to implement the most basic form, which is a byte array. If you can spare 40 hours then we could do this. I already know how.

Happy to spare the time. What were your ideas for implementing it? Struggling to figure out how to fit fixed arrays into this: https://github.com/pascaldekloe/colfer/blob/master/go/Colfer.go

Sorry for the delay @lithdew. Fixed size arrays tend to use all bits. Therefore I think we should simply write the bytes as is in the serial.
Step (1) would be to add a field to O in testdata/test.colf, (2) add a test case to go/gen_test.go for that field, (3) make the tests pass by implementing the field in go/Colfer.go, and then (4) update the template in go.go to produce the code from (3).

Sorry for the delay @lithdew. Fixed size arrays tend to use all bits. Therefore I think we should simply write the bytes as is in the serial.
Step (1) would be to add a field to O in testdata/test.colf, (2) add a test case to go/gen_test.go for that field, (3) make the tests pass by implementing the field in go/Colfer.go, and then (4) update the template in go.go to produce the code from (3).

No worries :+1: how did you envision fitting a fixed array field into O in go/Colfer.go work exactly? If we limit it to just a few pre-defined fixed array sizes like [16]byte, [32]byte, etc. then it would be straightforward, though how about for arbitrary N representing fixed arrays [N]byte?

Exactly. In the schema you specify the amount of bytes for the fixed size.
type Object {
        Fix [3]byte
}

That object would serialise Object{Fix: [...]byte{0x1a, 0x2b, 0x3c}} as 0x001a2b3c7f.

I'm not sure about the size limitations. In version 2 I put a limit on 32 bytes (256-bit), but maybe that is not enough? These days people use 512-bit cryptographic hashes for example.

Note that we don't have to encode the size of the byte array. The size is fixed. You can't change it, just like you can't change the type of any field (without breaking compatibility).

Exactly. In the schema you specify the amount of bytes for the fixed size.
type Object {
        Fix [3]byte
}

That object would serialise Object{Fix: [...]byte{0x1a, 0x2b, 0x3c}} as 0x001a2b3c7f.

Though does this mean that we need to add in fields for every fixed byte array size in Colfer.go? i.e.
type O struct {
    A [1]byte
    B [2]byte
    C [3]byte
    D [4]byte
    // ....
    ZZZZ [1024]byte
}

Arrays (of all types) are supported in version two now. Behind the scenes, each element is encoded just like separate fields (in similar order) would. Java uses final arrays.


OLH-1706 - Stop am cookie being used to sign in to deleted  or changed password account

Proposed changes
OLH-1706 - Stop am cookie being used to sign in to deleted  or account where password has changed
https://govukverify.atlassian.net/browse/OLH-1706
What changed
Expire am cookie when account deleted or password changed.
Why did it change
As recommended by remediation action on Purple Teaming exercise.
Related links
https://docs.google.com/presentation/d/1PCdEJzY0XlS8nY9UjNnvRoMs73qyZLcI_AE9BAuR3nQ/edit#slide=id.g2c25a21a9b4_0_0
Checklists
Environment variables or secrets

[ ] No environment variables or secrets were added or changed

Testing
Deploy to dev and after accoutn deletion and/or password is changed, the am cookie expiry time is set to a date in the past.
How to review
Test and code completeness

Could you add a unit test for the new clearCookies function? We've got the controller tests that check it gets called but not one for its behaviour of clearing the cookies

Could you add a unit test for the new clearCookies function? We've got the controller tests that check it gets called but not one for its behaviour of clearing the cookies

Ah Yes, missed that. on it


Call signature of Client.LoginAsync() has changed please provide example code

I have been working through Adrian Halls book to develop a cross platform app with an Azure mobile service API backend. It appears that between V3 and V4 of this Nuget package the call signatures for MobileServiceClient.LoginAsync changed.
Please could you provide, or let me know where I could find, sample code for the client flow for social provider authentication and authorisation using the new Client.LoginAsync call signature that needs a  MobileServiceAuthenticationProvider and a JToken object. Ideally using MicrosoftAccount authentication as an example.
Thank you.
Phil Crompton

This is caused by having the old Android SDKs installed when you install the Azure Client SDK Nuget. It causes the Android project to reference the common NetStandard DLL rather than the Android-specific DLL.

So what should I do to fix it? Uninstall the android SDK and the reinstall the Nuget?

I think you just need to update the Android SDK, make sure it's targeting the latest in the project properties, and then reinstall the Nuget.

Hi, I have same problem here. I updated VS2017 to 15.3.2.
Xamarin <IP_ADDRESS>9
Xamarin.Android SDK <IP_ADDRESS>
How I can verify if the installed dll is correct?
I spended a lot of time migrating PCL to NetStandar 1.4 only for re-enable google login!
Thank you.

Hi @JPhilC
I wrote a small instruction for v4 here
Also, there is sample project by @dhei : https://github.com/dhei/azure-mobile-apps-xamarinforms-login-sample

Thank you,
It is very much appreciated.
Phil
From: Ivan Matkov<EMAIL_ADDRESS>Sent: 10 October 2017 18:39
To: Azure/azure-mobile-apps-net-client<EMAIL_ADDRESS>Cc: Phil Crompton<EMAIL_ADDRESS>Mention<EMAIL_ADDRESS>Subject: Re: [Azure/azure-mobile-apps-net-client] Call signature of Client.LoginAsync() has changed please provide example code (#375)
Hi @JPhilChttps://github.com/jphilc
I wrote a small instruction for v4 herehttps://github.com/Azure/azure-mobile-apps-net-client/issues/341#issuecomment-308337440
Also, there is sample project by @dheihttps://github.com/dhei : https://github.com/dhei/azure-mobile-apps-xamarinforms-login-sample
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHubhttps://github.com/Azure/azure-mobile-apps-net-client/issues/375#issuecomment-335551304, or mute the threadhttps://github.com/notifications/unsubscribe-auth/ACmVPVacDXVZeSoecJd4RECbWvaxUAKrks5sq6vMgaJpZM4O9lRG.


Atom Versioning Scheme will fall over in ~70 releases on Windows

On Windows, every block of the version number (i.e. X.Y.A.B) is limited to the range [0-255]. Currently this number is a monotonically increasing number on the minor version on Windows, which will eventually fail once we hit 0.256.0. Plenty of time to fix this, but that's precisely why I wanted to bring it up now and not later :)

Thanks for the heads up :+1:

Windows is HILARIOUS.

 Eight bits ought to be enough for anybody!

1.0 happened, closing this out.


[MM-13297] Remove usage of localizeMessage and dangerouslySetInnerHTML from components in components/help

Summary
Remove usage of localizeMessage and dangerouslySetInnerHTML from components in components/help. Remove the markdown from the messages and use proper HTML tags instead.
Ticket Link
Jira ticket | GitHub issue #9949
Checklist

[x] Ran make check-style to check for style errors (required for all pull requests)
[x] Ran make test to ensure unit and component tests passed
[x] Includes text changes and localization file (.../i18n/en.json) updates

@hmhealey thanks for the review!
Indeed removing Markdown for simpler strings like **Reply** by clicking... looks confusing. I spent some time doing this PR, but it's ok for me to return Markdown back :). I learned a lot during that anyway.
I can change this PR to use formattedMarkdownMessage component for lines with bold, italics, links and codes, such as:
If **Get Public Link** is not visible in the file previewer...
or
Built-in slash commands come with all Mattermost installations and custom slash commands are configurable to interact with external applications. Learn about configuring custom slash commands on the [developer slash command documentation page](http://docs.mattermost.com/developer/slash-commands.html).
What do you think about this?

Yep, that sounds good to me as long as it's just inline styles like that. If it gets to anything like headers or lists, that should still be done with JSX though

I have a dilemma. Let's say I have this line
message.push('```\n `monospace`\n```');

If I want to remove the usage of localizeMessage I could write the above message using two ways:
<Markdown message={'```\n`monospace`\n```'}/>

or

    {'`monospace`'}

I suppose the first one is worse in terms of performance but is also simpler than the second way. What are your thoughts?

Spinmint test server destroyed


reverted base-trie-on-disk

It wasn't substantially better so I yanked it. It was theoretically better, but it didn't look better by the numbers. It's going to take a substantial number of claims to make the capped leveldb approach better, and before that happens we'll have done the sqlite backing.

For review, I want to note the previous copy method:```
void CClaimTrieCacheHashFork::copyAllBaseToCache()
{
recurseNodes({}, [this](const std::string& name, const CClaimTrieData& data) {
if (nodesAlreadyCached.insert(name).second)
nodesToAddOrUpdate.insert(name, data);
});
for (auto it = nodesToAddOrUpdate.begin(); it != nodesToAddOrUpdate.end(); ++it) {
    it->hash.SetNull();
    it->flags |= CClaimTrieDataFlags::HASH_DIRTY;
}

}```

removing in favor of memory branch


Replacement confirmation for multiple files

This is probably a duplicate feature request and so I apologize I am new to github.
When duplicate files are found on move / copy operations, a check box that says - repeat (replace / duplicate) for all files - would be very desirable.
Thank you for your great work.

@intricatebiscuit Thank you for opening this feature request, we have made some changes in main that resolve this issue.


Passive Sync Messages Must Follow Strict Ordering

Currently, passive sync messages are not strictly ordered in relation to replicated messages because they follow a separate path through the execution system.  As a result, consistent state is not translated to the passive if replicated messages are intermingled with passive sync.  In order to communicate consistent state from active to passive several things must happen.

Passive sync meta-messages must execute serially only after the request processor is flushed
Sync state must be tracked on the active so only relevant replicated messages are sent to the passive after passive sync has started for a concurrency key
replicated messages should only be applied on the passive once sync state is complete for a concurrency key

TAB-6515, TAB-6516


How to reload my trained model and retrain the model with new dataset?

Hi, I am a new in the Machine Learning world!
I have successfully created a model for Android. And then I want to retrain the model with new dataset (based on same classes; NOT transfer training). According to some internet resources, I probably need to use tf.Saver to save check points and meta model. For that, do I need to modify train.py script to keep "layer_weights = tf.Variable(initial_value, name='final_weights')" and "layer_biases = tf.Variable(tf.zeros([class_count]), name='final_biases')"  ?
If so, the problem is that how can I reload the model with saved .ckpt ad .meta model to retrain it? Can I reuse the retrain.py to retrain the model with saved variables ad model?

UPADATE
I added global variables and tf.train.saver() in the main like following
`
+++++++++++++++++++++++++++++++
model_path = "./tmp/model.ckpt"
save_path = "./tmp/model.ckpt"
+++++++++++++++++++++++++++++++
...

def main(_):
....
Set up all our weights to their initial default values.
init = tf.global_variables_initializer()
sess.run(init)

# +++++++++++++++++++++++++++++++++++++++++++++++++++
# 'Saver' op to save and restore all the variables
saver = tf.train.Saver()
# # Restore model weights from previously saved model
# saver.restore(sess, model_path)
# print("Model restored from file: %s" % model_path)
# +++++++++++++++++++++++++++++++++++++++++++++++++++

....
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
# Save model weights to disk
save_path = saver.save(sess, model_path)
# print("Model saved in file: %s" % save_path)
# ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

`
Finally I could reload my previous model and keep training the model.
For my case, I split the 100% dataset to 80% and 20%. Then creat the model with 80% dataset with original retrain.py and then reload and retrain the model with 20% dataset. Then I got the following results.
1-1. model_0.75_192_80_v2
tensorflow: Final test accuracy = 49.4% (N=1631)
evaluate.py: Accuracy: 0.536481, Cross Entropy: 1.5794
1-2. model_0.75_192_100_v2_full
tensorflow: Final test accuracy = 74.9% (N=447)
evaluate.py: Accuracy: 0.727161, Cross Entropy: 0.920948
To test the model, I created the model with 100% dataset with original retrain.py then I got the following result.
1-3. model_0.75_192_100_v2_100
tensorflow: Final test accuracy = 74.3% (N=2088)
evaluate.py: Accuracy: 0.773145, Cross Entropy: 0.587493
First line (### tensorflow: Final test accuracy ) is from the last line after running retrain.py.
Second line (### evaluate.py: Accuracy: ... , Cross Entropy) is from the result after running evaluate.py with the models.
Another question is why the accuracy result is different between two?
And ThesorBoard has totally different results from these result.
For example,
1-1. model_0.75_192_80_v2
TensorflowBoard[last point]: (train)0.81/(validation)0.69
1-2. model_0.75_192_100_v2_full
TensorflowBoard [last point]: (train)0.95/(validation)0.60
1-3. model_0.75_192_100_v2_100
TensorflowBoard [last point]: (train)0.78/(validation)0.67
What is the correct accuracy ?
Thanks in advance! 👍


Support Helm v3.0 for deployments into Kubernetes

/area runtime
/area operator
/area docs

With the release of Helm v3.0 https://www.cncf.io/news/2019/11/13/helm-reaches-version-3/ need to ensure that Helm charts and deployments can use this.

A lot of people will stay on Helm 2 for some time, so we should support both for probably the next 6 months or so.

Yes, actually the charts under the helm org themselves have not moved to Helm 3..
For example, a few components that Dapr is using, still with Helm 2 on their docs: (--name has been removed from Helm 3)
https://github.com/helm/charts/tree/master/stable/nats#installing-the-chart
https://github.com/helm/charts/tree/master/stable/redis#installing-the-chart
https://github.com/helm/charts/tree/master/stable/mongodb#installing-the-chart

JFYI, @lukekim @yaron2
Dapr chart is installable by helm2 and helm3 without any changes. We can use helm3 for kafka and redis charts without any changes.
For helm 3, --name is not required and --namespace doesn't create namespace unless it exists. other than these changes, helm3 works as expected for dapr project.
cc/ @artursouza

It's not that --name is not required, it's not supported.
Thus, every place in our docs that uses --name and/or --namespace does not work with Helm 3.

It's not that --name is not required, it's not supported, and will throw an error if used with Helm 3.
Thus, every place in our docs that uses --name and/or --namespace does not work with Helm 3.

yeah right. helm3 changed the flags and options without backward compat. e.g. --name option is dropped.
With the latest helm3, --namespace option can still install dapr to dapr-system namespace, but dapr-system namespace needs to be created by kubectl before running helm3 install. creation of namespace is dropped due to the security reason, but we can still install app to the namespace at least.
helm install dapr dapr/dapr --namespace=dapr-system

My point is that we do not need to change our charts especially for helm3 even if we need to update docs for helm3

Yeah, the chart itself does not need changing.

gave this a try today and it worked with helm 3: helm install --repo https://daprio.azurecr.io/helm/v1/repo mydapr dapr

Closing.


Adding myself to contributor's page

add yourself to the list of contributors

you don't need to raise, multiple PRs, could you club all your changes in one.

How do i merger all into one PR?
On Thu, May 28, 2015 at 9:36 PM, neilthemathguy<EMAIL_ADDRESS>wrote:

you don't need to raise, multiple PRs, could you club all your changes in
one.
—
Reply to this email directly or view it on GitHub
https://github.com/crowdresearch/crowdsource-platform/pull/179#issuecomment-106661634
.

commit all changes to a single branch,
a. git checkout -b addingmypage (creates a new branch)
b. do your changes
c. git add file1, git add file2 ..........
d. git commit -m "added myself"
push new branch to your forked repo
git push origin addingmypage
create a new pull request for that branch.

PS : Since you will be raising a new pull request, please close this pull request .

Hi: I get an error when trying to push the new brach to my forked repo:
remote: Permission to crowdresearch/crowdsource-platform.git denied to
b57fe9943f1745cda5616879c7f62fbea582edab.
fatal: unable to access '
https://github.com/crowdresearch/crowdsource-platform.git/': The requested
URL returned error:
403

The full output of the git shell is this:
C:\Users\Claudia\Documents\GitHub\crowdsource-platform\crowdsource-platform
[saviaga]> git status
On branch saviaga
Changes not staged for commit:
(use "git add ..." to update what will be committed)
(use "git checkout -- ..." to discard changes in working directory)
    modified:   staticfiles/js/crowdsource.routes.js
    modified:   staticfiles/templates/contributors/home.html

Untracked files:
(use "git add ..." to include in what will be committed)
    staticfiles/images/contributors/saviaga.jpg
    staticfiles/templates/contributors/saviaga.html

no changes added to commit (use "git add" and/or "git commit -a")
C:\Users\Claudia\Documents\GitHub\crowdsource-platform\crowdsource-platform
[saviaga +2 ~2 -0 !]> git add staticfiles/te
mplates/contributors/home.html
C:\Users\Claudia\Documents\GitHub\crowdsource-platform\crowdsource-platform
[saviaga +0 ~1 -0 | +2 ~1 -0 !]> git add sta
ticfiles/templates/contributors/saviaga.html
C:\Users\Claudia\Documents\GitHub\crowdsource-platform\crowdsource-platform
[saviaga +1 ~1 -0 | +1 ~1 -0 !]> git add sta
ticfiles/js/crowdsource.routes.js
C:\Users\Claudia\Documents\GitHub\crowdsource-platform\crowdsource-platform
[saviaga +1 ~2 -0 | +1 ~0 -0 !]> git add sta
ticfiles/images/contributors/saviaga.jpg
C:\Users\Claudia\Documents\GitHub\crowdsource-platform\crowdsource-platform
[saviaga +2 ~2 -0]> git commit -m "Adding my
self to contributor's page"
[saviaga e7b3387] Adding myself to contributor's page
4 files changed, 21 insertions(+)
create mode 100644 staticfiles/images/contributors/saviaga.jpg
create mode 100644 staticfiles/templates/contributors/saviaga.html
C:\Users\Claudia\Documents\GitHub\crowdsource-platform\crowdsource-platform
[saviaga]> git push origin saviaga
fatal: unable to access '
https://github.com/crowdresearch/crowdsource-platform.git/': Failed connect
to github.com:443;
No error
C:\Users\Claudia\Documents\GitHub\crowdsource-platform\crowdsource-platform
[saviaga]> git push origin saviaga
remote: Permission to crowdresearch/crowdsource-platform.git denied to
b57fe9943f1745cda5616879c7f62fbea582edab.
fatal: unable to access '
https://github.com/crowdresearch/crowdsource-platform.git/': The requested
URL returned error:
403
On Fri, May 29, 2015 at 10:41 AM, Vishwajeet Narwal <
<EMAIL_ADDRESS>wrote:

commit all changes to a single branch, a. git checkout -b
addingmypage (creates a new branch) b. do your changes c. git add file1,
git add file2 .......... d. git commit -m "added myself"
push new branch to your forked repo git push origin addingmypage
create a new pull request for that branch.

PS : Since you will be raising a new pull request, please close this pull
request .
—
Reply to this email directly or view it on GitHub
https://github.com/crowdresearch/crowdsource-platform/pull/179#issuecomment-106850479
.


chore: Create tag after pushing new version (#182)

Description

Create tag after pushing new version

          2 Warnings

:warning:
The Pull Request summary does not contain the commit message convention

:warning:
The Pull Request title does not follow the convention [ACCSEC-0000] PR Title text

  Generated by :no_entry_sign: Danger


Saving defeated enemies doesn't work properly

the previous removed fields are getting overwritten when trying to save
Example:

before saving: {"meta": {"max_slots": 5}, "slots": [{"time":<PHONE_NUMBER>, "loc": [5, 0], "removed": []}]}
after saving: {"meta": {"max_slots": 5}, "slots": [{"time":<PHONE_NUMBER>, "loc": [5, 0], "removed": [[1, -5]]}, {"time":<PHONE_NUMBER>, "loc": [5, 0], "removed": [[1, -5]]}]}

Insights:

the loc fields are NOT overwritten
it does not affect fields saved in previous games, only affects when saving more than once within the same game

probable files involved:

game/data/__init__.py

still present as of #47


"Invalid Tan" message is displayed when the TAN input screen is opened (EXPOSUREAPP-3646)

Description
As soon as the user opens the screen for teletan input, a message appears stating that the TAN is invalid. This message remains until the complete TAN has been entered.
Expected: Only if the TAN is invalid the message should appear
Fix: Added check to only do valid tan check if the length of the TAN is at the max length. Changed unit tests to reflect this.
Steps to reproduce
Go to TAN input screen, enter an invalid TAN - the error will now only appear once the user has filled in all the spaces.

just from a readabilty point of view id prefer if the check for no input is performed in a different place, isTanValid isn't reall true if there is no tan at all.

@Kolpa
It's not necessarily a check for no input, the issue was that the tan was always invalid when it wasn't at full length so the error message was always there. This addition was just to make sure that the tan validation check is only done if the tan is at full length (complete)

Just to make my point clear :D i totally agree with the solution and i like it! But the property is called isTanValid, which is quite simply, not true for a tan that is shorter than max length.
So i propose that you do the length check in a different spot and use it in the formatter to decide to not show the error even if the tan is technically "incorrect".
I think doing that way would help a lot with readability for further people looking at this code. Since a check for is tan valid should not return true when a tan is actually invalid but we don't want to display the error.

@Kolpa
Noted and implemented. Sorry I missed the initial point of your comment. I have separated the length and validity logic so that it reads better.


Adds identity definition to the jsonschema schema

Note the merge target is not main but 1.2.0.
How to test
git clone this repo
git checkout this branch
python3 -m venv env
source env/bin/activate
pip install --upgrade pip setuptools wheel
cd schema-sandbox
pip install -r requirements.txt
python3 schema_poc.py -d data.yml -s schema.json  # <- should be quiet

Thanks for reviewing!


Hyprland crashes resuming from suspend + cursor disappears

Hyprland Version
 System/Version info
Hyprland, built from branch main at commit 1343aa865d04d80313b0e674c28ecfdbeb90e876 dirty (config: Don't override fullscreen opacity if only two opacities are provided (5512)).
Date: Tue Apr 9 16:22:44 2024
Tag: v0.38.0-83-g1343aa86, commits: 4416

flags: (if any)

System Information:
System name: Linux
Node name: james-office-desktop
Release: 6.7.9-arch1-1
Version: #1 SMP PREEMPT_DYNAMIC Fri, 08 Mar 2024 01:59:01 +0000

GPU information:
0e:00.0 VGA compatible controller [0300]: NVIDIA Corporation GP102 [GeForce GTX 1080 Ti] [10de:1b06] (rev a1) (prog-if 00 [VGA controller])

os-release: NAME="EndeavourOS"
PRETTY_NAME="EndeavourOS"
ID="endeavouros"
ID_LIKE="arch"
BUILD_ID="2022.04.08"
ANSI_COLOR="38;2;23;147;209"
HOME_URL="https://endeavouros.com"
DOCUMENTATION_URL="https://discovery.endeavouros.com"
SUPPORT_URL="https://forum.endeavouros.com"
BUG_REPORT_URL="https://forum.endeavouros.com/c/arch-based-related-questions/bug-reports"
PRIVACY_POLICY_URL="https://endeavouros.com/privacy-policy-2"
LOGO="endeavouros"

plugins:

Bug or Regression?
Bug
Description
If I put my system into S3 sleep and then resume, hyprland crashes and I get dumped back out to SDDM.
Also when I log back in my mouse cursor has disappeared. I can get it back by running:
hyprctl setcursor Bibata-Modern-Ice-Hypr 24
How to reproduce
Presumably just by suspending and resuming, but not sure if this is something particular to my machine. I'm using nvidia 545 drivers. Also I'm using swaylock because hyprlock is unstable for me. I have no idea if swaylock gets engaged before the system enters s3 sleep?
Crash reports, logs, images, videos
hyprlandCrashReport797595.txt

I was able to replicate this with systemctl hybrid-sleep left my desktop hanging and I was unable to go to tty, systemctl suspend came back fine, and systemctl hibernate seemed to turn off my computer and brought me back to tty for login? This is with an AM5 msi mobo X670-p, and amd 6900 for gpu. The odd thing is none of them left a core dump?
What command are you running to make this happen @endeavour?

systemctl suspend. I've switched from S3 to S2idle as a workaround.


Delete VMs folder from the frontend when the VM reach DONE state

Description
Delete the VM folder from /var/lib/one/vms when the VM associated reach DONE state.

Progress Status

[ ] Branch created
[ ] Code committed to development branch
[ ] Testing - QA
[ ] Documentation
[ ] Release notes - resolved issues, compatibility, known issues
[ ] Code committed to upstream release/hotfix branches
[ ] Documentation committed to upstream release/hotfix branches

Folders are left for auditing purposes. An externa tool or script can be used to clean unneeded folders.

For the records, we have now a little tool added to oneadmin crontab.


Check how Mission data is sent to client (incl. icon images) so that new Missions can easily be added server-side (affects API)

See also https://github.com/kort/kort-core/issues/8 .

All mission information is served by the backend. New missions can easily be added on the backend without updating the client. However, for the sake of device optimized images and loading times, all relevant mission images have been bundled with the mobile app. When achievementImageURI points to a remote URL, however, this image is loaded. Check the documentation chapter 9.3. Adding New Mission Types.


submitForm(): _token is saved with all other fields

Hi,
I have a problem with the following test:
$newCategory = [
	'name'      => 'TEST',
	'group_id'  => 1,
	'parent_id' => null
];

$this->visit('/categories/create')
	->submitForm('Save', $newCategory)
	->verifyInDatabase('categories', ['name' => 'TEST']);

I get the following error:
SQLSTATE[HY000]: General error: 1 table categories has no column named _token

Here is the code of my store method:
public function store(CategoryRequest $request)
{
	$category = new Category;
	$category->fill($request->all());
	$category->save();
}

I'm bypassing the Csrf check directly in the middleware when env is testing, so it is supposed to not use that field, but it is submitted and save() is trying to store it in the DB.
How can I avoid that?
Pv

Set your fillable fields on the Category model.
This isn't a bug with the Integrated package.

Weird fillable is set:
protected $fillable = ['name', 'label', 'group_id', 'parent_id'];

I will dig a bit deeper tomorrow.
Cheers,
Pv


Referendum eval stage

Constitution pp 88
Referendums that pass are not immediately implemented
They trigger 1 cycle after during which period they can be downvoted (eval phase) the same as proposals.
Only yes voters can reverse their vote to no
==
Version 2.0 consideration
Also interesting - 3 cycle reversal phase where a change that caused unintended consequences can still be downvoted by citizens.

Hello @n13, just to make sure:

According to the constitution referendums have this life cycle:

They are proposed, the proposer needs to stake some Seeds.
If the stake was enough the referendum becomes active, now citizens can vote
Voting cycle
Test period, citizens can revert their vote. The setting hasn't been changed in this stage.
Eval period, if test period passed, then the setting is changed and we are in an eval period, if the referendum is down voted then the setting is reverted to its previous value
Done, if the referendum passed the eval period, then the setting remains as it is now and a new referendum would be needed to change it.
Is that correct?

Yes. I wonder how we do that, maybe have a separate "backup" or "before" table with settings - or a different scope that contains the old value, maybe the scope can be the referendum id?

Referendums also have a quorum and unity thresholds, do I have to use the same mechanism proposals use? (i.e. the support table, etc)

I think we keep them as they are, with quorum based on citizens and not support level.
Not sure if the game guide has other ideas there.
We don't expect many quorums competing with each other so the whole incentive structure is different.
Quorums don't compete for resources.... so yes they should have a normal % based quorum based on the number of active citizens. I think we have this number somewhere.

Just to confirm, referendums also have their own voice scope, the vote system for referendums is pretty much the same for proposals, right?

Yes. They have their own voice scope. Referendums have their own contract, actually, referendum contract which is deployed at rules.seeds. So they don't interact with the proposals contract.
I think that's ok for now since all proposal types already have a lot of special cases and special rules for each type, so adding even more complexity to proposals by adding referendums doesn't make sense. That being said, it would make sense if they  use a similar system as proposals, rather than table scope for stages.
Using the table scope for the different stages only adds a lot of boilerplate code without really adding any benefits.


invalid memory address or nil pointer on sort

Hi Folks!
I was following the documentation about sorting row groups and its example is not working:
type RowType struct{ FirstName, LastName string }

func main() {
	buffer := parquet.NewGenericBuffer[RowType](
		parquet.SortingRowGroupConfig(
			parquet.SortingColumns(
				parquet.Ascending("LastName"),
				parquet.Ascending("FistName"),
			),
		),
	)

	buffer.Write([]RowType{
		{FirstName: "Luke", LastName: "Skywalker"},
		{FirstName: "Han", LastName: "Solo"},
		{FirstName: "Anakin", LastName: "Skywalker"},
	})

	sort.Sort(buffer)

	fw := new(bytes.Buffer)

	writer := parquet.NewGenericWriter[RowType](fw)
	parquet.CopyRows(writer, buffer.Rows())

	writer.Close()

	fw.Bytes()
}

Error:
panic: runtime error: invalid memory address or nil pointer dereference
[signal SIGSEGV: segmentation violation code=0x2 addr=0x50 pc=0x104826f60]

After initial debug it seems that buf.sorted is returning nil at less function:
https://github.com/parquet-go/parquet-go/blob/b3c3a0c3ed6fd14d75c919b6179c64edcc2ee08d/buffer.go#L336-L346
I was trying to figure out why this buf.sorted is always nil and I think is because it is never entering in this if:
https://github.com/parquet-go/parquet-go/blob/b3c3a0c3ed6fd14d75c919b6179c64edcc2ee08d/buffer.go#L268-L273
Am I missing something that the documentation is not explicit talking about? I also tried with different codes and it didin't worked by the same reason, but the example code is not working too.
Thanks for any help!

I'm getting a similar panic too. It seems to only happen when I'm using a GenericBuffer along with a sort on a timestamp field.
type Example struct {
	ID        uint64
	Timestamp int64 `parquet:"timestamp"`
}

panic: runtime error: invalid memory address or nil pointer dereference
[signal SIGSEGV: segmentation violation code=0x1 addr=0x50 pc=0x9332821]

goroutine 1 [running]:
github.com/parquet-go/parquet-go.(*Buffer).Less(0x2000?, 0xfa, 0xf9)
	/Users/nick/go/pkg/mod/github.com/parquet-go/parquet-go@v0.23.0/buffer.go:339 +0x61
github.com/parquet-go/parquet-go.(*GenericBuffer[...]).Less(...)
	/Users/nick/go/pkg/mod/github.com/parquet-go/parquet-go@v0.23.0/buffer.go:119
sort.order2(...)
	/usr/local/Cellar/go/1.23.2/libexec/src/sort/zsortinterface.go:299
sort.median({0x94fd888, 0xc000198090}, 0xf9, 0xfa, 0xfb, 0xc000187b80)
	/usr/local/Cellar/go/1.23.2/libexec/src/sort/zsortinterface.go:308 +0x3c
sort.medianAdjacent(...)
	/usr/local/Cellar/go/1.23.2/libexec/src/sort/zsortinterface.go:316
...

Confirming the finding of @OtavioHenrique. The buf.sorted[sortingIndex] = column is never called and the col.Less causes panic.

Hi everyone, thanks for reporting the issue.
Does any of you feel like they have enough context on the problem to submit a fix?


NuGet does not select the latest .NET Core version

NuGet does not select the latest .NET Core version
Take a look at https://stackoverflow.com/questions/54414482/what-am-i-missing-to-upgrade-asp-net-mvc-net-core-2-2-0-apps-to-net-core-2-2-1
General

Uninstall all .NET Core SDKs and runtimes.
Install latest .NET Core SDK (2.2.103) and runtime (<IP_ADDRESS>207)
In VS 2019 create new .NET Core Web App project.

NuGet references Microsoft.NETCore.App version 2.2.0 rather than 2.2.1.
Explicitly specifying Microsoft.NETCore.App version to target 2.2.1 in .csproj works, however, during a build it will show a warning stating that specifying version is not recommended.

@nguerrera @livarcocc is it part of VS or where would you suggest to route it?

This is the expected behavior. For framework-dependent apps, you usually do not want to specify a patch version. The reason is that if you upgrade to a patch before a hoster (web app)/customer (client app) then your app will not launch on their machines. Nevertheless, framework-dependent apps will use the latest patch available automatically at runtime via roll-forward. So you get the security benefit without having to rebuild your app for every patch.
Generally speaking, just specify the TargetFramework and let the system pick the right packages.
There are a few scenarios where you need to twiddle with the defaults and they are covered in this doc: https://docs.microsoft.com/en-us/dotnet/core/deploying/runtime-patch-selection


unbound not recovering from unhealthy backend

With the following example config (stub zone with a set of 2 authoritative nameservers):
stub-zone:
    name: "foo.bar."
    stub-addr: <address a>
    stub-addr: <address b>

We ran the following test and saw unbound not properly recovering:

Make authoritative nameserver a unresponsive
Unbound still replies with noerror
Make authoritative nameserver b unresponsive
Unbound servfails
Make authoritative nameserver a responsive again
Unbound continues to servfail and does not recover
Make authoritative nameserver b responsive again
Unbound replies with noerror again

This was the case with 1.9.6.
I need to check if this behavior is still present with 1.11.0.

We were not able to repro this in 1.11. Closing this issue. Thanks


vscode breakpoint doesn't work under wsl2

Please answer these questions before submitting your issue. Thanks!

What did you do? If possible, provides a simple script and debug step to reproduce the problem.

After setting breakpoint and starting debugging (F5) under VS Code, I enter php -e test.php under wsl2, and nothing happened.

What did you expect to see?
The breakpoint should normally work, just like this video - 在IDE中使用yasd调试器.

What did you see instead?
Breakpoint doesn't work on vscode.

What is your machine environment used (show your uname -a & php -v & gcc -v) ?

Linux xxxxxxx 5.4.72-microsoft-standard-WSL2 #1 SMP xxxxxxxx x86_64 x86_64 x86_64 GNU/Linux

PHP 7.4.3 (cli) (built: Oct  6 2020 15:47:56) ( NTS )
Copyright (c) The PHP Group
Zend Engine v3.4.0, Copyright (c) Zend Technologies
    with Yasd v0.3.7, Our Copyright, by codinghuang
    with Zend OPcache v7.4.3, Copyright (c), by Zend Technologies

Using built-in specs.
COLLECT_GCC=gcc
COLLECT_LTO_WRAPPER=/usr/lib/gcc/x86_64-linux-gnu/9/lto-wrapper
OFFLOAD_TARGET_NAMES=nvptx-none:hsa
OFFLOAD_TARGET_DEFAULT=1
Target: x86_64-linux-gnu
Configured with: ../src/configure -v --with-pkgversion='Ubuntu 9.3.0-17ubuntu1~20.04' --with-bugurl=file:///usr/share/doc/gcc-9/README.Bugs --enable-languages=c,ada,c++,go,brig,d,fortran,objc,obj-c++,gm2 --prefix=/usr --with-gcc-major-version-only --program-suffix=-9 --program-prefix=x86_64-linux-gnu- --enable-shared --enable-linker-build-id --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --libdir=/usr/lib --enable-nls --enable-clocale=gnu --enable-libstdcxx-debug --enable-libstdcxx-time=yes --with-default-libstdcxx-abi=new --enable-gnu-unique-object --disable-vtable-verify --enable-plugin --enable-default-pie --with-system-zlib --with-target-system-zlib=auto --enable-objc-gc=auto --enable-multiarch --disable-werror --with-arch-32=i686 --with-abi=m64 --with-multilib-list=m32,m64,mx32 --enable-multilib --with-tune=generic --enable-offload-targets=nvptx-none=/build/gcc-9-HskZEa/gcc-9-9.3.0/debian/tmp-nvptx/usr,hsa --without-cuda-driver --enable-checking=release --build=x86_64-linux-gnu --host=x86_64-linux-gnu --target=x86_64-linux-gnu
Thread model: posix
gcc version 9.3.0 (Ubuntu 9.3.0-17ubuntu1~20.04)

And here's my launch.json

(cli) php.ini

php --ri yasd

Perhaps you need to modify remote_host, you should not be able to access Windows in WSL.

Perhaps you need to modify remote_host, you should not be able to access Windows by <IP_ADDRESS> in WSL.

Thanks for you reply,
After following your advice, I have googled and tried 2 ways to find ip address could access Windows from WSL2, all comes out the same ip address ( and I guess that's it? )
# bash
grep -m 1 nameserver /etc/resolv.conf | awk '{print $2}'

ipconfig.exe | grep 'vEthernet (WSL)' -A4 | cut -d":" -f 2 | tail -n1 | sed -e 's/\s*//g'

In additional, I have turn off windows defender firewall
# cmd
New-NetFirewallRule -DisplayName "WSL" -Direction Inbound  -InterfaceAlias "vEthernet (WSL)"  -Action Allow

And modified php.ini yasd.remote.host ( also I have tried another port , of course I have modified launch.json too)

Unfortunately, just as the same,  it seems not work. XD

WTF, I found my php.ini have a TYPO
ysad -> yasd

Thanks, it could successfully debug now !!
And <IP_ADDRESS> is working, just for me.
Here's my configure if anyone needed:
VS Code launch.json

php.ini


make near-operation-file preset the default

I am writing react apps and I kinda dislike the fact that my whole schema with all my queries/mutations is always outputted into a single file.
Wouldn't it be nicer if  graphql-code-generator could generate a file next to the source gql file where my query/mutation is?
This way importing it would be easier in my components, because I always have it just one dot away when traversing filesystem.
Also on huge project like the one we have at @LeapLabs TS compiler would be much faster to index that new type/hook/thing because it's much faster at parsing and adding one small file vs parsing and indexing a huge file.
I know this would be a huge breaking change, but maybe for next major?

Is that what you're looking for?
https://graphql-code-generator.com/docs/presets/near-operation-file

thanks that looks exactly like what I am looking for

I have a question-Why is this not the default mode?
Is there an objective quality of the current mode that I am missing?
Seems like more general preset that suits better for both small and big projects is near-operation-file. Why is it not the default?

Hi @capaj
We prefer to maintain single-type output, because it's easier and we don't need to deal with imports.
In most cases, anything that can be done with multiple files - can be done with a single file - especially when it's related to TypeScript types. Having multiple generated files means that you need to maintain and track all those somehow.

Thanks for your reply. Understandable. Would be nice document the drawbacks of a single file aproach in the docs somewhere. We're getting to a point where typescript parser is getting a bit slow for us to work with the single file of 50k LOC and it will be a bit of work to swap it to near-operation-file. It would really have been nice to have a friendly warning when we started with graphql-code-generator.

@capaj I'm not sure that tserver performance should be affected by a file with a lot of types. Eventually, it has the same ts.Program with the same amount of TypeScript types.
Maybe this could be fixed with a different solution? Can you please share more details about the experience of working with a single file and how it's effects your workflow?
From our experience, working with multiple files usually comes with the overhead of maintaining tons of files, and it bloats the repo and doesn't improve IDE / TS performance, so it could be really interesting to hear your thoughts on that. Thanks!


Adding feature to return current waypoint index

Needs testing.

Okay, so if you build with dependencies in netbeans, it passes all the tests. If you don't, it fails a test or two. I did test this in the field with the core lib jar built with dependenices and it functions as intended. So i'm not sure how to classify it. I tried to update the commit message, but my git-fu was too weak.

Why would my update cause this test to fail:
/**
 * Test of isConnected method, of class UdpVehicleServer.
 */
@Test
public void testIsConnected() {
    UdpVehicleServer instance = new UdpVehicleServer(serviceAddress);
    VehicleServer server = AsyncVehicleServer.Util.toSync(instance);

    // Since we are using a test server, it should always be connected
    assertTrue("Server claimed it was not connected", server.isConnected());
}

It might be a race condition in the test code networking that just makes it fail at random.  We can rerun the test and if it passes, it should be good.


feat(Examples): Add I2C DMA to I2C examples for MAX32670 and MAX32675

Description
This change adds I2C DMA to the I2C examples for the ME15 and ME16.
Checklist Before Requesting Review

[x] PR Title follows correct guidelines.
[x] Description of changes and all other relevant information.
[ ] (Optional) Link any related GitHub issues using a keyword
[ ] (Optional) Provide info on any relevant functional testing/validation.  For API changes or significant features, this is not optional.

@sihyung-maxim Would the DMA i2c writes only occur once (regardless of the number of calls) because the states[i2cNum].writeDone flag is never reset in MXC_I2C_RevA_MasterTransactionDMA (i2c_reva.c)?

@sihyung-maxim Would the DMA i2c writes only occur once (regardless of the number of calls) because the states[i2cNum].writeDone flag is never reset in MXC_I2C_RevA_MasterTransactionDMA (i2c_reva.c)?

Yes, you're correct. It should be cleared before the transaction starts.

/clang-format-run


Better title for menu bar

Fixes

Home page menu bar shows index.html.

If no title is set, it would always show the current file path (./index.html)
Changes
Display the application name as default title.

Only home page or any page that don't have a title ^^


differential, automatic file transfer on partially transferred folder tree, based on file attributes

It would be great to have the possibility to 'safely' run a transfer on a partially transferred directory tree, e.g. if only a part was transferred, it would be great to be able to just rerun the upload command on the base directory and repocli would identify which files still need to be transferred, e.g. based on a comparison of the size/modification date of the source and target files.

@benglitz I have implemented it in such that a file is considered existing at the destination if

the path at the destination exists, and
file at destination has the same size as the file at source, and
file at destination has modification time later than the file at source

If there is an error getting the file information and the error is not FileNotFound, the file is also considered "existing" at the destination to prevent accidental file overwrite.
If a file is considered existing, the put/get operation will skip it unless you have the -f flag specified to overwrite existing files.


Changing the Order of List

Love this Add-On, it's super useful. My only complaint is that I'd like a way to change the order of the different lists. Right now, it looks like the lists will always display Backlog, Next, InProgress, Focus, Waiting, Complete. I'd like to display in order of InProgress, Next, Waiting, Backlog, Complete (I plan to remove Focus). Any guidance is much appreciated.

you can change the order (and remove Focus) in the kanban.html file.


Added support for displaying Cyrillic characters in nicknames

if you use this in your cheat you'll have a memory leak


NO-ISSUE: Synchronize From Upstream Repositories

The downstream repository has been updated through the following upstream commit:

Date
Commit
Author
Message

2024-09-09 16:49:53
operator-framework/catalogd@52246e1
Todd Short
Force a rename of the catalogd certificate (#386)

upstream commit list

The vendor/ directory has been updated and the following commits were carried:

Date
Commit
Author
Message

2024-08-02 00:03:22
openshift/operator-framework-catalogd@0ee83f0
dtfranz
UPSTREAM: : Add OpenShift specific files

2024-08-02 00:03:22
openshift/operator-framework-catalogd@ee936cf
Alexander Greene
UPSTREAM: : Drop commitchecker

2024-08-02 00:03:23
openshift/operator-framework-catalogd@5a0ee44
AOS Automation Release Team
UPSTREAM: : Updating ose-olm-catalogd-container image to be consistent with ART Reconciling with https://github.com/openshift/ocp-build-data/tree/e5df10e41b14c724468c8f78e2690f219279bfc4/images/ose-olm-catalogd.yml

2024-08-02 00:03:23
openshift/operator-framework-catalogd@2baa458
AOS Automation Release Team
UPSTREAM: : Updating ose-olm-catalogd-container image to be consistent with ART Reconciling with https://github.com/openshift/ocp-build-data/tree/4022cd290f00a44d667dda03f2d78d84a488c7ed/images/ose-olm-catalogd.yml

2024-08-02 00:03:24
openshift/operator-framework-catalogd@48c2bce
Andy Goldstein
UPSTREAM: : Remove ncdc from OWNERS

2024-08-02 00:03:24
openshift/operator-framework-catalogd@878bd32
Mikalai Radchuk
UPSTREAM: : update owners

2024-08-02 00:03:25
openshift/operator-framework-catalogd@5b4ad5d
AOS Automation Release Team
UPSTREAM: : Updating ose-olm-catalogd-container image to be consistent with ART for 4.16 Reconciling with https://github.com/openshift/ocp-build-data/tree/cd35345d4d061d63bddd2911a9c77149106dee55/images/ose-olm-catalogd.yml

2024-08-02 00:03:25
openshift/operator-framework-catalogd@7bbc547
Ilias Rinis
UPSTREAM: : manifests: set required-scc for openshift workloads

2024-08-02 00:03:26
openshift/operator-framework-catalogd@7c36139
Todd Short
UPSTREAM: : Update CI base to 1.22/4.17

2024-08-02 00:03:27
openshift/operator-framework-catalogd@63a2764
Todd Short
UPSTREAM: : Update manifest generation for catalogd

2024-08-02 00:03:27
openshift/operator-framework-catalogd@a1cdf5e
everettraven
UPSTREAM: : add everettraven to approvers+reviewers

2024-08-02 00:03:29
openshift/operator-framework-catalogd@b3e3db2
Tayler Geiger
UPSTREAM: : add openshift kustomize overlay

2024-09-10 16:33:03
openshift/operator-framework-catalogd@af3b730
AOS Automation Release Team
UPSTREAM: : Updating ose-olm-catalogd-container image to be consistent with ART for 4.18 Reconciling with https://github.com/openshift/ocp-build-data/tree/827ab4ccce9cbbcf82c9dbaf6398b61d6cff8d7a/images/ose-olm-catalogd.yml

This pull request is expected to merge without any human intervention. If tests are failing here, changes must land upstream to fix any issues so that future downstreaming efforts succeed.
/cc @openshift/openshift-team-operator-runtime
/cc @openshift/openshift-team-operator-ecosystem

/label tide/merge-method-merge

/retest

/approve
/lgtm

@kuiwang02 that's the goal, to get these two things in as quickly as possible. We've removed OLMv1 from the payload via https://github.com/openshift/cluster-olm-operator/pull/66 to minimize collateral damage. operator-controller depends on this, so we need to get this in before that.

/override ci/prow/openshift-e2e-aws-techpreview

@kuiwang02 that's the goal, to get these two things in as quickly as possible. We've removed OLMv1 from the payload via openshift/cluster-olm-operator#66 to minimize collateral damage. operator-controller depends on this, so we need to get this in before that.

It is good. Thank you @tmshort


Debugging errors on docker server

Hi,
I'm trying to use docker on windows and gave it a shot to docker-machine.
$ docker-machine.exe env default --shell cmd
set DOCKER_TLS_VERIFY=1
set DOCKER_HOST=tcp://<IP_ADDRESS>:2376
set DOCKER_CERT_PATH=C:\Users\ribeirob.AUTH\.docker\machine\machines\default
set DOCKER_MACHINE_NAME=default
# Run this command to configure your shell:
# copy and paste the above values into your command prompt

After setting this on my cmd, I tried to docker ps
C:\Users\ribeirob.AUTH>docker ps
An error occurred trying to connect: Get https://<IP_ADDRESS>:2376/v1.20/containers/json: Service Unavailable

Can you guys give me a hint on how to debug what's going on with my docker server?
I tried to ssh into the server, however it asks for a password which I don't have.

Is it virtualbox driver?

@nathanleclaire yes

Does docker-machine.exe ssh default docker version work correctly?

@nathanleclaire worked
$ docker-machine.exe ssh default docker version
Client:
 Version:      1.8.1
 API version:  1.20
 Go version:   go1.4.2
 Git commit:   d12ea79
 Built:        Thu Aug 13 02:49:29 UTC 2015
 OS/Arch:      linux/amd64

Server:
 Version:      1.8.1
 API version:  1.20
 Go version:   go1.4.2
 Git commit:   d12ea79
 Built:        Thu Aug 13 02:49:29 UTC 2015
 OS/Arch:      linux/amd64

as other commands as well. Didn't known about docker-machine ssh.
So the question is, why it doesn't work with just docker?

@brucardoso2 can you try again with Virtualbox 5 and docker-machine 0.5.1?

@brucardoso2 It indicates that the route assigned by VirtualBox DHCP (the IP for the VM) is not reachable by the host.  There are a number of issues that might cause this.  As @dgageot mentioned, please try with Docker Machine 0.5.1 if you haven't already and maybe post the output of a docker-machine --debug create -d virtualbox foo as well if you're willing.

Hi, @brucardoso2 did you get a chance to test a more recent version?

Closing for bookkeeping. @brucardoso2 if you still have issues, let us know and we will reopen.


Error testing out the sample.py

Hi,
Thanks for sharing this amazing work. However I can't run the sample code to try it out.
I exported all the required exports but I get this error when I try the sample.py code: openai.error.InvalidRequestError: The API deployment for this resource does not exist. If you created the deployment within the last 5 minutes, please wait a moment and try again.
Does it mean this deployment_name: gpt-35-turbo-version-0301 is not available anymore? If so what is the available one?
Thanks!

Faced the same problem. You need to deploy a model and write its name as deployment_name. See here and click Deployments. From there you can deploy a model

Thanks @omer-erkek , that worked!

Hi @omer-erkek ,
Were you able to test the code successfully? Because when I call output = chain.conversation("https://www.oracle-dba-online.com/sql/weekly_sales_table.png"), it apparently gets stuck with this message "Entering new AgentExecutor chain..." and killed after a while.
I also tried it with a text message as prompt to test the APIs:
output = chain.conversation("Describe this image")
the output is:
Entering new AgentExecutor chain...
1. There is an image in the input
2. The image is new in the conversation
<|im_sep|>AI
I am sorry, I need an image to describe. Please provide an image.
Finished chain.
However when I pass the image to chain.conversation, gets stuck with "> Entering new AgentExecutor chain...". Is any specific message format required, I mean the way the image path is passed to chain.conversation or s.th?
Thanks!


Use arrow functions for all callbacks

This is just a matter of consistency, we are not gaining anything.
So, should we use something like this:
it('should', done => {...});

instead of
it('should', function(done){...});

everywhere?
I didn't check if there's a difference in performance between normal and arrow functions in node v4, maybe we should check that too?
cc. @broucz

As in #550 @juliangruber  last comment we can refactor using arrow fn.
I didn't find so far any optimization proof of arrow function, but for test usage I guess it's ok.
@stojanovic do you have time atm for this refactor ? We could organise it in order to avoid unnecessary PR ?

Yes, I can do it now.
Just tests or everything?

I guess just ./test/*
I'm refactoring ./test/application/*, but lint rules may need update also no ?

No, they works. Part of it is already in #549.

I can take response and request, but not sure what's the best way for PR? If I do PR to master it will add it to #549 and I don't think that's a good idea. Maybe a separate branch. But again it would be good to have all tests changed at the same time. Since you started let me know what's the best way for me to help.

+1

@stojanovic sure you're right, PR once it's better.
I work on an other branch: broucz/koa/refactor-test-with-arrow.
You may work on it, I'm not  git master :[

But it's quite fast to do, so as you want

@broucz no-one should work straight in master, always try to make pull requests for everything, except maybe if you're tj :P

As I'm not tj, next PR will be from the branch don't worry :P

@juliangruber Ho, you mean PR on a dedicated koa branch right ?

@broucz yeah, just create a branch in your fork and submit a pull request against koa master

@juliangruber ok thanks, I'll push broucz/koa:refactor-test-with-arrow to koa:master so

:+1:

This is done in #553, but PR needs to resolve some conflicts atm.

added prefer-arrow-callback should be good


Introduce features, a way to include files conditionally

It would be really cool if cargo-generate would have something like cargo's features, where a user could select to include certain configuration/setup files of a template if he wants to.
An example: My template contains GitHub Actions workflow files for creating releases on tag pushes on master as well as creating documentation on the gh-pages branch when a push to master happens. The template would, by default, include everything. But if a user doesn't want the docs workflow, he could run something similar to this:
cargo-generate --git <url> --no-docs-workflow
cargo generate --git <url> --no-default-features --features docs-workflow

The first is a somewhat nicer syntax for this use-case I think. The second one would be the same as the one from cargo.
I imagine something like this inside the configuration file:
[[features]]
name = "docs-workflow"
include = [".github/workflows/docs.yml"]

[[features]]
name = "bors"
include = ["bors.toml"]

This comes really handy in situations where templates offer a lot of pre-defined configuration files with sane and good default values for various services (GitHub Actions, bors etc). That way, a user can just pick what he wants and be done.
Feedback is appreciated!
Edit: Additionally, this could be expanded upon composing features into "super-features". For example:
[[features]]
name = "workflows"
uses = ["docs-workflow", "publish-workflow", "pr-workflow"]

This would introduce more code to maintain, as something like cyclic dependency checks have to be performed on the features before running them.

You're 100% right - a feature like that can be appreciate, especially for big templates!
I really like the idea behind the configuration file - this can introduce a big new feature like "project customisation", as you only take the "addons" of the project you want...

For reference, I finally had some time to finish up old projects of mine and tinkered around with this idea for https://github.com/SirWindfield/cargo-create. The name is a little bit misleading, as the tool is more of a general purpose project template generator than one specific for cargo. It does, however, register two binaries to make it more ergonomic inside the cargo workflow.
It doesn't contain much right now. It has some default template variables that get filled in (system, datetime, author and project name). But it does support the features feature I mentioned here.
The crate isn't meant as competition or anything similar. It was more meant to be a workspace that I can use to try out some crates that I wanted to use in other projects (tera, inventory, tracing).
However, it does work without major problems (that I found) and I use it for project generation.
This issue can easily be expanded with stuff that builds on top of this. For example patches that could be run (template engines are quite powerful these days though, so this might not be worth it). Conditional features that are enabled as soon as another feature is enabled as well, kind of creating chains.
If you want to give it a go:
cargo install cargo-create --locked
cargo create -g SirWindfield/template-test -n projectName -f ci-workflow msrv

This is also an interesting features for project templates in embedded Rust:  A single project template might support a number of different microcontrollers or variants of MCUs which currently has to be configured by hand after generating the project (see cortex-m-quickstart's README for an example).  I think it would be nice if one could, either interactively or via command-line flags, select the various configuration options during project generation.
The OP in this issue proposes a purely command-line flag based approach but as cargo-generate is already interactively querying information from the user, I could also see it asking questions for the feature/config selection.

@Rahix
#17 Offers cusom variables now - AFAIK I believe it only supports strings for now, but given it is expanded to support e.g. booleans, wouldn't that solve this issue??
I could see #17 expanded with a --default-vars <file-with-simple-vairable-assignments in order to even support templating the templates 😆

#17 (Custom Variables), fully supports several types, including a bool that can be used for this exact purpose.
It even supports the external file with variable values.

Variables can be supplied via cli arguments now.
But we still need a way to selectively include files don't we (or maybe as a filter upon .genignore)?

I actually like the idea of doing this in the cargo-generate.toml file:
[template]
cargo_generate_version = ">=0.9.0"
# default include/exclude goes here

[placeholders]
# default placeholders go here

[feature.default]
# "default" feature include/exclude goes here, will be added to the default include/exclude above

[feature.default.placeholders]
# additional placeholders for "default" feature goes here, will be added to the default placeholders above

[feature.foo]
uses = [ "default" ]
# "foo" feature include/exclude goes here, will be added to those of feature "defaults"

[feature.foo.placeholders]
# additional placeholders for "foo" feature goes here, will be added to those of the "default" feature

then we could do stuff like
cargo generate favorite --feature foo

and maybe even
cargo generate favorite --list-features

to list the possible features.

I think adding features is overkill since we already have custom variables.
Example use case
We want to include conditionally main.rs or lib.rs depending if the project is a binary or a library.
When we run cargo generate with the  --lib flag we already set the variable crate_type.
Now we have all the necessary info to include:

main.rs if crate_type == bin
lib.rs if crate_type == lib

If we implement "conditional file includes" with features instead, in this case I would need to add an extra feature to include main.rs or lib.rs. So for example the command would be something like cargo generate ... --lib --feature my-library-feature
What do you think?

@MarcoIeni, @sassman
I liked the above solution so much, I made PR #431 .
it basically allows everything described by @MarcoIeni above, while also allowing us to conditionally ignore files and have conditional placeholders.
In order to facilitate this, I made use of the liquid engine and a little toml.
Example:
[template]
cargo_generate_version = ">=0.9.0"
# include/exclude/ignore also allowed here

[placeholders]
# common placeholders goes here

[conditional.'{% if crate_type == "bin" %}true{% endif %}']
ignore = [ "lib.rs" ]
# include/exclude also allowed here

[conditional.'{{var|truthy}}.placeholders]
# placeholders for when {{var}} is considered false goes here

The inclusion of ignore in cargo-generate.toml makes .genignore obsolete.
From what I can tell, this works really well, and allows for a lot of flexibility in regards to what files are ignored/included/excluded and what variables will be queried.

Great, thanks!
conditional files
So files are not ignored if the file is empty, but if they are listed in the ignore list, like in:
[conditional.'{% if crate_type == "bin" %}true{% endif %}']
ignore = [ "lib.rs" ]

right?
Second question: Can you list also directories in ignore = or just files? If directories are not included we could open a separate issue.
Third question:
Do we want to use liquid syntax? Maybe something like this looks better?
Or maybe using liquid has some advantages (maybe it does some work for us)?
[[conditional_ignore]]
condition = { key = "crate_type", value = "bin" }
ignore = [ "lib.rs" ]

[[conditional_ignore]]
condition = { key = "crate_type", value = "lib" }
ignore = [ "main.rs" ]

[[conditional_ignore]]
condition = { key = "my_bool_var", value = true }
ignore = [ "subdir/foo.rs" ]

conditional placeholders
[conditional.'{{var|truthy}}.placeholders]
# placeholders for when {{var}} is considered false goes here

As I commented in the PR, the problem I see is that this doesn't support string comparison in the condition.
But I think it's better if we discuss "conditional placeholders" in a separate issue in order to avoid confusion.

Having a file/directory in the ignore section works exactly the same as putting it in the .genignore file. Haven't tried with a dir, but it's the same code doing the ignoring! (need to find out)

in this case I prefer the liquid syntax. Though it's verbose, it's easy to expand upon, and it doesn't introduce yet a new syntax

String comparisons are indeed possible. Only requirement if that the expression should render into something in order for it to be considered true. In case the 2 filters are used it just becomes possible to render something meaning false (namely 0, false or nothing)

Thanks for the clarifications.
I am fine with using the liquid syntax :)

What do you think of surrounding the parts of toml we want to add conditionally with the liquid condition? Something like this:
{% if crate_type == "bin" %}
ignore = [ "lib.rs" ]
# include/exclude also allowed here
{% endif %}

{% if var == "true" %}
[placeholders.my_var]
# my_var data, which is included when {{var}} is considered true
{% endif %}

That leaves a problem, as in order to render the toml file we would need to read and parse it first, which we can't as it's not legal toml until after the render!
The file still contains settings that are, or may become, needed before we can resolve the conditions - an example is placeholders for the variables that the conditions use. So, we would need to read the toml file in order to resolve it.
TBH, I think the only way to do that would require us to write our own toml parser/alternate syntax. Doing so would also make sure we can not use any of the nice toml syntax highligters etc. that exist for all larger editors - so no, I do not recommend this route atm.

@MarcoIeni
I just added a few extra filters to the mix. They make it a little simpler to make conditions on crate_type.
[conditional.'{{crate_type|is_bin}}']
# section used when expanding with option --bin

[conditional.'{{crate_type|is_lib}}']
# section used when expanding with option --lib

[conditional.'{{crate_type|is_macro|falsy}}']
# filters can be mixed... this section is when crate_type != "proc-macro"

at least to me, when having these filters, this is just as readable as the stuff we have to write in Cargo.toml to do conditional dependencies.

Nice! What about is_macro? macro It's not ducumented in the readme.

Yeah, I might have forgotten that one - there's really no way of setting cratetype` to macro, and it might have been around this time I started to doubt my own experiment, wishing for a more natural fit for the domain of evaluating expressions.


nil pointer evaluating interface when upper level doesn't exist prevents usage of default function

Hello,
I'll take an example template but the issue is more global than that I think.
I define a simple Service template:
apiVersion: v1
kind: Service # https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.18/#service-v1-core
metadata:
  name: MyService
spec:
  type: {{ .Values.service.type | default "ClusterIP" }}
  ports:
    - port: 8080
      targetPort: 8080
      protocol: TCP
      name: alt-http

In my values.yaml, when I define
service:
  type: somevalue

Everything goes well. It does also when I define the following:
service: {}

But if I don't define service at all, I get an error:
╰ helm template . --debug
install.go:159: [debug] Original chart version: ""
install.go:176: [debug] CHART PATH: /home/mtodorovic/git/helm-issue/helm-chart

Error: template: helm-chart/templates/service.yaml:6:18: executing "helm-chart/templates/service.yaml" at <.Values.service.type>: nil pointer evaluating interface {}.type
helm.go:84: [debug] template: helm-chart/templates/service.yaml:6:18: executing "helm-chart/templates/service.yaml" at <.Values.service.type>: nil pointer evaluating interface {}.type

As soon as the parent value doesn't exist, templating fails and totally ignores the default function. I expected that if anything goes wrong in .Values.service.type evaluation, we'll go to default "ClusterIP" but it doesn't.
We workaround the issue with the following but it wouldn't work as easily for big dicts (like dict.bigkey.subkey.key)
{{- $service := .Values.service | default dict -}} # workaround for https://github.com/helm/helm/issues/8026
apiVersion: v1
kind: Service # https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.18/#service-v1-core
metadata:
  name: MyService
spec:
  type: {{ $service.type | default "ClusterIP" }}
  ports:
    - port: 8080
      targetPort: 8080
      protocol: TCP
      name: alt-http

I didn't deep dive into the code yet, is it something that looks like fixable?
Thanks and keep the nice work with Helm :tada:
Output of helm version:
version.BuildInfo{Version:"v3.2.0", GitCommit:"e11b7ce3b12db2941e90399e874513fbd24bcb71", GitTreeState:"clean", GoVersion:"go1.13.10"}

I experience this error, even when the value is defined, when trying to expand it in a named template.

Any updates on this issue. Getting this issue on pulsar helm charts.

This occurs because the .Values tree is populated based on the input provided through values.yaml, --values, --set, etc. It is not populated based on how the templates consume the input. If a value is not set, .Values has no knowledge of this sub-tree, and therefore it is evaluated as a nil object when rendered through text/template.
There are two ways to mitigate this particular issue:

use a flat tree, where each leaf node is at the first level (i.e. .Values.serviceType rather than .Values.service.type).
populate the tree with empty values, so that the .Values object can be properly populated (as @michael-todorovic mentions in their workaround)

I was using open source helm chart which was gigantic. I cant fix this right now to have flat tree values.
This issue was not occuring in helm 3.0.2 so I downgraded.

Prior to 3.3 this seemed to be addressable by taking advantage of order of operations, e.g.
if (and .Values.service .Values.service.type)

@kraney I'm not sure that would address the issue, if ever. That syntax has always been invalid text/template syntax, and likely never rendered correctly.

Adding additional context here...
This particular error message is returned from text/template when the templates are being rendered. While we may not be able to address the root cause of the issue (as this is - according to the Go team - working as intended), improvements to make the error message more useful to the end-user would be helpful.

The inability to go beyond 1 level deep in the usage of dafault is a big limitation to what you can do and kind of limits the intention of the "default" function.
From the documentation of default

This function allows you to specify a default value inside of the template, in case the value is omitted

There is no mention of depth here.
Fixing this would be a great benefit to chart devs and users.

hi, I have the same issue
# helm version
Client: &version.Version{SemVer:"v2.16.7"

I thought 'if ' operator checks whether a value is defined ,but now I am not sure. it seems to me that 'if value ' checks if the value is empty. I don't know

Wouldn't this be beautifully solved if the parse could handle optional chaining similar to Javascript in latest standard ECMAScript 2020? See https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/Optional_chaining
It would basically look like this:
spec:
  type: {{ .Values.service?.type | default "ClusterIP" }}

This could be used in other cases, such as:
spec:
  {{- if .Values.global?.internalIPFamily }}
  ipFamily: {{ .Values.global.internalIPFamily }}
  {{- end }}

Workaround which I'm using (using the example from the previous comment):
spec:
  {{- $global := .Values.global | default dict }}
  {{- if $global.internalIPFamily }}
  ipFamily: {{ $global.internalIPFamily }}
  {{- end }}

Workaround which I'm using (using the example from the previous comment):
spec:
  {{- $global := .Values.global | default dict }}
  {{- if $global.internalIPFamily }}
  ipFamily: {{ $global.internalIPFamily }}
  {{- end }}

Wouldn't this be beautifully solved if the parse could handle optional chaining similar to Javascript in latest standard ECMAScript 2020? See https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/Optional_chaining
It would basically look like this:
spec:
  type: {{ .Values.service?.type | default "ClusterIP" }}

This could be used in other cases, such as:
spec:
  {{- if .Values.global?.internalIPFamily }}
  ipFamily: {{ .Values.global.internalIPFamily }}
  {{- end }}

I wrote an issue for this: https://github.com/helm/helm/issues/9209

Wouldn't this be beautifully solved if the parse could handle optional chaining similar to Javascript in latest standard ECMAScript 2020? See https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/Optional_chaining
It would basically look like this:
spec:
  type: {{ .Values.service?.type | default "ClusterIP" }}

This could be used in other cases, such as:
spec:
  {{- if .Values.global?.internalIPFamily }}
  ipFamily: {{ .Values.global.internalIPFamily }}
  {{- end }}

I wrote an issue for this: https://github.com/helm/helm/issues/9209

this issue has been delegated to https://github.com/golang/go/issues/43608, it seems.

I created a very hacky way to evaluate dictionaries without having to worry about NPE being thrown. Here is the template:
{{- define "common.util.safewalk" -}}
{{- $top := first . -}}
{{- $string := (index . 1) -}}
{{- $matches := (splitList "." $string ) -}}
{{- $stop := false -}}
{{- range $index, $elem := $matches -}}
{{- if not $stop -}}
{{- if gt (len $elem) 0 }}
{{- $output := slice $matches 0 (add1 $index) | join "." -}}
{{- $test := (cat "{{ or (empty " $output ") (not (kindIs \"map\"" $output ")) }}") -}}
{{- $testRes := tpl $test $top }}
{{- if and (eq $testRes "true") (ne (add1 $index) (len $matches)) }}
{{- $stop = true -}}
{{ end -}}
{{ end -}}
{{ end -}}
{{ end -}}
{{- if $stop }}
{{- else }}
#{{ tpl (cat "{{ toYaml " $string "}}") $top }}
{{- end }}
{{- end -}}

Let's say you have a values yaml:
foo:
  bar: some text

Then you can use this to get the value of foo.bar
{{ include "common.util.safewalk" (list . ".Values.foo.bar") -}}
if you were to do
{{ include "common.util.safewalk" (list . ".Values.foo.baz") -}}"

it would return empty rather than throwing an error.

Looks like sprig added the new dig function, so in  helm v3.5.0, you can now use dig.

Good catch, @saiskee.
From the documentation:

Dig can be very useful in cases where you’d like to avoid guard clauses, especially since Go’s template package’s and doesn’t shortcut. For instance and a.maybeNil a.maybeNil.iNeedThis will always evaluate a.maybeNil.iNeedThis, and panic if a lacks a maybeNil field.)

Looks like {{ dig "service" "type" "ClusterIP" .Values }} should solve OP's original issue.

I just tested and using dig works fine :+1: I did
enable: {{ dig "nodeAutoScaling" "enable" "false" $daDict }}

Thanks for the tip @saiskee

Got the same issue, but dig is not working for me due to:
at <dig "one" "two" "three" "name" "default_name" .Values>: error calling dig: interface conversion: interface {} is chartutil.Values, not map[string]interface {}

@bacongobbler @michael-todorovic aren't there some docs that should be updated to show/recommend dig?

We'd welcome contributions.

The link mentioned above has info on syntax, and there's a couple samples here, but its seems for some cases this is still not a solution, I believe I'm bumping into https://github.com/helm/helm/issues/9266.
I suppose for such cases I'll have to use conditionals

Safe nesting can be achieved through the use of parenthesis:
spec:
  type: {{ ( .Values.service | default dict ).type | default "ClusterIP" }}

Safe nesting can be achieved through the use of parenthesis:
spec:
  type: {{ ( .Values.service | default dict ).type | default "ClusterIP" }}

That is quickly becoming ugly with multiple levels of nesting.

this has worked for me:
{{ (((.Values.abc).def).ghi).jkl }}

{{ (((.Values.abc).def).ghi).jkl }}

Does that works in all Helm 3.X versions? And is it documented somewhere?

service

this has worked for me:
{{ (((.Values.abc).def).ghi).jkl }}

虽然有很多括号，但这是目前看来最好的办法了

Thanks sxyandapp, that works for me too.

I've hit this same issue while creating a helper to grab registry & repo, what is bizarre from other examples I've seen in trying to debug this lots of other people should be having the same issue.
helm.go:88: [debug] template: Project/templates/_helpers.tpl:94:28: executing "registry.repo.tag" at <.Values.image.registry>: nil pointer evaluating interface {}.image

Helm Version

The helper.
{{/*
This allows us to not have image: .Values.xxxx.ssss/.Values.xxx.xxx:.Values.ssss
in every single template.
*/}}
{{- define "registry.repo.tag" -}}
{{- $registryname := .Values.image.registry -}}
{{- $repoimage := .Values.image.repository -}}
{{- $tag := .Chart.AppVersion | toString -}}
{{- if .Values.image }}
{{- printf "%s/%s:%s" $registryname $repoimage $tag -}}
{{- end -}}
{{- end -}}

The values.
  registry: "index.docker.io"
  repository: "myrepo/myimage"

The template referencing the helper.
image: {{ template "registry.repo.tag" . }}

I get the error if using a flat tree value or using a sub-tree as per my example. I've tried various permutations with and without the if statement, which I think is redundant in this case anyway.
Here's an example that I referenced to try and fix this, so I know my code is correct.
https://github.com/helm/charts/tree/master/stable/mariadb
In a word, help! :)

My issue was I had a range in one of the templates that was causing the issue so I need to change
image: {{ template "registry.repo.tag" . }}
to
image: {{ template "registry.repo.tag" $root }}

Since I am referring to a key that doesn't exist in values.yaml, I needed to check whether that key exists or not first using hasKey like this:
{{ if hasKey .Values "chartx"  -}}
{{ if .Values.chartx.enabled  -}}
YOUR CODE HERE
{{- end -}}
{{- end -}}

My issue was I had a range in one of the templates that was causing the issue so I need to change
image: {{ template "registry.repo.tag" . }}
to
image: {{ template "registry.repo.tag" $root }}

Thank you for your insight. I also had a range. Using the $ instead of . in order to use the global scope solved the problem:
metadata:
name: {{ include "common.fullname" $ }}

this has worked for me:
{{ (((.Values.abc).def).ghi).jkl }}

This worked for me as well, but can someone explain what is happening here?

@marko-curlin https://stackoverflow.com/a/68807258/1853417 explains it:

Safe nesting can be achieved through the use of parenthesis:
spec:
  type: {{ ( .Values.service | default dict ).type | default "ClusterIP" }}

That is quickly becoming ugly with multiple levels of nesting.

This only works if you have only one type of object. If you have more Services defined on Helm only the last one receives values.

I'm also experiencing this error when I upgraded the loki app dependency version to use loki v2.9.3 in requirements.yaml of lack-stack.
Error: template: loki-stack/templates/tests/loki-test-pod.yaml:24:24: executing "loki-stack/templates/tests/loki-test-pod.yaml" at <.Values.loki.service.port>: nil pointer evaluating interface {}.port

You can see my loki-stack values.yaml below:
test_pod:
  enabled: true
  image: bats/bats:1.8.2
  pullPolicy: IfNotPresent

loki:
  enabled: true
  isDefault: true
  url: http://{{(include "loki.serviceName" .)}}:{{ .Values.loki.service.port }}
  readinessProbe:
    httpGet:
      path: /ready
      port: http-metrics
    initialDelaySeconds: 45
  livenessProbe:
    httpGet:
      path: /ready
      port: http-metrics
    initialDelaySeconds: 45
  datasource:
    jsonData: "{}"
    uid: ""

I'm not being able to understand how come loki-stack was functioning all this time in production ? why didn't the lint test failed before but it is failing for my PR when I upragded the dependeny version in requirements.yaml of loki-stack

this has worked for me:
{{ (((.Values.abc).def).ghi).jkl }}

It worked perfectly but can I ask why ?

@BigCat3997 https://github.com/helm/helm/issues/8026#issuecomment-1437016015
https://pkg.go.dev/text/template#hdr-Actions


[JS] Port fix for aria-current

Related Issue
Fixes #4027 in release/1.2 (manual port of 5b09745d3e67cda9145c0c896e1ebab08cb1fae9 from PR #4045)
How Verified

local build/reverification

Microsoft Reviewers: Open in CodeFlow

/azp run


Blinking cursor (almost) not viewable in edit boxes since 1.14

Gitea version (or commit ref): 1.14

Description
I'm using Chrome or Edge with forced dark mode (chrome://flags/#enable-force-dark) with the arc-green theme.
Blinking cursor is almost invisible in 1.14 it's a very faint cursor (1pixel?) it's fine in 1.13.
This only happens in the edit boxes with the editor, the cursor in the title of the issues etc is ok.
Devtools show it's in the CodeMirror-scroll element.
Screenshots
1.14
If you squint you can see it ;-)

1.13

Must be something in your setup but try this CSS:
.CodeMirror-cursor {
 border-color: var(--color-text) !important;
}

How can I add/try this?
I tried to add it in Styles in chrome dev-tools doesn't work, after I add it, press enter and focus again on the page it disappears in the dev-tools. (modifying other stuff works though).
Also the setup above is from running a fresh install of the gitea/gitea:1.13 and gitea/gitea:1.14 from dockerhub just setting the theme to arc-green. Both running in the same browser just in two different tabs.
This happens only when the chrome://flags/#enable-force-dark is enabled, otherwise it works fine.

In Chrome, you can probably go to the Sources, select any css file and paste the code there.
That force dark mode setting can not detect Codemirror's fake cursors (which actually are borders), so that's why it's misbehaving.

ok, thanks, it worked by pasting it into the theme-arc-green.css in the sources tab, it now shows the same behaviour as in 1.13 :)
Is this something that can be fixed in 1.14 ? or if not do you know which commits changed it so that I can revert it for myself :)

Will file a PR later.

https://github.com/go-gitea/gitea/pull/15651


Make MATLAB extension installation from source more streamlined

Perhaps just add the following to the documentation:
$  cp /path/to/cmake-3.12/Modules/FindMatlab.cmake ../cmake/MATLABConfig.cmake
$  cp /path/to/cmake-3.12/Modules/FindPackageHandleStandardArgs.cmake ../cmake/
$  cp /path/to/share/cmake-3.12/Modules/FindPackageMessage.cmake ../cmake/
$  export MATLAB_DIR=/path/to/gitrepos/HELICS-src/cmake/

I don't understand why this is necessary,  it certainly hasn't been when I have built and installed this?  @nightlark  have you had to do any of this?    We should not be copying cmake modules that are in the core cmake directories.

I haven't encountered problems like this, but I haven't done much with the Matlab interface.

I think I found the problem -- it should be find_package(Matlab). Probably doesn't care about the case on Windows.

We have to use the files included in this repo and not use swig to generate the files.

@kdheepak Did that take care of the problem with needing to copy files?
Also, is there a reason why we are distributing a copy of FindMatlab.cmake in config/cmake?

I can try in some time. I remember that we had to add FindMatlab.cmake for the same reason: getting it to work on Linux.

@kdheepak can you try it with FindMatlab.cmake deleted? It seems to work fine with the default one included with cmake 3.5 on my system.

I tried that as well and it seemed to work. I'm not able to install it at the moment though (unrelated issues). I don't have any errors in the CMake process.

Okay, that's good. We should probably remove the copy of FindMatlab.cmake.


Build test binaries in local platform only if different from target platform

/assign @upodroid @tzneal

unrelated failure in the one failing job


TerraformCDK integration

Problem:
We currently use Python and jinja templates to help us overcome some of the limitations of HCL. This requires the passing of variables between python, jinja and then hcl which reduces reusability. It also requires us needing to go back and forth between languages at times while losing support from our IDE when templating and needing to manually test changes. This leads into the need to duplicate variables, use mixed syntax loops(jinja and hcl), and one-time conversions when using nested loops/mappings due to the for_each and count in HCL and more.
https://github.com/EnterpriseDB/edb-terraform/blob/main/edbterraform/data/templates/aws/main.tf.j2#L43-L64
https://github.com/EnterpriseDB/edb-terraform/blob/main/edbterraform/data/templates/aws/main.tf.j2#L113-L120
https://github.com/EnterpriseDB/edb-terraform/blob/main/edbterraform/data/templates/aws/main.tf.j2#L65-L76
Possible Solution:
On August 2022, terraform released its CDK under generally available starting with v0.12 and Typescript/Python support.
This could remove our need for jinja templating and allow for the use of python directly with minimal HCL modules.

It provides cdktf convert, which can convert terraform modules for use within python to help create Constructs which are called inside of a Stack(provider context).
Modules can also be left as is while leveraging the conversion tool to provide module testing with pytest and allowing us to import the modules in python.
Once files are generated with the cdk tool, or library, users can use regular terraform commands and reference it within other HCL files.

Comment:
Pulumi is much more powerful but it has not been widely adopted yet and it would require reworking some workflows. I am not sure of using 3rd party tools such as terragrunt now that Terraform is developing its own tooling, however, this CDK may have breaking changes and typescript might be better supported as it is based on aws's cdk.
Terraform CDK Links:
Architecture
Modules
Unit-Tests
Python API

We are not going to work on this issue because we are no longer going to use Terraform CDK and we will be looking for alternate solutions.


{unknown} when using crossbeam::channel::unbounded

I'm noticing an issue with crossbeam::channel::unbounded that works in RLS 1.0 and shows "{unknown}" in rust-analyzer. I've boiled it down to the most simple use case:
use crossbeam::channel::unbounded;

fn main() {
    let (s, r) = unbounded::<i32>();
    s.send(10).unwrap();
    let value = r.recv().unwrap();
    println!("{}", value);
}

In this case, s (Sender), r (Receiver), and unbounded() all show {unknown} when hovering in VSCode.
Hope this helps!

I realized I was on master from july 3rd, so I updated and rebuilt. This is still true as of commit 61135d4d4df0a16cbd39831e23b7b0deeeea44a9.

This case should work:

could it be the case that something about project configuration is wrong?
Just "go to definition" works for unbounded?

crossbeam::channel re-export is defined behind cfg_if macro.

cfg_if! {
    if #[cfg(feature = "std")] {
        ...

        mod _channel {
            pub extern crate crossbeam_channel;
            pub use self::crossbeam_channel::*;
        }
        #[doc(inline)]
        pub use _channel::crossbeam_channel as channel;

        ...
    }
}

That's what it was - I needed to be using the crossbeam-channel crate as well instead of crossbeam::channel. Thanks!

Probably a duplication of #1149


How can i get last transaction?

Could i get (for example) lates 10 transactions from main page blockchain.info?

The BlockExplorer class has a method GetUnconfirmedTransactionsAsync. This will fetch a list of all the latest transactions for you.

Thanks for answer,problem was solved !

Great to hear!