[Form Provider Refactor] TaskDescriptionPage

Details

Changed the Form component into the new FormProvider component in TaskDescriptionPage
Fixed Issues

$ https://github.com/Expensify/App/issues/29998
Tests

Log into the app and go into a chat containing an existing task / create a task and go into it
On that screen click on the description to edit it
Input an updated description different from the previous one and confirm it with save
Check whether the description has been updated in the messages chat containing it

[x] Verify that no errors appear in the JS console

Offline tests

QA Steps

[x] Verify that no errors appear in the JS console

PR Author Checklist

[x] I linked the correct issue in the ### Fixed Issues section above
[x] I wrote clear testing steps that cover the changes made in this PR

[x] I added steps for local testing in the Tests section
[x] I added steps for the expected offline behavior in the Offline steps section
[x] I added steps for Staging and/or Production testing in the QA steps section
[x] I added steps to cover failure scenarios (i.e. verify an input displays the correct error message if the entered data is not correct)
[x] I turned off my network connection and tested it while offline to ensure it matches the expected behavior (i.e. verify the default avatar icon is displayed if app is offline)
[x] I tested this PR with a High Traffic account against the staging or production API to ensure there are no regressions (e.g. long loading states that impact usability).

[x] I included screenshots or videos for tests on all platforms
[x] I ran the tests on all platforms & verified they passed on:

[x] Android: Native
[x] Android: mWeb Chrome
[x] iOS: Native
[x] iOS: mWeb Safari
[x] MacOS: Chrome / Safari
[x] MacOS: Desktop

[x] I verified there are no console errors (if there's a console error not related to the PR, report it or open an issue for it to be fixed)
[x] I followed proper code patterns (see Reviewing the code)

[x] I verified that any callback methods that were added or modified are named for what the method does and never what callback they handle (i.e. toggleReport and not onIconClick)
[x] I verified that the left part of a conditional rendering a React component is a boolean and NOT a string, e.g. myBool && <MyComponent />.
[x] I verified that comments were added to code that is not self explanatory
[x] I verified that any new or modified comments were clear, correct English, and explained "why" the code was doing something instead of only explaining "what" the code was doing.
[x] I verified any copy / text shown in the product is localized by adding it to src/languages/* files and using the translation method

[x] If any non-english text was added/modified, I verified the translation was requested/reviewed in #expensify-open-source and it was approved by an internal Expensify engineer. Link to Slack message:

[x] I verified all numbers, amounts, dates and phone numbers shown in the product are using the localization methods
[x] I verified any copy / text that was added to the app is grammatically correct in English. It adheres to proper capitalization guidelines (note: only the first word of header/labels should be capitalized), and is approved by marketing by adding the Waiting for Copy label for a copy review on the original GH to get the correct copy.
[x] I verified proper file naming conventions were followed for any new files or renamed files. All non-platform specific files are named after what they export and are not named "index.js". All platform-specific files are named for the platform the code supports as outlined in the README.
[x] I verified the JSDocs style guidelines (in STYLE.md) were followed

[x] If a new code pattern is added I verified it was agreed to be used by multiple Expensify engineers
[x] I followed the guidelines as stated in the Review Guidelines
[x] I tested other components that can be impacted by my changes (i.e. if the PR modifies a shared library or component like Avatar, I verified the components using Avatar are working as expected)
[x] I verified all code is DRY (the PR doesn't include any logic written more than once, with the exception of tests)
[x] I verified any variables that can be defined as constants (ie. in CONST.js or at the top of the file that uses the constant) are defined as such
[x] I verified that if a function's arguments changed that all usages have also been updated correctly
[x] If a new component is created I verified that:

[x] A similar component doesn't exist in the codebase
[x] All props are defined accurately and each prop has a /** comment above it */
[x] The file is named correctly
[x] The component has a clear name that is non-ambiguous and the purpose of the component can be inferred from the name alone
[x] The only data being stored in the state is data necessary for rendering and nothing else
[x] If we are not using the full Onyx data that we loaded, I've added the proper selector in order to ensure the component only re-renders when the data it is using changes
[x] For Class Components, any internal methods passed to components event handlers are bound to this properly so there are no scoping issues (i.e. for onClick={this.submit} the method this.submit should be bound to this in the constructor)
[x] Any internal methods bound to this are necessary to be bound (i.e. avoid this.submit = this.submit.bind(this); if this.submit is never passed to a component event handler like onClick)
[x] All JSX used for rendering exists in the render method
[x] The component has the minimum amount of code necessary for its purpose, and it is broken down into smaller components in order to separate concerns and functions

[x] If any new file was added I verified that:

[x] The file has a description of what it does and/or why is needed at the top of the file if the code is not self explanatory

[x] If a new CSS style is added I verified that:

[x] A similar style doesn't already exist
[x] The style can't be created with an existing StyleUtils function (i.e. StyleUtils.getBackgroundAndBorderStyle(themeColors.componentBG))

[x] If the PR modifies code that runs when editing or sending messages, I tested and verified there is no unexpected behavior for all supported markdown - URLs, single line code, code blocks, quotes, headings, bold, strikethrough, and italic.
[x] If the PR modifies a generic component, I tested and verified that those changes do not break usages of that component in the rest of the App (i.e. if a shared library or component like Avatar is modified, I verified that Avatar is working as expected in all cases)
[x] If the PR modifies a component related to any of the existing Storybook stories, I tested and verified all stories for that component are still working as expected.
[x] If the PR modifies a component or page that can be accessed by a direct deeplink, I verified that the code functions as expected when the deeplink is used - from a logged in and logged out account.
[x] If a new page is added, I verified it's using the ScrollView component to make it scrollable when more elements are added to the page.
[x] If the main branch was merged into this PR after a review, I tested again and verified the outcome was still expected according to the Test steps.
[x] I have checked off every checkbox in the PR author checklist, including those that don't apply to this PR.

Screenshots/Videos

Android: Native
https://github.com/Expensify/App/assets/88325488/0d121653-cda5-4ab6-951a-b090a9cf080b

Android: mWeb Chrome
https://github.com/Expensify/App/assets/88325488/57cfea02-238c-4eda-81a3-880cb6b50a77

iOS: Native
https://github.com/Expensify/App/assets/88325488/fa1b9bf7-c73c-4b97-b98a-4823ed2f81ec

iOS: mWeb Safari
https://github.com/Expensify/App/assets/88325488/8150d866-d27b-44b6-81cf-a9919566cc18

MacOS: Chrome / Safari
https://github.com/Expensify/App/assets/88325488/573b3db9-af1f-44a5-995a-2498f1d37be2

MacOS: Desktop
https://github.com/Expensify/App/assets/88325488/c43cb753-a091-4222-a703-524ad4a04811

Cc. @luacmartins

Reviewer Checklist

[X] I have verified the author checklist is complete (all boxes are checked off).
[X] I verified the correct issue is linked in the ### Fixed Issues section above
[X] I verified testing steps are clear and they cover the changes made in this PR

[X] I verified the steps for local testing are in the Tests section
[X] I verified the steps for Staging and/or Production testing are in the QA steps section
[X] I verified the steps cover any possible failure scenarios (i.e. verify an input displays the correct error message if the entered data is not correct)
[X] I turned off my network connection and tested it while offline to ensure it matches the expected behavior (i.e. verify the default avatar icon is displayed if app is offline)

[X] I checked that screenshots or videos are included for tests on all platforms
[X] I included screenshots or videos for tests on all platforms
[X] I verified tests pass on all platforms & I tested again on:

[X] Android: Native
[X] Android: mWeb Chrome
[X] iOS: Native
[X] iOS: mWeb Safari
[X] MacOS: Chrome / Safari
[X] MacOS: Desktop

[X] If there are any errors in the console that are unrelated to this PR, I either fixed them (preferred) or linked to where I reported them in Slack
[X] I verified proper code patterns were followed (see Reviewing the code)

[X] I verified that any callback methods that were added or modified are named for what the method does and never what callback they handle (i.e. toggleReport and not onIconClick).
[X] I verified that the left part of a conditional rendering a React component is a boolean and NOT a string, e.g. myBool && <MyComponent />.
[X] I verified that comments were added to code that is not self explanatory
[X] I verified that any new or modified comments were clear, correct English, and explained "why" the code was doing something instead of only explaining "what" the code was doing.
[X] I verified any copy / text shown in the product is localized by adding it to src/languages/* files and using the translation method
[X] I verified all numbers, amounts, dates and phone numbers shown in the product are using the localization methods
[X] I verified any copy / text that was added to the app is grammatically correct in English. It adheres to proper capitalization guidelines (note: only the first word of header/labels should be capitalized), and is approved by marketing by adding the Waiting for Copy label for a copy review on the original GH to get the correct copy.
[X] I verified proper file naming conventions were followed for any new files or renamed files. All non-platform specific files are named after what they export and are not named "index.js". All platform-specific files are named for the platform the code supports as outlined in the README.
[X] I verified the JSDocs style guidelines (in STYLE.md) were followed

[X] If a new code pattern is added I verified it was agreed to be used by multiple Expensify engineers
[X] I verified that this PR follows the guidelines as stated in the Review Guidelines
[X] I verified other components that can be impacted by these changes have been tested, and I retested again (i.e. if the PR modifies a shared library or component like Avatar, I verified the components using Avatar have been tested & I retested again)
[X] I verified all code is DRY (the PR doesn't include any logic written more than once, with the exception of tests)
[X] I verified any variables that can be defined as constants (ie. in CONST.js or at the top of the file that uses the constant) are defined as such
[X] If a new component is created I verified that:

[X] A similar component doesn't exist in the codebase
[X] All props are defined accurately and each prop has a /** comment above it */
[X] The file is named correctly
[X] The component has a clear name that is non-ambiguous and the purpose of the component can be inferred from the name alone
[X] The only data being stored in the state is data necessary for rendering and nothing else
[X] For Class Components, any internal methods passed to components event handlers are bound to this properly so there are no scoping issues (i.e. for onClick={this.submit} the method this.submit should be bound to this in the constructor)
[X] Any internal methods bound to this are necessary to be bound (i.e. avoid this.submit = this.submit.bind(this); if this.submit is never passed to a component event handler like onClick)
[X] All JSX used for rendering exists in the render method
[X] The component has the minimum amount of code necessary for its purpose, and it is broken down into smaller components in order to separate concerns and functions

[X] If any new file was added I verified that:

[X] The file has a description of what it does and/or why is needed at the top of the file if the code is not self explanatory

[X] If a new CSS style is added I verified that:

[X] A similar style doesn't already exist
[X] The style can't be created with an existing StyleUtils function (i.e. StyleUtils.getBackgroundAndBorderStyle(themeColors.componentBG)

[X] If the PR modifies code that runs when editing or sending messages, I tested and verified there is no unexpected behavior for all supported markdown - URLs, single line code, code blocks, quotes, headings, bold, strikethrough, and italic.
[X] If the PR modifies a generic component, I tested and verified that those changes do not break usages of that component in the rest of the App (i.e. if a shared library or component like Avatar is modified, I verified that Avatar is working as expected in all cases)
[X] If the PR modifies a component related to any of the existing Storybook stories, I tested and verified all stories for that component are still working as expected.
[X] If the PR modifies a component or page that can be accessed by a direct deeplink, I verified that the code functions as expected when the deeplink is used - from a logged in and logged out account.
[X] If a new page is added, I verified it's using the ScrollView component to make it scrollable when more elements are added to the page.
[X] If the main branch was merged into this PR after a review, I tested again and verified the outcome was still expected according to the Test steps.
[X] I have checked off every checkbox in the PR reviewer checklist, including those that don't apply to this PR.

Screenshots/Videos

Web
https://github.com/Expensify/App/assets/61146594/919506e3-9611-4a12-b1d6-6e8d57be1cad

Mobile Web - Chrome
https://github.com/Expensify/App/assets/61146594/64a89731-666d-4da9-9425-409cbcf5ff69

Mobile Web - Safari
https://github.com/Expensify/App/assets/61146594/6361b651-14a8-45a2-b223-2b0b07d68a46

Desktop
https://github.com/Expensify/App/assets/61146594/48e1d3ea-6e9e-4b7d-9b0c-92b163bfbde5

iOS
https://github.com/Expensify/App/assets/61146594/f77b1388-f9c8-4cb8-95c0-6ef15a9dede5

Android
https://github.com/Expensify/App/assets/61146594/4150177c-37c7-4266-a1d8-bf8223c7a8bd

:hand: This PR was not deployed to staging yet because QA is ongoing. It will be automatically deployed to staging after the next production release.

🚀 Deployed to staging by https://github.com/luacmartins in version: 1.3.92-0 🚀

platform
result

🤖 android 🤖
success ✅

🖥 desktop 🖥
success ✅

🍎 iOS 🍎
success ✅

🕸 web 🕸
success ✅

🚀 Deployed to production by https://github.com/Beamanator in version: 1.3.92-4 🚀

platform
result

🤖 android 🤖
success ✅

🖥 desktop 🖥
success ✅

🍎 iOS 🍎
success ✅

🕸 web 🕸
success ✅

🚀 Deployed to staging by https://github.com/luacmartins in version: 1.3.93-0 🚀

platform
result

🤖 android 🤖
success ✅

🖥 desktop 🖥
success ✅

🍎 iOS 🍎
success ✅

🕸 web 🕸
success ✅

🚀 Deployed to production by https://github.com/Beamanator in version: 1.3.93-1 🚀

platform
result

🤖 android 🤖
success ✅

🖥 desktop 🖥
success ✅

🍎 iOS 🍎
success ✅

🕸 web 🕸
success ✅


fail on this test case

for string Ab3bd the output should be 2, i.e. string shoule be Adb3bdA, but your programs gives 4.
FOR THIS :
https://github.com/royalpranjal/Interview-Bit/blob/master/Strings/Minimum Characters required to make a String Palindromic.cpp

I guess you misinterpreted the question. Look again at your version of string, you've added an extra A at the end (index 6) and a 'd' at index 1, which is not there in the input string.
You need to add at the beginning. To make it a palindrome, you remove each character from the end and see if it makes a palindrome. For the input, Ab3bd, we remove b3bd from the end and then we get the palindrome 'A', so we need to add four characters at the beginning to make the input string a palindrome.
Hope this clarifies your query.


nb-cli: init at 1.4.1

Description of changes
nb-cli 1.4.1 Pypi
python3Packages.cashews 7.1.0 Pypi
python3Packages.noneprompt 0.1.9 Pypi

Things done

Built on platform(s)

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

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

[ ] sandbox = relaxed
[ ] sandbox = true

[ ] Tested, as applicable:

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

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

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

[ ] Fits CONTRIBUTING.md.

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

Result of nixpkgs-review pr 314899 run on x86_64-linux 1

10 packages built:

nb-cli
nb-cli.dist
python311Packages.cashews
python311Packages.cashews.dist
python311Packages.noneprompt
python311Packages.noneprompt.dist
python312Packages.cashews
python312Packages.cashews.dist
python312Packages.noneprompt
python312Packages.noneprompt.dist


How to Add Button in the Toolbar

Version

1.03
Test Environment

Windows 10
Current Behavior

I started exploring Tui-editor which contains most of the required features. I want to add the button for Info,Warning and Error Box to the Toolbar. i got the reference for adding markdown-it-container to the TUIEditor with the piece of code from the link #27.But, i  am not able to find a way to add the button and also  while looking at the document ,i saw that the ToolBar API has addButton method. However, i am not getting the toolbar instances in  editor.
Expected Behavior

It would be great if you provide a way to get the access for toolbar to add button

covered in #85


how can I make use of Duckling in RASA NLU?

Used backend / pipeline (spacy_sklearn.):
Operating system (UBUNTU):
Issue:
I want an example of using duckling in rasa NLU.
Content of configuration file (if used & relevant):

will ner_duckling classify any named entity a user specifies, or do I need to add training data with that entity?

Hello!
My current config file is in json format and I install duckling module but I don't know how to add it in the config file.This is the content of file(path and data are not relevant):
{
"project":"nav-os",
"language":"en",
"pipeline":"spacy_sklearn",
"path" :"/home/costi/Documents/arhive/automated-data-training-master",
"data" :"/home/costi/Documents/arhive/rasa_train.json"
}
I don't have acces to your Gitter.Thanks

which version of rasa_nlu are you using? this is a very old config format 😄
you should change your pipeline to contain all the specific components, and then add ner_duckling like specified here: https://nlu.rasa.com/pipeline.html#ner-duckling

Is duckling also supported for german? The wit.ai website does not list german:
https://duckling.wit.ai/
But the python wrapper does:
https://github.com/FraBle/python-duckling/blob/master/duckling/language.py#L8
Now I am wondering if german duckling is supported and the docs are just old. Did you test that?

it does indeed support it

@akelad Is there nay way to use wit.ai duckling component in rasa_nlu? or is they are same?

@akelad Is there any way to use wit.ai duckling component in rasa_nlu? or is they are same?

It is the same. Keep in mind though that ner_duckling is being phased out and uses a very old version of Wit's Duckling. It's recommended to use ner_duckling_http, which can use the latest version of Duckling.

@wrathagom unlike ner_duckling, ner_duckling_http doesn't work at all. Can you help me, why? Here is my pipeline
pipeline:
- name: "nlp_spacy"
- name: "tokenizer_spacy"
- name: "intent_entity_featurizer_regex"
- name: "intent_featurizer_spacy"
- name: "ner_crf"
- name: "ner_duckling_http"
- name: "ner_synonyms"
- name: "intent_classifier_sklearn"

please ask usage questions on the forum, there's info on how to configure this here: https://rasa.com/docs/nlu/components/#ner-duckling-http

@akelad - the sad part is the urls you have specified seems to be not working now. We keep getting "Oops… this page doesn't exist." error when we navigate.


Two problems with documentation to do with prompts: 1) Oh My Posh might be overkill; 2) the instructions for installing Oh My Posh

