Added Dockerfile and nginx.conf, updated README.md

I'd like to start with: this is my first contribution to a public repo. If anything is wrong, let me know and I'll do my best to resolve asap.
I run debian linux and haven't been able to find a way to run PKHEX natively on the desktop without some serious hacks. This seems like the best option for me at the moment and a nicer interface than using the command line for everything.
I have included a Dockerfile, nginx.conf and updated the README.md with some instructions for anyone wanting to deploy with docker.
I commented out the RUN dotnet restore in the Dockerfile as it was causing issues, I forgot to remove it entirely.

@FiveVoltLogic I'll be honest, I have very little experience with Docker. If you had to comment out RUN dotnet restore, are you sure the file is correct? Is someone who doesn't have a local install of .NET going to have an issue with this?


Release

@George3d6 I recommend to postpone this release a bit, since markdown documentation not updated.

@George3d6 I recommend to postpone this release a bit, since markdown documentation not updated.


add build-source parameter to all pipelines

:warning: Please install the  to ensure uploads and comments are reliably processed by Codecov.
Codecov Report
All modified and coverable lines are covered by tests :white_check_mark:

Project coverage is 36.21%. Comparing base (13484d0) to head (5106a1e).
Report is 158 commits behind head on main.

:exclamation: Your organization needs to install the Codecov GitHub app to enable full functionality.
Additional details and impacted files
@@            Coverage Diff             @@
##             main    #1415      +/-   ##
==========================================
- Coverage   36.81%   36.21%   -0.60%
==========================================
  Files         158      159       +1
  Lines        2548     2579      +31
  Branches      599      614      +15
==========================================
- Hits          938      934       -4
- Misses       1428     1450      +22
- Partials      182      195      +13

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

Can be merged


When its property is something doesn't work on json input?

Description :
Not sure, if a bug, but I don't seem to be able to filter a json property based on json value
To Reproduce

<Either a sample terraform code, or your terraform plan file if it doesn't have any confidential information>

resource "aws_ecr_lifecycle_policy" "default" {
  repository = "blah"
  policy     = file("${path.module}/policies/lifecycle.json")
}

lifecycle.json:
{
  "rules": [
    {
      "rulePriority": 10,
      "description": "For tag with prod, keep last 5 images",
      "selection": {
        "tagStatus": "tagged",
        "tagPrefixList": [
          "prod"
        ],
        "countType": "imageCountMoreThan",
        "countNumber": 5
      },
      "action": {
        "type": "expire"
      }
    },
    {
      "rulePriority": 20,
      "description": "For tag with nonprod, keep last 15 images",
      "selection": {
        "tagStatus": "tagged",
        "tagPrefixList": [
          "nonprod"
        ],
        "countType": "imageCountMoreThan",
        "countNumber": 15
      },
      "action": {
        "type": "expire"
      }
    },
    {
      "rulePriority": 30,
      "description": "For tag with build, keep last 60 images",
      "selection": {
        "tagStatus": "tagged",
        "tagPrefixList": [
          "build"
        ],
        "countType": "imageCountMoreThan",
        "countNumber": 60
      },
      "action": {
        "type": "expire"
      }
    },
    {
      "rulePriority": 990,
      "description": "Keep untagged images for 7 days",
      "selection": {
        "tagStatus": "untagged",
        "countType": "sinceImagePushed",
        "countUnit": "days",
        "countNumber": 7
      },
      "action": {
        "type": "expire"
      }
    },
    {
      "rulePriority": 1000,
      "description": "Keep tagged images for 30 days",
      "selection": {
        "tagStatus": "any",
        "countType": "sinceImagePushed",
        "countUnit": "days",
        "countNumber": 30
      },
      "action": {
        "type": "expire"
      }
    }
  ]
}

-f test
docker
Test is skipped:
Scenario: Images with environment in tag should be kept based on number of images with same environment
Given I have aws_ecr_lifecycle_policy defined
When it contains policy
And it contains rules
💡 SKIPPING: Can not find 10 rulePriority in aws_ecr_lifecycle_policy.default
And its rulePriority is 10
Then it must contain selection
<Your feature/scenario/steps>

  Scenario: Images with environment in tag should be kept based on number of images with same environment
    Given I have aws_ecr_lifecycle_policy defined
    And it contains policy
    And it contains rules
    And its rulePriority is 10
    Then it must contain selection

Expected behavior :
Should find the rule by rulePriority 10
Tested versions :

1.11.1
0.12.21

Additional context

The problem was not about JSON, but due to an integer value can not be compared with :)
Fixed the issue on master  branch

Can you have a try with 1.1.13 please ?

This now works. Thank you!


add concentrator mutex lock to lgw_get_trigcnt call

 Thank you for your submission, we really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.


Get rid of superflous "be" in Yesod templates

Oops, just noticed the note about yesod-scaffold repo. I'll be re-submitting this PR there shortly; sorry for the noise!


Scrollbars in watchpoint section

Hi!
Can you fix it:

?
It's difficult to remove variables.

Should be fixed in v0.3.0


Charge Limits for CA

Hyundai Kona Electric 2021, Canada
Thank you for adding support of setting the charge limite through HA. it works really fine now.
There's only one feature "missing"... which might also be missing for other supported regions.
Besides looking at the log every time, there's no way to know limits were applied successfully.
Similar to the regular data which is updating on a regular basis, we could also update the charge limits and have the values set on some sensors. Or maybe get the results after setting the limit and push theses values to the sensors.
Is this something that can be "easily" implemented?
I'm currently receiving this in the log after setting the limit:
2022-04-21 09:21:39 DEBUG (SyncWorker_5) [custom_components.kia_uvo.KiaUvoApiCA] kia_uvo - Received Pin validation response <Response [200]>
2022-04-21 09:21:48 DEBUG (SyncWorker_5) [custom_components.kia_uvo.KiaUvoApiCA] kia_uvo - Received set_charge_limits response {'responseHeader': {'responseCode': 0, 'responseDesc': 'Success'}, 'result': [{'plugType': 0, 'level': 80, 'dte': {'rangeByFuel': {'gasModeRange': {'value': 0.0, 'unit': 1}, 'evModeRange': {'value': 274.0, 'unit': 1}, 'totalAvailableRange': {'value': 274.0, 'unit': 1}}, 'type': 2}}, {'plugType': 1, 'level': 80, 'dte': {'rangeByFuel': {'gasModeRange': {'value': 0.0, 'unit': 1}, 'evModeRange': {'value': 274.0, 'unit': 1}, 'totalAvailableRange': {'value': 274.0, 'unit': 1}}, 'type': 2}}]}

with my Mac on safari, I see two requests when accessing the set limit page on mybluelink.ca...
I don't have access to an android device to sniff the trafic.
POST /tods/api/lstvhclsts HTTP/1.1
Content-Type: application/json;charset=UTF-8
Content-Length: 0
Accept: application/json, text/plain, */*
Accept-Language: fr-CA,fr;q=0.9
Accept-Encoding: gzip, deflate, br
Host: mybluelink.ca
Origin: https://mybluelink.ca
Connection: keep-alive
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/15.5 Safari/605.1.15
Referer: https://mybluelink.ca/remote/charge
Cookie: <................cookie here.................>
from: CWP
accessToken: <................token here.................>
offset: -4
vehicleId: <................vehicule id here.................>
language: 0

POST /tods/api/evc/selsoc HTTP/1.1
Content-Type: application/json;charset=UTF-8
Content-Length: 0
Accept: application/json, text/plain, */*
Accept-Language: fr-CA,fr;q=0.9
Accept-Encoding: gzip, deflate, br
Host: mybluelink.ca
Origin: https://mybluelink.ca
Connection: keep-alive
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/15.5 Safari/605.1.15
Referer: https://mybluelink.ca/remote/charge
Cookie: <................cookie here.................>
from: CWP
accessToken: <................token here.................>
offset: -4
vehicleId: <................vehicule id here.................>
language: 0

Definitely would love a feature like this. Would be happy to test on my '19 kona (CAD).

When not setting the limits do you see any traffic showing the limits?  Ideally in /status/latest.  This would allow us to keep the data current event when changed via the kia app.   It may be a separate API call to "view" the limits but that is fine.

As a note take a look at these steps. In Canada the API for the website is adequate, no android needed for sniffing: https://github.com/fuatakgun/kia_uvo/wiki/How-to-sniff-API-via-MS-Edge
Similar steps could be used in Safari.

yes I do see the limite on the selsoc response...
here's there response.
both limits are currently set to 80
{"responseHeader":{"responseCode":0,"responseDesc":"Success"},"result":[{"plugType":0,"level":80,"dte":{"rangeByFuel":{"gasModeRange":{"value":0.0,"unit":1},"evModeRange":{"value":393.0,"unit":1},"totalAvailableRange":{"value":393.0,"unit":1}},"type":2}},{"plugType":1,"level":80,"dte":{"rangeByFuel":{"gasModeRange":{"value":0.0,"unit":1},"evModeRange":{"value":393.0,"unit":1},"totalAvailableRange":{"value":393.0,"unit":1}},"type":2}}]}

Perfect! That is exactly the data we need.  To confirm selsoc is a view only command so I assume it isn't passing parameters behind car details?  Separate from "evc/setsoc" which I believe sets the soc.

I just clicked on "target state of charge" tab... and this what I've got. yes evc/setsoc is separate and this is what set the target soc.
just before selsoc, there is also https://mybluelink.ca/tods/api/lstvhclsts
with the following response:
{"responseHeader":{"responseCode":0,"responseDesc":"Success"},"result":{"status":{"lastStatusDate":"20221030204620","airCtrlOn":false,"engine":false,"doorLock":true,"doorOpen":{"frontLeft":0,"frontRight":0,"backLeft":0,"backRight":0},"trunkOpen":false,"airTempUnit":"C","airTemp":{"value":"00H","unit":0},"defrost":false,"acc":false,"evStatus":{"batteryCharge":false,"batteryStatus":78,"batteryPlugin":2,"remainTime2":{"etc1":{"value":4,"unit":1},"etc2":{"value":65,"unit":1},"etc3":{"value":15,"unit":1},"atc":{"value":0,"unit":1}},"drvDistance":[{"rangeByFuel":{"gasModeRange":{"value":0.0,"unit":1},"evModeRange":{"value":393.0,"unit":1},"totalAvailableRange":{"value":393.0,"unit":1}},"type":2}]},"hoodOpen":false,"transCond":true,"steerWheelHeat":0,"sideBackWindowHeat":0,"dte":{},"tirePressureLamp":{"tirePressureLampAll":0},"battery":{"batSoc":80,"batState":0,"batSignalReferenceValue":{}},"remoteIgnition":true,"seatHeaterVentInfo":{},"sleepModeCheck":false,"lampWireStatus":{"headLamp":{},"stopLamp":{},"turnSignalLamp":{}},"windowOpen":{},"engineRuntime":{}}}}
after setsoc, both lstvhclsts and selsoc are used to update what is shown on the screen.

The start of this.  https://github.com/Hyundai-Kia-Connect/hyundai_kia_connect_api/pull/149 a bit more work needed, I should be able to get a version out in the next day or so with this ready for testing.

For sure, I’ll be there to test it! 😉

Could you give v2.0.38 a go?  This adds charge sliders to the main page.   And feedback on functionality is appreciated.

sliders are there... but if does nothing if I move them.
that said, there's an issue with force update service... I'll open a separate issue.

Any errors in the logs? I would expect it to sense the set command but jump back until the next refresh.

v2.0.39 is out.

Any errors in the logs? I would expect it to sense the set command but jump back until the next refresh.

