Implemented ResetSearch and allow action chaining of FindNext and FindPrevious

This is a small feature to reset previously initiated searches and to use FindNext and FindPrevious in chained actions.
Personally I never could get used to use different shortcuts for initiating and continuing a search. (First Ctrl-f, then Ctrl-n or Ctrl-p)
Assuming that the option hlsearch is set to false, my preferred workflow is:

Initiation of a search:

Ctrl-f (to open the search query box in the command bar)
Enter the search term
Press Enter to start the search
Expectation: The first occurrence of the search term is being highlighted

Continuation of a previously initiated search:

Just press Enter to continue the search
Expectation: The next occurrence of the search term is being highlighted.
You can repeat this step as often as you like. Each Enter highlights the next occurrence.

Exit the search operation when you found what you are looking for

Press Esc to exit
Expectation: The search term found is still highlighted and you can continue with normal text editing.

To achieve this chaining actions seems like the way to go. Like:
"Ctrl-f": "Find",
"Enter": "FindNext|InsertNewline",

But this didn't work, since BufPane.FindNext() and BufPane.FindPrevious() always return true, which prevents all subsequent actions from being executed.
I'm not sure if this is intentional for some reason. It seems more likely that this case was omitted or forgotten because it generally excludes the possibility of chaining actions.
Buffer.FindNext() handles the case of a search term being empty. But it would also reset the selection when adding a return false there.
So adding a guard clause at the top of the function may be the best solution and should not break any potential user bindings out there.
The missing piece left was to add ResetSearch() which allows to exit a previously initiated search. Like:
"Esc": "ResetSearch|RemoveAllMultiCursors|Escape",

Just as a bonus:
The following snippet adds a visual representation for being in search mode to the status line, which is IMHO quite nice.

micro.SetStatusInfoFn("initlua.tabSearch")

function tabSearch(buf)
    if buf.LastSearch == '' then
        return ''
    end
    return string.format(' [search=%s]', buf.LastSearch)
end

Looks good to me.

But this didn't work, since BufPane.FindNext() and BufPane.FindPrevious() always return true, which prevents all subsequent actions from being executed.
I'm not sure if this is intentional for some reason. It seems more likely that this case was omitted or forgotten because it generally excludes the possibility of chaining actions.

Just omitted, I believe. Like in the vast majority of actions. I wrote about it a long time ago in https://github.com/zyedidia/micro/issues/2755#issuecomment-1436000051 (and I still think it would be good to improve all those actions as well).

Just omitted, I believe. Like in the vast majority of actions. I wrote about it a long time ago in #2755 (comment) (and I still think it would be good to improve all those actions as well).

How about now and here? Otherwise it will be a good idea/intention, but not more and we forget about it again.

How about now and here? Otherwise it will be a good idea/intention, but not more and we forget about it again.

Absolutely.

No worries, we're not in hurry.

How about now and here? Otherwise it will be a good idea/intention, but not more and we forget about it again.

FYI I'm gonna push a PR soon.

See #3352.


Trait Association Search data connection

After merging #77 (Trait search), the GitHub hosted instance (dev.soybase.org) is giving "Failed to load data" at https://dev.soybase.org/tools/search/trait.html . When I serve the same branch "main" locally, I don't see the error; and the gene search component is fine (locally and at dev.soybase.org).
I am guessing the problem has to do with the theme not being updated at the GitHub instance, but I don't know. Paging @That-Thing and @nathanweeks to help figure this out.

Right, the _themes/jekyll-theme-legumeinfo submodule needs to be updated to point to the latest commit in the upstream repository, e.g.:
git submodule update --remote _themes/jekyll-theme-legumeinfo
git commit -m 'update theme submodule' _themes/jekyll-theme-legumeinfo
git push origin my-branch
... submit PR ...

Thanks. That seemed to work fine. I'll try to be in the habit of checking this going forward.


Query on setting the default command shell

Hi,
I came across an issue with running storybook which is dependant on this npm.
The issue lies in my IT restricting powershell...
I would apreciate some help letting me know how to set a diffrent shell for the use (the command arg in the image attached).
Please see attachment for more details
node:internal/errors:464
    ErrorCaptureStackTrace(err);
    ^

Error: spawn UNKNOWN
    at ChildProcess.spawn (node:internal/child_process:412:11)
    at Object.spawn (node:child_process:698:9)
    at module.exports (C:\Users\akoenig\WORKSPACE\storybook-angular-testing-master\node_modules\better-opn\node_modules\open\index.js:175:34) {
  errno: -4094,
  code: 'UNKNOWN',
  syscall: 'spawn'
}

P.s.
I tried setting the defaut shell for npm but this had no effect...if anyone knows which config to edit and how so the command will path to another shell I would really appreciate the help.
Edit:
I tried to manually tweak the code but this failed,I lack the knowledge to make this work right

Hi @Darkmift,
Thanks for opening a bug-ish report.
better-opn only kicks in when it's run on macOS (darwin)
https://github.com/michaellzc/better-opn/blob/2594401bfabcb6d0ad01f76c32f273533dcdfb04/src/index.js#L53-L55
In your case, which is windows, it will always fallback to using the upstream https://github.com/sindresorhus/open https://github.com/michaellzc/better-opn/blob/2594401bfabcb6d0ad01f76c32f273533dcdfb04/src/index.js#L109
I suggest looking it up existing issues at sindresorhus/open, or opening a new issue against them.


adopt Code of Conduct

We should have a code of conduct to express clearly to any one looking to contribute that we intend to be a welcoming project and will enforce rules if necessary.
I suggest the Contributor Covenant, which is a well-established and well-written document:
https://www.contributor-covenant.org/version/1/4/code-of-conduct

Duplicate of #9. We have so many issues. it's hard to keep track.


JSON with comments breaks JSON.parse()

When attempting to run this plugin with a tsconfig.json that has // comments, JSON.parse() breaks.

Thanks for the report!
I will try to incoperate a jsonc-parser, that should fix the issue..

@FunctionDJ So ive managed to get a jsonc-parser working and fixed your other mentioned config issues!
Unfortunately it comes with a catch, JSON itself doesnt support natively comments and i couldnt find a decent and fast jsonc-parser that retains the comments at their exact position. The most common one from microsoft, hasnt been updated on that case since 2019.. so basically it will read a file with comments, but it wont keep them on rewriting the File.
If you got a simple & quick solution for it, feel free to create a PR.

Thanks for taking a look at this. I already thought this might be impossible to properly pull off.
I suggest that you check the json file for comments, and when found, error out and let the user know to extract the contents to a base.json file in order to not touch the comments and just write to a config.json that extends from the base one, which is what i've done.

Overall i would love to support this, so its quite sad that there is no proper Library that already does this, not even one from Micrsoft.. I will look into this further and try to contact via their git, maybe it pins out somehow!
The newest Version v0.8.4.
** Will currently remove any Comment on the jsonc/json File. **
I will leave this Issue here open, so if anyone has a Solution, please feel free to create a PR!
If not (so giving it some time), i will create a 0.8.5 with an opt-out Error if any Comment is found.
I am also considering to maybe save the comments in a seperate, so they are atleast not lost..

I would really suggest to just detect the comments and abort if they are found. Then maybe log a link to this issue or something. That's the easiest and least destructive solution right now in my opinion.

So ive been trying to fit quick Solutions but there doesnt seems to be an easy way to achieve is without basically writing another Library for this ^^
I will move forward with 0.8.5 and include an Error Notification and a Config Option.


apn Module initialisation error: Error: certificate and key do not match

I pushed success some noti but sometime it threw me this error and crash my push server. I'm using version 1.7.8. Please help!!!
apn Module initialisation error: Error: certificate and key do not match
    at validateCredentials (/home/money-sync/ml-push-notification-services-test/ml-push-notification-service/node_modules/apn/lib/credentials/validate.js:7:9)
    at /home/money-sync/ml-push-notification-services-test/ml-push-notification-service/node_modules/apn/lib/connection.js:163:5
    at _fulfilled (/home/money-sync/ml-push-notification-services-test/ml-push-notification-service/node_modules/q/q.js:854:54)
    at self.promiseDispatch.done (/home/money-sync/ml-push-notification-services-test/ml-push-notification-service/node_modules/q/q.js:883:30)
    at Promise.promise.promiseDispatch (/home/money-sync/ml-push-notification-services-test/ml-push-notification-service/node_modules/q/q.js:816:13)
    at /home/money-sync/ml-push-notification-services-test/ml-push-notification-service/node_modules/q/q.js:624:44
    at runSingle (/home/money-sync/ml-push-notification-services-test/ml-push-notification-service/node_modules/q/q.js:137:13)
    at flush (/home/money-sync/ml-push-notification-services-test/ml-push-notification-service/node_modules/q/q.js:125:13)
    at _combinedTickCallback (internal/process/next_tick.js:67:7)
    at process._tickCallback (internal/process/next_tick.js:98:9) +34ms
  apn Raising error: 513 { encoding: 'utf8',
  payload:
   { data:
      { t: 'Test mo deeplink',
        m: 'ABCxyz',
        n: 'PsM',
        ac: 4,
        l: 'https://tips.moneylover.me/add-tiki',
        ca: 'aaa' },
     aps:
      { badge: undefined,
        sound: 'default',
        alert: [Object],
        'content-available': 1,
        'url-args': undefined,
        category: undefined } },
  expiry: 0,
  priority: 10,
  retryLimit: -1,
  device: undefined,
  compiled: '{"data":{"t":"Test mo deeplink","m":"ABCxyz","n":"PsM","ac":4,"l":"https://tips.moneylover.me/add-tiki","ca":"aaa"},"aps":{"sound":"default","alert":{"body":"ABCxyz","action-loc-key":"Open"},"content-available":1}}',
  truncateAtWordEnd: false,
  _alert: { body: 'ABCxyz', 'action-loc-key': 'Open' },
  _sound: 'default',
  _contentAvailable: 1 } Device {
  token: <Buffer c8 59 fe f9 76 42 48 1f ff 82 11 76 82 fe 0b 23 b5 86 8d da da df fc c7 c5 db d0 8c 02 4b a3 4c> } +0ms
/home/money-sync/ml-push-notification-services-test/ml-push-notification-service/node_modules/q/q.js:155
                throw e;
                ^

Error: certificate and key do not match
    at validateCredentials (/home/money-sync/ml-push-notification-services-test/ml-push-notification-service/node_modules/apn/lib/credentials/validate.js:7:9)
    at /home/money-sync/ml-push-notification-services-test/ml-push-notification-service/node_modules/apn/lib/connection.js:163:5
    at _fulfilled (/home/money-sync/ml-push-notification-services-test/ml-push-notification-service/node_modules/q/q.js:854:54)
    at self.promiseDispatch.done (/home/money-sync/ml-push-notification-services-test/ml-push-notification-service/node_modules/q/q.js:883:30)
    at Promise.promise.promiseDispatch (/home/money-sync/ml-push-notification-services-test/ml-push-notification-service/node_modules/q/q.js:816:13)
    at /home/money-sync/ml-push-notification-services-test/ml-push-notification-service/node_modules/q/q.js:624:44
    at runSingle (/home/money-sync/ml-push-notification-services-test/ml-push-notification-service/node_modules/q/q.js:137:13)
    at flush (/home/money-sync/ml-push-notification-services-test/ml-push-notification-service/node_modules/q/q.js:125:13)
    at _combinedTickCallback (internal/process/next_tick.js:67:7)
    at process._tickCallback (internal/process/next_tick.js:98:9)

I have sent successfully some push notification with certificate and key, but sometime it still throw me this error

Have you tried generating a new certificate?


wordle example doesnt properly compile in playground

