Skipped tests2

Judging by the travis log, it seems we need to increase the test timeout?

Yeah only for those tests I guess
On Fri, Mar 18, 2016, 9:39 AM Oleg Gaidarenko<EMAIL_ADDRESS>wrote:

Judging by the travis log, it seems we need to increase the test timeout?
—
You are receiving this because you authored the thread.
Reply to this email directly or view it on GitHub
https://github.com/jscs-dev/node-jscs/pull/2181#issuecomment-198364388

Oh, I see - that sucks - so that timeout was for my computer

Coverage increased (+1.4%) to 96.426% when pulling bf7d1bf76735a5da6ae592f20b9a095ef800770b on hzoo:skipped-tests2 into 87c5daf26f4c02517121e8d7e969071057838958 on jscs-dev:master.

Means that the tests were taking < 3 sec and now > 15 which is pretty bad and something we certainly need to investigate?

Definitely! /cc @mdevils

Coverage increased (+1.4%) to 96.426% when pulling dd1034bd24a1325a0cc5dd58d4c62cf54d6927e4 on hzoo:skipped-tests2 into 87c5daf26f4c02517121e8d7e969071057838958 on jscs-dev:master.

Coverage increased (+1.4%) to 96.426% when pulling 052ca0c8a5d076f919c1ffbfd3c9d182206d4df7 on hzoo:skipped-tests2 into 87c5daf26f4c02517121e8d7e969071057838958 on jscs-dev:master.


Where is Contact Info to be Stored?

We think Contact Info might live as new attributes in the Home and thus this task is to add them in. But we first want to confirm with the front-end and Chris whether we are better off including this as a SurveyQuestion.
Probably want to store multiple names in case of co-ownership. Maybe use ArrayType or we can concede and normalize this into another table for Owners.

This is being subsumed into the SurveyQuestion. We won't store this on its own.


Eliminate log messages about ENCODING

Resolves #668

Coverage remained the same at 83.133% when pulling c40c913233cd4b4173b05fed77d84e69d39e3255 on issue668 into 74e2c90769e45c50f958a1b92cef6cf42b498a90 on maint-1.8.

Coverage remained the same at 83.133% when pulling c40c913233cd4b4173b05fed77d84e69d39e3255 on issue668 into 74e2c90769e45c50f958a1b92cef6cf42b498a90 on maint-1.8.

Coverage remained the same at 83.133% when pulling c40c913233cd4b4173b05fed77d84e69d39e3255 on issue668 into 74e2c90769e45c50f958a1b92cef6cf42b498a90 on maint-1.8.

Coverage remained the same at 83.133% when pulling c40c913233cd4b4173b05fed77d84e69d39e3255 on issue668 into 74e2c90769e45c50f958a1b92cef6cf42b498a90 on maint-1.8.

Coverage remained the same at 83.133% when pulling c40c913233cd4b4173b05fed77d84e69d39e3255 on issue668 into 74e2c90769e45c50f958a1b92cef6cf42b498a90 on maint-1.8.

Coverage remained the same at 83.133% when pulling c40c913233cd4b4173b05fed77d84e69d39e3255 on issue668 into 74e2c90769e45c50f958a1b92cef6cf42b498a90 on maint-1.8.

Coverage remained the same at 83.133% when pulling c40c913233cd4b4173b05fed77d84e69d39e3255 on issue668 into 74e2c90769e45c50f958a1b92cef6cf42b498a90 on maint-1.8.

Coverage remained the same at 83.133% when pulling c40c913233cd4b4173b05fed77d84e69d39e3255 on issue668 into 74e2c90769e45c50f958a1b92cef6cf42b498a90 on maint-1.8.

@sgillies Thanks a lot for fixing those warnings!


Feature Request: Support or document methods of "black box" integration testing

When wishing to run test scenarios against the full EVerest stack that require the monitoring of EVerest modules, the approach that appears publicly in everest-core tests is to dynamically define a new type of EVerest module at runtime using everestpy and run it as a standalone module alongside the rest of the stack. This custom "proble module" relies on everestpy to connect to the MQTT message broker and publish/subscribe to topics associated with other modules.
This approach has a number of limitations, some of which are as follows:

Required Knowledge of EVerest Tooling: The test in startup_tests.py looks readable on the surface, but in order to reuse it in new tests, a developer almost immediately requires a knowledge of each of the following (at a minimum):

everestpy from everest-framework (and pybind11 syntax, accordingly).
How the everest.testing submodule is really a copy of the everest-testing submodule from everest-utils, which to my knowledge isn't explicitly documented anywhere.
What a standalone module is and what features are/are not supported with them.

Not Testing a Production EVerest Stack: While unlikely, it's possible that introducing a misconfigured standalone module into EVerest results in a change to the behavior of other modules within EVerest.

Lack of Convenient Testing Abstractions: In its current implementation, the probe module is not general purpose, meaning that a bespoke probe module is defined for testing a specific behavior. Without a higher-level abstraction here, this pattern will likely result in quite a bit of boilerplate code in test suites and brittle tests.

Complexity: This seems like quite a few layers of abstraction simply to trigger a module command or obtain a variable value.

All of these issues can be addressed through a mix of improvements to the main EVerest documentation, providing documentation for everestpy, extending the documentation of everest-testing, extending everest-testing with some kind of general-purpose probe module, etc. That said, I'm curious why the community has adopted this approach over building out a testing framework that connects to MQTT directly, using a client like Paho.
Either way, from my own experience and conversations with other EVerest adopters, it seems like commentary on existing testing approaches would be a welcome contribution to the documentation.

Communicating with modules over MQTT directly has other advantages, as well. In particular, it enables third parties to perform "black box" integration with EVerest, where EVerest is stood up in conjunction with other software (and hardware) to confirm expected behavior across a more connected set of services (e.g., SIL or HIL tests involving an EV, EVerest, and a CSMS).
I believe @shankari wanted to provide some real world examples from recent PKI testing efforts where this would come in handy.

Hi @drmrd @shankari,
thanks for bringing this topic up!
There are various levels of Testing:

Unit Testing
Integration Testing (with probe module)
Integration Testing (without probe module)
I agree we need more documentation regarding testing, including:
explanation of testing-framework / everest-testing / everest.testing / probe_module
everytpy / pybind
pytest
This would adress your 1. point. I agree this knowledge is necessary to impelement Tests on Integration level (with probe module) I also guess it would adress your 3. point because I would say the probe module is not defined for specific testing and is general purpose. So don't agree on 3.
The probe module is abstracted away in some pytest fixtures in a way it provides a "handy" standalone module as possibility to inject inputs / ouputs on module layer. On this level it wouldn't make sense to speak mqtt directly, because you wouldn't need even more detailed knowledge on the EVerest framework. With probe module you nearly only need the knowledge you need to implement modules.

To point 4: If you are not familiar with pytest it looks quite complex, but the testing framework is "just" a collection of "handy"/useful fixtures (pytest) that are controlled by markers. Both can be reused.
To point 2:
I agee there are currently no integration tests on this level (integration tests without probe module). In my opinion it would make sense to also use pytest for these and start EVerest with the everest-core fixture, use external mqtt API of SIL modules (which also needs improvement in documentation) to control the simulation. For this it would probably a good idea to add fixtures like sil_controller which can be based on the already existing fixture connected_mqtt_client
So in summarization:

We need imrpoved documentation
testing framework should be extended to adress testing on integration level without probe module

Open questions:

@shankari, you mentioned to dockerize this testing level, could you explain your idea in more detail?


[question] Release cadence?

