Sketch features / UI improvements

We checked how useful some ideas would be in the workshop last week, and all of these seem relevant.

[ ] Adding a georeferenced image to sketch over, partly dependent on if high-res maps are available. The initial prototype in move_images branch doesn't work yet, and also, our partner asked for "control points". Click two points in the image loaded, and click the corresponding spots on the map to automatically find scale+translation+rotation.
[ ] Optionally show tooltips near route snapper waypoints as you drag around
[x] Use the geocoder to add waypoints to the route snapper
[ ] Undo/redo
[x] Add support for specifying a single optional coverage polygon

as well as all the multiple-scheme stuff, will put in the other issue

Just dumping TODOs from meetings:

[ ] Overhaul budget section. One total numeric cost, two checkboxes for development/construction funded. Multiple funding sources possible, and add a freetext Other. Check all of this.
[ ] Revisit the sub-types with Robin
[ ] Accuracy of mapped data needs to be required
[ ] Check copy/paste with govuk textboxes
[ ] Add optional cost and estimated completion year to per-intervention form. In scheme-wide details, show sum of intervention costs and max year as a hint to fill out the scheme-wide one.
[ ] Revisit ATF4 dropdown for interventions -- maybe should be checkboxes
[ ] Lift the "file" menu out of the scheme controls. Open file, save file, reset everything. But critically, the new control is to add a file to the current loaded set. The workflow will be several people independently mapping schemes, then one person collecting them together and making sure they join up properly.
[ ] Stop autofilling route name in pipeline mode, but keep as an option. Add hint text to say use the LCWIP PDF.

Remaining things here don't seem relevant anymore, so closing


Update binary-compatibility-validator to v0.13.0

Blocked by https://github.com/Kotlin/kotlinx-atomicfu/issues/281.


Fix theoretical sensitivity

