Support vm dynamic scaling with kvm

Description
ACS has an API to scale VMs scaleVirtualMachine, however dynamic scale of VMs is limited to XenServer and VMWare.
This PR intends suport live scale for VMs on KVM.
When we are using a custom service offerings, KVM's XML only receives the boot memory, but with this changes it will receive the max values defined in the service offerings. If it is a unconstrainced service offering, max values will be the vm.serviceoffering.cpu.cores.max and vm.serviceoffering.ram.size.max values . If they are 0, max values will be host or last host capacities.
Types of changes

[ ] Breaking change (fix or feature that would cause existing functionality to change)
[x] New feature (non-breaking change which adds functionality)
[ ] Bug fix (non-breaking change which fixes an issue)
[ ] Enhancement (improves an existing feature and functionality)
[ ] Cleanup (Code refactoring and cleanup, that may add test cases)

Feature/Enhancement Scale or Bug Severity
Feature/Enhancement Scale

[ ] Major
[x] Minor

How Has This Been Tested?
I created unit tests for the code that is being introduced here. Moreover, it has been tested locally in a test lab.

In this PR: https://github.com/apache/cloudstack/pull/4341
The functionality was added that the rootDiskSize can be configured in an Offering.
When we scale the VM we should also scale the rootdisk's size if that is bigger in the new offering.
This PR does not seem to do that. We probably want that added as well.
I really like this PR though. Very much welcome!

@wido We already have the API resizeVolume, which is designed to scale the root disk as well as data disks, and it works with VMs in stopped or running states.
This API scaleVirtualMachine was first designed to scale computing resources (memory, cpuNumber and cpuSpeed). I think we should not mix these two concepts here.

@wido We already have the API resizeVolume, which is designed to scale the root disk as well as data disks, and it works with VMs in stopped or running states.
This API scaleVirtualMachine was first designed to scale computing resources (memory, cpuNumber and cpuSpeed). I think we should not mix these two concepts here.

After reading the code and comments from @GabrielBrascher I understand this code only works with custom service offerings, correct?
If so, please disregard my comments.
Otherwise, with PR #4341 merged we now have the option to make the root disk size a condition of the service offering. Thus when changing the offering one needs to make sure that the root disk is also resized according to the new offering.

Can anyone review this?

Can anyone review this?

Packaging result: :heavy_check_mark: centos7 :heavy_check_mark: centos8 :heavy_check_mark: debian. SL-JID 297

@GabrielBrascher could you review this?

Trillian test result (tid-1024)
Environment: kvm-centos7 (x2), Advanced Networking with Mgmt server 7
Total time taken: 45222 seconds
Marvin logs: https://github.com/blueorangutan/acs-prs/releases/download/trillian/pr4878-t1024-kvm-centos7.zip
Intermittent failure detected: /marvin/tests/smoke/test_internal_lb.py
Intermittent failure detected: /marvin/tests/smoke/test_kubernetes_clusters.py
Intermittent failure detected: /marvin/tests/smoke/test_outofbandmanagement.py
Intermittent failure detected: /marvin/tests/smoke/test_routers_network_ops.py
Intermittent failure detected: /marvin/tests/smoke/test_vpc_redundant.py
Smoke tests completed. 85 look OK, 3 have error(s)
Only failed tests results shown below:

Test
Result
Time (s)
Test File

test_02_internallb_roundrobin_1RVPC_3VM_HTTP_port80
Failure
546.86
test_internal_lb.py

test_01_RVR_Network_FW_PF_SSH_default_routes_egress_true
Failure
336.76
test_routers_network_ops.py

test_02_RVR_Network_FW_PF_SSH_default_routes_egress_false
Failure
339.90
test_routers_network_ops.py

test_02_redundant_VPC_default_routes
Failure
1177.75
test_vpc_redundant.py

test_03_create_redundant_VPC_1tier_2VMs_2IPs_2PF_ACL_reboot_routers
Failure
499.68
test_vpc_redundant.py

@GutoVeronezi, I've tested this with few use cases, and it works as expected. However, I've hit one problem, but not sure if it has to be fixed in this PR:

Create unconstrained service offering
disable enable.dynamic.scale.vm
Deploy VM with the new offering
enable enable.dynamic.scale.vm
update VM with isdynamicallyscalable=true
try to scale the VM

This error occurs

2021-06-22 07:46:02,730 WARN  [resource.wrapper.LibvirtScaleVmCommandWrapper] (agentRequest-Handler-5:null) (logid:8f9fc53e) Unable to scale com.cloud.agent.api.to.VirtualMachineTO@495dee84 memory to [2097152 KiB] and cpu cores to [4] due to [unsupported configuration: cannot use/hotplug a memory device when domain 'maxMemory' is not defined].
org.libvirt.LibvirtException: unsupported configuration: cannot use/hotplug a memory device when domain 'maxMemory' is not defined

@slavkap thanks for testing this feature.
QEMU demands the DOM to be prepared to support CPU scaling and hotplug memory. This preparing is made on VM deploy. ACS verifies if the service offering is dynamic, VM has dynamic scale enabled and global setting enable.dynamic.scale.vm as true:
https://github.com/apache/cloudstack/blob/607dc234adb16043bd8a2851b56da3e129e90139/server/src/main/java/com/cloud/hypervisor/KVMGuru.java#L180-L186
If they all are enabled and there is a difference between current and max (memory/CPU), the DOM is prepared with the following code:
https://github.com/apache/cloudstack/blob/607dc234adb16043bd8a2851b56da3e129e90139/plugins/hypervisors/kvm/src/main/java/com/cloud/hypervisor/kvm/resource/LibvirtVMDef.java#L268-L281
Therefore, if you deploy the VM with the global setting as false, it will not prepare the DOM and will result in an error, as org.libvirt.LibvirtException: unsupported configuration: cannot use/hotplug a memory device when domain 'maxMemory' is not defined, when trying to scale it.

@GutoVeronezi, I understand your point, but I think this is kind of a problem for the users. I mean that the update of the virtual machine to support dynamic scaling has to be disabled in this case, or when scaling such a VM, the maxMemory tag has to be set to the Domain (I don't know if this option is possible)

@GutoVeronezi, I understand your point, but I think this is kind of a problem for the users. I mean that the update of the virtual machine to support dynamic scaling has to be disabled in this case, or when scaling such a VM, the maxMemory tag has to be set to the Domain (I don't know if this option is possible)

As we are changing the settings between deploy and scaling, it creates an inconsistency in the validations.
About manually adding the maxMemory tag at runtime, we would need to change/add some others definitions too, like numa cells in cpu; Also Libvirt do not allow to resize maximum memory on active domains.
Do you have any suggestion about how we can solve this?

@GutoVeronezi, the only safe option I can think of at the moment is when we update the virtual machine to support dynamic scaling, which is to tell the user that the VM should be stopped (for KVM hypervisors). At the start of the VM, the maxMemory will be set.

@slavkap I added a validation when dynamic scaling the VM and returned a proper message to the user, in case it is not prepared, that I think may direct they.

Thanks, @GutoVeronezi! :)

@slavkap @DaanHoogland I pushed new changes refactoring LibvirtScaleVmCommandWrapper and covering it with better unit tests.

Packaging result: :heavy_check_mark: el7 :heavy_check_mark: el8 :heavy_multiplication_x: debian. SL-JID 603

Trillian test result (tid-1336)
Environment: kvm-centos7 (x2), Advanced Networking with Mgmt server 7
Total time taken: 35550 seconds
Marvin logs: https://github.com/blueorangutan/acs-prs/releases/download/trillian/pr4878-t1336-kvm-centos7.zip
Intermittent failure detected: /marvin/tests/smoke/test_vpc_vpn.py
Smoke tests completed. 89 look OK, 0 have error(s)
Only failed tests results shown below:

Test
Result
Time (s)
Test File

tests successfull but conflict with new merges. @GutoVeronezi can you have a look?

@DaanHoogland done, thanks!

Packaging result: :heavy_multiplication_x: el7 :heavy_multiplication_x: el8 :heavy_multiplication_x: debian. SL-JID 651

Packaging result: :heavy_check_mark: el7 :heavy_check_mark: el8 :heavy_check_mark: debian. SL-JID 661

Trillian test result (tid-1393)
Environment: kvm-centos7 (x2), Advanced Networking with Mgmt server 7
Total time taken: 34439 seconds
Marvin logs: https://github.com/blueorangutan/acs-prs/releases/download/trillian/pr4878-t1393-kvm-centos7.zip
Smoke tests completed. 89 look OK, 0 have error(s)
Only failed tests results shown below:

Test
Result
Time (s)
Test File

@slavkap does this LGTY? cc @nvazquez .

@DaanHoogland, I didn't check the latest changes. I will do it later today and let you know

@DaanHoogland, I've tested with the latest changes and it works as expected. I have only one suggestion, @GutoVeronezi, if you can add in VirtualMachineManagerImpl::reConfigureVM to check for RuntimeException.
else if (jobResult instanceof RuntimeException) {
        throw (RuntimeException)jobResult;
}

Someone on the mailing list complained that CS does not send proper error msgs to the users in some cases.

{
"accountid": "b3e15775-77f4-11eb-a307-02000a0201ba",
"cmd": "org.apache.cloudstack.api.command.admin.vm.ScaleVMCmdByAdmin",
"completed": "2021-07-30T10:42:43+0300",
"created": "2021-07-30T10:42:42+0300",
"jobid": "71c2811b-76b9-47fc-b678-e8b737c46d2e",
"jobprocstatus": 0,
"jobresult": {
"errorcode": 530,
"errortext": "Unhandled exception"
},
"jobresultcode": 530,
"jobresulttype": "object",
"jobstatus": 2,
"userid": "b3e18e06-77f4-11eb-a307-02000a0201ba"
}

{
"accountid": "b3e15775-77f4-11eb-a307-02000a0201ba",
"cmd": "org.apache.cloudstack.api.command.admin.vm.ScaleVMCmdByAdmin",
"completed": "2021-07-30T11:10:21+0300",
"created": "2021-07-30T11:10:20+0300",
"jobid": "b4a42cfb-c37f-43ad-aac1-d07a0800bf06",
"jobprocstatus": 0,
"jobresult": {
"errorcode": 530,
"errortext": "Unable to scale vm due to Unable to scale VM {id: "244", name: "i-2-244-VM", uuid: "917bea0b-78a2-4923-b0a6-8a056c641cc8", type: "User"} memory to [4194304 KiB] and CPU cores to [4] due to [The VM {id: "244", name: "i-2-244-VM", uuid: "917bea0b-78a2-4923-b0a6-8a056c641cc8", type: "User"} is not prepared for dynamic scaling. To be prepared, the VM must be deployed with a dynamic service offering, VM dynamic scale enabled and global setting "enable.dynamic.scale.vm" as "true". If you changed one of these settings after deploying the VM, consider stopping and starting it again to prepared it to dynamic scaling.]."
},
"jobresultcode": 530,
"jobresulttype": "object",
"jobstatus": 2,
"userid": "b3e18e06-77f4-11eb-a307-02000a0201ba"
}

@DaanHoogland, I've tested with the latest changes and it works as expected. I have only one suggestion, @GutoVeronezi, if you can add in VirtualMachineManagerImpl::reConfigureVM to check for RuntimeException.
else if (jobResult instanceof RuntimeException) {
        throw (RuntimeException)jobResult;
}

...

@slavkap Nice catch, done! Thanks.

Thanks, @GutoVeronezi :)

@blueorangutan package