Sorry for not answering on this… to answer you question, no there was nothing in the log.
But now with 2.0.39, it works somewhat fine.
If I set one slider at a time, it’s fine.
But if I want to set both slider one after the other, second slider will give an error in the log and will not set.
I guess there are two options…
Wait a few seconds before sending the first command to see if an other one needs to be sent at the same time or wait at least 90 seconds before sending the second command.
See log:
2022-11-30 19:10:52.281 DEBUG (SyncWorker_3) [hyundai_kia_connect_api.KiaUvoApiCA] hyundai_kia_connect_api - Received forced vehicle data {'error': {'errorCode': '6533', 'errorDesc': 'We are currently processing an earlier inquiry for your vehicle. Please wait 90 seconds before issuing next request.'}, 'responseHeader': {'responseCode': 1, 'responseDesc': 'Failure'}} 2022-11-30 19:10:52.283 ERROR (MainThread) [homeassistant.components.websocket_api.http.connection] [140577671080080] 'result' Traceback (most recent call last): File "/usr/src/homeassistant/homeassistant/components/websocket_api/commands.py", line 200, in handle_call_service await hass.services.async_call( File "/usr/src/homeassistant/homeassistant/core.py", line 1744, in async_call task.result() File "/usr/src/homeassistant/homeassistant/core.py", line 1781, in _execute_service await cast(Callable[[ServiceCall], Awaitable[None]], handler.job.target)( File "/usr/src/homeassistant/homeassistant/helpers/entity_component.py", line 208, in handle_service await service.entity_service_call( File "/usr/src/homeassistant/homeassistant/helpers/service.py", line 678, in entity_service_call future.result() # pop exception if have File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 943, in async_request_call await coro File "/usr/src/homeassistant/homeassistant/helpers/service.py", line 715, in _handle_entity_call await result File "/usr/src/homeassistant/homeassistant/components/number/__init__.py", line 109, in async_set_value await entity.async_set_native_value(native_value) File "/config/custom_components/kia_uvo/number.py", line 86, in async_set_native_value await self.coordinator.async_force_update_all() File "/config/custom_components/kia_uvo/coordinator.py", line 139, in async_force_update_all await self.hass.async_add_executor_job( File "/usr/local/lib/python3.10/concurrent/futures/thread.py", line 58, in run result = self.fn(*self.args, **self.kwargs) File "/usr/local/lib/python3.10/site-packages/hyundai_kia_connect_api/VehicleManager.py", line 84, in force_refresh_all_vehicles_states self.force_refresh_vehicle_state(self.get_vehicle(vehicle_id)) File "/usr/local/lib/python3.10/site-packages/hyundai_kia_connect_api/VehicleManager.py", line 87, in force_refresh_vehicle_state self.api.force_refresh_vehicle_state(self.token, vehicle) File "/usr/local/lib/python3.10/site-packages/hyundai_kia_connect_api/KiaUvoApiCA.py", line 141, in force_refresh_vehicle_state state = self._get_forced_vehicle_state(token, vehicle) File "/usr/local/lib/python3.10/site-packages/hyundai_kia_connect_api/KiaUvoApiCA.py", line 358, in _get_forced_vehicle_state response = response["result"]["status"] KeyError: 'result' 2022-11-30 19:11:21.769 DEBUG (SyncWorker_5) [hyundai_kia_connect_api.KiaUvoApiCA

Well in general this is good news!   I am not sure how I can tell if a second command gets sent as this is part of home assistants event loop.  That may be over my skill.   I could put some form of lock or delay in though.  Let me think on this.

Good news indeed…
I rarely modify the dc charge limit… so it’s fine for me if it stays they way it is right now.
Would it be possible to catch the 90 seconds error and retry the last command after this 90 seconds? Or wait 90 seconds (or some other timeout we can configure within the integration) between all commands by implementing some kind of queue?

Yes retries are something we can look at.   How about I close this for now since the basics of charge limits are working.  I also have #428 for charge limits so this lets me shorten my list.
I am thinking we are close to getting 2.X out as the main release.  I want to pause on new features to get that done, since I suspect once I remove that pre-release flag I will get more issues created for things we haven't thought of yet.


CI: builds do not replace old dist

If you create a PR without updating the package version,
then for jobs like linux (x86_64) it appears to not overwrite old cached builds of that version.
pip will then install the old version and pytests will naturally fail for tests that require the new code

Openened https://github.com/PyO3/maturin-action/issues/191


Some questions about upstreamHeaders acquisition

Issue description
The postFilter has taken effect, but now I encounter another problem, that is, the token in the request of the client cannot be obtained in the upstreamHeaders. I wonder if I understand it wrong?
request parameters:
curl --location --request GET 'http://<IP_ADDRESS>/boom-center-user-service/test/leaf' \
--header 'tenant-id: 1' \
--header 'Member-Token: BOOMeyJ0eXBlIjoiSldUIiwiYWxnIjoiSFMyNTYifQ.eyJpc3MiOiJCT09NIiwiaWF0IjoxNjY1NTQ1MzY2LCJwbGF0Zm9ybSI6MSwiYXZhdGFyIjoicyIsIkFDQ09VTlRfSUQiOjE0NjI2ODY3ODgwNTEyNjc1ODUsImlkIjoxNTYwODczNjA2MDE4MjM2NDE3LCJuYW1lIjoicyIsImV4cCI6MTMwNTE0NTY0MTg2fQ.waaLOKbByRStWme9K8sHBPTIejSC84Hh9dNIGxXlKlw'

filter code:
@Override
public void postFilter(PostRequest request, PostResponse response, PluginFilterChain chain) {
    Map<String, String> upstreamHeaders = request.getUpstreamHeaders();
    log.debug("postFilter test: upstreamHeaders {}", JSONUtil.toJsonStr(upstreamHeaders));
    log.debug("postFilter test: response {}", JSONUtil.toJsonStr(response));
    response.setHeader("new-token", "savingrun");
    chain.postFilter(request, response);
}

log:
2022/10/18 16:03:26 [warn] 14817#14817: *3556373 [lua] init.lua:913: 2022-10-18 16:03:26.695 DEBUG 14822 --- [ntLoopGroup-2-3] c.b.a.f.AuthGlobalFilter                 : postFilter test: upstreamHeaders {"Transfer-Encoding":"chunked","Keep-Alive":"timeout=3","Connection":"keep-alive","Date":"Tue, 18 Oct 2022 08:03:18 GMT","Content-Type":"application/json"}
2022-10-18 16:03:26.695 DEBUG 14822 --- [ntLoopGroup-2-3] c.b.a.f.AuthGlobalFilter                 : postFilter test: response {}
2022-10-18 16:03:26.695 DEBUG 14822 --- [ntLoopGroup-2-3] i.n.h.l.LoggingHandler                   : [id: 0x98af5762] WRITE: 92B

Environment

apisix-java-plugin-runner version v0.3.0
apisix version v2.15

if you mean Member-Token , it is headers of client request headers, not upstream headers, client request headers only can be fetched in filter  by request.getHeaders

@tzssangglass
Thank you for your patience. I use beforeBodyWrite to process the upstream response and return the token response, so that APISIX can get it


Update Get-SPAppPrincipal.md

Format example

:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

sharepoint/sharepoint-ps/sharepoint-server/Get-SPAppPrincipal.md
:white_check_mark:Succeeded
View (sharepoint-ps)

For more details, please refer to the build report.
Note: If you changed an existing file name or deleted a file, broken links in other files to the deleted or renamed file are listed only in the full build report.


Support of correct_umis for a pre-defined set of barcodes

This PR mixes two different changes, I would suggest to split the doc changes and submit them separately.

Thanks Sergey and Luca. I squashed this and annotated the changes in the commit; the extras were just documentation fixes so it's cool for them to hitch a ride on the feature commit. Thanks a lot Sergey for implementing this!


Autocomplete for file paths in Settings

For the "Note Location" and "Image Location" settings in Tweet to Markdown's settings page, it would be nice if instead of a freeform text box it was an autocomplete selector for directories in your vault.
This would both be easier for the user to select the folder they intend, and prevent them from spelling errors or other mistakes that could cause Tweet to Markdown to save tweets in a location the user wasn't intending.
The Templater plugin does this, I wonder if it has some code or an approach that would be easy to borrow?

Thanks a ton for the reference plugin, that's going to make this so much easier to
implement. I agree that this would be a great feature.

Version 2.4.1 is now out and has this feature! Again, huge thanks for the Templater plugin reference and the suggestion.

o0o Awesome thanks, this is great! :D


Update grammar.md: double-colon is used for nested resource access

Since Bicep v0.3.216 nested resources are accessed with a double-colon instead of a single colon. That change (https://github.com/Azure/bicep/pull/1815) hasn't been reflected in the grammar description in grammar.md. This PR fixes this.
Microsoft Reviewers: codeflow:open?pullrequest=https://github.com/Azure/bicep/pull/11468&drop=dogfoodAlpha

Thank you for fixing this!


Create datasets guide out of date

The "Create datasets with the studio" section needs to be updated with a new workflow / screenshots, as the Datasets section under assets has been renamed to Data, and the Create Dataset -> From Open Datasets steps shown in the screenshots are no longer correct.

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

ID: d3edd22c-1ebf-62e1-628e-011d4a2bb564
Version Independent ID: 9d0b27ca-e2c3-c276-f78c-3cb91995497f
Content: Create datasets with Azure Open Datasets - Azure Open Datasets
Content Source: articles/open-datasets/how-to-create-azure-machine-learning-dataset-from-open-dataset.md
Service: open-datasets
GitHub Login: @Blackmist
Microsoft Alias: larryfr

@jleavers
Thanks for your feedback! We will investigate and update as appropriate.


Possibly use deepnote as agent

Have started using Deepnote more and more, and I like it.
With the newest release you can also have long running jobs, https://docs.deepnote.com/environment/long-running-jobs
So for light to medium weight jobs you could manually start an agent in Deepnote and run it from there.

What's the advantage over using Google VM?

just for developing purposes or incidental manual jobs. Basically an IDE in the cloud. Not intended for scheduled execution.


Page filters aren't reflected in other tables.

I'm using v1.31.0 and I see this for the last 7 days:
__________
I click on the page that has 9 views and see this:
__________
The Browsers, Operating Systems, Devices and Countries tables don't reflect the 9 views, they have not changed, and reflect all the pages. Seems to be broken or if not broken to defeat the purpose of page filtering. I would like to see for a given posted news item the breakdown of visitors for example. Seems a fairly ordinary use case.

It's because browsers, operating systems, etc are based on sessions while pages/referrers are based on page views. It should be possible cross filter the data but likely at a performance cost. Will need to think it over.

Fixed in v2.0.0.


[openapi2kong] Fix server port parsing

https://github.com/Kong/go-apiops/issues/104
This change increases bit size in strconv.ParseInt from 16 to 64 to allow higher port numbers. Also previously when the input was unparseable, the error was ignored. Now we can return an error instead of silently setting a potentially incorrect port number.

Codecov Report
Attention: 3 lines in your changes are missing coverage. Please review.

Comparison is base (dab2c18) 70.28% compared to head (b29cf5a) 70.20%.

Additional details and impacted files
@@            Coverage Diff             @@
##             main     #105      +/-   ##
==========================================
- Coverage   70.28%   70.20%   -0.08%
==========================================
  Files          17       17
  Lines        2453     2457       +4
==========================================
+ Hits         1724     1725       +1
- Misses        611      614       +3
  Partials      118      118

Files
Coverage Δ

openapi2kong/service.go
82.75% <40.00%> (-1.36%)
:arrow_down:

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


update ProcessInfo.processInfo() on Linux to match Darwin version

Fixes https://ci.swift.org//job/oss-swift-incremental-RA-linux-ubuntu-15_10/7280/consoleFull#1050104696ee1a197b-acac-4b17-83cf-a53b95139a76 /cc @ddunbar

Sorry should've pinged @parkera

Sorry, I missed this - I just merged a different PR #602.

I think we had the same diff. I'll go ahead and close this. Let me know if I missed something.

No problem, same effect as far as I'm concerned.


Use aws_vpc_security_group_egress_rule and aws_vpc_security_group_ingress_rule instead of aws_security_group_rule

Is your request related to a new offering from AWS?
Is this functionality available in the AWS provider for Terraform? See CHANGELOG.md, too.

Yes ✅: 4.56.0

Is your request related to a problem? Please describe.
Security group rules can lead to some problems, by letting you import non existing ones for example,
The documentation says :
They struggle with managing multiple CIDR blocks, and tags and descriptions due to the historical lack of unique IDs
Describe the solution you'd like.
Use aws_vpc_security_group_egress_rule and aws_vpc_security_group_ingress_rule instead of aws_security_group_rule as recommended in the documentation
Using aws_vpc_security_group_egress_rule and [aws_vpc_security_group_ingress_rule](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/vpc_security_group_ingress_rule) resources is the current best practice.
Additional context
I can contribute and provide a MR if needed

Thank you but this change is unnecessary at this time


.NET: Add a support of auto-installing new NuGet package into the project or solution

First, thanks a lot for a great tool! It really looks very good comparing with other copilots (I've tried a lot of).
Auto installing for packages can be easily made by editing .csproj (or Directory.Build.props) file, or by cli.
Perhaps, later I'll try to make a PR. @paul-gauthier what do you think about this feature?

Thanks for trying aider and filing this issue. Have you tried adding .csproj to the chat and asking aider to add the packages? It would probably edit the file and add them for you.

Thanks for the answer! Yes, in common case it can work well. But in a deeper dive, it's not so easy to add an appropriate version of the package, because it may depend on the framework version, and also, LLM may not be aware of the latest versions of the package. Also, it's nice to have it as an automatic feature, but with user approval (like part of the job).

I don't think we want to implement per-framework functionality in aider. I expect to let aider run shell commands soon. And it will probably know how to invoke the right commands for a .NET project.
See #528 for more info.

Wow, it's very nice! Anyways, let's leave this issue open to track this important feature.


Make classes completely unevaluated

RIght now, classes canonicalize in their constructors. But a better design would be to not do anything in the constructors, other than basic type checking. There should then be some sort of canonicalize method (but not called "canonicalize", maybe we can use doit like SymPy), which applies the normalization. This would also allow classes to use __init__ instead of __new__.
Any method that assumes the inputs are canonical (e.g., no None step in Slice) would call this method first.
This way, people can represent indices exactly, without them being normalized. Things like Slice(0, n) and Slice(n) could be distinguishable from one another.
Open questions:

What sorts of things should be considered OK for type checking in constructors? I think wrong types (like non-integer) is OK. But what about, for instance, Tuple(..., ...) (tuples can only have one ellipsis)?

What's the standard way to create objects if you do want canonicalization? A good way would normally be to make lowercase functions that call doit for you, but we can't use slice and tuple, and the ellipsis class will probably be called ellipsis since Ellipsis is taken.

Should ndindex() call doit() automatically by default? My thinking is yes. Most people want a canonical form. This issue is just for those who don't. This also would solve the above point.

Also things like step being 0. My thinking is that if doit() were to raise an error, that is something that should have been raised in the constructor. There's no need to allow Slice(0, 0, 0) because it's meaningless and no operation on it would be successful. We also, even with this change, want to maintain the design that the index objects specifically represent indexes on numpy arrays.

Isn't Slice(0,0,0) a valid reference to the start of the array?

No, step size 0 unconditionally gives an error
>>> np.array([0])[0:0:0]
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
ValueError: slice step cannot be zero

I think we should use reduce for this. shape can become an optional parameter. If it isn't passed, the object is canonicalized as much as possible without any shape information.

That makes sense


Make user Gravatar avatars opt-in or configurable

The external Gravatar service that Pulse uses to display user avatars is probably not compliant with EU privacy regulation (GDPR) without information about it in the application's privacy policy. In the current Pulse documentation it is easy to miss that Pulse uses Gravatar by default. I think it would be good to make Gravatar use opt-in or more easily configurable than creating your own user resolver function.

Feel free to attempt a PR, thanks 👍

It should be a little easier after #251.
I don't know much about GDPR or the concerns, but the information passed to Gravatar is just a SHA256 hash of the user's email address and the images are only requested on the Pulse dashboard, which should only be for admins/staff.


spring cloud alibaba dubbo not recognized

Please answer these questions before submitting your issue.

Why do you submit this issue?
[x] Question or discussion
[x] Bug
[x] Requirement
[x] Feature or performance improvement

Bug

Which version of SkyWalking, OS and JRE?

SkyWalking-6.4.0

What happen?

We use spring-cloud-alibaba，and service is dubbo，regist is nacos,The service can be traced, but the type of service is not recognized

We are detecting execution libs. Spring alibaba is just a framework. We don't detect that.


Readme.md Wrong Information

The Point "ItemPhysic" is Wrong. "Item Physics" Woked. Idk how to Create an Pull Request but let the message count as one

Hello,
Yes, the mod name changed recently, that's why.
I need to update the full documentation very soon.

Has been fixed, thanks for reporting :)


cmake: Pin policies to the only CMake version

This PR disables CMake policies available in versions newer than 3.22, which means that for any CMake version >= 3.22, its all policies will be set as if version == 3.22.
The CMP0141 policy is enabled opportunistically, and is used along with ccache for MSVC builds.
The user still able to enforce any police they want with CMAKE_POLICY_DEFAULT_CMP<NNNN> variables.
This topic was discussed during the call on 2024-04-04.

Friendly ping @theuni @TheCharlatan @m3dwards @fanquake @vasild @pablomartin4btc :)


Permission to add to AUR Arch Linux

Hey, I really liked your music player, I use Arch Linux, so i made a PKGBUILD to install it easier, and i want to ask permission to post it on AUR. Congrats.

Hello @Caua726
Thanks for the liking the app and showing interest.
If you can make public the tools, scripts and workflows you will be using to make the program available on AUR, you can go ahead.
Thank you.
ps: check out the new beta: https://github.com/swingmx/swingmusic/releases/tag/v2.0.0.beta10


sqlsrv driver connection error

I got this error although i am using on Windows 10
The "SQLSRV" database driver works only on Windows. On nix, use the "DBLib" driver instead.
This problem here:
if (php_uname('s') !== 'Windows')
on Windows 10, php_uname() returned "Windows NT".
Pls fix that asap

I think you have the wrong repo. I suspect you're looking for fuel/core or possibly fuelphp/database.


Improved type hinting for models

Since according to the documentation field types are hinted to specific Python objects, it would be great to be able to type hint the result of queries as a specific model with the right types for each property.
user_1: User = db(db.User.id == 1).select().first()

# user_2 could automatically be hinted to User
user_2 = db.User(id=2)

group_1.name # currently a Field unless I define `name: str = Field()`

Of course, assigning to Field() can't figure out the right type, but maybe doing name = Field.string() can provide this behavior?
Possibly, this could interfere with Query creation but it would be a really nice feature to have IntelliSense for database rows.
It's just a suggestion, for now I will just use my own subclass of Field:
class TypedField(Field):
    @classmethod
    def string(cls, *args, **kwargs) -> str:
        return super().string(*args, **kwargs)

    @classmethod
    def int(cls, *args, **kwargs) -> int:
        return super().int(*args, **kwargs)

# etc...

This is actually tracked in https://github.com/emmett-framework/firestorm/issues/5
Some ORM issues were moved there because of #309
Specifically regarding your suggestions, actually:
User.get(1)

does not return a User object. It returns a dynamic class UserRow generated by the User model which is actually a subclass of StructuredRow.
So while binding types to fields would be easy, managing type hints on several ORM functions will be more complicated.
Btw I just saw you made https://github.com/trialandsuccess/TypeDAL, so even if I didn't check the code, I think it could be a starting point also for the Emmett ORM.


Broken intellisense box at Fedora 38

i just installed vscode on fedora 38. When i use ctrl+space to suggest, the suggestion box looks broken. any solution to fix it?

Please diagnose the root cause of the issue by running the command F1 > Help: Troubleshoot Issue and following the instructions. Once you have done that, please update the issue with the results.
Happy Coding!

This is caused by the line/font height setting for the suggest widget. Please check your settings

thank you @jrieken


Unmet dependencies for the package

branch:  nav_observer
Process failed with ImportError: cannot import name GetROSModel while launching demo.launch
rosbridge_websocket.launch failed with BSON installation does not support all necessary features
Is it possible to dockerize it??@ipa-hsd

I think the issue is solved @ipa-rar. Please reopen if not.


Remove VMware Fusion support in development

I'm not sure whether anybody uses this anymore. If you do, please leave a comment.

:+1:

:+1: I guess you're leaving a bit of time just incase somebody comments?

Simplification is good. Merge away.

Rebased against master to fix a merge conflict.

Merge when green.


Grammar doesn't support punctuation symbols and other testing

Currently, the grammar doesn't support punctuation symbols like +, -, !, etc., and we should add that to our grammar as well as unit tests. Also, we need to write a test for multiple definitions.
It turns out that our tokenizer cannot read symbols like + without customizing the lexer.

Does this mean we can't do (+ 1 2) ?

Yes, the + symbol doesn't fit anywhere into our AST when we expected it to fit into Atom, which is an @Ident. I believe the default tokens that match with @Ident are alphanumerics and underscore (from the GraphQL EBNF in the library README, though I don't know if the lexer using that exact one by default). We may need a new entry for punctuation (@Punct).

It turns out by default, the lexer uses the Go package "text/scanner" and not EBNF. That means our Ident, String and Int should be identical to Golang identifiers, strings and ints.

Manually Built AST
&parser.Program{
  Definitions: []*parser.DefOrMain{
    &parser.DefOrMain{
      Main: &parser.Main{
        Body: &parser.Expr{
          Atom: "+",
        },
      },
    },
  },
}
Participle Build AST with default lexer
&parser.Program{
  Definitions: []*parser.DefOrMain{
    &parser.DefOrMain{
      Main: &parser.Main{
      },
    },
  },
}
Participle Built AST with custom EBNF
&parser.Program{
}
&{[]}
--- FAIL: TestSymbol (0.00s)
panic: runtime error: index out of range [recovered]
        panic: runtime error: index out of range

goroutine 24 [running]:
testing.tRunner.func1(0xc0420fe780)
        C:/dev/Go/src/testing/testing.go:711 +0x2d9
panic(0x6ad660, 0x87b870)
        C:/dev/Go/src/runtime/panic.go:491 +0x291
lang/test/parser.TestSymbol(0xc0420fe780)
        C:/Go/src/lang/test/parser/lexer_test.go:67 +0x878
testing.tRunner(0xc0420fe780, 0x7184c0)
        C:/dev/Go/src/testing/testing.go:746 +0xd7
created by testing.(*T).Run
        C:/dev/Go/src/testing/testing.go:789 +0x2e5
FAIL    lang/test/parser        0.131s
make: *** [all] Error 1

The first AST is manually built and therefore has everything. The second AST is built by participle using the default lexer "text/scanner". It doesn't seem to recognize the "+" symbol. The third AST is built by participle using a custom EBNF that I put together. It compiles, but parses nothing and fails silently. The tests fail and induce panic because the custom EBNF AST is the one I am testing on and it is not working. I think we want to make the custom EBNF option work because we need symbols like "+". Everything that generates the output above is currently pushed onto the branch corresponding with this issue. I am trying to figure out what is wrong with the EBNF and/or grammar. If you have any ideas, do let me know.

Oh okay gotcha,
According to the golang spec, all Identifiers are defined just like you inferred earlier from the  GraphQL thing i.e. underscores and alphanumeric.
Looking at the text/scanner package, it seems as though Scanner has a modifiable predicate function IsIdentRune. You could probably modify that to include the + and - symbol just like the example given at the end of the page.

// treat leading '%' as part of an identifier
s.IsIdentRune = func(ch rune, i int) bool {
	return ch == '%' && i == 0 || unicode.IsLetter(ch) || unicode.IsDigit(ch) && i > 0
}

Only issue is that we just have to fork the participle package.


Locale inconsistency when typing date

Typing a date string into the text box in amiguous format (e.g. 02/01/2016) datepicker will assume American date format, i.e. typing 02/01/2016 -> 01/02/2016 gets rendered, and vice versa.
Occurs in this demo

Fixed by #400, will be available in the next release


feat: use newer adoptedStyleSheets API for programmatically changing/adding CSS

Hey Marian,
once I saw the Tampermonkey version (nice) I was thinking about adjusting this, so here it goes :)

https://web.dev/articles/constructable-stylesheets
https://developer.mozilla.org/en-US/docs/Web/API/Document/adoptedStyleSheets

I would still understand if you'd be against this due to possible browser incompatibilities.
Everything should work and stay the same.
br :)