This PR fixes the get_sensitivity function to properly calculate the theoretical sensitivity on a per-source, all-EB basis by defining an image over all of the EBs at once and running just one sensitivity estimate. (As a note, it was previously averaging the per-EB sensitivities rather than doing something like sensitivity / N**0.5, but this was typically balanced by the fact that the # of EBs ~ # of targets, and it was calculating the sensitivity over all targets).
@jjtobin, one note: on line 1056, the im.defineimage call takes a list of SPWs. As this is now being done for all EBs at once, we might need to invoke your fixes for maxspwvis so that cases where there are slightly different numbers of spws across different EBs get handled properly. I don't know if you have time to test that out... but I'll look into adding that fix this afternoon, so it may be worth holding off merging this until then.

Ok, I've now added in the little bit of code to calculate maxspwvis and use that with im.defineimage so we should be all set.


[APIM 3.0.0]Publisher REST API, Mediation Policies rest apis

We need to implement below REST APIS to support Global and API level mediation policies.
API Specific mediation policies
'/apis/{apiId}/mediation-policies': GET, POST
/apis/{apiId}/mediation-policies/{mediationPolicyId}: GET, DELETE
/apis/{apiId}/mediation-policies/{mediationPolicyId}/content: GET, PUT
Global mediation policies
/mediation-policies: GET
/mediation-policies/{mediationPolicyId}/content: GET

API Specific mediation policies
######################################################
The "specific mediation policy" resource APIs
######################################################
'/apis/{apiId}/mediation-policies':
#-----------------------------------------------------------------------------------------
# Retrieving the list of all API specific mediation sequences under a given search condition
#-----------------------------------------------------------------------------------------
get:
  security:
    - OAuth2Security:
      - apim:mediation_policy_view
  x-examples:
      $ref: docs/examples/apis/apis_id_mediationpolicies_get.yaml
  summary: |
    Get all mediation policies of an API
  operationId:  apisApiIdMediationPoliciesGet
  description: |
    This operation provides you a list of available mediation policies of an API.
  parameters:
    - $ref: '#/parameters/apiId'
    - $ref : '#/parameters/limit'
    - $ref : '#/parameters/offset'
    - name : query
      in: query
      description: "-Not supported yet-"
      type: string
    - $ref : "#/parameters/If-None-Match"
  tags:
    - API Mediation Policies
  responses:
    200:
      description: |
        OK.
        List of qualifying APIs is returned.
      schema:
        $ref: '#/definitions/MediationList'
      headers:
        Content-Type:
          description: The content type of the body.
          type: string
        ETag:
          description: |
            Entity Tag of the response resource. Used by caches, or in conditional requests (Will be supported in future).
          type: string
    304:
      description: |
        Not Modified.
        Empty body because the client has already the latest version of the requested resource (Will be supported in future).
    406:
      description: |
        Not Acceptable.
        The requested media type is not supported
      schema:
        $ref: '#/definitions/Error'

#----------------------------------------------------------------------------
# Upload an API specific mediation policy
#----------------------------------------------------------------------------
post:
  consumes:
  - multipart/form-data
  security:
    - OAuth2Security:
      - apim:mediation_policy_create
  x-examples:
    $ref: docs/examples/apis/apis_id_mediationpolicies_post.yaml
  summary: Add an API specific mediation policy
  operationId: apisApiIdMediationPoliciesPost
  description: |
    This operation can be used to add an API specifc mediation policy.
  parameters:
    - in: formData
      name: mediationPolicyFile
      description: Mediation Policy to upload
      type: file
      required: false
    - in: formData
      name: inlineContent
      description: Inline content of the Mediation Policy
      type: string
      required: false
    - in: formData
      name: type
      description: Type of the mediation sequence
      required: true
      type: string
    - $ref: '#/parameters/apiId'
    - $ref: '#/parameters/If-Match'
  tags:
    - API Mediation Policies
  responses:
    201:
      description: |
        OK.
        mediation policy uploaded
      schema:
        $ref : '#/definitions/Mediation'
      headers:
        Location:
          description: |
            The URL of the uploaded mediation policy of the API.
          type: string
        Content-Type:
          description: |
            The content type of the body.
          type: string
        ETag:
          description: |
            Entity Tag of the response resource.
            Used by caches, or in conditional requests (Will be supported in future).
          type: string
        Last-Modified:
          description: |
            Date and time the resource has been modifed the last time.
            Used by caches, or in conditional requests (Will be supported in future).
          type: string
    400:
      description: |
        Bad Request.
        Invalid request or validation error.
      schema:
        $ref: '#/definitions/Error'
    404:
      description: |
        Not Found.
        The resource to be updated does not exist.
      schema:
        $ref: '#/definitions/Error'
    412:
      description: |
        Precondition Failed.
        The request has not been performed because one of the preconditions is not met.
      schema:
        $ref: '#/definitions/Error'

######################################################
The "Individual API specific mediation sequence" resource
######################################################
/apis/{apiId}/mediation-policies/{mediationPolicyId}:
#-----------------------------------------------------
# Retrieve a particular API specific mediation sequence
#-----------------------------------------------------
get:
  security:
    - OAuth2Security:
      - apim:api_view
  x-examples:
    $ref: docs/examples/apis/apis_id_mediationpolicies_id_get.yaml
  summary: Get an API specific mediation policy
  operationId:  apisApiIdMediationPoliciesMediationPolicyIdGet
  description: |
    This operation can be used to retrieve a particular API specific mediation policy.
  parameters:
    - $ref: '#/parameters/apiId'
    - $ref: '#/parameters/mediationPolicyId'
    - $ref: '#/parameters/If-None-Match'
  tags:
    - API Mediation Policy
  responses:
    200:
      description: |
        OK.
        Mediation policy returned.
      schema:
        $ref: '#/definitions/Mediation'
      headers:
        Content-Type:
          description: |
            The content type of the body.
          type: string
        ETag:
          description: |
            Entity Tag of the response resource.
            Used by caches, or in conditional requests (Will be supported in future).
          type: string
        Last-Modified:
          description: |
            Date and time the resource has been modifed the last time.
            Used by caches, or in conditional requests (Will be supported in future).
          type: string
    304:
      description: |
        Not Modified.
        Empty body because the client has already the latest version of the requested resource (Will be supported in future).
    404:
      description: |
        Not Found.
        Requested Document does not exist.
      schema:
        $ref: '#/definitions/Error'
    406:
      description: |
        Not Acceptable.
        The requested media type is not supported
      schema:
        $ref: '#/definitions/Error'

#-----------------------------------------------------
# Delete the mediation policy
#-----------------------------------------------------
delete:
  security:
    - OAuth2Security:
      - apim:mediation_policy_manage
  x-examples:
    $ref: docs/examples/apis/apis_id_mediationpolicies_id_delete.yaml
  summary: Delete an API specific mediation policy
  operationId:  apisApiIdMediationPoliciesMediationPolicyIdDelete
  description: |
    This operation can be used to delete an existing API specific mediation policy providing the Id of the API and the Id of the mediation policy.
  parameters:
    - $ref: '#/parameters/apiId'
    - $ref: '#/parameters/mediationPolicyId'
    - $ref: '#/parameters/If-Match'
  tags:
    - API Mediation Policy
  responses:
    200:
      description: |
        OK.
        Resource successfully deleted.
    403:
      description: |
        Forbidden.
        The request must be conditional but no condition has been specified.
      schema:
        $ref: '#/definitions/Error'
    404:
      description: |
        Not Found.
        Resource to be deleted does not exist.
      schema:
        $ref: '#/definitions/Error'
    412:
      description: |
        Precondition Failed.
        The request has not been performed because one of the preconditions is not met.
      schema:
        $ref: '#/definitions/Error'

###################################################################
The "Individual API specific mediation sequence content" resource
###################################################################
/apis/{apiId}/mediation-policies/{mediationPolicyId}/content:
#---------------------------------------------------------------
# Retrieve a particular API specific mediation sequence content
#---------------------------------------------------------------
get:
  security:
  - OAuth2Security:
    - apim:api_view
  x-examples:
    $ref: docs/examples/apis/apis_id_mediationpolicies_id_content_get.yaml
  summary: Download an API specific mediation policy
  operationId:  apisApiIdMediationPoliciesMediationPolicyIdContentGet
  description: |
    This operation can be used to download a particular API specific mediation policy.
  parameters:
  - $ref: '#/parameters/apiId'
  - $ref: '#/parameters/mediationPolicyId'
  - $ref: '#/parameters/If-None-Match'
  tags:
  - API Mediation Policy
  responses:
    200:
      description: |
        OK.
        Mediation policy returned.
      headers:
        Content-Type:
          description: |
            The content type of the body.
          type: string
        ETag:
          description: |
            Entity Tag of the response resource.
            Used by caches, or in conditional requests (Will be supported in future).
          type: string
        Last-Modified:
          description: |
            Date and time the resource has been modifed the last time.
            Used by caches, or in conditional requests (Will be supported in future).
          type: string
    304:
      description: |
        Not Modified.
        Empty body because the client has already the latest version of the requested resource (Will be supported in future).
    404:
      description: |
        Not Found.
        Requested file does not exist.
      schema:
        $ref: '#/definitions/Error'
#-----------------------------------------------------
# Update a mediation policy
#-----------------------------------------------------
put:
  consumes:
  - multipart/form-data
  security:
  - OAuth2Security:
    - apim:mediation_policy_manage
  x-examples:
    $ref: docs/examples/apis/apis_id_mediationpolicies_id_content_put.yaml
  summary: Update an API specific mediation policy
  operationId:  apisApiIdMediationPoliciesMediationPolicyIdContentPut
  description: |
    This operation can be used to update an existing mediation policy of an API.
  parameters:
  - in: formData
    name: file
    description: Mediation Policy to upload
    type: file
    required: false
  - in: formData
    name: inlineContent
    description: Inline content of the Mediation Policy
    type: string
    required: false
  - in: formData
    name: type
    description: Type of the mediation sequence(in/out/fault)
    required: true
    type: string
  - $ref: '#/parameters/apiId'
  - $ref: '#/parameters/mediationPolicyId'
  - $ref: '#/parameters/If-Match'
  tags:
  - API Mediation Policy
  responses:
    200:
      description: |
        OK.
        Successful response with updated API object
      schema:
        $ref: '#/definitions/Mediation'
      headers:
        Location:
          description: |
            The URL of the newly created resource.
          type: string
        Content-Type:
          description: |
            The content type of the body.
          type: string
        ETag:
          description: |
            Entity Tag of the response resource. Used by caches, or in conditional requests (Will be supported in future).
          type: string
        Last-Modified:
          description: |
            Date and time the resource has been modifed the last time.
            Used by caches, or in conditional requests (Will be supported in future).
          type: string
    400:
      description: |
        Bad Request.
        Invalid request or validation error
      schema:
        $ref: '#/definitions/Error'
    403:
      description: |
        Forbidden.
        The request must be conditional but no condition has been specified.
      schema:
        $ref: '#/definitions/Error'
    404:
      description: |
        Not Found.
        The resource to be updated does not exist.
      schema:
        $ref: '#/definitions/Error'
    412:
      description: |
        Precondition Failed.
        The request has not been performed because one of the preconditions is not met.
      schema:
        $ref: '#/definitions/Error'

Global mediation policy APIs
/mediation-policies:
#-----------------------------------------------------------------------------------------
# Retrieving the list of all global mediation sequences under a given search condition
#-----------------------------------------------------------------------------------------
get:
  security:
    - OAuth2Security:
      - apim:mediation_policy_view
  x-wso2-curl: "curl -k -H \"Authorization: Bearer ae4eae22-3f65-387b-a171-d37eaa366fa8\" https://localhost:9443/api/am/publisher/v0.14/mediation-policies"
  x-wso2-request: |
    GET https://localhost:9443/api/am/publisher/v0.14/mediation-policies
    Authorization: Bearer ae4eae22-3f65-387b-a171-d37eaa366fa8
  x-wso2-response: "HTTP/1.1 200 OK\r\nContent-Type: application/json\r\n\r\n{\r\n   \"count\": 10,\r\n   \"next\": null,\r\n   \"previous\": null,\r\n   \"list\":    [\r\n            {\r\n         \"name\": \"debug_json_fault\",\r\n         \"id\": \"563de8f3-dd1d-4ec7-afc2-d158c663ed34\",\r\n         \"type\": \"fault\"\r\n      },\r\n            {\r\n         \"name\": \"json_fault\",\r\n         \"id\": \"f9c36f4d-a2b6-41e7-b311-d358a47916be\",\r\n         \"type\": \"fault\"\r\n      },\r\n            {\r\n         \"name\": \"json_to_xml_in_message\",\r\n         \"id\": \"3921225b-7918-4b95-a851-22c4e4e3e911\",\r\n         \"type\": \"in\"\r\n      },\r\n            {\r\n         \"name\": \"debug_in_flow\",\r\n         \"id\": \"2bc15f93-4455-4763-89b8-83600fb9d731\",\r\n         \"type\": \"in\"\r\n      },\r\n            {\r\n         \"name\": \"log_in_message\",\r\n         \"id\": \"4d287cca-76ab-44ca-b22e-919fc27c50e3\",\r\n         \"type\": \"in\"\r\n      },\r\n            {\r\n         \"name\": \"preserve_accept_header\",\r\n         \"id\": \"3776b215-b3bc-40b6-bdcb-06efa7de64be\",\r\n         \"type\": \"in\"\r\n      },\r\n            {\r\n         \"name\": \"xml_to_json_in_message\",\r\n         \"id\": \"50ac2002-769e-4f90-8549-6d0248dff7d2\",\r\n         \"type\": \"in\"\r\n      },\r\n            {\r\n         \"name\": \"xml_to_json_out_message\",\r\n         \"id\": \"2af75853-ed75-4d25-81aa-0ebbeca691ea\",\r\n         \"type\": \"out\"\r\n      },\r\n            {\r\n         \"name\": \"json_to_xml_out_message\",\r\n         \"id\": \"d9fa3ffc-f6b6-4171-ab97-eb44196cb66e\",\r\n         \"type\": \"out\"\r\n      },\r\n            {\r\n         \"name\": \"debug_out_flow\",\r\n         \"id\": \"260b7701-4071-46bd-9b66-900ac6fffed6\",\r\n         \"type\": \"out\"\r\n      },\r\n            {\r\n         \"name\": \"apply_accept_header\",\r\n         \"id\": \"15c17c2f-33e3-4c37-a262-04dfa49983a4\",\r\n         \"type\": \"out\"\r\n      },\r\n            {\r\n         \"name\": \"log_out_message\",\r\n         \"id\": \"d37dca41-c048-492a-82cf-9a2292c6fff0\",\r\n         \"type\": \"out\"\r\n      }\r\n   ]\r\n}"
  summary: |
    Get all global level mediation policies
  operationId: getAllGlobalMediationPolicies
  description: |
    This operation provides you a list of available all global level mediation policies.
  parameters:
    - $ref : '#/parameters/limit'
    - $ref : '#/parameters/offset'
    - name : query
      in: query
      description: "-Not supported yet-"
      type: string
    - $ref : "#/parameters/If-None-Match"
  tags:
    - Global Mediation Policies
  responses:
    200:
      description: |
        OK.
        List of mediation policies is returned.
      schema:
        $ref: '#/definitions/MediationList'
      headers:
        Content-Type:
          description: The content type of the body.
          type: string
        ETag:
          description: |
            Entity Tag of the response resource. Used by caches, or in conditional requests (Will be supported in future).
          type: string
    304:
      description: |
        Not Modified.
        Empty body because the client has already the latest version of the requested resource (Will be supported in future).
    406:
      description: |
        Not Acceptable.
        The requested media type is not supported
      schema:
        $ref: '#/definitions/Error'

###################################################################
The "Individual Global mediation policy content" resource
###################################################################
/mediation-policies/{mediationPolicyId}/content:
#---------------------------------------------------------------
# Retrieve a particular Global mediation sequence content
#---------------------------------------------------------------
get:
  security:
  - OAuth2Security:
    - apim:api_view
  summary: Downloadt specific global mediation policy
  operationId: getGlobalMediationPolicyContent
  description: |
    This operation can be used to download a particular global mediation policy.
  parameters:
  - $ref: '#/parameters/mediationPolicyId'
  - $ref: '#/parameters/If-None-Match'
  tags:
  - Global Mediation Policy
  responses:
    200:
      description: |
        OK.
        Mediation policy returned.
      headers:
        Content-Type:
          description: |
            The content type of the body.
          type: string
        ETag:
          description: |
            Entity Tag of the response resource.
            Used by caches, or in conditional requests (Will be supported in future).
          type: string
        Last-Modified:
          description: |
            Date and time the resource has been modifed the last time.
            Used by caches, or in conditional requests (Will be supported in future).
          type: string
    304:
      description: |
        Not Modified.
        Empty body because the client has already the latest version of the requested resource (Will be supported in future).
    404:
      description: |
        Not Found.
        Requested file does not exist.
      schema:
        $ref: '#/definitions/Error'

Fixed with https://github.com/wso2/carbon-apimgt/pull/6997


Np 65

fixes task NP-65 where the drop down for majors to choose doesn't display any majors beyond computer engineering

Also make sure to run npx prettier --write .  for formatting. Might want to make sure Prettier is working in VSCode too.


gh-1992 FedGraph runs operations against graphs that cant merge.

The federated store tests fail due to invalid Edges, this will need to be fixed by adding direction bits as discussed.


Steam is not barrelable

Mod source
Factorio Mod Portal
Which mod are you having an issue with?

[ ] pyalienlife
[ ] pyalternativeenergy
[ ] pycoalprocessing
[ ] pyfusionenergy
[ ] pyhightech
[X] pyindustry
[ ] pypetroleumhandling
[ ] pypostprocessing
[ ] pyrawores

Operating system

=Windows 10

What kind of issue is this?

[ ] Compatibility
[ ] Locale (names, descriptions, unknown keys)
[ ] Graphical
[ ] Crash
[ ] Progression
[ ] Balance
[ ] Pypostprocessing failure
[X] Other

What is the problem?
Steam cannot be put into barrels.

This feels very inconsistent considering most other liquids, even high pressure and temperature ones can be barreled.
Steps to reproduce
No response
Additional context
No response
Log file
No response

It's intentional. As a general rule, all of the "heated power production fluids" are non-barrelable.
For example:


How to check a polygon for self-intersection or MakeValid?

Hi all!
Can you tell me a convenient way to check a polygon for self-intersection or apply a method from a neighboring library ctessum/polyclip-go MakeValid()?
Or can you make methods Polygon.toPolyClip() and polyClipToPolygon() public?

I'd be okay with making those methods public. Feel free to make a pull request.


What do you guys learnt from Lab 6?

If anything, that forces you to treat Streams as something you can iterate with (theoretically you can replace all for and while loops with Streams, how cool is that?) although it can be painful and unintuitive at times...
If you think about it, setting up Streams is very much similar to iterating through iterables and doing whatever you want to it.
Still not sure? Go to Changi Airport and find some secret places (there is one at B1) to think about it.
Oh by the way, if you are looking for said video that got taken down here, go hunt it down yourself.

Bonus: you’re at the end of all your Lab requirements!
Give yourself some applause!


ENOENT for ca.pem

Hi!
I was really enjoying Kitematic up to first problems with reaching the machine (after OS X reboot). I've decided to set up machine once again:
This is what I get now when firing up Kitematic
ENOENT: no such file or directory, open '/Users/<redacted>/.docker/machine/machines/default/ca.pem'

Indeed, there is no such file even if <redacted> stands for my username.
$ ls ~/.docker/machine/machines/default/
boot2docker.iso  config.json      default/         disk.vmdk        id_rsa           id_rsa.pub

Could you please tell me how could I get it back working?

unfortunately VM deletion did not help

What about under the machine certs:
$ ls ~/.docker/machine/certs/
Do you have a properly created certificate? If yes, you can re-generate the certificates for your VM via:
docker-machine -D regenerate-certs default

Hi there, thanks a lot for a fast response!!
Unfortunately I wasn't patient enough and had my VirtualBox reinstalled, which solved my issue. If I manage to reproduce that behaviour, I'll definitely try  regenerating certs via docker-machine..
Let me close this issue for now :smile:

@mieciu Glad you were able to solve it :+1:  - Sometimes re-creating the VM is easier than the above if the VM was brand new.

@FrenchBen that worked :+1:

@FrenchBen that worked :+1:

@FrenchBen Thanks，it worked.

Thanks , it worked


Put this into an organization devoted to atom extensions?

Would you be willing to have this forked into an organization that is devoted to atom extensions?
I was thinking "atom-universe". Thoughts?

For what reason? What other packages would be in this org, and for what purpose?

Closing. Please add comments if appropriate.


Add brightness option when specifying LED color

Currently there’s no brightness adjustment for LEDs. I’d like to be able to set an LED’s brightness to 50% of its specified color. If I just used FFFFFF for the color of all LEDs, that’s no problem because I can just use 808080 as the 50% color. However, on BnD I have a mix of colors. Some are tuned to the color of the insert, while others are set to a “warm white” color of ff9027.
50% of ff9027 is 7f4813, but rather than calculating the various percentage values for each LED, it would be great if we could find a way to specify the brightness when we specify the color in a show or led_player or whatever.
Talking to Brian, it sounds like we already do fade times for colors in config, like “red-f20”, so perhaps we can add “-bxx” for brightness. The config would read something like “l_begin_round: on-b50” to get that light to turn on at 50% brightness of the color specified in the leds: section of the machine config.

This would have to go into color parsing in RGBColor. Maybe red%50? We need to find an intuitive format.

The only problem is if we also use -fxx, we'll have a color string like red%50-fxx, which isn't as intuitive as one that has "fields" separated by dashes. red-b50-f200 seems intuitive and leaves us the ability to add something else later that follows the same scheme.

Dunno. Those could not be mixed anyway. Because fade happens in the player but the brightness modifier can be used everywhere. So brightness have to come first

If you are looking to always have a particular light use a fixed brightness, you can do that today with color compensation.  Just set the maximum output level to 50% when creating the color compensation profile.  Colors often do not look quite right when "divided in half" as we are dealing with 8-bit channel precision in what effectively becomes a 7-bit number so some additional fine tuning is often needed.

We needed 16bit color resolution for platforms ;-)

