HttpMessageHandler cannot be configured when initialization Serilog.Sinks.OpenTelemetry via configuration

Dear community.
I'm initialization the Serilog.Sinks.OpenTelemetry only via the configuration file and getting an error because the HTTP connection cannot be estabshiled. The reason why is quite simple because my application uses the default proxy. I have taken a look into the code and saw that it is not possible to inject the HttpMessageHandler via the options BatchedOpenTelemetrySinkOptions to disable the proxy.
Here is my serilog configuration in appsetttings.json:
  "Serilog": {
    "Using": [ "Serilog.Sinks.OpenTelemetry" ],
    "WriteTo:OpenTelemetry": {
      "Name": "OpenTelemetry",
      "Args": {
        "endpoint": "http://localhost:4318/v1/logs",
        "protocol": "HttpProtobuf"
    }
  }
}

And my host builder setup:
hostBuilder.ConfigureServices((hostBuilderContext, serviceCollection) =>
{
    serviceCollection.Configure<OpenTelemetrySinkOptions>(options =>
    {
        options.HttpMessageHandler = new HttpClientHandler() { UseProxy = false };
    });
});

hostBuilder.ConfigureLogging((hostBuilderContext, loggingBuilder) =>
{
    var loggerConfiguration = new LoggerConfiguration();

    ConfigurationReaderOptions configurationReaderOptions = new()
    {
        SectionName = $"{ConfigurationLoggerConfigurationExtensions.DefaultSectionName}"
    };
    Log.Logger = loggerConfiguration.ReadFrom.Configuration(
        hostBuilderContext.Configuration, configurationReaderOptions
    ).CreateLogger();

    loggingBuilder.AddSerilog();
});

I'm using the Serilog.Sinks.OpenTelemetry nuget package version 1.2.0 in a dot core 6.0 console application on windows10.
Regards
Hardy

I see also the usage of HttpClient in combination with the usage of HttpMessageHandler problematic:
https://github.com/serilog/serilog-sinks-opentelemetry/blob/8aba13239a2b11bab6265a586776eed961e025a4/src/Serilog.Sinks.OpenTelemetry/Sinks/OpenTelemetry/Exporters/GrpcExporter.cs#L53
Better would be to use the IHttpClientFactory or inject the HttpClient via constructor. (see Guidelines for using HttpClient)
Anyway I think serilog-sinks-opentelemetry has two problems which might be worth to fix:

Always create the HttpClient via the dependency injection framework IServiceProvider to allow the user to setup retry policy or HttpMessageHandler or what every for HTTP communication with the build-in mechanism of dotnet core
Allow the user to specify the configuration options via the build-in configuration system by using the IOptions pattern.

In my opinion we are in the ecosystem of dotnet core and should use the concepts which are existing.

Thanks for all the notes.
This seems like something to consider from the Serilog.Settings.Configuration angle; the configuration system is responsible for resolving parameters for Serilog sinks, so plugging in an IServiceProvider (via ReadFrom.Configuration()) or doing something options-based, over there, would provide this functionality for all Serilog sinks.
Needs a design sketch to get the ball rolling, I think :+1:

I see also the usage of HttpClient in combination with the usage of HttpMessageHandler problematic:
https://github.com/serilog/serilog-sinks-opentelemetry/blob/8aba13239a2b11bab6265a586776eed961e025a4/src/Serilog.Sinks.OpenTelemetry/Sinks/OpenTelemetry/Exporters/GrpcExporter.cs#L53
Better would be to use the IHttpClientFactory or inject the HttpClient via constructor. (see Guidelines for using HttpClient)
Anyway I think serilog-sinks-opentelemetry has two issues which might be worth to fix:

Always create the HttpClient via the dependency injection framework IServiceProvider to allow the user to setup retry policy or HttpMessageHandler or what every for HTTP communication with the build-in mechanism of dotnet core
Allow the user to specify the configuration options via the build-in configuration system by using the IOptions pattern.

In my opinion we are in the ecosystem of dotnet core and should use the concepts which are existing.

Serilog sinks aren't necessarily instantiated through dependency injection, so the IHttpClientFactory route wouldn't really be feasible unless we create a transient service collection during instantiation. We'd want to have the option for direct creation for .NET Framework support.
Even the UseLogger and AddLogger extensions will either reference a concrete Logger created ahead of time or it just uses the global Serilog.Log.Logger. So, while reading from configuration creates dependencies with reflection, the other route of logger configuration manually creates the dependencies.
The HttpClient method used follows the guidance, and is only used if you're manually overriding the HttpMessageHandler. Otherwise, the GrpcChannel manages the connection. Bear in mind that the logger (and GrpcExporter) is a singleton, so disposing of the HttpClient would never happen unless manually done.
In my opinion, the current implementation follows best practice for modern dotnet.
@nblumhardt I think that an easier approach would be to support mixed configuration (file and code) in Serilog.Settings.Configuration instead of the IServiceProvider route.
Something to consider:

Which configuration would take precedence? Should the precedence be configurable?

I think an ideal scenario would be to have something like this:
loggerConfiguration
    .ReadFrom.Configuration(...)
    .ThenFrom.Options<SinkOptions>((opts) => ...)
...

Or just chained ReadFrom extensions if the semantic convenience of ThenFrom is too burdensome, where precedence is just the ordered call order.


[Feature] SEO Friendly links

Description
NgDocSidebar uses NgDocExpander to hide or show sidebar links. When a group collapses, the expander removes all links. This is not SEO-friendly. Robots do not see these links and do not index the related content.

Proposed solution
Can we use opacity: 0 or display: none for links in Sidebase instead of ngIf?
Alternatives considered

Yeah, makes sense! Can check it after a vacation

Should be fixed by this commit


Add si7021

This adds the Silicon Integrated Si7021 Temperature and Humidity driver.
https://www.adafruit.com/product/3251
Using adafruit-si7021 arduino library.
Device file is basically copy-pasta from SCD40 with changed names/methods and an added destructor like the guide suggests.
Matching component https://github.com/adafruit/Wippersnapper_Components/pull/73

@tyeth  Please run doxygen across src/components/i2c/drivers/WipperSnapper_I2C_Driver_SI7021.h (CI Log: https://github.com/adafruit/Adafruit_Wippersnapper_Arduino/actions/runs/3039463375/jobs/4895070376#step:6:8)

@tyeth  You should be able to test this PR with Adafruit IO at this point.
The artifacts for this build, for all of the boards we test against, are on https://github.com/adafruit/Adafruit_Wippersnapper_Arduino/actions/runs/3040113913 under "build-files".

Thanks, had to add one more commit. It was strange, I saw no error in console (using debug mode on in demo sketch), because I was just returning true after a failed init I guess, but it would stall at the ping/application runs and then watchdog would hard reset.
Fixed to pass in the i2c, which wasn't necessary by default in arduino, but is with wippersnapper (maybe when we pick the second i2c bus ;) )
Tested at 30second intervals fine. Survived a reboot etc.

@tyeth Could you bump the version number here https://github.com/adafruit/Adafruit_Wippersnapper_Arduino/blob/main/src/Wippersnapper.h#L70 and here https://github.com/adafruit/Adafruit_Wippersnapper_Arduino/blob/main/library.properties#L2 to beta 49?

Blessed, done, thank you. Wondered where that was set :)

@tyeth  Were you following https://learn.adafruit.com/how-to-add-a-new-component-to-adafruit-io-wippersnapper at all? Does it not contain info about where the version number is set? Any feedback to add?

I was following the guide, I'll admit skimming back and forth on the i2c driver page, but I dont remember version number, and having just rechecked it's not there. I assumed CI would do it, but I also noticed it was asking in the Devices page to update firmware (when testing) so probably add to that section of the guide: https://learn.adafruit.com/how-to-add-a-new-component-to-adafruit-io-wippersnapper/adding-an-i2c-component-driver#testing-your-new-sensor-3111513
I found it relatively easy to follow, just had an issue with clang and doxygen, but to be honest I had issues there because of windows and not using the commandline / taking shortcuts (using doxywizard probably was a bad idea) and it turned up loads of false positives so I had it misconfigured. I should have avoided windows and gone to linux/wsl but was on the slow laptop 🤷 so used vscode and :ahem: blagged it / manually linted

Thanks for the feedback!

but I dont remember version number, and having just rechecked it's not there. I
I'll add this, thanks

but I also noticed it was asking in the Devices page to update firmware (when testing) so probably add to that section of the guide: https://learn.adafruit.com/how-to-add-a-new-component-to-adafruit-io-wippersnapper/adding-an-i2c-component-driver#testing-your-new-sensor-3111513
and this too!


feat(csv): add pact-csv-plugin-linux-aarch64

fixes #42

Hold off on this a mo, tested it out e2e and it failed to build as no protoc compiler, testing out now and will convert back when ready for review

woop woop - built successfully https://github.com/YOU54F/pact-plugins/releases/tag/csv-plugin-0.0.4

bumped pact-plugin.json to 0.0.4, cargo.toml file already references 0.0.4 but there is no release tag