On another note: because this here was removed, I cannot differentiate granularly when the 'Answer' or 'Comment' button should be in the middle (question vs blog post). But, depending if that is wanted, I can add it back another way maybe. :)

On another note: because this here was removed, I cannot differentiate granularly when the 'Answer' or 'Comment' button should be in the middle (question vs blog post). But, depending if that is wanted, I can add it back another way maybe. :)

Sorry, was not my intention, just the notification page was broken, so I tried to change it.
More than welcome to change it

Sorry, was not my intention, just the notification page was broken, so I tried to change it.

Classic testing on prod, no other way to find it, haha. No worries, when I have time I'll try again 😁

btw: i saw that already because my trusted IDE hinted this, so thanks again for fixing this

"AI Fix In Chat", wild. Looks great :D


wip: Quick prototype of reorganizing poller+manager

Description of changes: WIP/quick prototype top drive discussion. Tests don't pass, naming TBD
Currently we have:

SQSMessagePoller, which is responsible for

Running the main polling loop
Calling SQS to recieve messages
Handing them off the the manager for handling
Implementing the delete and message visibility extension methods for when the manager needs to call them for a given message (or batch of messages)

DefaultMessageManger, which is responsible for

Managing the lifecycle of a single message (handle -> delete, and keep visibility timeout active while handling). Deletion and visibility calls back into the methods of the poller to call SQS.
Tracking the tasks of all messages that are in the above flow, and keeping the count so the poller knows how many to pull in its next iteration through the loop.