Did a quick implementation here: https://github.com/missionpinball/mpf/pull/817/files#diff-99fbdc001b7245962e7f7c1ac64479deR61


Fix enum attribute argument.

Fixes #1825.
Even though TaggedScalar would look more correct, it looks like the actual C# compiler use Scalar instead. This is mentioned on win32metadata: https://github.com/microsoft/win32metadata/blob/527806d20d83d3abd43d16cd3fa8795d8deba343/sources/MetadataUtils/EncodeHelpers.cs#L125-L129

Thanks, confirmed things work with the change and the CI pipeline passed.


Use "0" as default argument for page_from parameter

Using "" as default argument breaks backward compatibility: anyone using the old constructor signature (Search(query) without page-related argument) will have an error because "" is not convertible to an int using the int() function. Using "0" instead seems to be a good alternative to keep backward compatibility.

Hi! Thanks for u contribution! Seems you're right, didn't expect anyone using code itself, not module)
Thank you and have a good day!


Make AppInfo own its strings.

Some of us want to make a library that uses app_dirs to manage data but lets the user of the library specify the strings for the application using it.  Forcing this to be a &'static str instead of a String is a pain and also seems to not really gain us anything.

Ah, I hadn't even thought of this use case! Great point. I'll fix this soon, or feel free to open a PR if you like - it should be a pretty simple change.

Wait, I remember why I did this now. You can't create a thread-safe, read-only const/static instance with String, but you can with &'static str. I really didn't want to require folks to pass around the AppInfo instance or have to pull in lazy_static as a dependency...
I wonder how we can solve this issue and yours? I think they are both valid.

It appears that using std::borrow::Cow makes it possible, though it's not terribly ergonomic and I'm still not 100% sure how it interacts with threading.  See https://github.com/icefoxen/app-dirs-rs/commit/52c69a945db05e7568c9c895d8d46d689d7815db  The canonical next step seems like it would be "add a macro to make it a bit prettier" but it seems like overkill...

Ooh, I bet I could use a simple trait with two methods (for author and app name) that return String, and provide the default struct as an implementation with &'static str fields that return String copies. So we can keep the ergonomic default implementation while allowing libs like yours to do different things :)

That would be wonderful.  <3

Ok, trying to implement a PR for this and I've realized I don't understand exactly what you mean.  Something like this?
trait AppInfoT {
    fn name(&self) -> String;
    fn author(&self) -> String;
}

impl AppInfoT for AppInfo {
    fn name(&self) -> String {
        self.name.to_string()
    }
    fn author(&self) -> String {
        self.author.to_string()
    }
}

More like this:
trait AppInfo {
    fn name(&self) -> &str;
    fn author(&self) -> &str;
}

struct StaticAppInfo {
    name: &'static str,
    author: &'static str,
}

struct DynamicAppInfo {
    name: String,
    author: String,
}

impl AppInfo for StaticAppInfo {
    fn name(&self) -> &str {
        self.name
    }
    fn author(&self) -> &str {
        self.author
    }
}

impl AppInfo for DynamicAppInfo {
    fn name(&self) -> &str {
        &self.name
    }
    fn author(&self) -> &str {
        &self.author
    }
}

Returning str instead of String avoids unnecessary cloning/allocation.

Finally got around to implementing this in https://github.com/icefoxen/app-dirs-rs/commit/71ba239f14ac62bda59ec3c03ac6f5beb50e7890 .  If you like it I'll update the docs and make a PR.  It breaks the API, which is annoying, and I don't entirely like the StaticAppInfo name, but...

Hello,
so I've made a change, before checking that there was an issue about this, please see #22 I've also added a comment about #22 vs #23 in there.


Missing information about the pain points to migrate from C++/CX to C++/WinRT

In the section "How hard is it to migrate UWP apps to Windows App SDK / WinUI 3?", the cost of complete rewrite requested to C++ developers to migrate from C++/CX into C++/WinRT, with a complete different programming approach and lack of VS tooling support, has been completly ignored.
It should be clarified that this requires a complete rewrite for C++ developers that bought into developing UWP applications with C++/CX.

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

ID: 3c39c683-77bb-e879-905c-47d12078f45b
Version Independent ID: 3c39c683-77bb-e879-905c-47d12078f45b
Content: Windows developer FAQ
Content Source: hub/apps/get-started/windows-developer-faq.yml
Product: uwp
GitHub Login: @MatchaMatch
Microsoft Alias: mikben

Thanks, @pjmlp! I'll update the topic soon.
-Steve


test-branch/execute-job/wrong-commit-sha-on-pr/3d45f848-edad-4d4e-837a-3a18c7f252c3

PR for testing 362811af881d8c617c4646c01196972bfd6e2b5b

/canonical/self-hosted-runners/run-workflows 9ce0b744df15004781dcf1966b1c85dd6407cbc6


Don't include assets config by default

If there is no content/assets fs-extra will throw an error about no file/directory

It looks like docs and boilerplate is replying on this default behaviour. @MoOx could you confirm

The default boilerplate have some assets, so I think we found another solution.
Maybe only include it if the folder exist and if not show a clear warning?

Great.


zh translation: index

zh translation: /index.rst
ref: https://github.com/cloudnativeto/envoy/issues/100

/LGTM

/merged

/approved


Incorrect code generation in TSX files

Typescript version 1.7.3.
Given the following TSX code:
renderThresholdPanel(metric:MetricDefinition) {
	var panel;
	switch (metric.unit) {
		case MetricUnit.PERCENTAGE:
			panel = PercentageThresholdConfigPanel;
			break;
		case MetricUnit.RESPONSE_TIME:
			panel = ResponseTimeThresholdConfigPanel;
			break;
		case MetricUnit.MEMORY_SIZE:
			panel = MemoryThresholdConfigPanel;
			break;

	}

	return <panel ref="thresholdPanel"/>;
}

The output is:
function (metric) {
	var panel;
	switch (metric.unit) {
	    case metricTypes_1.MetricUnit.PERCENTAGE:
	        panel = percentageThesholdConfigPanel_1.PercentageThresholdConfigPanel;
	        break;
	    case metricTypes_1.MetricUnit.RESPONSE_TIME:
	        panel = responseTimeThresholdConfigPanel_1.ResponseTimeThresholdConfigPanel;
	        break;
	    case metricTypes_1.MetricUnit.MEMORY_SIZE:
	        panel = memoryThresholdConfigPanel_1.MemoryThresholdConfigPanel;
	        break;
	}

	return React.createElement("panel", {"ref": "thresholdPanel"});
};

Expected
Should have used the panel variable
return React.createElement(panel, {"ref": "thresholdPanel"});

Actual
Uses the string literal "panel" instead:
return React.createElement("panel", {"ref": "thresholdPanel"});

I don't think that's correct. All element names beginning with lowercase letters are intrinsics, and should be emitted to a string. But I'll defer to @RyanCavanaugh instead of closing this.

@DanielRosenwasser is correct.
This is unfortunately 100% necessary since there's a ton of React code that writes things like let div =
Hello world!
, so even the presence of the panel local here isn't definitive proof of anything.
It sounds like you're using some non-React framework (since this code wouldn't work with the React transformer either) so the recommended actions are 1) use --jsx preserve and pipe that output to an appropriate JSX transformer or 2) let us know which other framework you're using so we can take that into account for future JSX decisions.

i was using react itself.


Add crossorigin="use-credentials" in javascript module to allow credentials.

🚀 Feature request
Command (mark with an x)

- [ ] new
- [X] build
- [ ] serve
- [ ] test
- [ ] e2e
- [ ] generate
- [ ] add
- [ ] update
- [ ] lint
- [ ] xi18n
- [ ] run
- [ ] config
- [ ] help
- [ ] version
- [ ] doc

Description
 A clear and concise description of the problem or missing capability...
Add crossorigin="use-credentials" in javascript module to allow credentials.
In safari credentials are not send by default in a javascript module, so if the access to your webapp is protected with credentials in the backend, the module will not be loaded
Describe the solution you'd like
 If you have a solution in mind, please describe it.
Just add crossorigin="use-credentials" in javascript module.
I found my problem after reading https://jakearchibald.com/2017/es-modules-in-browsers/ in No credentials section
Describe alternatives you've considered
 Have you considered any alternative solutions or workarounds?

This feature will available in 8.2
Kindly check https://github.com/angular/angular-cli/pull/14844

Hi, just a small correct re the above, it is available in 8.1.


Test_getFullRHELv2Features compare slices with assert.ElementsMatchf

assert.Equalf works iff the order is the same. Use  assert.ElementsMatchf so we don't have to care about the ordering

ignore the failing tests, they are unrelated


parameter to reflect file before sending transaction

This would make sure the file is fully available before it's published. This will be even more critical when we have mempool claim support.
See discussion in https://lbryians.slack.com/archives/C81K0BM9A/p1624157642120300

This would also hopefully have some kind of progress indicator as it's uploading.


Improve code actions