ftplugin/* files get deleted when installing another bundle?

hello,
not sure how this could happen, and I am not able to reproduce it...
but I lost my custom *.vim symlinks in ~.vim/bundle/xmledit/ftplugin/
i had one for html and another for php for sure..
i was working on some html file, in the meantime i installed "othree/html5.vim" by putting it into my .vimrc..
then i realized the tags don't autoclose... i went to the ftplugin dir to see that there's only the default xml.vim there..
i removed the html5.vim and just installed it back, now there is no issue, my custom symlinks are there..
i even did :BundleInstall! and it didn't touch those either... (i thought this would kinda install default state of all plugins)
now i'm puzzled as to what could cause this.
is there a way to try to see how this happened or it's a known bug?
thanks!

Hey!
Reconnecting here
Are you still having this issue?!

feel free to reopen if you think it's a Vundle's bug

Temporarily switched from MacVim to SublimeText ;) Not sure how long will it last or if I'm ever coming back to MacVim.. So no issue for now. Thanks & Cheers


Bring documentation up to date

This is a reminder for me to update the documentations.
One of the things that will need to be paid attention to are the paths in the configuration of the documentation so that references to different classes work again. Additionally, many sections will need to be rewritten.

Duplicate of #103

 Update trello board


GET the vpc name to use it as tgw attachment name

Description of changes:
In order to enhance the TGW management this pr adds a name to the new TGW attachment created, with the following format {}-vpc-attachment".format(origin_vpc_name)
By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

@josete89 Thank you for submitting the PR. We will review this when we add https://github.com/awslabs/serverless-transit-network-orchestrator/issues/31 in a future release

@josete89 Thank you for submitting the PR. We will review this when we add https://github.com/awslabs/serverless-transit-network-orchestrator/issues/31 in a future release

We have fixed this issue in V3.0.0 which released this week.


Add korean translation, update fontawesome cheatsheet address

Add korean translation, update fontawesome cheatsheet address

Thanks!
I noticed the client.ko.yml and server.ko.yml both start with the line en:; could you change that to ko:? Thanks!

oops. I fixed. thanks!

Sweet, thanks!


Gesture Probability Error

Hey, when i run trackgesture.py then 3 screen open up. The problem is Gesture Probability window is always black and not showing any probability

Please confirm if you are pressing key 'g' on the keyboard once those three windows are launched.


Vertus passive mining

Hi sir. New version of vertus release. We can buy card and get passive mining. But maximum time passive is every 4 hours. Can add the feature that auto collect passive rewards every 4 hours? Thanks

Hello bscong
maybe
maybe not
you will see

Hi @bscongluanbui,
The passive mining / village reward collection has been added for Vertus.
Thanks.


puppet-elastic_stack version

Is it possible to bump the puppet-elastic_stack version to 9.0.0. Should i create a pull request?

Affected Puppet, Ruby, OS and module versions/distributions

Puppet:
Ruby:
Distribution:
Module version:

How to reproduce (e.g Puppet code you use)
What are you seeing
What behaviour did you expect instead
Output log
Any additional information you'd like to impart

Yes, create a pull request.


💡 [FEAT] Building website for dooit

Is your feature request related to a problem? Please describe.
Maybe (hadn't checked other issues)
Describe the solution you'd like   🤔
Build an blazingly beautiful website for dooit. It is gonna be mostly containing the home page showing up all the awesome features, installation (not really anything in installation, what's hard in adding, aye?), marketplace that is gonna contain a bunch of plugins.
Describe alternatives you've considered  🧐
No other alternatives
Additional context 📝
Let me know if there is any other thing that you want me to add, would be glad to do so. I would finish up the work within this week, I hope.
Assign me :D

Aight!


feat: Add functest for the windows.11 preference

What this PR does / why we need it:
This adds a functest for the windows.11 preference, which makes use of
the freely available Microsoft Validation OS.
Which issue(s) this PR fixes (optional, in fixes #<issue number>(, fixes #<issue_number>, ...) format, will close the issue(s) when PR gets merged):
Fixes #
Special notes for your reviewer:
Based on #135
Release note:

None

Great job! Thanks a lot!
/lgtm

/retest-required


Textarea label incorrect when setting value via javascript

When creating an empty textarea and setting the value via script the label is not small above the textarea but still rendered in initial state behind the text.

Thanks for your bug report. Could you share a little more information to help us repro this?

Code snippet or runnable sample
Browser / browser version

http://codepen.io/anon/pen/QbrZdJ
Just tried to reproduce it, but it looks like it is working on my Pixel... I'll try on my PC when I'm back in the office.

The codepen is working fine for me too. Weird. I’ll close this issue for now, but feel free to re-open if you manage to reproduce it.

This is the same thing as an issue filed the other day about dirty state
not being applied. Nothing we can really do except document the oddity.
On Jul 11, 2015 8:23 AM, "Surma"<EMAIL_ADDRESS>wrote:

The codepen is working fine for me too. Weird. I’ll close this issue for
now, but feel free to re-open if you manage to reproduce it.
—
Reply to this email directly or view it on GitHub
https://github.com/google/material-design-lite/issues/959#issuecomment-120613215
.


Add ability to use a precomputed navmesh.

Computing the navmesh data structure at runtime is very expensive. This PR allows you to specify a URL to a JSON file containing precomputed navmesh data.
You can generate that data structure using Three.Pathfinding's Builder.buildZone() method and calling JSON.stringify() on it.
Or you can use this gltf-navmesh-generator tool I've built.

Should note that nav-agent will break when there is no geometry underlying the navmesh; it relies on a raycaster. I suspect that can be fixed to avoid the raycast, though.

Ok, yeah I'm seeing a very noticeable hitch while parsing larger navigation meshes. I'd like to try profiling the three-pathfinding build code to see if there's some obvious reason. If that can't improve to O(n) or O(n*log(n)) let's go ahead and merge this...

Sorry, I didn't mean to close this but pushed a bad update to the master branch that closed open PRs. I haven't had the chance to profile navmesh loading yet, have been traveling the last few weeks. Still planning to do that, but I can't re-open this PR with the GitHub commit history in this state. Not sure if you can re-open the PR from your end or not? May need to rebase your branch.

@robertlong The most recent version of three-pathfinding improves createZone performance from O(n²) to roughly O(n) (https://github.com/donmccurdy/three-pathfinding/commit/0ebaa4ff5e53fe249389b4e90ce908d4aeae0c69). On my 24kb test navmesh that improved load time 15x.
I haven't updated aframe-extras to the latest pathfinding module yet, but does that seem sufficient for your project? I'm still OK with considering this PR, but eventually I want to see Recast/Detour compiled to WASM, and use that library's own navmesh representation, so introducing a new intermediate format for the short term would be nice to bypass if we can.


Update README.md

Fixed README link to app auto-deployed on heroku .

@mariobehling I had missed replacing the link to the app with the correct one https://pslab-stage.herokuapp.com/. please merge this PR for the same. thanks

@jithinbp you accidentally created a branch on fossassia repo only.


Question: Policies for customized images on Docker Hub

Are there any policies for publishing customized images based on your standard images on Docker Hub? There are a few like this one built on top of MS "solutions" and obviously lots built on the Server Core / Nano images. My current need would be to publish one stripped down image for building and one which includes a Prometheus log scraper. Both in my opinion are to special to include in your standard images but might be useful for others and could then also be integrated e.g. in Portainer templates (which is not possible for azurecr.io hosted images as Portainer templates don't allow authenticating against registries)

I had the same question and wanted to discuss it on NavTechDays. I think it is nice to be able to extend and push your own overlaying layers and create your containers.
We use currently our internal repo (and I can`t say that it is bad) as the policy is something I do not have very clear.
To make something special and generic (for all people using NAV on Docker) would be a bit more complicated because you would need to build the overlays for each image published by Microsoft and do it each time the changes will be published by MS (using webhooks etc...?)

The policy is clear. At this time, the NAV on Docker images are shipped with the right to use them, not to redistribute them.
But, I will discuss this internally with people here.
On one side, I like the idea, but on the other side, we do not want a bunch of "old" images out there.

I would be fine with rules like "you need to update to the latest base images after XY days" or something like that as I would need to automate that process anyways. But it would be good to allow the publisher to select which versions and variants he wants to support like "only 2017-w1 and 2017-de" but require him to state that clearly on the Docker Hub page

@freddydk As there is some interest for 2019-based images now, did you come to a conclusion about custom images?

Sorry Tobias, but we do not want partner images based on NAV/BC images on the public Docker Hub.
If you publish to a private docker repository to a private audience, we do not have any objections (nor would we ever find out:-))

@freddydk Understood and thanks for providing a clear answer. Obviously not the one I was hoping for, but now I know how to go forward. On small followup: Would creating a privat repo and mentioning on my blog that people can ask for the credentials qualify as "private audience"?


stripe_mrr_amortized model failing due to missing mrr column

Hey there!
When I try running the project, I'm getting an error when trying it's building the stripe_mrr_amortized model:
04:26:56 | 18 of 24 ERROR creating view model dbt.stripe_mrr_amortized.......... [ERROR in 0.44s]
column "mrr" does not exist in events

I noticed that this column seems to have been removed in this commit:
https://github.com/fishtown-analytics/stripe/commit/479c2e0cc569b183d1c7f9caf194646150c14e75#diff-21cf7ee7ab72cb2c467596cfc2bea919L44
Subsequently none of the the other MRR models are building. Am I doing something wrong?

Just wanted to share a quick updatre.
I managed to get around this error by checking out the 0.1.0 tag. On this tag the stripe_stripe_mrr_amortized models builds, but I then ran into another error when building the dbt.stripe_mrr_discounted model:
20:04:06 | 20 of 24 ERROR creating view model dbt.stripe_mrr_discounted......... [ERROR in 0.37s]
column discounts.date_day does not exist

thanks for bringing this up! the mrr models were significantly out of date in this package. I had done a lot of work updating them in a couple of client implementations but had never genericized the code and pulled it back into the package. I just finished doing this work, and you can check out the results here:
https://github.com/fishtown-analytics/stripe/pull/5
at this point if you pull master you should be able to build working mrr tables all the way through the dependency tree. the code is rather complicated, but I can validate that we're using this logic in production currently for multiple clients and have been for 6+ months.


Loconet switch

I attached the Uhlenbrock IB Switch but it seems to not work. Looks like it wait for some switch settings from command station:
I][WiThrottle.cpp:91] begin(): WiThrottleServer::begin
*WM: [3] unloading
onPacket: SW_STATE(BC) 00 00 43
onPacket: SW_STATE(BC) 00 00 43
onPacket: SW_STATE(BC) 00 00 43
Any idea how i get it work?

if i use command station as sniffer (by use a Loconet command station) i get follow serial on pluging the IB Switch:
[I][WiThrottle.cpp:91] begin(): WiThrottleServer::begin
*WM: [3] unloading
onPacket: LONG_ACK(B4) 3C 50 27
onPacket: SW_STATE(BC) 01 00 42
onPacket: LONG_ACK(B4) 3C 30 47
onPacket: SW_STATE(BC) 07 00 44
onPacket: LONG_ACK(B4) 3C 30 47

Hi, thanks for the report and sniffer dump.
Please describe what your setup is. What loconet devices are connected to the bus apart from ESP32 and IB Switch? A switch decoder itself? Another command station?

Did it start to work after you fixed the hardware?

no still not work.
Am 10. Nov. 2021, 10:52 +0100 schrieb Paul Melnikov @.***>:

Did it start to work after you fixed the hardware?
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub, or unsubscribe.
Triage notifications on the go with GitHub Mobile for iOS or Android.

as i see you started turnout roster. it send to withrottle on connect with engine driver. does it also send out on loconet? may here is the issue?
Am 10. Nov. 2021, 10:52 +0100 schrieb Paul Melnikov @.***>:

Did it start to work after you fixed the hardware?
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub, or unsubscribe.
Triage notifications on the go with GitHub Mobile for iOS or Android.

Well then, my question still stands. What is your setup? I actually don't know what command station needs to do when your switch controller talks to switch decoder. It is my understanding that it should do nothing, and it is implemented this way. Is your decoder connected via LocoNet or DCC?

The IB Switch is just a board from Uhlenbrock with buttons (to can use as switches for turnouts as example). Thats what you need to know?

Please describe what your setup is. What loconet devices are connected to the bus apart from ESP32 and IB Switch? A switch decoder itself? Another command station?

only command station and the IB Switch
or
Command Station, Daisy 2 (Uhlenbrock) hand throttle and IB Switch
(Uhlenbrock too)

both same..
Am Mo., 15. Nov. 2021 um 15:42 Uhr schrieb Paul Melnikov <
@.***>:

Please describe what your setup is. What loconet devices are connected to
the bus apart from ESP32 and IB Switch? A switch decoder itself? Another
command station?
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/positron96/LocoNetControlStation/issues/11#issuecomment-968977683,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ASRDILGWW3L3JOUXTZTBOG3UMEL3ZANCNFSM5HSKRWWQ
.
Triage notifications on the go with GitHub Mobile for iOS
https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675
or Android
https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.

So, are your turnout decoders connected via DCC? The command station does not forward switch commands from LocoNet to DCC. I have no DCC decoders and so have no way to test if such forwarding works. Also, without decoders I have no need for this feature.

No, at this moment i have no turnout decoders on DCC. The IB Switch is just
for Loconet. There can Loconet addresses can set for switch anything as
example turnouts. But it will get no answers on plug on the loconet
interface as it does if i use a other loconet command station as you can
see on top (dump).
Am Mo., 15. Nov. 2021 um 15:59 Uhr schrieb Paul Melnikov <
@.***>:

So, are your turnout decoders connected via DCC? The command station does
not forward switch commands from LocoNet to DCC. I have no DCC decoders and
so have no way to test if such forwarding works. Also, without decoders I
have no need for this feature.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/positron96/LocoNetControlStation/issues/11#issuecomment-968994506,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ASRDILCXTKKINRU32CEV3BTUMEN6NANCNFSM5HSKRWWQ
.
Triage notifications on the go with GitHub Mobile for iOS
https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675
or Android
https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.

Yes, your other command station answers to LocoNet switch requests (on behalf of DCC decoders that can't talk back). This command station does not process switch commands in any way.

ah now i understand. is there any way to implement it to get it near to a full support command station like that?
Am 15. Nov. 2021, 16:37 +0100 schrieb Paul Melnikov @.***>:

Yes, your other command station answers to LocoNet switch requests (on behalf of DCC decoders that can't talk back). This command station does not process switch commands in any way.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub, or unsubscribe.
Triage notifications on the go with GitHub Mobile for iOS or Android.

just to make sure.. on the other command station setup also no DCC decoders attached
Am 15. Nov. 2021, 16:37 +0100 schrieb Paul Melnikov @.***>:

Yes, your other command station answers to LocoNet switch requests (on behalf of DCC decoders that can't talk back). This command station does not process switch commands in any way.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub, or unsubscribe.
Triage notifications on the go with GitHub Mobile for iOS or Android.

No, it's not that difficult. There is some work already done in the form of turnout roster.
The good thing about open-source is that you can always implement what you need yourself.

Can you may give me a small start idea with code to know where i can go on
? This would really be great
Am Di., 16. Nov. 2021 um 04:17 Uhr schrieb Paul Melnikov <
@.***>:

No, it's not that difficult. There is some work already done in the form
of turnout roster.
The good thing about open-source is that you can always implement what you
need yourself.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/positron96/LocoNetControlStation/issues/11#issuecomment-969775089,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ASRDILEW3PNVITBLOWNL66DUMHELLANCNFSM5HSKRWWQ
.
Triage notifications on the go with GitHub Mobile for iOS
https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675
or Android
https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.

Processing of LocoNet messages is done in LocoNetSlotManager in processMessage (there is a big switch on opcodes), you'd need to add case of the messages you need. As you have found, turnout roster is handled by CommandStation,  Methods getTurnouts and turnoutToggle and turnoutAction would be needed to react of recieved LocoNet messages.

Closing in favor of #16


Trying to use SuggestedValues from GlobalList gives error TF201067 when loading WIT to TFS2017.2

Trying to use SuggestedValues from GlobalList gives error TF201067 when loading WIT to TFS2017.2
If I have the ListItem values for SuggestedValues under the Field definition in the WIT, it works.
However, when I move the same ListItem values under a GlobalList definition and try to use that GlobalList from the same Field definition, then WIT import fails and gives unrelated error message: "TF201067: You do not have permission to modify the work item type or field. You must have permission to modify work item types and fields in each team project where they are used. If you have the necessary permissions, your work item metadata cache may be out of date. Refresh any cached metadata and try the operation again."
Definitely, the error message is unrelated, because if I immediately move the ListItem values back to the SuggestedValues under the Field definition in the WIT, it works without issues.
It is important to be able to define the SuggestedValues as a GlobalList.
I suppose we use the latest version of the vsts-extension-multivalue-control (I did not check), because we installed it couple of days ago.
--Markus

Are you getting this error when running witadmin.exe? Can you share xml giving the issue?

We're experiencing the same issue.
      <FIELD name="Client" refname="Suite.Client" type="String">
        <SUGGESTEDVALUES expanditems="true">
          <GLOBALLIST name="Suite Clients" />
        </SUGGESTEDVALUES>
      </FIELD>

        <Page Label="Description" LayoutMode="FirstColumnWide">

            <Group Label="Description">
              <Control Label="Description" Type="HtmlFieldControl" FieldName="System.Description" />
            </Group>

            <Group Label="Client:">
              <ControlContribution Label="Client:" Id="ms-devlabs.vsts-extensions-multivalue-control.multivalue-form-control">
                <Inputs>
                  <Input Id="FieldName" Value="Suite.Client" />
                </Inputs>
              </ControlContribution>
            </Group>

        </Page>

@mmanela
Yes, we get the issue when running "C:\Program Files (x86)\Microsoft Visual Studio 14.0\Common7\IDE\witadmin.exe importwitd ..."
Global lists have following kind of content (nothing special)
  <GLOBALLIST name="VMS.glXyz">
    <LISTITEM value="Item 1" />
    <LISTITEM value="Item 2" />
    <LISTITEM value="Item 3" />
  </GLOBALLIST>

The WITD like the one above, but we are using PlainText field for the multivalue control (again, nothing special...)
      <FIELD name="Xyz" refname="VMS.Xyz" type="PlainText">
        <SUGGESTEDVALUES expanditems="true">
          <GLOBALLIST name="VMS.glXyz" />
        </SUGGESTEDVALUES>
      </FIELD>

        <Extensions>
          <Extension Id="ms-devlabs.vsts-extensions-multivalue-control" />
        </Extensions>

            <Group Label="Classification">
              <ControlContribution Label="Xyz" Id="ms-devlabs.vsts-extensions-multivalue-control.multivalue-form-control">
                <Inputs>
                  <Input Id="FieldName" Value="VMS.Xyz" />
                </Inputs>
              </ControlContribution>
            </Group>

When do you fix this issue?
Thanks, Markus

This is currently not supported. You are not able to set SuggestedValues rule on PlainText or HTML field types. However, the control supports you specifying values when configuring it. For example:
<ControlContribution Label="Label" Id="ms-devlabs.vsts-extensions-multivalue-control.multivalue-form-control">
                    <Inputs>
                        <Input Id="FieldName" Value="RefNameOfTheField" />
                        <Input Id="Values" Value="One;Two;Three;Four" />
                    </Inputs>
                </ControlContribution>

This will configure the control to have the four values (One, Two, Three, Four).

@mmanela Currently not supported where? This was working recently and now it's not. Hardcoding the values in the WIT definition is exactly what we don't want to do. What happens when there's a new value and there are multiple WITs in multiple projects which pull from that global list?

@jdshkolnik From what I see, adding SuggestedValues rules has never worked on a PlainText field type. I think it should work but it is a larger change with concerns around back compat that need to be addressed. So, for now if you want to be able to store more than 255 characters in the field and want to use the MV control, hardcoding the values is the only option.
Hopefully, we can lift this restriction in the future.

What about an HTML field like mine above? I know for a fact this was working.

I dug in further and it looks like code doesn't support adding a global list inside of a SuggestedValue list for HTML or PlainText field types. This doesn't look new, are you sure you used to be able to do this?
In my testing this is what works/doesn't work:

 <FIELD name="MyTextField1" refname="My.MyTextField1" type="String">
    <SUGGESTEDVALUES expanditems="true">
      <LISTITEM value="A" />
      <LISTITEM value="B" />
    </SUGGESTEDVALUES>
  </FIELD>

 <FIELD name="MyTextField1" refname="My.MyTextField1" type="string">
  <ALLOWEDVALUES expanditems="true">
    <LISTITEM value="C" />
  </ALLOWEDVALUES >
</FIELD>

 <FIELD name="MyTextField1" refname="My.MyTextField1" type="String">

    <SUGGESTEDVALUES expanditems="true">
      <GLOBALLIST name="Test" />
    </SUGGESTEDVALUES>
  </FIELD>

 <FIELD name="MyTextField1" refname="My.MyTextField1" type="PlainText">
    <SUGGESTEDVALUES expanditems="true">
      <LISTITEM value="A" />
      <LISTITEM value="B" />
    </SUGGESTEDVALUES>
  </FIELD>

 <FIELD name="MyTextField1" refname="My.MyTextField1" type="HTML">
    <SUGGESTEDVALUES expanditems="true">
      <LISTITEM value="A" />
      <LISTITEM value="B" />
    </SUGGESTEDVALUES>
  </FIELD>

   <FIELD name="MyTextField1" refname="My.MyTextField1" type="PlainText">
    <ALLOWEDVALUES expanditems="true">
      <LISTITEM value="A" />
      <LISTITEM value="B" />
    </ALLOWEDVALUES >
  </FIELD>

   <FIELD name="MyTextField1" refname="My.MyTextField1" type="HTML">
    <ALLOWEDVALUES expanditems="true">
      <LISTITEM value="A" />
      <LISTITEM value="B" />
    </ALLOWEDVALUES >
  </FIELD>

 <FIELD name="MyTextField1" refname="My.MyTextField1" type="HTML">

    <SUGGESTEDVALUES expanditems="true">
      <GLOBALLIST name="Test" />
    </SUGGESTEDVALUES>
  </FIELD>

I am looking at fixing the SV with suggested value issue. Will let you know if it is doable and timeframe.

100% certain. What's even more interesting is that it still works in our test environment. The global list in production must've gone over that 255 character limit.

Can you share the exact xml you are using? And the global list?
On Mon, Oct 9, 2017, 12:36 PM John D. Shkolnik<EMAIL_ADDRESS>wrote:

100% certain. What's even more interesting is that it still works in our
test environment. The global list in production must've gone over that 255
character limit.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/Microsoft/vsts-extension-multivalue-control/issues/30#issuecomment-335264519,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AASlGhGz2EjXgkluMoue49GR8BXyWug2ks5sqnXPgaJpZM4PUfdT
.

@mmanela Where did we leave off with this problem?

@mmanela Has this been fixed? to me it looks that you just closed this, there is no new version in https://marketplace.visualstudio.com/items?itemName=ms-devlabs.vsts-extensions-multivalue-control - or do you need TFS 2017.3 ?
The example from Scott-Emberson uses a String field.
You wrote earlier:


Upgrade jdk17+ linux builds to use gcc-8

Upstream OpenJDK supported build platforms for jdk-17+ is gcc 8.2.1.
There are also features available in gcc-8 that are advantageous/required for "reproducible builds".

Overall building doc mentions 10.2: https://github.com/openjdk/jdk17u/blob/master/doc/building.md#gcc
The OpenJDK wiki lists gcc 8.2.1 for OpenJDK 17: https://wiki.openjdk.java.net/display/Build/Supported+Build+Platforms
The PMC had a discussion on this and we agree that moving forward with using GCC8.2.1 for Temurin-17 is a good move.

Right ... I've done some more investigation ... GCC 8.2.1 was a Red-Hat specific branch (albeit in the official GCC repository, although you have to jump through some hoops to find it). On that basis I'd personally be slightly reluctant to use that one since it was never a formal GCC release. Here is what I believe other distributions are using:

JDK17 Distribution
GCC version

Adoptium
7.5.0

Azul
7.3.1

Bellsoft
7.3.1

Corretto
7.3.1

Oracle
10.3.0

So we're already ahead of all the others apart from Oracle. I believe Red Hat uses 8.5 for theirs. So unless we went bleeding edge we could use:

8.2.1 despite it not being an official release from GCC as it's listed in the wiki
8.5 as the latest in the 8 line
Latest 9.x (Alibaba Dragonwell are keen to use 9 over earlier versions for performance reasons, but we don't have to use the same version for Temurin!)
10.2 which would match the version listed in the source code (or go for a later 10 as Oracle have done!)
Go bleeding edge (11.2 at the time of writing this). I wouldn't choose this personally

Posted question on GCC versions to jdk-dev at https://mail.openjdk.java.net/pipermail/jdk-dev/2021-December/006299.html

There was no response to this. My gut feel is now to go with 10.2 (or maybe 10.3?)

Might as well push to 10.3 in that case

Actually retracting what I said earlier I've just seen (it wasn't threaded correctly), but there have now been updates to the wiki to list 10.3 instead of the earlier one now, so I'm going to assume 10.3 too 👍🏻


Leetcode Problem - Longest Increasing Subsequence

Added the question and solution to the problem.

@chandrikadeb7 do let me know if this can be merged.

@chandrikadeb7 do let me know if this can be merged.

Merged! Looks good.


Allowed changes in DomainEventHandler - lack of example

Hello Kamil,
Thanks for that repo - a lot of valuable knowledge 😊
I have a question regarding allowed changes in your DomainEventHandlers - there is no code in your OrderAddedDomainEventHandler.cs. It seems that changes in another aggregate in handler won't be published as events. For example:

In OrderAddedDomainEventHandler we get Buyer aggregate
We add order to the buyer
We have an event to publish but nothing will gather this event

If we run CommitAsync from context code will SaveChangesAsync twice
If not we won't run DispatchEventsAsync from the dispatcher

So we are not able to implement fully the scenario of triggering side effects across multiple aggregates (Microsoft docs)
What do you think of it? Maybe you have a different perspective on this topic 😉

Hi Radek,
Thanks for feedback!
You are definitely right. On the beginning of this repo I didn't focus on more advanced scenarios when one command can cause the flood of many events from various aggregates (and handling issues in the same transaction boundary what is not recommended but sometimes necessary OR in separate transaction = eventual consistency).
Because DDD is just starting to shine in such complex situations, I decided to fix my error quickly and commited new changes :)
The main change is an introduction of Autofac Decorators which are responsible for dispatching events and committing transaction:
DomainEventsDispatcherCommandHandlerDecorator.cs
DomainEventsDispatcherNotificationHandlerDecorator.cs
As you see the former is dispatching events and committing transaction and the latter only is dispatching events to avoid multiple commits.
I have added more advanced scenarios:
AddOrderCommand > AddOrderEvent->new Payment Aggregate created (same transaction) -> PaymentCreatedEvent -> Saving to outbox -> PaymentCreatedNotificationHandler (sending email)
RegisterCustomerCommand -> CustomerRegisteredEvent (end of transaction)-> Saving to outbox -> CustomerRegisteredNotificationHandler sends email and invokes aggregate method on Customer Aggregate (separate transaction - eventual consistency).
Let me know how you see actual implementation. I had to introduce small changes as well (for example separate UoW class) but Domain code is almost intact (only new things).
PS: I will definitely write another post on my blog about it :)

It seems very good, thanks for such detailed scenario 😃

Good! I am closing this issue.


fix: oci container checksum added

:tada: This PR is included in version 2.43.2 :tada:
The release is available on GitHub release
Your semantic-release bot :package::rocket:


Make sure the index stays positive

When _next_round_robin grows big enough, it becomes a negative number, meaning next is also negative. And since next is used as an index into array _thread, the result is returning NULL when assigning threads.

[approve ci autest]

[approve ci autest]


Wildcard for test files

This repo is great but I tried without success to change the shim in such a way that I could specify wildcards for the spec files.
Being able to do something like this in the karma.conf file would be nice. Right now it seems like I need to manually import each test file into the shim.
files: [
'src/**/*.spec.ts'
]