It doesn't like the (require "wordle-words.rkt"). Seems to be due to using --stdin flag in combination with an absolute path require
Error message is: resolve-module-path-index: can't resolve "self" with non-path relative-to: #f
A workaround at the moment is to install the library as a collection on the server

Problem related to https://github.com/racketscript/racketscript/issues/308


Prior rules/constraints not removed if bucket object deleted

Forseti version:
v2.24.2
Module:
None
Deployment Method:
Terraform (module version v5.1.3)
Issue:
When using the config validator or custom rules, if constraints/rules are deleted from the bucket, they do not get deleted from the server. For example, let's say I had a constraint at gs://${SCANNER_BUCKET}/policy-library/policies/constraints/forbid-thing-x.yaml which has been around for at least one run of Forseti. If I were to decide that I no longer want to forbid 'thing-x' and delete the constraint from the bucket (or more appropriately, from Terraform, which then itself deletes it from the bucket), it doesn't get deleted from the server, where it will then generate false reports.
This seems to stem from how the run_forseti.sh script works, specifically that L30 and L34 of the run_forseti.sh script aren't preceded by a command to delete already-downloaded rules or policies. A quick fix would be to sudo rm -r ${FORSETI_HOME}/rules/* and sudo rm -r ${POLICY_LIBRARY_HOME}/policy-library/* for rules and policies respectively, but because of the potential blast radius of using sudo rm -r, some checks to minimize said blast radius should definitely be added as well.

Hi @rux616, thanks for submitting this issue. The run_forseti.sh script has been moved to the Terraform repo. The script will delete any policy files found that do not exist on the bucket (in addition to the startup script), but the issue still exists for the rules.

Work to do - update the gsutil command to use the rsync option in the startup script and run_forseti script to delete files that don't exist on the bucket.


Send full message as details, and truncate desc.

Otherwise pagerduty can't get notified.

Thanks @davedash, I just improved this with aa30933c4c7e529e2d9748d3a706a95f6ac1f2bc to attach a bunch of other useful details. :)

