New MPARR2 Templates - 400 error, bad request

Hello:
We recently did a fresh install of MPARR2 on Win2019 and it appears everything is working order.  All scheduled tasks are there, executing successfully and we have tables and data in the custom logs in our new Log Analytics Workplace.  We tried using the new templates for MPARR2 located in the URLs below and none of them seem to work.  We are getting a Web.Content Failed to get content for many of the queries.  I have diagnostic turned on in the new LAW and these queries with a 400 error not event making to the designation (nothing logged). PowerBI templates for our MPARR1 deployment and our old LAW are working just fine on the same server.  And yes, we are using the correct LAW id when testing MPARR2. Some queries do get through though with 200 query responses.
https://github.com/microsoft/Microsoft-Purview-Advanced-Rich-Reports-MPARR-Collector/blob/main/MPARR - Templates/Copilot/MPARR2 - Copilot v1.pbit
https://github.com/microsoft/Microsoft-Purview-Advanced-Rich-Reports-MPARR-Collector/blob/main/MPARR - Templates/Information Protection/MPARR2 - Sensitivity Labels.pbit

Hi @jsawepiq,
That is a very common issue with Power BI are the templates, if it´s for any reason a field is not available all the reports fail, you need to go to Transform Data at the main menu, after the report crash, and in the new window pop-up at left you can go through all the queries and see which one of them are failing, please share the results.

MPARR2 - Copilot v1
DataSource.Error: Web.Contents failed to get contents from 'https://api.loganalytics.io/v1/workspaces/4de42342-dec0-4eff-818b-b599195f4167/query?query=AuditGeneral_CL
| where Operation_s contains "CopilotInteraction"
| project
    TimeGenerated%2C
    CopilotEventData_AccessedResources_s%2C
    CopilotEventData_AppHost_s%2C
    CopilotEventData_Contexts_s%2C
    CopilotEventData_MessageIds_s%2C
    CopilotEventData_ThreadId_s%2C
    UserId_s%2C
    ClientIP_s%2C
    Id_g%2C
    RecordType_d%2C
    Operation_s%2C
    OrganizationId_g%2C
    UserType_d%2C
    UserKey_g%2C
    Workload_s%2C
    EventCreationTime_t

&x-ms-app=OmsAnalyticsPBI&timespan=P1D&prefer=ai.response-thinning%3Dtrue' (400): Bad Request
Details:
DataSourceKind=Web
DataSourcePath=https://api.loganalytics.io/v1/workspaces/4de42342-dec0-4eff-818b-b599195f4167/query
Url=https://api.loganalytics.io/v1/workspaces/4de42342-dec0-4eff-818b-b599195f4167/query?query=AuditGeneral_CL%0A%7C%20where%20Operation_s%20contains%20%22CopilotInteraction%22%0A%7C%20project%20%0A%20%20%20%20TimeGenerated%2C%0A%20%20%20%20CopilotEventData_AccessedResources_s%2C%0A%20%20%20%20CopilotEventData_AppHost_s%2C%0A%20%20%20%20CopilotEventData_Contexts_s%2C%0A%20%20%20%20CopilotEventData_MessageIds_s%2C%0A%20%20%20%20CopilotEventData_ThreadId_s%2C%0A%20%20%20%20UserId_s%2C%0A%20%20%20%20ClientIP_s%2C%0A%20%20%20%20Id_g%2C%0A%20%20%20%20RecordType_d%2C%0A%20%20%20%20Operation_s%2C%0A%20%20%20%20OrganizationId_g%2C%0A%20%20%20%20UserType_d%2C%0A%20%20%20%20UserKey_g%2C%0A%20%20%20%20Workload_s%2C%0A%20%20%20%20EventCreationTime_t%0A%20%20%20%0A&x-ms-app=OmsAnalyticsPBI&timespan=P1D&prefer=ai.response-thinning%3Dtrue
MPARR2 - Sensitivity Labels
DataSource.Error: Web.Contents failed to get contents from 'https://api.loganalytics.io/v1/workspaces/4de42342-dec0-4eff-818b-b599195f4167/query?query=MicrosoftEntraUsers_CL
| where TimeGenerated >%3D now(-30d)
| summarize arg_max(TimeGenerated%2C UserPrincipalName_s%2C DisplayName_s%2C AssignedLicenses_s%2C City_s%2C JobTitle_s%2C Department_s%2C Mail_s%2C OfficeLocation_s%2C Id_g%2C SignInActivity_lastSignInDateTime_t%2C Country_s%2C CompanyName_s%2C AssignedPlans_s%2C Computer%2C CreatedDateTime_t%2C State_s%2C Type%2C UserType_s) by UserPrincipalName_s

&x-ms-app=OmsAnalyticsPBI&prefer=ai.response-thinning%3Dtrue' (400): Bad Request
Details:
DataSourceKind=Web
DataSourcePath=https://api.loganalytics.io/v1/workspaces/4de42342-dec0-4eff-818b-b599195f4167/query
Url=https://api.loganalytics.io/v1/workspaces/4de42342-dec0-4eff-818b-b599195f4167/query?query=MicrosoftEntraUsers_CL%20%0A%7C%20where%20TimeGenerated%20%3E%3D%20now%28-30d%29%0A%7C%20summarize%20arg_max%28TimeGenerated%2C%20UserPrincipalName_s%2C%20DisplayName_s%2C%20AssignedLicenses_s%2C%20City_s%2C%20JobTitle_s%2C%20Department_s%2C%20Mail_s%2C%20OfficeLocation_s%2C%20Id_g%2C%20SignInActivity_lastSignInDateTime_t%2C%20Country_s%2C%20CompanyName_s%2C%20AssignedPlans_s%2C%20Computer%2C%20CreatedDateTime_t%2C%20State_s%2C%20Type%2C%20UserType_s%29%20by%20UserPrincipalName_s%0A%0A&x-ms-app=OmsAnalyticsPBI&prefer=ai.response-thinning%3Dtrue

Not sure if it's the same thing, but I've experienced a similar thing with the template. If you open the Advanced Editor you can see the query which is being triggered. Copy paste that query in your Log Analytics environment and you might see what the exact error is. In my case I saw that there were 2 columns missing (Country_s and State_s).

Not sure if it's the same thing, but I've experienced a similar thing with the template. If you open the Advanced Editor you can see the query which is being triggered. Copy paste that query in your Log Analytics environment and you might see what the exact error is. In my case I saw that there were 2 columns missing (Country_s and State_s).

The big deal based on the image is that you are not using the attributes Country and State in your users, the most simple way to resolve to avoid make changes on the Power BI reports, is add at least to one user those attributes, then validate inside of the folder ConfigFiles on your MPARR installation, on the file MPARR-MicrosoftEntraUsers.json if those attributes are set to True and then run the MPARR-MicrosoftEntraUsers.ps1 script again.

MPARR2 - Copilot v1 DataSource.Error: Web.Contents failed to get contents from 'https://api.loganalytics.io/v1/workspaces/4de42342-dec0-4eff-818b-b599195f4167/query?query=AuditGeneral_CL
| where Operation_s contains "CopilotInteraction"
| project
    TimeGenerated%2C
    CopilotEventData_AccessedResources_s%2C
    CopilotEventData_AppHost_s%2C
    CopilotEventData_Contexts_s%2C
    CopilotEventData_MessageIds_s%2C
    CopilotEventData_ThreadId_s%2C
    UserId_s%2C
    ClientIP_s%2C
    Id_g%2C
    RecordType_d%2C
    Operation_s%2C
    OrganizationId_g%2C
    UserType_d%2C
    UserKey_g%2C
    Workload_s%2C
    EventCreationTime_t

&x-ms-app=OmsAnalyticsPBI&timespan=P1D&prefer=ai.response-thinning%3Dtrue' (400): Bad Request Details: DataSourceKind=Web DataSourcePath=https://api.loganalytics.io/v1/workspaces/4de42342-dec0-4eff-818b-b599195f4167/query Url=https://api.loganalytics.io/v1/workspaces/4de42342-dec0-4eff-818b-b599195f4167/query?query=AuditGeneral_CL%0A%7C%20where%20Operation_s%20contains%20%22CopilotInteraction%22%0A%7C%20project%20%0A%20%20%20%20TimeGenerated%2C%0A%20%20%20%20CopilotEventData_AccessedResources_s%2C%0A%20%20%20%20CopilotEventData_AppHost_s%2C%0A%20%20%20%20CopilotEventData_Contexts_s%2C%0A%20%20%20%20CopilotEventData_MessageIds_s%2C%0A%20%20%20%20CopilotEventData_ThreadId_s%2C%0A%20%20%20%20UserId_s%2C%0A%20%20%20%20ClientIP_s%2C%0A%20%20%20%20Id_g%2C%0A%20%20%20%20RecordType_d%2C%0A%20%20%20%20Operation_s%2C%0A%20%20%20%20OrganizationId_g%2C%0A%20%20%20%20UserType_d%2C%0A%20%20%20%20UserKey_g%2C%0A%20%20%20%20Workload_s%2C%0A%20%20%20%20EventCreationTime_t%0A%20%20%20%0A&x-ms-app=OmsAnalyticsPBI&timespan=P1D&prefer=ai.response-thinning%3Dtrue
MPARR2 - Sensitivity Labels DataSource.Error: Web.Contents failed to get contents from 'https://api.loganalytics.io/v1/workspaces/4de42342-dec0-4eff-818b-b599195f4167/query?query=MicrosoftEntraUsers_CL
| where TimeGenerated >%3D now(-30d)
| summarize arg_max(TimeGenerated%2C UserPrincipalName_s%2C DisplayName_s%2C AssignedLicenses_s%2C City_s%2C JobTitle_s%2C Department_s%2C Mail_s%2C OfficeLocation_s%2C Id_g%2C SignInActivity_lastSignInDateTime_t%2C Country_s%2C CompanyName_s%2C AssignedPlans_s%2C Computer%2C CreatedDateTime_t%2C State_s%2C Type%2C UserType_s) by UserPrincipalName_s

&x-ms-app=OmsAnalyticsPBI&prefer=ai.response-thinning%3Dtrue' (400): Bad Request Details: DataSourceKind=Web DataSourcePath=https://api.loganalytics.io/v1/workspaces/4de42342-dec0-4eff-818b-b599195f4167/query Url=https://api.loganalytics.io/v1/workspaces/4de42342-dec0-4eff-818b-b599195f4167/query?query=MicrosoftEntraUsers_CL%20%0A%7C%20where%20TimeGenerated%20%3E%3D%20now%28-30d%29%0A%7C%20summarize%20arg_max%28TimeGenerated%2C%20UserPrincipalName_s%2C%20DisplayName_s%2C%20AssignedLicenses_s%2C%20City_s%2C%20JobTitle_s%2C%20Department_s%2C%20Mail_s%2C%20OfficeLocation_s%2C%20Id_g%2C%20SignInActivity_lastSignInDateTime_t%2C%20Country_s%2C%20CompanyName_s%2C%20AssignedPlans_s%2C%20Computer%2C%20CreatedDateTime_t%2C%20State_s%2C%20Type%2C%20UserType_s%29%20by%20UserPrincipalName_s%0A%0A&x-ms-app=OmsAnalyticsPBI&prefer=ai.response-thinning%3Dtrue

The error can be very common if you don´t have certain attributes, you can go to Transform Data and see the queries on the left and see which one of them is having issues and identify the fields that are missing.


OCPBUGS-44324: Revert library go changes

Should fix https://issues.redhat.com/browse/OCPBUGS-44324

/jira refresh

/test e2e-vsphere-ovn-upgrade

/test e2e-vsphere-ovn-upgrade

/test e2e-vsphere-ovn-upgrade

/lgtm


Fixed formatting error in CircleCI configuration

:information_desk_person: This change fixes a formatting error in ef083ec and will allow the project to build correctly in CircleCI.

@aprobus: Apologies, you merged #3 before I pushed a fix for an error in that branch. :blush:

Whoops!


Support authenticated gossip read request.

Added: Support authenticated gossip read request.

Will address the linting in a separate PR.


Sometimes model fails to answer the same question

Please provide us with the following information:

This issue is for a: (mark with an x)
- [x] bug report -> please search issues before submitting
- [ ] feature request
- [ ] documentation issue or request
- [ ] regression (a behavior that used to work and stopped in a new release)

Minimal steps to reproduce

Repeat this for a few times in the same / separate chat session
Ask a question in the chat tab "Read the information below and answer the question "When Isaac Newton published his most famous book?" Isaac Newton published his most famous book, Principia, in 1687 while he was a mathematics professor at Trinity College, Cambridge."

Any log messages given by the failure

Expected/desired behavior

Model should be consistent with the same question

OS and Version?