Having both gd and gf mapped to "revealDefinition" seemed redundant, so this PR maps gf to "revealDeclaration". In some languages like C++ this makes a difference, and the mnemonic "go to forward declaration" makes sense for gf. gd remains "go to definition".
I refactored the vscodeGoToDefinition function to support these two modes without needing to duplicate the function.
I also provided a binding for "revealReferences", and since "hover" is gh, I figured gH is a decent choice.
Finally, I'm not sure why <C-w>gF was mapped to the same thing as <C-w>gf, I know it was meant to mirror neovim but there are so many other missing keybindings that I don't think this little one is worth the space it takes.
With neovim now working inside peek, this functionality has suddenly become significantly more useful :grin:

Thank you for your PR!

since "hover" is gh,

BTW, why the default is gh? Usually this is K.

This is coming from #107 PR. Primary for a users coming from vscodevim.
There is also old issue #108 to add K and gO (can be mapped to focus outline view / goToSymbol, also create jumppoint before sending request to vscode). PRs are welcome here! 😄

I will send a PR if you agree :)
Should I change gh to K or add it?

Add second K for hover, don't remove gh

@theol0403, is gH works for you?

Yes it does. Make sure that "go to references" is something that your LSP server for your chosen language supports.

theol0403, Strange, in my case it just does the same that gH should do...

Never mind, it was configuration problem. I deleted my configuration and it work. Sorry for bothering.

The problem was in vim-xkbswitch. The following solved my issue:
let g:XkbSwitchSkipGhKeys = ['gh', 'gH']

Maybe someone will be interested.


AttributeError: partially initialized module 'jionlp' has no attribute 'recognize_location' (most likely due to a circular import)

安装好jionlp后，进入python交互环境，import jionlp报错，如下所示：
python3版本，所有依赖包完成安装
AttributeError: partially initialized module 'jionlp' has no attribute 'recognize_location' (most likely due to a circular import)

没问题了，原因是  py文件名和jionlp一样


Weird page size (for elastic?)

Opening a table with no parameters, and if loads pages 500 och 5000 records?
Is it an Elastic related issue?

Deployment: Online
DB Version: 9.2.24103.216
Connection Controls Version: 1.2024.9.59
XrmToolBox Version: 1.2024.9.69
Tool Version: 1.2024.10.1

Related to #41


Mollie module stopped working

When in the checkout Ideal or Bancontact from Mollie module is selected and hit the pay button there will be a mesages to the custumor, "Something went wrong while creating the payment. Please contact our customer service."

The status page form Mollie don't gave any issues
https://status.mollie.com
(9 and 10 march)
Environment

PrestaShop version: 8.1.2
Mollie module version: v6.0.5, tried also the 6.1.0 beta- same issue
PHP version: 8.1

Activated now at the moment the pay.nl payment module and that is working correctly.
someting wrong at Mollie?

Hi @Frankyet,
We were not able to recreate the issue in our demo environment, everything seems to be working fine.
Can you share the back office and FTP credentials with us? Please send that to your email at<EMAIL_ADDRESS>Waiting for your information!
Best regards,
Invertus Support team.

Hi @Frankyet,
Thanks for clarifying, yes, most likely the issue was with the Mollie system itself and not PrestaShop in that case. Glad to hear that it is working now!
Are those issues that you are facing can be recreated? As we haven't received any similar complaints it is difficult to identify the root cause.
We would love to keep you as our customer!
Best regards,
Invertus Support team.


[bug] Other than switch entities for heater and cooler

I get no errors but if i set a entity of kind valve for heater or cooler, it is no switched correctly.
Do you confirm this behaviour from code point of view?
Would it be possible to have the possibility to have valve entities there?

I need to check

Could you describe the exact problem you are having? Are the valves not closing or opening, or is their current stat misrepresented?

Just if a use an entity of kind valve, it is not switched at all, if a wrap it into a switch entity, then it works properly

Thanks for the clarification.

Please check v0.9.8.beta-2


copy_reference_file doesn't maintain permissions on directories

Actual result
I've written a Dockerfile that calls FROM jenkins:latest.
I have a .ssh directory containing id_rsa and id_rsa.pub files. I COPY the .ssh directory to /usr/share/jenkins/ext so that it will be installed in $JENKINS_HOME for me.
The permissions on .ssh are 700 and the permissions on the id_rsa* files are 600.
While the files retain their proper 600 permissions (thanks to cp -r in the copy_reference_file function in the jenkins-support script, the .ssh directory is improperly created with 755 permissions instead of 700 permissions.
Expected outcome
I expect the .ssh directory to be installed with the same permissions it already has (i.e., 700 and not 755).
Other relevant information
Instead of copying the existing .ssh directory, the copy_reference_file function creates a new directory with default permissions (755).
An alternative solution to modifying the copy_reference_file function would be to provide another hook that can be used to modify files (e.g., change their permissions and owners) on the mounted volume (e.g., a hook that is called prior to VOLUME /var/jenkins_home in the Dockerfile.

This was fixed


vulkan-validation-layers: add compilation flag for darwin support

Description of changes
Added a compilation flag to ignore warnings/errors about unavailable functions on older MacOS version (errors which were still thrown on a MacOSX 13.3 machine, I think due to clang just assuming an old version of MacOS).

Things done

Built on platform(s)

[x] x86_64-linux
[ ] aarch64-linux
[x] x86_64-darwin
[ ] aarch64-darwin

[ ] For non-Linux: Is sandbox = true set in nix.conf? (See Nix manual)
[ ] Tested, as applicable:

NixOS test(s) (look inside nixos/tests)
and/or package tests
or, for functions and "core" functionality, tests in lib/tests or pkgs/test
made sure NixOS tests are linked to the relevant packages

[ ] Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
[ ] Tested basic functionality of all binary files (usually in ./result/bin/)
23.11 Release Notes (or backporting 23.05 Release notes)

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module

[ ] Fits CONTRIBUTING.md.

This seems like something that the package's build system should handle. Is there an upstream issue?


OBS how to add voice of other participants for daily call recording

need suggestions on how to do it?

I created a new scene called "online meetings"; added audio output, input and display sources. I tested it and it worked. I could hear the other persons voice as well, in the recording.

Tomorrow ping me when you are free we can have discord call

No device is appearing.

Oh Somehow didnt see these comments.
I will ping you on discord


Provide running instructions for running with Java 11

As users should not be learning old Apis it would be nice to run examples on Java 11 out of the box. Current descriptions target JDK 8 which should also be stated clearly in readme. Alternatively instructions on setting Java8 for this tutorials would also be nice.

Hi @senpl ,
As for now, almost all our modules are JDK 8 based. Of course, vast majority of them, run on newer version of Java without any issues. Also, we constantly migrate more and more modules to JDK 11.
Cheers

nice to move to jdk11


Model Name Check When Saving a Model

One useful "safety" feature (hopefully not too hard too implement) would be as follows: suppose you have edited a model called "ABC" and you want to save it. Normally, you just overwrite the existing copy of model "ABC" but sometimes, either by mistake or intentionally, you may want to overwrite a different model. In order to avoid mistakes, it would be useful to have a check such that if a user tries to save model "ABC" to a model with a different name "XYZ", then a pop-up appears asking the user to confirm that he really wants to overwrite model "XYZ".

There is already a popup window with confirmation.
If user tries to overwrite existing file (diagram), it asks if he wants to overwrite it.
I can perhaps change the color of the popup window to red, in cases when user tries to save under a different name.
I will implement it and you can see if this is something you want.

Implemented here, please test
e36a11162c0f9c7c6553d7c4c8da9dd299f63d5a
I decided to go this way:

if the name is the same when saving, the save button is green
if the name is different, save button is red, and warning is displayed at the bottom

Let me know please if this is sufficient for you.
Thank you


which version of tensorflow should be?

ub16hp@UB16HP:~/ub16_prj/cnn-relation-extraction$ python3 train.py --embedding_path ../../data/GoogleNews-vectors-negative300.bin
DROPOUT_KEEP_PROB=0.5
BATCH_SIZE=20
NUM_FILTERS=128
TEXT_EMBEDDING_DIM=300
ALLOW_SOFT_PLACEMENT=True
MAX_SENTENCE_LENGTH=90
GPU_ALLOW_GROWTH=True
CHECKPOINT_DIR=
TRAIN_PATH=SemEval2010_task8_all_data/SemEval2010_task8_training/TRAIN_FILE.TXT
NUM_EPOCHS=100
POS_EMBEDDING_DIM=50
LEARNING_RATE=1.0
EMBEDDING_PATH=../../data/GoogleNews-vectors-negative300.bin
FILTER_SIZES=2,3,4,5
EVALUATE_EVERY=100
TEST_PATH=SemEval2010_task8_all_data/SemEval2010_task8_testing_keys/TEST_FILE_FULL.TXT
NUM_CHECKPOINTS=5
L2_REG_LAMBDA=1e-05
LOG_DEVICE_PLACEMENT=False
DESC=
DISPLAY_EVERY=10
DEV_SAMPLE_PERCENTAGE=0.1
DECAY_RATE=0.9
SemEval2010_task8_all_data/SemEval2010_task8_training/TRAIN_FILE.TXT
max sentence length = 89
Text Vocabulary Size: 19151
x = (8000, 90)
y = (8000, 19)
Position Vocabulary Size: 162
position_1 = (8000, 90)
position_2 = (8000, 90)
Train/Dev split: 7200/800
2018-10-31 10:52:56.457227: I tensorflow/core/platform/cpu_feature_guard.cc:137] Your CPU supports instructions that this TensorFlow binary was not compiled to use: SSE4.1 SSE4.2 AVX AVX2 FMA
2018-10-31 10:52:56.534546: I tensorflow/stream_executor/cuda/cuda_gpu_executor.cc:892] successful NUMA node read from SysFS had negative value (-1), but there must be at least one NUMA node, so returning NUMA node zero
2018-10-31 10:52:56.534922: I tensorflow/core/common_runtime/gpu/gpu_device.cc:1030] Found device 0 with properties:
name: GeForce GTX 950M major: 5 minor: 0 memoryClockRate(GHz): 1.124
pciBusID: 0000:01:00.0
totalMemory: 3.95GiB freeMemory: 3.54GiB
2018-10-31 10:52:56.534949: I tensorflow/core/common_runtime/gpu/gpu_device.cc:1120] Creating TensorFlow device (/device:GPU:0) -> (device: 0, name: GeForce GTX 950M, pci bus id: 0000:01:00.0, compute capability: 5.0)
Traceback (most recent call last):
File "train.py", line 185, in
tf.app.run()
File "/usr/local/lib/python3.5/dist-packages/tensorflow/python/platform/app.py", line 48, in run
_sys.exit(main(_sys.argv[:1] + flags_passthrough))
File "train.py", line 181, in main
train()
File "train.py", line 82, in train
l2_reg_lambda=FLAGS.l2_reg_lambda)
File "/home/ub16hp/ub16_prj/cnn-relation-extraction/text_cnn.py", line 64, in init
losses = tf.nn.softmax_cross_entropy_with_logits_v2(logits=self.logits, labels=self.input_y)
AttributeError: module 'tensorflow.python.ops.nn' has no attribute 'softmax_cross_entropy_with_logits_v2'
ub16hp@UB16HP:~/ub16_prj/cnn-relation-extraction$