Hi @superkew and thank you for opening an issue. Actually you can't import in es6 using wildcards. If you want to achieve this result you should build a bundle task to run before "npm run test" that bundle all spec files.
Ionic team is working on an a specific task in ionic app script for unit tests and e2e test based on angular cli.

It's a pity we can't use the normal karma imports for wildcards, but good to hear that ionic will be creating some tooling for us :)

couldn't you do something like:
        files: [             'config/karma-shim.ts',             'src/**/*.spec.ts'         ],         preprocessors: {             'config/karma-shim.ts': ['rollup'],             'src/**/*.spec.ts': ['rollup']         },

@superkew have a look at following gist to achieve such glob support and still use rollup.
There is one problem with such solution tough - you'll have to somehow init test environment (as in current shim). Doing so in every test will throw an error as you can only do so once per test session. I ended up creating singleton for test environment initialization which based on static flag executes following:
TestBed.initTestEnvironment(BrowserDynamicTestingModule,  platformBrowserDynamicTesting());

just run:
npm run test:watch
And now all your spec file are watched and loaded in karma-shim automatically.

Thank you!

Hey @marcoturi and @superkew . I submitted another approach to do this. The karma-shim.ts is not changed with the watch. I created a file that generate a index.ts with import statements. So, the karma-shim.ts contains only a simple import ../src.
Please, see my PR !1 and check which the better approach to a standard structure :)