It would be good were this (overly?) long page to disclose how one simply gives a colour to the prompt (and differentially to its various elements, if that is possible without a plugin), as against going the whole way with the 'Oh My Posh' plugin. The page does include a link to a page that treats the PowerShell Prompt and which, sort of, treats how to change the colour of that prompt. But what is wanted is an easy way for Windows Terminal users to find a reasonably thorough guide to changing the prompt's colour. For, setting that colour is fairly basic stuff, and yet users new to Windows terminal will not know how to do it.

(a) The aforementioned webpage about 'Oh My Posh' gives a command for installing that program and then a few lines later says, in effect: 'hey! Don't use that installation command - use this one (the Windows Store one) instead'! I ended up aborting the first command and then running the second. (b) That same webpage recommends the command oh-my-posh init pwsh --config "$env:POSH_THEMES_PATH\paradox.omp.json" | Invoke-Expression, which throws a warning (albeit perhaps from my linter). The warning is: `Invoke-Expression is used. Please remove Invoke-Expression from script and find other options instead.'

Thanks for the feedback! I moved this over to our docs repo: https://github.com/MicrosoftDocs/terminal/issues/787


Add a ClearCurrent method to IView or IWindowPlatform

[x] I have definitely checked that there are no proposals for this already in the proposals folder

