Add nfd test_master_branch protocol

This patch is the first step to enable a full protocol for E2E testing of NFD
Tested on 4.8 via
./toolbox/local-ci/deploy.sh "run nfd-operator test_master_branch" https://github.com/ArangoGutierrez/ci-artifacts devel/nfd_e2e

Signed-off-by: Carlos Eduardo Arango Gutierrez<EMAIL_ADDRESS>

/assign @kpouget

@kpouget ready for another round

merge this baby!!!

testing it first!
On Thu, Jun 3, 2021 at 6:14 PM Carlos Eduardo Arango Gutierrez <
@.***> wrote:

merge this baby!!!
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/openshift-psap/ci-artifacts/pull/179#issuecomment-853993986,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ABZVQISPYWBX26VFCEKH423TQ6S6JANCNFSM453WYY5A
.

/test gpu-operator-e2e
/assign @omertuc could you please have a look tomorrow? if everything looks good, see with @ArangoGutierrez to merge it
Please make sure that you don't merge it with the test-temp commit included ;-)

ERRO[2021-06-03T18:22:16Z] * could not run steps: step src failed: the
build src failed after 1m27s with reason OutOfMemoryKilled: The build pod
was killed due to an out of memory condition.

/test gpu-operator-e2e
On Thu, Jun 3, 2021 at 8:22 PM openshift-ci[bot] @.***>
wrote:

@ArangoGutierrez https://github.com/ArangoGutierrez: The following test
failed, say /retest to rerun all failed tests:
Test name Commit Details Rerun command
ci/prow/gpu-operator-e2e f0910ce
https://github.com/openshift-psap/ci-artifacts/commit/f0910ce286b917ce730da0647b59991d1bb228cf
link
https://prow.ci.openshift.org/view/gs/origin-ci-test/pr-logs/pull/openshift-psap_ci-artifacts/179/pull-ci-openshift-psap-ci-artifacts-master-gpu-operator-e2e/1400517763239251968 /test
gpu-operator-e2e
Full PR test history
https://prow.ci.openshift.org/pr-history?org=openshift-psap&repo=ci-artifacts&pr=179.
Your PR dashboard
https://prow.ci.openshift.org/pr?query=is:pr+state:open+author:ArangoGutierrez
.
Instructions for interacting with me using PR comments are available here
https://git.k8s.io/community/contributors/guide/pull-requests.md. If
you have questions or suggestions related to my behavior, please file an
issue against the kubernetes/test-infra
https://github.com/kubernetes/test-infra/issues/new?title=Prow issue:
repository. I understand the commands that are listed here
https://go.k8s.io/bot-commands.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/openshift-psap/ci-artifacts/pull/179#issuecomment-854082617,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ABZVQIXV35FG3MI2M4LUYF3TQ7B6VANCNFSM453WYY5A
.

/test gpu-operator-e2e
/assign @omertuc could you please have a look tomorrow? if everything looks good, see with @ArangoGutierrez to merge it
Please make sure that you don't merge it with the test-temp commit included ;-)

Definitely not tomorrow, as I don't work Fridays, but I'll go over it on Sunday

/test gpu-operator-e2e

/test gpu-operator-e2e

INFO[2021-06-03T19:54:41Z] /usr/local/bin/run: line 78: action: unbound variable
it won't get much further than that even on the 2nd try ;-)

/test gpu-operator-e2e

@ArangoGutierrez doc is missing!
/hold
we'll merge on Monday

@ArangoGutierrez tried to run the test on my cluster before lunch, it failed like that (--> this one shouldn't have been executed Set the number of retry to 0 if waiting not requested):
+ validate_nfd_deployment
+ toolbox/nfd/wait_nfd_labels.sh
...
---
roles/nfd_test_wait_labels/tasks/main.yml:2
TASK: nfd_test_wait_labels : Set the number of retry to 0 if waiting not requested

---

---
roles/nfd_test_wait_labels/tasks/main.yml:8
TASK: nfd_test_wait_labels : Ensure that NFD labels are set by quering a common label
----- FAILED ----

<command> oc get nodes -lfeature.node.kubernetes.io/system-os_release.ID=rhcos

<stderr> No resources found
----- FAILED ----

---

---
roles/nfd_test_wait_labels/tasks/main.yml:17
TASK: nfd_test_wait_labels : Check if NFD CR exists (debug)

<command> oc get NodeFeatureDiscovery -A

<stdout> NAMESPACE       NAME           AGE
<stdout> openshift-nfd   nfd-instance   3s

---

---
roles/nfd_test_wait_labels/tasks/main.yml:21
TASK: nfd_test_wait_labels : Fail because nodes do not have NFD labels
----- FAILED ----
msg: Fail because nodes do not have NFD labels
----- FAILED ----

PLAY RECAP *********************************************************************
localhost                  : ok=5    changed=2    unreachable=0    failed=1    skipped=0    rescued=1    ignored=0

+ echo 'FATAL: no NFD labels found.'
FATAL: no NFD labels found.
+ exit 1

and
$ oc get nodes -lfeature.node.kubernetes.io/system-os_release.ID=rhcos
NAME                                            STATUS   ROLES    AGE   VERSION
ip-10-0-138-231.eu-central-1.compute.internal   Ready    worker   55m   v1.20.0+df9c838
ip-10-0-183-115.eu-central-1.compute.internal   Ready    worker   54m   v1.20.0+df9c838

so after waiting properly, the test should pass :)

docs/img/ci-dashboard.png
I don't know why this file ended up being deleted, it shouldn't. that's what creates the merge conflict

docs/img/ci-dashboard.png

I don't know why this file ended up being deleted, it shouldn't; that's what makes the merge conflict now

@ArangoGutierrez tried to run the test on my cluster before lunch, it failed like that (--> this one shouldn't have been executed Set the number of retry to 0 if waiting not requested):
+ validate_nfd_deployment
+ toolbox/nfd/wait_nfd_labels.sh
...
---
roles/nfd_test_wait_labels/tasks/main.yml:2
TASK: nfd_test_wait_labels : Set the number of retry to 0 if waiting not requested

---

---
roles/nfd_test_wait_labels/tasks/main.yml:8
TASK: nfd_test_wait_labels : Ensure that NFD labels are set by quering a common label
----- FAILED ----

<command> oc get nodes -lfeature.node.kubernetes.io/system-os_release.ID=rhcos

<stderr> No resources found
----- FAILED ----

---

---
roles/nfd_test_wait_labels/tasks/main.yml:17
TASK: nfd_test_wait_labels : Check if NFD CR exists (debug)

<command> oc get NodeFeatureDiscovery -A

<stdout> NAMESPACE       NAME           AGE
<stdout> openshift-nfd   nfd-instance   3s

---

---
roles/nfd_test_wait_labels/tasks/main.yml:21
TASK: nfd_test_wait_labels : Fail because nodes do not have NFD labels
----- FAILED ----
msg: Fail because nodes do not have NFD labels
----- FAILED ----

PLAY RECAP *********************************************************************
localhost                  : ok=5    changed=2    unreachable=0    failed=1    skipped=0    rescued=1    ignored=0

+ echo 'FATAL: no NFD labels found.'
FATAL: no NFD labels found.
+ exit 1

and
$ oc get nodes -lfeature.node.kubernetes.io/system-os_release.ID=rhcos
NAME                                            STATUS   ROLES    AGE   VERSION
ip-10-0-138-231.eu-central-1.compute.internal   Ready    worker   55m   v1.20.0+df9c838
ip-10-0-183-115.eu-central-1.compute.internal   Ready    worker   54m   v1.20.0+df9c838

so after waiting properly, the test should pass :)

fixed

docs/img/ci-dashboard.png

I don't know why this file ended up being deleted, it shouldn't; that's what makes the merge conflict now

rebase on master fixed ths

@kpouget @omertuc ready for a final fight!

@kpouget can we get rid fo the temporal non real commit  commit?

@kpouget can we get rid fo the temporal non real commit  commit?

did you get a test passing successfully? do you have the link?
I'll study it for the final review ;-)

@kpouget can we get rid fo the temporal non real commit  commit?

did you get a test passing successfully? do you have the link?
I'll study it for the final review ;-)

nope, still running... let's wait

/test gpu-operator-e2e

@ArangoGutierrez could you try to split the commit, at least by affected roles?
git reset --hard HEAD~
git reset HEAD~
git add -p ...

thanks for the commit split, looks better now :)
... could you just add a Capital letter at the beginning of the titles?

this task
    git:
      repo: "{{ nfd_operator_git_repo }}"
      dest: /tmp/cluster-nfd-operator
      version: "{{ nfd_operator_git_ref }}"

failed when I tried to run it a second time:
--
roles/nfd_operator_deploy_custom_commit/tasks/deploy.yml:3
TASK: nfd_operator_deploy_custom_commit : Git checkout
----- FAILED ----
msg: Local modifications exist in repository (force=no).
  - before:	a362f97d3cdd41e73ee27c4e45f868b0b4fb72c8
----- FAILED ----

because of this:
iff --git a/config/manager/kustomization.yaml b/config/manager/kustomization.yaml
index 3ac33832..1a081ee4 100644
--- a/config/manager/kustomization.yaml
+++ b/config/manager/kustomization.yaml
@@ -12,5 +12,5 @@ apiVersion: kustomize.config.k8s.io/v1beta1
 kind: Kustomization
 images:
 - name: controller
-  newName: quay.io/openshift/origin-cluster-nfd-operator
-  newTag: 4.8.0
+  newName: image-registry.openshift-image-registry.svc:5000/nfd-operator-ci/nfd-operator-ci
+  newTag: ci-image

adding this solved it
force: true

and the test passed on my cluster :)

@kpouget all your requests have been addressed

@kpouget 😓 ready again

\lgtm
\approve
looks good @ArangoGutierrez, thanks for effort!!

/hold

looks good @ArangoGutierrez, thanks for effort
... do you want to split the last commit and modify the older ones ... ?
... or should we say that squash is the default merge options? I'm not a big fan of it, but it can be discussed

I am ok merging this as it is

/hold cancel

/approve

I am ok merging this as it is

good with,
/lgtm


Getting Error in bower install

Getting error in bower install.

That's not an error .-.. It's just a bower resolution.

When you specify dependencies(in this case Angular) for you app via Bower, some of the packages might rely on different versions of the same library. You will have to resolve what version of libraries your app actually wants. In other words, you break the tie. Read More

In other words just select a number on wich angular dependency you want, probably you'll want the most newer in this case, number 2: angular#1.6.0

Got it, Thank you!

add --force   (when conflict)
bower install --force angular-xxx


Inconsistent Virtual Text Placement with Tabs

Hi,
I'm encountering an issue with llm.nvim where virtual text is not correctly aligned when lines start with a tab character. Specifically, virtual text intended to be aligned with the cursor position defaults to column 1 when the line begins with a tab, whereas it aligns correctly when the line starts with spaces.

I digged into the source code and found the col came from llm-ls, I'm not sure if it's a bug of llm.nvim.

I found that adjusting the virt_text_win_col value to account for the actual width of the tabs (considering the tabstop setting) resolves this issue on my local setup.
If this solution aligns with the project's direction, I would be happy to contribute a fix. Please let me know if a PR is welcome.