@DaanHoogland a Jenkins job has been kicked to build packages. I'll keep you posted as I make progress.

Packaging result: :heavy_check_mark: el7 :heavy_check_mark: el8 :heavy_check_mark: debian.

@GabrielBrascher done, thanks.

@blueorangutan package

@DaanHoogland a Jenkins job has been kicked to build packages. I'll keep you posted as I make progress.

Packaging result: :heavy_check_mark: el7 :heavy_check_mark: el8 :heavy_check_mark: debian :heavy_check_mark: suse15. SL-JID 952

@blueorangutan test

@DaanHoogland a Trillian-Jenkins test job (centos7 mgmt + kvm-centos7) has been kicked to run smoke tests

Trillian test result (tid-1736)
Environment: kvm-centos7 (x2), Advanced Networking with Mgmt server 7
Total time taken: 33654 seconds
Marvin logs: https://github.com/blueorangutan/acs-prs/releases/download/trillian/pr4878-t1736-kvm-centos7.zip
Intermittent failure detected: /marvin/tests/smoke/test_snapshots.py
Smoke tests completed. 89 look OK, 0 have error(s)
Only failed tests results shown below:

Test
Result
Time (s)
Test File


Update meta-theme-color.json

Theme Color supported partially in Chrome: PWA standalone mode. Added note for this.

Thanks!


Building page 404 Error

From the featured section on the main page -- building page doesn't exist.  Website looks good though - nice work.

@atheycreek/support I just fixed this! @davidfrost We need you to update the building page with stats ASAP showing that we raised all the $$$we needed to.

@atheycreek/support I just fixed this! @davidfrost We need you to update the building page with stats ASAP showing that we raised all the $$$we needed to.

I just did this for now. Thanks!
[image1.PNG]
On Jan 1, 2015, at 3:31 PM, Jonathan Simcoe <notifications<EMAIL_ADDRESS>wrote:
@atheycreek/supporthttps://github.com/orgs/atheycreek/teams/support I just fixed this! @davidfrosthttps://github.com/davidfrost We need you to update the building page with stats ASAP showing that we raised all the $$$we needed to.
—
Reply to this email directly or view it on GitHubhttps://github.com/atheycreek/atheycreek/issues/29#issuecomment-68502247.

I just did this for now. Thanks!
[image1.PNG]
On Jan 1, 2015, at 3:31 PM, Jonathan Simcoe <notifications<EMAIL_ADDRESS>wrote:
@atheycreek/supporthttps://github.com/orgs/atheycreek/teams/support I just fixed this! @davidfrosthttps://github.com/davidfrost We need you to update the building page with stats ASAP showing that we raised all the $$$we needed to.
—
Reply to this email directly or view it on GitHubhttps://github.com/atheycreek/atheycreek/issues/29#issuecomment-68502247.

Image didn't show up in GitHub.

Image didn't show up in GitHub.

http://atheycreek.com/about/building/
On Jan 1, 2015, at 3:50 PM, Jonathan Simcoe <notifications<EMAIL_ADDRESS>wrote:
Image didn't show up in GitHub.
—
Reply to this email directly or view it on GitHubhttps://github.com/atheycreek/atheycreek/issues/29#issuecomment-68502703.

http://atheycreek.com/about/building/
On Jan 1, 2015, at 3:50 PM, Jonathan Simcoe <notifications<EMAIL_ADDRESS>wrote:
Image didn't show up in GitHub.
—
Reply to this email directly or view it on GitHubhttps://github.com/atheycreek/atheycreek/issues/29#issuecomment-68502703.

:+1:

:+1:


There were problems importing some of your data

Getting this error: There were problems importing some of your data
Can't see any further details on my debug bar.
The CSV file is a direct dump from a table in the database.

@patricktsg Is there any chance that you can send a copy of the file you're trying to import?

Ahhhh, think I have some broken CSV data - I didn't see it previously but cspecial characters and html tags were busting the columns.
Any suggestions for importing cols with a lot of HTML tags?

I'm having the same issue.  My csv is super simple so I'm surprised it would be having any issues.
Does this tool print out an error log somewhere?

Having this issue on a super-duper simple CSV file which is surprising. I am sure that the same format file did indeed work previously as well... Would be good to get some insight on this issue...

I couldn't immediately find anything in logs (Laravel, PHP or web server) so I had to use the new Laravel dump-server and dump() out the $this->importer->failures() and $this->importer->errors() in the vendor/.../ImportController.php
Surely some easier way? Like a "verbosity" config setting for the package?

Thanks for reporting issues folks. Please note that this package is still pre-release (v0.1 only) so there are bound to be issues.
If you can possibly share the data files that you're experiencing issues with @barnomics and @danielrhodeswarp then I can investigate the problems and potentially come up with a fix for everyone.
Also, if you're keen to dig and support the ongoing development of the package, you're quite welcome to send in Pull Requests :) I don't have an awful lot of time to spend on developing this package for free.

I actually dug into your code to log what was wrong and figured it out.  My database has a constraint which was not included in my CSV ... so MYSQL was complaining about that (but it was not apparent to me)
For example my structure looks like ...
name | value | contact_id (foreign key)
and my CSV looks like
name,value
joe,500
tom,1000

Possible improvements:

Better error reporting.
Ability to merge data with existing Resources instead of only adding new ones.

On the plus side, by digging into the code I discovered laravel-excel, which I was able to use to do exactly what I needed (quite easily I might add...)
Thank you!

Good sleuthing @barnomics. At the moment, this package will only bump into your Nova validation, so if your database has rules that are not encoded well at the application level then you're going to hit issues.
I agree that better error reporting is a must and that would definitely be necessary for v1.
Merging data is going to be trickier and require users to have a deeper understanding of their data, an enhanced user interface and a fully rounded import process.

This is effectively part of/a duplicate of #2

It's sometimes maatwebsite/excel (especially the DefaultValueBinder) doing weird things with the reading of the CSV file. Which then obviously causes issues when trying to import into the Eloquent backend data storage.


web app config files overwritten by web job deployment

We have a web app and a webjob that need to be deployed to an App service.
We use one "Azure App Service Deploy" task for each one of them to do this.
They both have Config Folder containing some xml files (different contents for each project)
Web App :

WebJob

The web app gets deployed before the webjob in the same release.
When the web job is deployed, the webapp's Config folder contents get replaced by the web job's config files.
Here is an edited section of the webjob deployment task

2016-12-26T09:56:24.8650899Z Info: Adding file (WebAppName\app_data\jobs\triggered\WebJobName\zh-Hant\Microsoft.Data.Services.Client.resources.dll).
2016-12-26T09:56:24.8680900Z Info: Adding file (WebAppName\app_data\jobs\triggered\WebJobName\zh-Hant\System.Spatial.resources.dll).
2016-12-26T09:56:24.8680900Z Info: Adding file (WebAppName\app_data\jobs\triggered\WebJobName\zxing.dll).
2016-12-26T09:56:24.8680900Z Info: Adding file (WebAppName\app_data\jobs\triggered\WebJobName\zxing.pdb).
2016-12-26T09:56:24.8680900Z Info: Adding file (WebAppName\app_data\jobs\triggered\WebJobName\zxing.xml).
2016-12-26T09:56:24.8680900Z Info: Updating file (WebAppName\bin\Config\log4net.config).
2016-12-26T09:56:24.8700904Z Info: Updating file (WebAppName\bin\Config\secrets.config).
2016-12-26T09:56:24.8700904Z Info: Updating file (WebAppName\bin\ConnectionStrings.config).
2016-12-26T09:56:24.8700904Z Info: Updating file (WebAppName\bin\WebJobName.exe).
2016-12-26T09:56:24.8700904Z Info: Updating file (WebAppName\bin\Settings.job).
...
2016-12-26T09:56:24.8710902Z Info: Updating file (WebAppName\bin\Web.config).
2016-12-26T09:56:24.8710902Z Info: Updating file (WebAppName\Config\log4net.config).
2016-12-26T09:56:24.8710902Z Info: Updating file (WebAppName\Config\secrets.config).
2016-12-26T09:56:24.8710902Z Info: Updating file (WebAppName\ConnectionStrings.config).
2016-12-26T09:56:24.8710902Z Info: Adding ACL's for path (WebAppName)

Is this a normal behaviour ?

Sorry for the issue.
When we deploy App Service, the content you gave in the task gets uploaded to the corresponding mapping path of the App Service.
So now when you are deploying Web Job here also the content gets uploaded to mapping root folder. To avoid over writing of the App Service files you could generate the Web Job build out to have actual job exes in root folder of something like this App_Data\Jobs\Continuous<WebJobName>

For the moment, we just inverted the tasks order, since Config folder in the app's root is only used by the web app. The web job use the one in the bin folder I think. Anyway, for this particular App Service, all the necessary settings are in the azure app settings.
How can we put the job exes in the App_Data during the build definition ?
It is quiet troublesome to do it in Pre/Post-Build script since the "webjob-publish-settings.json" configuration wouldn't be taken into account.
Is there a plan to change this behaviour or to package a web app's deployment and its webjobs into a single task ?

The following post describes how to add a web job to existing solution with web app. Follow the post to generate msbuild output.
https://blogs.msdn.microsoft.com/tfssetup/2016/05/18/deploying-and-schedule-azure-webjobs-from-vsts-to-azure-web-app-with-bonus-cron-scheduling/
Build output of the webapp zip contains both the web app and web job. I tried this on a sample project here is the output for that app.

Now use App Azure App Service and deploy the App Service using this zip file. Now both App Service and corresponding job should be updated. Can you try this works for you not and let us know?

Actually, that's partially what we are doing.
The msbuild generates both webjob and web app zip files
But we have 2 deploy tasks :

one that uses the web app zip file
one that uses the web job zip file

So only the first task is needed to deploy both the web app and web job ?
Should we specify all zip files in one task ?
How can we do that (multple targets for one task) ?

@Sshnyari , Building the solution with MSBuild generates zip for Web App and web jobs.
Deploying only the web app zip file is sufficient as it contains the web job files. You can view the web job files in web app zip file inside app_data folder.
Please do follow the steps provided by @mvvsubbu ,and let us know if u face any issue.

It doesn't seem to work. The Web app zip file doesn't contain an app_data folder.
Here is the msbuild arguments we use :
/p:DeployOnBuild=true /p:WebPublishMethod=Package /p:SkipInvalidConfigurations=true /p:PackageLocation="$(build.stagingDirectory)" /p:SkipExtraFilesOnServer=true

@Sshnyari , Can u send the debug logs logs of Build (Package creation)  and Release (App Service Deploy Task)  to<EMAIL_ADDRESS>with this issue link?