@loveJasmine
It's very simple problem... I hope you have tried Google for the function, 'softmax_cross_entropy_with_logits_v2', mentioned in that error.
Check it, https://stackoverflow.com/questions/49100865/why-softmax-cross-entropy-with-logits-v2-backprops-into-labels.
ps. My version of tensorflow is 1.8.


Login: implement missing identity provider for register

As a developer I want to be able to register a user with all available IDP options, and I want to be able to send the idp scope to pre select an idp
Acceptance Criteria

[x] If the idp scope "urn:zitadel:iam:org:idp:id:{idp_id}" is sent, the idp is pre selected and the iser will directly be redirected
[x] Azure AD
[ ] Generic OIDC
[ ] Generic OAuth
[x] Github ES
[ ] Apple
[x] Gitlab
[x] Gitlab ES

when implementing the mappings I discovered that the rawInformation of the google provider is wrapped withing a User object. Is that supposed to be? @stebenz


Automate website PR deployments & previews

✋ Blocked by

#77

Production website deployment

[ ] Trigger on merge to main
[ ] Deploy to CloudFlare pages
[ ] Deploy to serversideup.net/open-source/webext-bridge

Automated PR previews

[ ] Deploy to pages.dev
[ ] Only build a preview when something changes in /docs

Update
This was having strange issues within CloudFlare.
Problem

nuxt generate was creating a dist/index.html file locally, but not on CloudFlare pages

Attempted resolutions

[x] Tried deleting and recreating the CloudFlare Pages project
[x] Compared nuxt.config.ts to our other projects
[x] Attempted to upgrade yarn version

Workaround

For now were just building it manually and uploading it on the cloudflare site


Should username claim be case insensitive?

Great work with this project guys! So useful :)
I noticed the username-based claim failed a couple of times for us due to case-sensitivity reasons. Should this check be done case-insensitively?

Thanks for your feedback, @vineetnair .
Are you saying that the same username sometimes appears in e.g. lower case and sometimes in upper case in your tokens?

No, the username claim via the token just retains the casing in which it was setup in AAD. But the configuration in DFM to only allow certain users seems to have a case-sensitive checking.
So, if the claim is<EMAIL_ADDRESS>and the allowed username is<EMAIL_ADDRESS>it doesn't allow access and throws a 401.

That's fair, thanks


How to implement compilation for two schemas with common types?

Hello!
I have 2 schemas, for example 1.xsd and 2.xsd which import types from common.xsd.
After compilation i'd like to see following package structure:

com.example.common stores generated shared classes

com.example.1  stores generated classes from 1.xsd which refer to classes from common

com.example.2 stores generated classes from 2.xsd which refer to classes from common

My build.gradle
xjcGeneration {
   schemas {
        common {
              schemaRootDir = 'src/main/resources'
              schemaFile = 'schema/common.xsd'
              javaPackageName = 'com.example.common'
        }
        first {
              schemaRootDir = 'src/main/resources'
              schemaFile = 'schema/1.xsd'
              javaPackageName = 'com.example.1'
        }
        second {
              schemaRootDir = 'src/main/resources'
              schemaFile = 'schema/2.xsd'
              javaPackageName = 'com.example.2'
        }
   }
}

I also tried to add -episode  to additionalXjcCommandLineArgs but it didn't work.
Please help how it might look using the plugin? Thanks for replies.

I don't think your approach above would work IMO. I've actually never dealt with episodes before. I think there is something you need to do in your binding file.
A few things I found by Googling

https://stackoverflow.com/questions/8013963/create-a-common-xsd-generated-class-to-be-used-by-other-packages
https://stackoverflow.com/questions/9756185/what-is-an-episode-file
http://blog.bdoughan.com/2011/12/reusing-generated-jaxb-classes.html

Would something like this work?
xjcGeneration {
   schemas {
        common {
              schemaRootDir = 'src/main/resources'
              schemaFile = 'schema/common.xsd'
              javaPackageName = 'com.example.common'
              additionalXjcOptions = ['-episode':'common.episode']
        }
        first {
              schemaRootDir = 'src/main/resources'
              schemaFile = 'schema/1.xsd'
              javaPackageName = 'com.example.1'
              bindingFile = "$buildDir/generated-sources/main/xjc/com/example/common/common.episode"
        }
        second {
              schemaRootDir = 'src/main/resources'
              schemaFile = 'schema/2.xsd'
              javaPackageName = 'com.example.2'
              bindingFile = "$buildDir/generated-sources/main/xjc/com/example/common/common.episode"
        }
   }
}

I threw this together without actually trying it out so my paths in the bindingFile may be off a bit. If you just run the common schema with the -episode option, you should be able to look inside $buildDir/generated-sources/main/xjc and find the common.episode file.

I don't think your approach above would work IMO. I've actually never dealt with episodes before. I think there is something you need to do in your binding file.
A few things I found by Googling

https://stackoverflow.com/questions/8013963/create-a-common-xsd-generated-class-to-be-used-by-other-packages
https://stackoverflow.com/questions/9756185/what-is-an-episode-file
http://blog.bdoughan.com/2011/12/reusing-generated-jaxb-classes.html

Would something like this work?
xjcGeneration {
   schemas {
        common {
              schemaRootDir = 'src/main/resources'
              schemaFile = 'schema/common.xsd'
              javaPackageName = 'com.example.common'
              additionalXjcOptions = ['-episode':'common.episode']
        }
        first {
              schemaRootDir = 'src/main/resources'
              schemaFile = 'schema/1.xsd'
              javaPackageName = 'com.example.1'
              bindingFile = "$buildDir/generated-sources/main/xjc/com/example/common/common.episode"
        }
        second {
              schemaRootDir = 'src/main/resources'
              schemaFile = 'schema/2.xsd'
              javaPackageName = 'com.example.2'
              bindingFile = "$buildDir/generated-sources/main/xjc/com/example/common/common.episode"
        }
   }
}

I threw this together without actually trying it out so my paths in the bindingFile may be off a bit. If you just run the common schema with the -episode option, you should be able to look inside $buildDir/generated-sources/main/xjc and find the common.episode file.

Closing this due to inactivity. Please feel free to reopen if needed.


cant know what data is deleted

void (*CBLDocumentReplicationListener)(void *context,
                                               CBLReplicator *replicator,
                                               bool isPush,
                                               unsigned numDocuments,
                                               const CBLReplicatedDocument* documents);

when delete document on server, the DocumentReplicationListener only return id of this doc, and i can't get data of this doc by that id
how can i know what data is deleted on server ?

Issues are for bug reports.  Maybe this is one and you worded it as a question, but please post questions on the forums


Add query stream sample

Hi @asotoglez,
Thanks for your submission. Can you provide some more details on the sample you're looking for, perhaps the particular use case you're trying to solve? Thanks in advance.

Linked PR #694 was merged, I think, so closing this.


ENYO-2638: Synchronously fire onEnd event.

Issue
We had previously made a tweak to enyo/Animator based on initial performance optimization investigations via this PR: https://github.com/enyojs/enyo/pull/709. There is a side effect of this change, where calls to play triggered by a repeated keypress can result in unexpected (partial) values when retrieving the current value from the animator. This is due to the fact that a repeated keypress results in an initial onEnd event firing, but because this is async, subsequent repeated animations have already begun, and the retrieved value associated with the onEnd do not correlate with the ending value that initially triggered the onEnd. I noticed that, for a repeated keypress, the initial play results in an onEnd firing, while the repeated keypress commences; this causes the consumer of the event to set the wrong current value, and affects the value used for calls to play from this point forward. So, the root cause is actually the disjointed series of events fired from a repeated key press, but this seems to be a very specific case tied to the keypress triggering the playing of the animation.
Fix
Because we now have MoonAnimator for Panels, we no longer need to async the firing of the onEnd event in enyo/Animator. I realize that this does not quite resolve the disjointed event firing issue mentioned above, but I see no harm in making this change, as a first step. Ideally, we would either fire an onEnd event for each call to play, or we would only fire a single onEnd event for a series of calls to play. The former would require some non-trivial modifications to enyo/Animator (not to mention, many events being fired, so unclear if this is actually ideal or makes the most sense), while the latter (which seems to be more reasonable), when using a job, requires the specification of a specific time delay amount (to account for the hold repeat firing) that seemed fairly brittle.
Note that we are still using this async technique in the next method of MoonAnimator, so it might be worth exploring whether or not there are still performance concerns related to the original issue, possibly as part of a separate ticket. So, maybe consider this PR more of a conversation starter as there are some outstanding issues to be discussed, which I'll detail below.
Discussion points

enyo/Animator's disjointed event firing when tied to repeated keypresses.
The original quirk where onEnd was fired while the animation was still being played, causing performance issues, especially on panels.

Do we need to worry about this quirk for other use cases, or can we assume that this would only provide a substantial/significant performance gain for panels?

Enyo-DCO-1.1-Signed-off-by: Aaron Tam<EMAIL_ADDRESS>

Closing in favor of a narrower solution in moonsone: enyojs/moonstone#2591. We'll likely need to revisit this in a broader review of enyo/Animator as @aarontam suggested.


Add guild#createRole resolve permissions and RoleData optional

Currently the permission property of RoleData is just passed as is to discord api.
That will resolve them beforehand.

RoleData should be optional as described in the docs 👍


vapoursynth: fix darwin build

For the plugin interface, as there is no equivalent to patchelf --add-needed on Darwin, this PR takes the easier way back to rebuilding vapoursynth with --with-plugindir=${pluginsEnv}/lib/vapoursynth instead.
Tested vapoursynth.withPlugins [ ffms vapoursynth-mvtools ]; on aarch64-darwin following the instructions in https://gist.github.com/phiresky/4bfcfbbd05b3c2ed8645, with #359262 and the following changes applied:

In motioninterpolation.vpy, replace vapoursynth.get_core() with vapoursynth.core;
In the command, replace --y4m with -c y4m.

Things done

Built on platform(s)

[ ] x86_64-linux
[ ] aarch64-linux
[ ] x86_64-darwin
[x] aarch64-darwin

For non-Linux: Is sandboxing enabled in nix.conf? (See Nix manual)

[ ] sandbox = relaxed
[ ] sandbox = true

[ ] Tested, as applicable:

NixOS test(s) (look inside nixos/tests)
and/or package tests
or, for functions and "core" functionality, tests in lib/tests or pkgs/test
made sure NixOS tests are linked to the relevant packages

[ ] Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
[x] Tested basic functionality of all binary files (usually in ./result/bin/)
25.05 Release Notes (or backporting 24.11 and 25.05 Release notes)

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module

[x] Fits CONTRIBUTING.md.

Add a :+1: reaction to pull requests you find important.

nixpkgs-review result
Generated using nixpkgs-review.
Command: nixpkgs-review pr 359263

aarch64-darwin