Hello! First, thank you for this tool. It has saved me countless hours of debugging.
I would like package samply as part of wolfi for easier distribution (for folks who don't want to install cargo).
The latest release is a bit dated and doesn't include this fix, which is necessary for running samply in a container (which I often want to do).
Could I trouble you to cut a release from a recent commit that includes that fix? Or is there anything I could do to help out with that?
Thanks!

I've released 0.12.0. I intend to do much more frequent releases in the future.

Thank you so much!


Can "az pipelines build queue" be used to queue a build pointed to a specific git tag rather than a branch?

I believe the answer is no, however if would be lovely if this cmd would accept any git ref. If I am wrong, updating the help text for the "--branch" arg to indicate how one can provide a tag as a value would be much appreciated. Thanks!

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

ID: b7077ac1-bb22-976f-77f3-9a40cfcbce81
Version Independent ID: b3841ca2-43a1-1438-7907-0240d06b7502
Content: az pipelines build
Content Source: latest/docs-ref-autogen/ext/azure-devops/pipelines/build.yml
GitHub Login: @rloutlaw
Microsoft Alias: routlaw

devops.


Empty LG template returns null instead of empty string

Version
4.11.0-dev.20200901.8b7db50
Describe the bug
An empty template returns "null" rather than an empty string.
To Reproduce
With this template if you call test(), you will end with "This is null" rather than "This is".  If 'foo' is ${''} you get the same result, but if you make it ${' '} it will return a space.
# foo()
-

# blah(x)
- This is ${x}

# test()
- ${blah(foo())}

Expected behavior
An empty template should be an empty string.

Hi @chrimc62,  This issue supposed to be fixed in the latest daily package. The fix pr is here: #2710 Although this is a minor change in this PR.
The root cause is that LG misused the "null" judgment. if(value) should be if (value !== undefined),
so, if the result is an empty result, LG would misjudge that this variable does not exist in the memory.
Anyway, this is a bug that only occurs when using the empty LG result as the parameter of another template and has no effect on direct calls.


Support loading license key from SSM Parameter Store

Resolves https://github.com/newrelic/newrelic-lambda-extension/issues/94

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

@kolanos @MattWhelan @mrickard would you be able to take look at this?

@nc-holodakg Can you rebase this PR?
As for your questions:

• How important it is to preserve the behavior of the fallback secret id (which doesn't seem to be documented anywhere)?

We want to preserve this behavior.

• In the edge case where both a secret id and a parameter name are configured, which should be preferred?

Since secret IDs were introduced first, they should take precedence.

• Is it better to try all fallback before raising an error, or just return the first error?

Generally, yes.

@MattWhelan @kolanos I've updated the code and environment variable naming to use "SSM Parameter" instead of "Parameter".

Would be good to have a startup check that checks if the user has configured both a secret ID and param.

A sanity check for this is in place.

I'd also like a discussion of the Lambda execution role implications of this feature. How is this going to fail for users who have forgotten to modify their execution role? What changes are necessary?

No changes are needed for anyone using the secret key or environment variable. If someone wants to migrate their license key to Parameter Store, they'll need to add permissions for ssm:GetParameter. If permissions are missing, something like this will show up in the lambda logs:
[NR_EXT] Failed to retrieve New Relic license key AccessDeniedException: User: arn:aws:sts::<acctid>:assumed-role/<role> is not authorized to perform: ssm:GetParameter on resource: arn:aws:ssm:us-east-1:<acctid>:parameter/<parameter_name> because no identity-based policy allows the ssm:GetParameter action

It feels like a one-off for a weird, obscure use case that we'll be saddled with maintaining.

This project already supports Secrets Manager. I'm curious why you think Parameter Store is a weird edge case but Secrets Manager isn't?

The error handling is much improved though. It looks like unsurprising Go code now.

Good to hear!

@kolanos @MattWhelan @mrickard Bumping this PR, would love to get this merged sometime soon

@nc-holodakg This repo is now being managed by a team that concentrates on Go. I'll notify them.

Taking a look 👀

@iamemilio did you get a chance to take a look?

@iamemilio just wanted to check in! Did you get a chance to take a look?

Hi, sorry. I've been juggling a lot. I will test and review this by end of week. Thanks for being patient

@iamemilio no worries!

LGTM. Thanks for contributing and being patient with us :)

@iamemilio how long does it usually take for an updated Lambda layer to be published that includes the latest extension? It looks like the most recent version for NewRelicLambdaExtension is 29, which was created on 2023-01-06.
aws lambda get-layer-version --layer-name arn:aws:lambda:us-east-1:451483290750:layer:NewRelicLambdaExtension --version-number 29

{
    "Content": {
        "Location": "<redacted>",
        "CodeSha256": "XjFXoYnzmizYTKDDRBNLyKMCtqogwxeg6ALna9ddAh0=",
        "CodeSize": 3081073
    },
    "LayerArn": "arn:aws:lambda:us-east-1:451483290750:layer:NewRelicLambdaExtension",
    "LayerVersionArn": "arn:aws:lambda:us-east-1:451483290750:layer:NewRelicLambdaExtension:29",
    "Description": "New Relic Layer for provided (x86_64)",
    "CreatedDate": "2023-01-06T16:40:53.387+0000",
    "Version": 29,
    "CompatibleRuntimes": [
        "provided",
        "provided.al2",
        "dotnetcore3.1",
        "dotnet6"
    ],
    "LicenseInfo": "Apache-2.0",
    "CompatibleArchitectures": [
        "x86_64"
    ]
}

@iamemilio any idea when this will make it into the Lambda layer? That project seems to still be on v2.3.6.


Div and Rem act as sources of X

I ran into this problem when trying to run LEC to test examples for #1365.
From IEEE 1364-2005 (same for older standards):

For the division or modulus operators, if the second operand is a zero, then the entire result value shall be x.

I know these don't pop up too much in practice, but it might be reasonable to control via randoms.
z <= a / b;                        // source of X
z <= a % b;                        // source of X
z <= (b == 0) ? _RAND_0 : a % b;   // no X
z <= (b == 0) ? _RAND_0 : a / b;   // no X

This also means that Div and Rem always produce 1'bX for zero-width arguments.

Is this meant to be the in a synthesizeable code block produced by FIRRTL? This would generate additional hardware. Having them return 0 is probably less hardware, but still more than nothing (which leaves the synthesis tool to do as it pleases).

Can use an ifdef-guard in the same manner as out-of-bounds array indices,
so that the new Verilog only affects simulation, letting the synthesis tool
do as it pleases.
On Thu, Feb 13, 2020 at 10:18 AM John Wright<EMAIL_ADDRESS>wrote:

Is this meant to be the in a synthesizeable code block produced by FIRRTL?
This would generate additional hardware. Having them return 0 is probably
less hardware, but still more than nothing (which leaves the synthesis tool
to do as it pleases).
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/freechipsproject/firrtl/issues/1393?email_source=notifications&email_token=AAH3XQQ7GOC5MKVUGIF6RLLRCWFG7A5CNFSM4KUXJE32YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOELWBW6A#issuecomment-585898872,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AAH3XQXDBSZMYMSALUQJBCDRCWFG7ANCNFSM4KUXJE3Q
.

Is this meant to be the in a synthesizeable code block produced by FIRRTL? This would generate additional hardware. Having them return 0 is probably less hardware, but still more than nothing (which leaves the synthesis tool to do as it pleases).

Sorry I didn't specify; this would be simulation only -- the _RAND_ signals are generally only used in simulation. This would fit in our existing set of conditional compilation modes that cover things like register initialization.

Can we add wording about division by zero leading to an arbitrary result to the firrtl spec?
Also: strictly speaking, the result of division by zero should be re-randomized every cycle to account for the allowable worst-case, right?

Can we add wording about division by zero leading to an arbitrary result to the firrtl spec?

Sure, I opened #1409 for that.

Also: strictly speaking, the result of division by zero should be re-randomized every cycle to account for the allowable worst-case, right?

That is the way any randomization based on an undefined operator result would be implemented, though it represents a practical test rather than a theoretical worst case (combinational logic has no notion of cycles).


tesla_custom.api throws an UnknownError

Version of the custom_component
1.2.0
Configuration
service: tesla_custom.api
data:
  command: CHANGE_CLIMATE_TEMPERATURE_SETTING
  parameters:
    path_vars:
      vehicle_id: '786889216'
    driver_temp: 23.0
    passenger_temp: 23.0
    wake_if_asleep: true

or
service: tesla_custom.api
data:
  command: REMOTE_SEAT_HEATER_REQUEST
  parameters:
    path_vars:
      vehicle_id: '786889216'
    heater: 1
    level: 1
    wake_if_asleep: true

Describe the bug
Can't seem to get any tesla_custom.api service calls to work.
Both the above examples return an UnknownError immediately. I imagine i'm doing something wrong, but not sure what. I grabbed the vehicle_id from teslafi - it should always be the same, right?

Logger: homeassistant.components.websocket_api.http.connection
Source: custom_components/tesla_custom/services.py:89
Integration: Home Assistant WebSocket API (documentation, issues)
First occurred: 4:13:54 PM (3 occurrences)
Last logged: 4:24:49 PM
[281473288586144] Error handling message: Unknown error
Traceback (most recent call last):
File "/usr/src/homeassistant/homeassistant/components/websocket_api/decorators.py", line 26, in _handle_async_response
await func(hass, connection, msg)
File "/usr/src/homeassistant/homeassistant/components/websocket_api/commands.py", line 525, in handle_execute_script
await script_obj.async_run(msg.get("variables"), context=context)
File "/usr/src/homeassistant/homeassistant/helpers/script.py", line 1219, in async_run
await asyncio.shield(run.async_run())
File "/usr/src/homeassistant/homeassistant/helpers/script.py", line 353, in async_run
await self._async_step(log_exceptions=False)
File "/usr/src/homeassistant/homeassistant/helpers/script.py", line 371, in _async_step
await getattr(self, handler)()
File "/usr/src/homeassistant/homeassistant/helpers/script.py", line 571, in _async_call_service_step
await service_task
File "/usr/src/homeassistant/homeassistant/core.py", line 1491, in async_call
task.result()
File "/usr/src/homeassistant/homeassistant/core.py", line 1526, in _execute_service
await handler.job.target(service_call)
File "/config/custom_components/tesla_custom/services.py", line 43, in async_call_tesla_service
await api(service_call)
File "/config/custom_components/tesla_custom/services.py", line 89, in api
return await controller.api(name=command, path_vars=path_vars, **parameters)
File "/usr/local/lib/python3.9/site-packages/teslajsonpy/controller.py", line 166, in wake_up
result = await wrapped(*args, **kwargs)
File "/usr/local/lib/python3.9/site-packages/teslajsonpy/controller.py", line 1180, in api
return await self.__connection.post(
File "/usr/local/lib/python3.9/site-packages/teslajsonpy/connection.py", line 167, in post
return await self.__open(
File "/usr/local/lib/python3.9/site-packages/teslajsonpy/connection.py", line 218, in __open
raise TeslaException(resp.status_code)
teslajsonpy.exceptions.TeslaException

in the debug section of homeassistan's configuration.yaml add teslajsonpy: debug

Could the normal full response be made available as attributes of the location sensor? Or can that already be accessed elsewhere? That would make the vehicle_id available via attribute and we can use anything in the normal response cadence. Especially in templates.
As an example use case, I have a cover template setup for opening and closing the windows. I'm using the latitude and longitude attributes of the location tracker in my api call to close the windows.
cover:
  - platform: template
    covers:
      tesla_window:
        device_class: window
        friendly_name: "Tesla Window"
        # value_template: "{{ ? }}"
        open_cover:
          - service: tesla_custom.api
            data:
              command: WINDOW_CONTROL
              parameters:
                path_vars:
                  vehicle_id: 'my_id'
                command: vent
                lat: "{{state_attr('device_tracker.tesla_location_tracker','latitude') }}"
                long: "{{state_attr('device_tracker.tesla_location_tracker','longitude') }}"
                wake_if_asleep: true
        close_cover:
          - service: tesla_custom.api
            data:
              command: WINDOW_CONTROL
              parameters:
                path_vars:
                  vehicle_id: 'my_id'
                command: close
                lat: "{{state_attr('device_tracker.tesla_location_tracker','latitude') }}"
                long: "{{state_attr('device_tracker.tesla_location_tracker','longitude') }}"
                wake_if_asleep: true

If turned into an attribute, I think I could extract the current state of the windows from these in the normal response. Might be nice to have everything available. You never know what could be useful for edge cases.
"vehicle_state":{
...
         "fd_window":0,
         "fp_window":0,

Could the normal full response be made available as attributes of the location sensor? Or can that already be accessed elsewhere?

I don't know what you're asking about with "normal full response". Service calls in HA cannot return data.

Awesome! Works great.
service: tesla_custom.api
data:
  command: XXXX
  parameters:
    path_vars:
      vehicle_id: "{{ state_attr('binary_sensor.<car_name>_online_sensor', 'id') }}"
  foo: bar

... is going to be the standard template for just about every call, right? Would be cool if you could just do something like this instead:
service: tesla_custom.api
data:
  command: XXXX
  car: <car_name>
  parameters:
    foo: bar

... but for what it is (a dev mode) this is wonderful. Thanks again!

Could the normal full response be made available as attributes of the location sensor? Or can that already be accessed elsewhere?

I don't know what you're asking about with "normal full response". Service calls in HA cannot return data.

Right, sorry. In the logs I see this:
2021-10-20 19:01:59 DEBUG (MainThread) [teslajsonpy.connection] 200: {"response":[{.........

It seems to happen at a pretty steady rate. The 200: response json goes on for a while and has a lot of values. Can all of these values be made available as attributes?

I am having the same issue here


Canary Deployment Not Working

I am trying a simple POC with Ambassador and the two following resources have now worked:

I tried following this example and the load balancer does not resolve:

curl: (52) Empty reply from server

I also followed the documentation here and I get:

curl: (52) Empty reply from server?
Here's my deployment:
apiVersion: v1
kind: Service
metadata:
  name: payment-service
  namespace: ambassador
  labels:
    app: payment-app
spec:
  ports:
  - port: 8080
    targetPort: 8080
  selector:
    app: payment-app

---
apiVersion: apps/v1
kind: Deployment
metadata:
  name: payment
  namespace: ambassador
  labels:
    app: payment-app
    track: stable
spec:
  selector:
    matchLabels:
      app: payment-app
  template:
    metadata:
        labels:
          app: payment-app
    spec:
      containers:
      - name: payment-app
        image: ...
        imagePullPolicy: IfNotPresent
        ports:
        - containerPort: 8080
          name: http
          protocol: TCP
---
apiVersion: apps/v1
kind: Deployment
metadata:
  name: payment-canary
  namespace: ambassador
  labels:
    app: payment-app
    track: canary
spec:
  selector:
    matchLabels:
      app: payment-app
  template:
    metadata:
        labels:
          app: payment-app
    spec:
      containers:
      - name: payment-app
        image: ...
        imagePullPolicy: IfNotPresent
        ports:
        - containerPort: 8080
          name: http
          protocol: TCP

Here's the ambassador service:
apiVersion: v1
kind: Service
metadata:
 labels:
   service: ambassador
 name: ambassador
 annotations:
   getambassador.io/config: |
     ---
     apiVersion: ambassador/v1
     kind:  Mapping
     name:  payment
     prefix: /hello
     ---
     apiVersion: ambassador/v1
     kind:  Mapping
     name:  payment-canary
     prefix: /hello
     service: payment-canary:8080
     Weight: 50
spec:
 type: LoadBalancer
 ports:
 - name: ambassador
   port: 80
   targetPort: 8080
 selector:
   service: ambassador

Is there something that I could be missing or doing wrong?

apiVersion: v1
kind: Service
metadata:
 labels:
   service: ambassador
 name: ambassador
 annotations:
   getambassador.io/config: |
     ---
     apiVersion: ambassador/v1
     kind:  Mapping
     name:  payment
     service: payment:8080
     prefix: /hello
     ---
     apiVersion: ambassador/v1
     kind:  Mapping
     name:  payment-canary
     prefix: /hello
     service: payment-canary:8080
     Weight: 50
spec:
 type: LoadBalancer
 ports:
 - name: ambassador
   port: 80
   targetPort: 8080
 selector:
   service: ambassador

Looks like you missed the service on the primary configuration.


iis_vdir - config action appears to ignore the physical_path when constructing appcmd command

Here is my resource:
iis_vdir "teste env1 f/" do
path '/fw7/1/'
physical_path "C:\Websites\teste\env1\f\fw7\repointed"
action :config
end
It returns a message as to say it completed successfully but it did not change the physical path of the application ("teste env1 f/fw7/1").
I would expect that it would produce this appcmd (which when i run manually does change the physical path)
appcmd.exe set vdir "teste env1 f/fw7/1/" -physicalPath:C:\Websites\teste\env1\f\fw7\repointed /logonMethod:ClearText
Before i got this 'working' i had omitted a trailing slash in the path. This error highlighted the fact that the physicalPath appears to be discarded as the code builds up the appcmd command.
================================================================================
Error executing action config on resource 'iis_vdir[teste env1 f/]'
Mixlib::ShellOut::ShellCommandFailed
Expected process to exit with [0], but received '50'
---- Begin output of C:\Windows\System32\inetsrv\appcmd.exe set vdir "teste env1 f/fw7/1" /logonMethod:ClearText ----
STDOUT: ERROR ( message:Must use exact identifer for VDIR object with verb SET. )
STDERR:
---- End output of C:\Windows\System32\inetsrv\appcmd.exe set vdir "teste env1 f/fw7/1" /logonMethod:ClearText ----
Ran C:\Windows\System32\inetsrv\appcmd.exe set vdir "teste env1 f/fw7/1" /logonMethod:ClearText returned 50
Resource Declaration:
In C:/chef/.chef/local-mode-cache/cache/cookbooks/testing-iisapppath/recipes/default.rb
18: iis_vdir "teste env1 f/" do
19:        path '/fw7/1'
20:   physical_path 'C:\Websites\teste\env1\f\fw7\repointed'
21:   action :config
22: end
23:
Compiled Resource:
Declared in C:/chef/.chef/local-mode-cache/cache/cookbooks/testing-iisapppath/recipes/default.rb:18:in `from_file'
iis_vdir("teste env1 f/") do
action [:config]
retries 0
retry_delay 2
default_guard_interpreter :default
declared_type :iis_vdir
cookbook_name "testing-iisapppath"
recipe_name "default"
path "/fw7/1"
physical_path "C:\Websites\teste\env1\f\fw7\repointed"
application_name "teste env1 f/"
logon_method :ClearText
allow_sub_dir_config true
end

@endakenny if you give the iis_vdir provider the following command will run
cmd = "#{appcmd(node)} set vdir \"#{application_identifier}\"<EMAIL_ADDRESS>
which in your example should become:
cmd = "C:\Windows\System32\inetsrv\appcmd.exe set vdir \"teste env1 f/fw7/1\" /physicalPath:\"C:\Websites\teste\env1\f\fw7\repointed\""

@endakenny the error appears to be this:
In C:/chef/.chef/local-mode-cache/cache/cookbooks/testing-iisapppath/recipes/default.rb

18: iis_vdir "teste env1 f/" do
19: path '/fw7/1'
20: physical_path 'C:\Websites\teste\env1\f\fw7\repointed'
21: action :config
22: end
23:

this should be
iis_vdir "teste env1 f/" do
  path '/fw7/1/'
  physical_path 'C:\Websites\teste\env1\f\fw7\repointed'
  action :config
end

you need the path to end with /

@EasyAsABC123. Perhaps i have confused the issue with how i presented it.
I am aware that i had omitted a trailing slash - see above "Before i got this 'working' i had omitted a trailing slash in the path. This error highlighted the fact that the physicalPath appears to be discarded as the code builds up the appcmd command."
So this was was my second last attempted before i got the recipe to run without error
So at the very top is my 'working' resource - chef runs without error but the physicalPath remains unchanged.
The reason i included this 'broken' resource it because the stack trace show that the physical_path though compiled  correctly - is not uses in the resultant appcmd:
C:\Windows\System32\inetsrv\appcmd.exe set vdir "teste env1 f/fw7/1" /logonMethod:ClearText
Re your fist post (if you give the iis_vdir provider the following command will run) - would you mind altering my resource (the 'working' one ) so that it 'gives the iis_vdir provider' what it wants?

@endakenny  I don't see where /logonMethod:ClearText is coming from

@endakenny if the error still occurs let me know and i'll write a quick test recipe to see if this is an internal error.

Well to my mind it is quite correct that in the ruby recipe file its "C:\Websites\teste\env1\f\fw7\repointed" and that this is compiled without the double back slashes (as with this command which does what i want when run manually  - appcmd.exe set vdir "teste env1 f/fw7/1/" -physicalPath:C:\Websites\teste\env1\f\fw7\repointed /logonMethod:ClearText )as this is what appcmd(and windows) expects.

The command you are getting to run is actually
cmd = "#{appcmd(node)} set vdir \"#{application_identifier}\"<EMAIL_ADDRESS>
which should only run if the logon_method changes

working on a demo recipe right now, give me a few and i'll let you know if i find the issue

Re logonMethod - its not concerning me right now
On 16 January 2015 at 16:25, Justin Schuhmann<EMAIL_ADDRESS>wrote:

The command you are getting to run is actually
cmd = "#{appcmd(node)} set vdir "#{application_identifier}"<EMAIL_ADDRESS>which should only run if the logon_method changes
—
Reply to this email directly or view it on GitHub
https://github.com/opscode-cookbooks/iis/issues/107#issuecomment-70279085
.

can you please test the following branch? https://github.com/EasyAsABC123/iis/tree/hotfix-issue_with_helper this resolved the issue for me but it is a bug in one of the deep helper classes.

@EasyAsABC123  - thank you - this seems to do the trick. Given that you say its a issue with the deeper helper classes, did you fix it there or work around somehow elsewhere. The reason i ask is because if its the latter then when the helper classes are fixed is it likely to break this version of the iis cookbook and my use of same in my cookbooks?

@endakenny the deeper class was fixed, this resolved a lot of bugs that no one was noticing. Thank you for reporting this one as it led to the others


fix: Handle temp files for all jobs in a group.

Description
As described in #1754 and demonstrated there with a minimal example, not all temp files are cleaned up when certain workflows containing "job groups" are run on the cluster. The issue does not occur when running the same workflow locally, in which case the group assignments are ignored, as the purpose of groups is to mark different jobs to be executed on the same cluster node.
This PR fixes the issue. See the problem analysis in this comment for details. Essentially, the job argument to dag.DAG.finish() was being reused as a local variable inside the method. So when job was a group of jobs, it would only handle temp files for the last job in that group. We fix that by calling handle_temp() explicitly for each individual job.
As pointed out by @pvandyken in the discussion, handle_temp() would also know how to deal with job groups. So one could just avoid re-using job inside finish(). This might even be preferable, as it is cleaner, but would require more code changes.
Fixes #1754. Fixes #1732 as well, as that issue was superseded by the newer one providing a minimal example.
QC

[ ] The PR contains a test case for the changes or the changes are already covered by an existing test case.
[x] The documentation (docs/) is updated to reflect the changes or this is not necessary (e.g. if the change does neither modify the language nor the behavior or functionalities of Snakemake).

Note: The problem only manifests itself when the test case (presented in issue #1754) is run on the cluster. I do not think the behavior can be tested with the current CI setup.

This might not be the place for such a comment but I just tried this and it fixed my problem when using slurm. Many thanks for saving me the time I would otherwise have spent running delete-temp-output.

@johanneskoester FYI, this should be quick to review: it's a one-line code change and a very obvious bug (once you see it).
We've been running this in our production V-pipe deployment on an LSF cluster for four weeks now and it has clearly resolved the issue of maxing out our 2.5-TB scratch space with old temp files. And there's positive feedback here too, like by @twillis209 on this and a (seemingly) unrelated issue.


build openblas with CMAKE GUI and MSVC 2019

Hello
I tried to build Openbals using CMAKE and MSVC for X64
The configuration with CMAKE goes fine but when I try to build the library I get a number of errors
(missing functions).
I know i can build the library under miniconda and CMAKE - i just wonder if someone has managed to build openblas under MSVC
best
jac

Hi
I think that I managed to build  openblas with MSVC
I want to run the test program utest but there is no documentation about the arguments that are to be fed (argc , argv)
could you provide an example just to see what I get when I run utest
best
jac

openblas_utest is run without command line arguments, its output should look like
TEST 1/38 max:smax_zero [OK]
TEST 2/38 max:dmax_positive [OK]
...
TEST 37/38 fork:safety [OK]
TEST 38/38 fork:safety_after_fork_in_parent [OK]

not all these regression tests are executed in all configurations, so you will probably see a smaller total than 38, the important point is that what is there should not report anything other than "OK".

hi
I just ran as you suggested and indeed there were 34 tests which all reported "OK". so i guess the lib is ready to use
thanks
jac

Ok, there are some more in-depth BLAS tests in the test and ctest folders (the BLAS1 tests with "1" in their name need no arguments, the others require the correspondingly named (first character for input type, number for BLAS rank) input files to be fed as STDIN. (Note also that if you just built 0.3.22, it is now known to have a serious bug in LAPACK function GETF2)

OK thanks

Hi I checked th ctest directory
these projects (Example xccblat1) have mixed code (fortran and c) and they are not likely to compile as is
there is a need to compile c and fortran in different work-spaces.
best
jac

Oh, right - lack of a Fortran compiler would be another argument against a pure MSVC build. (On the other hand, if you did not see C equivalents for the Fortran files there, chances are you are looking at an older release and thus not affected by the current problem(s?) with the latest. )

hi
this is not what I meant. I have a fortran compiler. But under MSVC you can't not mix within the same workspace fortran and c code. you can compile fortran separately and c separately and they combine binaries.
in the ctest directory the project xccblat1 has two files:
c_cblas1.c and c_cblat1.f
the code in c_cblas1.c has interfaces for calling c functions from fortran.
the fortran code has a main program.
so it seems that ctest has fortran programs calling c routines
I have downloaded the last version of openblas (for sourceforge and github
best
jac

In versions since 0.3.21, xccblat1 has an alternate source file c_cblat1c.c that replaces c_cblat1.f when building without a Fortran compiler, so at least in theory it should build.

with regard to ctest
I replaced the file c_cblat1.f with c_cblat1.c just to check
there are a number of missing functions for example ICAMAXTEST_ (both in the fortran and c versions)
I looked for a file containing such a function in the whole directory and I have not found it
best
jac

The CMakeLists.txt there is supposed to do that automatically , or is this not picked up by the gui ? The ...TEST_  functions are mapped by the header file cblas_test.h to the corresponding F77_... functions that are defined in the (original) C files.
(And yes, the Fortran files were translated with f2c, but using a special header and wrapper script so that the usual f2c support library is not needed)


Topic separator closes#18

Coverage increased (+0.8%) to 79.692% when pulling 6fcc29193ac72b4c9c27cfa74f1d13d370c591c0 on topic-separator-#18 into fafd749d78622bb3eeba43e04b43834d93692a63 on master.


Spec: Mutating Admission Controller injecting NSM init container into pod spec

Reopening this one as we need to update the docs/spec with the draft doc here.

#1069 is merged. Closing back again.


Typescript definitions: Outdated?

When I was toying with arrangodb and trying to use the typescript definitions on a node applications I had a few issues.
Are the definitions outdated?
as example the definition of the save method on the EdgeCollection is as follows:
        save(data: string, fromId?: string, toId?: string): Promise<any>;

Where the data property is a string.
From the API documentation, the same method is documented as:
async edgeCollection.save(data, [fromId, toId]): Object

-> data: Object

Why is the data property typed as string whereas in the js version it's supposed to be an Object?

The TypeScript definitions aren't officially maintained and were supplied by the community, so it's entirely possible they may be inaccurate. I don't think the methods changed since the last PR to the definitions, though, so it must be a flaw in the original definitions.
If you want to help us, you could check to see which definitions seem inaccurate and contribute a PR to fix them.

Would it be possible to delete the typings if they aren't going to be maintained with the source?
I cant work out how you should import arangojs to make the connection or the aql tag via the typings... it doesn't seem to line up with:
import arangojs, {Database, aql} from 'arangojs';

I think it would be best if you guys remove the typings file because it gets really annoying when it isn't up to date for typescript users, and it's ok if you guys don't want to officially support typescript. If somebody does want to contribute by adding types they should add them to DefinitelyTyped repo and not this repo, so that typescript users won't be forced to use outdated types.

@mpv1989 Can you look into this? I think I'm +1 on removing the d.ts file from this repo to eliminate the noise for now. We should probably leave it to the community to maintain the typings via DefinitelyTyped unless we start dogfooding TypeScript eventually.


add openshift team to reviewers and approvers

team is here: https://github.com/orgs/openshift/teams/openshift-team-cfe

/verify-owners


#44 OpenSSL error with password to short minimal 4 chars - Mac OS Catelina

Removed darwin check with 3 chars password because of updated OpenSSL requires minimum 4 chars

Hello,
The problem still persists on Mac OS Catalina. You also need to change the pass variable in .m2c/bin/m2c.
Thanks.

Added fix in the latest release.


TypeError: 'ResponseFormat' object is not subscriptable

In  the OpenAI server API, setting the response_format per the API docs causes a TypeError exception.   It appears that the code is attempting to treat the response_format as a hash instead of struct.
  File "/data/h2ogpt/openai_server/backend.py", line 156, in get_response
    gen_kwargs['response_format'] = gen_kwargs.get('response_format')['type']

When the options are parsed, the response_format is a ResponseFormat struct, so accessing via .type works where ['type'] causes the TypeError.
Here is the diff working vs. non-working.
https://github.com/h2oai/h2ogpt/blob/251c72bd70dd5b1ebd76046d9187e13f343597cb/openai_server/backend.py#L195
diff --git a/openai_server/backend.py b/openai_server/backend.py
index fc77019a..7b41a18f 100644
--- a/openai_server/backend.py
+++ b/openai_server/backend.py
@@ -152,7 +152,9 @@ def get_response(instruction, gen_kwargs, verbose=False, chunk_response=True, st
     if gen_kwargs.get('response_format'):
         # pydantic ensures type and key
         # transcribe to h2oGPT way of just value
-        gen_kwargs['response_format'] = gen_kwargs.get('response_format')['type']
+        print(gen_kwargs)
+        #gen_kwargs['response_format'] = gen_kwargs.get('response_format')['type']
+        gen_kwargs['response_format'] = gen_kwargs.get('response_format').type

     kwargs.update(**gen_kwargs)

This appears to be fixed in a newer version than what I was using when I reported this.


casper: create high level functions for navigating through the app

There are navigation actions common to many casper tests, such as changing to the admin tab, going to the home page, going to the streams page, etc. The hard part of doing the navigation is writing the correct waitFor.. statement, so that the page is fully loaded before you proceed with the test. Currently, tests implement this in a haphazard way, creating potential race conditions (see below) and messy code. One potential way to solve this would be to add invisible divs (maybe one per page/tab?) with a class that changes state when the page is fully loaded. Or possibly deciding that some subset of the current code is doing it correctly, and just copying it out.
In particular, I believe ran into this race condition in navigating to the home page (from the admin page). A current test in 10-admin.js waits for casper.waitForSelector('.message_table'), which I think can fire before all the messages are loaded.
The test is casper.waitForText('Error saving edit: Your organization has turned off message editing.' .., here is a screenshot from when it passes:

and a screenshot from when it fails:

The relevant code from 10-admin.js is
// go back to home page
casper.then(function () {
    casper.click('.global-filter[data-name="home"]');
});

casper.waitForSelector('.message_table', function () {
    casper.then(function () {
        casper.evaluate(function () {
            var msg = $('#zhome .message_row:last');
            msg.find('.message_edit_save').click();
        });
    });
});

// try to save the half-finished edit
// make sure we get the right error message, and that the message hasn't actually changed
casper.waitForText('Error saving edit: Your organization has turned off message editing.', function () {
    casper.test.assertSelectorHasText(".last_message .message_content", "test edited");
});

and when it failed (only managed to make it happen once) the wait timed out.

Now that the settings page redesign is done, I think there's definitely some value in picking this up; we have a number of examples of doing this right in 10-admin.js (for example), and I think with a bit of work could have a nice system at least for navigating between the modals with a few functions in it.

Is this basically resolved by the waitForSelector -> waitUntilVisible insight?

I think we want higher-level navigation functions for code duplication reasons, but this issue is perhaps not that useful since it has a bunch of clutter at the top.  So maybe worth closing and opening a new clearer issue; I'll do that.


Pods are terminated and new pods started on initial odo link and every subsequent odo push

/kind bug

What versions of software are you using?
Operating System:
Red Hat Enterprise Linux Server 7.6 (Maipo)
Kernel: Linux 3.10.0-1062.12.1.el7.x86_64
Output of odo version:
[root@slobbed-inf jpa]# odo version
odo v1.2.5 (8b6a698)
Server: https://api.slobbed.os.fyre.ibm.com:6443
Kubernetes: v1.16.2
How did you run odo exactly?
odo link ServiceBindingRequest/example-servicebindingrequest
Actual behavior
link is established, pod is terminated and new pod started
every subsequent odo push results in the current pod being terminated and a new pod initialized
Expected behavior
link is established, pod is terminated and new pod started
every subsequent odo push should not cause the current pod to be terminated - current pod should be maintained
Any logs, error output, etc?
I have the output of requesting the pod yaml at each step - pre-link, post-link, post-link-push, post-link-app-
podyamls.zip
update-push

We're making a bunch of changes (#4159, #4160 and #4242) under the hood of odo service and odo link as far as Operator Hub integration is concerned. I'm marking this as a low priority as a result.
/priority low
/remove-lifecycle stale

On odo v2.0.4, I'm still seeing this.   That is, I do:

odo push # initial
odo link  #  To a service created via this operator: https://operatorhub.io/operator/postgresql-operator-dev4devs-com
odo push # Expect a new pod here
Make trivial source change
odo push #  I see a whole new pod, which I shouldn't

I can gather some more logs if it helps, but since @dharmit had said this was a low priority during refactoring I'll wait for him to ask first.  Thanks.

5. odo push #  I see a whole new pod, which I shouldn't

This is a problem on odo side but, tbh, I have not dug into this because...

I can gather some more logs if it helps, but since @dharmit had said this was a low priority during refactoring I'll wait for him to ask first. Thanks.

We're working on changing the experience with odo link (#4208) and other service commands like odo service create, odo service delete (#4159 & #4160). I expect this bug to get addressed along with #4208.
/remove-priority low
/priority medium

/remove-lifecycle stale

Perhaps this will not be a problem with the new changes to odo link. odo link no longer pushes any change to the server, it only does on odo push.
@feloy?

Perhaps this will not be a problem with the new changes to odo link. odo link no longer pushes any change to the server, it only does on odo push.
@feloy?

I think that this issue is fixed by #4819:

create a component and a service
odo push
odo link service
oso push # the component is restarted, as expected
odo push # the component is not restarted
edit sources files
odo push # the component is not restarted, and files are synced on the running component

Closing this issue.
@ajm01 @scottkurz if you folks are still facing problems, feel free to reopen it.
/close

@dharmit @feloy - Still seeing this issue with v2.2.3 following the update-pending doc here:  https://github.com/openshift/odo/blob/9188588b66e16984da8122001794f009a6a09235/docs/public/deploying-java-app-with-database.adoc)
Can we please reopen this?  I'll try to add some logs.


[DOCS] Document DFS Based Cycle Detection

Documentation DFS Based Cycle Detection
The goal of this issue if the improve the documentation of an existing algorithm. This documentation should go into the algorithms section of our docusaurus docs.
More detail on how to build the documentation locally can be found on the wiki.
An existing documentation page exists, which should be extended. The page can be found under docs/docs/algorithms/cycle-detection/dfs-based.md.
The corresponding algorithm is called dfs_cycle_detection and can be found under include/graaflib/algorithm/cycle_detection.h. There are two versions of the algorithm, one for directed graphs and one for undirected graphs. Both should be documented on the same page, where we list both available syntaxes.
Documentation Contents
The documentation entry should adhere to the following template:
# [ALGORITHM_NAME]
- A short description of the algorithm, what does it do and in which use cases is it used.
- What are the limitations of the algorithm, does it work on both directed and undirected graphs? Does it consider edge weights, and if yes, does it support negative weights?
- Link to the wikipedia entry on the algorithm.

## Syntax
- A code block with the syntax of the algorithm. This should now include any javadoc comments.
- An explanation of the parameters (including template parameters) and the return type.

## (Optional) See also
- If there are similar algorithms, or we have a slightly different version of the same algorithm, you can link it here.
- If we have an example (found on the example page of the docs) which uses this algorithm, you can link it here.

Hey @bobluppes, assign to me please. I wrote it so docs from me is good way of contributing, I guess.

Hey @bobluppes, assign to me please. I wrote it so docs from me is good way of contributing, I guess.

Hi, of course, much appreciated! Assigning this to you :)

Hey @bobluppes, check #96


Clean up SSL state in OkHttpClient

Attempting a fix for https://github.com/square/okhttp/issues/5895.  At worst it should flush out poor behavior from clients or our own edge cases.

TODO probably useful to add some useful examples of chaing OkHttpClient instances to confirm all transitions.  Any thoughts?
But at least this should flush out weird configs like using a sslSocketFactory with an unrelated trustManager etc.  Hopefully flush out any scenarios where we can end with a broken CertificatePinner.

TODO probably useful to add some useful examples of chaing OkHttpClient instances to confirm all transitions. Any thoughts?
But at least this should flush out weird configs like using a sslSocketFactory with an unrelated trustManager etc. Hopefully flush out any scenarios where we can end with a broken CertificatePinner.

@swankjesse Any thoughts on whether we need more tests for weird transition of client/builder chaining?

No I don’t think so.


Make a "final view" mode that will only show Your Route and span the entire available screen space

https://github.com/KennethLuczko/myroutebuddy/pull/27


Create readme.java

Motivation for this change
Things done

[ ] Tested using sandboxing (nix.useSandbox on NixOS, or option sandbox in nix.conf on non-NixOS)
Built on platform(s)

[ ] NixOS
[ ] macOS
[ ] other Linux distributions

[ ] Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
[ ] Tested compilation of all pkgs that depend on this change using nix-shell -p nox --run "nox-review wip"
[ ] Tested execution of all binary files (usually in ./result/bin/)
[ ] Determined the impact on package closure size (by running nix path-info -S before and after)
[ ] Fits CONTRIBUTING.md.

What is the purpose or the motivation behind this PR?

Looks like an accidental PR?

DigitalOcean's Hacktoberfest "inspires" PRs like this.

What is the purpose or the motivation behind this PR?

Isn't it described in full under "Motivation for this change"?


adds length validation for parameters

Changes proposed in this PR

adds length validation for cmd, cmd-type, health-check-url, image, namespace, owner, permitted-user, run-as-user, scheduler, version

Why are we making these changes?
Prevents users from entering large data into service descriptions.

We can achieve the same thing with constraints which is more dynamic.


Sanitizing of local Python scripts corrupt the exec command

Hello! Thank you for the great solution! You rock! 👍
Look in linuxdeploy-plugin-python.sh:
sed -i '1s|^#!.*\(python[0-9.]*\)|#!/bin/sh\n"exec" "$(dirname $(readlink -f $\{0\}))/../../bin/\1" "$0" "$@"|' "$exe"

This command corrupt the exec command when arguments are used.
Example. Before:
#!/usr/bin/env python3 -u

After (-u at the end):
#!/bin/sh
"exec" "$(dirname $(readlink -f ${0}))/../../bin/python3" "$0" "$@" -u

Result:
Traceback (most recent call last):
  File "./xonsh", line 2, in <module>
    "exec" "..../python3" "$0" "$@" -u
NameError: name 'u' is not defined

The PR is a short simple fix to avoid errors — it cut the arguments. In example above the -u will disappear in exec command.

Great! Thanks!


Fix repo location false mismatch

Problem
I have my release_packages_path set to a mounted network drive e.g. 'x:/rez-studio/release', and when I run the following script to get current resolved context, I got ResourceError that saying my repository location mismatched.
>>> from rez.status import status
>>> status.context
Traceback (most recent call last):
...
rez.exceptions.ResourceError: location mismatch - requested 'x:\\rez-studio\\release',
    repository location is '\\\\server\\technical\\rez-studio\\release'

Full error
>>> from rez.status import status
>>> status.context
Traceback (most recent call last):
  File "c:\users\davidlatwe.lai\rez\packages\install\rez\2.67.0\platform-windows\payload\rez\resolved_context.py", line 615, in read_from_buffer
    return cls._read_from_buffer(buf, identifier_str)
  File "c:\users\davidlatwe.lai\rez\packages\install\rez\2.67.0\platform-windows\payload\rez\resolved_context.py", line 1666, in _read_from_buffer
    context = cls.from_dict(doc, identifier_str)
  File "c:\users\davidlatwe.lai\rez\packages\install\rez\2.67.0\platform-windows\payload\rez\resolved_context.py", line 1511, in from_dict
    variant = get_variant(variant_handle)
  File "c:\users\davidlatwe.lai\rez\packages\install\rez\2.67.0\platform-windows\payload\rez\packages.py", line 671, in get_variant
    variant_resource = package_repository_manager.get_resource_from_handle(variant_handle)
  File "c:\users\davidlatwe.lai\rez\packages\install\rez\2.67.0\platform-windows\payload\rez\package_repository.py", line 499, in get_resource_from_handle
    resource = repo.get_resource_from_handle(resource_handle)
  File "c:\users\davidlatwe.lai\rez\packages\install\rez\2.67.0\platform-windows\payload\rez\package_repository.py", line 346, in get_resource_from_handle
    raise ResourceError("location mismatch - requested %r, "
rez.exceptions.ResourceError: location mismatch - requested 'x:\\rez-studio\\release', repository location is '\\\\server\\technical\\rez-studio\\release'

Those two paths were actually pointing to the same location, one is a mounted path, another is an Windows UNC path.
The UNC path was coming from the filesystem plugin, which convert the path with rez.utils.filesystem.canonical_path,
at here 👇🏼
https://github.com/nerdvegas/rez/blob/77ada5b1a9a1793fd14a2403ebc8c5f6385599ba/src/rezplugins/package_repository/filesystem.py#L478-L480
But the other path (from ResourceHandle) that put to varified with, does not made it canonical.
https://github.com/nerdvegas/rez/blob/77ada5b1a9a1793fd14a2403ebc8c5f6385599ba/src/rez/package_repository.py#L345-L349
Hence the false alarm.
Solution
Is this PR.

The strange thing about this is that the handle's location is set from the repo's location in the first place, so how did one end up non-canonical? Possibly you've gotten a cached resolve, and the handle was constructed on a different machine, and for whatever reason, the path on that host did not resolve to the same canonical path as it does on your localhost?
In any case, I'll take the fix but I'll move this filesystem- specific code into the filesystem repo plugin itself (ie override get_resource_from_handle).

... handle's location is set from the repo's location in the first place, so how did one end up non-canonical ?

Yes,.. oh, but the handle's location in this case wasn't set from PackageRepository I think.
So I had another close look :
It was the status object loading ResolvedContext file,
https://github.com/nerdvegas/rez/blob/05fd08b90052b120598f7f58fd8b02338ed3f462/src/rez/status.py#L44
then parsing "resolved_packages" as variant_handle, (this is the part that I didn't know at the time for this PR)
https://github.com/nerdvegas/rez/blob/05fd08b90052b120598f7f58fd8b02338ed3f462/src/rez/resolved_context.py#L1504-L1511
and use it to get resource.
https://github.com/nerdvegas/rez/blob/05fd08b90052b120598f7f58fd8b02338ed3f462/src/rez/packages.py#L671
Indeed, from my RXT file, the location of resolved_packages were not canonical, so maybe the proper fix should be around here ?
https://github.com/nerdvegas/rez/blob/05fd08b90052b120598f7f58fd8b02338ed3f462/src/rez/resolved_context.py#L1511

~so maybe the proper fix should be around here ?~

Just saw the commit  72d3771, good place for the fix !

It would still be good to figure out where the non canonical path is coming
from! Ultimately all variant handles should be getting generated from the
package repo it came from... Even a handle in an rxt has come from a repo
at some point.
On Tue, 22 Sep. 2020, 16:45 David Lai<EMAIL_ADDRESS>wrote:

so maybe the proper fix should be around here ?
Just saw the commit 72d3771
https://github.com/nerdvegas/rez/commit/72d37712cc43f7a4fa3a14383c22b4f1a903de78,
good place for the fix !
—
You are receiving this because you modified the open/close state.
Reply to this email directly, view it on GitHub
https://github.com/nerdvegas/rez/pull/957#issuecomment-696539387, or
unsubscribe
https://github.com/notifications/unsubscribe-auth/AAMOUSX7KCWBJGZDWP4VXL3SHBBWZANCNFSM4RQTM3UA
.


Add valibot resolver

Adds a resolver for the new valibot library. Codesandbox link to play around with implementation.

This is awesome! Thanks for producing this. I am sure a lot of users would be happy to use this lighter version of schema validation library.

close #610

@erikshestopal thank you! 🤝

Thanks!


Tensorflow chatbot rnn model test issue

I am getting the following error while testing seq2seq rnn model for chatbot
Key embedding_attention_seq2seq/embedding_attention_decoder/attention_decoder/Attention_0/bias not found in checkpoint  [[Node: save/RestoreV2 = RestoreV2[dtypes=[DT_HALF, DT_INT32, DT_HALF, DT_HALF, DT_HALF, ..., DT_HALF, DT_HALF, DT_HALF, DT_HALF, DT_HALF], _device="/job:localhost/replica:0/task:0/device:CPU:0"](_arg_save/Const_0_0, save/RestoreV2/tensor_names, save/RestoreV2/shape_and_slices)]]  [[Node: save/RestoreV2/_1 = _Recv[client_terminated=false, recv_device="/job:localhost/replica:0/task:0/device:GPU:0", send_device="/job:localhost/replica:0/task:0/device:CPU:0", send_device_incarnation=1, tensor_name="edge_6_save/RestoreV2", tensor_type=DT_HALF, _device="/job:localhost/replica:0/task:0/device:GPU:0"]()]]

Please provide more details by filling out the issue template.
Did you use a pre-trained model?

Nagging Assignee @wt-huang: It has been 14 days with no activity and this issue has an assignee. Please update the label and/or status accordingly.


Add UI for updating subgroups of a group.

First two commits are for refactoring.
Third commit is to update code for checking whether the user being added to a group is already a member to consider only direct members.
Fourth commit is to add UI for updating subgroups of existing groups.
Fifth commit is to add UI for adding subgroups while creating groups.

Screenshots and screen captures:

Self-review checklist

[ ] Self-reviewed the changes for clarity and maintainability
(variable names, code reuse, readability, etc.).

Communicate decisions, questions, and potential concerns.

[ ] Explains differences from previous plans (e.g., issue description).
[ ] Highlights technical choices and bugs encountered.
[ ] Calls out remaining decisions and concerns.
[ ] Automated tests verify logic where appropriate.

Individual commits are ready for review (see commit discipline).

[ ] Each commit is a coherent idea.
[ ] Commit message(s) explain reasoning and motivation for changes.

Completed manual review and testing of the following:

[ ] Visual appearance of the changes.
[ ] Responsiveness and internationalization.
[ ] Strings and tooltips.
[ ] End-to-end functionality of buttons, interactions and flows.
[ ] Corner cases, error conditions, and easily imagined bugs.

There is still some work left -

Some live-update work like enabling/disabling the settings if permission changes due to updating subgroups.
Currently the typeahead shows all the user groups. We can hide the groups which we do not allow to follow the DAG constraint.

Can also de-duplicate some parts of code. Might still be good for a manual testing by @alya.

I see this when trying to add a group to itself:

Will taking it out of the typeahead would be covered by the DAG constraint work? Or maybe there's a separate change to removing the group itself + subgroups that already exist?
We should also make the error message more user-friendly. I'm not sure exactly where the error is used, so I dunno if @timabbott would find it easier to suggest a string.

I actually go this when trying to add a group for the second time:

#31850 also notes a change to the placeholder text.

Will taking it out of the typeahead would be covered by the DAG constraint work? Or maybe there's a separate change to removing the group itself + subgroups that already exist?

Yes that will be covered.

We should also make the error message more user-friendly. I'm not sure exactly where the error is used, so I dunno if @timabbott would find it easier to suggest a string.

It is essentially showing that this will break the DAG constraint. But may be we can have different error messages for cases like trying to add the group itself as subgroup. Maybe we can just have these different error messages in client only, i.e. we check this at the client itself.

Fixed the bug when trying to add a group second time. It now shows a message below the input pill container.
Also, fixed the issues with group popovers which I forgot to do before.
Updated the placeholder as well.

It is essentially showing that this will break the DAG constraint. But may be we can have different error messages for cases like trying to add the group itself as subgroup. Maybe we can just have these different error messages in client only, i.e. we check this at the client itself.

Yeah, let's just open a follow-up issue to track improving the user experience for trying to violate the DAG constraint. I don't think it's a thing users will run into often... and probably the client-side thing we will end up doing might be to just not offer the current group's supergroups as options in the pill widget, rather than anything with strings.

(Leaving this for tomorrow, since I merged a PR from Shubham conflicting with this today.)

Rebased the PR.
Also, added a commit to fix the buggy behavior when pressing enter inside the pill container.

This looks great, merged, thanks @sahil839! I opened a couple follow-ups:

#32087 to track not offering supergroups of the current group in the members picker. This seems like a high priority because it's probably easy.
#32089 to track the live-update of permissions issue noted above. While it is valuable to fix, I think it's lower priority than getting the rest of the system fully working.


Add menaphite remedy to herblore

🚀 Feature Proposal
Add the possibility to create menaphite remedy potions for the herblore xp. We already have the lily of the sands drop through toa.

Duplicate of #4951


[BugFix] Fix some cancel problem in spiller

What type of PR is this：

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

Which issues of this PR fixes ：
Problem Summary(Required) ：
problem 1.
now XXXSinkOperator ans XXXSourceOperator share the same spiller
if SinkOperator is running with spill
template <class TaskExecutor, class MemGuard>
Status RawSpillerWriter::spill(RuntimeState* state, const ChunkPtr& chunk, TaskExecutor&& executor, MemGuard&& guard) {
    if (_mem_table == nullptr) {
        _mem_table = _acquire_mem_table_from_pool();
    }
    >>> runing here
    RETURN_IF_ERROR(_mem_table->append(chunk));

    if (_mem_table->is_full()) {
        return flush(state, std::forward<TaskExecutor>(executor), std::forward<MemGuard>(guard));
    }

    return Status::OK();
}

when source operator call cancel. the _mem_table will be reset it will cause some problem
problem 2:
if Source Operator is finished. and closed. at this time. SinkOperator call set_finishing. the set_flush_all_call_back will be called and submit a task. but at this time sink operator pending finish is not true.
    Status set_flush_all_call_back(const FlushAllCallBack& callback, RuntimeState* state, IOTaskExecutor& executor,
                                   const MemTrackerGuard& guard) {
        auto flush_call_back = [this, callback, state, &executor, guard]() {
            RETURN_IF_ERROR(callback());
            if (spilled()) {
                RETURN_IF_ERROR(_acquire_input_stream(state));
                RETURN_IF_ERROR(trigger_restore(state, executor, guard));
            }
            return Status::OK();
        };
        return _writer->set_flush_all_call_back(flush_call_back);
    }

possiable stack:
*** Aborted at<PHONE_NUMBER> (unix time) try "date -d @1681279903" if you are using GNU date ***
PC: @          0x36302a0 starrocks::spill::RawSpillerWriter::spill<>()
*** SIGSEGV (@0x18) received by PID 559052 (TID 0x7f83d5fde640) from PID 24; stack trace: ***
    @          0x68527ba google::(anonymous namespace)::FailureSignalHandler()
    @     0x7f85527bb520 (unknown)
    @          0x36302a0 starrocks::spill::RawSpillerWriter::spill<>()
    @          0x3631d55 starrocks::spill::Spiller::spill<>()
    @          0x362c600 starrocks::SpillableChunksSorterFullSort::update()
    @          0x38d3737 starrocks::pipeline::PartitionSortSinkOperator::push_chunk()
    @          0x3906032 starrocks::pipeline::SpillablePartitionSortSinkOperator::push_chunk()
    @          0x39202f4 starrocks::pipeline::PipelineDriver::process()
    @          0x390f0e0 starrocks::pipeline::GlobalDriverExecutor::_worker_thread()
    @          0x59eaa3b starrocks::ThreadPool::dispatch_thread()
    @          0x59e51ba starrocks::Thread::supervise_thread()
    @     0x7f855280db43 (unknown)
    @     0x7f855289fa00 (unknown)
    @                0x0 (unknown)

*** Aborted at<PHONE_NUMBER> (unix time) try "date -d @1681216315" if you are using GNU date ***
PC: @          0x4da8b45 starrocks::ColumnVisitorMutableAdapter<>::visit()
*** SIGSEGV (@0x0) received by PID 3340 (TID 0x7fbc61cc7700) from PID 0; stack trace: ***
    @          0x65b8612 google::(anonymous namespace)::FailureSignalHandler()
    @     0x7fbcca6db630 (unknown)
    @          0x4da8b45 starrocks::ColumnVisitorMutableAdapter<>::visit()
    @          0x32c2bfc starrocks::ColumnFactory<>::accept_mutable()
    @          0x4da8528 starrocks::serde::ColumnArraySerde::deserialize()
    @          0x3b47ccc starrocks::spill::ColumnarSerde::deserialize()
    @          0x3b4a53d starrocks::spill::UnorderedInputStream::get_next()
    @          0x3b4c0ab starrocks::spill::BufferedInputStream::prefetch()
    @          0x3b48b67 starrocks::spill::OrderedInputStream::prefetch()
    @          0x3a569ca _ZNSt17_Function_handlerIFvvEZN9starrocks5spill13SpillerReader15trigger_restoreIRNS2_14IOTaskExecutorERKNS2_15MemTrackerGuardEEENS1_6StatusEPNS1_12RuntimeStateEOT_OT0_EUlvE_E9_M_invokeERKSt9_Any_data
    @          0x562d3c0 starrocks::PriorityThreadPool::work_thread()
    @          0x65696a7 thread_proxy
    @     0x7fbcca6d3ea5 start_thread
    @     0x7fbcca3fcb0d __clone
    @                0x0 (unknown)

Checklist:

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

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

Bugfix cherry-pick branch check:

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

[x] 3.0
[ ] 2.5
[ ] 2.4
[ ] 2.3

@Mergifyio backport branch-3.0


Change Headers forEach parameter order to match mozilla/chrome.

Mozilla and chrome use Value,Key parameter order.  Github fetch uses Key,Value parameter order.  This causes the developer to test for polyfill and then switch the parameter order with extra code, which could be avoided.

The polyfill provides the forEach method only because we can't polyfill the new ES6 iterable syntax.
@annevk Is Headers#forEach a standard method that should be supported? It isn't in the Fetch spec, and it does not exist in Firefox, but it does exist in Chrome's implementation.
Firefox Nightly
h = new Headers()
h.append('one', 1)
h.append('two', 2)
h.forEach(console.log.bind(console))
// => TypeError: h.forEach is not a function

Chrome
h.forEach(console.log.bind(console))
// => 1 one Headers {}
// => 2 two Headers {}

It is in the Fetch spec. It is implied by http://heycam.github.io/webidl/#idl-iterable (as is entries, keys, and values).

Thanks everyone.


milestone not created after assigning an issue a new cycle in linear

https://github.com/calcom/cal.com/issues/6702

i dont think this works 100% yet @tedspare


Fix [GitlabPipeline] not found repo service test

Resolves #5282 via option 1 described in that thread
Mutually exclusive alternative to #5537

Messages

:book:
:sparkles: Thanks for your contribution to Shields, @calebcartwright!

  Generated by :no_entry_sign: dangerJS against 95b92b961de226d3b031de9faf027b605bbe8d79

Thanks for moving this along. Personally I think this is the lesser of 2 evils when compared to the additional complexity/performance overhead of #5537 just to provide a better error message. Lets have a comment explaining why "inaccessible" is the expected message for not found in this case though because it is not standard procedure.

Personally I think this is the lesser of 2 evils

I'd agree with this and the suggested commentary, will update accordingly


Fix spelling error in swap_arc.rs

Also, it seems like the /* / comment which is probably supposed to go around the entire file doesn't work, because inside there are other / */ comments (the first part gets interpreted as part of the comment, the second ends it)

Thx for this! :)


Fixed Hamburger visibility for dark mode

Title and Issue number

Title :Fixed Hamburger visibility for dark mode
Issue No. :#399
Code Stack : React,Antd
Close #<issue_no>

Checklist:

[] I have mentioned the issue number in my Pull Request.
[] I have commented my code, particularly in hard-to-understand areas
[] I have created a helpful and easy to understand README.md
[] I have updated the Index.html file for my contribution

conflicts @rutupatel53

conflicts @rutupatel53

hey,Please check once again now there is no conflicts there.

i have resolved conflicts, i don't know why on your github it saws conflicts if any mistake from my side please suggest me.


Need help solving this crash

Input code:
Controller.getInstance().run(arrayOf("-i",
inputs[0],
"-c",
"copy",
"-bsf:v",
"h264_mp4toannexb",
"-f", "mpegts",
inputs[0].replace("STOR", "MUTE_STOR"
).replace(".mp4", ".ts")
));
Error:                                                                           java.lang.UnsatisfiedLinkError: dalvik.system.PathClassLoader[DexPathList[[zip file "/data/app/[]-2/base.apk"],nativeLibraryDirectories=[/data/app/[]-2/lib/arm64, /data/app/[]-2/base.apk!/lib/arm64-v8a, /system/lib64, /vendor/lib64, /system/vendor/lib64, /product/lib64]]] couldn't find "libffmpeg.so".
I copied the command from the ffmpeg website. The example of this library works fine.
Why is this error happening? Is because ffmpeg is disabled in the build script? Does this project compile every functionality of ffmpeg?

Can you tell me the following

what is the device you are testing this on?
Have you tried the sample command on README?
What do you mean "ffmpeg is disabled in the build script"?

I tested on Nexus5x with Android 6 and Huawei p9 Lite with Android 7. In your tutorial for building the library, in the build script  ffmpeg is disabled. Could be related to that line?
I tried the sample from README and it works fine.

As you mention, the error says

couldn't find "libffmpeg.so".

I assume you are not using the library from jcenter, but rebuilding it.
This means that Android is not able to find the library in the libs directory.
Can you list the libs directory here?

No, I use the library from jcenter as is described in ReadME. I just added compile "...." in the build.gradle of theapp and jcenter in the build.gradle of the project.

Can you please list your libs directory
On Wed 28 Mar, 2018, 11:34 AM andrevdk<EMAIL_ADDRESS>wrote:

No, I use the library from jcenter as is described in ReadME. I just added
compile "...." in the build.gradle of theapp and jcenter in the
build.gradle of the project.
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/madhavanmalolan/ffmpegandroidlibrary/issues/13#issuecomment-376771907,
or mute the thread
https://github.com/notifications/unsubscribe-auth/ACA3FS7TPq080X4ODWGnjfPTCym3yFpgks5tiyf7gaJpZM4S85jM
.

I'm getting the same crash. I have no libs directory. Just added the dependency, compiled, then tested the script on a video I recorded.
private void processVideo(File videoFile) {
    File file = new File(Environment.getExternalStoragePublicDirectory(
            Environment.DIRECTORY_MOVIES), "instgram-sharer");
    if (!file.mkdirs()) {
//      Log.e(LOG_TAG, "Directory not created");
    }

    Log.v("test-tag", String.valueOf(file));

    Controller.getInstance().run(new String[]{
      "-y",
      "-i",
      videoFile.getAbsolutePath(),
      "-vcodec",
      "copy",
      "-an",
      file.getAbsolutePath(),
    });
  }

The variable file seems to be a directory. The last argument should be a
path to a file, not a dir (it is okay if the file doesn't exist, it will be
created). It is also preferable to give the file the appropriate extension.
On Mon 16 Apr, 2018, 1:46 AM Keith Holliday<EMAIL_ADDRESS>wrote:

I'm getting the same crash. I have no libs directory. Just added the
dependency, compiled, then tested the script on a video I recorded.
private void processVideo(File videoFile) {
File file = new File(Environment.getExternalStoragePublicDirectory(
Environment.DIRECTORY_MOVIES), "instgram-sharer");
if (!file.mkdirs()) {
//      Log.e(LOG_TAG, "Directory not created");
}
Log.v("test-tag", String.valueOf(file));

Controller.getInstance().run(new String[]{
  "-y",
  "-i",
  videoFile.getAbsolutePath(),
  "-vcodec",
  "copy",
  "-an",
  file.getAbsolutePath(),
});

}
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/madhavanmalolan/ffmpegandroidlibrary/issues/13#issuecomment-381434744,
or mute the thread
https://github.com/notifications/unsubscribe-auth/ACA3FcGEmnvEFI3mJHUUTUmXZ_lIDuMBks5to6qqgaJpZM4S85jM
.


Backport of #475 and prepare release 2.1.3

Backport of #475 to 2.1-rc branch
Bump version to 2.1.3

Shouldn't we ship #474 as well ?

Shouldn't we ship #474 as well ?

👍, I added it


Reset table display

Hi
I've reset my table programmatically by using handleSearch('') to clear the search so that all rows are displayed. That works fine but now I need to clear the users input from the search box. Is there a   way to do that?
Thanks

hi @mjmhall, sorry for lateyl reply. I'll fix it in recent. Thanks

@mjmhall, released on v2.7.0.

Hi @AllenFang
Thanks, all working as expected.


Can't switch between languages

In GitLab by @frons79 on Jan 30, 2023, 06:53
Where should one click to select one of the alternative languages?

In GitLab by @Asacolips on Jan 30, 2023, 14:58
@frons79 systems and modules will use whatever interface language you've selected in the Foundry core settings for your world. If you've selected one of the languages that Dungeon World supports out of the box (or supports via a separate module, like the German translation) it will use the language that was selected.
Here's a quick example from the Wiki. https://foundryvtt.wiki/en/languages#changing-the-language
I'm going to go ahead and close this issue since it's a Foundry core feature and out of scope for the DW system.


Record current user to DB when performing insert

This is a building block for our auth system, demonstrating how to record an attribute such as username or email from a JWT claim into a DB record when POSTing to the API.
This proves out the PostgREST side of the functionality, still need to work out the details of exactly how to share secrets so that PostgREST can authenticate a JWT issued by Keycloak and then update the Elm UI to post comments instead of regulations.

This is fully connected to the Elm UI and has API tests.
Authentication is done via JWT.
user_email is extracted from the JWT by a trigger, and created_at timestamp and uuid are filled in by the trigger as well. The authenticated user only has permissions for select and insert, and the trigger raises an exception if the authenticated user tries to send values for user_email, created_at, and uuid. So security is there, although the Swagger documentation doesn't correctly show that DELETE and PATCH are not allowed and only message is allowed on POST. There are cucumber API tests that exercise both successful and rejected POSTS.
The Elm http code was reworked to stop doing a double fetch after the post and instead use the entity returned in the response body to update the SPA model data structure.
Future enhancements needed are to show snackbar with error message when POST fails (right now this normally happens due to JWT token expiration after a few minutes). Also some Elm work is needed to correctly handle logged-in status and refresh JWT token or update state to loggedout when token expires.


Kerbalism Default Profile require CommunityResourcePack starting from version <IP_ADDRESS>

As the title say. Thanks a lot for everything!

Just the profile, not the whole mod?

Correct.


Update plot_who_can_still_win_wdc.py

Change 'sprint' to 'sprint_shootout'

Hey, sorry for the late response to this. This "sprint" vs "sprint_shootout" thing might actually have more implications than just this one example. I need to check some stuff, and I'll get back to you about this example.
Might take a bit, though, because I've got way too much to do right now.

Sorry that this took so long. I really should have merged this months ago.


Changes to support NET backend E2E test

Changes to support NET backend E2E test
Update E2E tests with updated test from test App

Created #685 to remove the redundant changes in this pull request. Closing this pull request


Update delete-site-collection.md

Add guidance around ramifications of deleting the root site collection.

@nenonix @JohanFreelancer9 Copy editing is needed for this PR. Thanks.

@petey121175  Changes look correct. Could you please review and merge? Thanks!


[fix][client] Fix incorrect out-of-order check for chunked message in consumerImpl

Fixes #16796
Motivation
There is a incorrect out-of-order check for chunked message in ConsumerImpl. For the last check should compare the result of chunkedMsgCtx.chunkedMsgBuffer.readableBytes() + compressedPayload.readableBytes() with TotalChunkMsgSize instead of ChunkId with TotalChunkMsgSize.
Modifications
Fix the out-of-order check for chunked message in ConsumerImpl.
Documentation
Check the box below or label this PR directly.
Need to update docs?

[ ] doc-required
(Your PR needs to update docs and you will update later)

[x] doc-not-needed
(Please explain why)

[ ] doc
(Your PR contains doc changes)

[ ] doc-complete
(Docs have been already added)

Could you please add a test to cover the new change?

Hi, this out-of-bounds check will not be triggered in the correct client implementation. It will only be triggered if the producer client implement does not set the TotalChunkMsgSize correctly. So I think it's not neccessary to add a test.

BTW, it's not a serious bug that we don't need to include it in Pulsar 2.11.0 in a hurry. Because with the existing code, msgMetadata.getChunkId() >= msgMetadata.getTotalChunkMsgSize() always returns false unless each chunk has only 1 byte.

In this case, we should not check the size here. Instead, if you tend to validate whether the total_chunk_msg_size is right, you should check it when the chunked message is complete.

Hi @BewareMyPower . IIUC, This approach has the same effect as this PR.
        if (chunkedMsgCtx == null || chunkedMsgCtx.chunkedMsgBuffer == null
                || msgMetadata.getChunkId() != (chunkedMsgCtx.lastChunkedMessageId + 1)
                || chunkedMsgCtx.chunkedMsgBuffer.readableBytes() + compressedPayload.readableBytes()
                > msgMetadata.getTotalChunkMsgSize()) {

If we reach the last validation: chunkedMsgCtx.chunkedMsgBuffer.readableBytes() + compressedPayload.readableBytes()                 > msgMetadata.getTotalChunkMsgSize(), that means we are handling the last chunk.

requested changes

Hi, thanks for your review. The problem for TotalChunkMsgSize  will be caused by the message with incorrect metadata, which is caused by the incorrect implementation of the producer client. So I think it should check each chunk because it's not necessarily only the last chunk will cause the problem.

IIUC

Hi, the rebase is done.

Could you rebase the master branch ？

Hi, the rebase is done.

requested changes

Hi, thanks for your review. The problem for TotalChunkMsgSize  will be caused by the message with incorrect metadata, which is caused by the incorrect implementation of the producer client. So I think it should check each chunk because it's not necessarily only the last chunk will cause the problem.

out-of-order chunks would not make the total bytes greater than the total_chunk_msg_size, we should only check chunk id here.
If the total size of chunkedMsgBuffer was greater than the total_chunk_msg_size field, which is set by producer, it might be caused by the corrupted message metadata or wrong implementations of producer. (e.g. there are two chunked messages with the same UUID and those chunks are mixed)
In this case, we should not check the size here. Instead, if you tend to validate whether the total_chunk_msg_size is right, you should check it when the chunked message is complete.
        if (msgMetadata.getChunkId() != (msgMetadata.getNumChunksFromMsg() - 1)) {
            /* ... */
            return null;
        }

        if (chunkedMsgCtx.chunkedMsgBuffer.readableBytes() != msgMetadata.getTotalChunkMsgSize()) {
            log.error("Received a chunked message whose size is {} while the total_chunk_msg_size field is {}",
                    chunkedMsgCtx.chunkedMsgBuffer.readableBytes(), msgMetadata.getTotalChunkMsgSize());
            chunkedMsgCtx.chunkedMsgBuffer.release();
            compressedPayload.release();
            // TODO: we need to remove the current chunkedMsgCtx, maybe we should throw an exception here?
            return null;
        }

If the total

Hi, thanks for your review. The problem for TotalChunkMsgSize will be caused by the message with incorrect metadata, which is caused by the incorrect implementation of the producer client. So I think it should check each chunk because it's not necessarily only the last chunk will cause the problem.

@RobertIndie @Gleiphir2769 In short, I think there is no need to check the chunk msg size.
I guess the original code of msgMetadata.getChunkId() >= msgMetadata.getTotalChunkMsgSize() might be msgMetadata.getChunkId() >= msgMetadata.getNumChunksFromMsg() to check if the chunk id is invalid. See the following log:
https://github.com/apache/pulsar/blob/2e8bd3d7b17190d6fb45d5b35eff598948975385/pulsar-client/src/main/java/org/apache/pulsar/client/impl/ConsumerImpl.java#L1439-L1441
Intuitively, the "total-chunks" should be the number of chunks, but getTotalChunkMsgSize() might be somehow misleading. I believe the original purpose is to apply the range check for chunk id.
Back to the discussion, the total_chunk_msg_size field is designed only for a better initial size of the byte buffer, see https://github.com/apache/pulsar/blob/2e8bd3d7b17190d6fb45d5b35eff598948975385/pulsar-client/src/main/java/org/apache/pulsar/client/impl/ConsumerImpl.java#L1421-L1422
Only the 1st chunk's size is used.
To verify if a chunk is valid, we have already used uuid for it https://github.com/apache/pulsar/blob/2e8bd3d7b17190d6fb45d5b35eff598948975385/pulsar-client/src/main/java/org/apache/pulsar/client/impl/ConsumerImpl.java#L1424-L1425
If you are very suspicious about if the producer has set these metadata correctly, checking the total_chunk_msg_size is far not enough.
First, we only check num_chunks_for_msg for whether it's a chunk.
https://github.com/apache/pulsar/blob/2e8bd3d7b17190d6fb45d5b35eff598948975385/pulsar-client/src/main/java/org/apache/pulsar/client/impl/ConsumerImpl.java#L1302-L1303
However, what if

chunk_id, uuid or total_chunk_msg_size was not set but num_chunks_from_msg was set?
uuid fields are different among the chunks of the same message?
total_chunk_msg_size fields are different among the chunks of the same message?

In these cases above, we should fail fast instead of only logging a line and skip these chunks. These error cases should be detected in the test phase. It's an ERROR, not an EXCEPTION.
We check the order of chunk id because even if the producer has set chunk related metadata correctly, if there is a bug at broker side, which might be caused by a rare case when dispatching messages, the chunks might be out or order. Discarding them might be helpful to find the bug so that we can fix it in broker.

In short, I think there is no need to check the chunk msg size.

You're right. If we need to give the client the responsibility to check the correctness of the metadata or the correctness of the client's implementation, then many things need to be checked.

I guess the original code of msgMetadata.getChunkId() >= msgMetadata.getTotalChunkMsgSize() might be msgMetadata.getChunkId() >= msgMetadata.getNumChunksFromMsg() to check if the chunk id is invalid.

I think we can change this PR by removing this validation to not confuse other developers. This validation must be false. It's better to remove such redundant validation. @Gleiphir2769 @BewareMyPower

I agree, we can simply remove this line.
Actually, when I migrated the chunking feature into C++ client, I only checked the chunk id and the current number of chunks. Maybe this implementation would be better
https://github.com/apache/pulsar/blob/68e454544d45734129e67ab3032eae3e40ff664c/pulsar-client-cpp/lib/ConsumerImpl.h#L240
https://github.com/apache/pulsar/blob/68e454544d45734129e67ab3032eae3e40ff664c/pulsar-client-cpp/lib/ConsumerImpl.h#L262-L264
https://github.com/apache/pulsar/blob/68e454544d45734129e67ab3032eae3e40ff664c/pulsar-client-cpp/lib/ConsumerImpl.cc#L354-L355

In short, I think there is no need to check the chunk msg size.

You are right, the check for totalchunk is no need.

This validation must be false. It's better to remove such redundant validation.

I agree, it's better to remove it because even in original intention of original code, msgMetadata.getChunkId() >= msgMetadata.getNumChunksFromMsg() is also redundant.

We should also change the log in the if block as well.

This reminds me, thanks. I will do this change.
@BewareMyPower @RobertIndie

@Gleiphir2769 Please change the PR title.

@Gleiphir2769 Please change the PR title.

OK, it's done. @RobertIndie

/pulsarbot run-failure-checks

@Technoboy- Could this PR be included in 2.11.0 release? If not, we can add a release/2.11.1 label for it.

@Technoboy- Could this PR be included in 2.11.0 release? If not, we can add a release/2.11.1 label for it.

Will cherry-pick to 2.11.0


https://shrinkme.info/

Link
https://shrinkme.info/
Version
Manifest-v3
What browser(s) are you using?
Chrome browsers (includes brave, edge, opera, etc)
What platform are you using?
Computer (Windows, Linux, MacOS)
(Optional) Anything else?
No response

Dupe #1226


add reaction methods to prototype

Added the four reaction methods as specific by slack's RTM api: https://api.slack.com/methods

I tested postReactionToChannel / removeReactionFromChannel work perfectly to me :) Nice additions!

The master has changed, could you please update your pr.


[BUG] Modeling sale prices on cart items is inconsistent.

:bug: Bug report
Current Behavior

Cart item prices and discounts do not include the product sale price, only cart coupon discounts.
Expected Behavior

Cart item prices and discounts should only include product discounts.
Minimal reproduction of the problem with instructions

What is the motivation / use case for changing the behavior?

I want to show the sale prices on cart items.

Cart item prices do not include discounts; cart discounts are provided as an array.


Text Extractor: Change language by switching input method.

Description of the new feature / enhancement
Change language by switching input method. When your input method switched to English, it will recognize English text.
Scenario when this would be used?
When there are different languages on your screen, and you don't want to change the language manually.
Supporting information

Try to copy this text by Text Extractor. It's inconvenient.

FYI there is a current shortcut which is number 1 to select the first language 2 to select the second etc.

Yes, but you may forget what number 5 or 6 is when there are lots of languages.

Can you send more details about your setup so I can better understand expectations.

What languages do you have installed?
What is your Windows display language?
What is your selected keyboard language?
What have you set as the default language in the PowerToys Text Extractor Settings?
What is the default selected language on Text Extractor?
What do you expect to the be default language?

/needinfo

English (United States), Chinese (Traditional, Hong Kong SAR), Chinese (Simplified, China), Japanese
English (United States)
English (United States)
English (United States)
English (United States)
English (United States)


[qtdeclarative] Build error

Host Environment

OS: [e.g. Windows/Linux etc...]
Compiler: revision

To Reproduce
Steps to reproduce the behavior:
./vcpkg install xxxx
Failure logs

Cut and paste the appropriate build messages from the console output.
Attach every failure log file mentioned in the console output.

Additional context
Add any other context about the problem here, such as what you have already tried to resolve the issue.

Please use the autogenerated issue body mentioned in the console.

@Talaqalotaibipm, Guess you may encountered the same problem with https://github.com/microsoft/vcpkg/issues/30446. If not, please reactive this issue with full failure logs.