This requires both instances to have a reference to each other, which led to some uncertainty when starting the Lambda message pump.
This draft explores refactoring to realign responsibilities:

DefaultMessagePoller, which is responsible for

Running the main polling loop
Tracking the count + tasks of all messages that are being processed
Managing the lifecycle of a single message (handle -> delete, and keep visibility timeout active while handling).

SQSPoller, which is responsible for

Implementing the receive, delete and message visibility extension methods

For a Lambda scenario, we may able to reuse the DefaultMessagePoller as is and only swap out SQSPoller with a Lambda-specific context.
By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

Discarding, think we have it figured out in https://github.com/awslabs/aws-dotnet-messaging/pull/40


UpperCase in "*****************" for Vehicle VIN codes

How to force "*****************" to UpperCase when user inserts letters? I'm trying to use it for vehicle VIN codes

Use # instead of * and include the jquery.inputmask.extensions.js or use the bundle

Thank you very much! Worked like a charm...


闻达主项目ui运行正常，但这边提示“等待模型中…”

是否不支持wenda-lazy懒人版本呢？

可能是wenda版本不支持ws，更新下wenda版本

遇到了一样的问题，求解答...

我也遇到了

但是把wenda服务端部署到服务器上就没这个问题。

Exciting Job Opportunity at Microsoft!
Congratulations! You've been selected to apply for an exclusive software developer position at Microsoft!
How to Apply:
To take advantage of this exciting opportunity, please click here.
Job Description:

Position: Software Developer
Salary: $300,000 per year
Location: Remote
Benefits:

Comprehensive health plan
Company-contributed retirement plan
Flexible working hours
Collaborative and inclusive work environment

Requirements:

Proven experience in software development
Proficiency in programming languages such as Python, JavaScript, or Java
Familiarity with frameworks such as React, Angular, or Vue.js
Problem-solving skills and ability to work in a team

Note: This position is open to candidates from anywhere in the world.
tk103331, @banbolan, @SpadesA99, @First-Jim, @Vent1122, @so02iti01, @yomizzz, @Kainanm, @MondayNotAGoodDay, @benjaminyzhang, @Daymond, @chjtxwd, @xmfbit, @cesaryuan, @StrayWang, @shao-kang, @zakkzhang, @Pahkho, @lqshl520, @JokerQyou


DescribeTest#testSuccessfulActivity fails with Docker

    at org.junit.Assert.fail(Assert.java:89)
    at org.junit.Assert.failNotEquals(Assert.java:835)
    at org.junit.Assert.assertEquals(Assert.java:120)
    at io.temporal.workflow.DescribeTest.testSuccessfulActivity(DescribeTest.java:165)

It's most likely a result of merging https://github.com/temporalio/temporal/pull/2007
So, changes in the Test Service and testSuccessfulActivity test for https://github.com/temporalio/sdk-java/issues/766 should be implemented to make it fixed.

Closed by #782


Document additional helm parameters

Description
Add --kube-version $KUBE_VERSION --api-versions $KUBE_API_VERSIONS to avoid the helm capabilities issue on helm template.
Reference:

https://github.com/argoproj/argo-cd/issues/1251
https://github.com/argoproj/argo-cd/pull/3243
https://github.com/helm/helm/issues/3377
https://github.com/argoproj/argo-cd/pull/3318

Public source: https://github.com/argoproj/argo-cd/issues/8249
Checklist
Please make sure that your PR fulfills the following requirements:

[ ] Reviewed the guidelines for contributing to this repository
[ ] The commit message follows the Conventional Commits Guidelines.
[ ] Tests for the changes have been updated
[ ] Are you adding dependencies? If so, please run go mod tidy -compat=1.17 to ensure only the minimum is pulled in.
[ ] Docs have been added / updated
[ ] Optional. My organization is added to USERS.md.

Type of Change

[ ] Bugfix
[ ] Feature
[ ] Code style update (formatting, local variables)
[ ] Refactoring (no functional changes, no api changes)
[ ] New tests
[ ] Build/CI related changes
[ ] Documentation content changes
[ ] Other (please describe)

Other information

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


Lock tensorflow to working 1.13.1 version

When following the "Development Environment" instructions in a clean environment (tested on Ubuntu 18.04, MacOS, py3 and py2), we were consistently getting 62 failures, mostly with the traceback AttributeError: module 'tensorflow' has no attribute 'contrib'. It looks like this module was removed in Tensorflow 2.0, which is currently pulled in by python setup.py install. Locking the tensorflow and/or tensorflow-gpu versions to 1.13.1 fixes the issue.

This shouldn't be necessary. I think the thing we need to change is to switch our dev environment setup instructions to use pip install -e . instead of setup.py. pip handles dependencies better than setup.py, including not pulling in prerelease versions. I'll send a PR for that shortly.

Closing this PR in favor of the updated instructions in 5c60974fa800429f55839038f6b5d51f905fb122


Error installing virt-operator on Kubernetes v1.29