To deploy web job to Azure App Service, it must be added as a part of Web App solution (It shouldn't be created seperately).
Web Job can be added to Web App solution using the below step.

You can find the web job bundled with web app solution in Web Deploy package using these steps.

@vincentdass  A related question to this thread:
When using a single .zip package that contains both the web app and one or more web jobs. How do I replace the parameters of those web jobs?
The Deploy Azure Web App task only takes a single .SetParameters.xml file and that contains the settings from the Web App only. Any hints?
Thanks,
--Neno

@NenoLoje, you can use XML Variable substitution to update values in web.config / WebJob.exe.config.

The values are updated only in *.config files and it may get overridden by parameters.xml during deployment (MSDeploy).


Ahelp AntiSpam

About the PR

Adds a cooldown for ahelp (2 seconds), adds an automatic moderating system that checks if posts are spammed or not.

Also adds ccvar to disable AntiSpam system and change cooldown time.

Organizes ccvars subs

Why / Balance

This is a measure to prevent spam in ahelp to reduce the work of the administration.
Technical details

Modificates server side Bwoink system, where checks cooldown and spam
Media

Requirements

[x] I have read and am following the Pull Request and Changelog Guidelines.
[x] I have added media to this PR or it does not require an ingame showcase.

Breaking changes

Changelog

:cl: Rinary

add: Added ahelp cooldown(2 seconds by default). Added automatic antispam system at ahelp.

This is nice but I have a habit of sending messages (even in discord/whatever app I use to communicate) in chunks.

This is nice but I have a habit of sending messages (even in discord/whatever app I use to communicate) in chunks. This will be hell for me.

bruh, 2 seconds cooldown it's normal cooldown what don't create problems and server owners can change it

As an admin I approve this PR. Sometimes we'll question a raider that hasn't made it completely obvious they are a raider and will just AHK or script slurs in the ahelp window.

I'd like this PR, cuz some people do just kind of spam single words at a time while scared of the bwoinkhammer.
Just an aside on the CL, I don't know if that part needs to be public or if it should be tucked into Admin CL.

I'd like this PR, cuz some people do just kind of spam single words at a time while scared of the bwoinkhammer.
Just an aside on the CL, I don't know if that part needs to be public or if it should be tucked into Admin CL.

I second this, have had people say like 200 words with 2 across individual messages each time and it made me want to explode

I'd like this PR, cuz some people do just kind of spam single words at a time while scared of the bwoinkhammer.
Just an aside on the CL, I don't know if that part needs to be public or if it should be tucked into Admin CL.

The segment about the delay should be included publicly. However the "anti-spam" stuff really isn't needed for non-staff

Hello, thank you for your contribution but there is already a way coded into Bwoinksystem to rate limit ahelp messages, via _rateLimit and the AhelpRateLimitCount and AhelpRateLimitPeriod cvars. A more restrictive rate limit should be achieved simply by tuning those cvars. I consulted the admin team and -just like on this PR- there was some support for changing the numbers to make the limit kick in sooner, but it was not generally seen as a big issue in ahelp. As such, I can't say how quickly a change to that tuning would be evaluated. They have, however, rather uniformly asked to not introduce an automatic ban functionality, citing the required possibility of false positives, even if low, and the need to review all automatic actions anyway, making the convenience somewhat moot.
Seeing how this essentially takes out everything the PR was doing, I vote to close this PR.
I hope this will not deter you from further contributions. Before noticing the existing functionality I looked through the code and it looked good from a technical viewpoint

Bruh, well yeah, we don't see it as an optional feature in the game, after all you are one project right?  And automatically ban can disabled by cvar

Hello, thank you for your contribution but there is already a way coded into Bwoinksystem to rate limit ahelp messages, via _rateLimit and the AhelpRateLimitCount and AhelpRateLimitPeriod cvars. A more restrictive rate limit should be achieved simply by tuning those cvars. I consulted the admin team and -just like on this PR- there was some support for changing the numbers to make the limit kick in sooner, but it was not generally seen as a big issue in ahelp. As such, I can't say how quickly a change to that tuning would be evaluated. They have, however, rather uniformly asked to not introduce an automatic ban functionality, citing the required possibility of false positives, even if low, and the need to review all automatic actions anyway, making the convenience somewhat moot.
Seeing how this essentially takes out everything the PR was doing, I vote to close this PR.
I hope this will not deter you from further contributions. Before noticing the existing functionality I looked through the code and it looked good from a technical viewpoint

Bruh, well yeah, we don't see it as an optional feature in the game, after all you are one project right?  And automatically ban can disabled by cvar

That's a needlessly hostile way to say "I would still like to use this downstream". And I'm not your bruh. But sure, one moment

That's a needlessly hostile way to say "I would still like to use this downstream".

I was just expressing my displeasure towards your one-sided consideration of my PR, first of all it's worth remembering that your project is huge and has a ton of forks that get all these changes and if this feature doesn't work for you, it might work for another project that has a hard time dealing with raiders

And I'm not your bruh.

'Bruh' it this context is not like 'bro', I wasn't addressing you, it was in the context of the reaction

That's a needlessly hostile way to say "I would still like to use this downstream".

I was just expressing my displeasure towards your one-sided consideration of my PR, first of all it's worth remembering that this project is huge and has a ton of forks that get all these changes and if this feature doesn't work for you, it might work for another project that has a hard time dealing with raiders

And I'm not your bruh.

'Bruh' it this context is not like 'bro', I wasn't addressing you, it was in the context of the reaction


Research usefuleness of making LinkingIterator aware of expected table id

While working on #1260 I was thinking it may be worthwhile if when Ample knows about a specific table id it passes that down to LinkingIterator.  LinkingIterator could possibly use this for stronger sanity checks.

No activity in over 3 years so closing, can be re-opened if still relevant.


Unable to Register Pinger Test Application

I downloaded the service-fabric-yarp.zip and followed the instructions in deploying YARP using PowerShell. That looks to have deployed correctly. We wanted to test out the YARP deployment by using the pinger test application provided. When I get to the step Register-ServiceFabricApplicationType -ApplicationPathInImageStore pinger-yarp, I get the below error:
Register-ServiceFabricApplicationType : The BuildLayout of the application in S:\SvcFab\ImageBuilderProxy\AppType\d2dbaf41-1f22-4fab-b012-5a52b7e29487 is invalid. Pinger.Code is missing for service PingerService.
At line:1 char:1
+ Register-ServiceFabricApplicationType -ApplicationPathInImageStore pi ...
+ CategoryInfo: InvalidOperation: (Microsoft.Servi...usterConnection:ClusterConnection) [Register-ServiceFabricApplicationType], FabricException
+ FullyQualifiedErrorId : RegisterApplicationTypeErrorId,Microsoft.ServiceFabric.Powershell.RegisterApplicationType

Is there a step I'm missing prior to or after downloading the SF yarp zip file? Every step I've taken is verbatim with what you have provided.

Hello, I just took a look, and it seems as the pinger.exe was not added to the pinger.code package for the latest release. It must have not been properly added as part of our pipeline release. For now, can you download the previous release zip and extract the pinger.exe and add it manually

This has been addressed by the recent PR: https://github.com/microsoft/service-fabric-yarp/pull/10


Remove Deprecated code of  Events V1

One year ago, I introduced History Events V2 with more functionality(forking branches) and performance(removing LWT). However we had to keep V1 running for backward compatibility. After one year, we have found that there is no more workflows running with V1. It's time to remove the V1 code and the logic of backward compatibility.
TODO:

Rename V2 interface to get rid of "V2" since there is no V1 anymore.
Make SetHistoryTree transparent in mutableStateBuilder to make it more easy to maintain.

@yycptt if possible, could you use the paging iterator?
link

@wxing1292 I think they are a little bit different. The history iterator used by archiver needs the ability to get current state of the iterator and create a new iterator based on some previous states. I don't think the paging iterator supports that. The functionality is needed because archiver workflow needs to periodically record its current progress and resume from last saved state if worker restarts.
There are some other issues like keeping current iterator state when error occurs, performing lookahead for nextPageToken etc. If you want, we can talk about it in more detail offline.

Coverage increased (+0.08%) to 66.762% when pulling 7a4cdd1ef117cacd0844f6eb9346e68092d1fa22 on longquanzheng:eventsV1 into dda75d096e563dc20313adce50600969edb3459f on uber:master.


Allow creating private challenge

Allow creation of private challenge which will be displayed only to challenge creators on challenges list.

It is necessary to consider?, why this requirement is needed, as it would be more beneficial to provide an explanation within the context of the needs.

Will do. Thanks


Thank you for your kindly sharing this code.  Is this code for python 2.7 or 3 ?

Thank you for your kindly sharing this code.  Is this code for python 2.7 or 3 ? Thank you!

Thank you a lot !


create similar section on main page @vaishnavip27

@vaishnavip27
https://eddiehub.org/

me and aditya are working on this if @vaishnavip27 has no issues with that

@vivekvardhan2810  Yea you can!


Decide on database constraints to be implemented in code

Given the structure of our tables and how they relate to one another, it is likely necessary to impose constraints in the python code as opposed to the database itself.
Here is a list (append / edit as required) of possible constraints we might want:

[x] No duplicate locations
[x] No duplicate location schemas
[ ] No duplicate location identifiers
[x] Locations respect their schemas (have all the necessary identifiers, with the right data types, and no other identifiers)

I've started enforcing the ticked ones in backend/locations.py (which in retrospect should probably rather be core/locations.py. You can still bypass them by doing raw sequel queries of course.


⚠ Redacted has degraded performance

In cf4acac, Redacted ($RED) experienced degraded performance:

HTTP code: 503
Response time: 2145 ms

Resolved: Redacted performance has improved in bde5378 after 4 hours, 14 minutes.


permissions:)

Well, hello again!
I faced with a pex problem.
Was using: - Magic.commands.wand but it does not work properly. Only - Magic.commands.wand.*
So, I don't want to let players use wolf wand or any...But I want OP admins use it, that meas  I can't  just turned it off and that's not a solution.
What the problem could be? With - Magic.commands.wand - no any message or error, but if I wont give that permisson, it'll spam a note that you have no permission.

This sounds remarkably similar to this issue that was just closed:
https://github.com/elBukkit/MagicPlugin/issues/197
You're probably missing Magic.commands.wand.create

Damn, Thanks!

Oh, how should I block wolf wand for players?

Use permissions like Magic.commands.wand.wand.wand (erm, yes, 3 wands)
or
Magic.commands.wand.wand.broomstick
To give them permission to spawn specific wands. This will block all the others (do test that though...)

well, my pex now
- Magic.commands.wand.create
- Magic.commands.wand.wand.wand
- Magic.commands.wand.wand.broomstick
simple wand and broomstick are blocked.

You also have

Magic.commands.wand

?
If so.. I think that all ought to work :\
If you want them to be able to "/wand" with no params, they also need

Magic.commands.wand.wand.default

But just given what you have up there /wand wand or /wand broomstick should work

If I add  Magic.commands.wand - wolf is available.
PEX:

Magic.commands.wand.create

Magic.commands.wand.wand.wand
Magic.commands.wand.wand.default
Magic.commands.wand.wand.broomstick
/wand wand
/wand default
/wand broomstick
still no permission

Maybe try Magic.commands.wand
And then negated: -Magic.commands.wand.wand.*
... ?

No wand and no message.
like I did not add  Magic.commands.wand.create perm.
but pex:
- Magic.commands.wand.create
- Magic.commands.wand
- -Magic.commands.wand.wand.*
- Magic.commands.wand.wand.wand
- Magic.commands.wand.wand.default
- Magic.commands.wand.wand.broomstick