Windows 10

azd version?

azd version 1.3.0

Versions

Mention any other details that might be useful
That's also reproducible with questions related to the index data. It's harder to achieve but sometimes I've encountered that model gets required context and just ignores it. I'll continue my work on that and provide you with further details.

Thanks! We'll be in touch soon.

Hi, thanks for reporting this issue
Unfortunately the chat models are not deterministic and may fail to answer the question even if the source is in the context provided. Things you can try:

Reduce the temperature to 0
We can look into the reproducible output feature and try to add it to the sample
. https://learn.microsoft.com/en-us/azure/ai-services/openai/how-to/reproducible-output?tabs=pyton


[Bug]: Endpoint only generates data once with Octane

What happened?
When serving the /prometheus endpoint with Octane, it will only generate the results on the first request to the endpoint in the same process. After that, no content is displayed on the endpoint.
How to reproduce the bug

Install new Laravel app
Install and configure Laravel Horizon
Install and configure Laravel Octane (Swoole)
Install this package
Enable the Laravel Horizon Gauges
Start Laravel Octane
Request the /prometheus endpoint to get the expected results
Request the /prometheus endpoint again to get an empty response

Package Version
1.0.0
PHP Version
8.2.7
Laravel Version
10.13.5
Which operating systems does with happen with?
Linux
Notes
I've only tested this with Octane and Swoole.

Using singleton() instead of scoped() here, actually resolves the issue.


Fix MSB 1 leading to negative modulus in bun

Issue #, if available: #154
Description of changes: Fixes a bug in the DER encoder of aws-jwt-verify that does not add a leading 0-byte if the MSB (most significant bit) of the public key modulus is 1. In NodeJS this doesn't throw, because OpenSSL is friendly enough (?) to still parse the modulus as a positive number, but in bun it leads to the modulus being parsed as a negative number as @cirospaciari saw. I think that's actually right, because the number is supposed to be encoded in 2's complement per DER spec (https://www.itu.int/ITU-T/studygroups/com17/languages/X.690-0207.pdf#[{"num"%3A41%2C"gen"%3A0}%2C{"name"%3A"FitH"}%2C799]).
(Also, had to fix a unit test that suddenly failed on me in Node v20, as the message changed slightly)
By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

Should also add a unit test to catch the error condition (MSB 1)

Note in modern Node (and presume in Bun) you don't need a DER encoder as you can use JWKs natively with crypto. But officially we still support Node14 that can't do that so for now I will leave the DER encoder in place.


Update code for latest dependencies

PR for the blogpost: https://github.com/oktadev/okta-blog/pull/1020

@mraible Okay to merge this as well?

Yep!


[k8s native cluster] Add OpenAPIV3schema to cluster CRD

[x] Generate openapi schema for all fields on cluster spec
[x] Generate openapi schema for fields from dynamicSchema and update cluster crd with it
[x] Test cluster creation works
[ ] Cluster spec fields ClusterTemplateAnswers.Values and DisplayName have the "required" norman tag, which makes them appear under "required" section on the openapi schema. Check if the required tag can be removed from these fields

Part of https://github.com/rancher/rancher/issues/27260

Not needed anymore


Build error