Summary of feature
Currently there's no way to clear a thread's current context and initiate a pipeline flush (i.e. glfwMakeContextCurrent(NULL). One should be added.
Comments
I'm not sure whether to put this in IView or IWindowPlatform.

@Ultz/silk-working-group I'm not sure whether to put this in IView or IWindowPlatform. Which do you think is better
_window.MakeCurrent();
Silk.NET.Windowing.Window.ClearContext();

or
_window.MakeCurrent();
_window.ClearContext();

I think the latter makes more sense.

The second one looks better to me too though it feels strange since you are changing a global status via an instance.

Yeah I agree which is why I was torn in where it would go, but I think the 2nd one is better because it deals with special cases such as those where you are using two different windowing platforms.

The second one makes sense but only if it holds the current context. I would prefer an additional static method if you want to clear the context without condition. In this case I wouldn't like the second way with an instance. Cause it has nothing to do with this instance. In case of two window platforms I would prefer internal logic to handle it and not the instance approach.

First one makes the most sense, second one is the cleanest. Depends on what we want out of those two tbh.

I think we should put it in IView as that's where the user would likely expect to find it, however nonsensical.

How about this: You add the ClearCurrent method to IView as mentioned. But it only clears the context (calls MakeCurrent with null) if its context is currently active (if (ActiveView == this) MakeCurrent(null)). This would add the need to store the IView with the current context in a static variable though. But it would be a nice feature to be able to access the "current" IView. So a static property like ActiveView in the IView interface would be nice. Moreover you can clear the context globally by calling IView.ActiveWindow.ClearContext(). But you can also clear the context of a specific window with the given instance as well and don't clear the context if another view holds the current context. I think this would be nicer and would make more sense.

That's brilliant! As for accessing the active view, that'll be very hard to implement given that we need to construct an internal map of WindowHandle*s to IViews. It could be done though, perhaps in the Silk.NET.Windowing.Extensions package. As a compromise, we could also introduce a IsCurrent property.

If we could enforce each IView.MakeCurrent implementation to set the ActiveView to this, it would be much easier. But this would be only possible within our own IView implementations. This would also need no internal map imho.

IsCurrent would also be nice. But I would add this simply as an extension as it is simply ActiveView == theViewToCheck.

Another thing is that multiple views can be current at one time i.e. on different threads. I think the best solution is as follows:

Add IView.ClearCurrent which will call glfwClearCurrentContext if glfwGetCurrentContext is the current view.
Add IsCurrent which will return true if glfwGetCurrentContext is the current view.
Add IWindowPlatform.ClearCurrentContexts (and Window.ClearCurrentContexts) which will call glfwClearCurrentContext without running any prerequisite checks.

Yes this sounds reasonable. And then one could just query the "active views" by searching for the views with IsCurrent == true inside a collection of his choice (e.g. a self-managed map).

Yes this sounds reasonable. And then one could just query the "active views" by searching for the views with IsCurrent == true inside a collection of his choice (e.g. a self-managed map).

Perhaps we could add ActiveView to the WindowManager class in Silk.NET.Windowing.Extensions (not a lot of people know about this class :P, so it's worth a look if you're dealing with multiple views)

You got me. ;D After a look at it I agree. It's perfect for the addition of ActiveViews.

I actually can't remember whether or not I moved WindowManager over to the views API, but that's subject for another issue. To summarize:

Add IView.ClearCurrent which will call glfwClearCurrentContext if IsCurrent is true.
Add IsCurrent which will return true if glfwGetCurrentContext is the current view.
Add IWindowPlatform.ClearCurrentContexts (and Window.ClearCurrentContexts) which will call glfwClearCurrentContext without running any prerequisite checks.
Add ActiveWindows to WindowManager


stater code for side nav

work in progress, need to add responsive size options

Please edit code so that it passes Travis


Enforce Go linting policy status sync

Signed-off-by: Chunxi Luo<EMAIL_ADDRESS>https://github.com/open-cluster-management/backlog/issues/18035

/unhold

/lgtm


[TF 2.0] Cannot use tf.image.decode_image with tf.map_fn in tf.data.Dataset.map when elems is empty

Tensorflow: latest tf-nightly-2.0-preview (as of today).
Python 3.7
Ubuntu 19.04

When using tf.data.Dataset.map , it can happen that an image does not have any objects in it and so tensors describing masks or boxes are empty.
A common preprocessing step is to decode a list of masks encoded as string in JPEG or PNG. Consider the following code:
import tensorflow as tf
import numpy as np

def generate_encoded_image():
    im = np.random.random((256, 256, 1)).astype('uint8')
    return tf.image.encode_png(im)

def fake_data_generator(feature):
    # Here you can change the range to modify the number of objects.
    # The issue araise when feature does not have any objects in it,
    # when `n_objects = 0`.
    n_objects = np.random.randint(0, 1)

    feature = {}
    feature['label_ids'] = np.random.random((n_objects,)).astype('int64')
    feature['bboxes'] = np.random.random((n_objects, 4)).astype('float32')

    if n_objects == 0:
        feature['masks'] = tf.constant([], dtype=tf.string)
    else:
        feature['masks'] = [generate_encoded_image() for _ in range(n_objects)]

    return feature

def decode_masks(feature):
    decode_image_fn = lambda x: tf.image.decode_image(x)

    # Using the following works
    # decode_image_fn = lambda x: tf.constant([3, 4, 5], dtype=tf.uint8)

    feature['masks_new'] = tf.map_fn(decode_image_fn, feature['masks'], dtype=tf.uint8)
    return feature

dataset = tf.data.Dataset.from_tensors(tf.range(20))
dataset = dataset.map(fake_data_generator)
dataset = dataset.map(decode_masks)

for feature in dataset:
    pass

Running it as this will raise this error:
---------------------------------------------------------------------------
InvalidArgumentError                      Traceback (most recent call last)
<ipython-input-135-af99bdf86e00> in <module>
     36 dataset = dataset.map(decode_masks)
     37
---> 38 for feature in dataset:
     39     pass

~/local/conda/envs/tf/lib/python3.7/site-packages/tensorflow/python/data/ops/iterator_ops.py in __next__(self)
    584
    585   def __next__(self):  # For Python 3 compatibility
--> 586     return self.next()
    587
    588   def _next_internal(self):

~/local/conda/envs/tf/lib/python3.7/site-packages/tensorflow/python/data/ops/iterator_ops.py in next(self)
    621     """
    622     try:
--> 623       return self._next_internal()
    624     except errors.OutOfRangeError:
    625       raise StopIteration

~/local/conda/envs/tf/lib/python3.7/site-packages/tensorflow/python/data/ops/iterator_ops.py in _next_internal(self)
    613             self._iterator_resource,
    614             output_types=self._flat_output_types,
--> 615             output_shapes=self._flat_output_shapes)
    616
    617       return self._structure._from_compatible_tensor_list(ret)  # pylint: disable=protected-access

~/local/conda/envs/tf/lib/python3.7/site-packages/tensorflow/python/ops/gen_dataset_ops.py in iterator_get_next_sync(iterator, output_types, output_shapes, name)
   2118       else:
   2119         message = e.message
-> 2120       _six.raise_from(_core._status_to_exception(e.code, message), None)
   2121   # Add nodes to the TensorFlow graph.
   2122   if not isinstance(output_types, (list, tuple)):

~/local/conda/envs/tf/lib/python3.7/site-packages/six.py in raise_from(value, from_value)

InvalidArgumentError: Tried to stack elements of an empty list with non-fully-defined element_shape: <unknown>
	 [[{{node map/TensorArrayV2Stack/TensorListStack}}]] [Op:IteratorGetNextSync]

The error only happens when n_objects = 0 and when I use tf.image.decode_image.
I also tried to use something like:
if tf.shape(feature['masks'])[0] == 0:
        feature['masks_new'] = tf.constant([], dtype=tf.uint8)
    else:
        feature['masks_new'] = tf.map_fn(decode_image_fn, feature['masks'], dtype=tf.uint8)

But it raises the same error. It looks like  tf.shape(feature['masks'])[0] == 0 is never True.
I also tried to @tf.function for decode_masks() but then TF complains because I modify the input structure:
ValueError: The two structures don't have the same nested structure.

First structure: type=tuple str=({'label_ids': <tf.Tensor 'feature_1:0' shape=(0,) dtype=int64>, 'bboxes': <tf.Tensor 'feature:0' shape=(0, 4) dtype=float32>, 'masks': <tf.Tensor 'feature_2:0' shape=(0,) dtype=string>},)

Second structure: type=tuple str=({'label_ids': <tf.Tensor 'feature_1:0' shape=(0,) dtype=int64>, 'bboxes': <tf.Tensor 'feature:0' shape=(0, 4) dtype=float32>, 'masks': <tf.Tensor 'feature_2:0' shape=(0,) dtype=string>, 'masks_new': <tf.Tensor 'map/TensorArrayV2Stack/TensorListStack:0' shape=<unknown> dtype=uint8>},)

More specifically: The two dictionaries don't have the same set of keys. First structure has keys type=list str=['label_ids', 'bboxes', 'masks'], while second structure has keys type=list str=['label_ids', 'bboxes', 'masks', 'masks_new']

During handling of the above exception, another exception occurred:

I am out of idea here. Help is welcome :-)

I was able to reproduce the issue with TensorFlow version 2.0 on Colab.

Could you try rewriting you decode_image_fn as follows
def decode_image_fn(x):
  t = tf.image.decode_image(x)
  t.set_shape((256, 256, 1))
  return t

The set_shape is important here because otherwise the runtime has no way of knowing the complete shape of the output tensor of tf.map_fn.

Thank you @saxenasaurabh.
It works using  t.set_shape((256, 256, 1)) but the image dimensions are dynamic and read during runtime. So the following:
def decode_masks(feature):

    image_shape = tf.TensorShape([feature['size'], feature['size'], 1])

    def _decode_image_fn(encoded_image):
        image = tf.image.decode_image(encoded_image)
        image.set_shape(image_shape)
        return image

    feature['masks_new'] = tf.map_fn(_decode_image_fn, feature['masks'], dtype=tf.uint8)
    return feature

raises this error:
<ipython-input-25-46810f3be453> in decode_masks(feature)
     23 def decode_masks(feature):
     24
---> 25     image_shape = tf.TensorShape([feature['size'], feature['size'], 1])
     26
     27     def _decode_image_fn(encoded_image):

~/local/conda/envs/tf/lib/python3.6/site-packages/tensorflow/python/framework/tensor_shape.py in __init__(self, dims)
    772       else:
    773         # Got a list of dimensions
--> 774         self._dims = [as_dimension(d) for d in dims_iter]
    775
    776   @property

~/local/conda/envs/tf/lib/python3.6/site-packages/tensorflow/python/framework/tensor_shape.py in <listcomp>(.0)
    772       else:
    773         # Got a list of dimensions
--> 774         self._dims = [as_dimension(d) for d in dims_iter]
    775
    776   @property

~/local/conda/envs/tf/lib/python3.6/site-packages/tensorflow/python/framework/tensor_shape.py in as_dimension(value)
    714     return value
    715   else:
--> 716     return Dimension(value)
    717
    718

~/local/conda/envs/tf/lib/python3.6/site-packages/tensorflow/python/framework/tensor_shape.py in __init__(self, value)
    183       raise TypeError("Cannot convert %s to Dimension" % value)
    184     else:
--> 185       self._value = int(value)
    186       if (not isinstance(value, compat.bytes_or_text_types) and
    187           self._value != value):

TypeError: int() argument must be a string, a bytes-like object or a number, not 'Tensor'

Is there is any workaround to resize from dynamic values? After all, my code was working well (without using the reshaping step). All I need is to make it work when batch_size = 0.

@hadim  Did you find the solution to this problem ? It will be appreciated as I am facing the same

@hadim
Were you able to resolve this error?
I am facing a similar issue.
Thanks

With BatchNormalization layers, I think batching with dataset.batch(batch_size, drop_remainder=True) might help


Replace gif encoder with MediaRecorder+WebP/H.264

Modern browser can generated WebP/M264 easily these days. We should support this file format which should dramatically decrease the size of generated gifs.

Dupe of #1917


Pufferd modifying server config file on startup

Pufferd modifies servers config files on startup. Revoking write access to the config file for pufferd solves the problem. Why is it modifying them in the first place? I can't find any code anywhere that suggests that pufferd writes to the config file.
Upon creating a new server the config is written correctly.
The modification appears to be related to keys who have the same value but are defined at the top level, and nested as sub-keys. As well as the removal of empty lists.
Written config:
https://paste.ee/p/4q2Dh
template after restart
https://paste.ee/p/vXJoi

Thanks!


ARROW-11012: [Rust] [DataFusion] Make write_csv and write_parquet concurrent

Write partitions in parallel instead of one at a time. This results in a 4-5x speedup for the TPC-H file conversion process when repartitioning.
I would like to optimize this further in the case that there are more partitions than cores. I am not sure whether to do that as part of this PR or as a follow up since I need to make similar changes in other places and it might be better to tackle it end-to-end.

Codecov Report

Merging #9008 (717a682) into master (2f5d592) will increase coverage by 0.33%.
The diff coverage is 73.68%.

@@            Coverage Diff             @@
##           master    #9008      +/-   ##
==========================================
+ Coverage   82.54%   82.87%   +0.33%
==========================================
  Files         201      201
  Lines       49983    49739     -244
==========================================
- Hits        41256    41220      -36
+ Misses       8727     8519     -208

Impacted Files
Coverage Δ

rust/datafusion/src/execution/context.rs
89.19% <73.68%> (-0.26%)
:arrow_down:

rust/parquet/src/encodings/encoding.rs
95.24% <0.00%> (-0.20%)
:arrow_down:

rust/arrow/src/array/transform/utils.rs
100.00% <0.00%> (ø)

rust/arrow/src/array/transform/primitive.rs
100.00% <0.00%> (ø)

rust/arrow/src/array/transform/variable_size.rs
100.00% <0.00%> (ø)

rust/arrow/src/util/bit_chunk_iterator.rs
96.55% <0.00%> (+0.08%)
:arrow_up:

rust/arrow/src/array/transform/mod.rs
88.20% <0.00%> (+1.01%)
:arrow_up:

rust/arrow/src/array/transform/list.rs
83.87% <0.00%> (+2.05%)
:arrow_up:

rust/arrow/src/array/transform/fixed_binary.rs
84.21% <0.00%> (+5.26%)
:arrow_up:

rust/arrow/src/compute/kernels/filter.rs
98.47% <0.00%> (+36.88%)
:arrow_up:

Continue to review full report at Codecov.

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


Add double input and allow setting display format

Closes #489.

This largely looks good, but I won't be able to actually review until next week (just got vaccinated and feel like crap at the moment).
Although, I'm not sure why CI didn't run after I clicked approve, hrm...

No worries, get well soon!

Heya! Sorry this got lost in the shuffle.
We've since changed both how we handle number inputs and how we handle labels. Would you have time to rebase and tag me again when it can be merged with those changes?
If you don't have time, but still think this should merged, lmk and I'll handle the work for you too!

Some strange git stuff happended. I'll open a new PR soon.


Revive --use_dldt

Since dldt model consists of two files, we need to create a
stamp file to bundle them.
This partially reverts
https://github.com/pfnet-research/chainer-compiler/pull/662

/test


Improve the error message in case an unwrap happens in the test macro

This should help us debug the flaky tests currently happening #281, #280

bors merge


add support for latest Avalonia Build

Avalonia Nightly Build changed several APIs (most of them are ready for the next preview release). This PR adds support for it.

Hello, @laolarou726
This is for Avalonia 11 preview 9?

Hello, @laolarou726
This is for Avalonia 11 preview 9?

I'm using latest nightly for this one. Because I noticed when I update my main project to latest nightly, this package stop working.

@SKProCH Just updated Avalonia 11.0.0 RC1.1! This should be ready for release.

Hm, why you removed HamburgerMenu, @laolarou726 ?

Hm, why you removed HamburgerMenu, @laolarou726 ?

It broke when I updated to the latest Avalonia, so I just simply removed them.

Should be published as 3.0.0-avalonia11-preview6. Thanks.


controller: mark replica failed when we detect a bad replica while doing SnapshotPurge

For the error during the SnapshotPurge progress, it will be recorded by
the engine/replica process automatically. Then once there is an error
in the engine's purgeStatus, the volume controller will mark the replica
as failed.
longhorn/longhorn#1895

Running E2E core tests

Running E2E core tests

Is there any purge error that can be ignored?
@shuo-wu I think no error can be ignored in e.Status.PurgeStatus. The error replica is already purging snapshots already caught in the start snapshot purge command, and it is not recorded to e.Status.PurgeStatus, it is just recorded in the volume's event.

Is there any purge error that can be ignored?
@shuo-wu I think no error can be ignored in e.Status.PurgeStatus. The error replica is already purging snapshots already caught in the start snapshot purge command, and it is not recorded to e.Status.PurgeStatus, it is just recorded in the volume's event.

There is one E2E test that failed. It is because of the test's logic and it is tracked at https://github.com/longhorn/longhorn/issues/2167

There is one E2E test that failed. It is because of the test's logic and it is tracked at https://github.com/longhorn/longhorn/issues/2167

This PR is ready to be review

This PR is ready to be review


Can not get featherjs redis

I have a problem regarded to get featherjs redis. When i run npm install feathers-redis --save in command line. It was through out this error:
npm ERR! Darwin 16.5.0
npm ERR! argv "/usr/local/bin/node" "/usr/local/bin/npm" "install" "feathers-redis" "--save"
npm ERR! node v7.7.3
npm ERR! npm  v4.1.2
npm ERR! code E404

npm ERR! 404 Registry returned 404 for GET on https://registry.npmjs.org/feathers-redis
npm ERR! 404
npm ERR! 404  'feathers-redis' is not in the npm registry.
npm ERR! 404 You should bug the author to publish it (or use the name yourself!)
npm ERR! 404
npm ERR! 404 Note that you can also install from a
npm ERR! 404 tarball, folder, http url, or git url.

npm ERR! Please include the following file with any support request:
npm ERR!     /Users/dattq6/MCDATA/VideoStreaming/server/npm-debug.log

Please tell me, how can i get featherjs redis?

It's not on npm, yet.  There are challenges to adapting the Feathers query syntax to the way Redis is used.  See the other issues for more details.  As a result, it has not been published and there is not currently a planned release date until somebody comes up with a good solution to the problems outlined in the other issues.

See discussion in https://github.com/feathersjs/feathers-redis/issues/4#issuecomment-306995921


Add poweroff Icon

Types of Changes
Prerequisites

[x] I have read the CONTRIBUTING document
[x] My code follows the code style of this project

Contribution Type

[ ] Bug fix (non-breaking change which fixes an issue, please reference the issue id)
[ ] New feature (non-breaking change which adds functionality, make sure to open an associated issue first)
[ ] Breaking change (fix or feature that would cause existing functionality to change)
[ ] My change requires a change to the documentation
[ ] I have updated the documentation accordingly
[ ] I have added tests to cover my changes
[x] All new and existing tests passed

Description
Add new Icon (power_settings_new) from materials UI using the Icon generator

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


feat!: add zeebe gateway's REST API

Which problem does the PR fix?
Zeebe is in the process of migrating most of its API to REST, leaving only performance critical features to gRPC. This means for most users, the REST API should be sufficient, and the gRPC part will be turned off. This will enable many users who are unable to deploy gRPC (or HTTP/2) applications in their environment.
What's in this PR?

[x] Adds a new rest port to the gateway service

[x] Adds new zeebe-gateway.service.restPort and zeebe-gateway.service.restName configure the port and port name of the REST API
[x] Renames zeebe-gateway.service.gatewayPort and zeebe-gateway.service.gatewayName to zeebe-gateway.service.grpcPort and zeebe-gateway.service.grpcName respectively.

[x] Adds a new zeebe-gateway.contextPath value which allows deploying the REST API behind a context path in the global Camunda ingress
[x] Renames the previous ingress template to ingress.grpc

[x] Also renames the values from zeebe-gateway.ingress.* to zeebe-gateway.ingress.grpc.*

[x] Adds a new ingress template for the REST API which speaks HTTP

[x] Adds the new values under zeebe-gateway.ingress.rest

Having to split the ingress was required as they speak different protocols. Supporting the context path aligns Zeebe with the other applications. Finally, renaming the default gatewayPort, gatewayName. and ingress, to be gRPC specific makes the distinction between the two APIs clear.
Alternatively, we could have kept the defaults for the REST API, as this is what will be the default in the future. Either way, this is a breaking change. Do advise about this if you'd like a different approach.
Checklist
Please make sure to follow our Contributing Guide.
Before opening the PR:

[x] In the repo's root dir, run make go.update-golden-only.
[x] There is no other open pull request for the same update/change.
[x] Tests for charts are added (if needed).
[x] In-repo documentation are updated (if needed).

After opening the PR:

[x] Did you sign our CLA (Contributor License Agreement)? It will show once you open the PR.
[x] Did all checks/tests pass in the PR?

To-Do

[ ] Decide how to approach backwards compatibility and when to "break" it, essentially
[ ] Integration tests? I did not add any yet because the REST API doesn't actually serve anything just yet. With 8.5 it will have a single endpoint. Maybe we can add a test that just checks it's accessible? :shrug:

Just rebased on latest main

@jessesimpson36 how is progress on this PR?
As @npepinpe is on FTO, let me know if there's anything needed from my side to get this PR merged.

I haven't done much to help this PR, just simply rebasing onto latest main and doing some manual tests.  So far, I'm liking the current implementation.  I've been wondering if we should make it a breaking change or add a backwards compatibility variable that processes zeebe-gateway.ingress.* as if it were zeebe-gateway.ingress.grpc.*, but that might actually cause more confusion if we did that.
I'm hoping I can look more into it this week, just been busy. Maybe I should get another distro member on it as well to ensure the PR gets handled.

Thanks for the update @jessesimpson36. Zeebe aims to expose these changes with 8.5.0-alpha2 which is next week. So it would be good if we make progress this week.

Quick note, the health probes remain on the httpPort (which is the monitoring port)

you say that... and yet the readiness probes don't work on the http port. I can still revert the commits.

Maybe that had changed since I went on holidays...but it wasnt supposed to be the case. Double check with Nikola/koevski

Ok.  I just saw that the readiness probes werent working and assumed that you all moved that to the rest api port. I'll contact Nikola.

I reverted my changes until we figure out the issue.

I think I see the issue,  the integration test configures "/zeebe" as the contextPath, and yet, the zeebe application does not pass in any setting informing the application of the contextPath, so zeebe is still actually serving requests under the base path.

automated tests are passing. I'm going to do a couple more manual tests.

Manual tests are going well. But now I want to get back to fixing the context path.

Ah I see, looks like the gateway is being a little unique and configures their context path on
SPRING_WEBFLUX_BASE_PATH.  I'll change the PR to reflect this.

Tests are passing, but they will fail due to me removing the SNAPSHOT tests from the test values.yaml file.

rebased on latest main

I created this issue:
https://github.com/camunda/camunda-platform-helm/issues/1392
But I will not require it to be resolved for the sake of this PR since we're trying to get something released for alpha2.
if you don't set the contextPath for the zeebe gateway, it'll work fine.

Since this will break our existing CI, we should hold off on merging until we have application images that support this feature. Otherwise, I'm going to approve this PR.

@jessesimpson36 I think all the C8 components have been released by now. Can we merge this PR?

@jessesimpson36 there is a small refactor needed in this PR because of the changes we have in the main branch.
If you need any help with this PR, please ping me.

I've adjusted all changes, but the final thing missing is the contextPath var in Zeebe Gateway deployment. It's not passed to the deployment so the ingress check fails.

I've disabled the test since @npepinpe told me the contextPath will be added in Identity.
So we can merge this and enable the test once the contextPath is added.

Just to clarify, we'll add the context path and the authentication/Identity integration soon when we merge pending PRs on our side :sweat_smile: Not that Identity will add anything for us :)

@npepinpe thanks for the clarification :raised_hands:


Clear mod_mask for i_CTRL-V_digit; Break get_literal() loop if the key has non-Shift modifiers

If one types something like i<C-V>u3c0<M-F3>, the <M- modifier is also applied to the π typed using i_CTRL-V_digit, which doesn't seem right. The solution is to just clear mod_mask, as a character typed using i_CTRL-V_digit cannot have a mod_mask.

I also found out that <D- modifier on macOS may behave inconsistently after i_CTRL-V: when the modified key is o, O, x, X, u, U, or a digit, it is treated as a part of an i_CTRL-V_digit sequence, while in other cases it is inserted literally. I think this behavior may be unexpected.

The test does not fail without applying the fix.  Using feedkeys() with CTRL-V does not set the modifier mask.
Have a look at src/testdir/test_termcodes.vim, RunTest_modifyOtherKeys()

Surprising I'm now unable to reproduce the previous wrong behavior either. I'll do some more testing.

Oh, I'm unable to reproduce in Insert mode, but still able to reproduce it in Cmdline mode.

This is strange, as I can recall that I previously reproduced that in Insert mode.

I'll just change it to use :append for now. test_utf8.vim doesn't seem the best place for the test. I'll try to find another place to put it.

I moved it to Test_edit_CTRL_V(). The CheckFeature ebcdic should actually be CheckNotFeature ebcdic, and the test_override() somehow doesn't seem needed?

When using :append this does fail without the patch:
Test_edit_CTRL_V line 19: Expected 'LcL<C-F2>πjπ<M-F3>' but got 'Lc<C-L><C-F2>πj<M-π><M-F3>'.

The test failure is in Test_out_cb(), which is unrelated.


Since version 7.0.0: Undefined symbols for architecture x86_64:   "OBJC_CLASS$_FIRAnalytics"

[REQUIRED] Step 1: Describe your environment

Xcode version: 11.7
Firebase SDK version: 7.1.0
Installation method: CocoaPods
Firebase Component: Core

[REQUIRED] Step 2: Describe the problem
Steps to reproduce:
s.dependency 'Firebase/Analytics'
s.dependency 'Firebase/Performance'
s.dependency 'Firebase/Messaging'
s.dependency 'Firebase/Crashlytics'
pod install, build,  and then, xcode throws error

Please fill out the issue template. Based on the repro steps you're listing, it looks like you're trying to develop a CocoaPod. Make sure Analytics is correctly linked into your build target.

Please fill out the issue template. Based on the repro steps you're listing, it looks like you're trying to develop a CocoaPod. Make sure Analytics is correctly linked into your build target.

yes, I am trying to develop a private pod. The pod provides some functions based on Firebase. Since I add  the firebase as
a dependency in podspec file and build it, then Xcode throws the error.  I didn't do any other settings for Firebase in my project.

Can you share a sample project using a local podspec?


[BUG]  White Screen on ATOM at Startup on Ubuntu

I installed Atom 1.45 (and previous versions), the .deb version on Ubuntu 18.04
and all goes well until I try to start it, resulting in a blank white screen (unresponsive).
I am running MATE session, but error is the same if I connect using ssh from an X11 environment.
I have had this problem for about 6 months and nobody seems to have any idea.   There have
been various issues relating to the "white screen" issue dating back from some time ago under different versions and circumstances.  I posted on the 'Atom' forum but nobody has responded.
Steps to reproduce

Just start atom.   White screen.  Nothing.
Start looking for alternative Julia IDE's

Did you try the possible solutions suggested here?
In any case, this isn't an issue with Juno, so I'll close this.

Thanks - the disable-gpu subcommand worked!!
I'm sorry for bringing this here, but I had searched/posted on the other forums (obviously missed
the one you found) over a period of about 6 months!!


修复logoutbug 添加webpackbar 插件

What is the purpose of the change
修复logoutbug 添加webpackbar 插件
Related issues/PRs
Related issues: #99
Brief change log
solidui-web/scripts/webpack.base.js  【add webpackbar plugin】
solidui-web/scripts/webpack.dev.js 【optimize build log】
solidui-web/src/layouts/DefaultLayout.tsx【fix logout buf】
Checklist

[x] I have read the Contributing Guidelines on pull requests.
[x] I have explained the need for this PR and the problem it solves
[x] I have explained the changes or the new features added to this PR
[x] I have added tests corresponding to this change
[x] I have updated the documentation to reflect this change
[x] I have verified that this change is backward compatible
[x] If this is a code change: I have written unit tests to fully verify the new behavior.

great, thx.


Add custom command to help menu

Hi,
I love picocli and we use it extensively at our company. I'm running into the following limitation.
We're using picocli file arguments as config files and it works as expected.
However, when uses request help and the help menu is shown they do not see how config files can be used when running our tool.
-> it would be great if we could add a custom help message that looks like the following
@path/to/config.txt config file which sets property x,y,z

input input file blablablabl
output output file blablablabla

Do you have any suggestions as to how we can achieve this? If not I would like to request this feature.

Could you please share a small example command, and what you would like the usage help message to look like ideally?

After reading again I think I understand. (Sorry, brain is asleep.)
If you have some fixed argument files that are deployed with the command, you could mention the path to the argument file(s) in the footer. The footer is multi-line, and of unlimited length. See also https://picocli.info/#_header_and_footer

Sounds like a great idea. Thank you very much!

No worries. Enjoy!


[Feature] - Add additional syntax highlighting for GoLang

Description
Additional syntax highlighting for GoLang
Feature for Platform & Language :

Platform: IntelliJ & GoLand
Platform Version: 2021.1.3 or higher
Language: Go

Additional Fix - https://github.com/dinbtechit/vscode-theme/pull/19


[Bypass] Thaumcraft Golems interacting with inventories

https://griefdefender.github.io/debug/?kIg63aOIkd
There's a golem running around, harvesting some things and putting them into a chest. Harvesting works fine, putting items into the chest works fine, except...
Golem interacting with the inventory does not show up in the debug. regardless if the chest is in claim or in wilderness. So, the golems ignore claims when it comes to chest interactions - both putting items in and taking them out.
Another debug: https://griefdefender.github.io/debug/?q7oNGuap17
Apparently, item-pickup is also not checked for them.
Separately - I can break my own golem with Golemancer's Bell, even if it is in another player's claim (probably intended).
P.S. Control Seal: Store makes Golems put things into the container it is placed onto; Control Seal: Empty makes them take items out of the container it is on.

Unfortunately this is due to how golems interact with inventory using direct methods that have no events. You have 2 options

Deny the golems from entering a claim.
Post a ticket on https://github.com/Azanor/thaumcraft-beta/issues requesting events.


Dropdown values

This lib works great so far, until i try to set values in dropdown fields. They are not applied at all.
When i set the value elsewhere (eg. in Firefox) and compare the final documents, there is some binary stuff added at the end which defines the selected dropdown value, but i don't understand that format yet to reproduce it programatically.
Anyone can help?

Same here. When I've set a value from a dropdown field this value was not shown in Firefox but in Chromium.


fast-async babel plugin modifies Function.prototype globally

I wonder if we can let the user decide to use fast-async themselves, rather than being baked in this project.
One reason could be that it can impact other parts of their app (see my PR to react-native https://github.com/facebook/react-native/pull/27264).
It currently breaks react native apps that does dynamic styling through passing a function to StyleSheet.create

I would be okay moving back to the generator transformer. As long as someone PRs something to the docs on how to properly use fast-async

Would you be willing to do that?

Yes! I'll submit a PR :)

I think I've found another solution: exclude nodent runtime.
https://github.com/tannerlinsley/react-query/pull/52.


chore: allow renovate @types/node update

It's a dev dep.

Dedupe package-lock.json: renovate lock file maintenance PR merge has
introduced typescript-eslint related deps duplicates

I wonder what makes it do this 🤔

Renovate does not run npm dedupe on PR maintenance.

I wonder what makes it do this 🤔

Renovate does not run npm dedupe on PR maintenance.

One can make it do so: https://docs.renovatebot.com/configuration-options/#postupdateoptions
But in this case the normal hoisting should be enough, the npm dedupe only differs by preferring sharing dependencies rather than newest dependencies, not sure why it caused duplication in this case

Renovate does not run npm dedupe on PR maintenance.

One can make it do so: https://docs.renovatebot.com/configuration-options/#postupdateoptions

In that PR?

But in this case the normal hoisting should be enough, the npm dedupe only differs by preferring sharing dependencies rather than newest dependencies, not sure why it caused duplication in this case

Deduping algo is not triggered by default at install/update in npm/pnpm, probably for performance reason.

Deduping algo is not triggered by default at install/update in npm/pnpm, probably for performance reason.

They themselves note:

because npm favors updates by default, even when doing so causes duplication

I dug into why this duplication happens:
It's because @typescript-eslint/utils has a alpha40 release but typescript-eslint is still at alpha39 and<EMAIL_ADDRESS>and<EMAIL_ADDRESS>do like us and and pull in the very latest alpha release of @typescript-eslint/utils and but typescript-eslint@alpha39  specifically requests @typescript-eslint/utils@alpha39 and as such the two get two different versions
I think this is correct behavior, and what users of neostandard will also get.
I have asked in the typescript-eslint discord channel for version 8 how it comes that typescript-eslint is out of sync

I think this is correct behavior, and what users of neostandard will also get.

The definition of correct behavior here differs between package manager.
And the behavior that enforce:

lock file minium size
prefer latest leaf dependencies version when possible by default

will fit a space efficient package management design. pnpm and yarn behaves that way is most case, npm not.
Example: user of neostandard with pnpm will get a deduped local lock file while npm user will get a needlessly oversized lock file with unneeded deps dups. Using npm dedupe makes npm behaves closer to pnpm.

But since the lockfile isn't published it only serves as a reference to the npm based tests that are being run in this repository, to ensure that we catch regressions, so it doesn't really matter here, right?

But since the lockfile isn't published it only serves as a reference to the npm based tests that are being run in this repository, to ensure that we catch regressions, so it doesn't really matter here, right?

How many times npm i or npm ci is run in CI? How many run are cached? What is the installation time between run with and without deduping? What is the cache total size with and without deduping?
Since the CI in that repo is doing deps installation intensively, I would argue that using a space efficient package manager will make it greener :)
As a side note: you can't imagine the amount of space on SCM hosting infra that will be saved if npm lock file were deduped.
I will revert the package-lock.json changes to avoid blocking the other change. And open a ticket/discussion on a space efficient CI when time permits.


Textfiled data is empty

When I enter any thing in textfield after that I do submit the button then keyboard avoid automatically but Textfield is empty why so ?
I don't understand before adding this package I didn't get any error.

@getinfyKiranreddy  can you provide a code example?


Logging into Microsoft Account in Composer 2.1.1 fails due to Tenant not being found

In Bot Composer 2.1.1, when I attempt to login to my Azure account within composer (or if I do this at bot publish time)I am no longer prompted to choose which directory (tenant) to choose from, and instead the process throws an error telling me it cannot find the Tenant it is looking for. In my particular case, the TenantID does exist in Azure, and it actually the one I was using to publish to in Composer 2.1.1.
NOTE: Our company's Azure environment has a number of Tenants set up, however we only ever publish the bot to the same Tenant.
Version: 2.1.1-nightly.289819.d04ceae
Electron: 8.2.4
Chrome: 80.0.3987.165
NodeJS: 12.13.0
V8: 8.0.426.27-electron.0
OS - WIndows
Steps to reproduce the behavior:
Start Composer 2.1.2
In the top right corner, attempt to login, or if already logged in from Composer 2.1.1 (login looks to persist between version) attempt to switch directory
When the login prompt appears, enter your email address corresponding to the Azure account
It will then ask (for me) to approve the login via the authenticator app (NOTE: In 2.1.1, it was asking for my password before this step, so this is also a change and may be the reason for this all going bad)
Once the approval has been given on the Authenticator app, an error is immediately thrown saying the Tenant cannot be found

Hi @kishan2, I'm investigating this.


Support multiple Gmail database processing

Support multiple Gmail database processing. Closes issue #454

@patrickdalla I would say more than 2/3 of all the parsers don't support multi-profile at this time. I've been slowly going through and attempting to update them when I have time (and to also support the timezone offsets as well for reports)


Recurate majdi2019

@trushaadeshara8 do you want me to check something again in particular?

@trushaadeshara8 do you want me to check something again in particular?

No, its all good.
@sgebel  discussion closed


Dose any feature for trigger is optional?

Dose hardware can choose which feature to be implemented for trigger?
e.g. Can hardware just implement load/store address trigger,  not implement data trigger?
Can hardware not implement tinfo, mcontext, scontext. etc.

This is a better question for https://github.com/riscv/riscv-debug-spec/ but I can answer it here.
For WARL fields, the normal WARL rules apply.  It's legal (and common) to implement a subset of mcontrol6 functionality.
The spec is pretty clear about what CSRs are mandatory vs. optional.  For instance:

mcontext: "This register must be implemented if hcontext is implemented, and is optional otherwise."
scontext: "This optional register is..."
tinfo: "This register is optional if... [condition]" and it's mandatory otherwise.

I get it, thank you


iOS: Add build configuration other than Debug and Release

Description
By default they are two build configurations (Debug and Release) that works just fine, however when a new build configuration is added (by duplicating the Release one per example) the build fail targeting it.
React Native version:
System:
OS: macOS 10.15.4
CPU: (4) x64 Intel(R) Core(TM) i7-7567U CPU @ 3.50GHz
Memory: 1.49 GB / 16.00 GB
Shell: 5.7.1 - /bin/zsh
Binaries:
Node: 10.15.3 - /usr/local/bin/node
Yarn: 1.21.1 - /usr/local/bin/yarn
npm: 6.13.4 - /usr/local/bin/npm
Watchman: 4.9.0 - /usr/local/bin/watchman
Managers:
CocoaPods: 1.8.4 - /usr/local/bin/pod
SDKs:
iOS SDK:
Platforms: iOS 13.4, DriverKit 19.0, macOS 10.15, tvOS 13.4, watchOS 6.2
Android SDK:
API Levels: 23, 24, 26, 28
Build Tools: 27.0.3, 28.0.3
System Images: android-28 | Intel x86 Atom_64, android-28 | Google APIs Intel x86 Atom
Android NDK: Not Found
IDEs:
Android Studio: 3.6 AI-192.7<IP_ADDRESS>08749
Xcode: 11.4/11E146 - /usr/bin/xcodebuild
Languages:
Python: 2.7.16 - /usr/bin/python
npmPackages:
@react-native-community/cli: Not Found
react: 16.11.0 => 16.11.0
react-native: 0.62.1 => 0.62.1
npmGlobalPackages:
react-native: Not Found
Steps To Reproduce
Provide a detailed list of steps that reproduce the issue.

Create a new react native project
Open iOS folder in Xcode
Duplicate Release build configuration (name it Stage per example)
Move to the project folder and run the following commande :

react-native run-ios --configuration Stage --device
Expected Results
The app should run fine.
Actual Result
fatal error: module map file 'PathToBuildFolder/Stage-iphoneos/YogaKit/YogaKit.modulemap' not found

Sounds like the CLI is getting confused by the changes made to your xcode project. This appears to be out of scope of React Native itself, can you engage with the CLI repo?


decorators explanation

coverage: 100.0%. remained the same when pulling bb3fd98a1d1217058416e37939b72bdbe0bd88bd on proto into 637399b0aad1300a52915a15e8c17e233a776454 on main.


Add progress indicator to UserDictionary

Usage
Create instance of SimpleProgressIndicator and pass it as argument like below:
from janome.dic import UserDictionary, SimpleProgressIndicator
from janome import sysdic

# create progress indicator
progress_indicator = SimpleProgressIndicator(update_frequency=0.001)

# create user dictionay
user_dict = UserDictionary(
    user_dict="/path/to/userdict.csv",
    enc="utf8",
    type="ipadic",
    connections=sysdic.connections,
    progress_handler=SimpleProgressIndicator()  # pass progress indicator here
)

# save dictionary
user_dict.save("/path/to/save")

Then, progress will be indicated.
Reading user dictionary from CSV: 100.0% | 152869/152869
Running create_minimum_transducer: 19.0% | 29000/152869

Custom indicator
You can also use your own custom indicator. Here is the example using tqdm.
from janome.progress import ProgressHandler
from tqdm import tqdm

class TQDMProgressIndicator(ProgressHandler):
    def __init__(self, update_frequency=0.1, tqdm=None):
        self.update_frequency = update_frequency
        self.tqdm = tqdm
        self.total = None
        self.value = None
        self.desc = None

    def on_start(self, total, value=0, desc=None):
        self.total = total
        self.value = value
        self.desc = desc or "Processing"
        self.tqdm = None

    def on_progress(self, value=1):
        self.value += value

        if self.tqdm is None:
            self.tqdm = tqdm(total=self.total, desc=self.desc)

        if float.is_integer(self.value * self.update_frequency):
            self.tqdm.update(int(1 / self.update_frequency))

    def on_complete(self):
        self.tqdm.n = self.value
        self.tqdm.update(0)
        self.tqdm.close()
        self.total = self.value = self.desc = self.tqdm = None

Looks cool!

In general your patch looks good to me, thanks.
Also I think it would be great if you could add some tests for UserDictionary class in tests/test_dic.py. There are a few tests for it already, you could add additional tests there with mock ProgressHandler. But it's optional and can be delayed.

Seems tests on Windows fail. I'll take a look.
CI pipelines on Linux is fine: https://travis-ci.org/github/mocobeta/janome/builds/722745085

@uezo about tests for UserDictionary: please add separated tests for the indicators, instead of modifying existing test cases. Each test case should be kept as small as possible (and has only one concern) for maintainability.

Especially for Windows OS, encoding option is mandatory. I also use context manager to ensure close opened user dict file. https://github.com/mocobeta/janome/pull/87/commits/c0b7ff427bbff1e6bca28614b88c5d671c06011d

Hi @uezo,
I made a couple of fixes on the branch (by utilizing my owner privilege), please take a look. I think this is now ready to merge to upstream.

Thank you for fix! Everything looks fine! Sorry for missing to close the file...

Also I updated the documentation: https://github.com/mocobeta/janome/pull/87/commits/806d6240952d63ed8f4231a909d1eb9db50f3670
(ja)

(en)

Thank you @uezo for the nice patch!


[TextField] Allow to customize Typography in FormControlLabel

Fix #25879
this adds disableTypography and labelTypographyProps to the api as well as allowing auto-disable of typography

[x] I have followed (at least) the PR section of the contributing guide.

@mousemke It's a great first pull request on Material-UI 👌🏻. Thank you for working on it!


Add paging to getTenantAPIs

This fix adds paging to the v2 getTenantAPIs api by honoring the skip and limit paramaters, if present in the request. This is to address issue #1692 in incubator-openwhisk.

Hi @larandersson! Thanks for the contribution. The CI is failing currently due to a downstream issue, so that's blocking your PR at the moment.
While you wait for that to be resolved, have you signed the Apache ICLA?

Yes he's in the roster here http://people.apache.org/unlistedclas.html

@mhamann what do you suggest to unlock the build?

@larandersson if you rebase your PR on master, the build should complete successfully.
I think there should also be some tests written for the pagination feature to ensure it works correctly and doesn't regress by future contributions. Something in here would probably make sense: https://github.com/apache/incubator-openwhisk-apigateway/tree/master/tests/scripts/lua/management/lib

I rebased this.

Is this OK to merge now?

@rabbah there don't appear to be any tests for this new functionality, so my vote is to hold off.

I don’t see any tests for code under tenants management to begin with, can you point me to them I might not be looking in the right place.

@mhamann @rabbah I don't see them either. And, just to clarify, this is a bug fix, not new functionality. I suggest opening a separate issue to address the tests discrepancy.

We can also test the functionality downstream?

Yes. The main repo would be a good place to test.


Bug fix column complex not resize after filter

Proposed changes
fix column complex not resize after filter
Problem summary
Describe your changes.
Checklist(Required)

[ ] Does it affect the original behavior
[ ] Has unit tests been added
[ ] Has document been added or modified
[ ] Does it need to update dependencies
[ ] Is this PR support rollback (If NO, please explain WHY)

Further comments
If this is a relatively large or complex change, kick off the discussion at<EMAIL_ADDRESS>by explaining why you chose the solution you did and what alternatives you considered, etc...

run arm

Add UT or regresstion test

run buildall

run arm

run arm

no issue on 1.2 branch @BiteTheDDDDt


Create a vector layer to put some features in it on demand

I'm having a lot of trouble. First, there is no examples on creating a vector layer that can hold some features. Anyone has any Idea?

It's a little hacky way, but you can receive ol.Map object by executing olData.getMap method and use standard ol API.
Here is my sample code: http://jsfiddle.net/ahvj8mw0/14/

thats what i have had to do also. hopefully we can get a nicer way of drawing features soon. Thats the only thing missing that i currently need. I would be interested in adding the feature into the code but not sure where to start.

@penance316 @grzegorz-jazurek Maybe I can help you in guiding you to implement it.
What's the API you'd like to have. Any ideas already?

I'm doing some housekeeping and closing the issue since it's quite old. Please feel free to re-open it if it still persists. Also maybe try to upgrade to the latest version as it might fix it for you.


Failingbranch

@EvanMateo7 Please sign the Contributor License Agreement!
Click here to manually synchronize the status of this Pull Request.
See the FAQ for frequently asked questions.


Bug | Topic dropdown does not close when clicked outside #106

Fixes: #106
screen-capture (1).webm

have a look. it kinda achieves the target. Didn't think about implementing the mechanism to close the menu when clicked outside. However if you feel thats necessary, will have to figure it out...

Yes, closing when user clicks anywhere in the background is also necessary.

Yes, closing when user clicks anywhere in the background is also necessary.

screen-capture (2).webm
Done.


alundum, girllike

This pull request was generated by the 'mq' tool
[test]
flake rate: 0.4
logical conflict every: 5
sleep for: 300s
[pullrequest]
requests per hour: 30
deps=[a,g]

/trunk merge


Automated cherry pick of #4326: fix: baremetal diskconfig empty adaptor index

Cherry pick of #4326 on release/2.13.
#4326: fix: baremetal diskconfig empty adaptor index

Codecov Report

:exclamation: No coverage uploaded for pull request base (release/2.13@98174b4). Click here to learn what that means.
The diff coverage is n/a.

@@              Coverage Diff               @@
##             release/2.13   #4327   +/-   ##
==============================================
  Coverage                ?   6.89%
==============================================
  Files                   ?     521
  Lines                   ?   88253
  Branches                ?       0
==============================================
  Hits                    ?    6086
  Misses                  ?   81661
  Partials                ?     506

Flag
Coverage Δ

#aFlag
6.89% <ø> (?)

Impacted Files
Coverage Δ

pkg/compute/baremetal/types.go
0% <ø> (ø)

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 98174b4...7b4aae7. Read the comment docs.


Clarify README how to use the library

When following the current README guide, the use of the agent package won't work in tests because using new Agent won't initialize the agent from the Request but from the superglobal $_SERVER.
By advising users to use the Facade \Agent, the class is fetched via Laravels service container and thus gets the Request properly injected.

@jenssegers #fail on my part, I only read "with support for Laravel" and somehow interpreted more into it.
This said, using new Agent is not very idiomatic for Laravel especially when it comes to testing, as it forgoes the service provider and does not correctly load the agent from the (mocked) request.
Maybe a separate package would be more appropriate but I can understand no one would like to have the extra overhead.
That said: is there anything you can suggest how to better emphasis what the most appropriate use for Laravel would be, without too much focus on it?


[Bug] RangeError: Invalid time value

Contact Details
No response
What happened?
A bug happened!
Version
0.1.0
What browser did you experience the the problem on?
Microsoft Edge (<IP_ADDRESS>)
What operating system are you using?
Windows (NT 10.0)
Relevant log output
RangeError: Invalid time value
    at nHe (http://<IP_ADDRESS>:3333/web/assets/index-9ade4abc.js:363:88917)
    at nA (http://<IP_ADDRESS>:3333/web/assets/index-9ade4abc.js:62:19550)
    at nU (http://<IP_ADDRESS>:3333/web/assets/index-9ade4abc.js:64:44096)
    at J5 (http://<IP_ADDRESS>:3333/web/assets/index-9ade4abc.js:64:39817)
    at Mee (http://<IP_ADDRESS>:3333/web/assets/index-9ade4abc.js:64:39744)
    at cb (http://<IP_ADDRESS>:3333/web/assets/index-9ade4abc.js:64:39595)
    at _P (http://<IP_ADDRESS>:3333/web/assets/index-9ade4abc.js:64:35958)
    at X5 (http://<IP_ADDRESS>:3333/web/assets/index-9ade4abc.js:64:34905)
    at E (http://<IP_ADDRESS>:3333/web/assets/index-9ade4abc.js:49:1558)
    at MessagePort._ (http://<IP_ADDRESS>:3333/web/assets/index-9ade4abc.js:49:1920)

Are you able to provide any other details? Were you adding a ton of programs? What sort of program tools, if any, were you using? Any details would be very helpful here!

This is just me adding one TV Show, when saving I get
Error saving programs. Zodios: Invalid Body parameter 'body'

Hmm ok, that's tough to debug without additional context. There should be more details in that log, too, which is weird.
I don't think this feature is completely broken since some others and I have been testing 1000s of shows at once...so we have to find a way to get more error details from your situation

The initial error "invalid time value" is different from the second error on the save request. Have you tried pulling more recent builds and retrying?

The initial error "invalid time value" is different from the second error on the save request. Have you tried pulling more recent builds and retrying?

I updated tonight.
It only gives the Zodios error when I include some shows in the programming.

For the Zodios error, there should be some more details in the developer tools console that would be helpful to paste in here.

`ChannelProgrammingConfig.tsx:101  Error: Zodios: Invalid Body parameter 'body'
at MVe.request (index.mjs:4:2592)
at async tB.interceptRequest (index.mjs:9:782)
at async OVe.request (index.mjs:9:6099)Caused by: ZodError
at get error (index.mjs:538:31)
at MVe.request (index.mjs:4:2644)
at async tB.interceptRequest (index.mjs:9:782)
at async OVe.request (index.mjs:9:6099) ZodError
at get error (index.mjs:538:31)
at MVe.request (index.mjs:4:2644)
at async tB.interceptRequest (index.mjs:9:782)
at async OVe.request (index.mjs:9:6099)
onError @ ChannelProgrammingConfig.tsx:101
execute @ mutation.js:127
Show 1 more frame
Show less
[NEW] Explain Console errors by using Copilot in Edge: click
     to explain an error.
    Learn more

      Don't show again

Error: Zodios: Invalid Body parameter 'body'
at MVe.request (index.mjs:4:2592)
at async tB.interceptRequest (index.mjs:9:782)
at async OVe.request (index.mjs:9:6099)Caused by: ZodError
at get error (index.mjs:538:31)
at MVe.request (index.mjs:4:2644)
at async tB.interceptRequest (index.mjs:9:782)
at async OVe.request (index.mjs:9:6099)`

I see. Im still surprised by the lack of error details: that line should print a bunch of info: https://github.com/chrisbenincasa/tunarr/blob/dev/web/src/components/channel_config/ChannelProgrammingConfig.tsx#L99-L102

I'm going to push a change that hopefully will get more details printed.

OK once e486db84abc1e6ea1050edb14f1a30355d610f2a lands in the edge build we should get the actual type error

I get the same thing when adding some music videos to recreate a MTV like experience. Doesn't have to be many items, I have a consistent repro

Just commented something similar on #638 - we've seen this a few times. There should be more details as to what field Tunarr expects but is missing in the browser console logs. Most times the field is unnecessarily marked as required and we can easily mark it optional and the issue is resolved. Let me know if you can get more details from your browser console log and I can look into fixing this.

Ahh ok I didn't know it was in the browser log, I get this:

Error: Zodios: Invalid Body parameter 'body'
    at Object.request (index.mjs:4:2592)
    at async CN.interceptRequest (index.mjs:9:782)
    at async h6e.request (index.mjs:9:6099)Caused by: ZodError
    at get error (index.mjs:538:31)
    at Object.request (index.mjs:4:2644)
    at async CN.interceptRequest (index.mjs:9:782)
    at async h6e.request (index.mjs:9:6099)
    ```

    ```
    ChannelProgrammingConfig.tsx:102 ZodError
    at get error (index.mjs:538:31)
    at Object.request (index.mjs:4:2644)
    at async CN.interceptRequest (index.mjs:9:782)
    at async h6e.request (index.mjs:9:6099) "Zodios: Invalid Body parameter 'body'"
    ```

    ```
    ChannelProgrammingConfig.tsx:104 [
  {
    "code": "invalid_type",
    "expected": "number",
    "received": "undefined",
    "path": [
      "programs",
      239,
      "originalProgram",
      "Media",
      0,
      "duration"
    ],
    "message": "Required"
  },
  {
    "code": "invalid_type",
    "expected": "number",
    "received": "undefined",
    "path": [
      "programs",
      239,
      "originalProgram",
      "Media",
      0,
      "bitrate"
    ],
    "message": "Required"
  },
  {
    "code": "invalid_type",
    "expected": "number",
    "received": "undefined",
    "path": [
      "programs",
      240,
      "originalProgram",
      "Media",
      0,
      "duration"
    ],
    "message": "Required"
  },
  {
    "code": "invalid_type",
    "expected": "number",
    "received": "undefined",
    "path": [
      "programs",
      240,
      "originalProgram",
      "Media",
      0,
      "bitrate"
    ],
    "message": "Required"
  },
  {
    "code": "invalid_type",
    "expected": "number",
    "received": "undefined",
    "path": [
      "programs",
      241,
      "originalProgram",
      "Media",
      0,
      "duration"
    ],
    "message": "Required"
  },
  {
    "code": "invalid_type",
    "expected": "number",
    "received": "undefined",
    "path": [
      "programs",
      241,
      "originalProgram",
      "Media",
      0,
      "bitrate"
    ],
    "message": "Required"
  },
  {
    "code": "invalid_type",
    "expected": "number",
    "received": "undefined",
    "path": [
      "programs",
      242,
      "originalProgram",
      "Media",
      0,
      "duration"
    ],
    "message": "Required"
  },
  {
    "code": "invalid_type",
    "expected": "number",
    "received": "undefined",
    "path": [
      "programs",
      242,
      "originalProgram",
      "Media",
      0,
      "bitrate"
    ],
    "message": "Required"
  },
  {
    "code": "invalid_type",
    "expected": "number",
    "received": "undefined",
    "path": [
      "programs",
      243,
      "originalProgram",
      "Media",
      0,
      "duration"
    ],
    "message": "Required"
  },
  {
    "code": "invalid_type",
    "expected": "number",
    "received": "undefined",
    "path": [
      "programs",
      243,
      "originalProgram",
      "Media",
      0,
      "bitrate"
    ],
    "message": "Required"
  },
  {
    "code": "invalid_type",
    "expected": "number",
    "received": "undefined",
    "path": [
      "programs",
      244,
      "originalProgram",
      "Media",
      0,
      "duration"
    ],
    "message": "Required"
  },
  {
    "code": "invalid_type",
    "expected": "number",
    "received": "undefined",
    "path": [
      "programs",
      244,
      "originalProgram",
      "Media",
      0,
      "bitrate"
    ],
    "message": "Required"
  },
  {
    "code": "invalid_type",
    "expected": "number",
    "received": "undefined",
    "path": [
      "programs",
      245,
      "originalProgram",
      "Media",
      0,
      "duration"
    ],
    "message": "Required"
  },
  {
    "code": "invalid_type",
    "expected": "number",
    "received": "undefined",
    "path": [
      "programs",
      245,
      "originalProgram",
      "Media",
      0,
      "bitrate"
    ],
    "message": "Required"
  },
  {
    "code": "invalid_type",
    "expected": "number",
    "received": "undefined",
    "path": [
      "programs",
      246,
      "originalProgram",
      "Media",
      0,
      "duration"
    ],
    "message": "Required"
  },
  {
    "code": "invalid_type",
    "expected": "number",
    "received": "undefined",
    "path": [
      "programs",
      246,
      "originalProgram",
      "Media",
      0,
      "bitrate"
    ],
    "message": "Required"
  },
  {
    "code": "invalid_type",
    "expected": "number",
    "received": "undefined",
    "path": [
      "programs",
      247,
      "originalProgram",
      "Media",
      0,
      "duration"
    ],
    "message": "Required"
  },
  {
    "code": "invalid_type",
    "expected": "number",
    "received": "undefined",
    "path": [
      "programs",
      247,
      "originalProgram",
      "Media",
      0,
      "bitrate"
    ],
    "message": "Required"
  },
  {
    "code": "invalid_type",
    "expected": "number",
    "received": "undefined",
    "path": [
      "programs",
      248,
      "originalProgram",
      "Media",
      0,
      "duration"
    ],
    "message": "Required"
  },
  {
    "code": "invalid_type",
    "expected": "number",
    "received": "undefined",
    "path": [
      "programs",
      248,
      "originalProgram",
      "Media",
      0,
      "bitrate"
    ],
    "message": "Required"
  },
  {
    "code": "invalid_type",
    "expected": "number",
    "received": "undefined",
    "path": [
      "programs",
      249,
      "originalProgram",
      "Media",
      0,
      "duration"
    ],
    "message": "Required"
  },
  {
    "code": "invalid_type",
    "expected": "number",
    "received": "undefined",
    "path": [
      "programs",
      249,
      "originalProgram",
      "Media",
      0,
      "bitrate"
    ],
    "message": "Required"
  },
  {
    "code": "invalid_type",
    "expected": "number",
    "received": "undefined",
    "path": [
      "programs",
      250,
      "originalProgram",
      "Media",
      0,
      "duration"
    ],
    "message": "Required"
  },
  {
    "code": "invalid_type",
    "expected": "number",
    "received": "undefined",
    "path": [
      "programs",
      250,
      "originalProgram",
      "Media",
      0,
      "bitrate"
    ],
    "message": "Required"
  }
]
(24) [{…}, {…}, {…}, {…}, {…}, {…}, {…}, {…}, {…}, {…}, {…}, {…}, {…}, {…}, {…}, {…}, {…}, {…}, {…}, {…}, {…}, {…}, {…}, {…}]
0
:
{code: 'invalid_type', expected: 'number', received: 'undefined', path: Array(6), message: 'Required'}
1
:
{code: 'invalid_type', expected: 'number', received: 'undefined', path: Array(6), message: 'Required'}
2
:
{code: 'invalid_type', expected: 'number', received: 'undefined', path: Array(6), message: 'Required'}
3
:
{code: 'invalid_type', expected: 'number', received: 'undefined', path: Array(6), message: 'Required'}
4
:
{code: 'invalid_type', expected: 'number', received: 'undefined', path: Array(6), message: 'Required'}
5
:
{code: 'invalid_type', expected: 'number', received: 'undefined', path: Array(6), message: 'Required'}
6
:
{code: 'invalid_type', expected: 'number', received: 'undefined', path: Array(6), message: 'Required'}
7
:
{code: 'invalid_type', expected: 'number', received: 'undefined', path: Array(6), message: 'Required'}
8
:
{code: 'invalid_type', expected: 'number', received: 'undefined', path: Array(6), message: 'Required'}
9
:
{code: 'invalid_type', expected: 'number', received: 'undefined', path: Array(6), message: 'Required'}
10
:
{code: 'invalid_type', expected: 'number', received: 'undefined', path: Array(6), message: 'Required'}
11
:
{code: 'invalid_type', expected: 'number', received: 'undefined', path: Array(6), message: 'Required'}
12
:
{code: 'invalid_type', expected: 'number', received: 'undefined', path: Array(6), message: 'Required'}
13
:
{code: 'invalid_type', expected: 'number', received: 'undefined', path: Array(6), message: 'Required'}
14
:
{code: 'invalid_type', expected: 'number', received: 'undefined', path: Array(6), message: 'Required'}
15
:
{code: 'invalid_type', expected: 'number', received: 'undefined', path: Array(6), message: 'Required'}
16
:
{code: 'invalid_type', expected: 'number', received: 'undefined', path: Array(6), message: 'Required'}
17
:
{code: 'invalid_type', expected: 'number', received: 'undefined', path: Array(6), message: 'Required'}
18
:
{code: 'invalid_type', expected: 'number', received: 'undefined', path: Array(6), message: 'Required'}
19
:
{code: 'invalid_type', expected: 'number', received: 'undefined', path: Array(6), message: 'Required'}
20
:
{code: 'invalid_type', expected: 'number', received: 'undefined', path: Array(6), message: 'Required'}
21
:
{code: 'invalid_type', expected: 'number', received: 'undefined', path: Array(6), message: 'Required'}
22
:
{code: 'invalid_type', expected: 'number', received: 'undefined', path: Array(6), message: 'Required'}
23
:
{code: 'invalid_type', expected: 'number', received: 'undefined', path: Array(6), message: 'Required'}
length
:
24
[[Prototype]]

Narrowed down to just a single episode that will fail, plex metadata is as follows:

Plex metadata
This XML file does not appear to have any style information associated with it. The document tree is shown below.
<MediaContainer size="1" allowSync="1" identifier="com.plexapp.plugins.library" librarySectionID="2" librarySectionTitle="TV" librarySectionUUID="6c2368cc-58db-4d73-8349-e5ee7d99b651" mediaTagPrefix="/system/bundle/media/flags/" mediaTagVersion="1720526106">
<Video ratingKey="80691" key="/library/metadata/80691" parentRatingKey="80690" grandparentRatingKey="80689" guid="plex://episode/5d9c11d1ba6eb9001fc0db02" parentGuid="plex://season/602e66a391bd55002cf838e4" grandparentGuid="plex://show/5d9c0864705e7a001e6dacbb" grandparentSlug="schoolhouse-rock" type="episode" title="Three Is a Magic Number" grandparentKey="/library/metadata/80689" parentKey="/library/metadata/80690" librarySectionTitle="TV" librarySectionID="2" librarySectionKey="/library/sections/2" grandparentTitle="Schoolhouse Rock!" parentTitle="Season 1" contentRating="Not Rated" summary="A Magician digs deep into his top hat that proves there's a magic number." index="1" parentIndex="1" audienceRating="10.0" year="1973" thumb="/library/metadata/80691/thumb/1722112539" art="/library/metadata/80689/art/1720753544" parentThumb="/library/metadata/80690/thumb/1720749464" grandparentThumb="/library/metadata/80689/thumb/1720753544" grandparentArt="/library/metadata/80689/art/1720753544" grandparentTheme="/library/metadata/80689/theme/1720753544" duration="181324" originallyAvailableAt="1973-01-06" addedAt="1720749458" updatedAt="1722112539" audienceRatingImage="themoviedb://image.rating">
<Media id="103758" duration="181324" bitrate="1137" width="720" height="480" aspectRatio="1.33" audioChannels="2" audioCodec="aac" videoCodec="h264" videoResolution="480" container="mp4" videoFrameRate="NTSC" optimizedForStreaming="1" audioProfile="lc" has64bitOffsets="0" videoProfile="high">
<Part accessible="1" exists="1" id="135508" key="/library/parts/135508/1720222747/file.mp4" duration="181324" file="/media/TV/Schoolhouse Rock!/Season 1/Schoolhouse Rock! - S01E01 - Three is a Magic Number.mp4" size="25773484" audioProfile="lc" container="mp4" has64bitOffsets="0" optimizedForStreaming="1" videoProfile="high">
<Stream id="365831" streamType="1" default="1" codec="h264" index="0" bitrate="1001" anamorphic="1" bitDepth="8" chromaLocation="left" chromaSubsampling="4:2:0" codedHeight="480" codedWidth="720" frameRate="29.970" hasScalingMatrix="0" height="480" level="30" pixelAspectRatio="8:9" profile="high" refFrames="5" scanType="progressive" streamIdentifier="1" width="720" displayTitle="480p (H.264)" extendedDisplayTitle="480p (H.264)"> </Stream>
<Stream id="365832" streamType="2" selected="1" default="1" codec="aac" index="1" channels="2" bitrate="128" audioChannelLayout="stereo" profile="lc" samplingRate="44100" streamIdentifier="2" displayTitle="Unknown (AAC Stereo)" extendedDisplayTitle="Unknown (AAC Stereo)"> </Stream>
</Part>
</Media>
<Guid id="imdb://tt1268154"/>
<Guid id="tmdb://416852"/>
<Guid id="tvdb://290708"/>
<Rating image="themoviedb://image.rating" value="10.0" type="audience"/>
<Writer id="256759" filter="writer=256759" tag="Bob Dorough" tagKey="5d776a7f23d5a3001f505275" thumb="https://metadata-static.plex.tv/0/people/08341fcad695718263011c555ec8715a.jpg"/>
<Role id="94472" filter="actor=94472" tag="Jack Sheldon" tagKey="5d77684f5af944001f1fed4e" role="" thumb="https://metadata-static.plex.tv/people/5d77684f5af944001f1fed4e.jpg"/>
<Role id="256673" filter="actor=256673" tag="Bob Dorough" tagKey="5d776a7f23d5a3001f505275" role="" thumb="https://metadata-static.plex.tv/0/people/08341fcad695718263011c555ec8715a.jpg"/>
<Role id="256674" filter="actor=256674" tag="Lynn Ahrens" tagKey="5d776f2696b655001fe7ed54" role="" thumb="https://metadata-static.plex.tv/people/5d776f2696b655001fe7ed54.jpg"/>
<Role id="256675" filter="actor=256675" tag="Blossom Dearie" tagKey="5d77685054c0f0001f30646c" role="" thumb="https://metadata-static.plex.tv/6/people/627e72843588c7ac2372d89840c7e0c5.jpg"/>
<Role id="256676" filter="actor=256676" tag="Essra Mohawk" tagKey="5d9c0864705e7a001e6dacf2" role="" thumb="https://metadata-static.plex.tv/1/people/1544a77e4a849351b236be6c5125f648.jpg"/>
<Role id="256677" filter="actor=256677" tag="Grady Tate" tagKey="5d77689f594b2b001e6911d1" role="" thumb="https://metadata-static.plex.tv/4/people/451ff92c2610977ba9820bfa1a850758.jpg"/>
<Extras size="0"> </Extras>
<Related> </Related>
</Video>
</MediaContainer>

Console statement:
ChannelProgrammingConfig.tsx:104 [
  {
    "code": "invalid_type",
    "expected": "number",
    "received": "undefined",
    "path": [
      "programs",
      239,
      "originalProgram",
      "Media",
      0,
      "duration"
    ],
    "message": "Required"
  },
  {
    "code": "invalid_type",
    "expected": "number",
    "received": "undefined",
    "path": [
      "programs",
      239,
      "originalProgram",
      "Media",
      0,
      "bitrate"
    ],
    "message": "Required"
  }
]
(2) [{…}, {…}]
0
:
{code: 'invalid_type', expected: 'number', received: 'undefined', path: Array(6), message: 'Required'}
1
:
{code: 'invalid_type', expected: 'number', received: 'undefined', path: Array(6), message: 'Required'}
length
:
2

Thanks for all the info! This one is definitely strange because your example item seems to have both of the fields that Tunarr is saying is missing (unless I'm missing something). You're sure that's the item that's causing that exact error?
So "bitrate" we can almost certainly mark as optional. "Duration" is tricky though, since it's used for pretty much everything from guide building to streaming.

Looking again, for "duration" I see it's complaining about the one nested on the Media field. While that's still present and I'm not sure why it's complaining, there is one in the root level item which is really all we need.

Hmm strange so it must be an issue of one that is already in there. I just created a different channel and only added that one episode but it was fine so must be somewhere else, I'll try and find which one is actually causing it

Ok I think I found the specific one, still not sure why it would be failing because the plex xml shows the fields, I wonder if Tunarr can't access some of them?
Single instance failing

This XML file does not appear to have any style information associated with it. The document tree is shown below.
<MediaContainer size="1" allowSync="1" identifier="com.plexapp.plugins.library" librarySectionID="2" librarySectionTitle="TV" librarySectionUUID="6c2368cc-58db-4d73-8349-e5ee7d99b651" mediaTagPrefix="/system/bundle/media/flags/" mediaTagVersion="1720526106">
<Video ratingKey="80692" key="/library/metadata/80692" parentRatingKey="80690" grandparentRatingKey="80689" guid="plex://episode/5d9c11d1ba6eb9001fc0daff" parentGuid="plex://season/602e66a391bd55002cf838e4" grandparentGuid="plex://show/5d9c0864705e7a001e6dacbb" grandparentSlug="schoolhouse-rock" type="episode" title="My Hero, Zero" grandparentKey="/library/metadata/80689" parentKey="/library/metadata/80690" librarySectionTitle="TV" librarySectionID="2" librarySectionKey="/library/sections/2" grandparentTitle="Schoolhouse Rock!" parentTitle="Season 1" contentRating="Not Rated" summary="When it comes to multiplications, zero is a real hero. It will always be an important number to the world." index="2" parentIndex="1" audienceRating="6.3" year="1973" thumb="/library/metadata/80692/thumb/1722204349" art="/library/metadata/80689/art/1720753544" parentThumb="/library/metadata/80690/thumb/1720749464" grandparentThumb="/library/metadata/80689/thumb/1720753544" grandparentArt="/library/metadata/80689/art/1720753544" grandparentTheme="/library/metadata/80689/theme/1720753544" duration="181533" originallyAvailableAt="1973-01-20" addedAt="1720749458" updatedAt="1722204349" audienceRatingImage="themoviedb://image.rating">
<Media id="103759" duration="181533" bitrate="1076" width="720" height="480" aspectRatio="1.33" audioChannels="2" audioCodec="aac" videoCodec="h264" videoResolution="480" container="mp4" videoFrameRate="NTSC" optimizedForStreaming="1" audioProfile="lc" has64bitOffsets="0" videoProfile="high">
<Part accessible="1" exists="1" id="135509" key="/library/parts/135509/1720222747/file.mp4" duration="181533" file="/media/TV/Schoolhouse Rock!/Season 1/Schoolhouse Rock!  I remembered that I marked these fields as optional as part of https://github.com/chrisbenincasa/tunarr/issues/600. I wonder if either your version doesn't have this fix (though it was a while back) or if there's another area where we need to mark these fields optional.

If you want, you can hit Tunarr's Plex proxy endpoint to see what Tunarr would receive from the requests for metadata.
The endpoint is in the form (where PLEX_SERVER_NAME is the name of the server you added within Tunarr):
http://localhost:8000/api/plex?name=PLEX_SERVER_NAME&path=/library/metadata/80692
Using your key above as an example

We've added code to protect against 0 duration programs and have also marked the other fields mentioned here as optional. Going to close this out for now, but feel free to open a new issue or reopen if this is still an issue.