Add skopeo rpm spec file to contrib

Adding skopeo spec file to repo to provide public access to files required to build rpm. Location in repo follows buildah's existing convention/location.
Spec file is from the srpm from the following repo with the commitid changed to REPLACEWITHCOMMITID to match buildah .spec convention:
https://cbs.centos.org/repos/virt7-container-common-candidate/source/SRPMS/
Please advise if there is an updated version available or if there is an alternate location to access the spec.
Signed-off-by: pixdrift<EMAIL_ADDRESS>

@lsm5 @baude PTAL
Should we setup the autobuild like we do for buildah and podman?

Is there a possibility of getting the same path/file convention for spec files used in all projectatomic git repos. Not necessarily this structure, but one that is the same for all.
I checked libpod which has it under /contrib/spec/podman.spec.in. I didn't want to push my luck and suggest a move in that repo too 😄

I think it would be a good idea to get them all the same basic path.

@rhatdan RE: the daily autobuild for fedora rawhide, it happens on my daily-rebuild repo. See: https://travis-ci.org/lsm5/daily-rebuild/builds . It uses the fedora dist-git repos directly and doesn't depend on spec files included upstream. skopeo is included in the current daily rebuilds already. In case you need this spec file as a general pointer to ohh how do i quickly build this?, then LGTM.
I'll leave it to @baude to decide if the COPR build stuff he does for podman should be done here as well.

I’m not fundamentally against having a spec file in the repo (and if the buildah/podman/… universe wants to standardize on a convention (@baude?), fine); my primary concern is: will anyone maintain it, or at least notice that it is broken?
What do you actually need to do with the spec file? It’s not quite clear to me from

to provide public access to files required to build rpm

who would benefit and how. The Fedora dist-git is just as public, for example.
Fedora is pretty clear in https://fedoraproject.org/wiki/Packaging:Guidelines#Spec_Maintenance_and_Canonicity that Fedora’s spec files are maintained in Fedora’s git; if they get out of sync, the Fedora git version is the canonical one.
This is not just academic: every time Fedora’s git bumps the Release: version, the spec in this repo should bump it as well, possibly to a higher number, so that the locally-built RPM is actually used. So, a Fedora-targeted spec file in here would be a hassle to maintain.

Another aspect is that the Fedora skopeo SRPM contains also the skopeo-containers subpackage, which does not really have much to do with skopeo itself — e.g. note the Source1: storage.conf source file.  If the SRPM from this repo is supposed to be drop-in-compatible, we would need to maintain copies of those fairly unrelated files here as well.

@rhatdan RE: the daily autobuild for fedora rawhide, it happens on my daily-rebuild repo. See: https://travis-ci.org/lsm5/daily-rebuild/builds . It uses the fedora dist-git repos directly and doesn't depend on spec files included upstream.