Also, this PR is really old. :( Sorry about that!


Spurious validation errors from elements with required binding to custom value sets

Description
Some GECCO profiles bind certain fields to custom value set containing SNOMED codes. For instance, the Chronic Lung Disease Profile from Gecco defines a slice on Condition.code.coding which includes a required binding to the Chronic Lung Dieases value set, a value set that contains SNOMED codes. When the SNOMED codes are not loaded into the server, codes in these fields always cause a validation error, even if they are actually in the value set.
How to reproduce

Start the conformance checker without loading SNOMED (or LOINC) codes
Wait for the application to have started
Wait for some minutes until the scheduled value set expansion job have started & completed
Try to validate a valid resource that declares a profile with a required binding to a custom value set with SNOMED codes & has this field filled (e.g. this Condition from the de.gecco v. 1.0.4 package)
Outcome:

Expected: No validation errors
Actual: Validation error coming from the required binding, e.g. for the example linked above:

The code provided (http://snomed.info/sct#195967001) is not in the value set https://www.netzwerk-universitaetsmedizin.de/fhir/ValueSet/chronic-lung-diseases, and a code from this value set is required: Unknown code {http://snomed.info/sct}195967001

Note that if the validation query is made right after application start-up and before the scheduled value set expansion jobs (i.e. right after step 3), the errors are not there. Instead, the application logs messages indicating that it cannot do full validation of the relevant codes since the value sets are not expanded.

This problem arises because

the HAPI JPA server code tries to expand FHIR ValueSet resources (i.e. explicitly list the included codes) in scheduled jobs run after the application starts, and
the value set expansion for value sets containing SNOMED codes is carried out even if the SNOMED codes are not actually loaded, resulting in empty expansions, and
the core HAPI validation code still tries to check codes against required value sets, even if their expansions are empty

The result is that the validator thinks it knows the codes in a bound value set when in fact it does not, causing incorrect validation errors.
A thorough fix of this problem would require changes in the HAPI code base. To avoid these errors for now, it was decided to use a workaround that switches off the value set expansion altogether. This ensure that the validator does not attempt to validate codes against value sets (even if SNOMED is loaded).
For further background, see this discussion thread from the online FHIR community chat.

This issue has been solved in PR #3 using the workaround discussed in the Zulip thread linked in the previous comment: By configuring HAPI to defer all value set expansions and then overriding the value set expansions with a no-op, value sets are no longer expanded by the JPA terminology validation support and hence the issue is avoided (at the price of skipping these value set checks). Discussions about a "deeper" fix in HAPI is ongoing.


[TextField] rendering input type datetime-local without value makes label go on top of placeholder text

Duplicates

[X] I have searched the existing issues

Latest version

[X] I have tested the latest version

Steps to reproduce 🕹
import { TextField } from "@mui/material"

export default function NativePickers() {
	return (
		<TextField
			id="datetime-local"
			label="Next appointment"
			type="datetime-local"
			// defaultValue="2017-05-24T10:30" // from demo
			defaultValue=""
		/>
	)
}

https://codesandbox.io/s/mui-bug-input-datetime-local-mvf72n?file=/demo.js:0-263
I tried the following things:

defaultValue={undefined}
defaultValue={null}
defaultValue=""
not having defaultValue at all

the same behavior occurs with all the above.
using value instead of defaultValue results in the same behavior as well.
Current behavior 😯
When attempting not to have any initial value for datetime-local textfield, the label has a render issue and shows on top of the input. This is because it considers it as empty so it goes on top of it as usual.  It needs a simple check specifically for datetime-local to always show on top because there will always be information there. This is the same for chrome, edge, and firefox.

Expected behavior 🤔
I want to have a textfield of type datetime-local without any initial value, so that it would just display like so:
(it shows like this because i selected it so the label moves up)

Context 🔦
I want to have a datetime-local textfield without an initial value, so it would show as mm/dd/yyyy --:-- --
Your environment 🌎
codesandbox
browsers: chrome, edge, firefox

I guess now I know what this does
InputLabelProps={{
	shrink: true,
}}


Return Response for individual Operation doesn't seem to work

Please see my comment in #386.

@mzellho it seems to be working correctly.
I sent a PR to test it.

Thank you, @hbelmiro, I briefly compared your spec and application.properties to mine and couldn't spot any differences right now. I'll clone your PR and see if I can find out more. Thanks, again, for your time and the new test cases!

Hmmm...I think I spotted the difference, @hbelmiro: In testReturnResponseFalseVoid you are asserting that the method should return void and that's either the bug or the feature. I would have thought that this test would assert Response instead of void.
I understood the feature in a way that it would also return Response, regardless of the state of return-response, so it would allow having typed Responses for all the operations featuring a response but also return Response in case the operation returns a 204, so Headers, Cookies, etc. can be evaluated.
What do you think?

But that's exactly what return-response is intended for.
If you want to return Response instead of void, set return-response = true.

Well, return-response is for ALL operations and my spec holds several operations, with one being void, and for all the others I want my typed Responses.
I must have misunderstood the feature, I'm afraid.
But okay, I can also take the response and deserialize manually. However, that would be a nice thing to have, maybe I'll prepare a PR that makes use of the vendor extension I mentioned in #386.

My intention in #386 was to return Response instead of void if no return type was specified and return-response was default (false). Exactly what @mzellho was writing.
Obviously, I should've adjusted the tests as well.
What's weird to me is that where I was using it, the return types seemed to change to response, but I'll need to double check if I didn't change anything else.
So to me, the unit tests are verifying the wrong behavior, I'll try and find some time to update them.
But I guess the suggestion using the vendor extension should fix it

Thank you @lordvlad, I'll provide a PR around noon.

--> #426

Oh... I think I missed that when I reviewed https://github.com/quarkiverse/quarkus-openapi-generator/pull/386.
I don't see any problem with changing to return Response for void methods even when return-response = false.
@ricardozanini WDYT?


Is this supposed to be still v0.8.0?

https://github.com/textileio/powergate/blob/be4ce285bcd38223c4e8ba2e329f845d3a9a3249/docker/Makefile#L19

Ops, yep you're correct. I'll change in a PR now.


Decrease heroku slug size with .slugignore

As written here https://devcenter.heroku.com/articles/slug-compiler#ignoring-files-with-slugignore we can reduce the heroku slug size (which limit is 500MB) with a .slugignore file.
I think it's a good idea to ignore spec/ folders.
What do you think? Do you already use a .slugignore? Would you be interested in a PR?

A .slugignore isn't something I've yet seen used. Can you give any examples where ignoring the specs makes a good difference the eventual slug size?

We do not use heroku for every project, so it's my first time I heard about a .slugignore. I don't think spec folder will make a big difference as long as they are all text files, but I added the it because I read about it in the heroku article I linked before.
So I'm sorry but I do not have any real world example :(
I wanted to know if you ever used it and how.
You can close the issue :)
Thank for the feedback!

I've used .slugignore on a few projects such as thoughtbot.com. The biggest savings have been from other steps described in that Heroku article or https://robots.thoughtbot.com/how-to-reduce-a-large-heroku-compiled-slug-size
I could maybe see a benefit of having a .sluginore in a project that uses the --heroku flag as a way for teammates to discover more about slug maintenance but a fresh project shouldn't need it, is something that builds up later.

Hmm, yeah, tb.com is a good example. I think I'm with @croaky on not seeing a need on a new project, so I'm going to close this issue for now.
Thank you though!


MochiTextEncode - 'MochiT5Tokenizer' object has no attribute 't5xxl'

HI,
I am getting the following error even though I installed all the requirement.txt packages:
ComfyUI Error Report
Error Details

Node Type: MochiTextEncode
Exception Type: AttributeError
Exception Message: 'MochiT5Tokenizer' object has no attribute 't5xxl'

Stack Trace
  File "/home/saidp/Downloads/ComfyUI/execution.py", line 323, in execute
    output_data, output_ui, has_subgraph = get_output_data(obj, input_data_all, execution_block_cb=execution_block_cb, pre_execute_cb=pre_execute_cb)

  File "/home/saidp/Downloads/ComfyUI/execution.py", line 198, in get_output_data
    return_values = _map_node_over_list(obj, input_data_all, obj.FUNCTION, allow_interrupt=True, execution_block_cb=execution_block_cb, pre_execute_cb=pre_execute_cb)

  File "/home/saidp/Downloads/ComfyUI/execution.py", line 169, in _map_node_over_list
    process_inputs(input_dict, i)

  File "/home/saidp/Downloads/ComfyUI/execution.py", line 158, in process_inputs
    results.append(getattr(obj, func)(**inputs))

  File "/home/saidp/Downloads/ComfyUI/custom_nodes/ComfyUI-MochiWrapper/nodes.py", line 318, in process
    clip.tokenizer.t5xxl.pad_to_max_length = True

System Information

ComfyUI Version: v0.2.4-12-g669d9e4
Arguments: main.py
OS: posix
Python Version: 3.10.12 (main, Sep 11 2024, 15:47:36) [GCC 11.4.0]
Embedded Python: false
PyTorch Version: 2.5.0+cu124

Devices

Name: cuda:0 NVIDIA GeForce RTX 3090 : cudaMallocAsync

Type: cuda
VRAM Total:<PHONE_NUMBER>8
VRAM Free:<PHONE_NUMBER>
Torch VRAM Total:<PHONE_NUMBER>0
Torch VRAM Free: 19779796

Logs
2024-10-27 21:51:37,404 - root - INFO - Total VRAM 24230 MB, total RAM 96459 MB
2024-10-27 21:51:37,404 - root - INFO - pytorch version: 2.5.0+cu124
2024-10-27 21:51:37,404 - root - INFO - Set vram state to: NORMAL_VRAM
2024-10-27 21:51:37,404 - root - INFO - Device: cuda:0 NVIDIA GeForce RTX 3090 : cudaMallocAsync
2024-10-27 21:51:37,993 - root - INFO - Using pytorch cross attention
2024-10-27 21:51:38,572 - root - INFO - [Prompt Server] web root: /home/saidp/Downloads/ComfyUI/web
2024-10-27 21:51:38,842 - root - INFO -
Import times for custom nodes:
2024-10-27 21:51:38,842 - root - INFO -    0.0 seconds: /home/saidp/Downloads/ComfyUI/custom_nodes/websocket_image_save.py
2024-10-27 21:51:38,842 - root - INFO -    0.1 seconds: /home/saidp/Downloads/ComfyUI/custom_nodes/ComfyUI-MochiWrapper
2024-10-27 21:51:38,842 - root - INFO -
2024-10-27 21:51:38,845 - root - INFO - Starting server

2024-10-27 21:51:38,845 - root - INFO - To see the GUI go to: http://<IP_ADDRESS>:8188
2024-10-27 21:51:42,010 - root - INFO - got prompt
2024-10-27 21:51:42,015 - root - INFO - Initializing model...
2024-10-27 21:51:42,075 - root - INFO - Loading model state_dict from /home/saidp/Downloads/ComfyUI/models/diffusion_models/mochi/mochi_preview_dit_GGUF_Q8_0.safetensors...
2024-10-27 21:51:42,088 - root - INFO - Loading GGUF model state_dict...
2024-10-27 21:51:47,753 - root - ERROR - !!! Exception during processing !!! 'MochiT5Tokenizer' object has no attribute 't5xxl'
2024-10-27 21:51:47,754 - root - ERROR - Traceback (most recent call last):
  File "/home/saidp/Downloads/ComfyUI/execution.py", line 323, in execute
    output_data, output_ui, has_subgraph = get_output_data(obj, input_data_all, execution_block_cb=execution_block_cb, pre_execute_cb=pre_execute_cb)
  File "/home/saidp/Downloads/ComfyUI/execution.py", line 198, in get_output_data
    return_values = _map_node_over_list(obj, input_data_all, obj.FUNCTION, allow_interrupt=True, execution_block_cb=execution_block_cb, pre_execute_cb=pre_execute_cb)
  File "/home/saidp/Downloads/ComfyUI/execution.py", line 169, in _map_node_over_list
    process_inputs(input_dict, i)
  File "/home/saidp/Downloads/ComfyUI/execution.py", line 158, in process_inputs
    results.append(getattr(obj, func)(**inputs))
  File "/home/saidp/Downloads/ComfyUI/custom_nodes/ComfyUI-MochiWrapper/nodes.py", line 318, in process
    clip.tokenizer.t5xxl.pad_to_max_length = True
AttributeError: 'MochiT5Tokenizer' object has no attribute 't5xxl'

2024-10-27 21:51:47,754 - root - INFO - Prompt executed in 5.74 seconds

Attached Workflow
Please make sure that workflow does not contain any sensitive information such as API keys or passwords.
{"last_node_id":15,"last_link_id":18,"nodes":[{"id":12,"type":"Note","pos":{"0":1271,"1":-119},"size":{"0":365.5867919921875,"1":208.3488311767578},"flags":{},"order":0,"mode":0,"inputs":[],"outputs":[],"title":"Note: WIP!","properties":{},"widgets_values":["VAE decoding is extremely heavy so tiling is necessary, I have not found best settings for it yet so testing help is appreciated, you can keep decoding after sampling as the latents are still in memory to see what works.\n\nEither adjust frame_batch_size to decode less frames at once, this tends to cause frame skipping though.\n\nOr use higher batch and smaller tiles to still fit it in memory."],"color":"#432","bgcolor":"#653"},{"id":10,"type":"MochiDecode","pos":{"0":1306,"1":158},"size":{"0":315,"1":222},"flags":{},"order":6,"mode":0,"inputs":[{"name":"vae","type":"MOCHIVAE","link":17},{"name":"samples","type":"LATENT","link":12}],"outputs":[{"name":"images","type":"IMAGE","links":[18],"slot_index":0}],"properties":{"Node name for S&R":"MochiDecode"},"widgets_values":[true,false,10,160,312,0.25,0.25]},{"id":15,"type":"SaveAnimatedWEBP","pos":{"0":1776,"1":175},"size":{"0":315,"1":154},"flags":{},"order":7,"mode":0,"inputs":[{"name":"images","type":"IMAGE","link":18}],"outputs":[],"properties":{},"widgets_values":["ComfyUI",6,true,80,"default"]},{"id":8,"type":"MochiTextEncode","pos":{"0":466,"1":605},"size":{"0":400,"1":200},"flags":{},"order":4,"mode":0,"inputs":[{"name":"clip","type":"CLIP","link":8}],"outputs":[{"name":"conditioning","type":"CONDITIONING","links":[9],"slot_index":0},{"name":"clip","type":"CLIP","links":null}],"properties":{"Node name for S&R":"MochiTextEncode"},"widgets_values":["",1,true]},{"id":1,"type":"MochiTextEncode","pos":{"0":484,"1":258},"size":{"0":413.45361328125,"1":268.5947265625},"flags":{},"order":3,"mode":0,"inputs":[{"name":"clip","type":"CLIP","link":1}],"outputs":[{"name":"conditioning","type":"CONDITIONING","links":[7],"slot_index":0},{"name":"clip","type":"CLIP","links":null}],"properties":{"Node name for S&R":"MochiTextEncode"},"widgets_values":["nature video of a red panda eating bamboo in front of a waterfall",1,true]},{"id":5,"type":"MochiSampler","pos":{"0":951,"1":217},"size":{"0":315,"1":286},"flags":{},"order":5,"mode":0,"inputs":[{"name":"model","type":"MOCHIMODEL","link":16},{"name":"positive","type":"CONDITIONING","link":7},{"name":"negative","type":"CONDITIONING","link":9},{"name":"opt_sigmas","type":"SIGMAS","link":null,"shape":7}],"outputs":[{"name":"samples","type":"LATENT","links":[12],"slot_index":0}],"properties":{"Node name for S&R":"MochiSampler"},"widgets_values":[848,480,49,30,7,0,"fixed",0]},{"id":13,"type":"DownloadAndLoadMochiModel","pos":{"0":569,"1":15},"size":{"0":315,"1":174},"flags":{},"order":1,"mode":0,"inputs":[{"name":"trigger","type":"CONDITIONING","link":null,"shape":7},{"name":"compile_args","type":"MOCHICOMPILEARGS","link":null,"shape":7}],"outputs":[{"name":"mochi_model","type":"MOCHIMODEL","links":[16],"slot_index":0},{"name":"mochi_vae","type":"MOCHIVAE","links":[17],"slot_index":1}],"properties":{"Node name for S&R":"DownloadAndLoadMochiModel"},"widgets_values":["mochi_preview_dit_GGUF_Q8_0.safetensors","mochi_preview_vae_bf16.safetensors","fp16","sage_attn",false]},{"id":2,"type":"CLIPLoader","pos":{"0":-3,"1":462},"size":{"0":429.837646484375,"1":82},"flags":{},"order":2,"mode":0,"inputs":[],"outputs":[{"name":"CLIP","type":"CLIP","links":[1,8]}],"properties":{"Node name for S&R":"CLIPLoader"},"widgets_values":["mochi/t5xxl_fp16.safetensors","mochi"]}],"links":[[1,2,0,1,0,"CLIP"],[7,1,0,5,1,"CONDITIONING"],[8,2,0,8,0,"CLIP"],[9,8,0,5,2,"CONDITIONING"],[12,5,0,10,1,"LATENT"],[16,13,0,5,0,"MOCHIMODEL"],[17,13,1,10,0,"MOCHIVAE"],[18,10,0,15,0,"IMAGE"]],"groups":[],"config":{},"extra":{"ds":{"scale":0.7513148009015781,"offset":[56.258011032557285,74.05782291617514]}},"version":0.4}

Additional Context
I have t5xxl_fp16.safetensors in models/clip folder. This repo is in custom_nodes folder in ComfyUI.
Let me know if there is a fix.
Thanks!

Added compatibility for the mochi type now, as well as ability to simply use the comfy CLIPTextEncode nodes as well.


[BUG]

What is the bug?
We are currently trying to migrate the spring boot application from elasticsearch to opensearch and using the dependency of "spring-data-opensearch".
We are getting an error regarding the VersionType class when we run the application.
This is caused from the entity classes that has @Document defined in them which uses the org.springframework.data.elasticsearch.annotations.Document which is internally using VersionType class from "org.elasticsearch.index.VersionType". Which is the root cause of the issue as 'index' folder is not found in the elasticsearch dependency.
How can one reproduce the bug?
Use the spring boot parent version 2.5.13 and java version 11.
With maven dependency of "spring-data-opensearch" / 'spring-data-opensearch-starter".
Your application should have a entity file with @Document annotation. When you run the application you will see the error with VersionType class
What is the expected behavior?
Migration from elasticsearch to opensearch should not cause any issues and the transaction must be seemless
What is your host/environment?
_macOSVentura 13.2.1
Do you have any additional context?
_This issue is caused when migrating the elasticsearch to opensearch

@THEJESH19 please check the https://github.com/opensearch-project/spring-data-opensearch#compatibility-matrix, the minimal supported version is Spring Boot 3.x / Spring Data Elastic Search 5.x / Spring Framework 6.x


Added asynchronous echo example

Added an asynchronous echo example to only show completions after a given delay in time. This is useful if, for example, the completion source has latency before completion data can be filled. By doing this, typing  remains fluid and not delayed by the suggestions, and operations like copy/paste remain fast. Still, if the user stops typing for a moment and needs completion assistance, they will then pop up as expected.

I realized my logic was wrong as tab completions were crashing. I inverted the logic and it seems to work. I think i'm figuring this out - the first call is to generate the tab completions and the second call to draw a subset based on characters typed. If this is correct, I believe my logic now works. Let me know I have that correct.

Will resubmit from new branch


feat: port CategoryTheory.Functor.FullyFaithful

mathlib SHA: 70d50ecfd4900dd6d328da39ab7ebd516abe4025
Porting notes:

aesop_cat was unable to close goals that tidy was able to. I left an example proof of what tidy emits (with some cleanup).
unfold_projs is not ported. Is it an easy tactic to port over or is there a better "lean4" way? (ed: not needed)
trans doesn't seem to work with HEq (see https://github.com/leanprover-community/mathlib4/issues/1119)
Some documentation is needed for Full and Faithful. Please feel free to fill it in if you wish.

bors merge


Profile Picture

Expected Behavior
Profile Picture should be displayed beside the users name on mobile devices.
Actual Behavior
Photo does not appear or clusters together, making the UI look clunky.
Steps to Reproduce

Go to any page of the website
Notice the profile picture is too clustered together

Commit: aea45b7
Removes avatar and uses initials, width and height adjusted accordingly for mobile


[Bug]: Menu options broken when right-click on matrices in Observation matrix hub

Steps to reproduce the bug
1. Go to Observation matrix hub (tasks/observation_matrices/observation_matrix_hub)
2. Right-click on any of the available observation matrices
3. Select any of the options available

"Show" results in an error---"The page you were looking for doesn't exist" in sandbox;
"Edit" results in the same error
"Pin/Unpin" is silent, but the matrix is not added to the Pinboard
"Delete" is silent, but the matrix is not deleted

Screenshot
No response
Expected behavior
I would expect the following behaviour when selecting the options from the right-click menu:

"Show": Be directed to "tasks/observation_matrices/view/XX"
"Edit": Be directed to "tasks/observation_matrices/new_matrix/XX"
"Pin/Unpin": The matrix should get added to the pinboard (or removed if already on it)
"Delete": An "Are you sure?" dialogue should appear, if "Yes" is selected, the matrix should be destroyed.

The expected behaviour of "Show" "Edit" and "Pin/Unpin" can be achieved by clicking on the links or icon in the table showing the available matrices. However, I cannot see any other way of deleting Observation matrices, either on the Observation matrix hub, or in the edit view for the unwanted matrix.
Additional Screenshots
No response
Environment

[X] Development (native)
[ ] Development (docker)
[X] Sandbox
[ ] Production

Sandbox Used
sandfly
Version
build 2b7f7f502 (sandbox)/ v 0.22.3 (development)
Browser Used
edge (sandbox)/ firefox (development)

Interesting, I guess I never used it this way


custom coarse depth input

Does it support custom depth as base input?
e.g. I have an image and a coarse depth, how can I get the high res depth from them?

if you want to feed your own depth maps
example on the R mode line 944
# pred_depth, count_map = regular_tile(model, img, offset_x=0, offset_y=0, img_lr=img_lr)
# avg_depth_map = RunningAverageMap(pred_depth, count_map)
avg_depth_map = regular_tile(model, img, offset_x=0, offset_y=0, img_lr=img_lr)
to feed your depthmaps from folder(use the same file name structure) change it to :
pred_depth, count_map = regular_tile(model, img, offset_x=0, offset_y=0, img_lr=img_lr)
avg_depth_map = RunningAverageMap(pred_depth, count_map)
#  avg_depth_map = regular_tile(model, img, offset_x=0, offset_y=0, img_lr=img_lr)
       or simply :

         # pred_depth, count_map = regular_tile(model, img, offset_x=0, offset_y=0, img_lr=img_lr)
        # avg_depth_map = RunningAverageMap(pred_depth, count_map)

avg_depth_map = regular_tile(model, img, offset_x=0, offset_y=0, img_lr=img_lr, iter_pred=YourDepthmap here )
the code have the ability to input other depthmaps
but this is a Zoe Depth bases code so if you feed midas or any other predicted depth you will have really bad results
since they estimate depth differently. so   you need to train your own patchfusion model in that case
but if your depth maps are similar to this project you can use the code
i'm just reading the code i have not tested any of this. it's similar to  https://github.com/BillFSmith/TilingZoeDepth
but so much work put into this i mean the tiles number is far more that this , and the U4K model is really good
BTW some predictions from non 3d / realistic inputs are very blurry like a painting , this is due to the U4K model trained on 3d i think . it can be fixed if we use ZoeDepth as a base , the code have all the possibility  it's just one # away
thank you zhyever this will be put in really good use ,<3<3 , zhyever please add the # option in the code those are really good extra options !!!

Thanks for your advice and interest in our work! Please let me somehow post some explanations about this case.
Consider an hr image I and one of its tiled patch A.
As for TilingZoeDepth, the pipeline is like:
coarse_A = crop(zoe_pipe(I))
fine_A = zoe_pipe(crop(I))

where zoe_pipe is a combination of resize and ZoeDepth forward. Then, the author uses some post-optimization strategies to combine this coarse_A and fine_A.
As for PatchFusion, the pipeline is like:
coarse_A = crop(coarse_zoe_pipe(I))
fine_A = fine_zoe_pipe(crop(I))

fused_A = fusion_net(crop(I), coarse_A, fine_A, ...), where ... denotes some guidance features from coarse_zoe and fine_zoe

Finally, we could just stitch all the fused_A together without post-optimization strategies. As you could see, while we also have a coarse_A and fine_A, they are not explicitly involved in the final prediction.
However, your suggestion is still meaningful! Because for best visualization quality for users, we consider adding a blur_mask for predictions. Coarse predictions could be used to fill in the masked areas on the fly.

Thank you, this means theoretically we don't necessarily need to train fusion_net on our own data?
I would like to see how zero-shot generalization it has by providing own depth inputs. I don't have the bandwidth to try now, if someone has result please kindly share it here :)

Thanks for your advice and interest in our work! Please let me somehow post some explanations about this case.
Consider an hr image I and one of its tiled patch A.
As for TilingZoeDepth, the pipeline is like:
coarse_A = crop(zoe_pipe(I))
fine_A = zoe_pipe(crop(I))

where zoe_pipe is a combination of resize and ZoeDepth forward. Then, the author uses some post-optimization strategies to combine this coarse_A and fine_A.
As for PatchFusion, the pipeline is like:
coarse_A = crop(coarse_zoe_pipe(I))
fine_A = fine_zoe_pipe(crop(I))

fused_A = fusion_net(crop(I), coarse_A, fine_A, ...), where ... denotes some guidance features from coarse_zoe and fine_zoe

Finally, we could just stitch all the fused_A together without post-optimization strategies. As you could see, while we also have a coarse_A and fine_A, they are not explicitly involved in the final prediction.
However, your suggestion is still meaningful! Because for best visualization quality for users, we consider adding a blur_mask for predictions. Coarse predictions could be used to fill in the masked areas on the fly.

it's very insightful , and thank you for the explanation , your method is different , but i can't help but wonder ,this can be better
below is our results using something similar but with a different model   vs PatchFusion
source image RGB:https://imgur.com/u4xEuD5
our result using : https://imgur.com/CV8RGNs (you can see there is a flaw with the nose )
PatchFusion results : https://imgur.com/Zs64i3s
i know this won't do it justice ,  i just go back from a trip and will work on implementing BillFSmith masking logic to your project , as i'm sure your U4K model will give far far better results then what we are dealing with .
i think the blur_mask is the achilles heel here
this is without it : https://imgur.com/YQqLUTk


Update multires-recon recursion

The structure of the mult-resolution recursion made it impossible to de-allocate the initial condition arrays before running the reconstruction.  I pushed the recursion from recon() into the cython/cmdline interface functions.

Now svmbir.recon() calls ci.multires_recon(), instead of calling ci.fixed_resolution_recon().
Now the initial condition from the lower resolution is de-allocated before starting the current resolution recon.
I made this change for both cython and command line interface functions.
Also reordered the recon() argument order to group them more logically, IMO

The changes passed the unit tests.
Memory usage for a TEM problem reduced from 80G to 30G.

Jordan, This seems like a major change. Should we get Wenrui and Soumendu to test this before I merge the pull request? Charlie

Sure that's fine. I ran the unit tests and multi-resolution demos on linux and MacOS under icc,gcc,clang so I'm not too worried, but other testing is welcome.

OK, let me just do the merge because this is a pretty significant bug. I bet Venkat was running into this.
Soumendu and Wenrui, please test this new version ASAP if you can. Charlie

BTW, a consequence of this change is that some code is duplicated in the command line and cython interface modules. I didn't see a way around this.


chore: Tune operator logging

Add ready after seconds metric as a structured log value
Set log level to debug when printing trait details in reconcile loop

Release Note
NONE

The Apply trait ... info logging bloats the operator logs. We have seen this in dev sandbox performance testing with many integrations being reconciled


User Warning concerning casting in wph_operator

Dear Bruno,
Nice tool! Thanks so much.
I'm playing with the denoising.py example, and I get this
pywph/pywph/wph_operator.py:803: UserWarning: Casting complex values to real discards the imaginary part (Triggered internally at /gpfs7kro/gpfslocalsup/src/pub/anaconda-py3/2022.05/pytorch-1.13.0+py3.10.8/pytorch-1.13.0/aten/src/ATen/native/Copy.cpp:250.)
  xpsi1_k1 = xpsi1_k1 - mean1.to(xpsi1_k1.dtype) # Consistent dtype needed

do not know if I should do something...
Sincerely yours

Hi Jean-Eric,
Thanks for raising this issue. This warning shouldn't be a problem and you can safely ignore it. It arises from the casting of complex-valued tensors to real-valued ones, but this (normally) occurs at a stage where imaginary parts are zero anyway.
I will better handle this case in the code in future iterations of the package.
Best,
Bruno


Trace for LitePullConsumer may not work correctly

BUG REPORT

Please describe the issue you observed:
Trace message are built when PullTaskImpl finishes executing.
https://github.com/apache/rocketmq/blob/b136f9bb6725867dcc5d00798addd0de7382ffb3/client/src/main/java/org/apache/rocketmq/client/impl/consumer/DefaultLitePullConsumerImpl.java#L952
But in fact the message is only stored in the local cache, and only when poll() is called, the user's program will actually consume the messages, so I think the traces message should be built in poll()
https://github.com/apache/rocketmq/blob/b136f9bb6725867dcc5d00798addd0de7382ffb3/client/src/main/java/org/apache/rocketmq/client/impl/consumer/DefaultLitePullConsumerImpl.java#L542
Will there be any problem with the implementation here? @zhangjidi2016

Good catch，Could you submit a PR to solve this issue？

Good catch，Could you submit a PR to solve this issue？

@zhangjidi2016  Ok, I will fix it.


torch.compile is not working with torchaudio.functional.lfilter

🐛 Describe the bug
The new torch.compile feature does not work with torchaudio.functional.lfilter. My understanding is that torch.compile needs to know the shapes of the tensor, but these shapes are not fixed as the filter is applied recursively to any possible waveform.

Minimal error code:
import os
import torch
import torchaudio

# Set the environment variables to enable more information in error logs
os.environ["TORCH_LOGS"] = "+dynamo"
os.environ["TORCHDYNAMO_VERBOSE"] = "1"

# Define some tensors
a = torch.Tensor((1, 0))
b = torch.Tensor((1, 0))
waveform = torch.ones((1, 1, 16000))

# Define the function to compile
def my_lfilter(x):
    return torchaudio.functional.lfilter(x, a, b)

# Classic non compiled filtering
filtered_waveform = my_lfilter(waveform)

# Compiling the function, this is passing
my_lfilter_compiled = torch.compile(my_lfilter)

# The error is here, when calling the compiled function
filtered_waveform_compiled = my_lfilter_compiled(waveform)

Error:
/home/julien/.pyenv/versions/pulse/bin/python3 /home/julien/Desktop/Pulse/working_repo/pulse_github/pulse_ai/training_recipes/minimal_compile_error.py
Traceback (most recent call last):
  File "/home/julien/Desktop/Pulse/working_repo/pulse_github/pulse_ai/training_recipes/minimal_compile_error.py", line 27, in <module>
    filtered_waveform_compiled = my_lfilter_compiled(waveform)
  File "/home/julien/.pyenv/versions/pulse/lib/python3.10/site-packages/torch/_dynamo/eval_frame.py", line 328, in _fn
    return fn(*args, **kwargs)
  File "/home/julien/.pyenv/versions/pulse/lib/python3.10/site-packages/torch/_dynamo/eval_frame.py", line 490, in catch_errors
    return callback(frame, cache_entry, hooks, frame_state)
  File "/home/julien/.pyenv/versions/pulse/lib/python3.10/site-packages/torch/_dynamo/convert_frame.py", line 641, in _convert_frame
    result = inner_convert(frame, cache_size, hooks, frame_state)
  File "/home/julien/.pyenv/versions/pulse/lib/python3.10/site-packages/torch/_dynamo/convert_frame.py", line 133, in _fn
    return fn(*args, **kwargs)
  File "/home/julien/.pyenv/versions/pulse/lib/python3.10/site-packages/torch/_dynamo/convert_frame.py", line 389, in _convert_frame_assert
    return _compile(
  File "/home/julien/.pyenv/versions/pulse/lib/python3.10/site-packages/torch/_dynamo/convert_frame.py", line 569, in _compile
    guarded_code = compile_inner(code, one_graph, hooks, transform)
  File "/home/julien/.pyenv/versions/pulse/lib/python3.10/site-packages/torch/_dynamo/utils.py", line 189, in time_wrapper
    r = func(*args, **kwargs)
  File "/home/julien/.pyenv/versions/pulse/lib/python3.10/site-packages/torch/_dynamo/convert_frame.py", line 491, in compile_inner
    out_code = transform_code_object(code, transform)
  File "/home/julien/.pyenv/versions/pulse/lib/python3.10/site-packages/torch/_dynamo/bytecode_transformation.py", line 1028, in transform_code_object
    transformations(instructions, code_options)
  File "/home/julien/.pyenv/versions/pulse/lib/python3.10/site-packages/torch/_dynamo/convert_frame.py", line 458, in transform
    tracer.run()
  File "/home/julien/.pyenv/versions/pulse/lib/python3.10/site-packages/torch/_dynamo/symbolic_convert.py", line 2074, in run
    super().run()
  File "/home/julien/.pyenv/versions/pulse/lib/python3.10/site-packages/torch/_dynamo/symbolic_convert.py", line 724, in run
    and self.step()
  File "/home/julien/.pyenv/versions/pulse/lib/python3.10/site-packages/torch/_dynamo/symbolic_convert.py", line 688, in step
    getattr(self, inst.opname)(inst)
  File "/home/julien/.pyenv/versions/pulse/lib/python3.10/site-packages/torch/_dynamo/symbolic_convert.py", line 392, in wrapper
    return inner_fn(self, inst)
  File "/home/julien/.pyenv/versions/pulse/lib/python3.10/site-packages/torch/_dynamo/symbolic_convert.py", line 1115, in CALL_FUNCTION
    self.call_function(fn, args, {})
  File "/home/julien/.pyenv/versions/pulse/lib/python3.10/site-packages/torch/_dynamo/symbolic_convert.py", line 562, in call_function
    self.push(fn.call_function(self, args, kwargs))
  File "/home/julien/.pyenv/versions/pulse/lib/python3.10/site-packages/torch/_dynamo/variables/functions.py", line 261, in call_function
    return super().call_function(tx, args, kwargs)
  File "/home/julien/.pyenv/versions/pulse/lib/python3.10/site-packages/torch/_dynamo/variables/functions.py", line 90, in call_function
    return tx.inline_user_function_return(
  File "/home/julien/.pyenv/versions/pulse/lib/python3.10/site-packages/torch/_dynamo/symbolic_convert.py", line 598, in inline_user_function_return
    result = InliningInstructionTranslator.inline_call(self, fn, args, kwargs)
  File "/home/julien/.pyenv/versions/pulse/lib/python3.10/site-packages/torch/_dynamo/symbolic_convert.py", line 2179, in inline_call
    return cls.inline_call_(parent, func, args, kwargs)
  File "/home/julien/.pyenv/versions/pulse/lib/python3.10/site-packages/torch/_dynamo/symbolic_convert.py", line 2286, in inline_call_
    tracer.run()
  File "/home/julien/.pyenv/versions/pulse/lib/python3.10/site-packages/torch/_dynamo/symbolic_convert.py", line 724, in run
    and self.step()
  File "/home/julien/.pyenv/versions/pulse/lib/python3.10/site-packages/torch/_dynamo/symbolic_convert.py", line 688, in step
    getattr(self, inst.opname)(inst)
  File "/home/julien/.pyenv/versions/pulse/lib/python3.10/site-packages/torch/_dynamo/symbolic_convert.py", line 392, in wrapper
    return inner_fn(self, inst)
  File "/home/julien/.pyenv/versions/pulse/lib/python3.10/site-packages/torch/_dynamo/symbolic_convert.py", line 1115, in CALL_FUNCTION
    self.call_function(fn, args, {})
  File "/home/julien/.pyenv/versions/pulse/lib/python3.10/site-packages/torch/_dynamo/symbolic_convert.py", line 562, in call_function
    self.push(fn.call_function(self, args, kwargs))
  File "/home/julien/.pyenv/versions/pulse/lib/python3.10/site-packages/torch/_dynamo/variables/torch.py", line 729, in call_function
    tensor_variable = wrap_fx_proxy(
  File "/home/julien/.pyenv/versions/pulse/lib/python3.10/site-packages/torch/_dynamo/variables/builder.py", line 1187, in wrap_fx_proxy
    return wrap_fx_proxy_cls(
  File "/home/julien/.pyenv/versions/pulse/lib/python3.10/site-packages/torch/_dynamo/variables/builder.py", line 1274, in wrap_fx_proxy_cls
    example_value = get_fake_value(proxy.node, tx)
  File "/home/julien/.pyenv/versions/pulse/lib/python3.10/site-packages/torch/_dynamo/utils.py", line 1376, in get_fake_value
    raise TorchRuntimeError(str(e)).with_traceback(e.__traceback__) from None
  File "/home/julien/.pyenv/versions/pulse/lib/python3.10/site-packages/torch/_dynamo/utils.py", line 1337, in get_fake_value
    return wrap_fake_exception(
  File "/home/julien/.pyenv/versions/pulse/lib/python3.10/site-packages/torch/_dynamo/utils.py", line 916, in wrap_fake_exception
    return fn()
  File "/home/julien/.pyenv/versions/pulse/lib/python3.10/site-packages/torch/_dynamo/utils.py", line 1338, in <lambda>
    lambda: run_node(tx.output, node, args, kwargs, nnmodule)
  File "/home/julien/.pyenv/versions/pulse/lib/python3.10/site-packages/torch/_dynamo/utils.py", line 1410, in run_node
    raise RuntimeError(fn_str + str(e)).with_traceback(e.__traceback__) from e
  File "/home/julien/.pyenv/versions/pulse/lib/python3.10/site-packages/torch/_dynamo/utils.py", line 1397, in run_node
    return node.target(*args, **kwargs)
  File "/home/julien/.pyenv/versions/pulse/lib/python3.10/site-packages/torch/_ops.py", line 692, in __call__
    return self._op(*args, **kwargs or {})
torch._dynamo.exc.TorchRuntimeError: Failed running call_function torchaudio._lfilter(*(FakeTensor(..., size=(1, 1, 16000)), FakeTensor(..., size=(1, 2)), FakeTensor(..., size=(1, 2))), **{}):
The tensor has a non-zero number of elements, but its data is not allocated yet. Caffe2 uses a lazy allocation, so you will need to call mutable_data() or raw_mutable_data() to actually allocate memory.

from user code:
   File "/home/julien/Desktop/Pulse/working_repo/pulse_github/pulse_ai/training_recipes/minimal_compile_error.py", line 17, in my_lfilter
    return torchaudio.functional.lfilter(x, a, b)
  File "/home/julien/.pyenv/versions/pulse/lib/python3.10/site-packages/torchaudio/functional/filtering.py", line 1057, in lfilter
    output = _lfilter(waveform, a_coeffs, b_coeffs)

You can suppress this exception and fall back to eager by setting:
    import torch._dynamo
    torch._dynamo.config.suppress_errors = True

Process finished with exit code 1

Versions
Collecting environment information...
PyTorch version: 2.1.0+cu121
Is debug build: False
CUDA used to build PyTorch: 12.1
ROCM used to build PyTorch: N/A
OS: Ubuntu 22.04.3 LTS (x86_64)
GCC version: (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0
Clang version: 14.0.0-1ubuntu1.1
CMake version: version 3.27.4
Libc version: glibc-2.35
Python version: 3.10.6 (main, Sep  7 2023, 09:03:30) [GCC 11.4.0] (64-bit runtime)
Python platform: Linux-6.2.0-36-generic-x86_64-with-glibc2.35
Is CUDA available: True
CUDA runtime version: Could not collect
CUDA_MODULE_LOADING set to: LAZY
GPU models and configuration: GPU 0: NVIDIA GeForce GTX 1650
Nvidia driver version: 535.129.03
cuDNN version: Could not collect
HIP runtime version: N/A
MIOpen runtime version: N/A
Is XNNPACK available: True
CPU:
Architecture:                       x86_64
CPU op-mode(s):                     32-bit, 64-bit
Address sizes:                      39 bits physical, 48 bits virtual
Byte Order:                         Little Endian
CPU(s):                             16
On-line CPU(s) list:                0-15
Vendor ID:                          GenuineIntel
Model name:                         Intel(R) Core(TM) i9-9980HK CPU @ 2.40GHz
CPU family:                         6
Model:                              158
Thread(s) per core:                 2
Core(s) per socket:                 8
Socket(s):                          1
Stepping:                           13
CPU max MHz:                        5000,0000
CPU min MHz:                        800,0000
BogoMIPS:                           4800.00
Flags:                              fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx pdpe1gb rdtscp lm constant_tsc art arch_perfmon pebs bts rep_good nopl xtopology nonstop_tsc cpuid aperfmperf pni pclmulqdq dtes64 monitor ds_cpl vmx est tm2 ssse3 sdbg fma cx16 xtpr pdcm pcid sse4_1 sse4_2 x2apic movbe popcnt tsc_deadline_timer aes xsave avx f16c rdrand lahf_lm abm 3dnowprefetch cpuid_fault epb invpcid_single ssbd ibrs ibpb stibp ibrs_enhanced tpr_shadow vnmi flexpriority ept vpid ept_ad fsgsbase tsc_adjust sgx bmi1 avx2 smep bmi2 erms invpcid mpx rdseed adx smap clflushopt intel_pt xsaveopt xsavec xgetbv1 xsaves dtherm ida arat pln pts hwp hwp_notify hwp_act_window hwp_epp sgx_lc md_clear flush_l1d arch_capabilities
Virtualization:                     VT-x
L1d cache:                          256 KiB (8 instances)
L1i cache:                          256 KiB (8 instances)
L2 cache:                           2 MiB (8 instances)
L3 cache:                           16 MiB (1 instance)
NUMA node(s):                       1
NUMA node0 CPU(s):                  0-15
Vulnerability Gather data sampling: Mitigation; Microcode
Vulnerability Itlb multihit:        KVM: Mitigation: VMX disabled
Vulnerability L1tf:                 Not affected
Vulnerability Mds:                  Not affected
Vulnerability Meltdown:             Not affected
Vulnerability Mmio stale data:      Mitigation; Clear CPU buffers; SMT vulnerable
Vulnerability Retbleed:             Mitigation; Enhanced IBRS
Vulnerability Spec rstack overflow: Not affected
Vulnerability Spec store bypass:    Mitigation; Speculative Store Bypass disabled via prctl
Vulnerability Spectre v1:           Mitigation; usercopy/swapgs barriers and __user pointer sanitization
Vulnerability Spectre v2:           Mitigation; Enhanced IBRS, IBPB conditional, RSB filling, PBRSB-eIBRS SW sequence
Vulnerability Srbds:                Mitigation; Microcode
Vulnerability Tsx async abort:      Mitigation; TSX disabled
Versions of relevant libraries:
[pip3] mypy-extensions==1.0.0
[pip3] numpy==1.24.4
[pip3] onnx==1.14.1
[pip3] onnxruntime==1.15.1
[pip3] pytorch-lightning==2.0.9.post0
[pip3] pytorch-ranger==0.1.1
[pip3] pytorch-seed==0.2.0
[pip3] torch==2.1.0
[pip3] torch-audiomentations==0.11.0
[pip3] torch-optimizer==0.1.0
[pip3] torch-pitch-shift==1.2.4
[pip3] torch-stoi==0.1.2
[pip3] torch-utilities==1.1.2
[pip3] torchaudio==2.1.0
[pip3] torchmetrics==0.7.3
[pip3] triton==2.1.0
[conda] Could not collect

Hi
Thanks for the report, however, this project no longer has an active maintainer.

Hi and thanks for your reply,
I am quite surprised to hear this! torchaudio is a great library that is very useful for the community! Is this only temporary?


Fix Shoot Structured Authentication API conflict

How to categorize this PR?

/area security
/kind bug
What this PR does / why we need it:
This PR fixes an API conflict between the Shoot's kubeAPIServer.authentication field and the Garden's kubeAPIServer.authentication field. Since the Gardens kubeAPIServer already contains a field named authentication:
https://github.com/gardener/gardener/blob/a9d81c0dc2c2ae5c9ca3e3919b5af8f1c218106f/pkg/apis/operator/v1alpha1/types_garden.go#L344-L346
There is a conflict with the inherited inline Shoot's kubeAPIServer.authentication:
https://github.com/gardener/gardener/blob/a9d81c0dc2c2ae5c9ca3e3919b5af8f1c218106f/pkg/apis/core/v1beta1/types_shoot.go#L826-L829
This PR implements a change to the structured authentication API to resolve this conflict.
Example of new API:
kubernetes:
  kubeAPIServer:
    structuredAuthentication:
      configMapName: name-of-configmap-containing-jwt-authenticators

Which issue(s) this PR fixes:
Fixes #
Special notes for your reviewer:
The release notes of https://github.com/gardener/gardener/pull/10244 have been updated
/cc @plkokanov @rfranzke @dimityrmirchev
Release note:

NONE

/lgtm

/test pull-gardener-e2e-kind-ha-single-zone-upgrade

/approve
/cherry-pick release-v1.102


Terminal - last line overwriting itself in Window mode

Issue Type: Bug
When writing the last line in the terminal of VS Code, it starts to overwrite itself. This only happens when in a windowed mode.

When VS Code is maximized, this doesn't happen, and a new line comes up.

VS Code version: Code 1.52.1 (ea3859d4ba2f3e577a159bc91e3074c5d85c0523, 2020-12-16T16:34:46.910Z)
OS version: Windows_NT x64 10.0.19042
Remote OS version: Linux x64 4.19.128-microsoft-standard
Extensions (8)

Extension
Author (truncated)
Version

remote-containers
ms-
0.154.1

remote-wsl
ms-
0.52.0

vscode-icons
vsc
11.0.0

prettier-vscode
esb
5.8.0

terraform
has
2.3.0

vscode-docker
ms-
1.9.0

vscode-kubernetes-tools
ms-
1.2.1

vscode-yaml
red
0.13.0

A/B Experiments
vsliv368:30146709
vsreu685:30147344
openlogontheside:30221877
python763:30178808
python383cf:30185419
vspor879:30202332
vspor708:30202333
vspor363:30204092
python504:30227505
vswsl492cf:30211402
wsl2prompt:30224612
pythonvsdeb440:30237827
unusedprompt:30224610
folderexplorercf:30224615
openfilemenu:30224647
pythonvsded773cf:30236630

does zooming in and out or changing the renderer type resolve this?

Maximizing the VS Code window resolves it.
Also, if I resize the VS Code Window, resolves it as well:

Overwriting:

Resizing the same window, produces 2 lines:

I am unable to reproduce the issue. Thanks for the info and glad resizing helps


clear-modules is not compatible with our bundle file

Description of the bug
Right now, we have clear-modules used in the code providers to get a preview of the to-be-used AndroidManifest.xml and other native files. Unfortunately, this is not working in production mode atm.

When compiled to a single file, it still maintains the typescript paths.
Probably because of webpack adding them, when looking for these files we get unexpected errors.

clear-modules is removing all modules from the require cache.
This heavily impacts performance in VSCode overall, it also removes the internal APIs from the cache. When running in safemode (with extensions disabled) it removes 1073 modules from the cache.

To Reproduce

Run the project in production mode.
After everything is loaded, turn on both caught and uncaught exceptions
Try to preview the AndroidManifest.xml.

Fixed by #48


AutoFixture.AutoFakeItEasy - Latest FakeItEasy Support

It appears that the latest AutoFixture.AutoFakeItEasy is not able to work with the latest FakeItEasy version. Are there plans to support the latest FakeItEasy?
warning NU1608: Detected package version outside of dependency constraint: AutoFixture.AutoFakeItEasy 4.14.0 requires FakeItEasy (>= 4.9.0 && < 6.0.0) but version FakeItEasy 6.2.1 was resolved.

@napalm684 thank you for raising this!
This major version release has gone under the radar for us it seems.
I just tried to run the tests against FakeItEasy 6 and it seems there are some breaking changes.
Hopefully we'll have a new release soon with support for v6.


How do I rename Atom.app

When I try to rename Atom.app to MyAppName.app I get the following error dialog.
I'm using Mavericks 10.9.2
You can’t open the application “MyAppName.app” because it may be damaged or incomplete.

@zcbenz I noticed that in the docs it says the structure of a renamed app should be Contents/MacOS/MyApp instead of Contents/MacOS/Electron. I'm guessing that this is a mistake so I fixed it and made a PR here https://github.com/atom/electron/pull/2044


Remove STATE_NAME environment variable

This doesn't make senes in the context of a multi-tenant hosted app. Let's remove it from render and this repo altogether and update the e-mail format to include the tenant name after #6 is complete.

Given that #6 is closed, is this bug ready to take on @cmroberts ?

Note to self: Either close this out if no existing references or update this issue with findings if the env var is still in-use.


add support for provisioning idempotency when using external data source

Proposed Changes
When we use an external data source instead of etcd, we have the possibility to archive idempotency for the
initialization of the cluster. The only problem is that we have to keep the random node password of the nodes
for rejoining. Considering the security, we use {{ node_password_salt + ansible_hostname | md5 }} as the
invariant node password for each node. After that, the nodes can be re-registered to the cluster when the cluster
is reinitialized by this playbook.
Checklist

[ ] Tested locally
[ ] Ran site.yml playbook
[ ] Ran reset.yml playbook
[ ] Did not add any unnecessary changes
[ ] Ran pre-commit install at least once before committing
[ ] 🚀

Going to close this for now since we haven't seen any activity.  Feel free to reopen the PR after the items are addressed.  Thank you!


pip cannot install a PyPI package that requires a non-PyPI package

Migrated from GitLab: https://gitlab.com/meltano/meltano/-/issues/359
Originally created by @mbergeron on 2019-02-05 20:59:06

After the v0.9.0 release @boleary tries to install it and was greeted with an unwelcome message:
(venv) ❯ pip install meltano
Collecting meltano
  Using cached https://files.pythonhosted.org/packages/f4/34/c56403bd041e07c0d3df218805379bce0daf0863b287df15de55ac599317/meltano-0.9.0.tar.gz
Packages installed from PyPI cannot depend on packages which are not also hosted on PyPI.
meltano depends on flask-security<EMAIL_ADDRESS>
Even though you can install this package locally (i.e. if you download the tar.gz and pip install ..., it'll work) it seems pip doesn't support that when the package is hosted on PyPI.
Let's purge v0.9.0 from PyPI now and see what is our next step here.
Every time I come close to pip/PyPI it seems something breaks, should we move to 100% Docker?
/cc @jschatz1

View 8 previous comments from the original issue on GitLab


ChatGLM3 output token size is not generated as expected

Benchmark cmd (-ic is 128):
numactl -C 0-55 -m 0 python benchmark.py     -m /root/.cache/huggingface/hub/chatglm3-6b-ov/pytorch/dldt/FP16     -p "It is done, and submitted..."     -n 2     -bs 1     -d CPU --torch_compile_backend openvino     -ic 128 --num_beams 1 -lc bfloat16_config.json 2>&1 | tee -a ./logs/0.log

BTW, ChatGLM2's output size is right.

@JunxiChhen The reason is that ChatGLM3 gives "end token" at output size 17 with the input prompt. The WA is to update prompt to let ChatGLM3 generate more tokens (>=128).
-ic means the maximum output token size (or maximum inference number).
There is a ongoing https://github.com/openvinotoolkit/openvino.genai/pull/289 which is trying to "force" generate expected output size even "end token" is given.

@JunxiChhen PR has been merged. Please verify.

When I update the  latest commit id, run case with blew error:

@yangkunx This new issue should be fixed by PR#435

https://github.com/openvinotoolkit/openvino.genai/pull/289  was just reverted, due to the performance impact. New PR https://github.com/openvinotoolkit/openvino.genai/pull/457 is WIP

New PR https://github.com/openvinotoolkit/openvino.genai/pull/457 was merged. @yangkunx  @JunxiChhen  please verify.


filter by date

Hi there!
I'm currently trying to build a blog system with cockpit and now I want to sort the entires by date when I get them through the API.
Sadly when using this in my vue component:
`
async asyncData ({ app, env}) {
  const employees = await app.$axios.$get(`${process.env.apiUrl}/collections/get/Medewerkers?token=${process.env.medewerkersToken}`,
    JSON.stringify({
      sort: {_created:-1},
      populate: 1
    }),
    {
      headers: { 'Content-Type': 'application/json' }
    })

  const histories = await app.$axios.$get(`${process.env.apiUrl}/collections/get/History?token=${process.env.historyToken}`,
    JSON.stringify({
     sort: {year:-1},
     populate: 1
   }),
    {
      headers: { 'Content-Type': 'application/json' }
    })

  return {
    employees: employees.entries,
    histories: histories.entries
  }
}

`
it won't sort the array with the date. I can't find anything related to this on google and this github. Anybody who could help me with this or knows a inbuild function for this? Thanks!

you're doing GET request, so you can't send a JSON body
try this:
/api/collections/get/Medewerkers?token=xyz&populate=1&sort[_created]=-1

you're doing a GET request, so you can't send a JSON body
try this:
/api/collections/get/Medewerkers?token=xyz&populate=1&sort[_created]=-1

This sort of works but not correctly. When using this the date is used as a string and therefor it sorts it based on the highest/lowest numeric value. I would need to change the string to a date format and sort on that but I have not clue how to do this..

I would need to change the string to a date format and sort on that but I have not clue how to do this..

Has anyone figured this out ?


Docs: Fix ipam_nodes metric description

The metric description was out-of-date: the ipam_nodes_at_capacity metric doesn't exist anymore, the new one is called ipam_nodes and it is labeled with the at-capacity category.
The code is here:
https://github.com/cilium/cilium/blob/6df9d10323083f55615e4fa98417f0060e6613a5/pkg/ipam/metrics/metrics.go#L129-L134
https://github.com/cilium/cilium/blob/7a062e399fd44b24c9dce0231ced2d453f6bd994/pkg/ipam/node_manager.go#L535-L537
Example curl of the metric endpoint on the Operator (version 1.12.11):
[...]
# HELP cilium_operator_ipam_nodes Number of nodes by category { total | in-deficit | at-capacity }
# TYPE cilium_operator_ipam_nodes gauge
cilium_operator_ipam_nodes{category="at-capacity"} 0
cilium_operator_ipam_nodes{category="in-deficit"} 0
cilium_operator_ipam_nodes{category="total"} 18
[...]

@antonipp Can you add a "Sign-off" line at the end of the commit?

I indeed forgot it on my second commit, but it should be fixed now! (I had to merge main because tests were failing btw)

@antonipp thank you for your efforts. We prefer to have a clean git history (without merge commits), could you please squash that commit into your main one?

Docs only change, merging without full test suite.


test(e2e): add simple Svelte 5 suite

This PR is a companion #283. It adds a simple Svelte 5 test suite to the repository's e2e directory. For now, Svelte 5 module tests are skipped, because they require #283 to pass
~When run locally on my machine, this suite passes against master. This is a bit unexpected to me, given that I can't get Svelte 5 to work properly with @testing-library/svelte-testing-library#375. Putting this PR up to aid investigation!~
Update: it looks like it a build issue! Running Svelte 5 E2E tests locally now properly fails after 6a51913

Sorry, I'm still buried in work. It is passing now, I hope to get to it on the weekend.


Make CLI flags more rigorous

See the screenshot attached to the PR for more details. And @IwanKaramazow's upcoming explanations of forPrinter's role in this

Before:

After:


bug when deleting fake fields

I noticed that if I tried to clear all my fake fields, they were not deleted. That is because
isset($request['someFieldName'])

returns false if $request['someFieldName'] = null
So I changed it with
array_key_exists('someFieldName', $request)

Huh - did not know that. Thank you, will test & merge.
Cheers!


initial glide loader commit

Initial commit adding support for the glide image loading library

I am not experienced with github comment so please excuse me for my newbie style


OSFUSE-388: Remove OpenShift S2I buildconfig in undeploy goal, Replic…

…ationController is still not deleted even though OpenShift acks that delete

OK to test

@jimmidyson can you please kick this PR and merge if good?

@dhirajsb will merge it (also to branch v3.1.80-redhat)

[merge]


Slight glow around logo in README.md

Description
Adds slight glow around neofetch logo on the README.md
Features
makes logo more readable on dark themes of github
before change

after change

raw photo

uwu


kafka(ticdc): use context to close the mq dml sink and the metrics collector

What problem does this PR solve?

Issue Number: close #9041
What is changed and how it works?

add a context to the kafka dml producer to control close the underline metrics collector and the producer running goroutine
remove the close channel.

Check List
Tests

Unit test
Integration test
Manual test (add detailed scripts or steps below)

Questions
Will it cause performance regression or break compatibility?
Do you need to update user documentation, design documentation or monitoring documentation?
Release note
`None`

/test verify

/test verify

/test verify

/merge

/test cdc-integration-mysql-test

/cherry-pick release-6.5


Ampersand in XML--Value not rendered correctly

Ampersand in XML--Value not rendered correctly
For remarks this bug was fixed with #1151
BUT for the <example>-Tag the problem still exists
/// <summary>
/// KeyValuePair List as HTML-FORM-POST-Values (application/x-www-form-urlencoded)
/// </summary>
/// <example>DOCNAME=Name1&DOCTYPE=invoice"</example>

If you write it as "&" it will work. This is processed and displayed in the output as "&"


Sort by Score dont work

From Last Modified to Score

From Title to Score

Hmm, what search term did you use?

@dullage #openmc

@MathiasDPX - Ah, I see. As it's a tag only search, all results will have the same score, hence what you're seeing. If you include text searching, the sorting should work as expected.
Ideally, I'd hide this option when it isn't relevant. I'll look to add this in the future.

Ooooooooh sorry for the inconvenience

Not at all. It isn't obvious in the UI but should be. I'll leave this open as a reminder for me to do something about it.


Not receiving images on desktop

Describe the bug
After we initialize the API with solumInit(), and provide it with the newProcessedImage callback, It seems that the CusNewProcessedImageFn is never being called, even when imaging is supposed to be running. solumRun is successful and the green light is on, but CusNewProcessedImageFn is not called.
I also experience the same behavior with the example solum_qt application. The program can connect to the probe, but the callback is never called and no images are ever received.
Our source code is available here: https://github.com/PlusToolkit/PlusLib/blob/master/src/PlusDataCollection/Clarius/vtkPlusClariusOEM.cxx
To Reproduce
Steps to reproduce the behavior:

Open example solum_qt app
Open BLE tab
Search -> Select probe -> Connect ->
Connect to Wi-Fi network manually through windows
Open TCP tab
Connect
Update Cert... select cert file
Run
No image. Attaching a debugger reveals that the callback is never called.

Environment:

SDK variant: desktop
Development platform: Windows. Visual Studio and QT Creator.
SDK version: 10.2.2
Clarius App version: N/A

No need to create another issue.
Functions like solumStatusInfo() and solumRun() perform a blocking call to retrieve/send info from/to a "worker" thread. There is a 5 seconds timeout, if the timeout expires then the functions return an error. In your case, it probably means the worker thread is still busy doing something else and the timeout expires. This would explain why you don't see an error message: because there is no error, just the expired timeout. Maybe your application performs a lengthy computation directly in the image callback. If that's the case, you move the computation to a different thread.

Thanks for the help, I moved solumStatusInfo() out of the callback onto a separate thread, and it's working well again!


C_FindObjects not implemented?

Hello,
am I blind  or this library doesnt not support finding objects already existing using C_FindObjects pkcs11 native method? :)
It looks like it does not when I checked the code ... Is this an oversight? Could this be changed?
Can I help ?
Thank you

Hi, it's called session.get_objects().
http://python-pkcs11.readthedocs.io/en/latest/api.html#pkcs11.Session.get_objects
It's here in the code: https://github.com/danni/python-pkcs11/blob/master/pkcs11/_pkcs11.pyx#L253


Add tmux commands to use in terminal

Not sure if prefixing every command with mux is a good idea?

I think using mux is good

Pardon my ignorance, is this a standard feature of linux terminals, or would a tag make sense here?

No, this is not a standard feature. Did I use the tag incorrectly? Sorry I still get mixed up, should it be,
tag(): terminal?

No, you used tag correctly - I meant: does a custom, separate tag from terminal (tmux or something), make sense here that could be asserted as-needed by terminal programs? Particularly since some apps might opt into some ‘standard’ terminal stuff (e.g. vscode).
I really know nothing about this one, just asking dumb questions. 🤔

Yes definitely a custom tag makes sense in this case. I was not aware of vscode opting into terminal commands as well but that makes sense.

Thanks. This tag needs to be declared... somewhere, no? Maybe you missed a file? :)
e.g., https://github.com/knausj85/knausj_talon/blob/master/code/gdb.py
It probably makes sense to have a /code/tags.py for something like this, where we can just toss tags that need no other code support

Thank you for teaching me the perils of testing on my own fork as opposed to the patch branch! The tags file is a useful idea. I have added a tags file that declares tags with generic descriptions. I think I managed to collect the custom tags defined so far.
I also added a line to declare modes, but I'm not sure if that should be in the scope of this file. Also not sure if mode description should be generic as well,


Update CHANGELOG.md

Codecov Report

Merging #256 (27f3814) into main (a04c63d) will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##             main     #256   +/-   ##
=======================================
  Coverage   85.22%   85.22%
=======================================
  Files          77       77
  Lines        3140     3140
  Branches      531      531
=======================================
  Hits         2676     2676
  Misses        464      464

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 a04c63d...27f3814. Read the comment docs.

Let's update the PR to add all the commits and features for 1.2.0 release. This should fix #274


Add view to tail the log of a cluster or job

Both these resources have a log endpoint.  It would be nice to expose this in similar way you can view log file on Travis ...

Closing this a duplicate of #32


Updated examples and removed unneeded comments

Closes #50.

I'm pretty sure this build is failing because the released version has protocol changes that aren't in the rust client.


Rhino Automation - Update manual created test case (which run successfully) as "retest"

Not a bug.
Tests which are inconclusive gets the default or the closest state to inconclusive - under TestRail it is the Retest value.


[FEATURE REQ] Variable SERVICE_CONNECTION_NAME as a template parameter

Templates tools\azdo_pipelines\run-extractor.yaml and tools\azdo_pipelines\run-publisher-with-env.yaml uses variable "$(SERVICE_CONNECTION_NAME)" in code. It would be nice to have it parameterized. We also have different environments and each environment have own service connection.
tools\azdo_pipelines\run-extractor.yaml:
parameters:
  - name: SERVICE_CONNECTION_NAME
    type: string
    displayName: Service connection name
    default: $(SERVICE_CONNECTION_NAME) # e.g. set it as default if not given as parameter
...
        steps:
          - task: AzureCLI@2
            displayName: Set extraction variables
            inputs:
              azureSubscription: ${{ parameters.SERVICE_CONNECTION_NAME }}

tools\azdo_pipelines\run-publisher-with-env.yaml:
parameters:
  - name: SERVICE_CONNECTION_NAME
    type: string
    displayName: Service connection name
    default: $(SERVICE_CONNECTION_NAME)  # e.g. set it as default if not given as parameter
...
  - task: AzureCLI@2
    displayName: Set publishing variables
    inputs:
      azureSubscription: ${{ parameters.SERVICE_CONNECTION_NAME }}

So in run-publisher.yaml template we can call run-publisher-with-env.yaml with environment specific service connection:
...
        steps:
          - template: run-publisher-with-env.yaml
            parameters:
              SERVICE_CONNECTION_NAME: $(SERVICE_CONNECTION_NAME_DEV) # Env specific SC
              API_MANAGEMENT_SERVICE_OUTPUT_FOLDER_PATH: ${{ parameters.API_MANAGEMENT_SERVICE_OUTPUT_FOLDER_PATH }}
...

At the moment we are customizing these templates by using template extends, but we need to modify these templates to take service connection as a parameter. Upgrading of ApiOps Toolkit is much easier if these templates aren't needed to modify.
Overriding the service connection variable for each environment in run-publisher.yaml is not solution since variables are expanded at the beginning of a job, you can't use them in a strategy.

The Devops pipelines that we provide are meant to be a starting point. You are at liberty to customize them to fit your own environment. Having said that, if you feel that these are changes that would make it easier for people to start with then feel free to open a pull request, and we will be more than happy to review it and merge it if it passes the review process.


Call base dispatchEvent() instead of em.dispatchEvent()

Currently recorder.em.dispatchEvent() is called everywhere instead of recorder.dispatchEvent().

But recorder.dispatchEvent() anyway call this.em.dispatchEvent() inside.
I am calling recorder.em.dispatchEvent() directly as an optimization to reducer unnecessary operations.
Do we have a reason to remove this optimization?

Hi @ai
My real aim was to expose the onevent properties.
First I had added that logic into recorder.dispatchEvent() but it was skipped because of the direct call to this.em.dispatchEvent().
Anyway I've come up with a better solution since then, that I will send as a new PR.
This PR can be closed then, I guess.


Tests for list comparison methods were added

Closes: #111

@levBagryansky please, have a look

@levBagryansky I think this test is not relevant to the current task, because here we are talking about comparing lists, not elements. For this reason the order on the elements must be specified explicitly.
For example, which is more TRUE or FALSE? The list or the number 42? Of course now we can check this by comparing their byte representation, but if we use this approach, any change (e.g. let the byte representation of the bool change) will cause a large number of dropped tests.
But I believe that one is greater than zero and that won't change tomorrow.

@EugeneDar I guess it is better to think of how this object must behave in the case above. At least that he does not throw an error or handle it as we want.

@rultor merge

@rultor merge

@yegor256 OK, I'll try to merge now. You can check the progress of the merge here


[BUG] Video display for unusual pixel ratios

Describe the bug
Brandon Davis  11:51 AM
Good morning, David.
Bryon and I have just run headlong into a weird video codec / rendering issue.  Here's some ffprobe output.
ffprobe version 3.4.8-0ubuntu0.2 Copyright (c) 2007-2020 the FFmpeg developers
  built with gcc 7 (Ubuntu 7.5.0-3ubuntu1~18.04)
  configuration: --prefix=/usr --extra-version=0ubuntu0.2 --toolchain=hardened --libdir=/usr/lib/x86_64-linux-gnu --incdir=/usr/include/x86_64-linux-gnu --enable-gpl --disable-stripping --enable-avresample --enable-avisynth --enable-gnutls --enable-ladspa --enable-libass --enable-libbluray --enable-libbs2b --enable-libcaca --enable-libcdio --enable-libflite --enable-libfontconfig --enable-libfreetype --enable-libfribidi --enable-libgme --enable-libgsm --enable-libmp3lame --enable-libmysofa --enable-libopenjpeg --enable-libopenmpt --enable-libopus --enable-libpulse --enable-librubberband --enable-librsvg --enable-libshine --enable-libsnappy --enable-libsoxr --enable-libspeex --enable-libssh --enable-libtheora --enable-libtwolame --enable-libvorbis --enable-libvpx --enable-libwavpack --enable-libwebp --enable-libx265 --enable-libxml2 --enable-libxvid --enable-libzmq --enable-libzvbi --enable-omx --enable-openal --enable-opengl --enable-sdl2 --enable-libdc1394 --enable-libdrm --enable-libiec61883 --enable-chromaprint --enable-frei0r --enable-libopencv --enable-libx264 --enable-shared
  libavutil      55. 78.100 / 55. 78.100
  libavcodec     57.107.100 / 57.107.100
  libavformat    57. 83.100 / 57. 83.100
  libavdevice    57. 10.100 / 57. 10.100
  libavfilter     6.107.100 /  6.107.100
  libavresample   3.  7.  0 /  3.  7.  0
  libswscale      4.  8.100 /  4.  8.100
  libswresample   2.  9.100 /  2.  9.100
  libpostproc    54.  7.100 / 54.  7.100
Input #0, mpeg, from 'wrasse.mpg/wrasse.mpg':
  Duration: 00:00:07.16, start: 0.224400, bitrate: 4824 kb/s
    Stream #0:0[0x1e0]: Video: mpeg2video (Main), yuv420p(tv, top first), 720x480 [SAR 32:27 DAR 16:9], 29.97 fps, 29.97 tbr, 90k tbn, 59.94 tbc
    Stream #0:1[0x80]: Audio: ac3, 48000 Hz, stereo, fltp, 256 kb/s

When transcode to mp4, the width, height, DAR, PAR are the same.  When we play it in a browser, the width is reported by a video player as 853.  Indeed, the displayed aspect ratio (as checked with a measuring tape) is 16:9 (not 3:2, as 720x480 actually is)
Naturally, when we store annotations from this stretched coordinate space, they don't match up with the video pixels.  Have you had to deal with this problem before?  What's a good way to manage these?  Does GeoJS have tools that will put drawn shapes into the video's coordinate space given the PAR? Should we transform them at export time?
@Bryon Lewis please add any detail I may have missed. (edited)
manthey  1:33 PM
If you know you have non-square pixels, there are several ways to apply a transform in GeoJS.  ...
1:35
You can construct an appropriate proj4 string to do the transform.  Or you could add a position() accessor to the shape feature layers to transform the coordinates for rendering (e.g., feature.position((d, i) => {x: d.x * 1.2, y: d.y}))
1:36
I think if the video is already being stretched to the correct shape in the quad, then you'd want to use the position accessor.
Brandon Davis  1:48 PM
I'd like to try both and see which makes sense for us.  the feature position thing seems relatively straightforward.
Do you have any references to an example where geo.transform is used?  If I construct an affine transform and apply it to the whole map through geo.map.spec.gcs, will that do what I epxect?
manthey  1:49 PM
The feature position will work for rendering, but if you are drawing annotations it will probably be more work than the transform.  I know I have an example of applying the transform, but will take me a short while to dig it up.
1:50
The transform is applies via gcs, yes.
Brandon Davis  1:53 PM
Thank you.
manthey  2:09 PM
Try a gcs string like +proj=longlat +axis=enu +s11=1.2 +s12=0 +s21=0 +s22=1 +xoff=0 +yoff=0.
2:10
You would do something like layer.gcs('+proj=longlat +axis=enu +s11=1.2 +s12=0 +s21=0 +s22=1 +xoff=0 +yoff=0') for the annotation layer. (edited)
Brandon Davis  2:11 PM
I think this will get us most of the way there.  Thank you!
Related data
https://viame.kitware.com/girder#user/60243dea4d85a3cb4e2250c5/folder/602441854d85a3cb4e2250d2

I really don't like the idea of having to keep up with transformations on input detection client side.  That code is dangerous to get wrong, and I wouldn't want the niche needs of one customer to end up causing bugs for another.
I'd rather just use ffmepg to force all anamorphic (SAR !== 1:1) video to 1:1.

This is interesting in that it cannot guarantee width/height perservation because you have to round to the nearest pixel.
Another really big caveat is that we could no longer use raw input video to pass into kwiver.  We would have to pass the transcoded version.   I actually think doing anything else is wrong, because a human annotated the transcoded video, so kwiver should get the same video the human did.

I don't think it's worth the cost of supporting anamorphic video unless we have to.


Specify unique namespaces for robots in xacros?

From what I can tell, the current robot/hand xacros are not set up to support adding arbitrary namespaces to the links and joints.  Is this correct?
we are looking to build a dual-fr3 setup in which we have left and right arms in the same URDF, but from what I can tell this is not currently supported, and the changes would be pretty messy due to the the different setup cases (gazebo, ros2_control, different hands),  and the loaded yaml config files for the things like inertials, joint_limits, etc.
would it be possible to request this, if not currently possible?

Took a stab at what this might look like (though by no means fully tested).
file:///home/shart/Downloads/namespace_prefix_diff.txt
Any recs on how to do this better would be apprecaited.

Hi shart-bdai,
we are actually currently on it to enhance the URDFs/Xacros to support multi arm setups. This would also include handling the prefixes. But to be honest, we currently focus on getting it to run with ros2_control... so, for other use-cases, it might be a bit rough around the edges and might not yet fully work out-of-the-box with our current 5.6.0 image.
A bit of background, we also need to enhance our backend, which means it will be included in an upcoming image release... most likely with 5.8.0 - but the goal here is that the user can do a multi arm setup via ros2_control (those communication_constraint_violations are spoiling the party a bit...)
All in all, we might also release the URDF changes earlier with the hint that it might not work stable. Maybe we just release it on a experimental branch for now... not yet decided :)


Automatically open homonymous file with JupyniumLoadFromIpynbTab

It would be very handy if we can automatically get Jupynium to open a new file called as the .ipynb file with the right .ju.* type (i.e. .ju.py for a python notebook,.ju.jl for a julia notebook and so on).
Maybe, this can be done only if the current buffer is empty/without name?

One problem is that, what if the file already exists? We don't want to open a file randomly and overwrite everything. Maybe I can make it confirm if you want that or not. Thanks for the suggestion!

In my idea, the file that contains all the code, results and markdown is the actual notebook, so if the .ju.* file gets overwritten I loose nothing. But I realize now that this is my personal take and not the actual general rule or general desired behavior for everyone.
The optional behavior you are suggesting is probably the best choice!

Yeah, I saw some people putting notebook in a temp dir, maybe because ju.py files are easier to version control. But if you don't care about ju.py content, you can also just make a random name before loading as well

Yeah you are probably right.
I don't want to waste your time, so just one last question: if I would like to try implement this by myself, where should I start watching? Worst case scenario, I implement some functions for myself using those offered by the plugin.

The event handlers are in event_control.py. I'd like to make an improvement and I'm happy for feedback like this, but I don't think this kind of functionality should be a default or adding too many options can confuse people. I want it to have sane defaults that people can be happy getting into it at first.
So I'm thinking I should make an API. Basically I can let you execute any custom javascript on the browser, can get the return value of that in lua. That way, you can check ipynb information after it being loaded, and you can modify buffername as you want.

im loving this plugin so far, but when I first started with it I was very (extremely) confused about the UX flow of how to actually use it. I think the 2 main reasons were 1) there are a lot of different commands that need to be executed in a specific order (some level of automation would be useful), and 2) I didn't understand what .ju files were or that I needed to create them myself.
So I think for new users it would be quite sensible to have some sort of automatic association between a ipynb and a ju file, especially given that a ju file is a mandatory part of the plugin. this could maybe go both ways: 1) create/open a ju file will open and sync the associated ipynb on disk, and 2) opening an ipynb will create a ju file and open it - I think there already is a console app to do the conversion so we can make a call to that and pass it the ipynb. both with confirmation of overwriting, of course

Yeah I agree that it's confusing. Thanks for the feedback! The difficulty to make it user friendly is that, 1. I don't know if the notebook server is hosted on the local machine or not and 2. I don't know where the notebook root directory is. There are too many use cases and different workflow making it difficult to automate many things.
So if you open ipynb with vim, you want it to be converted to ju.py automatically?

@egolep Refer to https://github.com/kiyoon/jupynium.nvim#lua-api for how to use the API. Basically you can test the javascript from F12 developer mode console in firefox, and write your own script. Using this you can get info of name of notebook and kernel language etc. You can map a key or make a command that executes :JupyniumLoadFromIpynbTab and then set the filename.

So if you open ipynb with vim, you want it to be converted to ju.py automatically?

maybe. I'm not sure what the best option is here. certainly there should be some way to indicate to the user that a .ju.py file is needed, but this could be as simple as updating the readme to indicate that.
I'm just thinking about new user expectations and there are 2 parts of the flow that should be considered:

opening/creating a ju file so the plugin can work
connect and sync to a notebook instance so the user can start doing things

I think your concerns above are valid for (2), where there are a lot of unknowns that can complicate the matter. But currently it's not so clear how (1) works either because theres no clear link between an ipynb and ju file...
If you map out the potential user flows for (1), the use cases are probably either:

they want to create a brand new notebook and start fresh work
they want to use an existing notebook and continue what they were working on

the first can be handled by a readme update that explicitly tells them to create a .ju.py file, which can eventually be downloaded as a ipynb if they want to keep a copy of that as well
the second is more complicated because it requires quite a few steps that happen outside of nvim, and its the outsourcing to the browser that makes this step unintuitive. if there was a way to go from an existing notebook to a .ju.py from within vim it would makes things a lot simpler. a few options could be: an autocommand that triggers a conversion on a ipynb load, a dialog/prompt asking if the user wants to convert their opened ipynb to a ju when they open the file in vim, a new command that the user can trigger manually.
any of those would work as it would eliminate the complicated user flow of go to vim and start server > go to browser > open ipynb file > go back to nvim > JupyniumLoadFromIpynbTab > remember to save buffer as a ju file

Thanks for the suggestions. The list of things could be improved:

Readme indicating you need to make ju.py file
Could be a good idea to make a video showing quickly how to use the plugin.
Make a command JupyniumIpynbToJuPy that will convert ipynb file to ju.py file within vim. Could detect language automatically as well and try to use the correct filename, and ask if they want to overwrite, name it differently, or cancel.
Make an autocmd to launch above, but also provide option to switch it off.

sounds like a solid plan! if I have time this weekend I'll make a PR to update the readme text to help improve clarity for new users

For reference, there is a vim plugin, jupytext.vim, that does something similar to what is discussed here (opening an ipynb file with vim automatically converts it to a python file with jupytext).
In my opinion this is a useful feature to have. Many projects/repos have only ipynb files and it would be nice to be able to edit them directly with jupynium.nvim.

@vandalt I haven't used the jupytext plugin, and it sounds like it's worth a try before I implement anything to get inspiration from the workflow. Thanks for the pointer!


turn off solr query errors increase alert

This alert is constantly triggered by the same Client exception errors that Justin asked us to filter out (which we did).
We don't really need it since we already have similar one in loki-stack.

I don't think we need it because it basically duplicates the alert we have in loki-stack


Issue 766: Fix google search with Azure, and fix displaying google response

Tested this in our project, works nicely with Azure deployment + VErcel. +1

I still get 504 error with google search on Vercel…