:x: 3 packages failed to build:

vapoursynth-editor
vapoursynth-nnedi3
vapoursynth-znedi3

:white_check_mark: 8 packages built:

av1an
av1an-unwrapped
python311Packages.vapoursynth
python311Packages.vapoursynth.dist
python312Packages.vapoursynth
python312Packages.vapoursynth.dist
vapoursynth
vapoursynth-mvtools

#359027

nixpkgs-review result
Generated using nixpkgs-review.
Command: nixpkgs-review pr 359263

x86_64-darwin

:x: 2 packages failed to build:

av1an
av1an-unwrapped

:white_check_mark: 13 packages built:

python311Packages.vapoursynth
python311Packages.vapoursynth.dist
python312Packages.vapoursynth
python312Packages.vapoursynth.dist
vapoursynth
vapoursynth-bestsource
vapoursynth-bestsource.dev
vapoursynth-editor
vapoursynth-eedi3
vapoursynth-mvtools
vapoursynth-nnedi3
vapoursynth-nnedi3cl
vapoursynth-znedi3


Redirect app.foundries.io/docs -> docs.foundries.io

Upon noting #93, I noticed that app.foundries.io/docs resolves and does not redirect to docs.foundries.io. @MiloCasagrande has noted that we should redirect to docs.foundries.io in the future. I am noting down this issue as not to forget and to fill out more details that are important, since this may be a reference for future issues that may occur due to the change. (hopefully not)

Should be redirected to docs.foundries.io now.
In case I missed something somewhere, let me know


Can you add documentation on how to continue resolving requests that contain a next_page_token?

Yeah when I have free time this week.

Thanks. I was able to infer it from Alpaca docs, but still could be useful for others.

I added pagination examples to the 3 historical methods, thank you for the PR and happy trading! :)


Sqlalchemy example not working