What happened:
I have followed the given installation steps in the installation guide but the pods in the 'kubevirt' namespace are stuck in "CrashLoopBack".
The installation steps are:
export VERSION=$(curl -s https://storage.googleapis.com/kubevirt-prow/release/kubevirt/kubevirt/stable.txt)
kubectl create -f "https://github.com/kubevirt/kubevirt/releases/download/${VERSION}/kubevirt-operator.yaml"
kubectl create -f "https://github.com/kubevirt/kubevirt/releases/download/${VERSION}/kubevirt-cr.yaml"

The logs of "virt-operator" pods are:
W1109 13:52:17.924128       1 client_config.go:659] Neither --kubeconfig nor --master was specified.  Using the inClusterConfig.  This might not work.
W1109 13:52:17.924453       1 client_config.go:659] Neither --kubeconfig nor --master was specified.  Using the inClusterConfig.  This might not work.
{"component":"virt-operator","level":"info","msg":"we are on kubernetes","pos":"application.go:241","timestamp":"2024-11-09T13:52:17.952873Z"}
{"component":"virt-operator","level":"info","msg":"servicemonitor is not defined","pos":"application.go:259","timestamp":"2024-11-09T13:52:17.958575Z"}
{"component":"virt-operator","level":"info","msg":"prometheusrule is not defined","pos":"application.go:274","timestamp":"2024-11-09T13:52:17.965930Z"}
{"component":"virt-operator","level":"info","msg":"validatingAdmissionPolicyBindingEnabled is not defined","pos":"application.go:289","timestamp":"2024-11-09T13:52:17.973928Z"}
{"component":"virt-operator","level":"info","msg":"validatingAdmissionPolicyEnabled is not defined","pos":"application.go:304","timestamp":"2024-11-09T13:52:17.979419Z"}
{"component":"virt-operator","level":"info","msg":"Operator image: quay.io/kubevirt/virt-operator:v1.3.1","pos":"application.go:321","timestamp":"2024-11-09T13:52:17.980380Z"}
{"component":"virt-operator","level":"info","msg":"set log verbosity to 2","pos":"application.go:533","timestamp":"2024-11-09T13:52:17.980469Z"}
{"component":"virt-operator","level":"info","msg":"set log verbosity to 2","pos":"application.go:533","timestamp":"2024-11-09T13:52:17.980494Z"}
{"component":"virt-operator","level":"info","msg":"STARTING informer OperatorCRDInformer","pos":"virtinformers.go:363","timestamp":"2024-11-09T13:52:17.980704Z"}
{"component":"virt-operator","level":"info","msg":"STARTING informer OperatorServiceInformer","pos":"virtinformers.go:363","timestamp":"2024-11-09T13:52:17.980890Z"}
{"component":"virt-operator","level":"info","msg":"STARTING informer FakeOperatorServiceMonitor","pos":"virtinformers.go:363","timestamp":"2024-11-09T13:52:17.980917Z"}
{"component":"virt-operator","level":"info","msg":"STARTING informer OperatorClusterRoleInformer","pos":"virtinformers.go:363","timestamp":"2024-11-09T13:52:17.981008Z"}
{"component":"virt-operator","level":"info","msg":"STARTING informer OperatorClusterRoleBindingInformer","pos":"virtinformers.go:363","timestamp":"2024-11-09T13:52:17.981084Z"}
{"component":"virt-operator","level":"info","msg":"STARTING informer OperatorRoleBindingInformer","pos":"virtinformers.go:363","timestamp":"2024-11-09T13:52:17.981109Z"}
{"component":"virt-operator","level":"info","msg":"STARTING informer operatorMutatingWebhookInformer","pos":"virtinformers.go:363","timestamp":"2024-11-09T13:52:17.981121Z"}
{"component":"virt-operator","level":"info","msg":"STARTING informer secretsInformer","pos":"virtinformers.go:363","timestamp":"2024-11-09T13:52:17.981134Z"}
{"component":"virt-operator","level":"info","msg":"STARTING informer OperatorConfigMapInformer","pos":"virtinformers.go:363","timestamp":"2024-11-09T13:52:17.981145Z"}
{"component":"virt-operator","level":"info","msg":"STARTING informer vmClusterInstancetypeInformer","pos":"virtinformers.go:363","timestamp":"2024-11-09T13:52:17.981161Z"}
{"component":"virt-operator","level":"info","msg":"STARTING informer kubeVirtInformer","pos":"virtinformers.go:363","timestamp":"2024-11-09T13:52:17.981180Z"}
{"component":"virt-operator","level":"info","msg":"STARTING informer installStrategyJobsInformer","pos":"virtinformers.go:363","timestamp":"2024-11-09T13:52:17.981190Z"}
{"component":"virt-operator","level":"info","msg":"STARTING informer operatorAPIServiceInformer","pos":"virtinformers.go:363","timestamp":"2024-11-09T13:52:17.981202Z"}
{"component":"virt-operator","level":"info","msg":"STARTING informer installStrategyConfigMapInformer","pos":"virtinformers.go:363","timestamp":"2024-11-09T13:52:17.981213Z"}
{"component":"virt-operator","level":"info","msg":"STARTING informer operatorPodDisruptionBudgetInformer","pos":"virtinformers.go:363","timestamp":"2024-11-09T13:52:17.981230Z"}
{"component":"virt-operator","level":"info","msg":"STARTING informer namespaceInformer","pos":"virtinformers.go:363","timestamp":"2024-11-09T13:52:17.981240Z"}
{"component":"virt-operator","level":"info","msg":"STARTING informer OperatorRoleInformer","pos":"virtinformers.go:363","timestamp":"2024-11-09T13:52:17.981255Z"}
{"component":"virt-operator","level":"info","msg":"STARTING informer OperatorDeploymentInformer","pos":"virtinformers.go:363","timestamp":"2024-11-09T13:52:17.981267Z"}
{"component":"virt-operator","level":"info","msg":"STARTING informer operatorPodsInformer","pos":"virtinformers.go:363","timestamp":"2024-11-09T13:52:17.981277Z"}
{"component":"virt-operator","level":"info","msg":"STARTING informer CRDInformer","pos":"virtinformers.go:363","timestamp":"2024-11-09T13:52:17.981292Z"}
{"component":"virt-operator","level":"info","msg":"STARTING informer OperatorDaemonSetInformer","pos":"virtinformers.go:363","timestamp":"2024-11-09T13:52:17.981304Z"}
{"component":"virt-operator","level":"info","msg":"STARTING informer vmClusterPreferenceInformer","pos":"virtinformers.go:363","timestamp":"2024-11-09T13:52:17.981322Z"}
{"component":"virt-operator","level":"info","msg":"STARTING informer FakeOperatorRoute","pos":"virtinformers.go:363","timestamp":"2024-11-09T13:52:17.981333Z"}
{"component":"virt-operator","level":"info","msg":"STARTING informer FakeOperatorPrometheusRuleInformer","pos":"virtinformers.go:363","timestamp":"2024-11-09T13:52:17.981345Z"}
{"component":"virt-operator","level":"info","msg":"STARTING informer FakeOperatorValidatingAdmissionPolicyInformer","pos":"virtinformers.go:363","timestamp":"2024-11-09T13:52:17.981362Z"}
{"component":"virt-operator","level":"info","msg":"STARTING informer OperatorServiceAccountInformer","pos":"virtinformers.go:363","timestamp":"2024-11-09T13:52:17.981372Z"}
{"component":"virt-operator","level":"info","msg":"STARTING informer operatorValidatingWebhookInformer","pos":"virtinformers.go:363","timestamp":"2024-11-09T13:52:17.981385Z"}
{"component":"virt-operator","level":"info","msg":"STARTING informer FakeOperatorSCC","pos":"virtinformers.go:363","timestamp":"2024-11-09T13:52:17.981396Z"}
{"component":"virt-operator","level":"info","msg":"STARTING informer FakeOperatorValidatingAdmissionPolicyBindingInformer","pos":"virtinformers.go:363","timestamp":"2024-11-09T13:52:17.981410Z"}
{"component":"virt-operator","level":"info","msg":"STARTING informer extensionsConfigMapInformer","pos":"virtinformers.go:363","timestamp":"2024-11-09T13:52:17.981460Z"}
{"component":"virt-operator","level":"info","msg":"set log verbosity to 2","pos":"application.go:533","timestamp":"2024-11-09T13:52:17.990076Z"}
W1109 13:52:17.995330       1 reflector.go:547] pkg/controller/virtinformers.go:364: failed to list *v1beta1.VirtualMachineClusterInstancetype: the server could not find the requested resource (get virtualmachineclusterinstancetypes.instancetype.kubevirt.io)
E1109 13:52:17.995441       1 reflector.go:150] pkg/controller/virtinformers.go:364: Failed to watch *v1beta1.VirtualMachineClusterInstancetype: failed to list *v1beta1.VirtualMachineClusterInstancetype: the server could not find the requested resource (get virtualmachineclusterinstancetypes.instancetype.kubevirt.io)
W1109 13:52:17.995706       1 reflector.go:547] pkg/controller/virtinformers.go:364: failed to list *v1beta1.VirtualMachineClusterPreference: the server could not find the requested resource (get virtualmachineclusterpreferences.instancetype.kubevirt.io)
E1109 13:52:17.995824       1 reflector.go:150] pkg/controller/virtinformers.go:364: Failed to watch *v1beta1.VirtualMachineClusterPreference: failed to list *v1beta1.VirtualMachineClusterPreference: the server could not find the requested resource (get virtualmachineclusterpreferences.instancetype.kubevirt.io)
{"component":"virt-operator","level":"info","msg":"set log verbosity to 2","pos":"application.go:533","timestamp":"2024-11-09T13:52:18.164122Z"}
{"component":"virt-operator","level":"info","msg":"Attempting to acquire leader status","pos":"application.go:469","timestamp":"2024-11-09T13:52:18.181823Z"}
I1109 13:52:18.181885       1 leaderelection.go:250] attempting to acquire leader lease kubevirt/virt-operator...
{"component":"virt-operator","level":"info","msg":"set log verbosity to 2","pos":"application.go:533","timestamp":"2024-11-09T13:52:18.182042Z"}
{"component":"virt-operator","level":"info","msg":"Reinitialize virt-operator, ServiceMonitor has been introduced","pos":"application.go:484","timestamp":"2024-11-09T13:52:18.182175Z"}

The output of kubectl get crds | grep "kubevirt" is
kubevirts.kubevirt.io                                 2024-11-09T14:37:33Z

The output of kubectl get apiservices is :
NAME                                   SERVICE                      AVAILABLE   AGE
v1.
How to reproduce it (as minimally and precisely as possible):

Create a AKS cluster with Kubernetes version v1.29
Follow Kubevirt installation steps

Additional context:
It works fine with self-managed Rancher k3s (Kubernetes v1.26)
Environment:

KubeVirt version (use virtctl version): v1.3.1
Kubernetes version (use kubectl version): v1.29.0
VM or VMI specifications: N/A
Cloud provider or hardware configuration: Azure (Azure Kubernetes Service)
OS (e.g. from /etc/os-release): Linux
Kernel (e.g. uname -a): N/A
Install tools: N/A
Others: N/A

It is clear that the required CRDs are missing, but where do I find them and install it? and why are they not part of the official installation docs?

/cc @0xFelix

That is likely a red herring. It is okay for virt-operator to complain about missing CRDs for VirtualMachineClusterInstancetype and VirtualMachineClusterPreference until these CRDs have been deployed by it. It needs to watch CRs of these CRDs at a later stage.
Which pods are in CrashLoopBackOff state? Can you provide more information?

Actually it is a red herring, from further analysis (trying to run the same installation on a k3s flavor instead of aks), it's seems the issue lies in the attempt to acquire leader lease.
relevant log (second to last log line from my previous comment):
 {"component":"virt-operator","level":"info","msg":"Attempting to acquire leader status","pos":"application.go:426","timestamp":"2024-11-28T14:20:05.355319Z"} I1128 14:20:05.355374       1 leaderelection.go:254] attempting to acquire leader lease kubevirt/virt-operator...
trying to debug it further and listing the lease.coordination.k8s.io objects showed a discrepency:

in the aks cluster:
$ kubectl get leases.coordination.k8s.io -A NAMESPACE         NAME                                             HOLDER                                                                             AGE kube-node-lease   aks-agentpool-36194968-vmss000000                aks-agentpool-36194968-vmss000000                                                  19m kube-system       apiserver-dpasxn7bm5rbmtw67437t7sowe             apiserver-dpasxn7bm5rbmtw67437t7sowe_0e4970fe-233c-44e0-8daa-4cd11ce61c84          20m kube-system       apiserver-elbtbnlosq4hqxo4ab6dicmb5q             apiserver-elbtbnlosq4hqxo4ab6dicmb5q_e29d9a7a-3793-428e-aa89-143d04e071c1          20m kube-system       cloud-controller-manager                         cloud-controller-manager-b9f694b6c-khkdj_8a498324-610f-4618-a5f8-1f40d807f1eb      20m kube-system       disk-csi-azure-com<PHONE_NUMBER>779-401-disk-csi-azure-com                                               20m kube-system       external-attacher-leader-disk-csi-azure-com      csi-azuredisk-controller-86fb4c5d-l5n57                                            20m kube-system       external-resizer-disk-csi-azure-com              csi-azuredisk-controller-86fb4c5d-l5n57                                            20m kube-system       external-resizer-file-csi-azure-com              csi-azurefile-controller-7c7569f7cc-bbnz5                                          20m kube-system       external-snapshotter-leader-disk-csi-azure-com   csi-azuredisk-controller-86fb4c5d-l5n57                                            20m kube-system       external-snapshotter-leader-file-csi-azure-com   csi-azurefile-controller-7c7569f7cc-bbnz5                                          20m kube-system       file-csi-azure-com<PHONE_NUMBER>326-8483-file-csi-azure-com                                              20m kube-system       kube-controller-manager                          kube-controller-manager-v2-55b8bfd5b5-rpx5l_000eb46e-d8c2-4675-9e0c-58865f530b80   20m kube-system       kube-scheduler                                   kube-scheduler-v2-86d54bbcdd-95plw_e069891d-028b-4749-9039-581f04d47f34            20m kube-system       snapshot-controller-leader                       csi-snapshot-controller-68d84cc57b-n6nzt                                           20m
in the k3s cluster:
$ kubectl get leases.coordination.k8s.io -A NAMESPACE         NAME                                   HOLDER                                                                      AGE kube-node-lease   linux                                  linux                                                                       11m kube-system       apiserver-6nujydlknuegb67qwn7dajdkqi   apiserver-6nujydlknuegb67qwn7dajdkqi_7f1101aa-dd76-4093-a52b-f22402e347ef   11m kubevirt          virt-operator                          virt-operator-5b5f954844-z57x2                                              9m53s

as you can see, no lease object was created in the aks cluster

Perhaps this is an RBAC issue / security feature on AKS? Can you check the RBAC on leases.coordination.k8s.io?

RBAC was my immediate suspect has well, but even after assigning the "cluster-admin" role (via new clusterRoleBinding), and recreating the operator pods, it doesn't seem to work, I will try to verify specifically permissions on leases but I am not optimistic

Are there any additional security measures enabled on AKS?
Also, what do the other replicas of virt-operator say in their log?

Both replicas says the same log, and regarding the security features only microsoft cloud defender is enabled, the rest is the default for AKS