Can you do /pex debug (or whatever the command is) to see what permission you're missing?
I was pretty sure that was all of them, literally just went through this with someone else and got it working. :(

LocalHero - op
LocalHero1 - user
[01:49:39] [Server thread/INFO]: [PermissionsEx] User LocalHero checked for permission 'magic.wand.', regex-matched a value of true from * (CACHE MISS)
[01:49:39] [Server thread/INFO]: [PermissionsEx] User LocalHero checked for permission 'magic.wand.', regex-matched a value of true from cache.
[01:49:39] [Server thread/INFO]: [PermissionsEx] User LocalHero checked for permission 'magic.wand.use', regex-matched a value of true from * (CACHE MISS)
[01:49:39] [Server thread/INFO]: [PermissionsEx] User LocalHero checked for permission 'magic.bypass', regex-matched a value of true from * (CACHE MISS)
[01:49:39] [Server thread/INFO]: [PermissionsEx] User LocalHero checked for permission 'magic.wand.', regex-matched a value of true from cache.
[01:49:39] [Server thread/INFO]: [PermissionsEx] User LocalHero checked for permission 'magic.wand.', regex-matched a value of true from cache.
[01:49:39] [Server thread/INFO]: [PermissionsEx] User LocalHero checked for permission 'magic.wand.override_bind', regex-matched a value of true from * (CACHE MISS)
[01:49:39] [Server thread/INFO]: [PermissionsEx] User LocalHero checked for permission 'magic.wand.override_bind', regex-matched a value of true from cache.
[01:49:39] [Server thread/INFO]: [PermissionsEx] User LocalHero checked for permission 'nocheatplus.checks.moving.survivalfly', regex-matched a value of true from cache.
[01:49:39] [Server thread/INFO]: [PermissionsEx] User LocalHero checked for permission 'nocheatplus.checks.moving.creativefly', regex-matched a value of true from cache.
[01:49:39] [Server thread/INFO]: [PermissionsEx] User LocalHero checked for permission 'nocheatplus.checks.moving.passable', regex-matched a value of true from cache.
[01:49:39] [Server thread/INFO]: [PermissionsEx] User LocalHero checked for permission 'nocheatplus.checks.moving.morepackets', regex-matched a value of true from cache.
[01:49:39] [Server thread/INFO]: [PermissionsEx] User LocalHero checked for permission 'nocheatplus.checks.moving.survivalfly', regex-matched a value of true from cache.
[01:49:39] [Server thread/INFO]: [PermissionsEx] User LocalHero checked for permission 'nocheatplus.checks.moving.creativefly', regex-matched a value of true from cache.
[01:49:39] [Server thread/INFO]: [PermissionsEx] User LocalHero checked for permission 'nocheatplus.checks.moving.passable', regex-matched a value of true from cache.
[01:49:39] [Server thread/INFO]: [PermissionsEx] User LocalHero checked for permission 'nocheatplus.checks.moving.morepackets', regex-matched a value of true from cache.
[01:49:39] [Server thread/INFO]: [PermissionsEx] User LocalHero checked for permission 'randomtp.portal.use', regex-matched a value of true from cache.
[01:49:40] [Server thread/INFO]: [PermissionsEx] User LocalHero checked for permission 'magic.wand.', regex-matched a value of true from cache.
[01:49:40] [Server thread/INFO]: [PermissionsEx] User LocalHero checked for permission 'magic.wand.', regex-matched a value of true from cache.
[01:49:40] [Server thread/INFO]: [PermissionsEx] User LocalHero checked for permission 'magic.wand.use', regex-matched a value of true from cache.
[01:49:40] [Server thread/INFO]: [PermissionsEx] User LocalHero checked for permission 'magic.bypass', regex-matched a value of true from cache.
[01:49:40] [Server thread/INFO]: [PermissionsEx] User LocalHero checked for permission 'magic.wand.', regex-matched a value of true from cache.
[01:49:40] [Server thread/INFO]: [PermissionsEx] User LocalHero checked for permission 'magic.wand.', regex-matched a value of true from cache.
[01:49:40] [Server thread/INFO]: [PermissionsEx] User LocalHero checked for permission 'magic.wand.override_bind', regex-matched a value of true from cache.
[01:49:40] [Server thread/INFO]: [PermissionsEx] User LocalHero checked for permission 'magic.wand.override_bind', regex-matched a value of true from cache.
[01:49:40] [Server thread/INFO]: [PermissionsEx] User LocalHero checked for permission 'magic.wand.', regex-matched a value of true from cache.
[01:49:40] [Server thread/INFO]: [PermissionsEx] User LocalHero checked for permission 'magic.wand.', regex-matched a value of true from cache.
[01:49:40] [Server thread/INFO]: [PermissionsEx] User LocalHero checked for permission 'magic.wand.override_bind', regex-matched a value of true from cache.
[01:49:40] [Server thread/INFO]: [PermissionsEx] User LocalHero checked for permission 'magic.wand.override_bind', regex-matched a value of true from cache.
[01:49:50] [Server thread/INFO]: [PermissionsEx] User LocalHero1 checked for permission 'magic.commands.wand', regex-matched a value of true from cache.
[01:49:50] [Server thread/INFO]: [PermissionsEx] User LocalHero1 checked for permission 'magic.commands.', regex-matched a value of undefined from cache.
[01:49:50] [Server thread/INFO]: [PermissionsEx] User LocalHero1 checked for permission 'magic.commands.wand', regex-matched a value of true from cache.
[01:49:50] [Server thread/INFO]: [PermissionsEx] User LocalHero1 checked for permission 'magic.commands.wand.', regex-matched a value of false from cache.
[01:49:50] [Server thread/INFO]: [PermissionsEx] User LocalHero1 checked for permission 'magic.commands.wand.create', regex-matched a value of true from cache.
[01:49:50] [Server thread/INFO]: [PermissionsEx] User LocalHero1 checked for permission 'magic.commands.wand.wand.', regex-matched a value of false from cache.
[01:49:50] [Server thread/INFO]: [PermissionsEx] User LocalHero1 checked for permission 'magic.commands.wand.wand.', regex-matched a value of false from cache.
[01:50:32] [Server thread/INFO]: [PermissionsEx] User LocalHero1 checked for permission 'magic.commands.wand', regex-matched a value of true from magic.commands.wand (CACHE MISS)
[01:50:32] [Server thread/INFO]: [PermissionsEx] User LocalHero1 checked for permission 'magic.commands.', no match found (CACHE MISS)
[01:50:32] [Server thread/INFO]: [PermissionsEx] User LocalHero1 checked for permission 'magic.commands.wand', regex-matched a value of true from cache.
[01:50:32] [Server thread/INFO]: [PermissionsEx] User LocalHero1 checked for permission 'magic.commands.wand.', regex-matched a value of false from magic.commands.wand.* (CACHE MISS)
[01:50:32] [Server thread/INFO]: [PermissionsEx] User LocalHero1 checked for permission 'magic.commands.wand.create', regex-matched a value of true from magic.commands.wand.create (CACHE MISS)
[01:50:32] [Server thread/INFO]: [PermissionsEx] User LocalHero1 checked for permission 'magic.commands.wand.wand.', regex-matched a value of false from magic.commands.wand. (CACHE MISS)
[01:50:32] [Server thread/INFO]: [PermissionsEx] User LocalHero1 checked for permission 'magic.commands.wand.wand.', regex-matched a value of false from cache.
[01:50:32] [Server thread/INFO]: [PermissionsEx] User LocalHero1 checked for permission 'magic.commands.wand.wand.default', regex-matched a value of false from magic.commands.wand. (CACHE MISS)

Were you just using the /wand command there, like just "/wand"?

[01:50:32] [Server thread/INFO]: [PermissionsEx] User LocalHero1 checked for permission 'magic.commands.wand.wand.default', regex-matched a value of false from magic.commands.wand. (CACHE MISS)

If so you need that permission as well

/wand
/wand wolf
etc.

one more time:
localhero1 - player
commands
wand
wand wolf
wand broomstick:
10.02 03:59:51 [Server] INFO User LocalHero1 checked for permission 'magic.commands.wand.wand.broomstick', regex-matched a value of false from magic.commands.wand.* (CACHE MISS)
10.02 03:59:51 [Server] INFO User LocalHero1 checked for permission 'magic.commands.wand.wand.', regex-matched a value of false from cache.
10.02 03:59:51 [Server] INFO User LocalHero1 checked for permission 'magic.commands.wand.wand.', regex-matched a value of false from cache.
10.02 03:59:51 [Server] INFO User LocalHero1 checked for permission 'magic.commands.wand.create', regex-matched a value of true from cache.
10.02 03:59:51 [Server] INFO User LocalHero1 checked for permission 'magic.commands.wand.*', regex-matched a value of false from cache.
10.02 03:59:51 [Server] INFO User LocalHero1 checked for permission 'magic.commands.wand', regex-matched a value of true from cache.
10.02 03:59:51 [Server] INFO User LocalHero1 checked for permission 'worldguard.region.bypass.world', regex-matched a value of undefined from cache.

Magic.commands.wand.create

Magic.commands.wand
-Magic.commands.wand.*
Magic.commands.wand.wand.wand
Magic.commands.wand.wand.default
Magic.commands.wand.wand.broomstick
my permissions
I tried also:
Magic.commands.wand.create
Magic.commands.wand.wand.wand
Magic.commands.wand.wand.default
Magic.commands.wand.wand.broomstick

I think with the way pex works the negated permissions need to go on a different group then you inherit from that group.

the problem is that I wont let default group set use admin wands.
Making inheritance for default group is qute weird?
added
- -Magic.commands.wand.wand.wolf

it works, but I suppose all other wand.* commands are still working for a default group

So, you advice to make a pre-default group?

I would add
-Magic.commands.wand.wand.*
(negated, double .wand) to your default group
Then the rest of them go on your admin group.

This is assuming your admin group inherits from the default group

Magic.commands.wand.create

Magic.commands.wand
-Magic.commands.wand.wand.*
Magic.commands.wand.wand.wand
Magic.commands.wand.wand.default
Magic.commands.wand.wand.broomstick

well, no message, no wand. I'm checking default group and it cant use wand and broomstick with such config. May be I can't get what do you want to tell me.

I mean you need two groups, a default group and an admin group. The admin group inherits from the default.
The negated permission goes on your default group, the others (not the negated one) goes on your admin group.
This is because in PEX a negated permission takes precedence, except when inheriting.
I honestly hate using permissions and rarely have a reason to myself, but I do know they work.

I created a group with 1 negate perm :)
and make default inherit for it.
It works. Thanks.
Keep configuring:)


Connect site to database

add Prisma ORM
add Postgres database (docker-compose)
add logic for receiving messages
add logic for career quiz
fix cases pages
add team gallery
styling modification
add github auth

I will merge it without your confirmation, but your comments will help me to improve code quality!))


[HybridApp] iOS composer clearing text

Problem
@JmillsExpensify is experiencing a bug where all text is cleared from the composer when typing. It's intermittent and hard to recreate, but it does happen in the morning more often than not.
https://github.com/Expensify/App/assets/2838819/79e1082d-8336-4e33-8cf8-7ab4e178d399
Solution
Fix it!
@mateuuszzzzz is looking into this one.

@thienlnam not sure if this one is more related to Live Markdown, or the HybridApp itself, but could we add this to the project to make sure we keep it in mind? 🙏🏻

cc @staszekscp

Just want to link my PR here, which might address that issue:

https://github.com/Expensify/App/pull/44285

Cool, thanks for testing! Will link it in the PR as well then


WIP Changes - added object ser/deser, enum

Quick and dirty updates, will cleanup, it's currently littered with todos and some functionality was removed. That being said, other functionality was added I believe enhances this version quite a bit, for example upgrading the protocol to the latest.

Made this PR by mistake, changes nowhere near ready to merge into.


new module: add trace API for user analytics

The following are something events to track from previous implementation:

Event Name
Description

system.awake.event
When activation is awaken.

system.voice.reject
When a voice is rejected.

system.nlp.result
Receives an NLP command.

system.media.start
When multimedia starts.

system.media.pause
When multimedia is paused.

system.media.stop
When multimedia is stopped.

system.media.change
When multimedia changes.