I just tried to create an index via Sqlalchemy, following the instructions in the readme:
idx = sql.Index(
'...', ,
postgresql_using='hnsw',
postgresql_with={'m': 16, 'ef_construction': 64},
postgresql_ops={'embedding': 'vector_cosine_ops'}
)
idx.create(bind=...)
which ends up running (notice that the vector_cosine_ops didn't make it into the statement):
'CREATE INDEX idx_617bbefd304a4d1abbef9cfb75012fb9_0 ON tbl_617bbefd304a4d1abbef9cfb75012fb9 USING hnsw (idx_0_col) WITH (m = 16, ef_construction = 64)'
and I'm getting the following error:
sqlalchemy.exc.ProgrammingError: (psycopg2.errors.UndefinedObject) data type vector has no default operator class for access method "hnsw"
This is on pgvector 0.2.5

Hi @mkornacker, I'm not sure how to reproduce. The test works fine.

@mkornacker I faced the same issue, I changed "{'embedding': 'vector_cosine_ops'}" to the actual name of my vector field and it worked


[Release] sdk/resourcemanager/largeinstance/armlargeinstance/0.1.0

https://github.com/Azure/sdk-release-request/issues/4932

/azp run prepare-pipelines

/azp run go - armlargeinstance - ci

/check-enforcer override


Request: Mode Grüneisen parameter BandStructure getters

Hi,
I would like to access to the band structure raw data in the Gruineisen BandStructure class:
https://github.com/atztogo/phonopy/blob/c5cd2ad57ae834c3afcf585e6374d95d21d39b7e/phonopy/gruneisen/band_structure.py#L38
which now are stored in self._path.
I think a simple collection of getters like in phonon BandStructure class would be enough:
https://github.com/atztogo/phonopy/blob/c5cd2ad57ae834c3afcf585e6374d95d21d39b7e/phonopy/phonon/band_structure.py#L57
thanks

You may think it's trivial work, but it's probably not. So I have to find some amount of time to tackle.

I made a trial implementation of it in develop branch. The usage may be seen in example/Si-gruneisen/Si-gruneisen.py. If it's OK, I will make it released.

This is exactly what I wanted. Ok for me.
Thanks


New release

Codecov Report

Merging #30 (d23e4a0) into master (9240fca) will increase coverage by 3.28%.
The diff coverage is 93.93%.

@@            Coverage Diff             @@
##           master      #30      +/-   ##
==========================================
+ Coverage   85.65%   88.94%   +3.28%
==========================================
  Files          18       18
  Lines         997     1013      +16
  Branches      204      204
==========================================
+ Hits          854      901      +47
+ Misses         99       67      -32
- Partials       44       45       +1

Impacted Files
Coverage Δ

deirokay/fs.py
89.18% <90.90%> (+22.76%)
:arrow_up:

deirokay/history_template.py
92.00% <100.00%> (-0.16%)
:arrow_down:

deirokay/validator.py
88.00% <100.00%> (+1.82%)
:arrow_up:

Continue to review full report at Codecov.

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


[BugFix] Update thirdparty libraries to replace old incomplete starcache libraries.

Why I'm doing:
The old starcache library in thirdparty is incomplete and may cause some error when building BE without --use-staros option.
What I'm doing:
Update thirdparty libraries to replace old incomplete starcache libraries.
What type of PR is this:

[ ] BugFix
[ ] Feature
[ ] Enhancement
[ ] Refactor
[ ] UT
[ ] Doc
[ ] Tool

Does this PR entail a change in behavior?

[ ] Yes, this PR will result in a change in behavior.
[x] No, this PR will not result in a change in behavior.

If yes, please specify the type of change:

[ ] Interface/UI changes: syntax, type conversion, expression evaluation, display information
[ ] Parameter changes: default values, similar parameters but with different default values
[ ] Policy changes: use new policy to replace old one, functionality automatically enabled
[ ] Feature removed
[ ] Miscellaneous: upgrade & downgrade compatibility, etc.

Checklist:

[ ] I have added test cases for my bug fix or my new feature
[ ] This pr needs user documentation (for new or modified features or behaviors)

[ ] I have added documentation for my new feature or new function

[ ] This is a backport pr

Bugfix cherry-pick branch check:

[x] I have checked the version labels which the pr will be auto-backported to the target branch

[ ] 3.3
[ ] 3.2
[ ] 3.1
[ ] 3.0
[ ] 2.5

@mergifyio rebase


v2.2.4 spams to log with NSLog on iOs

After update to the latest version I see huge amount of annoying logs produced by following line:
https://github.com/rollbar/rollbar-apple/blob/9789a2d161f8d608bd19bdf7db4119bdf7cb2bfa/RollbarNotifier/Sources/RollbarNotifier/RollbarLogger.m#L1034
Is it intended?

Also it would be great if there will be some way to disable RollbarSdkLog output ...

@RSATom , the noisiest SDK output can be suppressed by this configuration flag:
On a RollbarConfig instance used to configure the SDK, set .developerOptions.suppressSdkInfoLogging = YES;
but I did miss the output you mentioned. It will be fixed in the upcoming v2.3.0 release.
Thanks for reporting the issue.

I'm still seeing a ton of logs in the console that seem unnecessary. I'm using the suppressSdkInfoLogging option.
[Rollbar] Column: created_at
[Rollbar] Data:<PHONE_NUMBER>
[Rollbar] Column: destination_key
[Rollbar] Data: 1
[Rollbar] Columns: 3


Implementing dev mode

Closes

What changed?

Why was this change made?

How was this change implemented?

How did you validate the change?

Release notes

Documentation Changes

Minor think but could we have this log a warning at start up to make it clear that you shouldn't be running this in dev mode? Something like WARNING: dev mode enabled. This should be used for local work only.


Bug: Rabbitmq integration with FastApi solve_dependencies

Describe the bug
  File "/Users/vnazarov/PycharmProjects/ipbex-entity/venv/lib/python3.9/site-packages/faststream/broker/fastapi/route.py", line 291, in app
    solved_result = await solve_dependencies(
TypeError: solve_dependencies() missing 1 required keyword-only argument: 'async_exit_stack'

How to reproduce
from fastapi import FastAPI
from faststream import FastStream, Logger
from faststream.rabbit import RabbitExchange, RabbitQueue
from faststream.rabbit.fastapi import RabbitRouter
from pydantic import BaseModel
import uvicorn

class BrokerMessage(BaseModel):
   pass

broker = RabbitRouter()

exch = RabbitExchange('exchange', auto_delete=True)

queue_1 = RabbitQueue('test-q-1', auto_delete=True)

@broker.subscriber(queue_1, exch)  # another service
async def base_handler2(message: BrokerMessage):
    print(message)
    return 'self'

app = FastAPI(title='test',
              lifespan=broker.lifespan_context,
              docs_url=None,  # Disable docs (Swagger UI)
              redoc_url=None,  # Disable redoc
              )
app.include_router(broker)

if __name__ == '__main__':
    uvicorn.run(app, port=8001)

And/Or steps to reproduce the behavior:

Subscribe, after publish

Expected behavior
...
        async with AsyncExitStack() as stack:
            request.scope["fastapi_astack"] = stack

            solved_result = await solve_dependencies(
                request=request,
                body=request._body,
                dependant=dependant,
                dependency_overrides_provider=dependency_overrides_provider,
                async_exit_stack=stack
            )
...

Observed behavior
...
        async with AsyncExitStack() as stack:
            request.scope["fastapi_astack"] = stack

            solved_result = await solve_dependencies(
                request=request,
                body=request._body,
                dependant=dependant,
                dependency_overrides_provider=dependency_overrides_provider,
            )
...

Screenshots
If applicable, attach screenshots to help illustrate the problem.
Environment
Running FastStream 0.3.10 with CPython 3.9.6 on Darwin
Additional context
Provide any other relevant context or information about the problem here.

The problem is breaking change in FastAPI version 0.106.0 (https://fastapi.tiangolo.com/release-notes/#01060). We’ll fix it, but in the meantime you can limit the FastAPI version installed to 0.105.0 or lower.


Serializable Lambda expression

Rust basically is very strong for parallel programming. If Rust supports Serializable Lambda expression, it would be very strong even for distributed programming.
Here was a little discussion.
https://github.com/rust-lang/rust/issues/23759
Python and Java 8 already have similar concepts as follows:

https://docs.python.org/3/library/pickle.html
https://docs.oracle.com/javase/8/docs/api/java/lang/invoke/SerializedLambda.html

See also #668.

One could do add some compiler magic to support arbitrary object serialization in Rust, with the caveat that such an object can only be deserialized by the same program.  This would be like Any with persistence.  The Haskell recently added support for these kinds of “static pointers”.
But the downside of this is that the user has no control over the serialization protocol, and it would require making a serializer that works over arbitrarily complicated types, even though much of it could be done outside of the standard library.
A more flexible approach would be to expose two new mechanisms to Rust:

The ability to have an extensible lookup table for a selection of types, a “global type registry” if you will.  This I think is the main missing ingredient for #668.

The ability to construct and deconstruct closures into (a) a function and (b) its environment.  The function part would be similar to how fn types work today: every function is a unique unnamed type, but holds no data (therefore it could have a trivial Default implementation).  The environment would hold data that may be nontrivial to construct, but it would be expected to be serializable.
pub trait Closure<Args>: FnOnce<Args> {
    type Env;
    type Func: Default + Fn(Env, Args) -> Self::Output;
    fn construct(env: Self::Env, f: Self::Func) -> Self;
    fn deconstruct(self) -> (Self::Env, Self::Func);
}

Any updates on it? With write spark like system in rust, Serializable Lambda expression is needed.

(python's pickle does not serialize functions to a wire format; it only serializes the name of a function.)

@habnabit but you can implement it easier,see https://github.com/douban/dpark/blob/master/dpark/serialize.py#L52

I created a crate serde_closure that makes closures serializable by wrapping them with the macro Fn!(...).
If the resulting serializable closure is upcast to Box<dyn serde_traitobject::Fn()> it can then be serialized and sent between identical distributed processes using serde_traitobject, though this currently requires nightly.

Interesting. I had tried a similar idea a while back but deemed it too questionable for production use.

@Rufflewind Yes, thanks for your crate, it was good inspiration for serde_traitobject.
I just made a rust PR that would make serde_traitobject safe: https://github.com/rust-lang/rust/pull/66113. Keen to hear if you have any thoughts!


RuntimeError: Sizes of tensors must match except in dimension 2. Got 53 and 52

Hello!
I am trying to run the model on my own images which have a dimension of 428x760. It seems that when images are not of the original sample image size (480x640) there is an issue with tensor sizes. I have a feeling this might be an issue with upsampling or encoding/decoding in the network. Any suggestions how I can work around this or correct in the code?
Thanks!

Hi @maisylam99, I would suggest re-sizing your image to something that is a power of 2, that way the downsampling/upsampling agrees.


V4 : change unique cell's type

Hello,
here is my editor i'm working on : https://softinst130972.host.vifib.net/erp5/web_site_module/officejs_jexcel_editor/app/
please choose "Local is enough" and add a new sheet.
In the toolbar I have many buttons that change the type of an entire column, by changing instance.options.columns[index].type
Is it possible to change the type of a unique cell, for example in one column have an image, a checkbox and a calendar ?
(By the way, when i change the column type to "color", open the color picker editor and choose a color, the hexadecimal code of the color is displayed in the cell instead of the div with the choosen background-color expected, idk why)

The type property works on the column level only. For the color picker there is an option "render:'square'" to render in div.
If you wish to render different types, you should implement a customEditor that renders the editor based on your x, y.
Second example on this page:
https://bossanova.uk/jexcel/v4/examples/column-types


Support wasm tests on apple silicon

https://github.com/WonderInventions/node-webrtc is further ahead than https://github.com/node-webrtc/node-webrtc, see https://github.com/node-webrtc/node-webrtc/commit/cb7b4881c14e74886ddf1f2bbf9099bf8196edf8

That's great, thank you @edaniels


Astyanax 2.0.2 with Cassandra 1.2.x

Is the Astyanax 2.0.2 is compatible with Cassandra 1.2, are there any concerns. etc.

At Netflix we use Astyanax 2.0.x with C* 1.2.x The numbering schemes are not related. Go ahead and use that combination with confidence.


Sqitch revert is not consistent with git revert

When using git revert, only the target commit is reverted. When using sqitch revert, all changes after the target change are reverted, excluding the target change.
I found that the actual behavior of sqitch is made more explicit by using the flag --to all the time, although it has no added effect:
sqitch revert --to `target/change`

and that the operator ^1 can be used to get closer to what I expect:
sqitch revert `target/change^1`

but still, all changes deployed after the target change are reverted as well, whether or not dependencies have been declared explicitly on this change.

Sqitch's revert command is more like Git's reset command than revert. There is no way in Sqitch to remove a change, short of:

Reverting to the change just before that change --to change^
Removing that change from the plan (requires editing the plan file and deleting the relevant line).
Deploying again

Happy to answer questions and explain things, though the mail list might be a better forum for that.

It is more a comment than a question, so I am fine with your closing the issue.
I have been using sqitch for a few months now and I wanted to report this fact which made my learning curve a bit steeper than it might be.
Short of changing the default behavior of sqitch revert to roll the plan back --to the change just before the one given, which would break the tool for existing users, I merely thought that adding a new option --before change as an alias for --to change^1 might bring the difference into light, if only for people who read the documentation.

Or maybe a comment in the docs that says, "If you're a git user thinking this is like git revert, it's not, it's more like reset?

I am not actually sure that git reset is the right analogy. It is typically used to unstage changes that have not been committed yet (the usage suggested by git status: use "git reset HEAD <file>..." to unstage), while sqitch revert applies revert scripts to cancel changes that have already been committed to the database, very much like git revert.
So sqitch revert is actually quite like git revert with two major differences:

it reverts every single change back to the target
it does not revert the target itself, but stops on the target

I would rather say that git reset is similar to sqitch revert --log-only, but that's not going to help newcomers much :)

The best analogy I found is:

If you're a git user thinking this is like git revert, sorry it's not. sqitch revert is more like time travel. It takes your database back to the state it had just after applying the target change.  Starting from the last change currently deployed, sqitch revert runs each revert script in turn until the target change is reached and becomes the last change deployed.

Thanks for that!


Table of using the category and sub category

Update the Subadmin Features:

CategoryController
Category extends Model
resources/views/admin/categories/categories.blade.php

Worng submission in haed file , it not need

Update the edit and Function and control to change sub admin access


overall coverage and quality of 2.12 build leaves much to be desired

around the time of 2.12.0-M2, we threw together a 2.12 build by-any-means-necessary. it's pretty janky. I've opened tickets on many of the most significant issues (frozen sbt, forked Play, frozen scala-js, commented-out ENSIME, and so on and so on), but there plenty more forked and frozen projects and projects where we aren't running the tests.
I believe we've already overspent our notional budget for 2015 for doing big, intensive rounds of upgrades here, but it would be good to keep chipping away at this.

now that RC1 is imminent it's probably time to put some concerted effort into this

great strides on this made in #324 (as well as other, smaller recent PRs)
some things I'd like to at least take a stab at before closing this ticket:

ScalaCheck upgrade (we're still on 1.11.x)
uncomment spray

there's always lots of things that could be improved, but those seem like the big two

the ScalaCheck upgrade is #13, so I think we can close this one now.


web service

how can i say to machine that if the user dial 1 run a web service is this possible ?

look at the fast agi interface.


Handle packages not in Stackage better

Right now, a package not in Stackage will not be able to find newer version in Hackage, because we rely on the https://www.stackage.org/x/package/y page returning us the "Latest in Hackage" data.
If a package is not present, that's a 404. We could then go ahead and check https://hackage.haskell.org/package/y.
What's worse, is that we cache the Stackage response (the 404). This can cause confusing behavior either way with packages showing up and going away between different cached states. We should not cache the 404 case.

Closed by #7.


"Bogdana" is listed in the drop-down menu

Description:
"Bogdana" is listed in the drop-down menu alongside its corresponding county and commune, according to the law
Precondition:
The website is up an running.

Step 1
Type "Bogdana" in the search bar.

Expected results
The location is listed in the drop-down menu as "Sat Bogdana, CĂLĂRAȘI (Dragoș Vodă)".


CvBlobs Outline calculated incorrection

This is separate but related to issue 151.
When calling CvBlobs.RenderBlobs() I have noticed that every rectangle bounding box is one pixel short on the width and height.
I wrote my own render routine and corrected it like this.
Rect realBlobRect = new Rect(blob.Rect.X, blob.Rect.Y, blob.Rect.Width+1, blob.Rect.Height+1);

One pixel offset is hard to see unless you zoom in.  If you do you'll notice that the bounding boxes are offset.
Before Image

After Image

Corrected Image

Thank you for your report :+1:
https://github.com/shimat/opencvsharp/blob/master/src/OpenCvSharp.Blob/BlobRenderer.cs#L81
fixed in the next release :bow:

I'm not sure why but even with the change you made it still seems to be off by one pixel to the right and one pixel to the bottom.
If you download and look at these images zoomed in, you'll see that the top image is ran without any modification to the CvBlobs[x].Value.Rect and is one pixel off but the bottom image is padded by 1 pixel on the width and height and looks correct.
The input image is the same one above.

To add a bit more clarity to this issue, when I call cvBlobs.RenderBlobs() the rectangles are correct but when I use the CvBlobs member Rect variable the rectangles are still off by 1 pixel.  So maybe the Rect variable is still being calculated wrong.

I fixed this by changing the Rect property from this:
public Rect Rect
{
    get { return new Rect(MinX, MinY, MaxX - MinX, MaxY - MinY); }
    set
    {
        MinX = value.Left;
        MinY = value.Top;
        MaxX = value.Right;
        MaxY = value.Bottom;
    }
}

To this:
public Rect Rect
{
    get { return new Rect(MinX, MinY, MaxX - MinX + 1, MaxY - MinY + 1); }
    set
    {
        MinX = value.Left;
        MinY = value.Top;
        MaxX = value.Right;
        MaxY = value.Bottom;
    }
}

This change also matches the FromLTRB Rect Method - Note the additional +1 to the Width and Height.
public static Rect FromLTRB(int left, int top, int right, int bottom)
{
    Rect r = new Rect
    {
        X = left,
        Y = top,
        Width = right - left + 1,
        Height = bottom - top + 1
    };

    if (r.Width < 0)
        throw new ArgumentException("right > left");
    if (r.Height < 0)
        throw new ArgumentException("bottom > top");
    return r;
}

I am sorry for the late reply. I employ your solution. Thanks! :+1:


Alternatives to NativeMessaging

The way NativeMessaging works doesn't seem to work well with all these sandboxing and packaging efforts that are happening. In at least the macOS sandbox, and with flatpack/snap packages the application (i.e. translateLocally) doesn't have complete access to the filesystem. So it can't register itself with browsers. Similiarly, browsers could be shipped through those methods, and then don't have access to running translateLocally.
Issues for reference:

https://github.com/flatpak/xdg-desktop-portal/issues/655
https://developer.apple.com/forums/thread/92554

So… I'm looking for alternatives:

https://textslashplain.com/2019/08/28/browser-architecture-web-to-app-communication-overview/
https://wicg.github.io/private-network-access/
Running a WebRTC locally that's only visible from localhost?
… all of the above need some daemon running in the background that's started separately

@kpu as far as I recall the original implementation was indeed webrtc server listening on localhost and we went native messaging to avoid it XD...

WebRTC the video / voice call standard?
We used to have a REST server but it was janky, particularly with regard to security.  https://www.zdnet.com/article/zoom-defends-use-of-local-web-server-on-macs-after-security-report/

Yep, but WebRTC can also just use the data channel. The useful part is the peer-to-peer bit because I think you can use it to set up a connection to something running on localhost without having to issue a certificate for localhost https (because that's a bad idea)
Chrome published a bit more info about how they're treating/tightening local access, but what I'm getting from it is that if you implement a server to correctly respond to preflight requests, <IP_ADDRESS> will still work? I can't really find info. Normally fetching something from http from a https orgin is not allowed because it is potentially unsafe. But I think <IP_ADDRESS> is always seen as secure because there is no middle to mitm.
Ugh… I can't find any documentation on it. But a simple test, running nc -l 8000, going to https://translatelocally.com and typing fetch('http://<IP_ADDRESS>:8000/', {mode: 'cors'}) in the web inspector console does show Chrome at least making an attempt at doing preflight checks so I'm hopeful the whole webRTC dance isn't necessary and we could just run a simple HTTP server on localhost.

I suppose this is all exactly how bergamot was initially doing things, hahaha


RangeError: Maximum call stack size exceeded when using persistedExchange in front of ssrExchange

Describe the bug
We have following setup of exchanges
persistedExchange(),
ssrExchange,
fetchExchange,

Which leads to
file:/node_modules/wonka/dist/wonka.mjs:246
    i(start((e => {
             ^

RangeError: Maximum call stack size exceeded
    at file:///node_modules/wonka/dist/wonka.mjs:246:14
    at file:///node_modules/wonka/dist/wonka.mjs:442:9
    at Array.<anonymous> (file://node_modules/wonka/dist/wonka.mjs:179:9)
    at file://node_modules/wonka/dist/wonka.mjs:426:17
    at Array.<anonymous> (file://node_modules/wonka/dist/wonka.mjs:235:15)
    at file://node_modules/wonka/dist/wonka.mjs:426:17
    at next (file:///node_modules/wonka/dist/wonka.mjs:974:11)
    at Object.next (file://node_modules/wonka/dist/wonka.mjs:1004:9)
    at file:///node_modules/@urql/exchange-persisted/dist/urql-exchange-persisted.mjs:90:13
    at Array.<anonymous> (file:///node_modules/wonka/dist/wonka.mjs:192:14)

if non-persisted query is executed.
if I exchange ssr in front of persisted Query like that
ssrExchange,
persistedExchange(),
fetchExchange,

it works - but it also re-executes queries after hydration on client-side.
Reproduction
https://github.com/Warxcell/urql-ssr-persisted-exchange-demo
Urql version
"<EMAIL_ADDRESS>"<EMAIL_ADDRESS>version "4.2.0"
"<EMAIL_ADDRESS>version "1.1.2"
"<EMAIL_ADDRESS>version "4.1.0"
Validations

[X] I can confirm that this is a bug report, and not a feature request, RFC, question, or discussion, for which GitHub Discussions should be used
[X] Read the docs.
[X] Follow our Code of Conduct

That feels correct, the fetchExchange is an async exchange while the ssr is meant to be synchronous so the order is [...synchronous, ...async]. In the current order there would also never be an ssr-result saved to the ssrExchange.

The reproduction here doesn't reproduce the issue.
However, to explain what's going on. For this to become a problem a couple of things need to be the case. Mainly, the exchange(s) after the persistedExchange must be:

replying synchronously; and
must always respond with PersistedQueryNotFound
If both of these are true then you'll get a RangeError as the persistedExchange will never terminate. We can add a protection for that, but just pointing out that this is likely usage error.

Unrelatedly, some notes on the reproduction, which seems to behave fine in its current state:

there's no cache, so I can't guarantee much in terms of client-side non-duplicate requests. Please note that the ssrExchange IS NOT a cache. While uncached usage of urql should work there are some caveats, so I'd consider this an advanced use-case.
the example hydrates the string 'urql' into initial state, so do take care that this doesn't actually get misused or misparsed.
it doesn't actually hook into Nuxt's lifecycles, uses the SSR state, or uses await useQuery as far as I can tell. We have some threads on setup for this in issues/discussions, I believe, but overall, I'm not well versed in Nuxt so I can't check against that. So, just a note that this looks off

Overall, while it shouldn't matter whether you place persistedExchange in front of or after ssrExchange, since they're both synchronous. The reversal doesn't matter and neither will lead to duplicate requests per se.
I suspect what you might have seen is an Automatic Persisted Query miss, hence the request repeating? As long as the operation.key matches, the ssrExchange will be used.
However, the ssrExchange will only make its results available to the Client once on the client-side, since it's not a cache but just a "replay exchange" for prior results from the server-side. So, if for any reason you repeat the query (e.g. client navigation / updates, or ssrExchange hydrating a PersistedQueryNotFound error) then the ssrExchange will not respond for the given operation.key either way.
I hope that clarifies this, but for now I'll mark this issue as “needs more info” ✌
However, I don't currently see anything that looks off, except for potentially no specific error message being available for when the persistedExchange might receive PersistedQueryNotFound continuously 🤔

See edit; I missed what's going on on the server-side, and that explains the error there, while the rest can be explained by missing setup code, as long as the reproduction is basically what's being run in your case too.

isn't the idea of ssr exchange - when client hydrates - to NOT execute queries again, because they already have data sent from server?

Not necessarily, no. The ssrExchange has a different priority. Its priority is to make sure that, as long as it's hydrated on the client-side correctly, the render/hydration that the client-side performs uses the same data that the server used.
This is a subtly different goal. After hydration, we don't expect it to act like a cache and that's why it only returns a result once. It basically replaces the fetchExchange for results that the server has already used/seen once.
The problem with persistedExchange is that, as long as your persistedExchange is used in front of the ssrExchange the ssrExchange “sees” your persisted errors. Meaning, it will treat them as the canonical result. This then means that we allow this result to be rendered server-side.
The ssrExchange is basically a single-time “snapshot” of what results your server uses to render the SSR result.

Edit 2: You're likely aware of this, but just so I address this too, since I forgot. If you add random data to the query, its key changes on every render, i.e. it'll also be different between client-side and server-side and a match can never occur between the two

Yeah, that was only to reproduce nodejs error.
I've tested now and indeed it re-executes query on client-side if there is only ssrExchange, however it does not when you have ssrExchange and then persistedExchange.  If I remove persistedExchange - it always re-execute query, even if there is normalized cache. I always though that ssrExchange will prevent client re-execution.

I'm adding a dev-time warning to this, since it's a very specific case that's clearly just confusing and hard to grasp given the error.

If I remove persistedExchange - it always re-execute query, even if there is normalized cache. I always though that ssrExchange will prevent client re-execution.

There's a short explanation here: https://formidable.com/open-source/urql/docs/advanced/persistence-and-uploads/#automatic-persisted-queries
tl;dr: Run this just as an SPA without SSR to see more clearly what's going on. You may have to check closely what the request looks like. Basically, this is because you're using automatic persisted queries. A second request will be sent when the hash that's sent is unknown to the server.
The longer explanation is in the docs ✌


How can I implement the vertical scroll axis for Stack / Tinder Layout?

scrollDirection -> vertical doesn't seem to work for layouts STACK and TINDER.
Please do tell how organize the Stacks vertically if the scroll direction is made vertical.
Regards
Lavan

We've seperated the custom layout logic into custom_layout.dart .
https://github.com/best-flutter/flutter_swiper/blob/master/lib/src/custom_layout.dart
In order to implement vertical STACK and TINDER, flow the steps below:
1、Modify _onPanUpdate in this file ,handle the user gesture here ,
2、Modify '_StackViewState' and '_TinderState' in 'swiper.dart',handle the parameters in vertical direction.
  //length of the values array below
    _animationCount = 5;

    //Array below this line, '0' index is 1.0 ,witch is the first item show in swiper.
    _startIndex = -3;
    scales = [0.7, 0.8, 0.9, 1.0, 1.0];
    offsets = [-space, -space / 3 * 2, -space / 3, 0.0, _screenWidth];
    opacity = [0.0, 0.5, 1.0, 1.0, 1.0];

 opacity = [0.0, 0.9, 0.9, 1.0, 0.0, 0.0];
    scales = [0.80, 0.80, 0.85, 0.90, 1.0, 1.0, 1.0];
    offsetsX = [0.0, 0.0, 0.0, 0.0, _screenWidth, _screenWidth];
    offsetsY = [
      0.0,
      0.0,
      -5.0,
      -10.0,
      -15.0,
      -20.0,
    ];
    rotates = [0.0, 0.0, 0.0, 0.0, 20.0, 25.0];

These parameters offsetX and offsetY must be supplied in vertical direction .
We'll fix this issue in the next version.

It's perfect now, thank you so much!

It's perfect now, thank you so much!

hi I  have some problem,
sometimes can scroll sometimes cannot.
but ya, it can't scroll vertical,


GA4 Google Signals Settings and Data Retention Settings not updating

I tried updating several times the GA4 Google Signals Settings and Data Retention Settings. I get an updated message, but when checking in the interface I don't see the change. When I get the property information again via List then I get the original (not updated) setting.
Is this a (known) bug?

Google Signals cannot be updated by the script. Data retention settings can now be updated via the sheet.


Use user changelog if present

As subject.
In test, I found the caller's changelog was overridden by the default message. This pr fix it.

LGTM.


Discord Invitation link cannot be joined

My<EMAIL_ADDRESS>ths!!

No idea, discord problem


Creator name change for Warren Buffett plugin

Updated to my name

Awesome! Thanks Joan!
On Fri, Aug 9, 2024 at 12:11 AM Joan Cabezas @.***>
wrote:

Merged #524 https://github.com/BasedHardware/Omi/pull/524 into main.
—
Reply to this email directly, view it on GitHub
https://github.com/BasedHardware/Omi/pull/524#event-13816696925, or
unsubscribe
https://github.com/notifications/unsubscribe-auth/BJV5Y5SGWJO4DQG3FVQHDW3ZQRTS7AVCNFSM6AAAAABMA3NQKKVHI2DSMVQWIX3LMV45UABCJFZXG5LFIV3GK3TUJZXXI2LGNFRWC5DJN5XDWMJTHAYTMNRZGY4TENI
.
You are receiving this because you authored the thread.Message ID:
@.***>

--
Damian Wolfgram
http://productpickle.com


Remove maintainers

Remove inactive maintainers.
@hex108 , @animeshsingh , as there's no activities in the last three monthes, I'd like to check whether you still put effort on this project?

/hold
@k82cn letme discuss with the IBM team from where the code originally came to discuss if they would like someone to be maintaining this

@k82cn letme discuss with the IBM team from where the code originally came to discuss if they would like someone to be maintaining this

For the maintainer, it's better to commit more effort on this project :)

@k82cn yes, unfortunately sometimes maintainers flip and take a lot of ip somewhere else :-) For now, you can merge this, and I will see if I find someone else internally for long term
/hold cancel

@k82cn yes, unfortunately sometimes maintainers flip and take a lot of ip somewhere else :-) For now, you can merge this, and I will see if I find someone else internally for long term

Thanks for your understanding! If anything I can help, please let me know :)


Player x just tried to change non-editable sign

Describe the bug
Cannot use editable sign module. Warning message popped in console and changes made to the sign are reverted after closing the sign gui
To Reproduce
Steps to reproduce the behavior:

Enable editable sign module
Place signs
Try to edit them

Expected behavior
No warning will be returned and edited sign changes are applied
Screenshots

Additional context

This is a paper issue, and therefore out of my control
https://user-images.githubusercontent.com/53413687/176571878-b7802733-4e07-401d-bbde-d4a9b09417e1.mp4
.