Yeah, using the Fedora spec directly seems, at least for Fedora, a better approach.
Maybe we should just mention in README.md that various distributions, like Fedora, maintain a skopeo package and building from source may be unnecessary? I don’t know, overall I am probably missing the point of this PR.

On Mon, Apr 30, 2018 at 10:13:06AM -0700, Miloslav Trmač wrote:

Another aspect is that the Fedora skopeo SRPM contains also the skopeo-containers subpackage, which does not really have much to do with skopeo itself — e.g. note the Source1: storage.conf source file.  If the SRPM from this repo is supposed to be drop-in-compatible, we would need to maintain copies of those fairly unrelated files here as well.

This file can be upstramed, I hope.
--
Lokesh
IRC: lsm5
GPG: 0xC7C3A0DD
https://keybase.io/lsm5

mounts.conf and registries.conf are distro centric.  So we should probably provide empty templates.

I have been thinking we should rename skopeo-containers to something like containers-config or something along those lines.  Since that is really what the package contains.  mounts.
rpm -q  skopeo-containers -l
/etc/containers
/etc/containers/policy.json
/etc/containers/registries.d
/etc/containers/registries.d/default.yaml
/etc/containers/storage.conf
/usr/share/containers
/usr/share/containers/mounts.conf
/usr/share/man/man5/containers-storage.conf.5.gz
/usr/share/rhel/secrets
/usr/share/rhel/secrets/etc-pki-entitlement
/usr/share/rhel/secrets/rhel7.repo
/usr/share/rhel/secrets/rhsm
/var/lib/atomic/sigstore

@rhatdan, as an educational exercise for myself, what is the current source of the mounts.conf that is referenced in the skopeo .spec file? ie. where can I go to find the source of mounts.conf that is used in the RH shipped rpm?

Is it worth mentioning here the registries.conf file from atomic-registries moving into skopeo-containers? which was discussed here:
https://github.com/projectatomic/buildah/issues/635
Would that involve moving the registries.conf into this repo? or would that file be included in the skopeo-container rpm spec file similar to mounts.conf?

Added the mounts.conf file to contrib with the other files described in the .spec so this file is available if this PR is accepted. Will need to update to a more generic version that isn't distro specific as described by @rhatdan above.

Currently mounts.conf and registries.conf is stored with the the spec file in the internal koji repo.  We could setup different contrib files under skopeo for each distribution.  Most of the Red Hat ones are just sorting the order of registries.conf and we have the RHEL secrets in fedora and Centos, since there is nothing stopping a user from using a RHEL subscription to develop RHEL containers while sitting on a Fedora or Centos Box.
Making these more public would probably be a good idea.
storage.conf is also customizable by the distros although I think there would be more concensus there.
What do you think about changing the subpackage name to containers-config.

Using 'common' is a fairly standard convention in other RHEL packages, could containers-common work as a package name which also then doesn't limit it to configuration files/data? This may mask the intent if it is just for config though 😄

@rhatdan, where to from here? is the plan to put containers-common in a new projectatomic repo with its own spec? If so, I can update this PR to remove the files that will be moved into containers-common.

So the rename is fine and the spec builds cleanly, but the impact of the package name change from skopeo-containers to containers-common is far and wide.
So far I have identified the following packages that have Requires on skopeo-containers
buildah
podman
docker-common (which was a surprise)

How is this kind of effort usually co-ordinated?

You should add a
provides: skopeo-containers
Then we can slowly fix the other packages to require the new name.

@rhatdan Cheers, thanks for the tip.

Upgrade looks good/clean, running into this strange issue updating skopeo though:
Error: Package: 1:skopeo-0.1.27-1.git7159f56.el7.x86_64 (/skopeo-0.1.27-1.git7159f56.el7.x86_64)
           Requires: containers-common = 0.1.27-1.git7159f56.el7
           Installed: 1:containers-common-0.1.27-1.git7159f56.el7.x86_64 (installed)
               containers-common = 1:0.1.27-1.git7159f56.el7

It's already in there:
https://github.com/pixdrift/skopeo/blob/28786e9c592f637c2740fa15b5a8bea68e09d16a/contrib/rpm/skopeo.spec#L184

CI failure looks unrelated.

Resulting packages built on CentOS 7.4 are here:
http://rpmbuild.pixeldrift.net/scratch/
Update was clean from the packages versions in CentOS Extras. If anyone can test the spec on Fedora would be appreciated. Any other feedback welcome.

@lsm5 PTAL

All good. Thanks for the feedback/advice re: source of specs, I will close this out.


Error after attempting to open websockets

Firstly thanks a lot for sharing your project with us,this is my first time trying to use it..
I tried to run it both in ubuntu and on windows machine,I have plenty of resources and I am using the exact versions of nodejs and npm you are suggesting,however in both cases I get a fatal error..
Please check the log attached
log.txt
for more details,
Thanks!!

@NoctisNebula Do websockets keep closing after about 2 minutes, this then leads to a fatal crash?

I get myself an error message after the script runs for a while.

look in issue #64 i believe i solved the issue

Well, the previous versions run without any errors with the same settings.
So, in the current one something might be amiss.

Thank you for your suggestions guys! However I think this problem is different than the one in issue #64, I am not getting the RangeError/stack size error,and the websockets are not opening at all it wents into the error every time...Anyway I tried the fix he suggested on #64,but the situation remains the same.. I have no idea about previous versions tho this is the first version I'm trying..

Thank you for the kind words and support!
Glad to see those issues resolved. For reference I typically run and test on Ubuntu and all seems to be working well for me. What do you mean by "bugged" @NoctisNebula, A screenshot would be awesome

Thank you for the kind words and support!
Glad to see those issues resolved. For reference I typically run and test on Ubuntu and all seems to be working well for me. What do you mean by "bugged" @NoctisNebula, A screenshot would be awesome

Certainly,I would do anything to help,the "bug" I mentioned is actually just a visual bug,I was only able to see the Trade/Profit/AB Age tabs in cmd interface,however that is insignificant,the stats are showing while I m using cmder so everything seems to be fine.
Print attached for the refference.
Thanks again for your amazing work!
Hopefully in the future we could help you more with this project,and at least donate when we can,cheers & have a brilliant week!

Yikes! Yeah the first screenshot appears to be missing width. But I've seen windows prompts block the max width allowed. The second screenshot looks rough. Seems like the character encodings used to format text aren't supported/recognized by that terminal.
I appreciate your patience and contributions!


Text boxes for changing times doesn't work yet

Half fixed in v1.3 https://github.com/Anthonyrules144/Spotify-Toast/commit/c69b1881a5645180026408f86e4af1d20649323c , next version will completely fix.


Label isn't centered properly

When a label is next to a TextEditor, the centering is off by like 2px. The padding needs to be increased, no flex settings for now

Adjusted the padding for the label, Choice, Checkbox and Radiobutton should also use padding instead of flex settings...

Adjusted the padding for the label, Choice, Checkbox and Radiobutton should also use padding instead of flex settings...

These changes are postponed until we find a better solution right now I added padding for radiobuttons in a group.


js: refactor all constants into a single file

It is nice to have a single source for all constants like ROOT_ELEMENT, etc. to make it feasible for resuing at different places.

not sure this a good first issue. @algomaster99 do you have a list of constants we want to move?

ROOT_ELEMENT
SIDEBAR_MENU
MIN_HEIGHT

And there are a few more. These are a few examples.

Nice. If you can list them all in as checkboxes (and check off the ones you fix with PRs), then it will be a good first issue 🙂

there also should be a list of where to use these constants, right?

@shcheklein We can determine it by grepping through the whole project for the particular constant.
Although, there are some constants which are used only once in a project. So I will have to decide whether they should really go into the file or not.

@algomaster99 sometimes even grep can be not enough if it's already a value that we calculated using a few constants (like in your tooltip code as far as I understand).

@shcheklein in my case, we are just movie the header element' class to a constant file. Not the height because we can only find its height after it has mounted. It is similar to what we have done for bodybag.

sometimes even grep can be not enough

Might be. I will have to look carefully and jot them down here. :sweat_smile:

there are some constants which are used only once in a project