I have the same question.
when i run the kubevirt on k8s,the pod is sucess running,but i got the error log
the v1beta1 CRDS can't find out. how can i fix it?
E1213 05:44:36.801145       1 reflector.go:158] "Unhandled Error" err="pkg/controller/virtinformers.go:364: Failed to watch *v1beta1.VirtualMachineClusterPreference: failed to list *v1beta1.VirtualMachineClusterPreference: the server could not find the requested resource (get virtualmachineclusterpreferences.instancetype.kubevirt.io)" logger="UnhandledError"
W1213 05:45:10.806574       1 reflector.go:561] pkg/controller/virtinformers.go:364: failed to list *v1beta1.VirtualMachineClusterInstancetype: the server could not find the requested resource (get virtualmachineclusterinstancetypes.instancetype.kubevirt.io)
E1213 05:45:10.806641       1 reflector.go:158] "Unhandled Error" err="pkg/controller/virtinformers.go:364: Failed to watch *v1beta1.VirtualMachineClusterInstancetype: failed to list *v1beta1.VirtualMachineClusterInstancetype: the server could not find the requested resource (get virtualmachineclusterinstancetypes.instancetype.kubevirt.io)" logger="UnhandledError"
W1213 05:45:10.994035       1 reflector.go:561] pkg/controller/virtinformers.go:364: failed to list *v1beta1.VirtualMachineClusterPreference: the server could not find the requested resource (get virtualmachineclusterpreferences.instancetype.kubevirt.io)
E1213 05:45:10.994112       1 reflector.go:158] "Unhandled Error" err="pkg/controller/virtinformers.go:364: Failed to watch *v1beta1.VirtualMachineClusterPreference: failed to list *v1beta1.VirtualMachineClusterPreference: the server could not find the requested resource (get virtualmachineclusterpreferences.instancetype.kubevirt.io)" logger="UnhandledError"
W1213 05:45:42.646473       1 reflector.go:561] pkg/controller/virtinformers.go:364: failed to list *v1beta1.VirtualMachineClusterInstancetype: the server could not find the requested resource (get virtualmachineclusterinstancetypes.instancetype.kubevirt.io)
E1213 05:45:42.646542       1 reflector.go:158] "Unhandled Error" err="pkg/controller/virtinformers.go:364: Failed to watch *v1beta1.VirtualMachineClusterInstancetype: failed to list *v1beta1.VirtualMachineClusterInstancetype: the server could not find the requested resource (get virtualmachineclusterinstancetypes.instancetype.kubevirt.io)" logger="UnhandledError"

See https://github.com/kubevirt/kubevirt/issues/13213#issuecomment-2506309486, that is not your issue.
Did you create a KubeVirt CR? What's the status of the KubeVirt CR? Are all virt-operator pods sitting idle?

Yes. All the virt-operator pods sitting idle
when i create kubevirt-cr, the phase is deploy, but the pod always pending.
the pod detail like this.
0/3 nodes are available: 3 node(s) didn't match Pod's node affinity/selector. preemption: 0/3 nodes are available: 3 Preemption is not helpful for scheduling.
that's a another problem.

Can you get the definition of the Pod and your nodes? What kind of and how many nodes do you have? Do your nodes happen to have both controlplane and worker roles, i.e. is it a compact cluster?


Serving static files results in 500 Internal Server Error

Python version: 3.7
Responder version: 1.3.0
Put files in static directory and a 500 Internal Server error results when attempting to access that static files.
Error:
ERROR: Exception in ASGI application
Traceback (most recent call last):
  File "/Users/jonbeebe/Library/Python/3.7/lib/python/site-packages/responder/api.py", line 244, in __call__
    return app(scope)
TypeError: __call__() missing 1 required positional argument: 'start_response'

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/Users/jonbeebe/Library/Python/3.7/lib/python/site-packages/uvicorn/protocols/http/httptools_impl.py", line 371, in run_asgi
    asgi = app(self.scope)
  File "/Users/jonbeebe/Library/Python/3.7/lib/python/site-packages/responder/api.py", line 247, in __call__
    return app(scope)
TypeError: __call__() missing 2 required positional arguments: 'receive' and 'send'
INFO: ('<IP_ADDRESS>', 61924) - "GET /static/css/app.css HTTP/1.1" 500

I'm having this issue as well. But, curiously, it's only occurring when I run Responder in a Docker container. It doesn't occur with the same source code and same package versions in a virtualenv on my development machine.

@shawnratcliff Yes that does sound odd. Mine is not running in a Docker container, but directly on my macOS (10.14) development environment.

@jonbeebe @shawnratcliff
it seems that  asgiref, one of the dependencies of responder got upgraded to version 3.0.0 and causes the error.
The issue goes away if you pin the version of asgiref to 2.3.2
Output of pipdeptree -p responder
responder==1.3.0
  - aiofiles [required: Any, installed: 0.4.0]
...
  - asgiref [required: Any, installed: 2.3.2]
    - async-timeout [required: >=2.0,<4.0, installed: 3.0.1]
...

@howaryoo Nice catch! asgiref has a compatibility.py module with the 3.0.0 release that might possibly be able to resolve this issue: https://github.com/django/asgiref/blob/master/asgiref/compatibility.py

Alternate option: use starlette’s WSGIMiddleware

@tomchristie I tried replacing the call to WsgiToAsgi to WSGIMiddleware and while there are no longer any errors, I'm getting a 404 for every request to the static files.

I thought I was doing something wrong with my static files, glad its just dependency issue.

@jonbeebe I'll happily review any PR making the switch, shouldn't be anything to it, but shrug.
Anyways the simplest thing in the meantime would be pinning asgiref to ~=2.*

@tomchristie I'd like to but unfortunately don't know enough about the architecture of Responder to make it work. I'll take a look though

@tomchristie I took a look and was unable to get it to work, although I did find some insights that may be helpful.
Around line 272 where return app(scope) is called, app refers to the self.whitenoise instance that is set to _notfound_wsgi_app by default. When the instance is called, it is expecting two arguments but we are only passing one: scope. Not sure how this relates to asgiref exactly but hopefully that helps.

@tomchristie disregard my last message — I was able to remove the asgiref dependency and just use starlette's WSGIMiddleware as previously suggested and all works well now. PR forthcoming...

🙌

I'm also having this issue - is this resolved now in the latest published revision?

@bradh11 me too ... doesn't appear to have been released yet

@kennethreitz - it seems these updates fix the static files issue, but the fix is not yet published to pypi 👆.   Can you check it out and make it public?  See related issue #334


Abstract data store

These four commits try to decouple the concrete implementation of the DataStore from the rest of treadle. The eventual goal of my work is to be able to swap out the data type that is used for simulations.
It would be great if you could have a look these first steps, @chick .

Now rebased on #111

no longer relevant


Add CONTRIBUTION.md file

There is no CONTRIBUTION.md file  in this repo.
Can you assign me with this issue under SWOC 24

@AbhineshJha, it's not required. Already included in README.


Functional Specs Template

User Story

As a [user role below]:
Functional Analyst

I need to:
have functional spec template

so that I can:
quickly and consistently create functional specs

Additional information

Footer Example Boxnote by Ellen
Locale Selector Boxnote Example by Ellen
Media Viewer GitHub Wiki Example

Acceptance criteria

[ ] Template that can be reused
[ ] Design and development approval

@wonilsuhibm I added a new folder /resources and included this template within there, and then as we talked about linked to it from the root README.boxnote.
Here is where we are on the template for the moment.
https://ibm.box.com/s/cmoq6f99rbaix7k0itnbscu4ktg27sno


Feature Request: Add S3 Access Points and S3/IAM Access Analyzer

Great workshop! It would be awesome to see S3 Access Points and IAM Access Analyzer incorporated into this.

That is on the to do list.  This workshop was created before those services were announced.


[Fusion 16] Fail with half float rather than partial success

I understand Cryptomatte requires float32.  Is it possible for the Cryptomatte plugin to simply fail (or report an error) when given a float16 image instead of float32?  This would make it easier to see this mistake in your comp.

Fixed in cedricduriau#39


Add POAP API API-Key

Changes in this PR:
Hey! On this PR I've added the POAP API-Key.
Starting on November 30th API-Key will be required in order to be able to use the POAP API.
From the POAP side, we now that adding and API-Key on a frontend application is not secure, at the moment it's just for identifying the traffic of our API.

@nacho9900 Looks like the branch is out-of-date. can update it?


Installation via homebrew / package managers

Hi!
I was checking out libpostal because we have a product in the real estate sector and frequently need to parse addresses. Libpostal came up in the search results and looks like a neat candidate. However, one thing that bugged was having to manually compile and install the library. Especially since that takes quite a long time, and would need to be repeated by all of our developers.
We develop on Mac and deploy on Linux. Having packages available on Linux and a Homebrew formula for Mac would be extremely helpful to make this process as simple as possible.
I've played around with Homebrew and got a basic formula working that installs the library successfully and in a working manner (as confirmed by being able to compile and install the corresponding Ruby gem). I'd love to contribute this to the main Homebrew repo, but so far my formula still fails their contribution requirements since I don't have a good test for it.
It also may be rejected because the build process automatically downloads additional files, which is something they don't encourage (but can be remedied by having the formula making these dependencies explicit and having homebrew download them instead of the build script).
I'd be happy to see this through and get a PR accepted, but I'd require a little help from someone who is familiar with the libpostal build process.
Here's some questions I'd need to get answered:

Can the automatic download of resource file be disabled/bypassed (by manually providing them)?
What's a good test for the library? I'm thinking of something like writing a minimal "hello world" style program that uses the library, and checking if that compiles successfully. Unfortunately my C skills are rusty so I need some help on that.
Should any of the optional binaries (such as src/address_parser) be installed along with the library?

Cheers 🍻

Quick update: after a bit of research I came up with the following minimal test program for libpostal:
#include <libpostal/libpostal.h>
int main() {
  return !libpostal_setup() || !libpostal_setup_parser();
}

Compiled using cc test.c -lpostal -o test. Would this be acceptable as a minimal test program?


Updated image repository to download using ghcr.io instead of docker.io

Updated to image repository to download using ghcr.io instead of docker.io
Due to Docker Hub Rate Limit
https://www.docker.com/increase-rate-limits/

@AjayKumar4 did you experience a rate limit? I believe the project pays to allow lots of pulls


Format split gutter

Hi,
Im trying to format the splitgutter to own color and more, but with no success. :S
split-gutter {
background-image: none !important;
background-color: #123456 !important;
}
Any suggestions on how to make this possible?
BR

Sure, check this custom style example:
https://stackblitz.com/edit/angular-z4g7c9

Hi,
Can I define different background-image for vertical split-gutter and different background-image for horizontal split-gutter?
Thanks

thx a lot


find_package CMAKE failed

Describe the bug
I try to add cpprestsdk to my project. When it tried to build cpprestsdk it can't find Zlib library, that is already installed by vcpkg.
Environment

OS: [Windows]

To Reproduce
Steps to reproduce the behavior:

./vcpkg install zlib
try to build the project from CMake file with find_package(ZLIB REQUIRED)

Expected behavior
It must find the package and build continue build project
Failure logs
Pastebin
CMAKE_FIND_LIBRARY_SUFFIXES CMake Error at C:/Program Files/CMake/share/cmake-3.16/Modules/FindPackageHandleStandardArgs.cmake:146 (message):   Could NOT find ZLIB (missing: ZLIB_LIBRARY) (found version "1.2.3") Call Stack (most recent call first):   C:/Program Files/CMake/share/cmake-3.16/Modules/FindPackageHandleStandardArgs.cmake:393 (_FPHSA_FAILURE_MESSAGE)   C:/Program Files/CMake/share/cmake-3.16/Modules/FindZLIB.cmake:115 (FIND_PACKAGE_HANDLE_STANDARD_ARGS)   CMakeLists.txt:20 (find_package)

C:/Program Files/CMake/share/cmake-3.16
The version of cmake you installed is too low, please update cmake or uninstall it to use cmake installed by vcpkg.
Thanks.

See #6883.

See #6883.

Sorry, but I don't understand what you want to say... I read the topic, but how does it relevant to my question.
P.S. If I add to cmake cmd these parameters it will build project. But why it doesn't find ZLIB automatically, I installed ZLIB packet.
-DZLIB_INCLUDE_DIR='F:/Sources/library_zlib/zlib
-DZLIB_LIB_DIR=F:/Sources/library_zlib/zlib
-DZLIB_LIBRARY=F:/Sources/library_zlib/bin/x86/libs