system.volumeup.click
When key is clicked for volume up.

system.volumedown.click
When key is clicked for volume down.

system.mutekey.click
When key is clicked for mute/unmute.

system.volume.change
When volume changes.

system.volume.supress
When volume supress.

system.volume.resume
When volume resumes from mute state.

system.battery
Battery events.

system.wifi
Wifi & Network events.

system.shutdown
When system is down.

system.appstack.changed
when skill stack changes.

system.alarm
When alarm is active.

system.tracker.error
Report errors

https://github.com/yodaos-project/yodart/pull/781 @yoda/endoscope shall do the jobs of the part of system events. Closing.


pyautogui unusable in Python 3.9.7 on macOS 12.0.1 due to segmentation fault

I maintain my Python environment with Homebrew (may be relevant).
I have an apparently successful installation of pyautogui - i.e., after 'pip install pyautogui' I see 'Successfully installed pyautogui-0.9.53'.
During:
import pyautogui
SIGSEGV is raised and Python crashes

Same here,
Segmentation Fault: 11
Python 3.10.2
MacOS 10.13.6 (17G14033)

Same here,
Segmentation Fault
Python 3.9.5
MacOS 12.1 (21C52)

I have eliminated Homebrew as potentially affecting the installation. I have a Python 3.10.2 virtual environment and the segmentation fault still occurs. Disappointed that this is still an issue 3 months after first reporting it

same here also, importing pyautogui raises a SEGFAULT
running python3 3.8.5 on macOS 10.13.6

Finally crashed on
Quartz/CoreGraphics/init.py
from Quartz.CoreGraphics._inlines import _inline_list_

I encountered this issue also with the three following configurations using this as a simple test bed:
import
print(pyautogui.position())

Python 3.8.5
MacOS 12.6
$ python3 main.py
[2]    59669 segmentation fault  python3 main.py

Python 3.10
MacOS 12.6
$ python3 main.py
segmentation fault  python3 main.py

The only remedy I found was to execute the script with sudo.
$ sudo python3 main.py
Point(x=807, y=469)

same here, segmentation fault even after trying the previous solution to sudo it
Python 3.12.0a7
pip 23.3 from python 3.12
MacOS 13.3.1


Use username password or token for bitbucket server

The bitbucket server publish action allows setting the token like other platforms, if the integration has a username and password configured though, not the token but the credentials are used
In config.ts the docs claim token takes precedence which only holds true if username & password are not set
Signed-off-by: Robert Schuh<EMAIL_ADDRESS>Hey, I just made a Pull Request!

:heavy_check_mark: Checklist

[x] A changeset describing the change and affected packages. (more info)
[x] Added or updated documentation
[x] Tests for new functionality and regression tests for bug fixes
[x] Screenshots attached (for UI changes)
[x] All your commits have a Signed-off-by line in the message. (more info)

Will run the changset and add a test in the morning

i dont think its common tbh, but what was bothering me was, that i set it up using username/password and wanted templates publish to overwrite using a token.
https://github.com/backstage/backstage/blob/master/plugins/scaffolder-backend/src/scaffolder/actions/builtin/publish/bitbucketServer.ts#L244-L251
and the bitbucketServer publisher properly implements it for itself, though the authorization header for the "create Repo" method comes from the integration which uses the username/password. so the create operation would be done using the username/password and the publishing itself using the token. that obviously leads to conflicts if the username/password credentials have different access rights than the provided token…

the change looks perfectly fine to me.
Re scaffolder: https://github.com/backstage/backstage/blob/master/plugins/scaffolder-backend/src/scaffolder/actions/builtin/publish/bitbucketServer.ts#L218 will take care of adding the user's token, overriding a potential token from the config or adding it to the username+password from the config.
Token was expected to take precedence. I'd say it was just a bug.
@Robbilie thanks for the bugix


Is there a way to disable unused subtitle tracks from being downloaded?

I am currently implementing a new feature to allow playing videos in my app.
Each Video has around 20 subtitle files which I load into the associated MediaItem with:
mediaItem.setSubtitleConfigurations(ImmutableList.copyOf(subtitleList));
I have noticed when inspecting the network requests that all 20 subtitles files are loaded from the server which causes (in my opinion) unnecessary network requests and bandwidth usage.
Is this typical behaviour for ExoPlayer or could I be doing something wrong?
I am creating each subtitle file by using:
MediaItem.SubtitleConfiguration.Builder subBuilder = new MediaItem.SubtitleConfiguration.Builder(entryUri)
    .setMimeType(subtitleMime)
    .setLanguage(entryLanguage);

and setting
subBuilder.setSelectionFlags(C.SELECTION_FLAG_DEFAULT);
on the subtitle entry associated with the users language preference, which is the subtitle file I want to play by default and ideally the only subtitle file which is loaded from the server.
Any advice on, if loading all 20 is expected or if there is a way to prevent this from happening would be appreciated.
I am currently using release 1.4.1

Duplicate of https://github.com/androidx/media/issues/1721


abstract trainer to reduce duplicate code in jvae

In the base trainer class I added some helper functions that make it easier to rely on the base train method for more advanced training scenarios - gimVI. I would be also able to use this new code in totalVI.

That looks like a good refactoring to me!

@adamgayoso should we merge this ?


Implement continuous integration

Implement a track test suite that can run both locally and on Travis CI. The track test suite should verify that each exercise makes sense, by running the exercise tests against the example solution.
Definition of terms

exercise test suite: the test suite that is delivered to Exercism users as part of an Exercism exercise
track test suite: the test suite that helps ensure that all of the exercise test suites in a language track are solvable

Background
When implementing an exercise test suite, we want to provide a good user experience for the people writing a solution to the exercise. People should not be confused or overwhelmed.
In most Exercism language tracks, we simulate Test-Driven Development (TDD) by implementing the tests in order of increasing complexity. We try to ensure that each test either

helps triangulate a solution to be more generic, or
requires new functionality incrementally.

Many test frameworks will randomize the order of the tests when running them. This is an excellent practice, which helps ensure that subsequent tests are not dependent on side effects from earlier tests. However, in order to simulate TDD we want tests to run in the order that they are defined, and we want them to fail fast, that is to say, as soon as the test suite encounters a failure, we want the execution to stop. This ensures that the person implementing the solution sees only one error or failure message at a time, unless they make a change which causes prior tests to fail.
This is the same experience that they would get if they were implementing each new test themselves.
Most testing frameworks do not have the necessary configuration options to get this behavior directly, but they often do have a way of marking tests as skipped or pending. The mechanism for this will vary from language to language and from test framework to test framework.
Whatever the mechanism—functions, methods, annotations, directives, commenting out tests, or some other approach—these are changes made directly to the test file. The person solving the exercise will need to edit the test file in order to "activate" each subsequent test.
Any tests that are marked as skipped will not be verified by the track test suite unless special care is taken.
Additionally, in some programming languages, the name of the file containing the solution is hard-coded in the test suite, and the example solution is not named in the way that we expect people to name their files.
We will need to temporarily (and programmatically) edit the exercise test suites to ensure that all of their tests are active. We may also need to rename the example solution file(s) in order for the exercise test suite to run against it.
Avoiding accidental git check-ins
It's important that if we rewrite files in any way during a test run, that these changes do not accidentally get checked in to the git repository.
Therefore, many language tracks write the track test suite in such a way that it copies the exercise to a temporary location outside of the git repository before editing or rewriting the exercise files during a test run.
Working around long-running track test suites
Usually as people are developing the track, they're focused on a single exercise. If running the entire track test suite against all of the exercises takes a long time, it is often worth making it possible to verify just one exercise at a time.
Example build file
The PHP track has created a Makefile. The Ruby track uses Rake, which is a tool written in Ruby, allowing the track maintainers to write custom code in the language of the track to customize the build with a Rakefile.

@sentientmonkey Let me check permissions—I sometimes forget to make the repo permissions "write".

... and indeed, that was the problem. Should be fixed now! Sorry about that.

Thanks so much! I have basic CI up and running with bob & hello world. The Makefile from php was super helpful.

Created #4 to track unit test framework. funit works for now, but it has some drawbacks.

Implemented pending/skips and CI seems happy so I'm going to go ahead and close this out.
https://travis-ci.org/exercism/xfortran

w00p! Exciting :-)
Thank you @sentientmonkey!


Force yield during custom blocks