@W-13931419 |[244] removing debug log from  TaxCartCalculator sample apex

Removing the debug logs from the sample class of 244 branch.
https://gus.lightning.force.com/lightning/r/ADM_Work__c/a07EE00001Y8GM7YAN/view

Please don't merge this as the code is not compiling


Update overlay configs and investigate connection issues to overlay network

The reason why the connection to the Frankfurt Stellar node failed is that it was migrated and now lives at a new IP address.
We should

[ ] Re-add the Frankfurt config but change the IP to <IP_ADDRESS>  instead, see here.
[ ] Change the IP of the Singapore config to the IP here
[ ] Change the IP of the Iowa config to the IP here
[ ] Update all version parameters and the version string to the latest versions shown in stellarbeat.
[ ] Change the history URLs of each config to the respective URL shown in Stellarbeat. Note that each node is supposed to have a different archive URL

Connection issues
It seems that changing these configuration parameters introduces some other error. The following error is shown when updating the overlay configuration to:
# Connection config
{
  "connection_info": {
    "address": "<IP_ADDRESS>",
    "port": 11625
  },
  "node_info": {
    "ledger_version": 19,
    "overlay_version": 28,
    "overlay_min_version": 27,
    "version_str": "stellar-core 19.11.0 (7fb6d5e8858fed6ea365f8717b0266635f578477)",
    "is_pub_net": true
  },
  "stellar_history_base_url": "https://stellar-history-de-fra.satoshipay.io/"
}

# Error shown in vault client logs
Jul 04 09:18:10.503 ERROR stellar_relay_lib::connection::services: Connection timed out after deadline has elapsed seconds
Jul 04 09:18:10.503 ERROR stellar_relay_lib::connection::services: deadline has elapsed for reading messages from Stellar Node. Retry: 0
Jul 04 09:18:49.894 ERROR stellar_relay_lib::connection::services: Connection timed out after deadline has elapsed seconds
Jul 04 09:18:49.894 ERROR stellar_relay_lib::connection::services: deadline has elapsed for reading messages from Stellar Node. Retry: 0

Maybe, the error messages shown is not problematic and we can ignore it. But we definitely have to look into this and clarify.

Hi!
FYI I added the hostname of the validators (for example stellar-de-fra.satoshipay.io) on Stellarbeat. This way you don't have to worry about future ip changes.
That being said, there seems to be a dns issue at the moment with stellar-de-fra.satoshipay.io that should be fixed by satoshipay first :-) You should be able to rely on the hostname because other validators also use these hostnames in their stellar core config.
Also, https://api.stellarbeat.io/v1 since recently shows the overlay/ledger versions that are used to connect to the stellar network if you want to automate some easy notification.

Hey @pieterjan84! Thanks for setting this up and pointing it out. We'll try to fix the DNS configuration now.


Financing

Hi :wave:,
I'm Romuald from the Lsos, an organization that develops financial solutions for open source projects, and we are currently doing outreach to projects we like.
One of our solutions is the Lsos Commons which I believe could fit; is that something React Virtualized would be interested in?
If not I'm sorry for having opened this ticket and I'll close it :).

We developed a new solution: the Lsos Donation Fund. Unlike the Lsos Commons, the Lsos Donation Fund doesn't alter your license and everything stays free; the donation fund collects donations on your behalf and uses a "donation-reminder".
We estimate the donation-reminder to substantially increase donations. Sublime Text, for example, achieves impressive results using a similar technique.
We are just starting (we are finishing up the implementation of the donation-reminder) and we are looking for a handful of early adopters to try out the donation-reminder.
Would that be something you'd be up to? The only thing you have to do is to add our @lsos/donation-fund npm module to your dependencies which implements the donation-reminder. We take care of everything but we'll let you know exactly about our plans and what the npm module does. You'll be more than welcome to object to anything and give feedback.
For example, we plan to show the donation-reminder only to large companies and make it removable. But if you want to further increase donations we can change things.
While in the long term the goal is to distribute company donations among all open source projects used by the company, at the beginning we expect that most donations will go to our early adopters.
We care a lot about transparency; each company will see to what open source projects its donations goes to, and each open source project will see from what companies its donations came from.
Let me know if you are interested, we are eager to give this experiment a shot!


Importing haplotypes.bgen throws assertion error

It seems like the example haplotypes.bgen cannot be read:
using BGEN
b = Bgen(BGEN.datadir("haplotypes.bgen"); idx_path=BGEN.datadir("haplotypes.bgen.bgi"))
variants = parse_variants(b; from_bgen_start=true);

julia> minor_allele_dosage!(b, variants[1]; T=Float32)
ERROR: AssertionError: p.phased == 0
Stacktrace:
 [1] minor_allele_dosage!(::Bgen, ::Variant; T::Type{T} where T, mean_impute::Bool, clear_decompressed::Bool) at /Users/biona001/.julia/packages/BGEN/QxEG0/src/genotypes.jl:490
 [2] top-level scope at REPL[4]:1

Is this expected?

I realized I should call probabilities here. Sorry.


[Autocomplete] Improve popup open logic

[x] The issue is present in the latest release.
[x] I have searched the issues of this repository and believe that this is not a duplicate.

Current Behavior 😯
When an Autocomplete is active and I switch tabs, the menu is opened when I come back
Expected Behavior 🤔
The state of the UI is the same as before I switch tabs.
Steps to Reproduce 🕹

Steps:

go to https://material-ui.com/components/autocomplete/#combo-box
select an option
switch to another tab
switch back
observe

Context 🔦
I think we're hitting the same as https://stackoverflow.com/questions/10657176/changing-browser-tabs-undesirably-fires-the-focus-event-especially-in-google-ch

Your Environment 🌎

Tech
Version

Material-UI
v4.7.2

React

Browser
chrome 78.0.3904.108

TypeScript

etc.

What's wrong with this behavior?

When I switch to another tab, I expect to find it my page back in the exact same state when I come back. If the menu of the active element is closed, it is because I wanted it to be closed. switching a tab is not an action that should be interpreted as "the user wants the menu of the active element to be open". It's confusing and so it's bad UX.
I have a page where a filter happens automatically when the value of an autocomplete changes. So it happens fairly regularly that one of those is still active and closed at the time. There isn't really anything else to do on this page besides scrolling. I often come to this page in an existing tab to find a random menu open and it's kind of weird.

@Janpot One more question. Do you want to popup to open on keyboard focus (not taking the mouse into account)?

I'd consider that action equivalent to a mouse click on the component, so yes. But I have to admit I'm far from a UX/accessibility expert, this is just my gut feeling.

@oliviertassinari How about:

keyboard focus by tab => menu stays closed
Enter key or start typing => open menu

Enter key => select item + close menu
Esc key => close menu

Probably something to look into as well. I was checking how <Select /> handles this and it seems to behave strange when you press spacebar when it's focused.

How about:

Set disableOpenOnFocus and you will be good.

I was checking how

Duplicate of another issue, fixed in master.

Set disableOpenOnFocus and you will be good.

If I go by the demo, that also disables it on click.

If I go by the demo, that also disables it on click, so not an option.

So you are looking for the same default behavior as react-select?

Almost, the native select can also select options with spacebar after it is opened. The simple select can't.

@Janpot This is macOS specific, won't happen on Linux nor Windows. We decided to go against.

I think that a good solution would be to add a second reason argument to the onOpen and onClose arguments so you can implement something custom, and on Material-UI side, to wait for more feedback to change the tradeoff.

So you are looking for the same default behavior as react-select?

I'm checking their docs pages and they open on click but not on keyboard focus, they also don't open menu for an active control after switching tabs. so wrt to this behavior, yes. I also think this would be the most sensible default for material-ui.
I saw they also don't allow typing a space in an empty control, wrt to that behavior, no.

@Janpot Would the reason approach work for you?

Yes that would probably work if I can differentiate between an actual mouse click and another focus event.
You don't agree that the current behavior is not ideal accessibility-wise?

I believe the current logic allows the make a difference.
It seems that the Autocomplete behaves like the google.com's search, so I don't think that it's very important.

For me google.com's search doesn't open when I move keyboard focus to it. Neither does it open when it's active and I switch tabs. It does however also not open before I start typing, even when I click it.

is a good resource to look at.

I'm specifically referring to focus navigation:

Predictability of movement: Usability of a keyboard interface is heavily influenced by how readily users can guess where focus will land after a navigation key is pressed.

Point being that it's hard to predict where focus will land if a menu is covering some of those elements where focus may land.
Anyway, not that important to me  🙂. If I can implement it in userland that's fine, I just disagree with the default.

Right, you need to fill in a value in the search bar at the top of the page to get the Google's suggestions. It's only then that you will get a display of the popup on focus and an open back behavior when switching tabs.
I'm not sure to follow the focus covering issue. The popup should only open if the input is the active element. Does it behave differently in your case?
Yes, I would like to get a couple of more user's feedback before we change this aspect.

oh ok, I was testing the one in the middle of the page when there's no search results, that one seems to behave differently.
In any case, I can't get that google box you are looking at in the same state as the matui one (active but closed popup) so I can't compare the tab switching behavior.  Which ultimately is the main problem I'd like to solve, the keyboard accessibility is way low on my priority list.
However, the gmail searchbar has a autocomplete which can be closed while still staying active, and I can confirm it doesn't open when switching tabs. neither does it open for me on keyboard focus.