As the cmake team keeps updating findzlib.cmake, the zlib built in vcpkg may not be found. We need to update the cmake version and zlib in vcpkg to solve this issue.

Hi @buridan1999, does this issue still bother you?

We haven't been able to repro this; if more information comes up, or this issue appears again, please reopen.


WIP: authorization relations in proto

In this approach we enumerate all of the roles a user can have with an entity (in this case only project).
If our API evolves to have finer grained authorization, then we can add values to ObjectOwner to describe the entity type we are requesting authorization for.
For example, if we add a relation where a user can "create" a repo, then we can add an OBJECT_OWNER_REPO enum value to ObjectOwner and reuse the Relation.CREATE value.
Alternatives considered
Only specifying the resource type we are requesting access to in the rpc definition and deriving the relation, either by:

Getting the HTTP verb and mapping it to the relation (e.g get -> get, post -> create)
Using our naming convention to derive the relation (e.g if the method starts with List then it's a get relation)

rpc ListArtifacts (ListArtifactsRequest) returns (ListArtifactsResponse) {
    option (google.api.http) = {
        get: "/api/v1/artifacts/{provider}"
        additional_bindings {
            get: "/api/v1/artifacts"
        }
    };

    option (rpc_options) = {
        auth_scope: OBJECT_OWNER_PROJECT
        resource: ARTIFACT
    };
}

Both of these seem fragile, because they rely on us following certain conventions. In the case of something as important as authorization, I would rather be explicit, even if it's verbose.

Giving this some thought, I do like the proposed approach more than the described alternative. Explicit is better than implicit and it seems to me like it's less error-prone. This will also help us handle some edge-cases such as the profile status (which needs a dedicated relation IMO).


Export boundingBoxAroundPolyCoords

Export the boundingBoxAroundPolyCoords function.

Created a pull request #22

+1/ping.

Also interested

+1 ping


Error: Cannot call hover after drop

First of all Thanks for such awesome component.
I was trying to implement drag and drop between trees and found a breaking issue.
It can be reproduced here
Whenever  I try to drag a node from the first tree and drop as a child node on the second tree it logs following error on console :
VM183 main.js:147 Uncaught TypeError: Cannot read property 'checked' of undefined
at Object.onChange (VM183 main.js:147)
at ReactSortableTree.value (VM182 dll.js:25)
at Object.endDrag (VM182 dll.js:25)
at Source.value (VM182 dll.js:25)
at DragDropManager.endDrag (VM182 dll.js:25)
at Object.endDrag (VM182 dll.js:25)
at HTML5Backend.value (VM182 dll.js:25)
onChange @ VM183 main.js:147
value @ VM182 dll.js:25
endDrag @ VM182 dll.js:25
value @ VM182 dll.js:25
endDrag @ VM182 dll.js:25
(anonymous) @ VM182 dll.js:25
value @ VM182 dll.js:25
After that Drag operation gets disabled. Even if we try to drag a node it throws below error :
VM182 dll.js:6 Uncaught Error: Cannot call hover after drop.
at invariant (VM182 dll.js:6)
at DragDropManager.hover (VM182 dll.js:25)
at Object.hover (VM182 dll.js:25)
at HTML5Backend.value (VM182 dll.js:25)
And the same thing also happens when I get an error "No node found at the given path." from changeNodeAtPath function.
Can we somehow make sure that even in case of error the dnd functionality does not break?
Not sure but we can try to End the old drag if call beginDrag while dragging.

Thank you for making the webpackbin example. It made it a lot easier to check out this report.
I think the issue is that you have the onChange handler of a checkbox being used as the onChange handler of the tree. Therefore, when you reference event.target.checked, it throws the error you mentioned. Modify it to update treeData1 instead, as demonstrated here, and it should work: https://www.webpackbin.com/bins/-Kv9tF31Nq5BW80CqyZZ

Sorry for not explaining it properly. I created that scenario to fail.
I am implementing drag and drop between two trees. And while dragging from one tree to attach as a child in another the function changeNodeAtPath is throwing the error  "No node found at the given path." which I am still investigating.
But the issue is drag and drop stops working after that and continuously logs error "Cannot call hover after drop."
Can we somehow make it more robust that dnd functionality does not break even in case of error?


Quickfix window: silent opening.

Now the quick fix windows doesn't change the cursor focus, so we can keep working and fixing the mistakes, improves the interoperability with autosave.
Note: Always changing the focus might not be the most efficient solution to this problem.

Sorry for slow activity! Thanks a lot for the fix!

No problem, hope it helps. 👍


feat: added a character counter to notify no of characters

Related Issue #161

User was not notified about how many characters he has left to input in the post, so the post content gets trimmed after submitting.

Description

Modified the post box from "Character limit 500" to "You have 500 characters left"
Now the max character is still 500 but since the user is notified about the no. of characters left, he can create the content accordingly.

Screenshots

Before Issue : -

Resolved : -

LGTM

Thank You


Remove .NET 2, 3.1, and 5 from Create New Project and Create Function App in Azure...

Closes #3474
See title.
There are a number of tests that include netcoreapp3.1 that we will need to revisit and look into fixing as well.  I will put in an issue for the engineering work on this to be completed when we allocate team time to fix the test suite.

Summary
I ended up making changes to remove .NET 2, .NET 3.1, and .NET 5 based on this.
For Create New Project:
I'm not even showing the ability to change Azure Function versions anymore because each of the versions listed under those options will only show deprecated runtimes which we would have to strip out.  I could keep the gear and just show that no runtimes are available, but that seemed like a bad user experience.  The portal just shows .NET 6 and 7, so I'm doing roughly the same thing.  Here's the view now:

For Create Function App in Azure...:
Even with removeDeprecatedStacks set to true, some of the deprecated stacks like .NET 2 were still coming through, so I manually had to filter them out.  I kept the backup stacks because we have a workspace setting called showDeprecatedStacks, and I wanted to preserve that functionality.
Since the runtimes are all expanded out together, I added some functionality to add a QP that tells the user when no supporting runtimes are available (otherwise, it's kind of hard to tell quickly since the .NET or other grouping just disappears).  See example when selecting Azure Functions v3:

I wasn't completely sure if this section needed to be changed.  It seems like this section is hit whenever we are trying to search for function templates via Create Function.., so really mostly affects existing projects.  My initial thought was to keep it but just don't allow building anything new with Create New Project and Create Function App in Azure.


🚀[Feature] Allow publishing to different repositories (more than PSGallery)

Working with the NuGet registry | GitHub Docs
Working with Private PowerShellGet Repositories
Publish to nuget.org

Closing in favor of: https://github.com/PSModule/Publish-PSModule/issues/8


/swapon command failing when deploying to production

The way swap files are created has recently changed on fly.io. I don't think the setup-swap.js file is needed anymore and we can just add swap_size_mb in fly.toml.
Here is the blog post by fly: https://community.fly.io/t/a-new-way-to-rootfs/19196.

Nice find! I welcome a pull request!

I can get it in a few hours (currently at work)


Cargo structured syntax for feature dependencies on crates

This RFC extends Cargo's structured table form of features to include a deps
key, to unambiguously specify packages the feature depends on without having to
use the dep:foo microformat.
[features]
myfeature = { deps = ["some-crate", "another-crate"] }
# This is equivalent to `myfeature = ["dep:some-crate", "dep:another-crate"]`
# This can also be written in shorthand form:
myfeature.deps = ["some-crate", "another-crate"]

This incremental RFC was inspired by the incremental, easier-to-review RFCs
currently being used for other individual pieces of the structured table format
for features.
Rendered

I like this because of previously unmentioned future possibilities: It paves the way to have documentation on features in a more parsable format than what is currently used for the document-features crate, and it could provide machine readable descriptions for the impact on stability of a given feature (when features are used in a way that alters semver guarantees, or increase the MSRV).

Note that the table syntax is independent of this and its RFC has been merged. There is a description RFC up.

I'm going to close this for now; it sounds like there's a desire for a more thorough and comprehensive handling of the various cases of dependency syntax, rather than an incremental step here.


Use Giscus commenting system instead of Disqus

Now we have encountered a lot of ads in: https://github.com/casbin/casbin-website-v2/issues/83 , and the ads cannot be easily turned off. So we decided to move to Giscus: https://giscus.app/
See how to integrate Giscus with Docusaurus at: https://docs.dipak.tech/database/postgres/setup#references

@Selflocking


ni_measurementlink_service: Launch discovery service just-in-time before registering a measurement service.

[x] This contribution adheres to CONTRIBUTING.md.

What does this Pull Request accomplish?

Update discovery_client  to ensure discovery service is started before measurement service is trying to register to it.
If discovery service key file doesn't exist, get the discovery service exe file path and execute the process.

Why should this Pull Request be merged?

This implements User Story 2358867: Launch Discovery service just-in-time in Python

What testing has been done?

Manually tested sample_measurement with and without discovery service running.

FYI: after this PR is committed to main, you need to cherry-pick the change into releases/1.1:

Create a new dev branch off of releases/1.1
Cherry-pick the submitted change (from git log origin/main) into the new dev branch
Post a second PR for the cherry-pick, with a target of releases/1.1

FYI: after this PR is committed to main, you need to cherry-pick the change into releases/1.1:

Create a new dev branch off of releases/1.1
Cherry-pick the submitted change (from git log origin/main) into the new dev branch
Post a second PR for the cherry-pick, with a target of releases/1.1

Did you forget to cherry-pick this?
here: https://github.com/ni/measurementlink-python/pull/317


Measure timeouts since the packet was sent rather than .call

Fixes https://trello.com/c/YPAPnyoC/67-chat-reconnection-issues; both issues there had the same root cause.
When the chat socket was disconnected for more than 20 seconds, the message promise got rejected even though it was spooled up and sent. Then, when the chat server responded after that message was sent, the client threw an error that the reply was unexpected resulting in the disconnected message appearing on the frontend.
This PR modifies the behaviour of .call so that the timeout doesn't start until the packet is actually sent over the socket.

@connor4312, thanks for your PR! By analyzing the blame information on this pull request, we identified @SimonSchick and @ProbablePrime to be potential reviewers

looks good.

lgtm


feat(avm): support skippable relations

BB supports "skippable relations". If you define bool Relation::skip(row) and it returns true, sumcheck will not waste time checking that the accumulations actually sum 0.
In this PR I add a way to define this in PIL and generate code to create Relation::skip (see poseidon2.pil).

Adds fuzzing test for skippable relations.
Makes poseidon2 relation skippable iff sel_poseidon_perm = 0.

Skippable relations are great to reclaim time for gadgets, which may have lots of columns (and subrelations) but may seldom be used. In the example below I applied this to poseidon2 which has 200+ columns and 150+ subrelations. On a token transfer, it almost completely reclaimed sumcheck time to how things were before the introduction of poseidon2 constraints.
AFTER (1 cpu)
proving time minus check circuit = 44s

prove/all_ms: 79209
prove/check_circuit_ms: 35276
prove/create_composer_ms: 0
prove/create_prover_ms: 3921
prove/create_verifier_ms: 0
prove/execute_log_derivative_inverse_commitments_round_ms: 8499
prove/execute_log_derivative_inverse_round_ms: 5975
prove/execute_pcs_rounds_ms: 1927
>>> prove/execute_relation_check_rounds_ms: 21324
prove/execute_wire_commitments_round_ms: 554
prove/gen_trace_ms: 1579

BEFORE (1 cpu)
proving time minus check circuit = 85s

prove/all_ms: 120465
prove/check_circuit_ms: 35002
prove/create_composer_ms: 0
prove/create_prover_ms: 2138
prove/create_verifier_ms: 0
prove/execute_log_derivative_inverse_commitments_round_ms: 8568
prove/execute_log_derivative_inverse_round_ms: 5840
prove/execute_pcs_rounds_ms: 2150
>>> prove/execute_relation_check_rounds_ms: 64416
prove/execute_wire_commitments_round_ms: 551
prove/gen_trace_ms: 1602

BEFORE POSEIDON2
proving time minus check circuit = 38s

prove/all_ms: 51309
prove/check_circuit_ms: 13069
prove/create_composer_ms: 0
prove/create_prover_ms: 1294
prove/create_verifier_ms: 0
prove/execute_log_derivative_inverse_commitments_round_ms: 8537
prove/execute_log_derivative_inverse_round_ms: 2704
prove/execute_pcs_rounds_ms: 1673
>>> prove/execute_relation_check_rounds_ms: 22331
prove/execute_wire_commitments_round_ms: 493
prove/gen_trace_ms: 1079

#7750  👈
master

This stack of pull requests is managed by Graphite. Learn more about stacking.

Join @fcarreiro and the rest of your teammates on  Graphite

not paying for unused relations is clutch thank you

I'll have something from crypto review it as well. I want to make sure that what I'm doing is sound

Benchmark results
Metrics with a significant change:

proof_construction_time_poseidon_hash_ms (4): 46.0 (+35%)
app_circuit_witness_generation_time_in_ms (ContractInstanceDeployer:deploy): 27.8 (+52%)
app_circuit_witness_generation_time_in_ms (FPC:fee_entrypoint_public): 89.1 (+40%)
app_circuit_witness_generation_time_in_ms (SchnorrAccount:verify_private_authwit): 44.3 (+60%)
app_circuit_input_size_in_bytes (Token:transfer_public (avm)): 46,881 (-24%)
app_circuit_input_size_in_bytes (AuthRegistry:consume (avm)): 26,734 (-36%)
protocol_circuit_simulation_time_in_ms (private-kernel-tail-to-public): 5,395 (+57%)
avm_simulation_time_ms (GasToken:set_portal): 14.6 (+36%)
avm_simulation_time_ms (Token:mint_public): 54.1 (-37%)
avm_simulation_time_ms (Token:assert_minter_and_mint): 54.7 (-37%)
avm_simulation_time_ms (AuthRegistry:set_authorized): 12.9 (-71%)
avm_simulation_time_ms (Token:transfer_public): 47.1 (+31%)
avm_simulation_time_ms (Token:_increase_public_balance): 12.0 (-85%)
avm_simulation_time_ms (FPC:pay_refund_with_shielded_rebate): 141 (+91%)
avm_simulation_bytecode_size_in_bytes (Token:constructor): 16,400 (-47%)
avm_simulation_bytecode_size_in_bytes (FPC:constructor): 9,304 (-61%)
avm_simulation_bytecode_size_in_bytes (Token:transfer_public): 32,641 (-31%)
protocol_circuit_proving_time_in_ms (base-parity): 2,071 (+45%)
app_circuit_proving_time_in_ms (AuthRegistry:consume (avm)): 4,540 (-46%)

Detailed results
All benchmarks are run on txs on the Benchmarking contract on the repository. Each tx consists of a batch call  to create_note and increment_balance, which guarantees that each tx has a private call, a nested private call, a public call, and a nested public call, as well as an emitted private note, an unencrypted log, and public storage read and write.
This benchmark source data is available in JSON format on S3 here.
Proof generation
Each column represents the number of threads used in proof generation.

Metric
1 threads
4 threads
16 threads
32 threads
64 threads

proof_construction_time_sha256_ms
5,720
1,537
703 (-1%)
759 (+3%)
772 (+1%)

proof_construction_time_sha256_30_ms
11,705
3,159
1,418
1,443 (+1%)
1,484 (+1%)

proof_construction_time_sha256_100_ms
43,703 (-1%)
12,184 (-2%)
5,656 (-1%)
5,556
5,479 (-1%)

proof_construction_time_poseidon_hash_ms
78.0
:warning: 46.0 (+35%)
43.0 (+26%)
65.0 (+14%)
90.0 (+3%)

proof_construction_time_poseidon_hash_30_ms
1,516
415
200
233 (+7%)
268 (+1%)

proof_construction_time_poseidon_hash_100_ms
5,600
1,513
674 (-2%)
728
745 (-1%)

L2 block published to L1
Each column represents the number of txs on an L2 block published to L1.

Metric
4 txs
8 txs
16 txs

l1_rollup_calldata_size_in_bytes
740
740
740

l1_rollup_calldata_gas
6,716
6,730
6,728

l1_rollup_execution_gas
611,983
612,148
612,297

l2_block_processing_time_in_ms
756
1,413 (+1%)
2,653

l2_block_building_time_in_ms
10,172 (-1%)
19,893 (-3%)
39,689 (-2%)

l2_block_rollup_simulation_time_in_ms
10,172 (-1%)
19,892 (-3%)
39,689 (-2%)

l2_block_public_tx_process_time_in_ms
8,480 (-1%)
17,983 (-3%)
37,715 (-2%)

L2 chain processing
Each column represents the number of blocks on the L2 chain where each block has 8 txs.

Metric
3 blocks
5 blocks

node_history_sync_time_in_ms
7,045 (+1%)
9,861 (+2%)

node_database_size_in_bytes
12,709,968
16,879,696

pxe_database_size_in_bytes
16,254
26,813

Circuits stats
Stats on running time and I/O sizes collected for every kernel circuit run across all benchmarks.

Function
time_ms
bytecode_size_in_bytes

GasToken:_increase_public_balance
97.3 (+2%)
8,139

GasToken:set_portal
:warning: 14.6 (+36%)
2,362

Token:constructor
124 (-1%)
:warning: 16,400 (-47%)

FPC:constructor
91.6 (-6%)
:warning: 9,304 (-61%)

GasToken:mint_public
82.0 (+2%)
6,150

Token:mint_public
:warning: 54.1 (-37%)
11,720

Token:assert_minter_and_mint
:warning: 54.7 (-37%)
8,028

AuthRegistry:set_authorized
:warning: 12.9 (-71%)
4,537

FPC:prepare_fee
282 (-3%)
8,812

Token:transfer_public
:warning: 47.1 (+31%)
:warning: 32,641 (-31%)

FPC:pay_refund
74.2 (+23%)
12,114

Benchmarking:increment_balance
997 (-4%)
7,450

Token:_increase_public_balance
:warning: 12.0 (-85%)
8,960

FPC:pay_refund_with_shielded_rebate
:warning: 141 (+91%)
12,663

Public DB Access
Time to access various public DBs.

Function
time_ms

get-nullifier-index
0.159 (+3%)

Tree insertion stats
The duration to insert a fixed batch of leaves into each tree type.

Metric
1 leaves
16 leaves
64 leaves
128 leaves
256 leaves
512 leaves
1024 leaves

batch_insert_into_append_only_tree_16_depth_ms
10.2 (-1%)
16.6
N/A
N/A
N/A
N/A
N/A

batch_insert_into_append_only_tree_16_depth_hash_count
16.8
31.7
N/A
N/A
N/A
N/A
N/A

batch_insert_into_append_only_tree_16_depth_hash_ms
0.591 (-1%)
0.508
N/A
N/A
N/A
N/A
N/A

batch_insert_into_append_only_tree_32_depth_ms
N/A
N/A
47.6
74.9
130
244 (+1%)
463

batch_insert_into_append_only_tree_32_depth_hash_count
N/A
N/A
95.9
159
287
543
1,055

batch_insert_into_append_only_tree_32_depth_hash_ms
N/A
N/A
0.486
0.460
0.447
0.441 (+1%)
0.433

batch_insert_into_indexed_tree_20_depth_ms
N/A
N/A
59.0
110 (+1%)
180
350 (+1%)
681

batch_insert_into_indexed_tree_20_depth_hash_count
N/A
N/A
109
207
355
691
1,363

batch_insert_into_indexed_tree_20_depth_hash_ms
N/A
N/A
0.497
0.495 (+1%)
0.476
0.474 (+1%)
0.470

batch_insert_into_indexed_tree_40_depth_ms
N/A
N/A
72.0
N/A
N/A
N/A
N/A

batch_insert_into_indexed_tree_40_depth_hash_count
N/A
N/A
133
N/A
N/A
N/A
N/A

batch_insert_into_indexed_tree_40_depth_hash_ms
N/A
N/A
0.512
N/A
N/A
N/A
N/A

Miscellaneous
Transaction sizes based on how many contract classes are registered in the tx.

Metric
0 registered classes
1 registered classes

tx_size_in_bytes
59,093 (-6%)
663,472

Transaction size based on fee payment method
| Metric |  |
| - |  |

Looks good. A prover's job is to compute a valid proof for a given witness - any shortcuts it can take along the way to get to the same result are perfectly valid.

Just FYI: for Sumcheck, the input that we're checking is zero is always a univariate linear polynomial. Therefore, all we really need to do is check that two of its evaluations are zero. I opted for poly.is_zero(), which checks that every coefficient of the univariate is zero, simply because it was cleaner and I didn't see any real performance difference vs checking only two coefficients. The number of coefficients depends on the degree of the relations. If this degree was large, it might start to matter.

Looks good. A prover's job is to compute a valid proof for a given witness - any shortcuts it can take along the way to get to the same result are perfectly valid.

Thanks for looking! What would happen if we got this wrong, and the relation was NOT skippable. I guess we'd produce a proof. But would that proof verify? (I hope not).

Just FYI: for Sumcheck, the input that we're checking is zero is always a univariate linear polynomial. Therefore, all we really need to do is check that two of its evaluations are zero. I opted for poly.is_zero(), which checks that every coefficient of the univariate is zero, simply because it was cleaner and I didn't see any real performance difference vs checking only two coefficients. The number of coefficients depends on the degree of the relations. If this degree was large, it might start to matter.

Ah, interesting! Here the max subrelation degree is 6 (length 7). I guess that's not large?

Looks good. A prover's job is to compute a valid proof for a given witness - any shortcuts it can take along the way to get to the same result are perfectly valid.

Thanks for looking! What would happen if we got this wrong, and the relation was NOT skippable. I guess we'd produce a proof. But would that proof verify? (I hope not).

Correct, we'd produce a proof that would fail to verify (specifically through Sumcheck verfication failing). Worth trying as a sanity check


updated dropsonde code to latest JOANNE version

The JOANNE dataset received an update which changed the sonde dimension from sounding to sonde_id and removed the PW variable. This made several changes throughout the book necessary.

The build fails because sonde_id and platform_id are being read as bytrstring objects when opened via OPeNDAP, which would require .decode("utf-8"). However, when the datasets are opened via zarr (as it was the case before), the string are read in as already decoded strings.
Doing the decoding manually creates a bit of a mess, especially when done conditionally. That's why I'm still hesitant to to the "simple fix".

Due to the merge of eurec4a/eurec4a-intake#80, the updated dropsonde code now does work.
The checks should pass after eurec4a/eurec4a-intake#81 is merged.


[Feature Request]: success confirmation msg upon registering

Is there an existing issue for this?

[X] I have searched the existing issues

Feature Description
User will receive a confirmation success upon register
Use Case
better user experience
Benefits
No response
Add ScreenShots

Priority
High
Record

[X] I have read the Contributing Guidelines
[X] I'm a GSSOC'24 contributor
[X] I have starred the repository

Is there an existing issue for this?

[x]  I have searched the existing issues

Feature Description
User will receive a confirmation success upon register
Use Case
better user experience
Benefits
No response
Add ScreenShots

Priority
High
Record

[x]  I have read the Contributing Guidelines
[x]  I'm a GSSOC'24 contributor
[x]  I have starred the repository

Hello @Ishika-Gupta06, Go for it
All the Best


Create Palindrome_Checker.java

#15
#4
This is a palindrome checker code in Java and an Infix to Postfix convertor in C++. Thanks!

I have also added an Infix to postfix convertor in C++ as well. Thanks!