Error:
gavr@arch ~/P/NEd2 (main) [1]> nim r --hints=off --threads:on ned.nim
/home/gavr/Projects/NEd2/ned.nim(128, 39) Warning: implicit conversion to 'cstring' from a non-const location: w.filePath; this will become a compile time error in the future [CStringConv]
/home/gavr/Projects/NEd2/ned.nim(156, 28) Warning: implicit conversion to 'cstring' from a non-const location: $i; this will become a compile time error in the future [CStringConv]
/home/gavr/Projects/NEd2/ned.nim(164, 27) Warning: implicit conversion to 'cstring' from a non-const location: filename; this will become a compile time error in the future [CStringConv]
/home/gavr/Projects/NEd2/ned.nim(227, 25) Warning: implicit conversion to 'cstring' from a non-const location: $id; this will become a compile time error in the future [CStringConv]
/home/gavr/Projects/NEd2/ned.nim(322, 26) Warning: implicit conversion to 'cstring' from a non-const location: $e.id; this will become a compile time error in the future [CStringConv]
/home/gavr/Projects/NEd2/ned.nim(325, 27) Warning: implicit conversion to 'cstring' from a non-const location: e.gs; this will become a compile time error in the future [CStringConv]
/home/gavr/Projects/NEd2/ned.nim(370, 14) Error: undeclared identifier: 'newPopoverMenuFromModel'
candidates (edit distance, scope distance); see '--spellSuggest':
 (3, 4): 'newPopoverMenuBarFromModel' [proc declared in /home/gavr/.nimble/pkgs/gintro-#head/gintro/gtk4.nim(9739, 6)]
 (3, 4): 'newPopoverMenuBarFromModel' [proc declared in /home/gavr/.nimble/pkgs/gintro-#head/gintro/gtk4.nim(9755, 6)]

maybe the code was written when GTK was version 3.98 and something changed

Yes, that code was written early in 2021, and was mainly a GTK4 and GtkSourceView5 test. Indeed I intended to continue working on this editor, but GtkSourceView and GtkTextView, its foundation, is not easy. Unfortunately I do not really understand the initial NEd app any more, which was written in late 2015 with the oldgtk3 module.
Please tell me exactly what the error is and how I can fix it. Should be not that difficult for you (Hint: we generally use overloading for function names, so what do you think about the name newPopoverMenuBarFromModel ?)

And note that NEd2 is not amongst the 6 pinned Apps that github permanently shows, but deeply hidden. And from the README we have: "This is the start of a port of the NEd Nim GTK3 editor to GTK4." So we really should not expect that it is a useful tool already and all the tiny issues get permanently fixed.

Fixed.
Note that you have to install the two files shipped with the old GTK3 Ned for syntax highlighting and color scheme properly to get it working. File system paths of these files is always a daunting task. And you have to compile with option --threads:on

Nice, able to build now. And where to get and put that file for color scheme?

For me it works, even nimsuggest with CTRL E.
I guess my path to the two files is currently
$ tree .local/share/gtksourceview-5/
.local/share/gtksourceview-5/
├── language-specs
│   └── nim.lang
└── styles
└── nimdark1.xml
The files are from old Ned at github. I have used other locations before, but there the files get lost by doing updates. In above path they survived.


Entity with composite PK/FK cannot be tracked when one parent entity has not yet been added

This is Problem 1 in attached .sln file.
Entity of type SourceRelease has a PK that is made of two FK's:  One FK for Source and one for Release.
Error occurs when adding SourceRelease when related Release is being added also:
Release rel = new Release { DataProviderID = 1, NativeID = releaseNativeID, Name = Guid.NewGuid().ToString() };
int sourceID = db.Sources.First().ID;

for (int i = 0; i < 10; i++)
	rel.SourceReleases.Add(new SourceRelease {SourceID = sourceID, Release = rel  });   // sourceID is constant, we do not yet have a releaseID

db.Entry(rel).State = EntityState.Added;            // rel.ID is set to minus random number here.  This code is aware that rel.ID will be set by the database

foreach (SourceRelease sr in rel.SourceReleases)
	db.Entry(sr).State = EntityState.Added;         // error here on second iteration.  This code is not aware that rel.ID will be set by the database

InsertTest.zip

This is my error I'm trying to add the parent object more than once.


fix label handling

Q
A

Bug fix?
yes

New feature?
no

API breaks?
no

Deprecations?
no

Related tickets
fixes #248

License
Apache 2.0

What's in this PR?
Avoid using the label of the Logging CR directly, but make the fluentd/fluentbit related resource labels configurable by the user
QualifiedNamespacedName has been removed due to it was introduced back when the logging resource was namespaced, but not required anymore.
Why?
Right now every new release - if deployed using helm - causes a change in all the resources' labels which is intended.
Checklist

[x] Error handling code meets the guideline
[x] Logging code meets the guideline (TODO)
[x] User guide and development docs updated (if needed)
[x] Related Helm chart(s) updated (if needed)

This great, thanks so much!


route decorator on MethodView classes

TL;DR:

Being able to use a Blueprint's @pb.route decorator on a MethodView class can help made code more readable
It should be a pretty trivial fix.
I'm working on tests and a merge request right now.

Expected Behavior
Users should be able to combine blueprints with MethodView.
from flask import Blueprint
from flask.views import MethodView

api = Blueprint("api", __name__, url_prefix="/api/v1")

@api.route("/users")
@api.route("/users/<user_id>")
class UserAPI(MethodView):

    def get(self, user_id=None):
        if user_id is None:
            return "list of all users"
        else:
            return f"just user {user_id}"

    def post(self, user_id):
        return f"POST {user_id}"

    def delete(self, user_id):
        return f"DELETE {user_id}"

    def put(self, user_id):
        return f"PUT {user_id}"

    def PATCH(self, user_id):
        return f"PATCH {user_id}"

Actual Behavior
Using a blueprint's @route decorator on a MethodView results in TypeError is raised:
Traceback (most recent call last):
  File "/c/gitlab/mocvd/sic-inventory/.venv/lib/python3.6/site-packages/flask/app.py", line 2463, in __call__
    return self.wsgi_app(environ, start_response)
  File "/c/gitlab/mocvd/sic-inventory/.venv/lib/python3.6/site-packages/flask/app.py", line 2449, in wsgi_app
    response = self.handle_exception(e)
  File "/c/gitlab/mocvd/sic-inventory/.venv/lib/python3.6/site-packages/flask/app.py", line 1866, in handle_exception
    reraise(exc_type, exc_value, tb)
  File "/c/gitlab/mocvd/sic-inventory/.venv/lib/python3.6/site-packages/flask/_compat.py", line 39, in reraise
    raise value
  File "/c/gitlab/mocvd/sic-inventory/.venv/lib/python3.6/site-packages/flask/app.py", line 2446, in wsgi_app
    response = self.full_dispatch_request()
  File "/c/gitlab/mocvd/sic-inventory/.venv/lib/python3.6/site-packages/flask/app.py", line 1952, in full_dispatch_request
    return self.finalize_request(rv)
  File "/c/gitlab/mocvd/sic-inventory/.venv/lib/python3.6/site-packages/flask/app.py", line 1967, in finalize_request
    response = self.make_response(rv)
  File "/c/gitlab/mocvd/sic-inventory/.venv/lib/python3.6/site-packages/flask/app.py", line 2130, in make_response
    " {rv.__class__.__name__}.".format(rv=rv)
TypeError: The view function did not return a valid response. The return type must be a string, dict, tuple, Response instance, or WSGI callable, but it was a UserAPI.

Instead, users need to manually add rules to the app after the fact, which can be hard to read and requires that the app instance be available in the module.
user_view = UserAPI.as_view('user_api')
app.add_url_rule('/users/', defaults={'user_id': None},
                 view_func=user_view, methods=['GET',])
app.add_url_rule('/users/', view_func=user_view, methods=['POST',])
app.add_url_rule('/users/<int:user_id>', view_func=user_view,
                 methods=['GET', 'PUT', 'PATCH', 'DELETE'])

Environment

Python version: 3.6.8
Flask version: 1.1.1
Werkzeug version: 0.16.0

The Fix
Based on my testing is should be relatively trivial to support this. All that needs to be done is edit Blueprint.route:
diff --git a/src/flask/blueprints.py b/src/flask/blueprints.py
index 8978104d..f6f62dd6 100644
--- a/src/flask/blueprints.py
+++ b/src/flask/blueprints.py
@@ -11,6 +11,8 @@
 """
 from functools import update_wrapper

+from .views import MethodViewType
+
 from .helpers import _endpoint_from_view_func
 from .helpers import _PackageBoundObject

@@ -276,6 +278,11 @@ class Blueprint(_PackageBoundObject):

         def decorator(f):
             endpoint = options.pop("endpoint", f.__name__)
+
+            # Support decorating MethodView classes
+            if isinstance(f, MethodViewType):
+                f = f.as_view(endpoint)
+
             self.add_url_rule(rule, endpoint, f, **options)
             return f

Note: I originally saw this feature in the marshmallow-code/flask-smorest library (originally Nobatek/flask-rest-api) flask_smorest/blueprint.py.
The above code is taken almost verbatim from that library.

Thanks for looking at this. However, I don't think I want to add this at this time.
You can already use MethodView with Blueprint with bp.add_url_rule(), which corresponds to app.add_url_rule(). I don't want to add a special case for certain types, even if they are built-in. This also obscures the behavior of as_view(), which is important for View classes. It's also not clear why this wouldn't apply to all View subclasses or app.route.
One weird trick though, if you really want to use bp.route:
class MyView(MethodView):
    decorators = [..., bp.route("/my-view")]

MyView.as_view("my_view")

Eh, on second thought using a view class without any arguments is probably pretty common, so maybe this would be good, although I'd want to make it more general and make the docs clear on when to use each form. @dougthor42 @ThiefMaster thoughts?

One downside is that if the class really does require arguments, you'll get a somewhat confusing error if you try to use route, and the message won't be able to say "you need to use as_view" for this view class."

Going to close this due to lack of response. I'm open to merging this in the future, but it needs improvement.

I guess I'm not familiar with using view classes with args. Can you provide an example of that, or tell me where in the docs to look? Are you talking about args to __init__? Like you have in Pluggable Views?:
class RenderTemplateView(View):
    def __init__(self, template_name):
        self.template_name = template_name

I'll update the docs as best I can. Not sure what I need to do to make it more general though - I could use some guidance there.

@davidism , can you please point at an example of using MethodView with blueprints? i'm not understanding how the pieces fit together in that case.

@dfeinzeig You can take a look at my project trendlines, specifically src/trendlines/routes.py DataByName to see how it looks after the proposed change. Note that that project is using the marshmallow-code/flask-smorest library which basically implements what I've proposed in this issue.
As for the current functionality of MethodView + Blueprint, sadly I don't have any examples. We'll see what davidism says.

Registering any type of route on a blueprint is done in the exact same way as registering on an app. bp.route, bp.add_url_rule, bp.errorhandler, etc.

Thanks @davidism. I don't know why I didn't know that...
Anyway, here's a working example @dfeinzeig. Note that it's just for demo purposes only - I'm sure there are some serious best practice faux pas in there.
from flask import Blueprint
from flask import Flask
from flask import jsonify
from flask.views import MethodView

api = Blueprint("api", __name__)

FAKE_DATA = [{"data_id": 1, "value": "duck"}, {"data_id": 2, "value": "cat"}]

class Data(MethodView):
    def get(self, data_id):
        if data_id is None:
            # return all data
            return jsonify(FAKE_DATA)
        else:
            # Just return the one element. Ignore the selection logic here...
            return jsonify(FAKE_DATA[data_id - 1])

    def put(self):
        # fake data instead
        # data = request.get_json()
        id_ = len(FAKE_DATA) + 1
        new_data = {"data_id": id_, "value": "bird"}

        FAKE_DATA.append(new_data)
        return jsonify(new_data)

if __name__ == "__main__":
    app = Flask(__name__)

    api_view = Data.as_view("api")
    api.add_url_rule(
        "/api/v1/data/", defaults={"data_id": None}, view_func=api_view, methods=["GET"]
    )
    api.add_url_rule("/api/v1/data/<int:data_id>", view_func=api_view, methods=["GET"])
    api.add_url_rule("/api/v1/data/", view_func=api_view, methods=["PUT"])
    app.register_blueprint(api)
    app.run()

Testing:
$ curl localhost:5000/api/v1/data/
[{"data_id":1,"value":"duck"},{"data_id":2,"value":"cat"}]
$ curl localhost:5000/api/v1/data/1
{"data_id":1,"value":"duck"}
$ curl -X PUT localhost:5000/api/v1/data/
{"data_id":3,"value":"bird"}
$ curl localhost:5000/api/v1/data/
[{"data_id":1,"value":"duck"},{"data_id":2,"value":"cat"},{"data_id":3,"value":"bird"}]

thank you!


Fix VarInt32/64 decoding + edge cases test

ok so the solution was to use wrapping negation instead of regular

@svyatonik done
also added couple of conditions to avoid panic in debug mode


[Bug]:  403 Forbidden Error when trying to fetch details on Personal Pro Plan

What happened?
I am trying to fetch the info and check if everything works. I have done the setup as described in the README. And checked both the branch. Neither works and spits 403 Error. I am using  -sc and cookies as it is a Personal Pro Plan. The account is logged into the browser and I have also closed the browser when running the script. Also tried with brave and chrome. None works.
master branch

feat/refactor branch

Expected Result
The Info of the course should have been successfully displayed.
Branch
master/main
What operating systems are you seeing the problem on?
Windows
Relevant log output
No response
Other information
Microsoft Windows 11 [Version 10.0.22631.3296]

You might be getting cloudflare captchas then

You might be getting cloudflare captchas then

Is there a way to mitigate the issue or bypass the captchas ?

I have the same issue recently,  is there a way to bypass the catches quickly?  thank you.

no


Epmlabsbrn-497 [Demo] add multilanguage support for grous

EPMLABSBRN-497
Internalization was implemented for requests to get exercise groups
For implementation was used a map to store the mapping:

group name (unique) to messages

This solution includes a common spring approach, but the other part is temporary and to implement full internalization flow, translate of elements should be added initially by an operator and saved to the database or translate should be used from messages.properties
Examples:

api/groups?locale=en_EN

api/groups?locale=ru_RU

It's should be new records, for english version, instead of translated

It's should be new records, for english version, instead of translated

It requires a discussion, @mmelnik @ElenaSpb let's schedule a meeting after the demo


MDC-103 Android (Java) - title style textAllCaps

The mistake is at the 2nd last xml box containing code for styles.xml:
<style name="TextAppearance.Shrine.Title" parent="TextAppearance.MaterialComponents.Headline4">
   <item name="textAllCaps">true</item>
   ...
</style>

The correct item name is "android:textAllCaps".
Codelab details:

Level MDC-103
Language Java
Link to the codelab with the issue https://codelabs.developers.google.com/codelabs/mdc-103-java/index.html#3

My mistake. They all work.


Apply Last as Default Auto Aggregation for String Values

Given: I'm in the Data Explorer
And: Auto Mode is enabled for Aggregate Function
When: The value selected is a String Value
Then: First  is selected by default
And: The visualization type is switched to Table
Design:
https://www.figma.com/file/naxHHmkcY0Tc6pfbgzdq9T/Auto-Aggregation?node-id=260%3A596

Blocked on https://github.com/influxdata/flux/issues/2954


feat: implement a separate TracedRNumber

currently very WIP

Let me just merge #163 after CI checks pass and rebase this PR on top of it because it adds some tests that should be passed by TracedRNumbers too.

Do we also need a ConcreteRScalar? If we want to extend to_rarray to all of ReactantPrimitives

For now we can leave concrete as is

I don't think we need a concrete scalar type, because indexing on a concrete type is just a normal number.

I don't think we need a concrete scalar type, because indexing on a concrete array is just a normal number.

I meant more from a tracing perspective. What should to_rarray(::ReactantPrimitives) return? If it is Number then we can't convert it to a TracedRNumber. If we want to convert it then we need something like a ConcreteRNumber so that users are aware that it is going to be traced.

So I think this is two different questions.

Should we upgrade scalars into traced values (like we do for arrays) or compile with respect to them (like we do constants).

For now I'm fine leaving them as is which is compile as constants

Can we represent a ConcreteScalar, if desired. I think this will be necessary in the future.

For example we may want to have a function with a user defined index offset.
e.g.
A = ConcreteRarray
v = ConcreteScalar
f = @compile getindex(A, v)

without a concrete scalar we need to recompile for each index. I do think we need such a scalar, even if the default behavior for conversion is only converting arrays

Even more simply though, we may need as the return type of a function with array inputs and a scalar output.
i.e.
x = ConcreteArray(ones(4,4))
f = @compile sum(x)
f(x) # this should return a scalar now, but we cannot actually represent this as a regularfloat64, since it will be the result of a future/etc

Looking at the above example I also realized the mapreduce semantics is incorrect at-present. For example sum(x) should return TracedRNumber and not TracedRArray{T,0}

Even more simply though, we may need as the return type of a function with array inputs and a scalar output.

We could store it like an array in the ConcreteRArray but expose it to the enduser as a scalar. https://github.com/JuliaGPU/GPUArrays.jl/pull/550 is something similar in the GPUArrays world. But let's keep this PR simple and avoid this for now

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

Project coverage is 30.62%. Comparing base (9904590) to head (841376d).

Files with missing lines
Patch %
Lines

src/TracedRNumber.jl
50.81%
30 Missing :warning:

src/TracedRArray.jl
62.79%
16 Missing :warning:

ext/ReactantNNlibExt.jl
0.00%
7 Missing :warning:

src/Tracing.jl
80.64%
6 Missing :warning:

src/ConcreteRArray.jl
0.00%
1 Missing :warning:

src/XLA.jl
0.00%
1 Missing :warning:

:exclamation: Your organization needs to install the Codecov GitHub app to enable full functionality.
Additional details and impacted files
@@            Coverage Diff             @@
##             main     #161      +/-   ##
==========================================
- Coverage   33.09%   30.62%   -2.47%
==========================================
  Files          37       38       +1
  Lines        5107     5175      +68
==========================================
- Hits         1690     1585     -105
- Misses       3417     3590     +173

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

now that #163 has been merged, we should test concatenation on numbers.
@avik-pal should I do it or do you prefer to do it yourself?

There's a bug on concatenation of TracedRNumber. In particular, if we run this kernel:
using Reactant

x = fill(true)
x_concrete = Reactant.to_rarray(x)

function traced_vcat(x)
	a = x[]
	[a; a; a]
end

f = @compile traced_vcat(x_concrete)

f(x_concrete)

It fails with the following error:
ERROR: BoundsError: attempt to access 3-element Vector{ConcreteRArray{Bool}} at index [1]
Stacktrace:
 [1] traced_getfield
   @ ~/Developer/Reactant.jl/src/Compiler.jl:18 [inlined]
 [2] macro expansion
   @ ~/Developer/Reactant.jl/src/Compiler.jl:649 [inlined]
 [3] (::Reactant.Compiler.Thunk{Symbol("##test_vcat_reactant#229")})(args::ConcreteRArray{Bool, 0})
   @ Reactant.Compiler ~/Developer/Reactant.jl/src/Compiler.jl:665
 [4] top-level scope
   @ REPL[10]:1

The error seems to be that it's not doing any XLA call and it's setting result returning to 3 empty buffers. Check out the generated Julia code of f:
quote
    #= /Users/mofeing/Developer/Reactant.jl/src/Compiler.jl:639 =#
    #= /Users/mofeing/Developer/Reactant.jl/src/Compiler.jl:640 =#
    nothing
    #= /Users/mofeing/Developer/Reactant.jl/src/Compiler.jl:647 =#
    usbuf_1 = (getindex(args, 1)).data
    sbuf_1 = XLA.synced_buffer(usbuf_1)
    #= /Users/mofeing/Developer/Reactant.jl/src/Compiler.jl:648 =#
    ()
    #= /Users/mofeing/Developer/Reactant.jl/src/Compiler.jl:649 =#
    result = (ConcreteRArray{Bool})[ConcreteRArray{Bool, 0}(Reactant.XLA.AsyncBuffer(Reactant.XLA.Buffer(Ptr{Nothing} @0x0000000000000000), nothing), ()), ConcreteRArray{Bool, 0}(Reactant.XLA.AsyncBuffer(Reactant.XLA.Buffer(Ptr{Nothing} @0x0000000000000000), nothing), ()), ConcreteRArray{Bool, 0}(Reactant.XLA.AsyncBuffer(Reactant.XLA.Buffer(Ptr{Nothing} @0x0000000000000000), nothing), ())]
    (traced_getfield(result, $(Expr(:quote, 1)))).data = (args[1]).data
    (traced_getfield(result, $(Expr(:quote, 2)))).data = (args[1]).data
    (traced_getfield(result, $(Expr(:quote, 3)))).data = (args[1]).data
    #= /Users/mofeing/Developer/Reactant.jl/src/Compiler.jl:650 =#
    return result
end

That actually makes sense here since it’s making an array of values all
available as args.
What’s the issue?
On Sat, Oct 5, 2024 at 9:11 PM Sergio Sánchez Ramírez <
@.***> wrote:

There's a bug on concatenation of TracedRNumber. In particular, if we run
this kernel:
using Reactant
x = fill(true)
x_concrete = Reactant.to_rarray(x)
function traced_vcat(x)
a = x[]
[a; a; a]end
f = @compile traced_vcat(x_concrete)
f(x_concrete)
It fails with the following error:
ERROR: BoundsError: attempt to access 3-element Vector{ConcreteRArray{Bool}} at index [1]
Stacktrace:
[1] traced_getfield
@ ~/Developer/Reactant.jl/src/Compiler.jl:18 [inlined]
[2] macro expansion
@ ~/Developer/Reactant.jl/src/Compiler.jl:649 [inlined]
[3] (::Reactant.Compiler.Thunk{Symbol("##test_vcat_reactant#229")})(args::ConcreteRArray{Bool, 0})
@ Reactant.Compiler ~/Developer/Reactant.jl/src/Compiler.jl:665
[4] top-level scope
@ REPL[10]:1
The error seems to be that it's not doing any XLA call and it's setting
result returning to 3 empty buffers. Check out the generated Julia code
of f:
quote
#= /Users/mofeing/Developer/Reactant.jl/src/Compiler.jl:639 =#
#= /Users/mofeing/Developer/Reactant.jl/src/Compiler.jl:640 =#
nothing
#= /Users/mofeing/Developer/Reactant.jl/src/Compiler.jl:647 =#
usbuf_1 = (getindex(args, 1)).data
sbuf_1 = XLA.synced_buffer(usbuf_1)
#= /Users/mofeing/Developer/Reactant.jl/src/Compiler.jl:648 =#
()
#= /Users/mofeing/Developer/Reactant.jl/src/Compiler.jl:649 =#
result = (ConcreteRArray{Bool})[ConcreteRArray{Bool, 0}(Reactant.XLA.AsyncBuffer(Reactant.XLA.Buffer(Ptr{Nothing} @0x0000000000000000), nothing), ()), ConcreteRArray{Bool, 0}(Reactant.XLA.AsyncBuffer(Reactant.XLA.Buffer(Ptr{Nothing} @0x0000000000000000), nothing), ()), ConcreteRArray{Bool, 0}(Reactant.XLA.AsyncBuffer(Reactant.XLA.Buffer(Ptr{Nothing} @0x0000000000000000), nothing), ())]
(traced_getfield(result, $(Expr(:quote, 1)))).data = (args[1]).data
(traced_getfield(result, $(Expr(:quote, 2)))).data = (args[1]).data
(traced_getfield(result, $(Expr(:quote, 3)))).data = (args[1]).data
#= /Users/mofeing/Developer/Reactant.jl/src/Compiler.jl:650 =#
return resultend
—
Reply to this email directly, view it on GitHub
https://github.com/EnzymeAD/Reactant.jl/pull/161#issuecomment-2395261905,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AAJTUXFKSBYO4L2Z573JTE3Z2CL4RAVCNFSM6AAAAABPMI4XLGVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDGOJVGI3DCOJQGU
.
You are receiving this because your review was requested.Message ID:
@.***>

That actually makes sense here since it’s making an array of values all available as args. What’s the issue?

I don't get it. It's behavior should like the one on 0-dim array test since we are passing a 0-dim array and should return a vector.
From the MLIR point of view, it should be calling stablehlo.concatenate on a 0-dim tensor.

ah I see, I think this is a bug on the new number and cat perhaps?

I think we won't do any XLA call here, see the julia fallbacks for number:
vcat(X::Number...) = hvcat_fill!(Vector{promote_typeof(X...)}(undef, length(X)), X)
hcat(X::Number...) = hvcat_fill!(Matrix{promote_typeof(X...)}(undef, 1,length(X)), X)

It is going to fill into a regular array

Should work now
julia> function traced_vcat(x)
               a = x[];
               Float64[a; a; a]
       end
traced_vcat (generic function with 1 method)

julia> @code_hlo optimize=false traced_vcat(x_concrete)
Module:
module {
  func.func @main(%arg0: tensor<i1>) -> (tensor<3xf64>, tensor<i1>) {
    %0 = stablehlo.transpose %arg0, dims = [] : (tensor<i1>) -> tensor<i1>
    %1 = stablehlo.broadcast_in_dim %0, dims = [] : (tensor<i1>) -> tensor<1xi1>
    %2 = stablehlo.broadcast_in_dim %0, dims = [] : (tensor<i1>) -> tensor<1xi1>
    %3 = stablehlo.broadcast_in_dim %0, dims = [] : (tensor<i1>) -> tensor<1xi1>
    %4 = stablehlo.convert %1 : (tensor<1xi1>) -> tensor<1xf64>
    %5 = stablehlo.convert %2 : (tensor<1xi1>) -> tensor<1xf64>
    %6 = stablehlo.convert %3 : (tensor<1xi1>) -> tensor<1xf64>
    %7 = stablehlo.concatenate %4, %5, %6, dim = 0 : (tensor<1xf64>, tensor<1xf64>, tensor<1xf64>) -> tensor<3xf64>
    %8 = stablehlo.transpose %7, dims = [0] : (tensor<3xf64>) -> tensor<3xf64>
    %9 = stablehlo.transpose %0, dims = [] : (tensor<i1>) -> tensor<i1>
    return %8, %9 : tensor<3xf64>, tensor<i1>
  }
}

julia> @code_hlo traced_vcat(x_concrete)
Module:
module attributes {transform.with_named_sequence} {
  func.func @main(%arg0: tensor<i1>) -> tensor<3xf64> {
    %0 = stablehlo.convert %arg0 : (tensor<i1>) -> tensor<f64>
    %1 = stablehlo.broadcast_in_dim %0, dims = [] : (tensor<f64>) -> tensor<3xf64>
    return %1 : tensor<3xf64>
  }
}


ESP32-C5 ChipRev V0.0 which ESP-IDF Version to install ( V5.3 V5.3.1 V5.4dev Master ) (IDFGH-13608)

ESP32-C5 Stand
Hi Folks, hi @igrr
I'm not sure if ESP-IDF V5.3 with ESP32-C5 as preview support "can already be renewed" to V5.4 dev or master without losing or overwriting support for ESP32-C5-Beta3.
Specifically: What should be installed now for the ESP32-C5 ChipRev V 0.0?
Right now, I'm not sure :) since we have no ESP32-C5 support public at all or have I overlooked something?
A little confused at the moment - but only at the moment :)
best wishes

update also in the ESP32 BBS
in the meantime for ESP-IDF V5.3 with preview support is the ESP32-C5 MP an Option over menuconfig
i use for a fast test ESP-IDF V5.3 with preview support for the ESP32-C5 MP
your friend is:
idf.py --preview set-target ESP32C5
cause we can set 40 MHz / 48 MHz crystal for the ESP32-C5 in the Code / ESP-IDF ( used 48 MHz here ) so the bootloader works well at 115200 but not in the app code - you need to set the baudrate by your self in the ESP-IDF V5.3
i use for the used 48 MHz crystal a Baudrate of 138240 this should be in the ESP-IDF V5.3 a standard

( you can use a custom uart too if you use an 40 MHz crystal - i have not checked this by code yet hope you get the idea behind )

save, build, flash and volla :

this helps for the ESP32-C5 MP if you use the preview support ESP-IDF V5.3
now i am waiting for the ESP-IDF V5.4 :)
WoWZa !
best wishes

@MaxwellAlan
https://github.com/espressif/esp-idf/issues/14521#issuecomment-2349600488


Resilience diagnostics

@swift-ci Please test

Build failed
Jenkins build - Swift Test OS X Platform
Git Commit - 16631b7b8c82e7e8ade183e1166b7c7588f802c4
Test requested by - @slavapestov

@swift-ci Please test

@swift-ci Please test

@swift-ci Please test

Build failed
Jenkins build - Swift Test OS X Platform
Git Commit - 04c52edbdb0fc7e609354e726d840944707260c1
Test requested by - @slavapestov

@swift-ci Please test macOS

Build failed
Jenkins build - Swift Test Linux Platform
Git Commit - 04c52edbdb0fc7e609354e726d840944707260c1
Test requested by - @slavapestov

Build failed
Jenkins build - Swift Test OS X Platform
Git Commit - 04c52edbdb0fc7e609354e726d840944707260c1
Test requested by - @slavapestov

@swift-ci Please test

Build failed
Jenkins build - Swift Test OS X Platform
Git Commit - 04c52edbdb0fc7e609354e726d840944707260c1
Test requested by - @slavapestov

@swift-ci Please test

Build failed
Jenkins build - Swift Test OS X Platform
Git Commit - 04c52edbdb0fc7e609354e726d840944707260c1
Test requested by - @slavapestov

@swift-ci Please test Linux

Build failed
Jenkins build - Swift Test Linux Platform
Git Commit - a46e17aaf370ab8a978d5a0221e472c82aa9be3a
Test requested by - @slavapestov

@jrose-apple I plan on re-visiting the whole ResilienceExpansion thing soon. I wanted to prototype the semantics and get some tests in first, though. I made the other fixes you suggested -- are you OK with this getting merged?

@swift-ci Please test

Build failed
Jenkins build - Swift Test OS X Platform
Git Commit - a46e17aaf370ab8a978d5a0221e472c82aa9be3a
Test requested by - @slavapestov

@swift-ci Please test

Build failed
Jenkins build - Swift Test OS X Platform
Git Commit - d65d1d25f9a9248ac28494070e7246e603f60c43
Test requested by - @slavapestov

Yeah, I guess it's more important to start diagnosing things right now. I'll admit part of my discomfort is that ResilienceExpansion doesn't naturally make sense to me, even though it's such a simple enum. But that part shouldn't block you.


MSID: 99782 Version: 1 DOI: 10.1101/2<IP_ADDRESS>4037

MSID: 99782
Version: 1
Preprint DOI: https://doi.org/10.1101/2<IP_ADDRESS>4037
Step 1. Awaiting reviews
Editorial to post reviews via hypothesis
Useful links:

DocMap: https://data-hub-api.elifesciences.org/enhanced-preprints/docmaps/v2/by-publisher/elife/get-by-manuscript-id?manuscript_id=99782
New model tracking: https://docs.google.com/spreadsheets/d/1_fHaoOy7hjyocptKtVJRijeNpUY4hBS7Ck_aVmx6ZJk/
Reviews on sciety: https://sciety.org/articles/activity/10.1101/2<IP_ADDRESS>4037

For trouble shooting (e.g. no Docmaps available):

DocMap issue addressing: https://miro.com/app/board/uXjVNCwK6EI=/
Explore DataHub DocMaps API: https://lookerstudio.google.com/reporting/4c2f0368-babb-4beb-b5b3-497e7e7b0f08/page/ejphD
Unmatched submissions and preprints: https://lookerstudio.google.com/u/0/reporting/9f86204f-3bf7-477c-9b18-5c5ef141bf69/page/p_gxi57ha93c
Unmatched manuscripts spreadsheet: https://docs.google.com/spreadsheets/d/15QcK8w-ssB7109RQEDtFpJPZ0J5HTGxoHa_2TtpMBbg/edit#gid=1336081641

Step 2. Preview reviewed preprint
Production QC content ahead of publication
Instructions:

QC preview: https://prod--epp.elifesciences.org/previews/99782v1
Update ticket with any problems (add blocked label)
When QC OK, add QC OK label to ticket and add publication date and time to https://docs.google.com/spreadsheets/d/1amAlKvdLcaDp5W8Z8g77NmkwbMF5n_u89ArSqPMO8jg
Move card to next column
(At end of the day post link in #enhanced-preprint and ask for PDF to be generated)

Useful links:

Preprint DOI :  https://doi.org/10.1101/2<IP_ADDRESS>4037
Confirm reviews returned by EPP: https://prod--epp.elifesciences.org/api/reviewed-preprints/99782/v1/reviews
To update the MECA path in the docmap: https://docs.google.com/spreadsheets/d/1mctCQuNFBjSn97Lihy7_vBO6z7-N-oqyLv4clyi6zHg

Step 3: Awaiting search reindex
This step adds the reviewed preprint to the homepage: https://elifesciences.org
The search reindex is triggered once an hour. We need the reviewed preprint to be indexed as the search application serves the journal homepage.
Useful links:

Jenkins pipeline to reindex search can be triggered sooner or monitored here: https://alfred.elifesciences.org/job/process/job/process-reindex-reviewed-preprints/

Step 4: Published! PDF requested
Waiting for PDF to be generated
Useful links:

PDF tracking: https://docs.google.com/spreadsheets/d/106_XeDjmuBae7gexOTNzg60lapeqjl2aRn9DzupGyS8/

Step 5: Introduce PDF to data folder and git repo
Upload PDF to relevent folder in git repo https://github.com/elifesciences/enhanced-preprints-data/
Step 6: Done!

[ ] Kettle is on!

warn: [mixed-citation-other-publication-flag] mixed-citation in reference (id=c23) has a publication-type='other'. Is that correct?


WARNING:root:Debug message: No module named caffe2_pybind11_state_gpu

If this is a build issue, please fill out the template below.
System information

Operating system:ubuntu16.04
Compiler version:gcc5.4.0
CMake version:3.5.1
CMake arguments:
Relevant libraries/versions (e.g. CUDA):cuda9.1 cudnn5.1

input:python -m caffe2.python.operator_test.relu_op_test
output:WARNING:root:This caffe2 python run does not have GPU support. Will run in CPU only mode.
WARNING:root:Debug message: No module named caffe2_pybind11_state_gpu
E0124 17:31:58.010618 18145 init_intrinsics_check.cc:54] CPU feature avx is present on your machine, but the Caffe2 binary is not compiled with it. It means you may not get the full speed of your CPU.
E0124 17:31:58.010640 18145 init_intrinsics_check.cc:54] CPU feature avx2 is present on your machine, but the Caffe2 binary is not compiled with it. It means you may not get the full speed of your CPU.
E0124 17:31:58.010644 18145 init_intrinsics_check.cc:54] CPU feature fma is present on your machine, but the Caffe2 binary is not compiled with it. It means you may not get the full speed of your CPU.
Trying example: test_relu(self=<main.TestRelu testMethod=test_relu>, X=array([ 0.], dtype=float32), gc=, dc=[], engine=u'')
Trying example: test_relu(self=<main.TestRelu testMethod=test_relu>, X=array([-0.73821229, -0.73821229, -0.36917681, -0.73821229], dtype=float32), gc=, dc=[], engine=u'')

I have faced similar kind of situations. my output for your command is
find / -name caffe2_pybind11_state* 2>/dev/null
/usr/local/lib/python2.7/site-packages/caffe2/python/caffe2_pybind11_state.so
/usr/local/lib/python2.7/site-packages/caffe2/python/caffe2_pybind11_state_gpu.so
/usr/local/lib/python2.7/site-packages/caffe2/CMakeFiles/caffe2_pybind11_state.dir
/usr/local/lib/python2.7/site-packages/caffe2/CMakeFiles/caffe2_pybind11_state_gpu.dir
/usr/local/lib/python2.7/dist-packages/caffe2/python/caffe2_pybind11_state.so
/usr/local/lib/python2.7/dist-packages/caffe2/python/caffe2_pybind11_state_gpu.so
/usr/local/lib/python2.7/dist-packages/caffe2/CMakeFiles/caffe2_pybind11_state.dir
/usr/local/lib/python2.7/dist-packages/caffe2/CMakeFiles/caffe2_pybind11_state_gpu.dir
/home/ekram/pytorch/cmake/caffe2/python/caffe2_pybind11_state.so
/home/ekram/pytorch/cmake/caffe2/python/caffe2_pybind11_state_gpu.so
/home/ekram/pytorch/cmake/caffe2/CMakeFiles/caffe2_pybind11_state.dir
/home/ekram/pytorch/cmake/caffe2/CMakeFiles/caffe2_pybind11_state_gpu.dir
/home/ekram/anaconda2/lib/python2.7/site-packages/caffe2/python/caffe2_pybind11_state.so
/home/ekram/anaconda2/conda-bld/caffe2_1526101653752/work/build/caffe2/CMakeFiles/caffe2_pybind11_state.dir
/home/ekram/anaconda2/conda-bld/caffe2_1526101653752/work/cmake/caffe2/python/caffe2_pybind11_state.so
/home/ekram/anaconda2/conda-bld/caffe2_1526101653752/work/cmake/caffe2/python/caffe2_pybind11_state_gpu.so
/home/ekram/anaconda2/conda-bld/caffe2_1526101653752/work/cmake/caffe2/CMakeFiles/caffe2_pybind11_state.dir
/home/ekram/anaconda2/conda-bld/caffe2_1526101653752/work/cmake/caffe2/CMakeFiles/caffe2_pybind11_state_gpu.dir
/home/ekram/anaconda2/pkgs/caffe2-0.8.dev-py27_2018.05.11/lib/python2.7/site-packages/caffe2/python/caffe2_pybind11_state.so

@Dimlight this is not a problem unless you built Caffe2 with CUDA support and have CUDA support on your machine. If this is the case for you, then please post an issue to https://github.com/pytorch/pytorch/issues  instead of here.


[Bug]: pip install ERROR

Is there an existing issue for the same bug?

[X] I have checked the existing issues.

Branch name
main
Commit ID
c3b2a1
Other environment information
Linux

Actual behavior
ERROR: Ignored the following versions that require a different python version: 1.21.2 Requires-Python >=3.7,<3.11; 1.21.3 Requires-Python >=3.7,<3.11; 1.21.4 Requires-Python >=3.7,<3.11; 1.21.5 Requires-Python >=3.7,<3.11; 1.21.6 Requires-Python >=3.7,<3.11; 21.11 Requires-Python >=3.5,<3.10; 22.1 Requires-Python >=3.5,<3.10; 22.10.0 Requires-Python >=3.5,<3.11; 22.11.0 Requires-Python >=3.5,<3.11; 22.12.0 Requires-Python >=3.5,<3.11; 22.4.0 Requires-Python >=3.5,<3.10; 22.6.0 Requires-Python >=3.5,<3.11; 22.7.0 Requires-Python >=3.5,<3.11; 22.8.0 Requires-Python >=3.5,<3.11; 22.9.0 Requires-Python >=3.5,<3.11; 23.1.0 Requires-Python >=3.5,<3.11; 23.2.0 Requires-Python >=3.5,<3.11; 23.3.0 Requires-Python >=3.5,<3.11; 23.4.0 Requires-Python >=3.5,<3.11
ERROR: Could not find a version that satisfies the requirement onnxruntime==1.17.3 (from versions: 1.15.0, 1.15.1, 1.16.0, 1.16.1, 1.16.2, 1.16.3)
ERROR: No matching distribution found for onnxruntime==1.17.3

Expected behavior
pip install success
Steps to reproduce
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple/ -r requirements.txt
pip install -i https://mirrors.aliyun.com/pypi/simple/ -r ./requirements.txt

Additional information
use python 3.11.0
ERROR: Ignored the following versions that require a different python version: 1.21.2 Requires-Python >=3.7,<3.11; 1.21.3 Requires-Python >=3.7,<3.11; 1.21.4 Requires-Python >=3.7,<3.11; 1.21.5 Requires-Python >=3.7,<3.11; 1.21.6 Requires-Python >=3.7,<3.11; 21.11 Requires-Python >=3.5,<3.10; 22.1 Requires-Python >=3.5,<3.10; 22.10.0 Requires-Python >=3.5,<3.11; 22.11.0 Requires-Python >=3.5,<3.11; 22.12.0 Requires-Python >=3.5,<3.11; 22.4.0 Requires-Python >=3.5,<3.10; 22.6.0 Requires-Python >=3.5,<3.11; 22.7.0 Requires-Python >=3.5,<3.11; 22.8.0 Requires-Python >=3.5,<3.11; 22.9.0 Requires-Python >=3.5,<3.11; 23.1.0 Requires-Python >=3.5,<3.11; 23.2.0 Requires-Python >=3.5,<3.11; 23.3.0 Requires-Python >=3.5,<3.11; 23.4.0 Requires-Python >=3.5,<3.11
ERROR: Could not find a version that satisfies the requirement onnxruntime==1.17.3 (from versions: 1.15.0, 1.15.1, 1.16.0, 1.16.1, 1.16.2, 1.16.3)
ERROR: No matching distribution found for onnxruntime==1.17.3

I also have the problem. The problem is that your PC uses arm chip that did not support the onnxruntime==1.17.3 in your python version in linux.  https://github.com/microsoft/onnxruntime/issues/11037

What about removing the version numbers?

I’m also at the stage of installing required packages. If your system is based on the ARM architecture, you can replace requirements.txt with requirements_arm.txt which exists in the same directory and remove all package version numbers (for caution, I saved it as requirements_arm_v2.txt). So far, this approach has worked without any problems.
pip install -r requirements_arm_v2.txt

更新你的glibc，是glibc底层版本太老了，要用root权限，提前备份数据，更新这玩意容易把系统搞崩，已经替你踩坑了。记得备份数据

我也遇到了相同问题，我是通过下面方法解决的：
1、conda install -c conda-forge onnxruntime=1.17.3
2、删除requirement.txt里面的onnxruntime项
注意：我在SUSE Linux Enterprise Server 12 SP5系统是这么解决的，但是centOS7系统用同样方法却不好用，我在网上查的好像onnxruntime=1.17.3不再支持centOS7了
I also encountered the same problem, and I solved it through the following methods:

conda install -c conda-forge onnxruntime=1.17.3
Remove the onnxruntime item from the requirement. txt file
Note: This is how I solved the problem on the SUSE Linux Enterprise Server 12 SP5 system, but the same method is not working on the centOS7 system. I found online it seems  that onnxrruntime=1.17.3 no longer supports centOS7

We've replaced pip with poetry on the main branch.


CLI ng s cant be killed

Command
serve
Is this a regression?

[X] Yes, this behavior used to work in the previous version

The previous version in which this bug was not present was
16.x
Description
When starting the dev process with ng server.
Sometimes this works like charm.
reproduce it:
ng s
wait some time.
strg+c no luck

@web-dave, unfortunely I am not able to replicate this. Are you able to reproduce this on a new application?

try ctrl+c instead of cmd+c 😬

@alan-agius4 It is a new Project. created a few minutes ago.
No other dependencies added.
even if i close the terminal, the process is still running.
You can see this problem in my vod from monday. (https://www.twitch.tv/videos/1964316115)
start ng s at 00:27:10.
try to stop with strg+C 00:28:20

@alan-agius4
new informations. this doesn't happen without ssr.
ng new cli-test-no-ssr
styling scss
ssr No

@web-dave, can you please check if this is still a problem with @angular-devkit/build-angular version 17.0.0-rc.3?

@alan-agius4 solved in rc.3
🎉


can we use emr-on-eks and aws-eks-teams together?

I m trying to use emr-on-eks and aws-eks-teams together.
emr-on-eks creates it own namespace so that we can deploy spark jobs in it andi tried to use aws-eks-teams for gaining access to the ns created by emr-on-eks but realized that aws-eks-teams creates it own namespace and gets the app team to access to a new namespace.
Tried to do this but application teams user didnt get access to emr_on_eks ns
enable_emr_on_eks = true

platform_teams = {
  cluster-admins = {
    users = [
      "arn:aws:iam::${data.aws_caller_identity.current.account_id}:role/customrole-admin"
    ]
  }
}

  application_teams = {
    # First Team
    paml-team = {
      # Belows are examples of IAM users and roles
      users = [
        "arn:aws:iam::*:user/k8s-users"
      ]
    }
  }

@srikaanthpenugonda please see the exampl for emr-on-eks with teams here.

@askulkarni2  I wasnt referring to having multiple teams with multiple emr namespaces.
here.
If you run this example end-to-end it will create two namespaces emr-data-team-a & emr-data-team-b and can be accessed by cluster owner.
now if we want to enable cluster access to other roles/user as cluster admin or application owner as described here https://github.com/aws-ia/terraform-aws-eks-blueprints/tree/main/modules/aws-eks-teams its not enabling access to the emr namespaces created above
This code https://github.com/aws-ia/terraform-aws-eks-blueprints/blob/4b47ef0518d60a8620818c6a56d119752962dcb3/modules/aws-eks-teams/main.tf#L4 is creating separate namespace for each app team


feat(#237): select with fuzzy finder

Fixes #237

[!WARNING]
This pull request is not mergeable via GitHub because a downstack PR is open. Once all requirements are satisfied, merge this PR as a stack on Graphite.
Learn more

Current dependencies on/for this PR:

main

PR #238

PR #239   👈

This stack of pull requests is managed by Graphite.


Move to vuejs organization

This is mostly logistics. Please comment with anything I am missing.

[x] Links in docs
[x] Links in README
[x] Links in package.json
[x] Links in source code comments
[x] Links in examples
[x] Links on forum.vuejs.org
[x] Package manager: Bower
[x] CDN: jsdelivr
[x] CDN: cdnjs
[x] Gitter room

Links on vuejs.org. Including star and "Source on GitHub" buttons.

Package manager: Bower

vs

Package Ready
Install via NPM, Bower or Duo - leverage your favorite eco system!
http://vuejs.org/

=)

When is this happening?

@JosephSilber before the official 1.0 release, likely this week or next.

CDN: http://cdn.bootcss.com/

@yyx990803 is the process actually a "move" with all the issues or will you create another repository?

@matteocontrini it's a move.

Done.

:clap:

🎉

:+1:

:+1::+1::+1:

:sparkles:


[@shopify/react-i18n] Add i18n.formatUnit()

Description
This PR is mostly a curiosity and a warning to others that head down this path, and is probably something to come back to in the future rather than something we want to merge now (May 2020).
Intl.NumberFormat added the concept of formatting units (see https://v8.dev/features/intl-numberformat#units for an example).
const formatter = new Intl.NumberFormat('en', {
  style: 'unit',
  unit: 'kilobyte',
});
formatter.format(1.234);
// → '1.234 kB'

That sounded handy so I added a i18n.formatUnit() helper in the same way that we already have a i18n.formatCurrency() helper.
Unfortunately support is kinda ropey.

The TS built-in types for NumberFormat don't yet include the unit and unitDisplay options so we have to work around that currently (TS PR: https://github.com/microsoft/TypeScript/pull/38013)
Node added support for this in v12.11.0 (released September 2019) thanks to updating its v8 version, but our tests run on node version is still v10.16, as v10 is still in LTS support. So we can't run tests for this unless we want to update our node version.

Considering we still have plenty of things that run on node v10, adding this now feels like a bit of
a footgun and I'm not a big fan of handing those out without thinking about it :(
I'm not that experienced with Intl stuff - IIRC we don't polyfill it as that's a fat polyfill so how do we handle browser support for this stuff?
Type of change

[ ] @shopify/react-i18n Minor: New feature (non-breaking change which adds functionality)

Checklist

[ ] I have added a changelog entry, prefixed by the type of change noted above

TS 4.0 is gonna ship with updated lib definitions so once we're using that we can remove all the unit/unitDisplay types and their comments from NumberFormatOptions and the @ts-ignores from the tests

Going to close this. It's old and stale.


Upgade request: portmod: 2.1.0 -> 2.4.2

Checklist

[x] Checked the nixpkgs master branch

[x] Checked the nixpkgs pull requests

Project name
nix search name: portmod

current version: 2.1.0
desired version: 2.4.2
Notify maintainers
@marius851000
maintainers:
Note for maintainers
Please tag this issue in your PR.

Oh, yeah... Guess I'm late for an update... It made quite some time I haven't touched morrowind, but I'll take a quick look at it. If it's easy, it should be done in the following days.

Sorry, but I had some personnal stuff that prevented me to work on this. I’ll go work on this right now (and a few other Nix related stuff)

updated in https://github.com/NixOS/nixpkgs/commit/00ee658dfbcaac61a80a0b7ba1bb33d5b5caca44


Reformat with Black

Description
Reformat everything with black
How I Tested
Not really.
I fulfilled the following requirements

[x] All new code is formatted according to our style guide (for C++ run clang-format, for Python, run flake8 and fix all warnings).
[x] All new functions/classes are documented and existing documentation is updated according to changes.
[x] No commented code from testing/debugging is kept (unless there is a good reason to keep it).

@simonguist  are you working on another branch ? If so, please run also black on your branch before a new pull request

Looks nice.
runner_buffered.py and modified_baselines_ppo2.py are modifications to already existing files from baselines. Especially in modified_baselines_ppo2.py the modifications to the original file are very minor. What's the guidelines for reformatting such code?

I'd leave them without reformat, but do not have strong opinion

I agree that they should be left at their original formatting in this case.  I'll see if I can configure black to ignore them (otherwise this might be a bit difficult to maintain).

done


Problem running dmx-web.js

Hi all,
I tried to install the library and run the sample. I have a problem here :
app.configure(function() {
          app.use(connect.json());
})

I read that configure method has been removed from express. So I removed the configure to just use
app.use(connect.json());

I couldn't run the app So I commented this part as well and the app runs now. But I am not sure what this connect.json() does. Can this be omitted?

node-dmx still uses the express 3 api.
If used with the versions from package.json everything should work.
If this doesn't fix your problem feel free to reopen this issue.


readN slice bounds out of range

I compiled recently after updating versions and got the following:
panic: runtime error: slice bounds out of range
goroutine 9 [running]:
gopkg.in/redis.v3.parseBytesReply(0xc82000e540, 0xc8200b3000, 0x5, 0x1000, 0x0, 0x0, 0x0, 0x0, 0x0)
/go/src/gopkg.in/redis.v3/parser.go:306 +0x304
gopkg.in/redis.v3.readBytesReply(0xc82000e540, 0x0, 0x0, 0x0, 0x0, 0x0)
/go/src/gopkg.in/redis.v3/parser.go:318 +0xff
gopkg.in/redis.v3.(*StringCmd).readReply(0xc82006c6e0, 0xc82000e540, 0x0, 0x0)
/go/src/gopkg.in/redis.v3/command.go:450 +0x42
gopkg.in/redis.v3.(*baseClient).process(0xc8200111e0, 0x7f1c325f0b58, 0xc82006c6e0)
/go/src/gopkg.in/redis.v3/redis.go:114 +0x327
gopkg.in/redis.v3.(*baseClient).(gopkg.in/redis.v3.process)-fm(0x7f1c325f0b58, 0xc82006c6e0)
/go/src/gopkg.in/redis.v3/redis.go:156 +0x34
gopkg.in/redis.v3.(*commandable).Process(0xc82000b7f0, 0x7f1c325f0b58, 0xc82006c6e0)
/go/src/gopkg.in/redis.v3/commands.go:57 +0x34
gopkg.in/redis.v3.(*commandable).BRPopLPush(0xc82000b7f0, 0x84e190, 0x10, 0x84e170, 0x16, 0x2540be400, 0xc8200135c0)
/go/src/gopkg.in/redis.v3/commands.go:751 +0x2fd
It looks like this introduced the issue @ readN (@vmihailenco):
ad0739be9976594d3ab71a4e61c5e8501fe11d66
The data it's getting out of redis is 7571 bytes via BRPopLPush.
This seems like a pretty large update for v3 - why didn't that make it into a v4?

Thanks for the report.

This seems like a pretty large update for v3 - why didn't that make it into a v4?

Well, API did not change and really that PR just moved some code to internal subpackage. And I was confident about that change because there are tests and benchmarks for setting/getting big keys...


Issue changing Categories

I built this example with no problems. However, I wanted to have my extension in the Pipelines section instead of Repos. I changed:
"categories": ["Azure Repos"],
to:
"categories": ["Azure Pipelines"],
and it didn't move. It compiles and updates just fine, but it remains in the Repo section. Is there a bug somewhere or am I doing something wrong?

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

ID: 14955ee9-29f2-46fe-3a8d-a42666f53ffc
Version Independent ID: 5d417cd0-a671-ee30-8fca-5f8b0addd328
Content: Develop a web extension for Azure DevOps Services
Content Source: docs/extend/get-started/node.md
Product: devops
Technology: devops-ecosystem
GitHub Login: @willsmythe
Microsoft Alias: wismythe

@warzinskid -- here are a couple of options where you might consider asking your question:

Azure DevOps on Stack Overflow
Azure DevOps Support Bot

@willsmythe -- Will, please look into this issue 5676.

I eventually figured this out.
I wasn't updating the entry under contributions - targets.  Once I did that it moved for me.


Bootstrap Css throws Exception

Hey,
When trying to Inline a Bootstrap 3.3.7 css file pasted into the Style tag, the Inliner throws an exception
System.ArgumentException: Unexpected character found at position 8: ".. button::>>-<<moz-focus-inner::input::-moz-"
   at CsQuery.StringScanner.Implementation.StringScannerEngine.ThrowException(String message, Int32 errPos)
   at CsQuery.StringScanner.Implementation.StringScannerEngine.ThrowUnexpectedCharacterException()
   at CsQuery.StringScanner.Implementation.StringScannerEngine.Expect(Func`3 validate)
   at CsQuery.StringScanner.Implementation.StringScannerEngine.Get(Func`3 validate)
   at CsQuery.Engine.SelectorParser.Parse(String selector)
   at CsQuery.Engine.Selector..ctor(String selector)
   at CsQuery.CQ.Select(String selector)
   at StyleMerge.Inliner.ApplyRulesToElements(CQ document, IEnumerable`1 rules, HashSet`1 noApply) in c:\projects\style-merge\StyleMerge\Inliner.cs:line 170
   at StyleMerge.Inliner.ProcessHtml(String sourceHtml) in c:\projects\style-merge\StyleMerge\Inliner.cs:line 145
   at JPB.MyWorksheet.Webpage.Services.Mail.MailService.PreProcessMail(Mail mail) in F:\Source\Repos\MyWorksheet\JPB.MyWorksheet\JPB.MyWorksheet.Webpage\Services\Mail\MailService.cs:line 48
   at JPB.MyWorksheet.Webpage.Services.Mail.MailService.<SendMail>d__18.MoveNext() in F:\Source\Repos\MyWorksheet\JPB.MyWorksheet\JPB.MyWorksheet.Webpage\Services\Mail\MailService.cs:line 63

In Inliner - ApplyRulesToElements(), there is a specific error trap for pseudo classes relevant to browsers. In frameworks like foundation and bootstrap there are a ton of these, possibly unanticipated by the StyleMerge dev, for example
::-webkit-file-upload-button
button::-moz-focus-inner::type::-moz-focus-inner::type::-moz-focus-inner::type::-moz-focus-inner
.form select::-ms-expand

For some reason these pseudo-elements are being added to rules, and CsQuery generates an ArgumentException when getting document[rule.Selector].Elements in line 175.
The current catch block does not trap this error, in fact I'm not sure how useful the block is, seeing as it would be nicer to just move on to the next rule, maybe log the rules that won't play nicely.
Even better would be not to have these rules added in the first place. Now if I could only figure out how to do that...
You could replace the current catch block with:
catch(Exception ex)
{
    if(ex.GetType() == typeof(NotImplementedException))
    {
        if(ex.Message == "Pseudoclasses that require a browser aren't implemented.")
        {
            throw new InliningException($"Pseudo classes that require a browser, such as '{rule.Selector}', are not supported for inlining.");
        }
    }
}

Personally, I've opted to catch all errors and continue execution.


Interview preparation e book 150+ questions with answers

Interview preparation e book 150+ questions with answers please add my PR
What does this PR do?
Add resource(s) |
For resources
Interview preparation e book 150+ questions with answers
Why is this valuable (or not)?
Its  a very good book for cracking in coding interview.
How do we know it's really free?
It's a free of cost book i uploaded it on my drive please go and check it out.
For book lists, is it a book? For course lists, is it a course? etc.
Checklist:

[x] Read our contributing guidelines
[x] Search for duplicates.
[x] Include author(s) and platform where appropriate.
[ ] Put lists in alphabetical order, correct spacing.
[x] Add needed indications (PDF, access notes, under construction)

Follow-up

Check the status of GitHub Actions and resolve any reported warnings!

:information_source: NOT VALID
We appreciate your desire to want to contribute but this appears not to be an authorized distribution. Please see CONTRIBUTING.md guidelines.

we don't accept files hosted on google drive, dropbox, mega, scribd, issuu and other similar file upload platforms
use the link with the most authoritative source (meaning the author's website is better than the editor's website, which is better than a third party website)

If is really free, satisfy this premises in other requests


Golden hoppers should allow filtering by enchantment

When a filter of a golden hopper has an enchantment, only items with that level of enchantment or higher should be accepted.

This could be bad for filtering out mob grinders. For zombie pigmen, swords quickly fill up the chest, and they have random enchantments.

 The change would be for using enchanted golden swords as the filter.


running evals in parallel

make sure that running cot-evals in parallel doesn't create conflicts when uploading final results (or earlier on)

checked code and should work fine, close this until errors emerge


To validate/verify the X509 certificates that contain the following X509 critical extensions using https://github.com/golang/go/blob/master/src/crypto/x509/verify.go#L753
               _a. X509v3 Policy Constraints: critical
                Require Explicit Policy:0, Inhibit Policy Mapping:0

               b. X509v3 Inhibit Any Policy: critical
                0_

code snippet:

_,err = x509cert.Verify(x509.VerifyOptions{
		KeyUsages:     []x509.ExtKeyUsage{x509.ExtKeyUsageClientAuth},
		Roots:         rootCertsPool,
		Intermediates: intermediatesCertPool,
	})

What did you see happen?
It throws the error saying
"x509: unhandled critical extension"
What did you expect to see?
Certificate Verification done successfully with out any error.
Additional info:
This is because of the following code.
https://github.com/golang/go/blob/master/src/crypto/x509/parser.go#L780
https://github.com/golang/go/blob/master/src/crypto/x509/verify.go#L565
as the following Extensions OIDs are not handled in the above mentioned GO Lang code.
<IP_ADDRESS> (Require Explicit Policy:0, Inhibit Policy Mapping:0)
<IP_ADDRESS>  (X509v3 Inhibit Any Policy: critical)

Related Issues and Documentation

crypto/x509: invalid certificate policies #65990 (closed)
crypto/x509: support OIDs for tcg-kp (<IP_ADDRESS>) #47620
crypto/x509: parse SAN DirectoryName #47618 (closed)
crypto/x509: parseCertificate fails if Cert Policy extension is critical #9964 (closed)
crypto/x509: error parsing large ASN.1 identifiers #49678 (closed)
crypto/x509: Certificate.Verify does not consistently return UnknownAuthorityError #58777
crypto/x509: Verify fails to find valid path when some paths have EKU constraint violations #48869 (closed)
crypto/x509: malformed x509 certificate is accepted since 1.17 #51369
crypto/x509: CreateRevocationList over-enforces KeyUsage check #59669
crypto/x509: NameConstraintsWithoutSANs when checking signing certificate #24151 (closed)

(Emoji vote if this was helpful or unhelpful; more detailed feedback welcome in this discussion.)

What certificates make use of these extensions?

Hi @seankhliao , DOD certificates make use of these extensions.
eg.
download https://dl.dod.cyber.mil/wp-content/uploads/pki-pke/zip/unclass-dod_approved_external_pkis_trust_chains.zip
You can check in DoD_Approved_External_PKIs_Trust_Chains_v11.0_20240513/DigiCert_Federal_SSP/Trust_Chain_1/1-Symantec_SSP_Intermediate_CA-G4.cer

cc @golang/security

We don't support policy constraints because they are basically unused in the webpki, and impose somewhat complicated constraints on path building. Federal PKI is notorious for using complex/obscure RFC 5280 features, for better or worse, which are generally unused in the wider webpki, so it doesn't surprise me that we fail to parse/process some of their hierarchies.
While I'm not aware of any restrictions on using them in publicly trusted certificates, without significant usage in webpki certificates I'm not convinced that we should add the necessary path building complexity to support policy constraints.

ok, thanks a lot team.

Sounds like we can close this for now. If things change in the future and there is a necessity for support this, we can reopen. Thanks.

We're seeing this in other branches of the US government as well, all Go programs can't make TLS connections due to these attributes.  Would like some sort of solution or workaround.

Wanted to chime in that we see this as broadly important to the Golang ecosystem at HashiCorp. Users and customers in the Federal space have more advanced uses of PKI that are standards compliant, but beyond the typical commercial use cases. Lack of support prevents those organizations from being able to build applications using Golang, and impacts vendors like us supporting them.

This proposal has been added to the active column of the proposals project
and will now be reviewed at the weekly proposal review meetings.
— rsc for the proposal review group

After some discussions it looks like, due to the current prevalence of this and the indications that FPKI is going all-in on it, we are probably going to need to support it. I think the only external API changes will need to be adding fields for the parsed extensions. Internally we'll implement the validation logic as specified in https://datatracker.ietf.org/doc/html/draft-ietf-lamps-x509-policy-graph, rather than the 5280 logic, since that is vulnerable to a trivial DoS.
I'll propose a concrete API change this week.

Concrete proposal below. This copies the pattern we use for MaxPathLen/MaxPathLenZero, which is necessary because the zero value is meaningful. It feels like there should be a better way to do this, but it is not obvious to me. Ideally we'd use a pointer, but requiring users to create an int and then construct a pointer to it is not exactly user friendly.
We may not need the VerifyOptions change, but it allows users to specify the initial acceptable policy, which may be useful.
type Certificate {
	...

	// InhibitAnyPolicy and InhibitAnyPolicyZero indicate the preence and value
	// of the inhibitAnyPolicy extension.
	//
	// The value of InhibitAnyPolicy indicates the number of additional
	// certificates in the path after this certificate that may use the
	// anyPolicy policy OID to indicate a match with any other policy.
	//
	// When parsing a certificate, a positive non-zero InhibitAnyPolicy means
	// that the field was specified, -1 means it was unset, and
	// InhibitAnyPolicyZero being true mean that the field was explicitly set to
	// zero. The case of InhibitAnyPolicy==0 with InhibitAnyPolicyZero==false
	// should be treated equivalent to -1 (unset).
	//
	// When generating a certificate, an unset pathLenConstraint can be
	// requested with either InhibitAnyPolicy == -1 or using the zero value for
	// both InhibitAnyPolicy and InhibitAnyPolicyZero.
	InhibitAnyPolicy int
	// InhibitAnyPolicyZero indicates that InhibitAnyPolicy==0 should be
	// interpreted as an actual maximum path length of zero. Otherwise, that
	// combination is interpreted as InhibitAnyPolicy not being set.
	InhibitAnyPolicyZero bool

	// InhibitPolicyMapping and InhibitPolicyMappingZero indicate the presence
	// and value of the inhibitPolicyMapping field of the policyConstraints
	// extension.
	//
	// The value of InhibitPolicyMapping indicates the number of additional
	// certificates in the path after this certificate that may use policy
	// mapping.
	//
	// When parsing a certificate, a positive non-zero InhibitPolicyMapping
	// means that the field was specified, -1 means it was unset, and
	// InhibitPolicyMappingZero being true mean that the field was explicitly
	// set to zero. The case of InhibitPolicyMapping==0 with
	// InhibitPolicyMappingZero==false should be treated equivalent to -1
	// (unset).
	//
	// When generating a certificate, an unset pathLenConstraint can be
	// requested with either InhibitPolicyMapping == -1 or using the zero value
	// for both InhibitPolicyMapping and InhibitPolicyMappingZero.
	InhibitPolicyMapping int
	// InhibitPolicyMappingZero indicates that InhibitPolicyMapping==0 should be
	// interpreted as an actual maximum path length of zero. Otherwise, that
	// combination is interpreted as InhibitAnyPolicy not being set.
	InhibitPolicyMappingZero bool

	// RequireExplicitPolicy and RequireExplicitPolicyZero indicate the presence
	// and value of the requireExplicitPolicy field of the policyConstraints
	// extension.
	//
	// The value of RequireExplicitPolicy indicates the number of additional
	// certificates in the path after this certificate before an explicit policy
	// is required for the rest of the path. When an explicit policy is required,
	// each subsequent certificate in the path must contain a required policy OID,
	// or a policy OID which has been declared as equivalent through the policy
	// mapping extension.
	//
	// When parsing a certificate, a positive non-zero RequireExplicitPolicy
	// means that the field was specified, -1 means it was unset, and
	// RequireExplicitPolicyZero being true mean that the field was explicitly
	// set to zero. The case of RequireExplicitPolicy==0 with
	// RequireExplicitPolicyZero==false should be treated equivalent to -1
	// (unset).
	//
	// When generating a certificate, an unset pathLenConstraint can be
	// requested with either RequireExplicitPolicy == -1 or using the zero value
	// for both RequireExplicitPolicy and RequireExplicitPolicyZero.
	RequireExplicitPolicy int
	// RequireExplicitPolicyZero indicates that RequireExplicitPolicy==0 should be
	// interpreted as an actual maximum path length of zero. Otherwise, that
	// combination is interpreted as InhibitAnyPolicy not being set.
	RequireExplicitPolicyZero bool

}

// PolicyMapping represents a policy mapping entry in the policyMappings extension.
type PolicyMapping struct {
	// IssuerDomainPolicy indicates policy OID the issuing certificate considers
	// equivalent to the subjects SubjectDomainPolicy.
	IssuerDomainPolicy OID
	// SubjectDomainPolicy indicates policy OID the issuing certificate considers
	// equivalent to the issuers IssuerDomainPolicy.
	SubjectDomainPolicy OID
}

type VerifyOptions struct {
	...

	// CertificatePolicies specifies which certificate policy OIDs are acceptable.
	// If set, the policy graph is checked during path building, and it must
	// satisfy one of the provided policies.
	CertificatePolicies []OID
}

This seems unfortunate but probably also the best we can do. Any thoughts @FiloSottile?

Are these extensions ever used for non-zero values? If not, we could start with just the ...Zero bool fields. Answering this question might not be trivial, but if we're going to target some level of support of FPKI certificates (alas), we should try to get a large sample to do compatibility checks on, like we do with WebPKI certificates at times.
Also, if the use case we are targeting is supporting FPKI certificates for TLS, it feels like we could do without the VerifyOptions field, at least for now. I assume they still only use EKUs for designating server auth?
(What's type PolicyMapping for? It's not referenced by any other APIs.)

Are these extensions ever used for non-zero values? If not, we could start with just the ...Zero bool fields. Answering this question might not be trivial, but if we're going to target some level of support of FPKI certificates (alas), we should try to get a large sample to do compatibility checks on, like we do with WebPKI certificates at times.

A good question, the answer to which is.... unclear. The (FPKI certificate policy)[https://www.idmanagement.gov/docs/fpki-x509-cert-policy-common.pdf] seems to indicate that inhibitPolicyMapping may be non zero, but InhibitAnyPolicy and requireExplicitPolicy should only ever be zero if set. That said, I'm having a slightly painful time actually trying to verify if that is true in practice. FPKI certificates are not particularly as well mapped in the same way web PKI ones are.
I'm happy to just leave out InhibitAnyPolicy and RequireExplicitPolicy, keeping just the Zero fields for the initial implementation. There is a question of what to do when we parse a certificate containing these extensions with non-zero values though. Probably we should fail since we couldn't safely do the verification? (or at least how we treat it internally would diverge from the what the user sees) 🤷

Also, if the use case we are targeting is supporting FPKI certificates for TLS, it feels like we could do without the VerifyOptions field, at least for now. I assume they still only use EKUs for designating server auth?

Yeah I was of two minds about this. Likely all we really want is to verify basic policy (or, really, just parse the extensions), but the FPKI has it's whole own set of weird policy OIDs beyond those specified in the web PKI (in the id-fpki-certpcy tree). It's possible that users may want, or be required, to verify compliance with a specific one of these.
I think at least for the first implementation of this we should just leave the verification stuff out, but I wanted to include it in the proposal so we can be ready to implement it if it is necessary.

(What's type PolicyMapping for? It's not referenced by any other APIs.)

Bah I managed to skip that extension in the proposal. Updated the comment.

Just to add a little bit of context, our interested parties definitely want to be able to do more than just parse the extensions.  They expect to verify policy.  How deeply, whether basic (likely) or being able to validate particular policies isn't super clear to us at this time, but we'd probably appreciate the ability to satisfy this so as to not to be caught off guard and to not need to try to workaround or interrupt Go development to be able to provide compliance in this space.

The next step on this is that @rolandshoemaker is planning to try implementing the API in https://github.com/golang/go/issues/68484#issuecomment-2341946531 to "see how painful it is."

Implemented in CL xxx. It turns out to not be as terrible as I expected, other than the ton of new fields on Certificate.
In order to properly implement validation we needed three more fields on VerifyOptions:
	// InhibitPolicyMapping indicates if policy mapping should be allowed
	// during path validation.
	InhibitPolicyMapping bool

	// RequireExplicitPolicy indicates if the path contain a policy listed in
	// CertificatePolicies.
	RequireExplicitPolicy bool

	// InhibitAnyPolicy indicates if the anyPolicy policy should be
	// processed if present in a certificate being validated.
	InhibitAnyPolicy bool

Updated https://github.com/golang/go/issues/68484#issuecomment-2341946531 to reflect the final API.

Amazingly we need one more API change. Updated https://github.com/golang/go/issues/68484#issuecomment-2341946531.
Since we filter chains post-building, we need a new InvalidReason const for the error return, since we may return no chains for a new reason.
const(
	...

	// NoValidChains results when there are no valid chains to return.
	NoValidChains
)

Went back and forth in review, and looked for ways to reduce either the API surface or the attack surface of "regular" chain validation, and we came up pretty much short. This is a terrible feature of X.509, and if we need to support it, I think this is the best we can do.

Re-opening since the proposal is still inflight. We landed this under the assumption it would be accepted after the freeze. If the committee decides not to accept the proposal we will revert the change.

Went back and forth in review

Thanks for doing the exercise! @rolandshoemaker is our only expert in this stuff on the proposal committee, so I wanted to make sure we got a second expert opinion before moving forward with this.

Based on the discussion above, this proposal seems like a likely accept.
— rsc for the proposal review group
The proposal details are in https://github.com/golang/go/issues/68484#issuecomment-2341946531.

No change in consensus, so accepted. 🎉
This issue now tracks the work of implementing the proposal.
The proposal details are in https://github.com/golang/go/issues/68484#issuecomment-2341946531.

Closing, completed in https://go.dev/cl/618415.


No LDAP information written to log

I have logging enabled in devise.rb:
config.ldap_logger = true

It shows as enabled in rails console:
2.2.2 :005 > Devise.ldap_logger
 => true

However, when I try to sign in, no LDAP debug information is written to the log:
Started POST "/users/sign_in" for ::1 at 2015-11-23 15:22:25 -0500
  ActiveRecord::SchemaMigration Load (84.2ms)  SELECT schema_migrations.* FROM schema_migrations
Processing by Devise::SessionsController#create as HTML
  Parameters: {"utf8"=>"✓", "authenticity_token"=>"0r64ONGOtEOc/J9i+ZzO6b4UCVsGcwzgxZIid8vP2B2Cytdy+i2AIgadQY1OAAArjmeoaXFN2Ec+XJBM3ywUQA==", "user"=>{"login"=>"leonsp", "password"=>"...", "remember_me"=>"0"}}
Completed 401 Unauthorized in 76ms (ActiveRecord: 0.0ms)
Processing by Devise::SessionsController#new as HTML
  Parameters: {"utf8"=>"✓", "authenticity_token"=>"0r64ONGOtEOc/J9i+ZzO6b4UCVsGcwzgxZIid8vP2B2Cytdy+i2AIgadQY1OAAArjmeoaXFN2Ec+XJBM3ywUQA==", "user"=>{"login"=>"leonsp", "password"=>"...", "remember_me"=>"0"}}
  Rendered devise/shared/_links.html.haml (2.6ms)
  Rendered devise/sessions/new.html.haml within layouts/application (24.5ms)
  Rendered shared/_header.html.haml (9.4ms)
  Rendered shared/_footer_links.html.haml (1.3ms)
  Rendered shared/_footer.html.erb (2.8ms)
Completed 200 OK in 705ms (Views: 212.1ms | ActiveRecord: 0.0ms)

I've disabled all Rails gems that do anything with logging, but I'm still not seeing any LDAP log messages.
I can successfully connect to the LDAP server using ldapsearch:
ldapsearch -x -W -D "cn=admin,dc=my_domain,dc=com" -H ldap://my_hostname.my_domain.com -b dc=my_domain,dc=com "(cn=leonsp)"
My devise configuration looks the same:
development:
  host: ldap://my_hostname.my_domain.com
  port: 389
  attribute: cn
  base: dc=my_domain,dc=com
  admin_user: cn=admin,dc=my_domain,dc=com
  admin_password: ...
  ssl: none
  # <<: *AUTHORIZATIONS

Why is there no LDAP information in the log?
What additional diagnostics can I try or collect?

This user had a similar problem, in the sense that their LDAP code was not being run: http://stackoverflow.com/questions/28489814/how-to-debug-custom-devise-strategy-in-rails-4
I've tried upgrading from released gem level  (0.8.5) to github master gem level (0.8.6) to no effect.
Excerpt of my user model:
class User < ActiveRecord::Base
  # Include default devise modules. Others available are:
  # :confirmable, :lockable, :timeoutable and :omniauthable
  devise :ldap_authenticatable, :registerable,
    :recoverable, :rememberable, :trackable, :validatable,
    :confirmable, :lockable, :zxcvbnable

I got the model to work with :database_authenticable before trying :ldap_authenticable.
I've now monkeypatched find_for_ldap_authentication in the User model as well as ldap_auth_username_builder and Devise::Strategies::LdapAuthenticatable.authenticate! to write to the debug Rails log before they do anything, and none of them are writing anything to the log.
Why is the LDAP code not being reached?

I'm tracing the execution with byebug:
[346, 355] in /Users/leonsp/.rvm/gems/ruby-2.2.2/gems/warden-1.2.3/lib/warden/proxy.rb
   346:         strategies = defaults[scope] || defaults[:_all]
   347:       end
   348:
   349:       (strategies || args).each do |name|
   350:         strategy = _fetch_strategy(name, scope)
=> 351:         next unless strategy && !strategy.performed? && strategy.valid?
   352:
   353:         self.winning_strategy = @winning_strategies[scope] = strategy
   354:         strategy._run!
   355:         break if strategy.halted?

At this point, strategy is an instance of :ldap_authenticatable, !strategy.performed? is true, but strategy.valid? is false.
Why is strategy.valid? false for :ldap_authenticatable? I will try to investigate, but this is all new to me.

Immediate issue was due to https://github.com/plataformatec/devise/issues/1255
I had optional keys in config.authentication_keys. This makes Devise::Strategies#parse_authentication_key_values fail automatically.


Two perimeter networks?

I'm confused by the text and diagram on this page.
At the link https://learn.microsoft.com/en-us/azure/cloud-adoption-framework/ready/azure-best-practices/perimeter-networks#perimeter-network-topology, the document says "The following diagram shows an example hub and spoke network with two perimeter networks that enforce access to the internet and to an on-premises network."
But the diagram at https://learn.microsoft.com/en-us/azure/cloud-adoption-framework/_images/azure-best-practices/network-high-level-perimeter-networks.png only has one perimeter network as far as can see.
Can you help / reconcile?
Document Details
⚠ Do not edit this section. It is required for learn.microsoft.com ➟ GitHub issue linking.

ID: d40b10fc-3c76-0f45-6139-5e406d23cbec
Version Independent ID: 3a4eb3db-94be-72ed-922b-48b4d87903f5
Content: Perimeter networks - Cloud Adoption Framework
Content Source: docs/ready/azure-best-practices/perimeter-networks.md
Service: cloud-adoption-framework
Sub-service: ready
GitHub Login: @tracsman
Microsoft Alias: martinek

Hi @larryclaman
Sorry for the delay.
I think this image will help to understand the two-perimeter concept

It was taken from here
That is why the paragraph below the image start with “Both perimeter networks are in the DMZ hub”
I will close the ticket, but feel free to re-open if additional clarification is needed.

#please-close

Hi @v-fearam.  Respectfully, I think this article still needs clarification.
I do see two perimeter networks referenced in the diagram you referenced; however, that diagram is NOT in the article at all.  So how is a reader supposed to understand that is what you are referring to?
Suggest you add this diagram to the article.


Migration of SiStripClusterizer to Alpaka

PR description:
Migration of SiStripClusterizer to Alpaka, building on PR https://github.com/cms-sw/cmssw/pull/34618.

[x] Migration of SiStripClusters data format(s);
[ ] Migration of calibration data format(s).

The migration of each data format entails adjustments to relevant producers/kernels.
PR validation:
In TTbar events + PU, performance compared to reference is ~ identical on both CPU and GPU:
https://mmasciov.web.cern.ch/mmasciov/SiStripAlpaka/MTV_trackrecoSiStripAlpaka_all/
FYI: @dan131riley, @slava77, @VourMa

@dan131riley, @slava77: of course, your feedback is welcome even while the PR awaits to be completed.


No optimization output of SPO+ and DBB

In the example code of the Training part, the SPO+ function and DBB function only have one loss output. From the source code, the SPO+ and DBB also only return loss but no optimization solution. I think we also need the optimization solution.  This is the SPO+ forward function.
    def forward(ctx, pred_cost, true_cost, true_sol, true_obj, module):
        """
        Forward pass for SPO+

        Args:
            pred_cost (torch.tensor): a batch of predicted values of the cost
            true_cost (torch.tensor): a batch of true values of the cost
            true_sol (torch.tensor): a batch of true optimal solutions
            true_obj (torch.tensor): a batch of true optimal objective values
            module (optModule): SPOPlus modeul

        Returns:
            torch.tensor: SPO+ loss
        """
        # get device
        device = pred_cost.device
        # convert tenstor
        cp = pred_cost.detach().to("cpu").numpy()
        c = true_cost.detach().to("cpu").numpy()
        w = true_sol.detach().to("cpu").numpy()
        z = true_obj.detach().to("cpu").numpy()
        # check sol
        #_check_sol(c, w, z)
        # solve
        sol, obj = _solve_or_cache(2 * cp - c, module)
        # calculate loss
        loss = []
        for i in range(len(cp)):
            loss.append(- obj[i] + 2 * np.dot(cp[i], w[i]) - z[i])
        # sense
        if module.optmodel.modelSense == EPO.MINIMIZE:
            loss = np.array(loss)
        if module.optmodel.modelSense == EPO.MAXIMIZE:
            loss = - np.array(loss)
        # convert to tensor
        loss = torch.FloatTensor(loss).to(device)
        sol = torch.FloatTensor(sol).to(device)
        # save solutions
        ctx.save_for_backward(true_sol, sol)
        # add other objects to ctx
        ctx.optmodel = module.optmodel
        return loss

Hi @zhechen003 ,
Thanks for raising this point! First, to clarify, the DBB function (Differentiable Black-Box Optimizer) does return only the predicted solutions, not the loss. You can confirm this in the DBB forward function implementation:
class blackboxOptFunc(Function):
    """
    A autograd function for differentiable black-box optimizer
    """

    @staticmethod
    def forward(ctx, pred_cost, module):
        """
        Forward pass for DBB

        Args:
            pred_cost (torch.tensor): a batch of predicted values of the cost
            module (optModule): blackboxOpt module

        Returns:
            torch.tensor: predicted solutions
        """
        # get device
        device = pred_cost.device
        # convert tensor
        cp = pred_cost.detach().to("cpu").numpy()
        # solve
        sol, _ = _solve_or_cache(cp, module)
        # convert to tensor
        sol = torch.tensor(sol, dtype=torch.float, device=device)
        # save
        ctx.save_for_backward(pred_cost, sol)
        # add other objects to ctx
        ctx.lambd = module.lambd
        ctx.module = module
        return sol

Regarding the SPO+ loss, it is true that only the loss is returned, and the optimal solution for the predicted costs cp is and will be not included in the output. Let me explain the reasoning behind this design:

During the computation of the SPO+ loss and its corresponding subgradient, the optimal solution for cp is not required.
Computing the optimal solution for cp involves solving an optimization problem, which is a computational bottleneck in training. Adding this extra step in the forward function would significantly increase the computational overhead, especially in large-scale applications.

If youneed to compute the solution explicitly, you can easily do so by leveraging the optmodel object directly during training. Here’s an example:
# training
num_epochs = 10
for epoch in range(num_epochs):
    for data in dataloader:
        x, c, w, z = data
        # forward pass
        cp = predmodel(x)
        loss = spop(cp, c, w, z)
        # use optmodel to get solution
        sols = []
        for cp_j in cp.to("cpu").detach().numpy():
            optmodel.setObj(cp_j)
            sol, _ = optmodel.solve()
            sols.append(sol)
        # backward pass
        optimizer.zero_grad()
        loss.backward()
        optimizer.step()

I hope the explanation and example provided address your question. If there’s anything still unclear or if you have any additional questions, please feel free to let us know.
If there are no further concerns, I will plan to close this issue after one day.
Looking forward to your feedback!


dkf-core--deploykf-istio-gateway failed to create load balancer services in EKS cluster

Checks

[X] I have searched the existing issues.
[X] This issue is NOT security related. (Please disclose responsibly)
[X] This issue is NOT specific to the CLI. (Please open a CLI issue)

deployKF Version
v0.1.5
Kubernetes Distribution
EKS
Kubernetes Version
Client Version: v1.28.2
Kustomize Version: v5.0.4-0.20230601165947-6ce0bf390ce3
Server Version: v1.28.11-eks-db838b0

Description
When i'm Syncing dkf-core--deploykf-istio-gateway, i can see deploykf-gateway service getting failed with below error, do we need keep the service type as load balancer as mandatory ?
Relevant Logs
*Failed build model due to UnauthorizedOperation: You are not authorized to perform this operation. User: arn:aws:sts::123456789:assumed-role/mycluster-alb-role/635457896531455782559875 is not authorized to perform: ec2:CreateSecurityGroup on resource: arn:aws:ec2:us-east-2:123456789:vpc/vpc-03b408c5330c3936d with an explicit deny in a permissions boundary. Encoded authorization failure message: *

deployKF Values (Optional)
apiVersion: v1
kind: Service
metadata:
  labels:
    app: deploykf-gateway
    app.kubernetes.io/managed-by: Helm
    app.kubernetes.io/name: deploykf-gateway
    app.kubernetes.io/version: 1.17.8
    argocd.argoproj.io/instance: dkf-core--deploykf-istio-gateway
    helm.sh/chart: gateway-1.17.8
    istio: deploykf-gateway
  name: deploykf-gateway
  namespace: deploykf-istio-gateway
spec:
  ports:
    - name: status-port
      port: 15021
      protocol: TCP
      targetPort: 15021
    - name: http
      port: 8080
      protocol: TCP
      targetPort: 8080
    - name: https
      port: 8443
      protocol: TCP
      targetPort: 8443
  selector:
    app: deploykf-gateway
    istio: deploykf-gateway
  type: LoadBalancer

Based on your newer comments, I am going to assume you resolved this.


Chore: Update rawcontentkey type

What was wrong?
Vec<u8> was being used to represent Raw Content Key
How was it  #fixed?
Replaced it with alloy_primites::Bytes
To-Do

[ ] Clean up commit history and use conventional commits.

Also, see https://www.conventionalcommits.org/en/v1.0.0/ for failing check.

Implemented RawContentKey in OverlayContentKey and in downstream traits as well

You can ignore failing commitlint check, as I will squash and merge changes anyway.
But for the future, problem is the commit message: "fix: CI fixes and resolved conflicts with master", because it starts with capital letter (maybe something that we should change in our configuration).

Fixed the commit message and remove From impl for StateContentKey