My 2c on this is that either the constant goes in the shared file like all the others (in case it's reused later), or the value is hardcoded as a literal where it's used if you're sure no one else will ever need it.

Where should the constants file be located? Is there a best practice for React or Next project structures?
See https://github.com/iterative/dvc.org/pull/717/files#diff-7c51329997e372ad3b55f13cecdd28ef

let's revisit this, might be not relevant with the latest migration


Use Glide instead of Picasso to increase Performance, available memory... etc

++ Edit: 2015.07.09: Change target branch master -> develop (based recent develop branch, can automatically merge!)
Picasso and Glide has almost same methods (especially method names!), but Glide use RGB_565 so save image memory.
check out this document and publish new version.
thanks to nice library!

Thank you, from what I have observed, the images are loaded more quickly using glide due to disk caching!


[firebase_admob] Fixes memory leak by removing static reference for Activities

Description
This PR tries to fix a memory leak on Android caused by MobileAd.allAds variable being static.
Each ad has a reference to the current Activity and the static reference kept the Activity in memory even after it was destroyed be the platform.
To solve this, allAds was moved to another class, called MobileAdRegistrar that handles the interaction with this variable in a non static way.
Checklist
Before you create this PR confirm that it meets all requirements listed below by checking the relevant checkboxes ([x]). This will ensure a smooth and quick review process.

[X] I read the [Contributor Guide] and followed the process outlined there for submitting PRs.
[X] My PR includes unit or integration tests for all changed/updated/fixed behaviors (See [Contributor Guide]).
[X] All existing and new tests are passing.
[X] I updated/added relevant documentation (doc comments with ///).
[X] The analyzer (flutter analyze) does not report any problems on my PR.
[X] I read and followed the [Flutter Style Guide].
[X] The title of the PR starts with the name of the plugin surrounded by square brackets, e.g. [shared_preferences]
[X] I updated pubspec.yaml with an appropriate new version according to the [pub versioning philosophy].
[X] I updated CHANGELOG.md to add a description of the change.
[X] I signed the [CLA].
[X] I am willing to follow-up on review comments in a timely manner.

Breaking Change
Does your PR require plugin users to manually update their apps to accommodate your change?

[ ] Yes, this is a breaking change (please indicate a breaking change in CHANGELOG.md and increment major revision).
[X] No, this is not a breaking change.

@collinjackson what is going to happen with firebase related PRs? Should we close them?


Writing Tests with Rails, RSpec and specific Headers

Hi,
I have a app written with "Grape (0.15.0) on Rails (<IP_ADDRESS>)".
The documentation say I can write tests like that:
describe Twitter::API do
  context 'GET /api/statuses/public_timeline' do
    it 'returns an empty array of statuses' do
      get '/api/statuses/public_timeline'
      expect(response.status).to eq(200)
      expect(JSON.parse(response.body)).to eq []
    end
  end
  context 'GET /api/statuses/:id' do
    it 'returns a status by id' do
      status = Status.create!
      get "/api/statuses/#{status.id}"
      expect(response.body).to eq status.to_json
    end
  end
end

It works well. I use this kind of tests since months.
But now, my API should take a specific header, for exemple HTTP_TOKEN
So, I change my tests like this:
describe Twitter::API do
  context 'GET /api/statuses/public_timeline' do
    it 'returns an empty array of statuses' do
      get '/api/statuses/public_timeline', nil, { 'HTTP_TOKEN' => "a_token" }
      expect(response.status).to eq(200)
      expect(JSON.parse(response.body)).to eq []
    end
  end
  ...
end

Because the get method come from ActionDispatch::Integration::RequestHelpers and its signature is : get(path, parameters = nil, headers_or_env = nil). (More infos: http://api.rubyonrails.org/classes/ActionDispatch/Integration/RequestHelpers.html#method-i-get)
But in my endpoint code, the headers hash does not contain my HTTP_TOKEN header.
My header is in the env hash instead.
On the other hand, if I manually test my endpoint with any HTTP client, my HTTP_TOKEN header is correctly in the headers hash and not in the env hash.
Any idea on how to fix this ?

Are you sure that you're not getting a token header inside headers? There was something about ENV needing to prefix HTTP headers with HTTP_, but I could be totally wrong.
Next step is to write a failing spec in Grape for this.

Ok.
I found the problem and the solution.
I my real app my header is not HTTP_TOKEN. My key does not begin with HTTP. It was only for example.
I don't know why, but headers in Grape (and Rails ?, because of Rake ?) are prefixed with HTTP_ in the env hash.
To get the headers, it loops over the env hash, if the key begin with HTTP_, it removes the prefix and adds the key/value pair to the headers hash, see the code:
# Come from Grape::Request

def build_headers
   headers = {}
   env.each_pair do |k, v|
     next unless k.to_s.start_with? HTTP_PREFIX

     k = k[5..-1].split('_').each(&:capitalize!).join('-')
     headers[k] = v
   end
   headers
end

So, the solution is, for a header named for example Api-Key, to write your tests like this :
describe Twitter::API do
  context 'GET /api/statuses/public_timeline' do
    it 'returns an empty array of statuses' do
      get '/api/statuses/public_timeline', nil, { 'HTTP_API_KEY' => "a_token" }
      expect(response.status).to eq(200)
      expect(JSON.parse(response.body)).to eq []
    end
  end
  ...
end

Because you prefixed your header name with HTTP_ Grape will effectively consider it as a header, and you will be able to consult the value in the normal way: headers['Api-Key'] or via the env: env['HTTP_APi_KEY']
Thanks for the fast answer @dblock !

It's part of the Rack spec, documented in http://rack.rubyforge.org/doc/SPEC.html.


Fix non-unit direction vectors

This tries to fix #20 and #28.
I renamed util.normal_vector() to util.normalize_vector() as proposed in #28 and used it for every single dimensional direction vector n. The field plotted in #20 looks now correct with this.
I'm still not happy with the naming, which I will discuss directly in #28 and there is the problem how to handle several unit vectors at once like n0 = util.asarray_of_rows(n0).

Any objections?
If not, LGTM!

Just a reminder, the fix is not done for n0 = util.asarray_of_rows(n0) as I didn't know what is the best way to apply it there. With a loop? Can someone help out with this?

If this would be needed only once, you could do something like:
n0 = util.asarray_of_rows(n0)
n0 = np.row_stack([util.normalize_vector(n) for n in n0])

But since we need this several times, we should make a function.
Should we include this into util.normalize_vector()?
We could do a simple np.asarray() and then do different things for one and two-dimensional arrays.
This could be used like util.normalize_vector(util.asarray_of_rows(n0))
Or should we make a new function util.asarray_of_normalized_rows()?
This has the problem of #28, could be both types of "normalization".
In a separate function, you could use something like this:
# make sure x is a 2-dimensional array
x / np.linalg.norm(x, axis=1, keepdims=True)

However, note that the keepdims argument is only available since NumPy 1.10.0 (see https://docs.scipy.org/doc/numpy/reference/generated/numpy.linalg.norm.html).
This should do the same thing and also work for older versions:
# make sure x is a 2-dimensional array
x / np.linalg.norm(x, axis=1).reshape(-1, 1)

PS: if we include this in util.normalize_vector(), it will lose its squeezing ability.
This means we would have to use util.normalize_vector(util.asarray_1d(n)) in many cases.
Which would be a bit longer, but it would actually be more explicit, which generally is a good thing.
Another problem: we would have to decide between normalize_vector() and normalize_vectors().
BTW, if we decide for some fundamental changes along the lines of #36, we'll have to change those functions again.

PPS: We can also implement this later, we should just create a new issue as a reminder.

At the beginning I was also thinking of two functions similar to the asarray once, e.g.
util.asdirection()
util.asdirections()

But maybe it is better to have to use it in an explicit way?
util.normalize_vector(util.asarray_1d(n))
util.normalize_vector(util.asarray_of_rows(n))

I would suggest to merge this PR as is and postpone further changes until we see how our understanding of a "direction" evolves.

Fine with me, I created an issue for the remaining TODO of this PR.


No way to re-login on failed authentication

When you login with credentials that fail authentication on the Ziti network (e.g. an email that does not match an existing identity) then you get a BrowZer runtime error as expected: User<EMAIL_ADDRESS>cannot be authenticated onto Ziti Network. Unfortunately, there is no way to re-do the login as it seems that the auth token has been cached and you will always be redirected to the failed login page when you try to access the service.
Note: this was tested using Auth0 as the IdP.

I have v0.39.1 in the pipeline.  This build (which has IdP-related updates) should resolve the issue you mentioned here.

v0.39.1 has been released.  Please give your reported scenario a try under this build.
Following a failed Ziti network auth attempt (as you described), it will be necessary to close the browser tab, wait about a minute (for the browZer Service Worker to terminate), and then a new tab should allow you to retry/succeed with valid Ziti credentials.  Bouncing the browser altogether before retry will also work.

The issue is indeed fixed. Thanks!


Optional packages for MinGHC?

Thanks for this installer. Really makes my life on Windows a lot more pleasant.
Just wondering if owner/users would be interested PRs for tricky package installs for say, GTK2/3 and SDL? Seem to be common sore points.
Cheers.

My thoughts are that as long as that don't make the distribution that much bigger, shoving other things in can only help. @snoyberg, thoughts?

I was thinking the same. One of my questions here is whether some larger, optional pieces should be downloaded and installed on demand. (Noting the irony of reinventing yet another package manager.)

Hmm... Becoming a download manager isn't a good plan, generally speaking, since that adds a lot of complexity that I don't want. What about having a cabal package "install-gtk2hs" so a user can do cabal install gtk2hs && gtk2hs-install to get the system set up for them? You can't do that with MinGHC because the standard GHC lacks network and Cabal, but once you have MinGHC there are more options.

Yea GTK is a pretty hefty dependency.
But off the top of my head, building on top of MinGHC, a cabal install gtk2hs would have to:

Obtain/move GTK dev files somewhere visible to the environment.
Sensibly extend PATH to the bin deps. (pkg-config.exe should come along with this.)
Extend the PKG_CONFIG_PATH.
Rebuild alex and happy for additional artifacts that gtk2hs-install can find. (Can we just include these with MinGHC perhaps, or are the artifacts machine dependent? Haven't looked into this yet.)

GTK is big, but useful for a lot of things (not least pkg-config). But it's also a trivial install once you find the right package. Unpacking gtk+-bundle-3.6.4-20130921_win32.zip directly into msys-1.0.1\ puts everything where it needs to be.
The current SDL2 development package for Windows installs itself correctly with make native from msys, but contains a bad include header which breaks cabal-install sdl2; there's a drop-in fix, but of course it takes a bit of effort to find the solution; it's here, and goes into msys-1.0.1/include/SDL2.
I have yet to get the SDL package (SDL1, required for e.g. helm) to install. The mingw32-specific development package doesn't include a pgk-config .pc file. Building it from source does; but that installs everything to /usr/local, which msys doesn't really use. Moving it out is easy enough of course, and there appears to be only one edit necessary to sdl.pc at that point (prefix=/usr/local' -> 'prefix=/usr'), but cabal install sdlstill fails withMissing C library: SDL` -- so this one's definitely sticky.
GLUT and GLFW, required for gloss, both have similar tangles. I haven't even tried with those yet.

@tejon Would you be willing to try the Helm build from source for x86-64? I only install from dev bins. SDL2 addresses the pkg-config deficiencies in case SDL is too much of a nuisance to support. And yay, Helm uses SDL2 since Nov 2013 as well.

My experiences thus far with x64 have led to me no longer being willing to try anything with x64. ;)
You're quite right about Helm using SDL2 now, so perhaps SDL1 can be safely ignored. I don't think anything else of note uses it.

@snoyberg @3noch - we probably need a "story" to tell here. As a recent example, @deech on Twitter asked about supporting https://github.com/deech/fltkhs out of the box. My thoughts:

We can't ship every package ever in the default install. We have to draw the line somewhere. None of these libraries are insanely popular, so the natural place to draw the line is at including none. Perhaps OpenGL and hmatrix would be another place to draw the line.
It would be nice if the users would get it working with MinGHC. That requires downloading it and putting it somewhere "expected". Since we want the flexibility to do that generically, we either need a database of custom rules for common packages, or the packages to tell us what they require.
You really want the package to do that as part of its setup, e.g. during cabal install.

My eventual conclusion is that stack or cabal should take care of setting these packages up, and not MinGHC. @snoyberg, does this sound in scope for stack? If so, something like hmatrix is a nice simple test case - plus my wife uses it so it would make it easier to get computers up and running for her.

If it helps you decide, fltkhs (http://hackage.haskell.org/package/fltkhs) is far from standard, but it is a one dependency GUI binding ( that dependency being the C++ library it binds to ) that works smoothly with the latest MinGHC (http://hackage.haskell.org/package/fltkhs-<IP_ADDRESS>/docs/Graphics-UI-FLTK-LowLevel-FLTKHS.html#g:4). It is much easier to install than gtk2hs on all platforms.
So maybe it isn't a great candidate for bundling since the user can install it by themselves without too much hassle.

FWIW, fltk is also among the packages provided via pacman in the full version of MSYS2. (ref. #63)
While @ndmitchell's suggestion of handling binary dependencies via stack or cabal is attractive from a convenience standpoint, I also think the proliferation of different ways to do the same thing is causing a lot of harm. There's a working solution with a lot of support behind it which covers the entire gnu-toolchain ecosystem rather than just Haskell. Even if we do wind up with convenient self-contained cabal installation at some point, this seems like the right platform to build from just from an interoperability standpoint.

I like the idea of using some kind of an external package management tool (like MSYS2, possibly actually MSYS2). I could picture stack developing this logic in the future if necessary, but shipping the libraries with MinGHC does in fact seem out of scope.
So as I see it, the goal should be "have an easy way to get extra libraries once you've installed MinGHC." Whether that's pacman or something else is a great "next step" discussion, but we should agree on this as the first step before moving forward with that latter discussion.

This might be a pipe dream of mine, but I very much prefer the idea of teaching cabal how to install everything necessary for a library to work. That might even mean having several wrapper packages which merely bundle up a binary for a specific platform and then an umbrella package which conditionally depends on the right binary. I dislike global dependencies very much since they completely break referential transparency!

Doesn't the Cabal API allow this? Granted this isn't supported by the Cabal file, but to my understanding nothing's stopping the library/app developer from building this into their Setup.hs.
That said at least with foreign libraries I don't know this is a good approach. This would circumvent package managers and take control away from devops. In enterprise setting that might be frowned upon.

We now advise people use Stack instead, MinGHC is no longer supported. I suggest taking GTK etc additional libraries to the Stack tracker, where there has been work to integrate Nix for such things.


[AIRFLOW-1389] BigQueryOperator should support createDisposition

Dear Airflow maintainers,
Please accept this PR. I understand that it will not be reviewed until I have checked off all the steps below!
JIRA
[AIRFLOW-1389] BigQueryOperator should support `createDisposition` - ASF JIRA
Description
BigQueryOperator should support createDisposition.
I have added a parameter for configuration.query.createDisposition.

Codecov Report

Merging #2470 into master will increase coverage by 0.03%.
The diff coverage is n/a.

@@            Coverage Diff             @@
##           master    #2470      +/-   ##
==========================================
+ Coverage   69.39%   69.43%   +0.03%
==========================================
  Files         146      146
  Lines       11349    11349
==========================================
+ Hits         7876     7880       +4
+ Misses       3473     3469       -4

Impacted Files
Coverage Δ

airflow/jobs.py
77.12% <0%> (+0.38%)
:arrow_up:

Continue to review full report at Codecov.

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

@criccomini Can you review it, when you have time?

@criccomini Thanks for the feedback. I have modified the order of parameters.

LGTM! Merged.

@criccomini Thank you for merging it!


#410: Add support for  ErrorBoundary

Pull request description
See #410 for the original issue.
Implement a default IErrorBoundaryLogger for TestContextBase (only for .net6.0).
PR meta checklist

[X] Pull request is targeted at main branch for code
or targeted at stable branch for documentation that is live on bunit.dev.
[X] Pull request is linked to all related issues, if any.
[X] I have read the CONTRIBUTING.md document.

Code PR specific checklist

[X] My code follows the code style of this project and AspNetCore coding guidelines.
[ ] My change requires a change to the documentation.

[ ] I have updated the documentation accordingly.

[ ] I have updated the appropriate sub section in the CHANGELOG.md.
[X] I have added, updated or removed tests to according to my changes.

[X] All tests passed.

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

Hi @egil, I have made a PR (#418) but still have some questions (sorry if I'm too clumsy).

No need to be sorry. Im here to guide you.

For making it work we have to change the DotNet6Version to 6.0.0-preview.4.* (in Directory.Build.props).

That's fine. I was going to do that myself.

Should I create a separate a ErrorBoundaryLogger (with a ILoggerFactory dependency), maybe called DefaultErrorBoundaryLogger or something?

That might actually be a better idea than having a "NullLogger", since people that want to e.g. add logging output to their test output can then just register an ILoggerFactory and get the output from the ErrorBoundary as well. Really good idea.

Just for curiosity, why the namespace is called 'Bunit.TestDoubles' ?

The word "test doubles" is a general term for something that replaces "real" things during testing, i.e. https://martinfowler.com/bliki/TestDouble.html.
I noticed that IErrorBoundaryLogger is in the Microsoft.AspNetCore.Components.Web namespace/package, so that actually means bUnits implementaion should be in bunit.web instead. Sorry about not noticing that before.
In that case, you need to register the IErrorBoundaryLogger in the TestServiceProviderExtensions.AddDefaultTestContextServices method, instead of in TestContextBase.

Thanks @egil, I have moved the errorboundary folder to bunit.web (as it depends on Microsoft.AspNetCore.Components.Web).
Added a DefaultBoundaryErrorLogger too.
What impl should we register in AddDefaultTestContextServices ? (ErrorBoundaryNullLogger or DefaultErrorBoundaryLogger)

Do ErrorBoundaryNullLogger have any value anymore?
I do think so, so just remove it and register DefaultErrorBoundaryLogger instead. By default, a NullLoggerFactory is registered, so that means DefaultErrorBoundaryLogger will receive an NullLogger, and then it effectively becomes ErrorBoundaryNullLogger.

Hey @jgoday
It looks like we are almost here. Thanks for your swift reaction to the PR feedback, well done, and apologiens for not being clear in all cases.
There do seem to be some issues with preview 4 and running the tests, at least here on GitHub, which I will have to investigate before merging. If you have any idea what the problem is, do let me know. Otherwise ill take a crack at it ASAP, but it might not before the weekend, as I have a couple of conference presentations I have to prepare.

@egil Thank you so much all your guide/advices/corrections.
Failing tests with 6 preview4 seems to be related to #53297,
It is happening to me too with preview4 and .net5 (5.0.21) in opensuse (only when multitargeting, if I run the tests with -f net6.0 all works correctly).

Failing tests with 6 preview4 seems to be related to #53297,
It is happening to me too with preview4 and .net5 (5.0.21) in opensuse (only when multitargeting, if I run the tests with -f net6.0 all works correctly).

OK, so a (temporary) solution might be to change the verification.yml workflow to call dotnet test three times, once for each targeted framework.

Failing tests with 6 preview4 seems to be related to #53297,
It is happening to me too with preview4 and .net5 (5.0.21) in opensuse (only when multitargeting, if I run the tests with -f net6.0 all works correctly).

OK, so a (temporary) solution might be to change the verification.yml workflow to call dotnet test three times, once for each targeted framework.

If I understand it correctly would be enough to change verification.yml like this
 - name: 🧪 Run unit tests (net3.1)
        run: |
          dotnet test ./tests/bunit.core.tests/bunit.core.tests.csproj -c release --logger GitHubActions -f net3.0
          dotnet test ./tests/bunit.web.tests/bunit.web.tests.csproj -c release --logger GitHubActions -f net3.0
          dotnet test ./tests/bunit.web.testcomponents.tests/bunit.web.testcomponents.tests.csproj -c release --logger GitHubActions  -f net3.0

 - name: 🧪 Run unit tests (net5.0)
        run: |
          dotnet test ./tests/bunit.core.tests/bunit.core.tests.csproj -c release --logger GitHubActions -f net5.0
          dotnet test ./tests/bunit.web.tests/bunit.web.tests.csproj -c release --logger GitHubActions -fnet5.0
          dotnet test ./tests/bunit.web.testcomponents.tests/bunit.web.testcomponents.tests.csproj -c release --logger GitHubActions -f net5.0

 - name: 🧪 Run unit tests (net6.0)
        run: |
          dotnet test ./tests/bunit.core.tests/bunit.core.tests.csproj -c release --logger GitHubActions -f net6.0
          dotnet test ./tests/bunit.web.tests/bunit.web.tests.csproj -c release --logger GitHubActions -f net6.0
          dotnet test ./tests/bunit.web.testcomponents.tests/bunit.web.testcomponents.tests.csproj -c release --logger GitHubActions -f net6.0

Failing tests with 6 preview4 seems to be related to #53297,
It is happening to me too with preview4 and .net5 (5.0.21) in opensuse (only when multitargeting, if I run the tests with -f net6.0 all works correctly).

OK, so a (temporary) solution might be to change the verification.yml workflow to call dotnet test three times, once for each targeted framework.

If I understand it correctly would be enough to change verification.yml like this
 - name: 🧪 Run unit tests (net3.1)
        run: |
          dotnet test ./tests/bunit.core.tests/bunit.core.tests.csproj -c release --logger GitHubActions -f net3.0
          dotnet test ./tests/bunit.web.tests/bunit.web.tests.csproj -c release --logger GitHubActions -f net3.0
          dotnet test ./tests/bunit.web.testcomponents.tests/bunit.web.testcomponents.tests.csproj -c release --logger GitHubActions  -f net3.0

 - name: 🧪 Run unit tests (net5.0)
        run: |
          dotnet test ./tests/bunit.core.tests/bunit.core.tests.csproj -c release --logger GitHubActions -f net5.0
          dotnet test ./tests/bunit.web.tests/bunit.web.tests.csproj -c release --logger GitHubActions -fnet5.0
          dotnet test ./tests/bunit.web.testcomponents.tests/bunit.web.testcomponents.tests.csproj -c release --logger GitHubActions -f net5.0

 - name: 🧪 Run unit tests (net6.0)
        run: |
          dotnet test ./tests/bunit.core.tests/bunit.core.tests.csproj -c release --logger GitHubActions -f net6.0
          dotnet test ./tests/bunit.web.tests/bunit.web.tests.csproj -c release --logger GitHubActions -f net6.0
          dotnet test ./tests/bunit.web.testcomponents.tests/bunit.web.testcomponents.tests.csproj -c release --logger GitHubActions -f net6.0

Maybe it is necessary to triplicate the whole 'verify-bunit' job, to avoid dotnet 6 and 5 conflicts in the same setup.
Should I try it in this PR ?

If I understand it correctly would be enough to change verification.yml like this.

Exactly what I was thinking.

Maybe it is necessary to triplicate the whole 'verify-bunit' job, to avoid dotnet 6 and 5 conflicts in the same setup.

I hope that is not needed. If it is, then I prefer to just add another "level" to the workflow matrix, and have the framework version be a variable from that, which we use in the test and in the setup-dotnet step.

Should I try it in this PR ?

Yes please.

Hmm, no dice it seems. Think net3.0 needs to be netcoreapp3.1, but you can check that locally by running the command yourself.
Otherwise, it does seem like we get into trouble with all the frameworks installed.

I have changed it to include dotnet versions in strategy.matrix, so each test runs in a completely separated dotnet version.
I think it could work this way.

I have changed it to include dotnet versions in strategy.matrix, so each test runs in a completely separated dotnet version.
I think it could work this way.

Thanks for giving this a shoot @jgoday, I think we need to just and see what comes out of the issue you referenced, instead of continue trying to get workarounds working.

Looks like we need to undo the work flow changes and apply the hack mentioned here: https://github.com/dotnet/sdk/issues/18148#issuecomment-860957180

Applied https://github.com/dotnet/sdk/issues/18148#issuecomment-860957180 and tested locally.
Reverted verification.yml workflow too.
Need to specify RemoveLoggingAnalyzer individually in bunit.testassets.csproj (to run it before RazorCompileComponentDeclaration because being a Microsoft.NET.Sdk.Razor project)

Awesome, thank you for all the hard work.


nvim queries: Highlight built-in commands

I thought it'd be great to highlight built-in commands differently to custom commands similar to what Nu does in the prompt line. It should be fairly easy to use the oneliner included in the comments on later versions of Nu to update the list.
Reference:

Bash: https://github.com/nvim-treesitter/nvim-treesitter/blob/b694628cbe513ae8bcf9fb5ac791a73ca3fd5320/runtime/queries/bash/highlights.scm#L169-L176
Fish: https://github.com/nvim-treesitter/nvim-treesitter/blob/b694628cbe513ae8bcf9fb5ac791a73ca3fd5320/runtime/queries/fish/highlights.scm#L115-L124

Core built-ins are filtered out because they are already specified higher up in the file as keywords.
All commands that aren't in the list are still highlighted with @function

I like the idea, but it seems like there's a lot of commands missing like the commands with spaces in the name, also plugins and ones like registry query that only exist on Windows. I think if we can get a complete list, this will be a nice add.  I have to do the same thing for the vscode extension so I may have a script laying around somewhere.

With the vscode-extension I just do this on windows and mac/linux, combine the files and sort uniq them for the complete list. You also have to have the plugins installed and registered when doing this.
scope commands | where type == built-in | get name | to text | save mac-cmds.txt

I like the idea, but it seems like there's a lot of commands missing like the commands with spaces in the name

I didn't see an easy way to include them because subcommands are parsed as arguments and not part of the command itself. If we match the command and subcommand separately there will be incorrect highlighting (eg my-command split vs str split).

also plugins (unless we don't want them)

I'm not sure if that's a good idea, wouldn't that be different for everyone? The highlight file will have to be the same.

and ones like registry query that only exist on Windows

Ah, good point!

I'm also not sure why core commands are excluded.

They are already specified in the highlight file and highlighted as keywords, which I've explained in the PR description :)

Core built-ins are filtered out because they are already specified higher up in the file as keywords.

ok, let's move forward with this then. thanks!

I've got an idea how built-in subcommands can also be highlighted, I'll PR if it works -- indeed, for completeness highlighting both words would be the ideal situation.

@fdncred I've gotten in to work, but it's a little verbose -- though the simplest I could find:

Here, str split and str another are the only two valid built-in commands, where function.builtin is orange and function is blue.
The .subcommand part is only for descriptive purposes in the highlight.scm file, because the two groups must be different for the comparison to work properly. It makes use of Neovim's fallback mechanism, where if a highlight group A.B.C is not found, it tries A.B, then A until a color is found.
With this method, all subcommands for all built-in commands will have to be repeated like the first two lines above.
What do we think?

What do we think?

"we" like it. I'd go for it because it's better than what we had before.


Make name of header containing DN for certificate authentication configurable via props.

When using mTLS (2-way SSL) certificate based authentication for datafeed, the SSL tunnel is terminated at a load balancer.
The DN is extracted by the LB and sent onto Stroom/Proxy in a special header.  Currently, this header is hard coded to be the one used by NGIX.  It must be made configurable to enable it to be used with other types of LB.

See stroom.util.cert.CertificateExtractor, which is used to extract a DN for both datafeed and internal IDP auth.
This
    private static final String X_SSL_CLIENT_S_DN = "X-SSL-CLIENT-S-DN";

needs to be set in config.

Possible overlap with this issue


Use the latest version of the Shopify Sarama client lib

Signed-off-by: Matthias Wessendorf<EMAIL_ADDRESS>Fixes #

Proposed Changes

updating to latest release

Release Note

Docs

/assign @travis-minke-sap

@travis-minke-sap I had to change a test:
https://github.com/knative-sandbox/eventing-kafka/pull/203/commits/51b4d02900aa77df600c46b3004f045a23354762
since Sarama changed the default version on the z-stream release :smirk:
See:
https://github.com/Shopify/sarama/commit/921cf9c0761efbde58b450edb81e67ee07498b6e#diff-0e426a43248661127a0c0ee115aef7a1093b635f8993b3f7ebb1dd9f05b8f249L489-R489

/lgtm
Thanks Matthais - always good to stay current!


Some litle anticheat upgrades.

This will not work. Calling tostring is required since the value of script is an Instance, not a string. We could also do script.Name, but it doesn't matter.


Add a manual for volar extension like rust-analyzer

Maybe we should write a manual  like https://rust-analyzer.github.io/manual.html, additionally wo can centralize some common issue like https://github.com/johnsoncodehk/volar/issues/682, it maybe reduce some duplicate issue.

Sorry for the false hope, I don't think we'll have it in the end.

Maintaining a complete manual is way beyond what we can afford, and our project architecture is constantly changing.
I don't think it helps much to avoid duplicate issues, we actually don't get many duplicate issues with a large time span, and I think very few people read it before opening an issue.

As an alternative, I will continue to improve the readme for each package. Thank you for your suggestion.


[FIX] Add itemWidth to list of responsive props

[ #411] Fixes this issue

thanks @Romcol
I opened https://github.com/brainhubeu/react-carousel/pull/472 instead because only in the main repo, deployment to a testing environment works.
Then we'll test and review your solution.
Btw. why did you open this PR from my-mooc fork and not your own fork?

Ok thx! The way to open a PR was unclear to me so I did this, not sure it's right.
my-mooc is a start-up I work for, I have used their repository, but I could have used my own for sure!
Cheers


Enhance HA of critical application-connector workloads

Description

During chaos testing run, which simulated pod failures (kubelet) per AZ on all nodes belonging to the specific AZ, it was pointed out that critical application-connector workloads were all traniently down, either in pending state or in init state. The reason is that to all replicas were being scheduled in nodes belonging to the same AZ, and kept being do so during pod termination/eviction.
For both central-application-connectivity-validator and central-application-gateway running on enterprise plan runtimes (having at least 3 nodes in 2 AZs), ensure that the pods are configured with either topology spread constraints, or pod anti affinity rules to preferably

spread the replicas on different nodes, and furthermore
spread the replicas on nodes belonging to different availability zones.

Furthermore ensure that Pod Disruption Budget is configured for both workloads requiring minAvailable: 1 or maxUnavailable: 1 to ensure that during controlled eviction / maintenance, there is always at least one replica is ready to serve the traffic.
Reasons

Higher resiliency and availiability during node level and zones level failure scenarios.
Attachments

WE are currently completely blocked with replacing our Provisioner by KIM. But it's in our backlog and we will pick it up in the coming months.

Example for Anti-Affinity: https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/#an-example-of-a-pod-that-uses-pod-affinity
Example for TopologySpreadConstraint: https://github.com/kyma-project/infrastructure-manager/issues/364#issuecomment-2331201265


Command line to uninstall app

Will be used by the updater to remove the app, before replacing, if there is a permissions problem, such as the app being owned by a different user.

@patrickxb ?


bug fix in 'isLoading' spinner in 'remote' mode

I have a situation where I make ajax call and it fails in the 'remote' mode and the 'loading' bar still appears in the table. Lets consider the scenario, i make a ajax request as follows,
    axios.get(url)
    .then(function(response){
        this.rows = response.data.data;
    }).catch(error => {
        // possibility 1 (which is not working)
        this.isLoading = false;
       // possibility 2 (my current work around)
       this.row = cloneDeep(this.row);
    });

possibility 1 : changing the isLoading status to false which is potentially not working
Reason :
Table.vue L472
  isTableLoading() {
     return this.isLoading || this.tableLoading;
   },

Let say i sorted a column and it sets 'this.tableLoading' to true and I make a ajax call to get a new set of data, but unfortunately it fails and i manually change 'this.isLoading' to 'false' from parent component. Now, in 'VueGoodTable' component, this.isLoading is false and this.tableLoading is still true, so the computed value of 'isTableLoading' is still be true, which means it wont hide the loading indicator.
possibility 2 : Making a deep copy of my old data and setting it to this.row which triggers the 'row' watcher in VueGoodTable component potentially hiding the indicator. But this is not the right way to control loading indicator IMHO.
My solution:
In the parent component make a 'isLoading' prop with '.sync' modifier which listens for events from vue table to change the state of loading indicator.
...
<vue-good-table
  mode='remote'
  ref="my-table"
  :isLoading.sync="isLoading"
  @on-column-filter="onColumnFilter"
  @on-select-all="onSelectAll"
  @on-sort-change="onSortChange"
  @on-page-change="onPageChange"
  @on-per-page-change="onPerPageChange"
  @on-search="onSearch"
  @on-selected-rows-change="onSelectChanged"
  :columns="columns"
:rows="rows">
...
data() {
    return {
      isLoading:false,
   }
}
...

In the VueGoodTable component, just emit the event 'update:isLoading' with true or false to show or hide the loading indicator, which I modified already in the current source code. Please have a look at the changes and accept this pull request.

+1