As mentioned elsewhere (#23, #358) phosphorus never forces a yield during atomic blocks.

Scratch force-updates the screen every half-second during atomic blocks (run without screen refresh). phosphorus never updates the screen while an atomic block is running.

Force-refreshing the screen requires checking to see if the current atomic block has been running too long; this check would slow down Phosphorus a bit.
However, I could really use this for tosh; it's very easy to accidentally write something that never halts, and then lose the entire browser tab/project.
Thoughts?

@trumank suggested the following patch: https://github.com/nathan/phosphorus/compare/master...tjvr:tosh-halting


test if stop_cheatcode works properly in proxy calls, library calls and constructors

          We should make sure the address/block number changed to the previous one (applies to all prank and roll) after stop cheatcodes are merged

let a = call get_block_number

start_roll 234
let x = call get_block_number
assert x == 234

stop roll
let b = call_get_block_number

assert a == b

Originally posted by @piotmag769 in https://github.com/foundry-rs/starknet-foundry/pull/329#discussion_r1279021365

For newcomers: this task is about adding missing integration tests to prank and roll (prank.rs and roll.rs files from https://github.com/foundry-rs/starknet-foundry/tree/master/crates/forge/tests/integration). The tests should check if after stopping the prank/roll the caller address/block number changed to the previous one

@cptartur @Radinyn was it included in cheatnet tests?


[BUG] AdditionalSongFolders not working on Raspberry 32 build

Please give System Info
OS: Raspberry Pi Os 32 bits Desktop
CPU: Raspberry Pi 4
GPU: Raspberry Pi 4
Storage: SD card
Please give your StepMania Info
StepMania Version: OutFox-5.3.0-alpha-4.9.8-arm32v7-date-20210425.tar.gz
Theme: Vanilla
Describe the problem
On Raspberry Pi, AdditionalSongFolders does not seem to work on the OutFox-5.3.0-alpha-4.9.8-arm32v7-date-20210425.tar.gz build. It works on my laptop with the OutFox-5.3.0-alpha-4.9.8-amd64-date-20210425.tar.gz build.
Of course the user on the Raspberry Pi has access to the files in the AdditionalSongFolders folder. For instance .mp3 files can be played with VLC.
Describe what should happen
Songs from AdditionalSongFolders should be detected and added.
Logs and Additional context

Go into the game folder
Open the Logs folder
Grab every file in there and post with the issue.
Go back to the game folder, if there's an crashinfo.txt then send it too.

Add any other context or screenshots here.
userlog.txt
log.txt
info.txt

Hiya! Could you show me what is in your preferences.ini for the 'additionalsongfolders=' setting?
The game doesn't seem to even be looking for your folder

Hi !
Here it is:
AdditionalSongFolders=/net/nfs/stepmania/Songs
... where /net/nfs/stepmania/Songs is a NFS mount/ Which could have been tricky, however I have the exact same config on my laptop on the amd64 build and it works.
I agree with you, the game does not even try to do anything with AdditionalSongFolders.

I'm still investigating this, but I also cannot get nfs shares to work on my pi either. what NFS drivers/kit did you install for the laptop? I am thinking we are missing some FUSE/userspace libs here which would help us.

I'm not sure it's related to NFS because I think I've tried with a classic folder as well.


Chalice integration does not support the timeout_warning option

Problem Statement
The ChaliceIntegration does not give warnings about the lambda timeout, which the AwsLambdaIntegration does with the timeout_warning parameter (AwsLambdaIntegration(timeout_warning=True)).
It would be beneficial to also have timeout warnings in the ChaliceIntegration.
Solution Brainstorm
Add timeout warnings to the ChaliceIntegration, which is an option in the generic AwsLambdaIntegration.

Thanks @hugoalvarado, I'll put this in our backlog -- but please note that it'll likely be quite long until we get around to doing this. Pull requests are more than welcome though!


Search suggestions

!!!Deploy Backend first!!!
add SearchSuggestion model, connect suggestions to select2, add specs

 Search Suggestions


Diagrama nuevos

Codecov Report

Merging #4 (5564e0e) into master (22dc3f6) will not change coverage.
The diff coverage is n/a.

@@            Coverage Diff            @@
##             master       #4   +/-   ##
=========================================
  Coverage     20.00%   20.00%
  Complexity        2        2
=========================================
  Files             4        4
  Lines            20       20
=========================================
  Hits              4        4
  Misses           16       16

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 22dc3f6...5564e0e. Read the comment docs.

ok


Release 0.3.3

@JuliaRegistrator register(branch=release)

Registration pull request created: JuliaRegistries/General/5096
After the above pull request is merged, it is recommended that a tag is created on this repository for the registered package version.
This will be done automatically if Julia TagBot is installed, or can be done manually through the github interface, or via:
git tag -a v0.3.3 -m "<description of version>" 7221c42af878181c3372361e0530a3b899c9a8da
git push origin v0.3.3


[7.1] Deprecate Client::__call

Follow up to https://github.com/guzzle/guzzle/pull/2529.

Sorry for the long delay. Could you please rebase this PR?


Distorted view with Looking Glass Portrait LGP and Slicer 3D + Extention

With Slicer 3D (4.13) and the new LGP I get a distorted view of the volume rendering.
Unfortunately, pushing or pulling the focal plane backward or forward doesn’t help.
The scaling of my display setting is set to 100%. Resolution is 1536x2048.
In the Looking Glass Factory discord group it seems that the same issue happens in ParaView.
My Setup:

Windows 10
Slicer 3D (4.13)
latest Slicer Looking Glass Extention
Looking Glass Portait (the horizontal one with 1536x2048)
HoloPlay Service 1.2.2

I have the same issue with the adjustment of the focal plane. The buttons do not change anything.

Same issue.

My LGP behaves similarly.  When the 3D camera is moved very close to an object, the LGP rendering exhibits less double imaging, but the aspect ratio is always stretched vertically.  I think this extension was developed using an earlier,  LG model with a wider aspect ratio. I am not able to adjust the focal plane either.  This is a neat prototype application, and it will be more usable when it is brought up to date with the new LGP hardware and with a few issues fixed.

Yes, I'm having the same issue here.  @jcfr, @samuelgerber or @sjh26 do you have any suggestions?

I think this is related to #23. The aspect ratio is wrong with portrait devices.
Unfortunately I could not find the right fix yet, the proposed solution seems to cause issues with landscape devices.


Resolved repos should be cached when rendering docs client side

Currently we resolve all packages for each snippets on a doc page. See https://pxt.microbit.org/pkg/microsoft/pxt-filesystem

This is fixed by you Peli.


[Feature Request] Nhentai language filter, login and various other setting

Filter unwanted languages permanently while Browsing, just like the website

Add a login option in Settings > Nhentai and shove a few open in webview buttons for various nhentai settings (quoting Discord)

It would be better if we could use default blacklist or whitelist tags. I don't wanna see 177013 anymore. Makes me sad.

If it's not possible on the website, it won't be possible on the app

App already have filter feature, it can save filters for later use too. If we could set a saved filter to default it would be good enough. NClientV2 This app has a good filter system for example. Visually filter tags might be more usefull than typing one by one but it will be more hard to implement.

I'd like feature #1 to be implemented. Having to manually filter languages is a tiny niggle.

I'd like feature #1 to be implemented. Having to manually filter languages is a tiny niggle.

You can make a saved search that you can just press for now

1 is completed by using the extension, there is now a english only version of the source

Now that Nhentai has been delegated and there is no special screen left for Nhentai, this ticket can be closed. Also Nhentai doesn't have many account specifc setting anyway.


[Guide] Learning rjxs (applied to NEM2-SDK)

@jontey proposes on Slack:

We might have to write our own docs on how to use RxJS6. Most of the examples (that are google-able) is still using RxJS5. Maybe something to consider in #sig-docs

It would be necessary to create a guide focusing on the best practices and basics of rxjs6 applied to NEM.
Deliverables

Guide (preliminary outline)

Introduction to RXJS
Why RXJS for blockchain?
Observables
Basic operators

filter
map
toArray()

Advanced operators

flatmap (Nesting observables subscription)

Resources

How to write a guide
Why ReactiveX for Blockchain SDKs

This section would be good to include/highlight https://github.com/ReactiveX/rxjs/blob/master/docs_app/content/guide/v6/migration.md#howto-convert-to-pipe-syntax

I thought about adding this section in.. But it got too long so I made it a blog post instead. https://thoughts.jonathantey.com/pitfalls-to-avoid-using-rxjs/

If that can help, here are my beloved 2 ultimate cheatsheets that help(ed) me to go through the learning curve:
https://www.learnrxjs.io/
https://rxmarbles.com/

+1 for https://www.learnrxjs.io/


Reindex on change of unique or sparse

This fixes #19 and requires #20 to be merged first.
The only downside is, that this script doesn't handle a changed definition from { name: 'foo', unique: true } to { name: 'foo', unique: false }. It will not delete the unique index of this property, neither will it re-create the index without uniqueness required.
Should I change the cod so it removes such an index?

Sorry for it taking soo long time for me to get back to you here ...
I've now rebased it on master and tried to run the tests, but wasn't able to. The command, stated in the README.md (npm test:watch or npm test) resulted in an error and calling meteor test-packages ./package/indexing/ - which was my next guess, since this is a meteor package - left me without any tests. Can you please help me in getting this going?

@aldeed could you please help me to run the tests?


SyntaxError: Block-scoped declarations (let, const, function, class) not yet supported outside strict mode

Next Compile Problem
Node:   v4.4.2
Npm:    v3.10.5
Installing script dependencies
Installing apm
Installing modules ✓
Wrote Dependencies Fingerprint: /home/ruehmann/atom/node_modules/.dependencies-fingerprint 6c64226e594e178c89ff99422349f9565865f5df
/home/ruehmann/atom/script/lib/code-sign-on-mac.js:13
  let certPath = process.env.ATOM_MAC_CODE_SIGNING_CERT_PATH;
  ^^^

SyntaxError: Block-scoped declarations (let, const, function, class) not yet supported outside strict mode
  at exports.runInThisContext (vm.js:53:16)
  at Module._compile (module.js:373:25)
  at Object.Module._extensions..js (module.js:416:10)
  at Module.load (/home/ruehmann/atom/node_modules/coffee-script/lib/coffee-script/register.js:45:36)
  at Function.Module._load (module.js:300:12)
  at Module.require (module.js:353:17)
  at require (internal/module.js:12:17)
  at Object.<anonymous> (/home/ruehmann/atom/script/build:28:23)
  at Module._compile (module.js:409:26)
  at Object.Module._extensions..js (module.js:416:10)
  at Module.load (module.js:343:32)
  at Function.Module._load (module.js:300:12)
  at Function.Module.runMain (module.js:441:10)
  at startup (node.js:139:18)
  at node.js:968:3

Linux 16.04 LTS

Prerequisites

[ ] Put an X between the brackets on this line if you have done all of the following:

Reproduced the problem in Safe Mode: http://flight-manual.atom.io/hacking-atom/sections/debugging/#using-safe-mode
Followed all applicable steps in the debugging guide: http://flight-manual.atom.io/hacking-atom/sections/debugging/
Checked the FAQs on the message board for common solutions: https://discuss.atom.io/c/faq
Checked that your issue isn't already filed: https://github.com/issues?utf8=✓&q=is%3Aissue+user%3Aatom
Checked that there is not already an Atom package that provides the described functionality: https://atom.io/packages

Description
[Description of the issue]
Steps to Reproduce

[First Step]
[Second Step]
[and so on...]

Expected behavior: [What you expect to happen]
Actual behavior: [What actually happens]
Reproduces how often: [What percentage of the time does it reproduce?]
Versions
You can get this information from copy and pasting the output of atom --version and apm --version from the command line. Also, please include the OS and what version of the OS you're running.
Additional Information
Any additional information, configuration or data that might be necessary to reproduce the issue.

Thank you for reaching out!
We require the template to be filled out on all new issues and pull requests. We do this so that we can be certain we have all the information we need to address your submission efficiently. This allows the maintainers to spend more time fixing bugs, implementing enhancements, and reviewing and merging pull requests. Please open a new issue and fill out the template for us.
Thanks for understanding and meeting us half way :grinning:


not working when trying to launch sodium + origins 1.19.2

Describe the Bug
when i try to launch create with sodium and origins it crashes
Reproduction Steps

install fabric 1.19.2
install sodium fabric 1.19.2 0.4.4, create fabric 0.5.0 1.19.2 and origins 1.19.2 0.4.4
launch minecraft
...

Expected Result
i expected it to launch and run normally
Screenshots and Videos

Crash Report or Log
No response
Operating System
windows 11
Mod Version
0.5.0i
Minecraft Version
1.19.2
Other Mods
fabric api 0.73.2+1.19.2
Additional Context
none

Can you produce a full crash log? Upload it to a pastebin and then give the link here

@ZestyBlaze https://pastebin.com/jCgb8sG0

Update Create and install Indium


Use a shorter signed blocks window for heartbeats

Description/Reasoning
A validator has the missed-too-many-blocks illegibility if they missed more blocks than 5% of the blocks (1750) from the signed blocks window (which is set to 35000 currently).
	missedBlocks := utils.Threshold{Numerator: signingInfo.MissedBlocksCounter, Denominator: signedBlocksWindow}
	if missedBlocks.GTE(k.tss.GetMaxMissedBlocksPerWindow(ctx)) {
		illegibility |= exported.MissedTooManyBlocks
	}

After a chain upgrade, if a validator joins late (by say more than 2 hours) or misses blocks due to upgrade issues, since there is no history of successful heartbeats, they'll have to wait almost 2 days before they're eligible to participate in TSS again and gain rewards. So, for TSS, a shorter block window should be used. Previously, we used 100 blocks as the window. If Cosmos sdk doesn't allow tracking the signed blocks from a smaller window, we can consider changing the threshold instead.
Current Behaviour
Expected Behaviour
Steps to reproduce (for bugs)
Relevant Logs or Files

Previously, we used 100 blocks as the window.

Seems to me that we should simply switch back to the 100-block window.  This was the original intent of "missed too many blocks" status.
Was "missed too many blocks" always calculated this way?  If so then I'm surprised we haven't seen this problem before.

Previously, we used 100 blocks as the window.

Seems to me that we should simply switch back to the 100-block window. This was the original intent of "missed too many blocks" status.
Was "missed too many blocks" always calculated this way? If so then I'm surprised we haven't seen this problem before.

It's not a problem outside upgrades, since if you're missing 1750 blocks for consensus in a 35000 block windows, you should be excluded. And if say you missed only the last 1750 blocks, you can catch up after signing 1750 more blocks. During an upgrade though, there can a large downtime initially which causes this issues.
We definitely want 35000 blocks for consensus, and I don't know if Cosmos sdk allows tracking missed blocks for anything other than the signed blocks window. So, we might have to implement it ourselves if we want to change the window.

I guess we can leverage this function provided by the staking module:
// GetValidatorMissedBlockBitArray gets the bit for the missed blocks array
func (k Keeper) GetValidatorMissedBlockBitArray(ctx sdk.Context, address sdk.ConsAddress, index int64) bool


[master] Upgrade to latest dependencies

Justification, Retriggering after https://github.com/knative-sandbox/knobots/pull/34 -slinkydeveloper
/cc we don't use Prow
/assign we don't use Prow
Produced via:
./hack/update-deps.sh --upgrade --release v0.21
./hack/update-codegen.sh

Details:
bumping knative.dev/hack 4ed1ecb...d946d25:
  > d946d25 Revert "Add hermetic go mod aware handling to run_go_tool (# 38)" (# 39)
  > ea9c9a0 Add hermetic go mod aware handling to run_go_tool (# 38)

There's a bug in the modlog output
I thought all pseudo-versions had a  v0.0.0 prefix but I was wrong

There's a bug in the modlog output
I thought all pseudo-versions had a  v0.0.0 prefix but I was wrong

/hold

/hold

Ok looks good

Ok looks good


Getting error while ploting with Matplotlib 3.3.0 installed

Describe the bug
After upgrading Matplotlib 3.2.2 to 3.3.0, calling the plot() module result in the compiler return an error:
ValueError: The number of FixedLocator locations (20), usually from a call to set_ticks, does not match the number of ticklabels (1).
The full error thrown are:
  File "\lib\site-packages\mne\io\base.py", line 1378, in plot
    show_scalebars=show_scalebars, verbose=verbose)
  File "<decorator-gen-138>", line 21, in plot_raw
  File "\lib\site-packages\mne\viz\raw.py", line 415, in plot_raw
    n_channels)
  File "\lib\site-packages\mne\viz\raw.py", line 722, in _prepare_mne_browse_raw
    ax.set_yticklabels(['X' * max([len(ch) for ch in info['ch_names']])])
  File "\lib\site-packages\matplotlib\axes\_base.py", line 63, in wrapper
    return get_method(self)(*args, **kwargs)
  File "\lib\site-packages\matplotlib\cbook\deprecation.py", line 451, in wrapper
    return func(*args, **kwargs)
  File "\lib\site-packages\matplotlib\axis.py", line 1793, in _set_ticklabels
    return self.set_ticklabels(labels, minor=minor, **kwargs)
  File "lib\site-packages\matplotlib\axis.py", line 1715, in set_ticklabels
    "The number of FixedLocator locations"
ValueError: The number of FixedLocator locations (20), usually from a call to set_ticks, does not match the number of ticklabels (1).

Process finished with exit code 1
Steps to reproduce
Upgrade Matplotlib 3.3.0

can you share a full snippet to replicate the pb? thanks

This is probably https://github.com/mne-tools/mne-python/pull/7811, which I can backport and release.
I've found a bug where scrolling up/down can break things, though, so I'll fix that first then backport both PRs

Hi @larsoner, you are right, upgrading from mne-0.20.7 to mne-0.21.dev0 does resolve the issue. Thanks for the patch
Hi @agramfort , are you still interested with the full snippet?

no need we're good

@larsoner any plans to backport this? It's still 2 weeks until 0.21, and currently raw.plot() doesn't work with 0.20.7 and the latest Matplotlib.


fix load balance endpoints registrations for connector.

Description:
fix load balance endpoints registrations for connector.

Testing done:
Done

Affected area:

Functional Area

New Functionality
[ ]

CI System
[ ]

CLI Tool
[ ]

Certificate Management
[ ]

Control Plane
[ ]

Demo
[ ]

Documentation
[ ]

Egress
[ ]

Ingress
[ ]

Install
[ ]

Networking
[ ]

Observability
[ ]

Performance
[ ]

SMI Policy
[ ]

Security
[ ]

Sidecar Injection
[ ]

Tests
[ ]

Upgrade
[ ]

Other
[x]

Please answer the following questions with yes/no.

Does this change contain code from or inspired by another project? no

Is this a breaking change? no

Has documentation corresponding to this change been updated in the fsm-docs repo (if applicable)? no

:warning: Please install the  to ensure uploads and comments are reliably processed by Codecov.
Codecov Report
Attention: Patch coverage is 0% with 122 lines in your changes missing coverage. Please review.

Project coverage is 14.44%. Comparing base (cf56380) to head (591e23c).
Report is 110 commits behind head on release/v1.3.

Files
Patch %
Lines

pkg/connector/ctok/syncer.go
0.00%
58 Missing :warning:

pkg/connector/ctok/job.go
0.00%
38 Missing :warning:

pkg/connector/ktoc/source.go
0.00%
7 Missing :warning:

pkg/connector/provider/eureka.go
0.00%
5 Missing :warning:

pkg/connector/cli/flags.go
0.00%
4 Missing :warning:

cmd/fsm-connector/fsm-connector.go
0.00%
3 Missing :warning:

pkg/connector/cache.go
0.00%
2 Missing :warning:

pkg/connector/ctok/endpoint.go
0.00%
2 Missing :warning:

pkg/connector/provider/nacos.go
0.00%
2 Missing :warning:

pkg/connector/cli/sync.go
0.00%
1 Missing :warning:

:exclamation: Your organization needs to install the Codecov GitHub app to enable full functionality.
Additional details and impacted files
@@                Coverage Diff                @@
##           release/v1.3     #322       +/-   ##
=================================================
- Coverage         46.81%   14.44%   -32.37%
=================================================
  Files               199      761      +562
  Lines             15239    51136    +35897
=================================================
+ Hits               7134     7388      +254
- Misses             8059    43579    +35520
- Partials             46      169      +123

Flag
Coverage Δ

unittests
14.44% <0.00%> (-32.37%)
:arrow_down:

Flags with carried forward coverage won't be shown. Click here to find out more.

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


Automating Mass Testing of DAX Expressions for Bachelor Thesis.

I am currently a student enrolled at the Technical University of Cologne in Germany. I'm working on my bachelor's thesis, focusing on AI models for writing DAX expressions, like Calculated Tables, Calculated Columns and Measures. I'm stuck with a challenge and wanted to ask if you could give some tips on how I can overcome this.
I have over 2000 DAX expressions that I need to automatically test. These DAX Expression are created by an AI Modell. Here's what I'm looking to find out for each expression:

If it's syntactically and semantically valid.
Type of errors (syntax or semantic) and specific error messages.
For valid expressions, the number of columns and rows returned.

The thing is that all of these DAX expressions are related to one dataset. I am using the Northwind Dataset.
I have tried to do this in Batch's Tabular Editor 2 using C#, but it is just not working. The new expressions are added but when I save them to the model, if an expression has an error it does not let me do it.
Thank you so much,
Sincerely,
Anas Boutmitar

Hi @AnasBout
TE2 does not have a way to validate the syntax of a DAX expression. However, Analysis Services/Power BI should inform you if there are any errors, after saving the model changes. In my testing against SSAS 2022, it should be possible to save changes to a model, even if it contains measures/calculated columns/calculated tables with invalid DAX syntax, but there could be other situations where Analysis Services/Power BI will prevent you from saving changes.
After saving, you can inspect the ErrorMessage property of an object. For example, here, I've set the DAX expression of a calculated table to "XXX". After saving, the table will be in an error state, and I can access the error message on the table from C# as shown:

If there are no errors, you can get the column names and data types after saving:

You cannot know the number of rows within a calculated table, however, until the model has been refreshed. So if this is what you need, it may be easier to just execute the DAX directly through the C# script, without adding the DAX to a new calculated table:

EvaluateDax returns a DataTable object when the resulting expression is a table. It is straightforward to obtain number of rows and columns from a DataTable object.


Extra Sounds

I'm aware that Noise used to have more options and now has less due to a change in add-on permissions etc.
Will the old features be re-added soon? Or is that a case of hoping Mozilla update their add-on permissions?

Hi, I think it's more on Mozilla's side.
WebExtensions API doesn't provide many ways to watch event like the old days,
and this is not likely to be changed recently.


abuot the fmi4cpp::fmi4cpp.lib

hello, Why is there fmi4cpp:: fmi4cpp.lib in the attached dependency, but there is no such lib in the project
fmi4cpp::fmi4cpp.lib
kernel32.lib
user32.lib
gdi32.lib
winspool.lib
shell32.lib
ole32.lib
oleaut32.lib
uuid.lib
comdlg32.lib
advapi32.lib

It is not clear what issue you are having. How are you building and linking the project?

I just started to learn FMU. Could you please tell me how to build the project with vs2017 under Windows environment

It's a regular CMake project. See e.g. https://github.com/NTNU-IHB/FMI4cpp/blob/master/.github/workflows/config.yml

I realized that I had not studied Conan in the past. Thank you. I'll try again.

I succeeded. Thank you so much for your help.


manual refresh does not take effect

Discussed in https://github.com/apache/skywalking/discussions/9581

Originally posted by BertOnline September  8, 2022
Click the refresh button, and the date does not change. In the 8.9.1 version, click the refresh button, and the date changes. I don't know if it's a bug.

On my side, the manual refresh works well. I cannot reproduce this problem.

The demo env is not updating with local clock. I just checked. It is kept when the time opened.

What is the value of duration after clicking  the manual refresh button?

@BertOnline I have a discussion with @Fine0830
This seems on purpose. To support fresh with time rolling, we need some enhancement to support time range=last 15 mins. Current last 15 mins is just assisting you to choose a certain time range.


feat: Add karpenter.k8s.aws/instance-ami-id label

feat: Add karpenter.k8s.aws/instance-ami-id label
Fixes #4372
Description
Add the karpenter.k8s.aws/instance-ami-id label to nodes via retrieval of ami-id value from feet override reponse

Because a node template may have an existing launch template name set, we have to look up the data for the launch template via an AWS Api call to ec2:DescribeLaunchTemplateVersions

Note that there will be extra expense therefore in order to perform this op, so I have added use of the cache for this data
Launch template versions seems to be the only viable api to get at the full template data

To use this API, we need to add permission to describe launch template versions on the Karpenter controller role; I have update the docs to use ec2:DescribeLaunchTemplate* in the permissions set, instead of ec2:DescribeLaunchTemplates, in order to cover this additional permission (and any similar permissions required in future)
the only constant I could see we currently have to cover karpenter.k8s.aws/instance-ami-id label is  Have to add in the image id - seems it’s just defined in v1alpha1 ? Hopefully that’s not totally deprecated…
By always using imageID as an override parameter, we are dependant now on create fleet request being for a fleet of type ‘instant’ -  see: https://docs.aws.amazon.com/sdk-for-go/api/service/ec2/#FleetLaunchTemplateOverridesRequest
- We seem to only create ‘instant’ fleets, so this will work for now - https://github.com/aws/karpenter/blob/2dfebc9602a9bf6848616fb3740c0f25a455d650/pkg/providers/instance/instance.go#L209-L209

How was this change tested?
requirement for label added to unit tests, also verified by running my against my own eks cluster and seeing that the node labels are indeed added to provisioned nodes appropriately (either via nodes provisioned by karpenter auto-generated launch templates, or via a pre-defined launch template set in aws node template)
Does this change impact docs?

[X] Yes, PR includes docs updates

By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.

I think you may need a rebase here as well

@gfcroft Looks like a bunch of the E2E tests failed. Seeing a bunch of this in the logs: The request failed because the payload for the body of the request is too large

@gfcroft Responded to the original issue. How do you feel about putting the AMI detail into the NodeClaim status rather than  into the labels? We can keep the labels specific to scheduling and do informational/observability things like this into the status.

as this change depends on the status field of node claim supporting ImageID which requires an update to karpenter-core (to be accomplished by: https://github.com/aws/karpenter-core/pull/559) I expect tests to fail until that is merged and go.mod is updated accordingly


#1 Issue Prompts

GIVEN a command-line application that accepts user input
WHEN I start the application
THEN I am presented with the following options: view all departments, view all roles, view all employees, add a department, add a role, add an employee, and update an employee role

Complete, added additional options for CRUD


Is this project alive ?

Is this project alive ?
Documentation is non responsive.

lextm commented on Nov 14, 2022
You can now refer to https://github.com/etingof/pysnmp/issues/429 and https://www.pysnmp.com/ for latest information.


refactor: move component communication to infra crate

This change is

Codecov Report
Attention: Patch coverage is 0% with 10 lines in your changes missing coverage. Please review.

Project coverage is 80.65%. Comparing base (ffb049c) to head (105e987).
Report is 2 commits behind head on main.

Files
Patch %
Lines

crates/mempool_infra/src/component_definitions.rs
0.00%
9 Missing :warning:

crates/mempool_node/src/communication.rs
0.00%
1 Missing :warning:

Additional details and impacted files
@@            Coverage Diff             @@
##             main     #378      +/-   ##
==========================================
- Coverage   80.80%   80.65%   -0.15%
==========================================
  Files          35       36       +1
  Lines        1620     1623       +3
  Branches     1620     1623       +3
==========================================
  Hits         1309     1309
- Misses        245      248       +3
  Partials       66       66

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


Add a Streamlit SupabaseConnection and update tutorial to use it

Problem
We recently launched st.experimental_connection and support for community connections.
Given that we had past interest in connecting Streamlit to Supabase, it might be useful to deliver a connection that makes this easier and update the current tutorial to use it.
Additional context
Connections can be built by extending ExperimentalBaseConnection. We've built a few examples:

https://github.com/streamlit/files-connection
https://github.com/streamlit/gsheets-connection
https://github.com/streamlit/release-demos/blob/master/1.22/st-experimental-connection/duckdb_connection/connection.py

If someone is interested in taking this on and setting up the repo, would be happy to discuss, do code review, or set up a quick call to discuss.
(Same goes for other relevant data stores / data sources!)

Hi @J0 I saw you wrote the original tutorial for SupaBase + Streamlit - wondered if you had any interest in this or knew anyone who might? Thanks!

Sure can take a look

Closed by #812


Loading image by url, 0x262 being appended to url in dev mode only

🐛 Bug Report
When creating a CachedImage with a static URL and a CollectionView of them using a bunch of URLs coming from an API, the image load fails, reported URLs are shown as appended to with an 0x262 (and more mysteriously 262x0), and the error image is displayed.
Problem only happens when running in dev mode using the Android emulator, works fine deployed to a physical device.
URL specified as;
Source = $"https://[url path]/images/app/header_image.jpg"
Error message;
Image loading failed: https://[url path]/images/app/header_image.jpg;0x262
Full error message;
06-15 00:40:17.592 I/mono-stdout(14944): FFImageLoading.Exceptions.DownloadAggregateException: One or more errors occurred. (Headers timeout) ---> FFImageLoading.Exceptions.DownloadHeadersTimeoutException: Headers timeout
06-15 00:40:17.592 I/mono-stdout(14944):   at FFImageLoading.Cache.DownloadCache.DownloadAsync (System.String url, System.Threading.CancellationToken token, System.Net.Http.HttpClient client, FFImageLoading.Work.TaskParameter parameters, FFImageLoading.DownloadInformation downloadInformation) [0x007c3] in C:\projects\ffimageloading\source\FFImageLoading.Common\Cache\DownloadCache.cs:195
FFImageLoading.Exceptions.DownloadAggregateException: One or more errors occurred. (Headers timeout) ---> FFImageLoading.Exceptions.DownloadHeadersTimeoutException: Headers timeout
at FFImageLoading.Cache.DownloadCache.DownloadAsync (System.String url, System.Threading.CancellationToken token, System.Net.Http.HttpClient client, FFImageLoading.Work.TaskParameter parameters, FFImageLoading.DownloadInformation downloadInformation) [0x007c3] in C:\projects\ffimageloading\source\FFImageLoading.Common\Cache\DownloadCache.cs:195
at FFImageLoading.Cache.DownloadCache+<>c__DisplayClass15_0.b__0 () [0x00050] in C:\projects\ffimageloading\source\FFImageLoading.Common\Cache\DownloadCache.cs:58
at FFImageLoading.Retry.DoAsync[T] (System.Func`1[TResult] action, System.TimeSpan retryInterval, System.Int32 retryCount, System.Action onRetry) [0x00047] in C:\projects\ffimageloading\source\FFImageLoading.Common\Helpers\Retry.cs:19
--- End of inner exception stack trace ---
at FFImage06-15 00:40:17.592 I/mono-stdout(14944):   at FFImageLoading.Cache.DownloadCache+<>c__DisplayClass15_0.b__0 () [0x00050] in C:\projects\ffimageloading\source\FFImageLoading.Common\Cache\DownloadCache.cs:58
I happened to be completely resetting my android device this weekend so images on the installed physical device are definitely not cached.
I've been hesitant to raise a bug here it smells strongly of something I'm doing rather than a bug so I've been fighting with it for a few days with no joy.
In the end even it it's me being dumb, which is entirely possible, I figure that if I can supply a static url that ends ".jpg" and it somehow ends up with an error where the url is reported as ending ".jpg;0x262" it's probably something you'd be interested in even if the reason is me doing something stupid and FF is somehow letting me, so I resolved to raise an issue here.
Looking at the FF source I can't see how the extra 0x262 gets added, and with the url being specified as a static url string (which works fine when just pasted into browser address bar), and tracing assuring me the rest of the urls have no extraneous character attached, I'm at a loss to know why this is happening.
The images that come from an api are appended to slightly differently, eg;
Image loading failed: https://[url path]/images/places/caribbean.jpg;262x0 but in the end they're just strings coming from a lump of json that read just fine when I make the api call manually.
Odd, 0x262 at least makes sense as a character (it's an ACK, mysteriously enough) but 262x0 doesn't - maybe that is a clue to what's happening.
Source snippet below, happy to post more but initially am hoping somebody might just comment saying "ah yes, you've obviously done XYZ, the fix is not to do that".
return new CachedImage
{
Margin = 0,
HorizontalOptions = LayoutOptions.CenterAndExpand,
CacheDuration = TimeSpan.FromDays(1),
DownsampleToViewSize = true,
RetryCount = 0,
BitmapOptimizations = false,
LoadingPlaceholder = "",
ErrorPlaceholder = "error.png",
Source = $"{App.AzureBackendUrl}/images/app/header_image.jpg"
}
Expected behavior
Images on the end of the URLs to be displayed normally.
Reproduction steps
Supplied if needed
Configuration
Xamarim.Forms <IP_ADDRESS>7
Also tested with Xamarin.Forms 4.7.0937-pre4 just in case
Version:
<IP_ADDRESS>2
Platform:

[ ] :iphone: iOS
[X] :robot: Android
[ ] :checkered_flag: WPF
[ ] :earth_americas: UWP
[ ] :apple: MacOS
[ ] :tv: tvOS
[X] :monkey: Xamarin.Forms

Ah, I suspect the output window is garbling the messages it's displaying, I'm looking at one case where the exception reported says;
at FFImageLoading.Cache.DownloadCache+<>c__DisplayClass15_0.b__0 () [0x00050] in C:\projects\ffimageloading\source\FFImageLoading.Common\Cache\Downloa
06-15 11:01:41.208 I/mono-stdout(25760): Image loading failed: https://[url path]/images/places/africa.jpg;262x0dCache.cs:58
at FFImageLoading.Retry.DoAsync[T] (System.Func`1[TResult] action, System.TimeSpan retryInterval, System.Int32 retryCount, System.Action onRetry) [0x00047] in C:\projects\ffimageloading\source\FFImageLoading.Common\Helpers\Retry.cs:19 <---
'...Cache\Downloa' is truncated, but the rest of it, namely 'dCache.cs:58 ' seems to appear after the report of the failing url.
There are 3 points in the code where an exception is reported with an identical 'Image loading failed:' message, so I'm not sure which this is coming from, I'll load up the FF project I cloned again and have a look, but thought this was worth a mention.

I found out what the problem was - my emulator must have been set to a slow connection, I factory reset the virtual device and all's working again so this isn't a bug as such, but might be considered as an enhancement request to make FF pick up on slow connections and report as such, I'll close issue this off though since it's logged as a bug.


Any installation steps for VMware Tanzu? Many other tools already start support VMware Tanzu!

Describe the solution you'd like
There is no instruction for how to get this CSI driver to install on VMware Tanzu!
Describe alternatives you've considered
VVOL may be a option but looks like CSI drivers native integration is the best.
Additional context
I have tried to search around on internet for NetApp Trident + VMware Tanzu, there is no such info yet!

Hello @calvinwonghk
The installation instructions for Trident are available here. You can choose b/w installing Trident using tridentctl, the operator, or the Helm chart. The installation methods are agnostic of the distribution being used. There are only the following caveats to be aware of for Tanzu:

If using NFS, you must enable mount propagation is enabled. Here's the KB article
Tanzu must allow privileged containers to spin up. Depending on the Tanzu flavor you are using, this can be enabled when the cluster is spun up.

Closing this issue as @balaramesh was able to provide a suitable explanation.

Dear Sir
Request that issue is opened as we tried but we are not able to install on tanzu


Add Support for KSLinux

Description
I'd like to add support for KSLinux
kernel version: 4.4.2-kslinux
Neofetch version
neofetch 3.1.0-git
Screenshot

Config file
default config
Verbose log
Due to the init program is bash, so I can't get an error log
I have a /tool/cross/bin/env instead of  /usr/bin/env (but have /usr/bin folder)
It has a kpm package manager, use kpm --get-selections to get package list.
df -h has following output:
Filesys All     Used   %     Mounted
rootfs 1.8GB 1.6GB 87% /
It need 3.5GB Memory to startup the system due to / is rootfs

I had added support for KSLinux on my personal master branch (Takeya-Yuki/neofetch).

Merged #727


Auto-detect RPC server credentials

If RPC credentials are not found in the config file, try locating the bitcoin.conf in standard paths, and read it from there.
See related issue: #35.

Much better to take them from the `.cookie' file.
In pyhton on Mac this would mean:
with open("/Users/username/Library/Application Support/Bitcoin/.cookie", "r") as creds:
    cookie = creds.read()
rpc_user = cookie.split(":")[0]
rpc_pass = cookie.split(":")[1]

Where of course /Users/username/Library/Application Support/Bitcoinis your -data-dir


feat(sdk): custom scope integration test.

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

Comparison is base (c2e305b) 89.04% compared to head (75632c1) 89.04%.

Additional details and impacted files
@@           Coverage Diff           @@
##             main     #663   +/-   ##
=======================================
  Coverage   89.04%   89.04%
=======================================
  Files         103      103
  Lines        4146     4146
=======================================
  Hits         3692     3692
  Misses        310      310
  Partials      144      144

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