@Janpot I do agree that if the input is focused and the popup closed when leaving the tab, it would be better to return to the same state. However, I'm not sure about the code it would require nor that it would worth us to invest time in it.
For the reason we could do something like this, but I haven't tested it:
diff --git a/packages/material-ui-lab/src/useAutocomplete/useAutocomplete.d.ts b/packages/material-ui-lab/src/useAutocomplete/useAutocomplete.d.ts
index 0628df0b1..d9114105b 100644
--- a/packages/material-ui-lab/src/useAutocomplete/useAutocomplete.d.ts
+++ b/packages/material-ui-lab/src/useAutocomplete/useAutocomplete.d.ts
@@ -132,6 +132,7 @@ export interface UseAutocompleteProps {
    * Use in controlled mode (see open).
    *
    * @param {object} event The event source of the callback.
+   * @param {string} reason Can be: `"input"`, `"toggle"`, `"blur"`, `"escapeKeyDown"` or `"focusTag"``.
    */
   onClose?: (event: React.ChangeEvent<{}>) => void;
   /**
@@ -139,7 +140,7 @@ export interface UseAutocompleteProps {
    *
    * @param {object} event The event source of the callback.
    * @param {string} value The new value of the text input
-   * @param {string} reason One of "input" (user input) or "reset" (programmatic change)
+   * @param {string} reason Can be: `"input"` (user input) or `"reset"` (programmatic change)
    */
   onInputChange?: (event: React.ChangeEvent<{}>, value: any, reason: 'input' | 'reset') => void;
   /**
@@ -147,6 +148,7 @@ export interface UseAutocompleteProps {
    * Use in controlled mode (see open).
    *
    * @param {object} event The event source of the callback.
+   * @param {string} reason Can be: `"input"`, `"toggle"`, `"focus"` or `"keyDown"`.
    */
   onOpen?: (event: React.ChangeEvent<{}>) => void;
   /**
diff --git a/packages/material-ui-lab/src/useAutocomplete/useAutocomplete.js b/packages/material-ui-lab/src/useAutocomplete/useAutocomplete.js
index 5b4ef231c..8e04019c3 100644
--- a/packages/material-ui-lab/src/useAutocomplete/useAutocomplete.js
+++ b/packages/material-ui-lab/src/useAutocomplete/useAutocomplete.js
@@ -376,26 +376,26 @@ export default function useAutocomplete(props) {
     changeHighlightedIndex('reset', 'next');
   }, [inputValue]); // eslint-disable-line react-hooks/exhaustive-deps

-  const handleOpen = event => {
+  const handleOpen = (event, reason = 'keyDown') => {
     if (open) {
       return;
     }

     if (onOpen) {
-      onOpen(event);
+      onOpen(event, reason);
     }
     if (!isOpenControlled) {
       setOpenState(true);
     }
   };

-  const handleClose = event => {
+  const handleClose = (event, reason) => {
     if (!open) {
       return;
     }

     if (onClose) {
-      onClose(event);
+      onClose(event, reason);
     }
     if (!isOpenControlled) {
       setOpenState(false);
@@ -436,7 +436,7 @@ export default function useAutocomplete(props) {
     }
     handleValue(event, newValue);
     if (!disableCloseOnSelect) {
-      handleClose(event);
+      handleClose(event, 'input');
     }

     resetInputValue(event, newValue);
@@ -481,7 +481,7 @@ export default function useAutocomplete(props) {
       return;
     }

-    handleClose(event);
+    handleClose(event, 'focusTag');

     let nextTag = focusedTag;

@@ -510,7 +510,7 @@ export default function useAutocomplete(props) {
   const handleClear = event => {
     handleValue(event, multiple ? [] : null);
     if (disableOpenOnFocus) {
-      handleClose();
+      handleClose(event, 'input');
     }
     setInputValue('');
   };
@@ -589,7 +589,7 @@ export default function useAutocomplete(props) {
           event.preventDefault();
           // Avoid the Modal to handle the event.
           event.stopPropagation();
-          handleClose(event);
+          handleClose(event, 'escapeKeyDown');
         } else if (clearOnEscape && inputValue !== '') {
           // Avoid Opera to exit fullscreen mode.
           event.preventDefault();
@@ -614,7 +614,7 @@ export default function useAutocomplete(props) {
     setFocused(true);

     if (!disableOpenOnFocus) {
-      handleOpen(event);
+      handleOpen(event, 'focus');
     }
   };

@@ -632,7 +632,7 @@ export default function useAutocomplete(props) {
       resetInputValue(event, value);
     }

-    handleClose(event);
+    handleClose(event, 'blur');
   };

   const handleInputChange = event => {
@@ -640,14 +640,14 @@ export default function useAutocomplete(props) {

     if (newValue === '') {
       if (disableOpenOnFocus) {
-        handleClose(event);
+        handleClose(event, 'input');
       }

       if (!disableClearable && !multiple) {
         handleValue(event, null);
       }
     } else {
-      handleOpen(event);
+      handleOpen(event, 'input');
     }

     if (inputValue === newValue) {
@@ -692,9 +692,9 @@ export default function useAutocomplete(props) {
     inputRef.current.focus();

     if (open) {
-      handleClose(event);
+      handleClose(event, 'toggle');
     } else {
-      handleOpen(event);
+      handleOpen(event, 'toggle');
     }
   };

@@ -719,7 +719,13 @@ export default function useAutocomplete(props) {

   const handleInputMouseDown = event => {
     if (inputValue === '' && (!disableOpenOnFocus || inputRef.current === document.activeElement)) {
-      handlePopupIndicator(event);
+      inputRef.current.focus();
+
+      if (open) {
+        handleClose(event, 'toggle');
+      } else {
+        handleOpen(event, 'toggle');
+      }
     }
   };

@oliviertassinari could the following strategy work?
When an autocomplete gets focus, add a focus event handler to the window. When that event on the window fires, set a marker to ignore one focus event on the autocomplete. remove the window focus event handler when the autocomplete blurs.

@Janpot We have handled tab switch at two occasions in the past:

https://github.com/mui-org/material-ui/blob/ad6fe1bfc569ee4230f2237e6639b22bdc4b7090/packages/material-ui/src/Snackbar/Snackbar.js#L202
https://github.com/mui-org/material-ui/blob/ad6fe1bfc569ee4230f2237e6639b22bdc4b7090/packages/material-ui/src/utils/focusVisible.js#L123

But with more hindsight, I'm not sure what should be the expected behavior. Google's product seems to be inconsistent with this, it's almost like the behavior inherits from other decisions, the fruit of chance.

@oliviertassinari Ok, I think I have a solution: https://codesandbox.io/s/material-demo-ofp6l
It seems to be quite straightforward after all, and I can implement it in userland. Thanks for your guidance. If you don't feel like this should be the behavior of the Autocomplete component then feel free to close this issue.

@Janpot Great. I think that we should wait.
However, the reason argument could move forward. I think that we can leave this issue open until somebody else faces the problem and need it.

When I switch to another tab, I expect to find my page in the exact same state that I left it when I come back

This is browser behavior though. When leaving the tab everything gets blurred. When you tab back focus events get fired again
This should not be applied to the autocomplete only. Every component doing "something" when focused would need this fix.
Considering how <input type="text" list="some-datalist-idref" /> behaves I'd much rather change the default of disableOpenOnFocus to true and handle click separately. The native variant does not open on focus. Only when you click in the textbox. I suspect this is also better for screen readers since you don't get this wall of text announced just by moving focus.

@eps1lon His sounds like a great plan 👍. I have noticed that Chrome autocomplete and autofill list boxes behave the same way.
One note regarding the prop, if we change the default to true, then we should change the prop name disableOpenOnFocus -> openOnFocus.

Think I might give this a go, read through the whole thing and from what I've understood I just need to change disableOpenOnFocus = true?

@haseebdaone This is not a one-line change, it would have had the "good first issue" if it was the case.

@oliviertassinari If you don't mind me asking what other changes are needed?

@haseebdaone I had a closer look at the changes. I think that a change, in this order, will solve our problem. Note that the tests will also need to be updated :)
diff --git a/docs/src/pages/components/autocomplete/GoogleMaps.tsx b/docs/src/pages/components/autocomplete/GoogleMaps.tsx
index 516010ff4..ac8ef4e60 100644
--- a/docs/src/pages/components/autocomplete/GoogleMaps.tsx
+++ b/docs/src/pages/components/autocomplete/GoogleMaps.tsx
@@ -109,7 +109,6 @@ export default function GoogleMaps() {
       autoComplete
       includeInputInList
       freeSolo
-      disableOpenOnFocus
       renderInput={params => (
         <TextField
           {...params}
diff --git a/docs/src/pages/components/autocomplete/Playground.tsx b/docs/src/pages/components/autocomplete/Playground.tsx
index c3cae2e6f..874f43bdf 100644
--- a/docs/src/pages/components/autocomplete/Playground.tsx
+++ b/docs/src/pages/components/autocomplete/Playground.tsx
@@ -88,10 +88,10 @@ export default function Playground() {
       />
       <Autocomplete
         {...defaultProps}
-        id="disable-open-on-focus"
-        disableOpenOnFocus
+        id="open-on-focus"
+        openOnFocus
         renderInput={params => (
-          <TextField {...params} label="disableOpenOnFocus" margin="normal" fullWidth />
+          <TextField {...params} label="openOnFocus" margin="normal" fullWidth />
         )}
       />
       <Autocomplete
diff --git a/packages/material-ui-lab/src/Autocomplete/Autocomplete.js b/packages/material-ui-lab/src/Autocomplete/Autocomplete.js
index 463ff0f2f..fd0097cdf 100644
--- a/packages/material-ui-lab/src/Autocomplete/Autocomplete.js
+++ b/packages/material-ui-lab/src/Autocomplete/Autocomplete.js
@@ -252,7 +252,6 @@ const Autocomplete = React.forwardRef(function Autocomplete(props, ref) {
     disableCloseOnSelect = false,
     disabled = false,
     disableListWrap = false,
-    disableOpenOnFocus = false,
     disablePortal = false,
     filterOptions,
     filterSelectedOptions = false,
@@ -276,6 +275,7 @@ const Autocomplete = React.forwardRef(function Autocomplete(props, ref) {
     onInputChange,
     onOpen,
     open,
+    openOnFocus = false,
     openText = 'Open',
     options,
     PaperComponent = Paper,
@@ -566,10 +566,6 @@ Autocomplete.propTypes = {
    * If `true`, the list box in the popup will not wrap focus.
    */
   disableListWrap: PropTypes.bool,
-  /**
-   * If `true`, the popup won't open on input focus.
-   */
-  disableOpenOnFocus: PropTypes.bool,
   /**
    * Disable the portal behavior.
    * The children stay within it's parent DOM hierarchy.
@@ -691,6 +687,10 @@ Autocomplete.propTypes = {
    * Control the popup` open state.
    */
   open: PropTypes.bool,
+  /**
+   * If `true`, the popup will open on input focus.
+   */
+  openOnFocus: PropTypes.bool,
   /**
    * Override the default text for the *open popup* icon button.
    *
diff --git a/packages/material-ui-lab/src/useAutocomplete/useAutocomplete.d.ts b/packages/material-ui-lab/src/useAutocomplete/useAutocomplete.d.ts
index e616b2b1a..81db8c032 100644
--- a/packages/material-ui-lab/src/useAutocomplete/useAutocomplete.d.ts
+++ b/packages/material-ui-lab/src/useAutocomplete/useAutocomplete.d.ts
@@ -69,10 +69,6 @@ export interface UseAutocompleteCommonProps<T> {
    * If `true`, the list box in the popup will not wrap focus.
    */
   disableListWrap?: boolean;
-  /**
-   * If `true`, the popup won't open on input focus.
-   */
-  disableOpenOnFocus?: boolean;
   /**
    * A filter function that determines the options that are eligible.
    *
@@ -154,6 +150,10 @@ export interface UseAutocompleteCommonProps<T> {
    * Control the popup` open state.
    */
   open?: boolean;
+  /**
+   * If `true`, the popup will open on input focus.
+   */
+  openOnFocus?: boolean;
   /**
    * Array of options.
    */
diff --git a/packages/material-ui-lab/src/useAutocomplete/useAutocomplete.js b/packages/material-ui-lab/src/useAutocomplete/useAutocomplete.js
index 3c01bb4b3..bb08631b4 100644
--- a/packages/material-ui-lab/src/useAutocomplete/useAutocomplete.js
+++ b/packages/material-ui-lab/src/useAutocomplete/useAutocomplete.js
@@ -1,7 +1,7 @@
 /* eslint-disable no-constant-condition */
 import React from 'react';
 import PropTypes from 'prop-types';
-import { setRef, useEventCallback, useControlled, ownerDocument } from '@material-ui/core/utils';
+import { setRef, useEventCallback, useControlled } from '@material-ui/core/utils';

 // https://stackoverflow.com/questions/990904/remove-accents-diacritics-in-a-string-in-javascript
 // Give up on IE 11 support for this feature
@@ -86,12 +86,12 @@ export default function useAutocomplete(props) {
     autoSelect = false,
     blurOnSelect = false,
     clearOnEscape = false,
+    componentName = 'useAutocomplete',
     debug = false,
     defaultValue = props.multiple ? [] : null,
     disableClearable = false,
     disableCloseOnSelect = false,
     disableListWrap = false,
-    disableOpenOnFocus = false,
     filterOptions = defaultFilterOptions,
     filterSelectedOptions = false,
     freeSolo = false,
@@ -105,13 +105,13 @@ export default function useAutocomplete(props) {
     multiple = false,
     onChange,
     onClose,
-    onOpen,
     onInputChange,
+    onOpen,
     open: openProp,
+    openOnFocus = false,
     options,
     selectOnFocus = !props.freeSolo,
     value: valueProp,
-    componentName = 'useAutocomplete',
   } = props;

   const [defaultId, setDefaultId] = React.useState();
@@ -655,7 +655,7 @@ export default function useAutocomplete(props) {
   const handleFocus = event => {
     setFocused(true);

-    if (!disableOpenOnFocus && !ignoreFocus.current) {
+    if (openOnFocus && !ignoreFocus.current) {
       handleOpen(event);
     }
   };
@@ -692,10 +692,6 @@ export default function useAutocomplete(props) {
     }

     if (newValue === '') {
-      if (disableOpenOnFocus) {
-        handleClose(event);
-      }
-
       if (!disableClearable && !multiple) {
         handleValue(event, null);
       }
@@ -783,8 +779,7 @@ export default function useAutocomplete(props) {
   };

   const handleInputMouseDown = event => {
-    const doc = ownerDocument(inputRef.current);
-    if (inputValue === '' && (!disableOpenOnFocus || inputRef.current === doc.activeElement)) {
+    if (inputValue === '') {
       handlePopupIndicator(event);
     }
   };
@@ -968,10 +963,6 @@ useAutocomplete.propTypes = {
    * If `true`, the list box in the popup will not wrap focus.
    */
   disableListWrap: PropTypes.bool,
-  /**
-   * If `true`, the popup won't open on input focus.
-   */
-  disableOpenOnFocus: PropTypes.bool,
   /**
    * A filter function that determins the options that are eligible.
    *
@@ -1051,6 +1042,10 @@ useAutocomplete.propTypes = {
    * Control the popup` open state.
    */
   open: PropTypes.bool,
+  /**
+   * If `true`, the popup will open on input focus.
+   */
+  openOnFocus: PropTypes.bool,
   /**
    * Array of options.
    */

I'll give this a go


Implemented taking only the latest attribute for a property

Context
In WidgetBuilders we can easily have duplicate attributes
like Label("aha!").color("red").color("blue")
Diffing algorithm already uses stable sort for diffing attributes
Thus we need to leverage that fact
In particular we might have a bug in this context
prev:  Label("aha!").color("red").color("blue")
next:  Label("aha!").color("red")
After the diffing the resulting color should be "red", but previously
it was interpreted as "removed color property" instead
Solution
I implemented SkipRepeatingScalars.skip functions that skips color("red") from color("red").color("blue")`
Effectively taking only the latest attribute for a particular property.
I used in ScalarChangesEnumerator but only for actual diff. It Is possible that it should be used for "AllRemoved" and "AllAdded" but it is unlikely to cause any problems (possible a field will be set twice for example)

Would an if condition be better for the hot path than a while loop given 99.9% of the attributes won't be duplicated, though?
I guess the compiler already optimizes this kind of stuff.
e.g.
if scalars.[pos + 1].Key <> key then
    resultingIndex // Quick exit
else
    resultingIndex <- resultingIndex + 1

    while (...)

    resultingIndex

Would an if condition be better for the hot path than a while loop given 99.9% of the attributes won't be duplicated? I guess the compiler already optimizes this kind of stuff.
e.g.
if scalars.[pos + 1].Key <> key then
    pos // Quick exit
else
    resultingIndex <- resultingIndex + 1

    // Peek even further ahead
    while (...)

    resultingIndex

It is possible, although we need to check out of bounds as well, regardless I couldn't measure any overhead with skipping (relative to what we have today, e.g. no overhead at all). So I think we should probably merge it as is and tinker about more performant implementation on a side "for fun" :)


Compile Error

From AcknowList 1.3, there is a compile issue on Xcode 9 with swift 3.2. It works fine on 1.2.
(directory)/Pods/AcknowList/Source/AcknowListViewController.swift:344:163: Type 'NSAttributedStringKey' (aka 'NSString') has no member 'font'

Thanks for the feedback.
AcknowList 1.3 (and up) is only compatible with Swift 4, as mentioned in the README and the .swift-version file.
AcknowList 1.2.x supports Swift 3.
If you need explicit support for Swift 3.2, you can send a pull request that we could tag 1.2.9, for instance. But since Xcode 9 also support Swift 4, there might be a simpler solution, depending on how exactly you use this code in your project.


Remove moot version property from bower.json

Per bower/bower.json-spec@a325da3
Also their maintainer says they probably won't ever use it: http://stackoverflow.com/questions/24844901/bowers-bower-json-file-version-property

Ok. We should also remove it from grunt/bump.js.


Object # has no method 'gzipSync'

[HTTP][NET][00.4s] https://api-v2launch.trakt.tv/shows/trending?page=1&limit=31
TypeError: Object # has no method 'gzipSync'
at /var/www/html/scrapyard.js/network.js:77:37
at Request._callback (/var/www/html/scrapyard.js/network.js:56:7)
at Request.self.callback (/var/www/html/scrapyard.js/node_modules/request/request.js:199:22)
at Request.emit (events.js:98:17)
at Request. (/var/www/html/scrapyard.js/node_modules/request/request.js:1036:10)
at Request.emit (events.js:117:20)
at Gunzip. (/var/www/html/scrapyard.js/node_modules/request/request.js:963:12)
at Gunzip.emit (events.js:117:20)
at _stream_readable.js:929:16
at process._tickCallback (node.js:419:13)

issue resolved after force node update. though a new issue was risen. Unable to view popular/trending tv shows, search function works.

Closing then.


Remove comments by default?

Forgive me if this has already been discussed. Wondering if postcss-apply should remove comments by default? I know that this is the job of a minifier, but it doesn't seem helpful to have the comments if none of their respective rules show up.

I'm working on a particularly large library of mixins, so maybe I'm fringe use-case.
Thoughts?

Hi,
makes sense I guess, will look into it.

@pascalduez thanks! Here to help with testing if you need.

<EMAIL_ADDRESS>


multiple values are stored and reloaded

When a segment produces multiple values, the values are consistently shown, stored, and reloaded.
The patch detects when a value is added to the segment which already produced a value, and builds a list-like structure containing both values and rendered appropriately. This resolves issue #170.

Thanks :-) I can't decide yet whether using the list-like construction is an elegant work of genius, or a bit of a hack! It's certainly a very neat and minimal way to solve the problem. I'll give it a bit more thought when I have some time to spend on Gorilla, and get this into the next release.

Just to justify the list-like consturction: its just lisp's cons.


Develop Hackday presentation script

[ ] Identify what information needs to be presented
[ ] Work with team members to gather information

Judging criteria: https://software.ac.uk/cw20/hackday-judging-criteria


Fix unsigned int dtype character

Thanks @SimonHeybrock!
Confirmed with reference to https://numpy.org/devdocs/reference/arrays.interface.html#object.array_interface that the current implementation is just plain wrong---likely a typo.


ImpportError: No module named skimage when running Neural-style example

I followed this article and installed everything on a AWS EC2 instance and I have a CUDA enable device with CUDNN installed. I can run the train_mnist both with CPU and GPU.
System Info:
Distributor ID: Ubuntu
Description:    Ubuntu 14.04.3 LTS
Release:    14.04
Codename:   trusty
However, whenever I try to run the Neural-style example:
python run.py --content-image input/IMG_4343.jpg --style-image input/starry_night.jpg
I always get:
libdc1394 error: Failed to initialize libdc1394
Traceback (most recent call last):
  File "run.py", line 8, in <module>
    from skimage import io, transform
ImportError: No module named skimage

I have tried to install the python-skimage like so
sudo apt-get install python-skimage
And tried to run the example again. This time I get:
libdc1394 error: Failed to initialize libdc1394
Traceback (most recent call last):
  File "run.py", line 9, in <module>
    from skimage.restoration import denoise_tv_chambolle
ImportError: No module named restoration

How can I fix that?

Ok I don't know what happened:
I removed python-skimage:
sudo apt-get remove python-skimage
and the I installed miniconda2 and from there I did
conda install opencv
conda install scikit-image

And it is working now

maybe your skimage version is too old.
you can just try
#pip install scikit-image --upgrade

Hi, I have the same problem.
`Python 2.7.10 (default, Feb  6 2017, 23:53:20)
[GCC 4.2.1 Compatible Apple LLVM 8.0.0 (clang-800.0.34)] on darwin
Type "help", "copyright", "credits" or "license" for more information.

import generate
Traceback (most recent call last):
File "", line 1, in
File "generate.py", line 8, in
import skimage.transform
ImportError: No module named skimage.transform`

I upgrade scikit-image and still same error.

like me :( ... got the same ...

the same issue, the latest scikit-image  installed but ImportError.

Any updates on this? Anyone got a solution? I got the very same error. I installed scikit-image, latest version, but I still get an ImportError. Help would be greatly appreciated!

@ipa-srd-rd
My situation:
OS: Mac OSX
Issue:

OSX default python 2.7.10, /usr/bin/python.
python 3.6.15.
scikit-image installed in python 3.6.15 environment.

I manage the two version with pyenv and pyenv-virtualenv, but I did a mistake:
Suppose the program test.py,  I assign the interpreter with !#/usr/bin/python,  then  use pyenv switch to py3 environment, execute the command ./test.py. Note that I run python 2.7.10  interpreter in python 3.6.15  environment, ImportError Inevitably!
The solution:
delete the first line !#/usr/bin/python , run python test.py in py3 (python 3.6.15 envrionment).

from skimage import transform

i got the same problem, how deal with it???

Maybe you are working on wrong environments.
Use which python or python --version and figure out your python environment.
Also do the same for your pip. which pip and pip --version. you will figure out where does your pip command install the requested package. You might have to use pip3 or pip2 in order to get things done.
I'm not sure if you can use the which on windows or not. It's fine in Linux.


⚠ Redacted has degraded performance

In 744110d, Redacted ($RED) experienced degraded performance:

HTTP code: 200
Response time: 3610 ms

Resolved: Redacted performance has improved in 46e28d4 after 5 minutes.


feat: introduce a security parameter to optimize the proof size with controlled security

Issue
The previous method, which is used for estimating the samples count, is too simple.
When the total number of blocks in the region which requires verifying is increased, the security is decreased.
Technical Overview

Let

$m$ denote the total number of blocks which used to prove the chain root is valid.
$p$ denote the probability of catching the adversary with a single sample.
$p_{m}$ denote the probability of failure, i.e., not catching the optimal adversary after $m$ independent queries.

So $p_{m} = (1 - p)^{m}$.
Since $p = \frac{1}{k}$ (ref: theorem 2 in section 5.4 of FlyClient: Super-Light Clients for Cryptocurrencies), if we want $p_{m} \le 2^{-\lambda}$, then $m \ge \frac{\lambda}{\log_{\frac{1}{2}} {(1 - \frac{1}{k})}}$.

Codecov Report

Merging #54 (0625396) into develop (ad0fc57) will increase coverage by 0.05%.
The diff coverage is 66.66%.

@@             Coverage Diff             @@
##           develop      #54      +/-   ##
===========================================
+ Coverage    33.13%   33.18%   +0.05%
===========================================
  Files           22       22
  Lines         3338     3345       +7
  Branches       461      464       +3
===========================================
+ Hits          1106     1110       +4
- Misses        2120     2121       +1
- Partials       112      114       +2

Flag
Coverage Δ

unittests
33.18% <66.66%> (+0.05%)
:arrow_up:

Flags with carried forward coverage won't be shown. Click here to find out more.

Impacted Files
Coverage Δ

src/protocols/light_client/sampling.rs
93.93% <66.66%> (-4.37%)
:arrow_down:

Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.


Disable arrow keys for moving?

Hi there,
I have an input text field and when I am using this fengyuanchen/cropper
I cannot use my arrow keys to change the position of my cursor in the input field with my arrows keys,
because the image is always focused.
Simple disable the cropper is not working either.
The focus is still on the disabled cropper.
How can I disable arrow keys for moving the image?
thanks

unlike the options this can be found in the main.js
.on('keydown', function (e) {
        switch (e.which) {
            case 37:
                e.preventDefault();
                $image.cropper('move', -1, 0);
                break;

            case 38:
                e.preventDefault();
                $image.cropper('move', 0, -1);
                break;

            case 39:
                e.preventDefault();
                $image.cropper('move', 1, 0);
                break;

            case 40:
                e.preventDefault();
                $image.cropper('move', 0, 1);
                break;
        }

    })


Documentation

Well I think documentation would be useful to new contributors.

It would, but there is no much sense to do it when everything is so unstable. Only some parts like #273 can be explained now (and they still are subjects of changes).


cannot update the profile image

reported by @hkstoff:devvul.com
https://github.com/matrix-org/riot-android-rageshakes/issues/859

08-21 21:32:04.062Z 678 D/MXMediaUploadWorkerTask: doInBackground : Upload is done with response code 413
08-21 21:32:04.065Z 678 E/MXMediaUploadWorkerTask: doInBackground : Error parsing Value  of type java.lang.String cannot be converted to JSONObject
08-21 21:32:04.069Z 1 D/MXMediaUploadWorkerTask: Upload org.matrix.androidsdk.db.MXMediaUploadWorkerTask@871d727 : 96
08-21 21:32:04.070Z 1 D/MXMediaUploadWorkerTask: Upload org.matrix.androidsdk.db.MXMediaUploadWorkerTask@871d727 : 96
08-21 21:32:04.071Z 1 D/MXMediaUploadWorkerTask: Upload org.matrix.androidsdk.db.MXMediaUploadWorkerTask@871d727 : 96
08-21 21:32:04.072Z 1 D/MXMediaUploadWorkerTask: Upload org.matrix.androidsdk.db.MXMediaUploadWorkerTask@871d727 : 96

The upload failed but there was no toast to warn the user.


ModbusMasterTcpConnection: Prevents a possible unhandled nullreference exception on disposal of ModbusMasterTcpConnection

Prevents a possible unhandled nullreference exception on disposal, this happens in some cases when the master is still sending or the sent data is still being handled during disposal.

Prevents a possible unhandled nullreference exception on disposal, this happens in some cases when the master is still sending or the sent data is still being handled during disposal.


python312Packages.holidays: 0.59 -> 0.60

Diff: https://github.com/vacanza/python-holidays/compare/refs/tags/v0.59...v0.60
Changelog: https://github.com/vacanza/python-holidays/releases/tag/v0.60

Things done

Built on platform(s)

[ ] 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
[ ] 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.

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

x86_64-linux

:white_check_mark: 12 packages built:

calcure
calcure.dist
home-assistant-component-tests.holiday
home-assistant-component-tests.workday
python311Packages.holidays
python311Packages.holidays.dist
python311Packages.prophet
python311Packages.prophet.dist
python312Packages.holidays
python312Packages.holidays.dist
python312Packages.prophet
python312Packages.prophet.dist


[HOLD for payment 2023-12-06] [$125] [Form Provider Refactor] BankAccountPlaidStep

Coming from https://github.com/Expensify/App/issues/25397#issuecomment-1743272245, we created a new Form provider that works with functional components and we need to refactor all usages of the old Form component.
This issue is specific to refactoring src/pages/ReimbursementAccount/BankAccountPlaidStep.js
cc @kowczarz @cdOut
Upwork Automation - Do Not Edit

Upwork Job URL: https://www.upwork.com/jobs/~019decd021d25bec28
Upwork Job ID:<PHONE_NUMBER>555628544
Last Price Increase: 2023-11-21
Automatic offers:

alitoshmatov | Reviewer | 27774339

Np, just waiting for @cdOut or @kowczarz to comment so I can assign it to them.

Hello! I'm from Software Mansion and I will work on this task.

No BZ checklist needed here since this was a refactor, not a bug.

Only step needed here is $125 payment to @alitoshmatov , paid via Upwork. We'll issue this payment on 2023-12-06 (assuming no regressions).

All set to issue payment.

All set!


BAU: Enable the single IDP feature by default

This is enabled everywhere except the performance testing environment and our
vagrant test boxes. Enable it everywhere by default.

I'm quite against configuration for configuration's sake - if the default in frontend is true and we want to make it false in some environment we can add that configuration then, when we need it.

I see your point. My concern is that it's no longer just a config/feature flag which anyone can toggle if there is an urgent need, but will need to 'implement' the config in puppet first (or toggle it for all environments).


alternatives to seashore.NO_VALUE

I find myself importing seashore into modules just to get access to seashore.NO_VALUE.
Would empty string or None be okay alternatives?  (It seems unlikely anything but a string would ever be valid in the context of calling a command.)
Also, seashore.FLAG may read better than seashore.NO_VALUE.
executor.git.show(no_patch=seashore.FLAG).batch()

versus
executor.git.show(no_patch=seashore.NO_VALUE).batch()

None works; I still kinds think FLAG is a better constant name than NO_VALUE (more of a "what" not "how" API).... but at the same time even if that was changed I don't see ever using seashore.FLAG over None


selinux incorrectly detected as "enforcing" on config with this option commented out

https://github.com/rancher/k3s/blob/b7ec43c9977655262bc3a70bd9260f3bf36e460d/install.sh#L413
install.sh is detecting selinux as enabled even though that is commented out:
$ sudo cat /etc/selinux/config

# This file controls the state of SELinux on the system.
# SELINUX= can take one of these three values:
#     enforcing - SELinux security policy is enforced.
#     permissive - SELinux prints warnings instead of enforcing.
#     disabled - No SELinux policy is loaded.
# SELINUX=enforcing
SELINUX=disabled
# SELINUXTYPE= can take one of three values:
#     targeted - Targeted processes are protected,
#     minimum - Modification of targeted policy. Only selected processes are protected.
#     mls - Multi Level Security protection.
# SELINUXTYPE=targeted

Fixed in v1.18.2-rc2+k3s1


Why do tests sometimes deadlock on 2.12 in Travis?

We are frequently seeing tests run for about 49 minutes and get killed on Travis.
We have already been slain by SI-10064 in tut.  But this only happens in Travis, and only intermittently.  I have not managed to reproduce this locally.

@rossabaker Looks like a good place for me to get my feet wet.  Is this a recent example of the failure?

Yes.  I haven't been able to make this happen locally, which is frustrating -- it's a lot of iterating through Travis and hoping to get unlucky.
One way to do it might be to look at the list of specs emitted by the failing job, and compare to a successful job.  Specs we don't see are probably the ones that hang.  And then run those in a loop on a branch in Travis so we get unlucky every time, and we might get the red-to-green confidence in an eventual fix.

Currently trying to reproduce without hijacking the project's real Travis CI account.  Running in Docker using the (dated) travis-jvm image on a 4GB Ubuntu 16.04 DigitalOcean droplet.
In a 6 or 7 runs so far, I've noticed on short (~2 min) hang and captured a thread dump.  Very possible it's unrelated, but to help track my progress I'm attaching console output and a thread dump.

20170119_2210_2min_hang_console.txt
20170119_2210_2min_hang_thread_dump.txt

The http4s tests can definitely hang for long periods during TomcatServerSpec if the build container is low on entropy.  Pretty sure that's what happened during the hang above:
"localhost-startStop-1" #1472 daemon prio=5 os_prio=0 tid=0x00007ff865263000 nid=0x764 runnable [0x00007ff81dd52000]
   java.lang.Thread.State: RUNNABLE
        at java.io.FileInputStream.readBytes(Native Method)
        at java.io.FileInputStream.read(FileInputStream.java:246)
        at sun.security.provider.SeedGenerator$URLSeedGenerator.getSeedBytes(SeedGenerator.java:539)
        at sun.security.provider.SeedGenerator.generateSeed(SeedGenerator.java:144)
        at sun.security.provider.SecureRandom$SeederHolder.<clinit>(SecureRandom.java:203)
        at sun.security.provider.SecureRandom.engineNextBytes(SecureRandom.java:221)
        - locked <0x00000000f910dc48> (a sun.security.provider.SecureRandom)
        at java.security.SecureRandom.nextBytes(SecureRandom.java:457)
        - locked <0x00000000f910dc80> (a java.security.SecureRandom)
        at java.security.SecureRandom.next(SecureRandom.java:480)
        at java.util.Random.nextInt(Random.java:329)
        at org.apache.catalina.util.SessionIdGeneratorBase.createSecureRandom(SessionIdGeneratorBase.java:237)
        at org.apache.catalina.util.SessionIdGeneratorBase.getRandomBytes(SessionIdGeneratorBase.java:174)
        at org.apache.catalina.util.StandardSessionIdGenerator.generateSessionId(StandardSessionIdGenerator.java:34)
        at org.apache.catalina.util.SessionIdGeneratorBase.generateSessionId(SessionIdGeneratorBase.java:167)
        at org.apache.catalina.util.SessionIdGeneratorBase.startInternal(SessionIdGeneratorBase.java:256)
        at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:145)
        - locked <0x00000000f8d30790> (a org.apache.catalina.util.StandardSessionIdGenerator)
        at org.apache.catalina.session.ManagerBase.startInternal(ManagerBase.java:719)
[..]

"pool-103-thread-1" #1457 daemon prio=5 os_prio=0 tid=0x00007ff87c4ca000 nid=0x756 waiting on condition [0x00007ff823960000]
   java.lang.Thread.State: WAITING (parking)
        at sun.misc.Unsafe.park(Native Method)
        - parking to wait for  <0x00000000f8bc3168> (a java.util.concurrent.FutureTask)
        at java.util.concurrent.locks.LockSupport.park(LockSupport.java:175)
        at java.util.concurrent.FutureTask.awaitDone(FutureTask.java:429)
        at java.util.concurrent.FutureTask.get(FutureTask.java:191)
        at org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:943)
        - locked <0x00000000f8c0e738> (a org.apache.catalina.core.StandardEngine)
        at org.apache.catalina.core.StandardEngine.startInternal(StandardEngine.java:262)
        - locked <0x00000000f8c0e738> (a org.apache.catalina.core.StandardEngine)
        at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:145)
        - locked <0x00000000f8c0e738> (a org.apache.catalina.core.StandardEngine)
        at org.apache.catalina.core.StandardService.startInternal(StandardService.java:441)
        - locked <0x00000000f8c0e738> (a org.apache.catalina.core.StandardEngine)
        at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:145)
        - locked <0x00000000f8c0bb90> (a org.apache.catalina.core.StandardService)
        at org.apache.catalina.core.StandardServer.startInternal(StandardServer.java:789)
        - locked <0x00000000f8c0c338> (a java.lang.Object)
        at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:145)
        - locked <0x00000000f8c0bd60> (a org.apache.catalina.core.StandardServer)
        at org.apache.catalina.startup.Tomcat.start(Tomcat.java:346)
        at org.http4s.server.tomcat.TomcatBuilder.$anonfun$start$1(TomcatBuilder.scala:150)
        at org.http4s.server.tomcat.TomcatBuilder$$Lambda$19006/1810047281.apply(Unknown Source)

(There are also some interesting specs2.fixed.env-* threads in the dump.)
Low entropy could definitely hang the tests...and it has happened to others on Travis.  Seems very unlikely it would be limited to Scala 2.12 (or 2.12 with scalaz-7.2) though.  Might be separate from the hangs that raised this issue.

Lots of interesting observations here.

We've been plagued by client timeouts in Travis the past.  These aren't "job gets killed after 10 minutes", these are "a client spec fails and everything else passed."  Those could be explained by hangs of a couple minutes.  This run only shows the TomcatServerSpec being held up, so I doubt that's connected.  Maybe we use SecureRandom elsewhere?  (Probably not, or it would have hung elsewhere.)
The last comment looks interesting to fix the Tomcat hang.
I agree that there is nothing that points to Scala 2.12 or Scalaz-7.2 here.
I'm trying to recall if we've ever seen this on Scala 2.12 and Scalaz-7.1.  I assumed this was one of those issues with Scala 2.12 and lambda lifting, but I can only remember the Scala-2.12+Scalaz-7.2 combo failing this way.  If that's true, that's a clue, but I don't know what it means.

I agree that there is nothing that points to Scala 2.12 or Scalaz-7.2 here.

Possible explanation...but I'm reaching a bit...is that $SBT_COMMAND differs based on Scala version until recently:
https://github.com/http4s/http4s/blob/c6df29a8b63d8ab6fac7e74819fdf02dabb73b11/bin/travis#L5
Was hard to say with confidence by just watching /proc/sys/kernel/random/entropy_avail manually in my test environment, but it's possible the coverage task was adding some entropy to process.
Published PR #882 for consideration.  In hindsight, I should have forked from the v0.15.3 tag, before the docs were moved to 2.12.  Hard to compare build times before and after #882 because of the docs change.

I can cherry-pick it back to 0.15.x.

Unfortunately the /dev/urandom change did not help.  Change is active but build still hung for 10 minutes.  Back to the drawing board.

Well, it likely does help the previously undetected two-minute hang in Tomcat. :)

No promises, but I'm toying with the idea of writing a SBT plugin or JVM agent that watches stdout for absence of input and triggers a thread dump.  Might even be possible to hack something together with a shell script and jstack.

https://etorreborre.github.io/specs2/guide/SPECS2-3.5/org.specs2.guide.TimeoutExamples.html might give the missing hook, but you'd have to intercept failures caused by however that fails.  I did similar on Scalatest once, and it got me pointed in the right direction.
The other thing I did to narrow down the Travis-only deadlock at work was to compare the list of specs names in a successful run to the ones that didn't appear on the hung job.  It pointed me right to the offending spec, though not the cause.

Using the specs2 hooks makes sense.  Downside is it means I'm diving in at the deep end of specs2.  Haven't drowned yet, but might be several more days before I have anything PR worthy.

53a9c16f5bb951c9ea224b069eddc21a9798d25b sort of works, but:

it results in skipped tests instead of failed tests on timeout
now it runs out of memory on my machine

Cool.  I'll take a look tonight.  This is my proof-of-concept (outside of http4s) to grab thread dump:
https://gist.github.com/bfritz/544a56352f5fcdaf7522c09a24a791cc

@rossabaker Pretty far into the weeds, but 53a9c16 will cause every assertion in the test suite to take 6+ seconds (60 second timeout / 10).
TimeoutExamples takes the global timeout argument (60 seconds), divides by 10, and then calls Thread.sleep(6000) for every assertion.  If the assertion is done when sleep() returns it moves on  If not, Thread.sleep(6000) is called up to 9 more times.
A snippet with showtimes turned on:
[info] AuthenticationSpec
[info]
[info] Failure to authenticate should
[info]   + not run unauthorized routes (6 seconds, 73 ms)
[info] BasicAuthentication should
[info]   + Respond to a request without authentication with 401 (6 seconds, 72 ms)
[info]   + Respond to a request with unknown username with 401 (6 seconds, 71 ms)
[info]   + Respond to a request with wrong password with 401 (6 seconds, 71 ms)
[info]   + Respond to a request with correct credentials (6 seconds, 71 ms)
[info] DigestAuthentication should
[info]   + Respond to a request without authentication with 401 (6 seconds, 71 ms)
[info]   + Respond to a request with correct credentials (6 seconds, 71 ms)
[info]   + Respond to many concurrent requests while cleaning up nonces (6 seconds, 70 ms)
[info]   + Avoid many concurrent replay attacks (6 seconds, 691 ms)
[info]   + Respond to invalid requests with 401 (6 seconds, 691 ms)
[info]
[info]
[info] Total for specification AuthenticationSpec
[info] Finished in 30 seconds, 200 ms
[info] 10 examples, 0 failure, 0 error

Strongly suspect the bump in memory usage is tied to the extra blocking (and parallelism).
Still experimenting, but I hope to have a PR this weekend that is more targetted to the specs that are making Travis unhappy.

Have not seen a deadlock for a long time, possibly not since ThreadDumpOnTimeout was added in #897 ...possibly even earlier.
I opened a more specific #978 for the AsyncHttpClientSpec timeout error we are still seeing.  Going to close this one and we can re-open if we see more deadlocks.

After further consideration, reopening.  I think the builds Travis kills after > 4MB of output, due to thread dumps on console, are likely the the new version of the old deadlocks.
There is also a pattern emerging when they happen.  Juicy bits from the thread dumps at:
https://gist.github.com/bfritz/73d85d6189e1216f791a003a64a90063

https://travis-ci.org/http4s/http4s/jobs/207223261 from #979

sbt test deadlocked on me while running b54a8c345 (topic/rig).  Thread dump shows deadlock in CharsetRangeSpec related to lazy initialization of scalacheck bits:
Found one Java-level deadlock:
=============================
"specs2.fixed.env-595028191-8":
  waiting to lock monitor 0x00007ff940034518 (object 0x00000000af499340, a org.http4s.CharsetRangeSpec),
  which is held by "specs2.fixed.env-595028191-3"
"specs2.fixed.env-595028191-3":
  waiting to lock monitor 0x00007ff98c26df88 (object 0x00000000af69e088, a org.scalacheck.ArbitraryLowPriority$$anon$1),
  which is held by "specs2.fixed.env-595028191-8"

Full jstack output at:
https://gist.github.com/bfritz/3f466f6f75427437e5f0a4f0fd3a906c#file-thread_dump_with_deadlock-txt-L5125
Best I can tell, that dump is consistent with this deadlock.  Unfortunately, I have no idea how to fix it.

Just had a deadlock in the release-0.15.x branch:
https://travis-ci.org/http4s/http4s/jobs/207383661#L1585

CharsetRangeSpec??!?

CharsetRangeSpec??!?

Yep, same as in the jstack output above.  Looks like a deadlock involving lazy initialization and scalacheck.


New Relic Browser Analytics plugin

Hey, I just made a Pull Request!
As described in #18529 we were looking for a New Relic Browser plugin for our analytics needs on our Backstage instance, but couldn't find one. This adds an implementation of the AnalyticsApi that loads and initialises New Relic Browser's agent if properly configured.
:heavy_check_mark: Checklist

[x] A changeset describing the change and affected packages. (more info)
[x] Added or updated documentation
[x] Tests for new functionality and regression tests for bug fixes
[-] Screenshots attached (for UI changes)
[x] All your commits have a Signed-off-by line in the message. (more info)

@iamEAP do you wanna take a first pass at this?

Woops - I think that this will need a rebase from the main branch to get this to look nice again, looks like a load of other commits have just popped in here!

@benjdlambert I actually did a rebase just now because of the conflicts on the yarn.lock file. Not sure what happened here, but I'll look into it.

@benjdlambert I just did another rebase and I think it looks ok now again. Perhaps this was caused by the issue with PR's on GitHub earlier this morning.

I think I've processed all the comments. @benjdlambert @iamEAP @awanlin Could you have another look at this?

@benjdlambert @iamEAP @awanlin I think we're all good here?

Looks like TechDocs pipeline is failing, not entirely sure why though.

Looks like TechDocs pipeline is failing, not entirely sure why though.

I kicked off the build again to see if it was a one time thing, getting further so far

@benjdlambert Can this be merged?

@backstage-service I think this can be merged?

@benjdlambert No problem, I know things can get busy. Just wanted to make sure this didn't fall through the cracks.

@benjdlambert Microsite build is taking an awful lot of time, not sure what's going on there

@benjdlambert I think we're good to go now?


Put out request for more coords

Perhaps in newsletter?
Needs #377
E3 U3 S8 C8: P22

This awaits the Info for Coords documentation but in the meantime, we're going to approach Coords about training up helpers to the role (and also proofers & validators)

Draft email being prepared to cover this.

Request has gone out!

Discussion on aim to recruit more proofreaders (and transcribers), with opportunity to train people up as proofreaders who may then eventually move onto becoming validators etc.

FreeREG needs them as well.

Looks like this is complete in terms of putting out the request. Shall create new story to cover other discussion on recruiting more proofreaders etc.


Blank Screen or No Navigation even for template App.

So I created from a template hello-world everything works fine till i use rnv run command but when i try to build using rnv build -p webOS I only get the header menu & blank app .
All default configs, same for emulator & TV Device.
Any Help would be greatly appretiated.

Was Due To Router not loading default page or default route not being loaded.


Catch errors in a better way, possible?

See if there is a better way. Can we just catch errors inside setitem?
    try:
        self[pname] = param_class(value)
    except (TypeError, ValueError):
        self[pname] = param_class(Invalid)

Solved by PR : https://github.com/raamana/protocol/pull/6
Reference to function : https://github.com/sinhaharsh/protocol/blob/a42a88e22ad09a7277c5aebbddf281185eb39503/protocol/imaging.py#L1908


any way to put image in blog summary?

1.if i keep light mode as default than anytime i move to new page even if i change my mode to dark it gets refreshed to light mode
2. is there anyway to turn of social in blogs
3. is there any way to put image in blog summary

Your default settings are set to light, which might be why it is returning to light view.
You can customize the layout configuration by adding conditions or changing the default config to false.
You can add the images in the blog files themselves. You can follow the markdown syntax for that. https://www.markdownguide.org/basic-syntax/#images

I also have problem on  putting image in blog summary. Now we can see recent posts in the homepage with plain text in the homepage. Can we display the pictures as well?

Now we can see recent posts in the homepage with plain text in the homepage. Can we display the pictures as well?

As of now, this is not available. I will add this in future updates.

As of now, this is not available. I will add this in future updates.

@harshnandwana @Liu22Yi Added this functionality fdd628c9cd5df376e85fefc4f0d1b0219bc910bb


Default User/Password Not Working

Hi, just ran the docker image and used my existing MariaDB. When I try to login with<EMAIL_ADDRESS>the docker log returns this:
cache: [POST /users/login] invalidate, pass
Am I using the wrong user/password or is snorby not accessing MariaDB correctly. My run command is:
sudo docker run -d --name snorby -p 3000:3000 --env="DB_ADDRESS=<IP_ADDRESS>" --env="DB_USER=root" --env="DB_PASS=mysql" polinux/snorby
Thanks in advance.

you shouldn't use the <IP_ADDRESS> address as it's referring localhost inside of the snorby container.
 I'll give it a go and then close.


Rename of paid_by_us to paid_by_2i2c

We have gcp.billing.paid_by_us and I'm to introduce aws.billing.paid_by_us in cluster.yaml files. I'm considering the naming for clarity. I think changing this name won't have complicated consequences.
I think paid_by_2i2c is an improvement because then we don't assume who is "us".
OK to proceed at some point in time? I'm not doing this now, just look to enable doing it later.

Sounds good to me, just go for it if you feel like.


About Fine-grained Features

Sorry to bother you again, but I really love your work. I saw from the paper that you extracted the grid features of the penultimate layer from the CLIP image encoder. Why did you choose the penultimate layer instead of the last layer? In addition, can the number of tokens be greater than 4?

@lxd941213 hi, sd2.1 and sdxl both use the penultimate layer of text encoder. Hence, we also use the grid features of the penultimate layer from the CLIP image encoder, but I think using last layer also works. The number of tokens we used is 16, you can use a greater number.

@lxd941213 hi, sd2.1 and sdxl both use the penultimate layer of text encoder. Hence, we also use the grid features of the penultimate layer from the CLIP image encoder, but I think using last layer also works. The number of tokens we used is 16, you can use a greater number.

Thanks for your answer


network-manager-applet: add runtime dependency on gnome3.keyring

Motivation for this change
See #38967
Things done

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

[x] NixOS
[ ] macOS
[ ] other Linux distributions

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

@vcunat : OK to cherry-pick to 18.03?

Yes in principle, but it's not that easy.  Apart from the source file having moved, there have been other significant changes in the expression, including change of build system to meson...

So maybe just adding this to the list will work, but someone would better test that first (on 18.03).


Error installing

installing it using the pip3 command i get this:
    File "<string>", line 201, in get_source_files
    File "/tmp/pip-build-env-3xn4qoq8/overlay/lib/python3.10/site-packages/setuptools/_distutils/cmd.py", line 107, in __getattr__
      raise AttributeError(attr)
  AttributeError: cython_sources
  [end of output]

note: This error originates from a subprocess, and is likely not a problem with pip.
error: subprocess-exited-with-error
× Getting requirements to build wheel did not run successfully.
│ exit code: 1
╰─> See above for output.
note: This error originates from a subprocess, and is likely not a problem with pip.

try one of the solutions from this https://stackoverflow.com/questions/77490435/attributeerror-cython-sources


Use magic name guessing for colormap names

🚀 Feature
We should use the magic name guessing that @kne42 implemented in #1008 for layer names for colormap names so that in an example like this one https://github.com/hci-unihd/covid-if-annotations/issues/6#issuecomment-633295497 the colormap would be named custom by default, instead of [unnamed colormap].

Hi! May I take over this issue?

sure! ... however, now that I'm looking at this again.  I'm not sure I agree that stack inspection and magic name guessing is the right approach here.  Seems like simply adding a name attribute to Colormap might be a less error-prone and more direct approach?  @sofroniewn?

Seems like simply adding a name attribute to Colormap might be a less error-prone and more direct approach? @sofroniewn?

Colormap already has a name option. I guess the thought was that like how layer has a name option but if not provided we'd guess it then we should do the same thing here, but if you think that's too magical then maybe we should just close this issue before @sebgoti get's too far.
It has been a while since this issue was created, and I think over that time we have moved away from certain magic guessing as it can be error probe. Maybe @jni wants to weigh in too and then we can decide? I don't have strong feelings here, but want to make sure we don't waste anyone's time!

yeah, after running into issues with magic_name in the recent multiscales API PR, I personally would vote to minimize its usage.  I do really like that it works for layer names, but I wouldn't want to see it proliferate.  One of the main differences between colormap and data is that data generally is coming in as a numpy array that itself doesn't have a name attribute.  with Colormap in the motivating example, we don't have that limitation

One of the main differences between colormap and data is that data generally is coming in as a numpy array that itself doesn't have a name attribute. with Colormap in the motivating example, we don't have that limitation

Ok, agreed - that example is out of date as it uses to old vispy colormap, and now we have our own colormap the new code should be
import numpy as np
import napari

data = np.random.randint(4, size=(10, 10))
custom = napari.utils.Colormap([
        [0., 0., 0., 0.],  # label 0 is fully transparent
        [1., 0., 0., 1.],  # label 1 is red
        [0., 1., 1., 1.],  # label 2 is cyan
        [1., 1., 0., 1.],  # label 3 is yellow
    ],
    name='my custom name',
)

viewer = napari.view_image(data, colormap=custom, contrast_limits=[0, 3])
napari.run()

Will this meet your needs @sebgoti? We can help you find another good first issue too if you were interested in making a contribution. Sorry that this one got out of date. I agree we should close it though

We can help you find another good first issue too if you were interested in making a contribution.

yes please!  didn't mean to run you off @sebgoti :)

Thank you both @tlambert03 and @sofroniewn very much for your replies. I think I will then search for another good first issue but any suggestions are very well appreciated too 😄

In addition to code, we always love PRs to our documentation!  So if there was anything you found missing or confusing in the docs as you were picking up napari, that's also an option!

I think I will then search for another good first issue but any suggestions are very well appreciated too 😄

Ok, great - thanks! One that might be good to look at is #2569 around adding a more clear error message!
I will close this issue though as we won't be implementing this feature


Apostrophe support

To allow KanaKit's romanisations to match the output of other libraries such as Python's romkan, it would be useful to output "n'n" instead of "nn" for ん. E.g. "kon'nichiwa" rather than "konnichiwa".
It would also be safer this way: without the apostrophe, a word like "tanni" could be translated to たんに or たんい, because some libraries interpret nn to mean ん (in IME style) but some don't. An apostrophe makes it explicit.
I think all we need to do is add a config option and replace nn with n'n, but there may be trickier edge cases.

I googled around and it seems not apostrophising 'nn' is much more common. So はんのう is "hannou" and はんおう would be "han'ou". So actually I should probably fix romkan's output and leave this module alone!


TypeError: ResizeSensor is not a constructor (Angular AOT external .js files)

TypeScript Version:  2.1.1 / nightly (2.2.0-dev.201xxxxx)
version 2.0.9
Code
Angular 2.2.3
// A *self-contained* demonstration of the problem follows...

I have an Angular 2 App and am using the external javascript library "css-element-queries". This library consists of two .js files (ElementQueries.js and ResizeSensor.js.) When I run my Angular 2 app in development mode (JIT), everything works fine. When I run my app in (AOT) mode for production, I get "TypeError: ResizeSensor is not a constructor" error which stops the css-element-queries from working.

The error occurs on this line in ElementQueries.js: (line 157)

`element.elementQueriesSensor = new ResizeSensor(element, function() { element.elementQueriesSetupInformation.call();`

Once again, the scripts work fine in development mode, its in production AOT mode that I get the constructor error.

Also, I have other external .js files that are all working fine with Angular AOT. The only difference with this library is that there are two separate files and one is making a call to the other.

Expected behavior:
works, just like in angular JIT
Actual behavior:
Library doesnt work, errors out

Without more specific information it's not possible to to make a diagnosis but it is worth noting that Angular 2’s AOT compiler does not have the same semantics as TypeScript in a significant number of cases. It outputs TypeScript which you did not write which is then in turn compiled by TypeScript.
This causes errors.
For example, a private field declared in a component will be accessible to that component's Angular markup when it is JIT compiled but will generate an error when it is AOT compiled. This happens because, while typescript elides the private modifier naturally in the process of emitting valid ECMAScript, AOT generates Hera because the intermediate TypeScript that accesses the field is placed outside the scope of the class and is then compiled with TypeScript which reports a semantic error.
As far as I can tell this behavior is not well documented anywhere and my request for a formal specification was declined.

I created a public repo for you to look at with all the details you need to see the issue.
https://github.com/quiringk/ConstructorError.git
This repo consists of Angular Quickstart with angular AOT added. I removed the angular quickstart template and replaced it with the first example from "css-element-queries". Go ahead and clone the repo, run "npm install", and then "npm start", and witness the example working perfectly (Adjust the screen size and see the header change color and sizes). If you run "npm run build:aot && npm run lite:aot" you will see the example does not work and you will see the errors I have been describing. Thanks for looking at this.

I figured it out with help from angular guy. If anyone has similar issue check out:
https://github.com/angular/angular/issues/13283

@quiringk thanks for posting the fix. I guess it wasn't about AOT, but at least I got to rant about it 😜


Aggregate data structure extensibility

Rendered

There is an example implementation in https://github.com/whitequark/amaranth/commits/rfc-8.


Not able to compile code, Compiler message: org-dartlang-debug:synthetic_debug_expression:1:1: Error: Can't find '}' to match '{'. {

Compiler message:
org-dartlang-debug:synthetic_debug_expression:1:1: Error: Can't find '}' to match '{'.
{
^
org-dartlang-debug:synthetic_debug_expression:1:1: Error: Can't find '}' to match '{'.
{
^
org-dartlang-debug:synthetic_debug_expression:1:1: Error: Can't find '}' to match '{'.
{
^
Compiler failed on /FlutterProjects/leader/lib/main.dart
FAILURE: Build failed with an exception.

Where:
Script '/FlutterProjects/flutter/packages/flutter_tools/gradle/flutter.gradle' line: 553

What went wrong:
Execution failed for task ':app:flutterBuildDebug'.

Process 'command '/FlutterProjects/flutter/bin/flutter'' finished with non-zero exit value 1

Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights.

Get more help at https://help.gradle.org

BUILD FAILED in 6s
Finished with error: Gradle task assembleDebug failed with exit code 1

Run flutter clean

Duplicate of #29232 29232


Add tox and Python 3.7 official support

Summary (include Python version)
Date/time of issue
Expected behavior
Actual behavior

I've been running it on py 3.7 for the last 1-2 weeks, and so far I haven't seen any issues. I'll keep you posted if I find anything strange.


[improvement] Dead (voice) chat?

Would it be possible to have the bot move the dead players to a "dead chat" channel?
The idea would be that the dead person is moved after the discussion on the round of the player's death.
Then all dead players would be brought back into the "general" chat (but muted) during the discussion, and back to the "dead" channel (unmuted) for some fellow ghost banter.
Things that would be needed:

Add a second channel bot assignment to "dead chat"
Permission granted to move players back and forth
Keep the currently dead player in "general" channel until after the discussion on the round of their death

Hi, I think there is already a "dead voice chat" during the game as all the alive players are deafened and the dead people are unmuted so they can talk to each other.

oh, awesome, thanks!


Problems creating Mnesia database because the node is not set for distillery release commands.

I tried to create Distillery release commands, but gave up because the node is not set.  Even if I replace the database path or move the files, the database is not usable when the application is started with the proper node name.
There may or may not have been issues with mix commands as well.  I did not test them as extensively, but I am using the same base function for both.
Is there a way to create a usable Mnesia database for the node real_node_name@real_host_name when the current node is nonode@nohost in a Distillery release task?  Also, being able to batch create Mnesia databases for a list of nodes might be useful, although I do not think that changes anything given a solution for one node.
EDIT
I wound up using the following function to set set the node name for the task.
def set_node_name_for_task(node_name \\ nil) do
  node_name
  |> Kernel.||(System.get_env("NODE_NAME"))
  |> Kernel.||("nonode@nohost")
  |> String.to_atom
  |> Node.start
end

Combined with the following change to the :mnesia configuration, release tasks can be used to create databases.  This only works for a single node at a time, however.
config :mnesia,
  dir: '/etc/.mnesia/#{Mix.env}/#{System.get_env("NODE_NAME")}'        # Notice the single quotes

Maybe it is worth adding a note to the documentation?

This should be straight-forward. Instead of reading node name from System.get_env, you should use the built-in node() method and actually specify the node name to distillery using the appropriate config (--name or --sname flags for the commands in general).
See:

Distillery Docs: VM Args
Elixir Forum: Dynamic Node Naming with Distillery
Elixir Guides: Distributed Tasks and Configuration

This should be straight-forward. Instead of reading node name from System.get_env, you should use the built-in node() method and actually specify the node name to distillery using the appropriate config (--name or --sname flags for the commands in general).
See:

Distillery Docs: VM Args
Elixir Forum: Dynamic Node Naming with Distillery
Elixir Guides: Distributed Tasks and Configuration


Fresh Install - flutter has exited unexpectedly - Run the app section of Getting Started: Test Drive

Steps to Reproduce
This is a fresh install of both Android Studio and Flutter on a Debian Stretch system.  While on the getting started page (https://flutter.io/get-started/test-drive/) I am unable to run the initially loaded app. (I've not changed any code."
Log attached
flutter_04.log
Logs
Launching lib/main.dart on ad0b1603986a5d3aed in debug mode...
Initializing gradle...
Resolving dependencies...
Running 'gradlew assembleDebug'...

Oops; flutter has exited unexpectedly.
Crash report written to /root/AndroidStudioProjects/myapp/flutter_04.log;
please let us know at https://github.com/flutter/flutter/issues.

FAILURE: Build failed with an exception.

Where:
Script '/root/android-studio/flutter/packages/flutter_tools/gradle/flutter.gradle' line: 421

What went wrong:
Execution failed for task ':app:flutterDependenciesDebug'.

Process 'command '/root/android-studio/flutter/bin/flutter'' finished with non-zero exit value 1

Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output.

Get more help at https://help.gradle.org

BUILD FAILED in 1s
Finished with error: Gradle build failed: 1
Flutter Doctor
root@Wyvern:~/AndroidStudioProjects/myapp# flutter doctor -v
[!] Flutter (Channel beta, v0.1.5, on Linux, locale en_US.UTF-8)
    • Flutter version 0.1.5 at /root/android-studio/flutter
    • Framework revision 3ea4d06340 (7 days ago), 2018-02-22 11:12:39 -0800
    • Engine revision ead227f118
    • Dart version 2.0.0-dev.28.0.flutter-0b4f01f759
    ✗ Downloaded executables cannot execute on host (see https://github.com/flutter/flutter/issues/6207 for more information)

[✓] Android toolchain - develop for Android devices (Android SDK 27.0.3)
    • Android SDK at /root/Android/Sdk
    • Android NDK at /root/Android/Sdk/ndk-bundle
    • Platform android-27, build-tools 27.0.3
    • Java binary at: /root/android-studio/jre/bin/java
    • Java version OpenJDK Runtime Environment (build 1.8.0_152-release-915-b01)

[✓] Android Studio (version 3.0)
    • Android Studio at /root/android-studio
    • Java version OpenJDK Runtime Environment (build 1.8.0_152-release-915-b01)

[✓] Connected devices (1 available)
    • ad0b1603986a5d3aed • ad0b1603986a5d3aed • android-arm64 • Android 7.0 (API 24)

! Doctor found issues in 1 category.

Extract from log file:
Flutter crash report; please file at https://github.com/flutter/flutter/issues.

## command

flutter build flx --suppress-analytics --target /root/AndroidStudioProjects/myapp/lib/main.dart --output-file /root/AndroidStudioProjects/myapp/build/app/intermediates/flutter/debug/app.flx --snapshot /root/AndroidStudioProjects/myapp/build/app/intermediates/flutter/debug/snapshot_blob.bin --depfile /root/AndroidStudioProjects/myapp/build/app/intermediates/flutter/debug/snapshot_blob.bin.d --working-dir /root/AndroidStudioProjects/myapp/build/app/intermediates/flutter/debug/flutter_assets

## exception

ProcessException: ProcessException: No such file or directory
  Command: /root/android-studio/flutter/bin/cache/artifacts/engine/android-arm-profile/linux-x64/gen_snapshot --await_is_keyword --causal_async_stacks --vm_snapshot_data=/root/android-studio/flutter/bin/cache/artifacts/engine/linux-x64/vm_isolate_snapshot.bin --isolate_snapshot_data=/root/android-studio/flutter/bin/cache/artifacts/engine/linux-x64/isolate_snapshot.bin --packages=/root/AndroidStudioProjects/myapp/.packages --dependencies=/root/AndroidStudioProjects/myapp/build/app/intermediates/flutter/debug/snapshot_blob.bin.d --print_snapshot_sizes --snapshot_kind=script --script_snapshot=/root/AndroidStudioProjects/myapp/build/app/intermediates/flutter/debug/snapshot_blob.bin --enable-mirrors=false /root/AndroidStudioProjects/myapp/lib/main.dart

#0      runCommandAndStreamOutput (package:flutter_tools/src/base/process.dart:126)

@FallenArchangel can you check if you might have the issue mentioned in https://github.com/flutter/flutter/issues/6207#issuecomment-369221550 as hinted by the warning shown in your doctor output?

The new instructions added in #15004 may also help
On Debian/Ubuntu/Mint: sudo apt-get install lib32stdc++6
On Fedora: dnf install libstdc++.i686
On Arch: pacman -S lib32-libstdc++5

Closing as fixed by #15004

~ flutter doctor
Doctor summary (to see all details, run flutter doctor -v):
[!] Flutter (Channel beta, v0.1.5, on Linux, locale en_US.utf8)
✗ Downloaded executables cannot execute on host (see https://github.com/flutter/flutter/issues/6207 for more information)
[✓] Android toolchain - develop for Android devices (Android SDK 27.0.3)
[✓] Android Studio (version 3.0)
[✓] Connected devices (1 available)
! Doctor found issues in 1 category.
for  ~ flutter doctor
Doctor summary (to see all details, run flutter doctor -v):
[!] Flutter (Channel beta, v0.1.5, on Linux, locale en_US.utf8)
✗ Downloaded executables cannot execute on host (see https://github.com/flutter/flutter/issues/6207 for more information)
[✓] Android toolchain - develop for Android devices (Android SDK 27.0.3)
[✓] Android Studio (version 3.0)
[✓] Connected devices (1 available)
! Doctor found issues in 1 category.
for  ~ flutter doctor
Doctor summary (to see all details, run flutter doctor -v):
[!] Flutter (Channel beta, v0.1.5, on Linux, locale en_US.utf8)
✗ Downloaded executables cannot execute on host (see https://github.com/flutter/flutter/issues/6207 for more information)
[✓] Android toolchain - develop for Android devices (Android SDK 27.0.3)
[✓] Android Studio (version 3.0)
[✓] Connected devices (1 available)
! Doctor found issues in 1 category.
for solus 3.99

~ flutter doctor
Doctor summary (to see all details, run flutter doctor -v):
[!] Flutter (Channel beta, v0.1.5, on Linux, locale en_US.utf8)
✗ Downloaded executables cannot execute on host (see https://github.com/flutter/flutter/issues/6207 for more information)
[✓] Android toolchain - develop for Android devices (Android SDK 27.0.3)
[✓] Android Studio (version 3.0)
[✓] Connected devices (1 available)
! Doctor found issues in 1 category.
for SOLUS 3.99


Feature: Add ability to delete your own posts

We could add a delete icon in upper-right of full-screen photo viewer when it's one of our posts.

This is done.


Changes in Openshift self managed yaml file

Changes in Openshift self managed yaml file to be aligned with Kubernetes controller server yaml

Hey @sean-freeman , can you please check once? Thanks


chore: format files with new prettier

Pull Request Test Coverage Report for Build<PHONE_NUMBER>

83 of 94 (88.3%)  changed or added relevant lines in 50 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage increased (+0.01%) to 81.508%

Changes Missing Coverage
Covered Lines
Changed/Added Lines
%

packages/calendar-input/src/utils.ts
0
1
0.0%

packages/date-time-input/src/Component.tsx
0
1
0.0%

packages/select-with-tags/src/components/tag-list/component.tsx
0
1
0.0%

packages/select-with-tags/src/utils/calculate-collapse-size.ts
0
1
0.0%

packages/select/src/components/base-select-mobile/options-list/Component.tsx
0
1
0.0%

packages/select/src/components/checkmark/Component.tsx
0
1
0.0%

packages/select/src/components/native-select/Component.tsx
0
1
0.0%

packages/tabs/src/useTabs.tsx
2
3
66.67%

packages/input-autocomplete/src/Component.mobile.tsx
4
7
57.14%

Totals

Change from base Build<PHONE_NUMBER>:
0.01%

Covered Lines:
6802

Relevant Lines:
7642

💛  - Coveralls