compilation exception when compiling in home directory

This is a bit tricky to provide reproducible steps, but this has happened in a school environment where Crystal was set up. As far as I know, it was set up using tar.gz.
The output of uname -a is:
Linux ubuntu1604-006 4.4.0-109-generic #132-Ubuntu SMP Tue Jan 9 19:52:39 UTC 2018 x86_64 x86_64 x86_64 GNU/Linux

The environment seems to have only LLVM 3.8 although Crystal seems to report 4.0.
$ crystal -v
Crystal 0.24.1 (2017-12-22)

LLVM: 4.0.0
Default target: x86_64-unknown-linux-gnu

If my current directory is my home directory, I was unable to compile anything with Crystal. I first tried using crystal eval and then a file in the home directory (hello.cr) and with crystal eval. Both inputs consisted of only puts "Hello". If I remain in $HOME and move the file to $HOME/tmp-crystal compilation succeeded but the first part of the error was printed (#<Exception:No such file or directory>...). Now, if I change the current directory to somewhere else, $HOME/tmp-crystal, compilation seems to succeed with no errors whether or not the file was in $HOME.
Those were the exact steps that I had done. Now the peculiar part is that once I had fiddled around, compiling in different directories it always seems to succeed if I'm compiling a file. If I am in $HOME the first part of the error is still printed. But if I compile using crystal eval in my home directory, the same error from the beginning still happens and compilation fails.
The output of the error is the following (the "beginning" refers to the first line with #<Exception:No such file or directory> ...):
$ crystal build hello.cr
#<Exception:No such file or directory>#<Exception:No such file or directory>#<Exception:No such file or directory>#<Exception:No such file or directory>#<Exception:No such file or directory>#<Exception:No such file or directory>#<Exception:No such file or directory>#<Exception:No such file or directory>#<Exception:No such file or directory>cc: error: _main.o: No such file or directory
cc: error: S-lice40U-I-nt841.o: No such file or directory
cc: error: P-ointer40U-I-nt841.o: No such file or directory
cc: error: A-rgumentE-rror.o: No such file or directory
cc: error: C-allS-tack.o: No such file or directory
cc: error: A-rray40P-ointer40V-oid4141.o: No such file or directory
cc: error: P-ointer40P-ointer40V-oid4141.o: No such file or directory
cc: error: E-xception.o: No such file or directory
cc: error: P-ointer40L-ibU-nwind5858E-xception41.o: No such file or directory
cc: error: U-I-nt64.o: No such file or directory
cc: error: U-I-nt8.o: No such file or directory
cc: error: D-ir.o: No such file or directory
cc: error: S-tring.o: No such file or directory
cc: error: G-C-.o: No such file or directory
cc: error: E-rrno.o: No such file or directory
cc: error: S-tring5858B-uilder.o: No such file or directory
cc: error: S-lice40T-41.o: No such file or directory
cc: error: I-O-5858E-ncoder.o: No such file or directory
cc: error: I-conv.o: No such file or directory
cc: error: M-ath.o: No such file or directory
cc: error: I-nt32.o: No such file or directory
cc: error: S-taticA-rray40U-I-nt84432102441.o: No such file or directory
cc: error: I-ndexE-rror.o: No such file or directory
cc: error: C-har.o: No such file or directory
cc: error: S-taticA-rray40U-I-nt84432441.o: No such file or directory
cc: error: I-nvalidB-yteS-equenceE-rror.o: No such file or directory
cc: error: S-taticA-rray40U-I-nt8443212941.o: No such file or directory
cc: error: D-ivisionB-yZ-ero.o: No such file or directory
cc: error: A-rray40S-tring41.o: No such file or directory
cc: error: P-ointer40S-tring41.o: No such file or directory
cc: error: S-taticA-rray40I-nt8443225641.o: No such file or directory
cc: error: P-ointer40I-nt841.o: No such file or directory
cc: error: P-ointer40V-oid41.o: No such file or directory
cc: error: F-iber.o: No such file or directory
cc: error: T-hread.o: No such file or directory
cc: error: S-et40T-hread41.o: No such file or directory
cc: error: H-ash40T-hread4432N-il41.o: No such file or directory
cc: error: P-ointer40H-ash58-5c8fd5776cf345ec94b91bf7a5f7e50f.o: No such file or directory
cc: error: A-rray40I-nt3241.o: No such file or directory
cc: error: P-ointer40I-nt3241.o: No such file or directory
cc: error: C-rystal5858H-asher.o: No such file or directory
cc: error: S-taticA-rray40U-I-nt644432241.o: No such file or directory
cc: error: P-ointer40U-I-nt6441.o: No such file or directory
cc: error: H-ash5858E-ntry40T-hread4432N-il41.o: No such file or directory
cc: error: N-il.o: No such file or directory
cc: error: D-eque40F-iber41.o: No such file or directory
cc: error: P-ointer40F-iber41.o: No such file or directory
cc: error: E-vent5858B-ase.o: No such file or directory
cc: error: R-andom5858S-ecure.o: No such file or directory
cc: error: C-rystal5858S-ystem5858R-andom.o: No such file or directory
cc: error: T-ime5858S-pan.o: No such file or directory
cc: error: I-nt64.o: No such file or directory
cc: error: S-cheduler.o: No such file or directory
cc: error: E-vent5858E-vent.o: No such file or directory
cc: error: L-ibC-5858T-imeval.o: No such file or directory
cc: error: I-O-5858F-ileD-escriptor.o: No such file or directory
cc: error: I-O-5858F-ileD-escriptor43.o: No such file or directory
cc: error: I-O-5858E-rror.o: No such file or directory
cc: error: L-ibE-vent25858E-ventF-lags.o: No such file or directory
cc: error: I-O-5858T-imeout.o: No such file or directory
cc: error: R-ange40B-4432E-41.o: No such file or directory
cc: error: R-ange40I-nt324432I-nt3241.o: No such file or directory
cc: error: E-xception43.o: No such file or directory
cc: error: E-N-V-.o: No such file or directory
cc: error: F-ile.o: No such file or directory
cc: error: C-har5858R-eader.o: No such file or directory
cc: error: U-I-nt32.o: No such file or directory
cc: error: D-ebug5858E-L-F-.o: No such file or directory
cc: error: D-ebug5858E-L-F-5858E-rror.o: No such file or directory
cc: error: D-ebug5858E-L-F-5858E-ndianness.o: No such file or directory
cc: error: D-ebug5858E-L-F-5858O-S-A-B-I-.o: No such file or directory
cc: error: S-taticA-rray40U-I-nt84432409641.o: No such file or directory
cc: error: I-O-5858E-O-F-E-rror.o: No such file or directory
cc: error: D-ebug5858E-L-F-5858I-dent.o: No such file or directory
cc: error: U-I-nt16.o: No such file or directory
cc: error: I-O-5858B-yteF-ormat5858B-igE-ndian.o: No such file or directory
cc: error: S-taticA-rray40U-I-nt84432241.o: No such file or directory
cc: error: I-O-5858B-yteF-ormat5858L-ittleE-ndian.o: No such file or directory
cc: error: D-ebug5858E-L-F-5858K-lass.o: No such file or directory
cc: error: S-taticA-rray40U-I-nt84432841.o: No such file or directory
cc: error: A-rray40D-ebug5858E-L-F-5858S-ectionH-eader41.o: No such file or directory
cc: error: P-ointer40D-ebug5858E-L-F-5858S-ectionH-eader41.o: No such file or directory
cc: error: I-O-5858S-eek.o: No such file or directory
cc: error: D-ebug5858E-L-F-5858S-ectionH-eader.o: No such file or directory
cc: error: I-O-5858D-ecoder.o: No such file or directory
cc: error: D-ebug5858D-W-A-R-F-5858L-ineN-umbers.o: No such file or directory
cc: error: A-rray40A-rray40D-d5580c0e9cb0bd8af7e90c96221706e1.o: No such file or directory
cc: error: P-ointer40A-rray4-6533bdad81433bcf155b99ac74756686.o: No such file or directory
cc: error: D-ebug5858D-W-A-R-F-5858L-ineN-umbers5858S-equence.o: No such file or directory
cc: error: A-rray40T-uple40S-5992430a1a7ef1627717adfb71332538.o: No such file or directory
cc: error: P-ointer40T-uple4-13415771527eed75ea796bf4f3711255.o: No such file or directory
cc: error: A-rray40U-I-nt841.o: No such file or directory
cc: error: I-nt8.o: No such file or directory
cc: error: S-taticA-rray40U-I-nt84432141.o: No such file or directory
cc: error: D-ebug5858D-W-A-R-F-.o: No such file or directory
cc: error: D-ebug5858D-W-A-R-F-5858L-ineN-umbers5858R-egister.o: No such file or directory
cc: error: D-ebug5858D-W-A-R-F-5858L-ineN-umbers5858R-ow.o: No such file or directory
cc: error: A-rray40D-ebug585-1d195a7f864d2d3790ebeadd84b7a4df.o: No such file or directory
cc: error: P-ointer40D-ebug5-a50eac5c43900f6bca76f68ff8c8549d.o: No such file or directory
cc: error: D-ebug5858D-W-A-R-F-5858L-N-E-.o: No such file or directory
cc: error: D-ebug5858D-W-A-R-F-5858L-N-S-.o: No such file or directory
cc: error: D-ebug5858D-W-A-R-F-5858S-trings.o: No such file or directory
cc: error: A-rray40T-uple40U-997f9e533f193da5e605a2014e7947d9.o: No such file or directory
cc: error: P-ointer40T-uple4-aa2454898accd295538d997a0365d41d.o: No such file or directory
cc: error: D-ebug5858D-W-A-R-F-5858I-nfo.o: No such file or directory
cc: error: D-ebug5858D-W-A-R-F-5858A-bbrev.o: No such file or directory
cc: error: A-rray40D-ebug5858D-W-A-R-F-5858A-bbrev41.o: No such file or directory
cc: error: P-ointer40D-ebug5858D-W-A-R-F-5858A-bbrev41.o: No such file or directory
cc: error: A-rray40D-ebug585-b448de41619185732a02b2b0c778beb9.o: No such file or directory
cc: error: P-ointer40D-ebug5-038cd8f166075bfacc819464bf65667a.o: No such file or directory
cc: error: D-ebug5858D-W-A-R-F-5858A-bbrev5858A-ttribute.o: No such file or directory
cc: error: A-rray40T-uple40D-2934b2835f929d23ac3adb7e5b7b0afe.o: No such file or directory
cc: error: P-ointer40T-uple4-6ff119ef58145d1144587389190a4e25.o: No such file or directory
cc: error: D-ebug5858D-W-A-R-F-5858F-O-R-M-.o: No such file or directory
cc: error: U-nicode.o: No such file or directory
cc: error: U-nicode5858C-aseO-ptions.o: No such file or directory
cc: error: A-rray40T-uple40I-nt324432I-nt324432I-nt324141.o: No such file or directory
cc: error: P-ointer40T-uple40I-nt324432I-nt324432I-nt324141.o: No such file or directory
cc: error: H-ash40I-nt324432-c36c7b59ada9577e04b34b7156d26117.o: No such file or directory
cc: error: P-ointer40H-ash58-20170b0dcbfcdda132d3c3911ed0b4b4.o: No such file or directory
cc: error: H-ash5858E-ntry40-ea883736b6a497e8c0f2d29083b2162a.o: No such file or directory
cc: error: A-rray40T-uple40I-nt324432I-nt324141.o: No such file or directory
cc: error: P-ointer40T-uple40I-nt324432I-nt324141.o: No such file or directory
cc: error: D-ebug5858D-W-A-R-F-5858T-A-G-.o: No such file or directory
cc: error: D-ebug5858D-W-A-R-F-5858A-T-.o: No such file or directory
cc: error: B-ool.o: No such file or directory
cc: error: T-ypeC-astE-rror.o: No such file or directory
cc: error: S-tring5858T-oU-64I-nfo.o: No such file or directory
cc: error: P-roc40F-iber4432-6eb246a0a45118d3c5507cc830b14a70.o: No such file or directory
cc: error: F-ile5858S-tat.o: No such file or directory
cc: error: S-ignal.o: No such file or directory
cc: error: P-roc40I-nt324432V-oid41.o: No such file or directory
cc: error: E-vent5858S-ignalH-andler.o: No such file or directory
cc: error: H-ash40S-ignal4432P-roc40S-ignal4432N-il4141.o: No such file or directory
cc: error: P-ointer40H-ash58-ac8d12c9042874d67c1e049ddde35350.o: No such file or directory
cc: error: H-ash5858E-ntry40-37a9b13947932e73bc9389d755897071.o: No such file or directory
cc: error: E-vent5858S-ignalC-hildH-andler.o: No such file or directory
cc: error: H-ash40I-nt324432P-rocess5858S-tatus41.o: No such file or directory
cc: error: P-ointer40H-ash58-0a6eee72af0923261bdd3b6c7958da85.o: No such file or directory
cc: error: H-ash40I-nt324432-12de0ef574784dde6ffe5b3ae93d5bba.o: No such file or directory
cc: error: P-ointer40H-ash58-1ce4187043ca1e746f24acb8d0ff7a7e.o: No such file or directory
cc: error: P-rocess5858S-tatus.o: No such file or directory
cc: error: C-hannel5858B-uff-35976990a41c6a8201ab74e37227bdef.o: No such file or directory
cc: error: C-hannel5858C-losedE-rror.o: No such file or directory
cc: error: D-eque40P-rocess5858S-tatus3212432N-il41.o: No such file or directory
cc: error: P-ointer40P-rocess5858S-tatus3212432N-il41.o: No such file or directory
cc: error: H-ash5858E-ntry40-8e9a3cfcf19f0b3833711caadc35e784.o: No such file or directory
cc: error: H-ash5858E-ntry40I-nt324432P-rocess5858S-tatus41.o: No such file or directory
cc: error: I-O-.o: No such file or directory
cc: error: S-taticA-rray40I-nt324432241.o: No such file or directory
cc: error: A-tE-xitH-andlers.o: No such file or directory
cc: error: A-rray40P-roc40I-nt324432N-il4141.o: No such file or directory
cc: error: P-ointer40P-roc40I-nt324432N-il4141.o: No such file or directory
cc: error: L-E-B-R-eader.o: No such file or directory
cc: error: L-ibU-nwind5858A-ction.o: No such file or directory
cc: error: L-ibU-nwind5858R-easonC-ode.o: No such file or directory
cc: error: C-allS-tack5858R-epeatedF-rame.o: No such file or directory
cc: error: C-rystal.o: No such file or directory
Error: execution of command failed with code: 1: `cc "${@}" -o '/u3/j5pereir/hello'  -rdynamic  -lpcre -lgc -lpthread /usr/share/crystal/src/ext/libcrystal.a -levent -lrt -ldl -L/usr/lib -L/usr/local/lib`

@Igo since it's been over two years, do you mind trying again? :)

I'm able to reproduce a similar error output, but I'm not sure if it is related. But it might well be, because it's also on a shared host. The background is that I want to compile the crystal project https://github.com/omarroth/invidious as a normal user on a shared host (via ssh). When running the crystal-build command with --threads 1, the job is killed at some point because the shared host has restrictions on resource use by normal users. However, I can simply rerun the build command several times until, at some point, it will succeed.
To reproduce the error output in this issue, I have to omit the argument --threads 1. I suspect that the host is killing compiler threads and the crystal builder misinterprets this as finished threads. It invokes the linking steps before the compiler is actually finished leading to missing object files.
Details: I install all the dependencies into a conda environment like here https://tovotu.de/dev/524-Invidious-auf-einem-Uberspace-einrichten/ (unfortunately, only in German).
My setup:
$ uname -a
Linux cordelia.uberspace.de 3.10.0-1127.10.1.el7.x86_64 #1 SMP Wed Jun 3 14:28:03 UTC 2020 x86_64 x86_64 x86_64 GNU/Linux
$ crystal version
Crystal 0.35.0 [3c48f311f] (2020-06-09)

LLVM: 8.0.0
Default target: x86_64-unknown-linux-gnu
$ crystal env
CRYSTAL_CACHE_DIR=/home/user8297/.cache/crystal
CRYSTAL_PATH=lib:/home/user8297/opt/crystal/bin/../share/crystal/src
CRYSTAL_VERSION=0.35.0
CRYSTAL_LIBRARY_PATH=/home/user8297/opt/crystal/bin/../lib/crystal/lib
CRYSTAL_OPTS=''
$ $CC --version
x86_64-conda_cos6-linux-gnu-cc (crosstool-NG <IP_ADDRESS>9-a04d0) 7.3.0
Copyright (C) 2017 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

I am able to reproduce this with 100% consistency while trying to set up mint on the crystal 1.0.0 docker image.
$ docker run -t -i crystallang/crystal:1.0.0 /bin/bash
$ cd ~
$ git clone https://github.com/mint-lang/mint
$ cd mint
$ shards install
$ apt update
$ apt install pkg-config ubuntu-dev-tools
$ mkdir ~/.bin
$ make development

It will then die:
root@0cabd58b0506:~/mint# make development
shards build --error-on-warnings --error-trace --progress
Dependencies are satisfied
Building: mint
Error target mint failed to compile:
cc: error: _main.o: No such file or directory
cc: error: S-lice40U-I-nt841.o: No such file or directory
cc: error: P-ointer40U-I-nt841.o: No such file or directory
cc: error: A-rgumentE-rror.o: No such file or directory
cc: error: E-xception5858C-allS-tack.o: No such file or directory
cc: error: A-rray40P-ointer40V-oid4141.o: No such file or directory
cc: error: P-ointer40P-ointer40V-oid4141.o: No such file or directory
cc: error: I-nt32.o: No such file or directory
cc: error: F-loat64.o: No such file or directory

I am unable to reproduce with these exact same steps.

Isn't coding wonderful? 😂 I'm on a week old Mac Big Sur 11.3, if that matters. To debug further:

I tried using `ubuntu:20.04" (adf73ca0) image instead of the crystal one, and installed everything manually, and it still had the same problem.
I did a full boot to a Linux Mint live usb (v20.2) and it worked fine
I booted back to the Mac and tried running the same steps I posted above with the linuxmintd/mint20.2-amd64 image instead. It also failed in the same spot.
I finally tried crystallang/crystal:nightly-alpine-build (0f7866bb39f0) with the equivalent steps and it worked without any issues. ✅

It seems like it might be a debian thing?

I would suspect it has something to do with the file system. Or the underlying disc device.

I landed here while debugging a similar issue. Builds (for certain targets – presumably linked to compilation complexity) were failing within a docker container limited to 2GB RAM. The solution was to increase Docker's RAM allowance. If the root cause here is indeed OOM, it would be nice if the error could be more helpful :)

Indeed, I have recently encountered this as well and I'm pretty sure it was because there was not enough memory available.

Ooof I'm running into this sporadically trying to build on arm64 IoT device (embedded crystal ftw)... I only have 2GB to work with on the device so cranking up the memory limit isn't an option unfortunately...

@atlantis Unfortunately, the Crystal compiler is quite memory hungry, so it doesn't run well in confined environments such as embedded devices.
Your best chance is probably cross compiling from a more potent host system.

Yup! I'm using Balena and the production builds do that, but it's also nice to be able to compile on the device in devmode... crystal works surprisingly well overall on a constrained device.


Replace not working deploy key

Replaced not working deploy key

@karelhala The leaked private key issue should be fixed, sorry for missing that!


chore: Recursion todos

Handle some TODOs including:

(Issue #726) Reconfigure Sumcheck Verifier to always return a SumcheckOutput rather than a std::optional<SumcheckOutput>. This was fine for native verification but doesn't work in the recursive setting (and the same SumcheckVerifier code is shared between the two). For native verification / debugging purposes, the verifier now returns a verified flag as part of SumcheckOutput. In the recursive setting, the verifier does not "abort early" if sumcheck fails, the proof will simply fail to verify.
Add failure tests for the Honk recursive verifiers. (There was no issue associated with this).
There were several instances of TODO(luke) (without a corresponding issue) that were outdated, easily fixed, or more appropriate as Note:'s

Checklist:
Remove the checklist to signal you've completed it. Enable auto-merge if the PR is ready to merge.

[ ] If the pull request requires a cryptography review (e.g. cryptographic algorithm implementations) I have added the 'crypto' tag.
[ ] I have reviewed my diff in github, line by line and removed unexpected formatting changes, testing logs, or commented-out code.
[ ] Every change is related to the PR description.
[ ] I have linked this pull request to relevant issues (if any exist).

I see there is a bunch of checks failing but seem unrelated to bberg so once CI passes, lgtm to be merged :)


GEODE-5330: only create one temp folder

One temp folder will be left after tests complete. This was the behavior
that GfshCommandRule had prior to GEODE-5327. It is caused by the
creation of the temp directory in the constructor of GfshCommandRule. If
the creation happened only in before(), only one temp directory would be
created and cleaned up. However, this would cause some existing DUnit
tests to break, as they use the GfshCommandRule in a way that never
calls before().
The creation of the temp folder was added to before() as part of
GEODE-5327 so that IntelliJ could run DUnit tests multiple times.
Thank you for submitting a contribution to Apache Geode.
In order to streamline the review of the contribution we ask you
to ensure the following steps have been taken:
For all changes:

[x] Is there a JIRA ticket associated with this PR? Is it referenced in the commit message?

[x] Has your PR been rebased against the latest commit within the target branch (typically develop)?

[x] Is your initial contribution a single, squashed commit?

[x] Does gradlew build run cleanly?

[x] Have you written or updated unit tests to verify your changes?

[x] If adding new dependencies to the code, are these dependencies licensed in a way that is compatible for inclusion under ASF 2.0?

Note:
Please ensure that once the PR is submitted, you check travis-ci for build issues and
submit an update to your PR as soon as possible. If you need help, please send an
email to<EMAIL_ADDRESS>

Requesting reviews from @jdeppe-pivotal and @pdxrunner


fix: broken import after modular alert code generation

lib_name variable was not used before in splunk_add_on_ucc_framework/modular_alert_builder/build_core/arf_template/alert_action.py.template template, but was provided from the Python side.
This caused an ImportError for newly generated add-on.
Thanks to @guilhemmarchand for spotting this one.

:tada: This PR is included in version 5.5.1 :tada:
The release is available on:

v5.5.1
GitHub release

Your semantic-release bot :package::rocket:


Issue with finalizing external objects

We get some failures in FinalizationRegistry>finalizeEphemeron:. Two stacks are below:
C stack backtrace & registers:

Registers:
ContextFlags: 0x000000000010000f
        rax 0x000000000000001f rbx 0x000001cb005e2c10 rcx 0x000000854633df00 rdx 0x0000000000000002
        rdi 0x00007ffda8c31070 rsi 0x0000000000000000 rbp 0x000001cb77d85d90 rsp 0x000000854633ded0
        r8  0x00007ffda8ccd990 r9  0x000001cb005e1c1f r10 0x0000000000000000 r11 0x000000854633dd40
        r12 0x0000000000000000 r13 0x000000854056d000 r14 0x000001cb77d85d80 r15 0x000001cb77d85d80
        rip 0x00007ffda8bd8edc

C Callstack:

[0x00007FFDBE847E71] RtlFreeHeap
[0x00007FFD8D94C291] skia_null_ptr
[0x00007FFD8D967D23] skia_typeface_drop
[0x00007FFDA8BE0A11] primitiveReleaseWorker
[0x00007FFDA8BDDD63] primitiveReleaseWorker
[0x00007FFDA8BDDC22] primitiveReleaseWorker
[0x00007FFDA8BAB3CE] shortPrintFramesOnStackPageListInUse
[0x0000000320001658] trampoline cePrimReturnEnterCogCode
[0x00007FFDA8C32FF8] primitivePerformWorkerCallAccessorDepth
[0x8000000010400021] not a method
[0x00007FFDA8C33630] primitivePerformWorkerCallAccessorDepth

All Smalltalk process stacks (active first):
Process        0x362b87558 priority 51
       0x300009c38 M TFSameThreadRunner>invokeFunction:withArguments: 0x1dd3ff8: a(n) TFSameThreadRunner
       0x300009c98 I >primRelease: 0x3dbc058: a(n)
       0x300009cd8 M [] in >release: 0x3dbc058: a(n)
       0x300009d08 M FullBlockClosure(BlockClosure)>on:do: 0x62c001c0: a(n) FullBlockClosure
       0x300009d48 M (GtBoxerExternalObject class)>release: 0x3dbc058: a(n)
       0x300009d80 M (GtBoxerExternalObject class)>finalizeResourceData: 0x3dbc058: a(n)
       0x300009db8 M FFIExternalResourceExecutor>finalize 0x6012c4c8: a(n) FFIExternalResourceExecutor
       0x300009df0 M [] in FinalizationRegistry>finalizeEphemeron: 0x1de80d8: a(n) FinalizationRegistry
       0x300009e20 M FullBlockClosure(BlockClosure)>on:do: 0x62bffee0: a(n) FullBlockClosure
       0x300009e60 M FullBlockClosure(BlockClosure)>on:fork: 0x62bffee0: a(n) FullBlockClosure
       0x300009ea0 M FinalizationRegistry>handleErrorsDuring: 0x1de80d8: a(n) FinalizationRegistry
       0x300009ed8 M FinalizationRegistry>finalizeEphemeron: 0x1de80d8: a(n) FinalizationRegistry
       0x300009f10 M FinalizationRegistryEntry>mourn 0x60120938: a(n) FinalizationRegistryEntry
       0x300009f48 M WeakArray class>mournLoopWith: 0x16300: a(n) WeakArray class
       0x300009fa0 I [] in WeakArray class>finalizationProcess 0x16300: a(n) WeakArray class
       0x300009fe0 I [] in FullBlockClosure>newProcess 0x62b87388: a(n) FullBlockClosure

--- The full stack ---
[ :anError |
			(GtVirtualMachineSymbolNotFoundError new
				symbolName: moduleSymbol;
				moduleName: module) signal ] in GtVirtualMachineFFIBackend>>loadSymbol:module:
FullBlockClosure(BlockClosure)>>cull:
Context>>evaluateSignal:
Context>>handleSignal:
PrimitiveFailed(Exception)>>signal
PrimitiveFailed class(SelectorException class)>>signalFor:
GtVirtualMachineFFIBackend(ProtoObject)>>primitiveFailed:
GtVirtualMachineFFIBackend(ProtoObject)>>primitiveFailed
GtVirtualMachineFFIBackend>>primLoadSymbol:module:
[ self primLoadSymbol: moduleSymbol module: encodedString ] in GtVirtualMachineFFIBackend>>loadSymbol:module:
FullBlockClosure(BlockClosure)>>on:do:
GtVirtualMachineFFIBackend>>loadSymbol:module:
ExternalAddress class>>loadSymbol:module:
GtVirtualMachineExternalFunction(TFExternalFunction)>>validate
TFSameThreadRunner>>invokeFunction:withArguments:
LGitCommit class>>commit_free:
LGitCommit class(LGitExternalObject class)>>finalizeResourceData:
FFIExternalResourceExecutor>>finalize
[
		anEphemeron value finalize ] in FinalizationRegistry>>finalizeEphemeron:

Seems that the system tries to deallocate already deallocated memory on startup. On startup  ExternalAdress allSubInstancesDo: #beNull gets called. But it seems that the finalizer runs on startup before that and it tries to deallocate some of the ExternalAdress that should be null. It seems that finalizationProcess spawns a new process for each item in the registry, and we did not see anything in there that stops the image from being saved with the finalization process active.

This did not address the problem.
The stdout is still being written to continuously:
[Glutin] Could not init env logger
[Warning] Failed to release SkiaCompositionTransformationLayer(@ 16r200D46EA1A0) due to Could not find 'compositor_layer_drop' in '/Users/tudor/jenkins/workspace/feenkcom_gtoolkit_main/glamoroustoolkit/GlamorousToolkit.app/Contents/MacOS/Plugins/libSkia.dylib'
...

Here is the startup order. ExternalObject >> #startUp: happens before FFIMethodRegistry >> #startUp:.

ExternalObject >> #startUp: sets all ExternalAddress in the image to null.
However, there is validate method in an FFI function which loads the symbol from a moduleName if a handle is null.

So if an FFI function is called after ExternalObject >> #startUp: but before or during FFIMethodRegistry >> #startUp: then we get this problem.
Ideally we should to make sure that finalizer does nothing during startUp: of the system:

If finalizer wakes up before ExternalObject >> #startUp: then we get a hard crash due to double free memory
If finalizer wakes up after ExternalObject >> #startUp: but before FFIMethodRegistry >> #startUp: then we get symbol not found error
If finalizer wakes up after FFIMethodRegistry >> #startUp: then we are fine

Finalizer process is supposed to restart at priority 100, so after FFIMethodRegistry >> #startUp:. However, what about its process from before the save? WeakArray implements startUp: but not shutdown:. WeakArray could terminate the finalizer process on shutdown:, then it will not run during the init of the core of the system.
One possible solution could be:

This terminates the finalizer process regardless if we actually shutdown or not. The reason is that we must make sure that a saved image never has a running finalizer process. It is possible to save an image and just force quit it later.

To add to the previous comment seems like the issues that we are seeing might come from FinalizationRegistry>>#finalizeEphemeron:. To finalize an object the VM sends mourn to that object,
So it is not the finalization process that kicks in, it is the VM's GC during startUp:. From what we see this is the only difference in the weak behaviour between Pharo 10 and Pharo 11.
Seems that in Pharo 11, FinalizationRegistryEntry>mourn can be sent either by GC or by WeakArray class>finalizationProcess. In Pharo 10 it was just by WeakArray class>finalizationProcess and we did not see these issues.

The issue that we see seems related to FFIMethodRegistry getting into a bad state.
We saw we can get in FFIMethodRegistry multiple entries for the same compiled methods. We saw that for example, especially methods for performing the release of external objects, were executed from multiple processes. We also use quite a lot of background processes. To solve other bugs and be able to call the same FFI method from multiple threads in parallel we added to FFICalloutAPI>>#function:library: a mutex to make sure that it only gets compiled once. For example below we get two compiled methods for SkiaCompositionLayer class>>#primRelease:.

When looking at those multiple methods we saw that we can get into a situation where the ffiNonCompiledMethod property of an FFI method is actually another FFI method. This seems two happen as when same same FFI method is called in parallel from two processes, the first method is set correctly, and then the second time the same FFI method is compiled, the code sender methodClass methodDict at: sender selector. returns actually the FFI method, not the original one.

The side-effect of this is that when doing FFIMethodRegistry resetAll depending on the order in which the same versions of a method were restored, the reset could actually install in the class an FFI method instead of the original method. For example the code below shows that after a reset we were getting FFI methods installed in the image that were not in the registry.

So when we copy the image to a new platform or location those compiled methods were not refreshed and were pointing to the wrong libraries. This was leading to errors in various places. As a temporary fix, we changed the logic from FFICalloutAPI>>#function:library: to not install an FFI method if an FFI method is actually installed (https://github.com/feenkcom/gtoolkit-vm-bindings/commit/8ae318e24522a44ff7abb293c5bea7b2445faf28). So it should be safe to run the same FFI method in parallel and it will be installed in the registry only once.
In GT we extracted part of the logic from FFICalloutAPI>>#function:library:  into a method so we can guard the compilation using a mutex: FFICalloutAPI>>#compileFunction:library:sender:. We noticed that if we add a signal to this method we get events that the same FFI method is compiled multiple times, for example SkiaPictureRecorder class>>#primRelease:.

If we look at the stack we notice that those calls are coming from different finalisation processes.

The only possibility for that is if we get multiple finalisation processes waiting on the mutex in FFICalloutAPI>>#compileFunction:library:sender:. In WeakArray class>>#finalizationProcess the first action is to signal the semaphore, so in theory if the current finalisation process gets stuck, another one could start.
We also saw cases when we got more compiled methods in a wrong state (this screenshot is from Pharo 10; all the ones above from Pharo 11):


[addon-knobs] boolean could be a reserved word

Hi, my colleague bug me when I write the code as the following:
import { boolean } from '@storybook/addon-knobs';
         wwwwwww

He said, boolean is a reserved words.  I've know this as a reserved word in Java, but for the sake of the history, people generally try to avoid name a variable like this.  Similarly, select is also being suggested not to used.  The full list goes W3Schools and MDN.
Interestingly, upon the latest ECMAScript specification, only enum is a future reserved words.
My question is, should we be more careful on these variable names?! Maybe renamed it to bool as in the react PropType?! (but it would be a breaking change though...

@leoyli sorry i missed this. i probably would've named it booleanKnob. i don't think we should fix it unless it's breaking for people. if you don't want that in your code you can always rename it at import time:
import { boolean as bool } from '@storybook/addon-knobs'

Yeah, that is what I did actually.  Not a big issue though since it would be a breaking change and need some extra deprecation warning.  But this maybe looks a bit strange for TypeScript people?! Although not necessary change the typing of boolean but it can be quite confused...

@leoyli I'd be up for making this change:

In a major release of SB
Alongside some other major changes to knobs


How do you mutate nested object using graphql?

I have a mongoose schema like the one below:
import mongoose from 'mongoose'

const ProjectSchema = new mongoose.Schema({
  name: {
    type: String
  },
  owner: {
    type: String
  },
  member: {
    type: String
  },
  updatedDate: {
    type: Date
  },
  description: {
    type: String
  },
  folder: {
    type: mongoose.Schema.Types.ObjectId,
    ref: 'Folder'
  },
  dataSources: [{
    name: {
      type: String
    },
    updatedDate: {
      type: Date
    },
  }],
  propjectHistory: [{
    no: {
      type: Number
    },
    member: {  // is this reference or just a string?
      type: String
    },
    action: {
      type: String
    },
    updatedDate: {
      type: Date
    },
  }]
})

const Project = mongoose.model('Project', ProjectSchema)

And I integrated with graphql using graffiti and graffiti-mongoose. However, the Graphiql documentation shows that I only have the ones below:
addProject(input: addProjectInput!):

name: String
owner: String
member: String
updatedDate: Date
description: String
folder: ID
clientMutationId: String!

I could successfully add project with a mutation query only using those parameters, but it seems that I cannot even send mutation query with projectHistory and dataSource, which are embedded inside project schema.
However, I can access projectHistory and dataSource when I send find queries.
I can't find any documentation about the problem.

I'd like to second this question. I can't seem to find any examples about how to do this.
It would be great to see an example of a schema that can mutate a nested field.
I've got a very similar question over at the graph-js repo.

I think you can solve it with multiple mutations using the ID in the response of the first one.

Thanks, I believe the latest update for the mongoose-graffiti solved  the problem


Difference between \rho_P0, \rho_\sigma, and \rho0\scrM

As mentioned in #44, I noticed something weird when plotting perturbations.
When normalizing the massive neutrino perturbations for plotting I normalize by the value of the \rho_\sigma function (from perturbations.jl) acting on a vector of all ones at the particular redshift.
I find that this is the same as the density I get from the background spline (bg.\rho0\scrM) of the background \rho_P0 function.
However when I call the background \rho_P0 function from the plotting script I get a different value than the one returned by \rho_\sigma *a^-4 and the spline (both of which have the same value).
I find this especially weird since \rho_P0 is what is used to generate the spline.
Not sure if this issue will affect the evolution, but I will look into it more carefully.

This was due to a lazy typo 🤦  Closing this


[MatterYamlTests] null values that are saved are not substituted when…

… the key used to saved them is used
fix #29086
It looks like a regression that I have introduced while working on the pics checker. I have added a test in TestSaveAs.yaml

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.Vivien Nicolas seems not to be a GitHub user. You need a GitHub account to be able to sign the CLA. If you have already a GitHub account, please add the email address used for this commit to your account.You have signed the CLA already but the status is still pending? Let us recheck it.


Provide a string_concat op

Per http://stackoverflow.com/questions/34247374/merge-string-tensors-in-tensorflow
Provide an op that will concatenate two strings into a single string.

Also, an op that splits strings.

I've just submitted string concatenation upstream. Should be available in the next push.

Fixed by https://github.com/tensorflow/tensorflow/commit/7116cc8b39c432f64e6e82b5708d2773f3fec159


Mr Bigglesworth Discover when an opponent commits suicide with a vulgar homonculus?

We encountered a bug where another player dying on their turn causes Mr Bigglesworth to be forced to discover a card in the middle of their turn.  This breaks our simulator because it causes a valid action to become invalid (until the user chooses the card to discover).
What is the actual OG behavior?

All Bigglesworth discovers occur on the beginning of the next turn. They discover M times if M heroes died the previous turn. Is this what you're asking?

Yes. Thanks! We have implemented it this way now.


High cpu usage for the broadcaster

Hi @muaz-khan,
Thanks for your amazing job. In scalable broadcasting when user A broadcast to all users, every time a new user gets the streams from the user A, the cpu of the user A keeps increasing. is there any way to fix that ?

A high load on the processor is normal for WebRTC, my friend. Each stream for the new connection is separately processed by the processor.


Flutter 2.0 and null-safety

Any chance of upgrade to Flutter 2.0 and support to null-safety?

It's urgent, please help us

Published v0.4.0.
Please check, if your Flutter 2.0 app works with month_picker_dialog: ^0.4.0

@hmkrivoj  Thanks for quick support.

Published v0.4.0.
Please check, if your Flutter 2.0 app works with month_picker_dialog: ^0.4.0

It seems to work. Thank you


Resetting

Hey, how can i change it, that the bot not always resets after mt moon or how can i change the reset times?
thanks :)

Look at the https://github.com/jonese1234/PokeBotBad/blob/master/ai/red/strategies.lua At about line 50 or so, you an change them to what you want.


reflex-dom-nested-routing can't prerender

i use the reflex-dom-nested-routing package, but some function depends MonadWidget.
so i use prerender to wrap it, but it still failed with weired error.
what i should do to fix it...it's so hard to use MonadWidget in obelisk project.
*Backend Obelisk.Run Backend Reflex.Dom Reflex.Dom.Routing.Nested> :i runRouteWithPathInFragment
runRouteWithPathInFragment ::
  MonadWidget t m =>
  RouteT
    t Data.Text.Internal.Text m (Event t [Data.Text.Internal.Text])
  -> m ()
        -- Defined in ‘Reflex.Dom.Routing.Nested’

frontend/src/Frontend.hs:56:36: error:
    • Could not deduce: Control.Monad.Ref.Ref m ~ GHC.IORef.IORef
        arising from a use of ‘runRouteWithPathInFragment’
      from the context: Reflex.Dom.Prerender.PrerenderClientConstraint
                          js m
        bound by a type expected by the context:
                   Reflex.Dom.Prerender.PrerenderClientConstraint js m => m ()
        at frontend/src/Frontend.hs:(56,7)-(58,33)
    • In the second argument of ‘($)’, namely
        ‘runRouteWithPathInFragment
           $ fmap snd
               $ runRouteWriterT
                   $ do segment
                          (def & attrs |~ ("id" =: "masthead")
                             & segmentConfig_vertical |~ True)
                          $ divClass "ui container" blank’
      In the expression:
        prerender (text "loading")
          $ runRouteWithPathInFragment
              $ fmap snd
                  $ runRouteWriterT
                      $ do segment
                             (def & attrs |~ ("id" =: "masthead")
                                & segmentConfig_vertical |~ True)
                             $ divClass "ui container" blank
      In an equation for ‘app’:
          app
            = prerender (text "loading")
                $ runRouteWithPathInFragment
                    $ fmap snd
                        $ runRouteWriterT
                            $ do segment
                                   (def & attrs |~ ("id" =: "masthead")
                                      & segmentConfig_vertical |~ True)
                                   $ divClass "ui container" blank
    • Relevant bindings include
        app :: m () (bound at frontend/src/Frontend.hs:56:1)
   |
56 | app = prerender (text "loading") $ runRouteWithPathInFragment $ fmap snd $ runRouteWriterT $ do
   |                                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^...

the related code is:
{-# LANGUAGE DataKinds #-}
{-# LANGUAGE OverloadedStrings #-}
{-# LANGUAGE TypeApplications #-}

{-# LANGUAGE FlexibleContexts #-}
{-# LANGUAGE RecursiveDo #-}
{-# LANGUAGE RankNTypes #-}
{-# LANGUAGE LambdaCase #-}
{-# LANGUAGE ScopedTypeVariables #-}

module Frontend where

-- import qualified Data.Text as T
import Obelisk.Frontend (Frontend(Frontend), _frontend_head, _frontend_body)
import Obelisk.Route (R)
-- import Reflex.Dom.Core

-- import Common.Api
import Common.Route (FrontendRoute)
-- import Obelisk.Generated.Static

import Reflex.Class (Event)

import Reflex.Dom (DomBuilder)
import Reflex.Dom.SemanticUI (UI)

import Data.Default (def)
import Control.Monad (void)
import Data.Function ((&))
import Control.Lens.Setter ((.~), (?~))

import GHCJS.DOM.Types (liftJSM, MonadJSM)
import GHCJS.DOM (syncPoint)
import Reflex.Class (updated)
import Reflex.PostBuild.Class (getPostBuild)
import Reflex.Time (delay)
import Reflex.Dom.Class ((=:))
import Reflex.Dom.Widget (el, text, widgetHold, blank, divClass)
import Reflex.Dom.Prerender (prerender)

import Reflex.Dom.Old (MonadWidget)
import Reflex.Dom.Prerender (Prerender)
import Reflex.Dom.SemanticUI.Common ((|~))
import Reflex.Dom.SemanticUI.Dimmer (dimmer, dimmerConfig_page)
import Reflex.Dom.SemanticUI.Segment (segment, segments, segmentConfig_vertical)
import Reflex.Dom.SemanticUI.Transition (HasAttributes(attrs), HasAction(action), Action(_action_transition), Transition(Transition), TransitionType(Fade), Direction(Out))
import Reflex.Dom.Routing.Nested (runRouteWithPathInFragment)
import Reflex.Dom.Routing.Writer (runRouteWriterT)

loadingDimmer :: (UI t m) => Event t () -> m ()
loadingDimmer evt = do
  void $ dimmer (def & dimmerConfig_page .~ True & action ?~ def { _action_transition = Transition Fade (Just Out) def <$ evt}) $
    divClass "ui huge text loader" $ text "Loading semantic-reflex docs..."

app :: (UI t m, Prerender js m) => m ()
app = prerender (text "loading") $ runRouteWithPathInFragment $ fmap snd $ runRouteWriterT $ do
  segment (def & attrs |~ ("id" =: "masthead") & segmentConfig_vertical |~ True) $
    divClass "ui container" blank

bodyElement :: (UI t m, Prerender js m) => m ()
bodyElement = do
  pb <- delay 0 =<< getPostBuild
  rec loadingDimmer pb'
      -- liftJSM syncPoint
      pb' <- fmap updated $ widgetHold blank $ app <$ pb
  return ()

frontend :: Frontend (R FrontendRoute)
frontend = Frontend
  { _frontend_head = el "title" $ text "Obelisk Minimal Example"
  , _frontend_body = bodyElement
  }

Obelisk now has a routing framework, which is designed specifically with prerendering in mind.  It may be possible to get reflex-dom-nested-routing working in the same way, but it will probably require a decent amount of work, and you definitely won't be able to use the document fragment, as the browser doesn't send that to the server.
Generally speaking, try to avoid MonadWidget.  It's a huge collection of constraints, many of which are simply too restrictive to do interesting things - for example, it demands access to javascript, even though many widgets make no use of that.  At some point we will do a deprecation cycle and fully remove MonadWidget.

Oh, and I should mention: there are frontend components for routing here: https://github.com/obsidiansystems/obelisk/blob/master/lib/route/src/Obelisk/Route/Frontend.hs

thanks.
i know a little about obelisk route.
but i don't know whether it support dynamic nest route, the route data is fetched from backend service.
first i fetch the menu data for routing, then i routing by the menu click event to correponding page.
so basically i just want to fetch the menu data once, used by all page for navigating.

@clojurians-org Author of reflex-dom-nested-routing here: Yes please migrate to Obelisk's routing framework! I will soon formally deprecate my library.


Integrate django-allauth

Allows easy signing in with lots of services out of the box
https://github.com/pennersr/django-allauth

Added GitHub support


implement $262 for Atomics test262 tests

also exposes SharedArrayBuffer APIs for JSRT
and couple fixes for Atomics dealing with the index input argument
all Atomics test262 tests passed

@liminzhu @bterlson can you review the new JSRT API for SharedArrayBuffer?

replaced with #3137


Step Indicator on Main task

Number of Task Steps (can name be changed to Sub-tasks please?) currently do not show up on the main task body.
To-Do (name change suggestion to "Timely"):

Comparison with Microsoft's To-Do app:

Sure, I'll try to add this feature soon! :)


Implement RFC 8888 feedback adapter for GCC

The GCC implementation currently only works with TWCC feedback reports. It would be nice if it could also work with the feedback format described in RFC 8888. I think this should be straightforward to implement as it only needs to be added to feedback_adapter.go.

Done in #145


Support quirk input rotation gates and mark remaining quirk gates as unsupported (for now)

Add auto_exponent_parens parameter to CircuitDiagramInfo.

Automerge cancelled: A status check is failing.


Problems building from stack

The shellmate entry for stack.yaml seems wrong; here's what's working for me so far:
resolver: lts-5.5
extra-deps:
- HTTP-4000.2.23
- base-orphans-0.5.3
- ghc-simple-0.3
- shellmate-0.3.4
- tar-<IP_ADDRESS>
- text-<IP_ADDRESS>
- shellmate-extras-0.3.4

More to it than that.  The stack.yaml that I settled on is:
resolver: lts-5.5
extra-deps:
- HTTP-4000.2.23
- base-orphans-0.5.3
- ghc-simple-0.3
- shellmate-0.3.4
- tar-<IP_ADDRESS>
- text-<IP_ADDRESS>
- shellmate-extras-0.3.4
- http-conduit-2.1.11
- http-client-<IP_ADDRESS>
- http-client-tls-<IP_ADDRESS>

and the stack install step works, but then:
[rlpowell@747797bd39ec haste-compiler]$ stack install
No packages found in snapshot which provide a "ghc" executable, which is a build-tool dependency of "HTTP"
Missing build-tools may be caused by dependencies of the build-tool being overridden by extra-deps.
This should be fixed soon - see this issue https://github.com/commercialhaskell/stack/issues/595

Copying from /tmp/haste-compiler/.stack-work/install/x86_64-linux/lts-5.5/7.10.3/bin/haste-boot to /home/rlpowell/.local/bin/haste-boot
Copying from /tmp/haste-compiler/.stack-work/install/x86_64-linux/lts-5.5/7.10.3/bin/haste-cat to /home/rlpowell/.local/bin/haste-cat
Copying from /tmp/haste-compiler/.stack-work/install/x86_64-linux/lts-5.5/7.10.3/bin/haste-pkg to /home/rlpowell/.local/bin/haste-pkg
Copying from /tmp/haste-compiler/.stack-work/install/x86_64-linux/lts-5.5/7.10.3/bin/hastec to /home/rlpowell/.local/bin/hastec

Copied executables to /home/rlpowell/.local/bin:
- haste-boot
- haste-cat
- haste-pkg
- hastec
[rlpowell@747797bd39ec haste-compiler]$  haste-boot --force --local
Downloading haste-cabal from GitHub
Downloading Google Closure compiler...
Reading package info from "libraries/rts.pkg" ... done.
Warning: The package list for 'hackage.haskell.org' does not exist. Run 'cabal
update' to download it.
Warning: Topdown solver is deprecated
Resolving dependencies...
Configuring ghc-prim-<IP_ADDRESS>...
Building ghc-prim-<IP_ADDRESS>...
Installed ghc-prim-<IP_ADDRESS>
Reading package info from "ghc-prim-<IP_ADDRESS>.conf" ... done.
Warning: The package list for 'hackage.haskell.org' does not exist. Run 'cabal
update' to download it.
Warning: Topdown solver is deprecated
Resolving dependencies...
Configuring integer-gmp-<IP_ADDRESS>...
Building integer-gmp-<IP_ADDRESS>...
Installed integer-gmp-<IP_ADDRESS>
cleaning...
Warning: The package list for 'hackage.haskell.org' does not exist. Run 'cabal
update' to download it.
Warning: Topdown solver is deprecated
Resolving dependencies...
Configuring base-<IP_ADDRESS>...
Building base-<IP_ADDRESS>...
Failed to install base-<IP_ADDRESS>
Build log ( /home/rlpowell/.cabal/logs/base-<IP_ADDRESS>.log ):
Configuring base-<IP_ADDRESS>...
Building base-<IP_ADDRESS>...
Preprocessing library base-<IP_ADDRESS>...
No template specified, and template-hsc.h not located.

Usage: hsc2hs [OPTIONS] INPUT.hsc [...]

  -o FILE          --output=FILE          name of main output file
  -t FILE          --template=FILE        template file
  -c PROG          --cc=PROG              C compiler to use
  -l PROG          --ld=PROG              linker to use
  -C FLAG          --cflag=FLAG           flag to pass to the C compiler
  -I DIR                                  passed to the C compiler
  -L FLAG          --lflag=FLAG           flag to pass to the linker
  -i FILE          --include=FILE         as if placed in the source
  -D NAME[=VALUE]  --define=NAME[=VALUE]  as if placed in the source
                   --no-compile           stop after writing *_hsc_make.c
  -x               --cross-compile        activate cross-compilation mode
                   --cross-safe           restrict .hsc directives to those supported by --cross-compile
  -k               --keep-files           do not remove temporary files
  -v               --verbose              dump commands to stderr
  -?               --help                 display this help and exit
  -V               --version              output version information and exit
ExitFailure 1ExitFailure 1haste-cabal.bin: Error: some packages failed to install:
ExitFailure 1ExitFailure 1haste-cabal.bin: Error: some packages failed to install:
base-<IP_ADDRESS> failed during the building phase. The exception was:
ExitFailure 1
cleaning...
Warning: The package list for 'hackage.haskell.org' does not exist. Run 'cabal
update' to download it.
Resolving dependencies...
haste-cabal.bin: Could not resolve dependencies:
trying: array-<IP_ADDRESS> (user goal)
next goal: base (dependency of array-<IP_ADDRESS>)
fail (unknown package: base)
Dependency tree exhaustively searched.
Warning: The package list for 'hackage.haskell.org' does not exist. Run 'cabal
update' to download it.
Resolving dependencies...
haste-cabal.bin: Could not resolve dependencies:
trying: haste-prim-<IP_ADDRESS> (user goal)
next goal: base (dependency of haste-prim-<IP_ADDRESS>)
fail (unknown package: base)
Dependency tree exhaustively searched.
Warning: The package list for 'hackage.haskell.org' does not exist. Run 'cabal
update' to download it.
Resolving dependencies...
haste-cabal.bin: Could not resolve dependencies:
trying: time-<IP_ADDRESS> (user goal)
next goal: base (dependency of time-<IP_ADDRESS>)
fail (unknown package: base)
Dependency tree exhaustively searched.
Warning: The package list for 'hackage.haskell.org' does not exist. Run 'cabal
update' to download it.
haste-cabal.bin: There is no package named 'hashable'.
You may need to run 'cabal update' to get the latest list of available
packages.
haste-pkg: cannot find package monads-tf

It is not obvious to me where to go from here.

I'm not sure the second issue is related to stack, as I can't reproduce it after fixing the first. If it the issue is still there with 931eb07f7111761aaa19e01f41a5a41be459caf5, please open a new issue for it.


PY Loops link points to FUNCTIONS video

LOOPS actually points to FUNCTIONS in doc -  https://github.com/microsoft/EveryoneCanCode-US/blob/main/Track_1_ToDo_App/Sprint-01 - Basic Application/Feature 1 - Manage Todo List/User Story 1 - Add Item to List.MD

fixed

fixed link


Perception: prepare code for multi-scale camera object detection

Change code to accept multi-scale camera object detection outputs of neural networks. Preparation work for Yolo-v3 object detection network.

Please fix lint error


unintended never type after a null check

Bug Report
Some code flows like functions passed to array methods are not considered as immediately invoked and any assignment to a variable inside the array methods are not captured in the outer scope.
For example,

🔎 Search Terms
array methods, never, null check, assignment, variable assignment

🕗 Version & Regression Information
4.3.2

This changed between versions 4.1.3 and 4.3.2

⏯ Playground Link

Playground link with relevant code
💻 Code

let map: Map<string, string> | null = null;

[1].map(() => { map = new Map() });

if (map != null) {
  // map is never
  console.log(map.get("something"));
}

🙁 Actual behavior
In the above code, after the null check, the variable map is expected to be of type Map<string,string>, but the assignment inside the Array.map function isn't captured and is considered as never.
Property 'get' does not exist on type 'never'.(2339)

🙂 Expected behavior
The variable map is of the type Map<string, string>

Duplicate of https://github.com/microsoft/TypeScript/issues/44025

Root cause is #9998.


Editor widget rotations

As a level designer I want editor widgets to rotate correctly so that they are intuitive to use.
Task suggestions:
Use internal rotation representation in a way that's intuitive to the user.

Solved in #706


[Feature request] Installable upgrades for Atomic Disassembler

I really like the Atomic Disassembler, but there's one thing really holding it back as a mining tool - a lack of Silk Touch or Fortune.
Rather than go for vanilla enchants, I'd suggest installable upgrades that can be added to the tool (maybe through a dedicated workbench?).
I'm sure there are other upgrades possible like a selectable 3x3 mode, or auto-smelt (though why you'd want auto smelt when you've got ore processing I've no idea). Maybe weapon enchants, too. Energy use should increase depending on the upgrade.
Obviously silk touch and fortune aren't compatible, but I'd go further and suggest that you should be limited to just one upgrade at any time. Makes life interesting.

Would be nice to see this. he fortune, silk touch, 3x3, 5x5, 7x7 upgrades would we nice to have

I really hope this one gets added. I was just thinking about hammers and 3x3 mining and stumbled upon this feature request. Maybe support for energy upgrades to make it more efficient on energy usage as well.

While I'm not super worried about a 3x3 mode, I do think there should be either a Fortune or Silk Touch upgrade available.

Agree with this.  I love the AD - including the way it looks and especially the ability to control its speed so I'm not accidentally taking out half my base.  However, it's hard to justify the AD when other options give you the ability to 3x3 (or 5x5) mine, and silk touch / fortune.  Adding the ability to enchant would handle the latter and I would guess is the easiest way to go about it.

Just a suggestion for how to make this work, I would, make a block that lets you modularly install and remove upgrades and modules to the atomic disassembler. See Modular Powersuits for an example of this type of setup. Then you shouldn't have to find an alternative key binding outside of Shift+Click (like Actually Additions drill) to implant the upgrades, and would be more immersive.

Sounds interesting, could even almost more just be another tab in the security desk except have the thing be renamed so that it is more encompassing.

Would also suggest adding energy storage upgrades for the tool too

alright building on top of this suggestions heres a really big idea based off this thats basicly a overhaul
work station
the main machine/block, lets the player make/upgrade/change out parts on your tools and armor, requires power to change out and upgrade, is required to upgrade tool parts, maybe even make tool parts and maybe future items (i.e make upgrades craftable in this work station)?
all main parts start at basic rank and go up to ultimate
some upgrades require higher tiers
Atomic dissembler
the atomic disassembler has two parts, the handle and the head.
the handle holds energy upgrades (power cells and such) and special modules to changing how the disassembler works. for example, a module that makes mining set stone variants free but you dont get any items, or a module that turns any mined logs turn into charcoal and sets attacked mobs on fire. (fortune and looting are a module) and a whole lot more. you can only hold 3 modules at a time on a max upgraded handle and some are incompatible.
the head holds mode upgrades and upgrading it inceases attack speed and damage along with how efficent/ effective some upgrades are. mode upgrades are the diffrent modes you can flip through with shift right click like vein miner, fast , silk, vein miner + ,slow, and 3x3, (handle module that adds 5x5?)
Jetpack
the jetpack has 3 parts, the body, the thrusters, and the maneuvering fins.
the body contains the fuel storage and can either hold a tank or energy cell if the thrusters are powered instead of gas fueled. the body when tiered up lets you hold a better fuel container and also gain more protection, also has upgrades for fire protection, explosive protection and projectile protection
the thrusters come in two variants, gas and powered. powered use energy instead of hydrogen and are less efficent energy wise per tick but makes the jet pack way faster and easyer to recharge. both variants when tiered up increase in efficency and upward on regular mode thrust speed.
the maneuvering fins increase forward movement speed in air (makes hover mode viable for ok forward travel) when tiered up and can be upgraded to let the player glide forward using the shift key in regular mode.
free runners
has two parts, the boots and asisstors
the boots when tiered hold more energy and give a small armor value
the asisstors when tiered give you a better efficency and small run speed boost. they can also be upgraded to give better jump, faster swim speed (including up and down swim speed), and deal damage to mobs you land on
helmet/mask thing
comes with two parts , the visor and helmet
the visor it a peice that does not gain any thing tiered straight up but allows for upgrades like night vision, zoom, better in water vision, and maybe a hud for things not usally seen in oneprobe and the like?
the helmet gains more energy storage and protection on tiering up, has a upgrade for water breathing using power or gains a small auto refilling/power refining internal oxygen tank?, and upgrades for protections like projectile and explosive
theres alot more but this is what i have so far, i just found out flame thrower can turn logs into charcoal lul, idk what heat mode does though...


Missing support of new Mendix Decimal attributes

Floats are deprecated in the latest version of mendix.

Chad,
Do you plan to make this update anytime soon?


Fail for 32bit

PS C:\Users\Administrator> chef-client -zo 'recipe[test::default]' --recipe-url https://s3-us-west-2.amazonaws.com/taylors-bucket/chef_vimrc.tgz
[2017-09-07T11:17:55-07:00] WARN: No config file found or specified on command line, using command line options.
Starting Chef Client, version 12.14.77
[2017-09-07T11:18:01-07:00] WARN: Run List override has been provided.
[2017-09-07T11:18:01-07:00] WARN: Original Run List: []
[2017-09-07T11:18:01-07:00] WARN: Overridden Run List: [recipe[test::default]]
resolving cookbooks for run list: ["test::default"]
Synchronizing Cookbooks:
  - test (0.1.0)
  - chocolatey (1.2.1)
  - windows (3.1.2)
  - ohai (5.2.0)
  - chef_vimrc (0.1.0)
Installing Cookbook Gems:
Compiling Cookbooks...
Converging 22 resources
Recipe: chocolatey::default
  * cookbook_file[C:/Users/Administrator\.chef\local-mode-cache\cache/chocolatey-install.ps1] action create (up to date)
  * powershell_script[Install Chocolatey] action run (skipped due to not_if)
Recipe: chef_vimrc::packages
  * chocolatey_package[git] action install (up to date)
  * windows_path[C:\Program Files\Git\bin] action add
    * env[path] action modify (up to date)
    * ruby_block[fix ruby ENV['PATH']] action nothing (skipped due to action :nothing)
     (up to date)
  * chocolatey_package[neovim] action install (up to date)
  * windows_path[c:\tools\neovim\neovim\bin] action add
    * env[path] action modify (up to date)
    * ruby_block[fix ruby ENV['PATH']] action nothing (skipped due to action :nothing)
     (up to date)
  * chocolatey_package[vim, fzf] action upgrade
    - upgrade package vim from 8.0.3 to 8.0.604
    - upgrade package fzf from 0.16.11 to 0.17.0
  * windows_path[C:\Program Files\vim\vim80] action add
    * env[path] action modify

    * ruby_block[fix ruby ENV['PATH']] action run
      - execute the ruby block fix ruby ENV['PATH']
    * ruby_block[fix ruby ENV['PATH']] action nothing (skipped due to action :nothing)

Recipe: chef_vimrc::vim_plug_install
  * directory[C:/Users/Administrator/vimfiles/plugged] action create (up to date)
  * directory[C:/Users/Administrator/vimfiles/autoload] action create (up to date)
  * remote_file[C:/Users/Administrator/vimfiles/autoload/plug.vim] action create (up to date)
  * directory[C:/Users/Administrator/AppData/Local/nvim/plugged] action create (up to date)
  * directory[C:/Users/Administrator/AppData/Local/nvim/autoload] action create (up to date)
  * remote_file[C:/Users/Administrator/AppData/Local/nvim/autoload/plug.vim] action create (up to date)
Recipe: test::default
  * directory[C:/Users/Administrator/vimfiles/plugged] action create (up to date)
  * template[C:/Users/Administrator/vimfiles/vimrc] action create
    - update content in file C:/Users/Administrator/vimfiles/vimrc from c4356d to 6f1fdb
    --- C:/Users/Administrator/vimfiles/vimrc   2017-08-22 20:56:13.000000000 -0700
    +++ C:/Users/Administrator/vimfiles/chef-vimrc20170907-2092-sxff9q  2017-09-07 11:19:40.000000000 -0700
    @@ -1,9 +1,25 @@
    -" vim-pathogen
    -execute pathogen#infect("C:/Users/Administrator/vimfiles/bundle/{}")
    -
    -" vim-plug
    -call plug#begin("C:/Users/Administrator/vimfiles/bundle")
    +call plug#begin('C:/Users/Administrator/vimfiles/plugged')
     Plug 'junegunn/fzf', { 'dir': 'C:/Users/Administrator/.fzf', 'do': './install --all' }
     Plug 'junegunn/fzf.vim'
    +Plug 'fatih/vim-go'
    +Plug 'altercation/vim-colors-solarized'
    +Plug 'godlygeek/tabular'
    +Plug 'kana/vim-textobj-user'
    +Plug 'lacygoill/vim-freekeys'
    +Plug 'mileszs/ack.vim'
    +Plug 'nelstrom/vim-textobj-rubyblock'
    +Plug 'tpope/vim-fugitive'
    +Plug 'tpope/vim-surround'
    +Plug 'tpope/vim-unimpaired'
    +Plug 'vim-airline/vim-airline'
    +Plug 'vim-scripts/mru.vim'
    +Plug 'junegunn/vader.vim'
    +Plug 'tpope/vim-dispatch'
    +Plug 'TaylorMonacelli/vim-miscellaneous-settings'
    +Plug 'dbakker/vim-projectroot' | Plug 'TaylorMonacelli/vim-projectroot-settings'
    +Plug 'tweekmonster/fzf-filemru' | Plug 'TaylorMonacelli/fzf-filemru-settings'
    +Plug 'TaylorMonacelli/nerdcommenter-settings'
    +Plug 'TaylorMonacelli/netrw-settings'
    +Plug 'junegunn/fzf.vim' | Plug 'TaylorMonacelli/fzf-settings'
     call plug#end()
  * execute[PluginInstall] action run

    ================================================================================
    Error executing action `run` on resource 'execute[PluginInstall]'
    ================================================================================

    SystemCallError
    ---------------
    This version of %1 is not compatible with the version of Windows you're running. Check your computer's system inform
ation to see whether you need a x86 (32-bit) or x64 (64-bit) version of the program, and then contact the software publi
sher. - CreateProcessW

    Resource Declaration:
    ---------------------
    # In C:/Users/Administrator/.chef/local-mode-cache/cache/cookbooks/test/recipes/default.rb

     15:   execute 'PluginInstall' do
     16:     # TODO: this absolute path is crap
     17:     ENV['PATH'] += ';C:\Program Files\vim\vim80;C:\Program Files (x86)\vim\vim80' if node['platform_family'] ==
 'windows'
     18:     command "#{whichvim} slient! +VimEnter +PlugInstall +qall"
     19:   end
     20:

    Compiled Resource:
    ------------------
    # Declared in C:/Users/Administrator/.chef/local-mode-cache/cache/cookbooks/test/recipes/default.rb:15:in `block in
from_file'

    execute("PluginInstall") do
      action [:run]
      retries 0
      retry_delay 2
      default_guard_interpreter :execute
      command "vim slient! +VimEnter +PlugInstall +qall"
      backup 5
      returns 0
      declared_type :execute
      cookbook_name "test"
      recipe_name "default"
    end

    Platform:
    ---------
    i386-mingw32

Running handlers:
[2017-09-07T11:19:41-07:00] ERROR: Running exception handlers
Running handlers complete
[2017-09-07T11:19:41-07:00] ERROR: Exception handlers complete
Chef Client failed. 5 resources updated in 01 minutes 44 seconds
[2017-09-07T11:19:41-07:00] FATAL: Stacktrace dumped to C:/Users/Administrator/.chef/local-mode-cache/cache/chef-stacktrace.out
[2017-09-07T11:19:41-07:00] FATAL: Please provide the contents of the stacktrace.out file if you file a bug report
[2017-09-07T11:19:41-07:00] FATAL: SystemCallError: execute[PluginInstall] (test::default line 15) had an error: SystemCallError: This version of %1 is not compatible with the version of Windows you're running. Check your computer's systeminformation to see whether you need a x86 (32-bit) or x64 (64-bit) version of the program, and then contact the software publisher. - CreateProcessW
PS C:\Users\Administrator>

Fixed by using chocolatey vim-tux.install package when os is 32bit.


Hide follow/follower

Describe the Feature
Optional hide follow/follower feature.
Attachments
No response
Describe Alternatives
No response
Additional Context
Some Internet stalkers are individuals who attack the target's follows/followers. We strongly hope this feature will be implemented as a countermeasure against such malicious individuals.

Duplicate of #6083


[Select] Select component is firing 2 onValueChange events when used inside a form (and the second event has empty value '')

Bug report
Hello guys,
I just noticed that using the Select component inside a form is causing the onValueChange of the select to be fired twice:

fires with the correct value
fires with an empty value ('')
This causes the component to no be update, since the second event is cleaning the correct value ...

How can i fix this issue ?
Current Behavior
If the Select component is wrapped inside a form, the onValueChange is fires twice, being the second one with an empty value.
Expected behavior
If Select is used inside a form, it should not fire the secont event with empty value.
Reproducible example
Here is a sandbox with both scenarios

posting the problem for whoever comes after:
we need to use the <Select.ItemText> inside the <Select.Item> for this to work


Styleguide: Typography: Rem/Em

Add when to use rem/em

Note: rem/em was updated in https://github.com/linode/manager/pull/1128
This issue should focus on describing the basics of how rem and font sizing is setup.


wake on lan platform

Add wake on lan as platform for the switch component
Example entry for configuration.yaml (if applicable):
switch:
  platform: wake_on_lan
  name: "WOL"
  host: "<IP_ADDRESS>"
  mac_address: "00-01-02-03-04-05"

Checklist:

[x] Local tests with tox run successfully.
[x] TravisCI does not fail. Your PR cannot be merged unless CI is green!
[x] Fork is up to date and was rebased on the dev branch before creating the PR.
[ ] Commits have been squashed.
If code communicates with devices:

[x] New dependencies have been added to the REQUIREMENTS variable (example).
[x] New dependencies are only imported inside functions that use them (example).
[x] New dependencies have been added to requirements_all.txt by running script/gen_requirements_all.py.
[x] New files were added to .coveragerc.

If the code does not interact with devices:

[ ] Tests have been added to verify that the new code works.

Going to close and open again to trigger travis.

It looks good except for the commits. It looks like you merged the dev branch.

You should be able to remove the erroneous commit by doing this:
git reset HEAD~1
git push -f

Well, still not correct. Going to try again tomorrow.
If you have any other hints, that would be appreciated!

This likely doesn't need to be added to this component now, but I know that Samba supports NET RPC commands that let you initiate remote shutdown on Windows. I use a commandline switch to be able to turn my PC on and off.
I would be cool if the WOL component supported turn-on and turn-off commands, but that's likely pretty device specific and beyond the MVP needed here. Just wanted to throw it out. Below is my sample config.
    pc_power:
      oncmd: sudo etherwake -b AB:CD:EF:GH:IJ:LK &
      offcmd: sudo net rpc shutdown -f -t 0 -I 192.XXX.XXX.XXX -U  mywindowsaccountname%mywindowspassword &

What should I do now?
When I now do git reset HEAD~1 I only undo my own changes.
When I do git reset HEAD~1 again (so I go back to before the merge) I get this:
On branch dev
Your branch is behind 'origin/dev' by 167 commits, and can be fast-forwarded.```

I thought about doing ```git rebase -i HEAD~2```? Is that correct? Squashing all 167 items?

You shouldn't have to squash any of my commits, they should have been removed. I think the best approach is to start a new branch based off my dev branch and add your changes there. Relevant XKCD


Use __class_getitem__ for more specific non-subscript errors

...It could be that the metaclass has (or doesn't have) a __getitem__ method, of course. (Example: enum.Enum.) But hey, red-knot doesn't know anything about metaclasses yet, really 😆 we can cross that bridge when we come to it


Use actions/checkout@v3 for all GitHub workflows

Description
Most of the GitHub workflows use actions/checkout@v1 for LuaCheck mostly.
It is recommended to use the latest, stable version, which is v3.
This is not something critical, but it'd be great if we could update those.
What do you think about this? We can create PRs/commit for that. 🙂

this issue seems like a waste(unless your going to track specific repos statuses here), just make the prs to the relevant repos

just commit directly to them

yeah, this is trivial enough :+1:

Would there be any reason not to use actions/checkout@main? Then we wouldn't need to update it again.

Would there be any reason not to use actions/checkout@main? Then we wouldn't need to update it again.

Been broken before so there's that. Also as far as I know there's no really need to update from 2.x at all with current mt-mods use, new features are not used here at all.
To keep using somewhat tested release it is probably better to use v3 instead of following development.
If tested stability is concern then v2 would be best as it seems to be still getting bug fix releases, just no new features.
I've got nothing against update to v3 but I think it would still be good to use releases, we are not checkout action developers after all and therefore want somewhat stable platform instead of bleeding edge.

If this sounds good, I'll commit directly to the repositories and update them.

Btw, actions/checkout@v4 been released some time ago.

If this is still something that's wanted, I'd like to work on it. Should I commit directly or via a PR on all repositories?

Please note: our official luacheck workflow uses actions/checkout@master not v3/v4.

Please note: our official luacheck workflow uses actions/checkout@master not v3/v4.

Should we use this in all repos, then?

Should we use this in all repos, then? 🤔

yes, we should use the same workflow in all repos.

Probably better to add this here too:
actions/checkout@master is old abandoned branch (I think point after v2 and before v3).
Latest unstable / development branch is actions/checkout@main.

actions/checkout@master is old abandoned branch

Shouldn't master redirect to main?

actions/checkout@master is old abandoned branch

Shouldn't master redirect to main?

No, it is its own branch. I mean how'd you checkout or see history of it if it would redirect?
Not sure if GitHub redirects master to main if there's no master branch or if main was renamed from it instead of created from it but redirecting always would pretty much break git and redirecting based on certain rules would likely just be confusing.
For actions/checkout master is a real branch anyway, it is also fairly easy for you to check this yourself through https://github.com/actions/checkout

Just noticed 👀 we should probably use main instead if you want to use the latest development version.

Just when you think you future-proofed something, you need to update it again...


error with fzf module

Neovim version (nvim -v | head -n1)
NVIM v0.8.0-dev+1638-ga2d4b862f
Operating system/version
macOS 12.3
How to reproduce the issue
add items in the quick fix list, use zf

I dig it a bid to understand what's going on.
In lua/bqf/utils.lua in method synKeyword L305, there is a match on the result of syn iskeyword witch expect a string in english, but mine is in french, which end up in a nil value, and then in genIsKeyword L328, getting the length is impossible.
I "fixed" this bug in local by setting the return value of synKeyword to return isKeyword or "".
But I don't know if this is the right way to do it or not ?
Expected behavior
no error when opening fzf module in bqf
Actual behavior
I have an error when using zf

What's the output of your PC running syntax iskeyword in an empty buffer.

I have "iskeyword n'est pas activé" as output

Fixed now.


I have Installed the Flutter plugin,but Flutter console don't show it?please fix the bug!

I have Installed the Flutter plugin,I can run my project
but In the Flutter Console, run the following command
flutter doctor -v
tips like this:
[√] Android Studio (version 3.2)
    • Android Studio at E:\develop\anzhuangbao\android-studio-ide3.2-181.4763614-wind
    X Flutter plugin not installed; this adds Flutter specific functionality.
    X Dart plugin not installed; this adds Dart specific functionality.
    • Java version OpenJDK Runtime Environment (build 1.8.0_152-release-1136-b03)

please fix the bug quickly !  Thank you!

Please add the full output of flutter doctor

$ flutter doctor -v
[√] Flutter (Channel beta, v0.4.4, on Microsoft Windows [Version 6.1.7601], locale zh-CN)
• Flutter version 0.4.4 at E:\develop\flutter
• Framework revision f9bb4289e9 (3 weeks ago), 2018-05-11 21:44:54 -0700
• Engine revision 06afdfe54e
• Dart version 2.0.0-dev.54.0.flutter-46ab040e58
[√] Android toolchain - develop for Android devices (Android SDK 27.0.3)
• Android SDK at E:\develop\sdk
• Android NDK at E:\develop\sdk\ndk-bundle
• Platform android-27, build-tools 27.0.3
• ANDROID_HOME = E:\develop\sdk
• Java binary at: E:\develop\android-studio-ide3.2-181.4763614-windows\jre\bin\java
• Java version OpenJDK Runtime Environment (build 1.8.0_152-release-1136-b03)
• All Android licenses accepted.
[!] Android Studio (version 2.3)
• Android Studio at E:\develop\android studio2.3.1\android-studio
X Flutter plugin version 12.1 - the recommended minimum version is 16.0.0
• Dart plugin version 162.2924
X Unable to find bundled Java version.
• Try updating or re-installing Android Studio.
[√] Android Studio (version 3.2)
• Android Studio at E:\develop\android-studio-ide3.2-181.4763614-windows
X Flutter plugin not installed; this adds Flutter specific functionality.
X Dart plugin not installed; this adds Dart specific functionality.
• Java version OpenJDK Runtime Environment (build 1.8.0_152-release-1136-b03)
[!] IntelliJ IDEA Community Edition (version 2017.1)
• IntelliJ at E:\develop\IntelliJ IDEA Community Edition 2017.1.1
X Flutter plugin not installed; this adds Flutter specific functionality.
X Dart plugin not installed; this adds Dart specific functionality.
• For information about installing plugins, see
https://flutter.io/intellij-setup/#installing-the-plugins
[!] Connected devices
! No devices available
! Doctor found issues in 3 categories.

Did you try installing the plugins in IntelliJ IDEA as well?

I have installed the Flutter plugin and Dart plugin in IntelliJ IDEA ，but the problem also appended in the Flutter console , so  what shall I do?
just Flutter console show the plugin doesn't  be installed.
I can use Flutter write my app well.

Here is the console and plugin @zoechi
please look at two pictures:

@zoechi I have the same

I try to unload reload but it's useless

@zoechi I've solved this problem. I use Android studio not idea , it's my problem

Is this still an issue?

I'm assuming that this is stale. Please let us know if you're still seeing this problem.

I am seeing the same problem. I have installed it on AS 3.2  and 3.3 and IDEA and only in IDEA and only in IDEA it is recognized by fluttr doctor:
D:\Tools\flutter>flutter doctor
Doctor summary (to see all details, run flutter doctor -v):
[√] Flutter (Channel beta, v0.7.3, on Microsoft Windows [Version 10.0.17134.228], locale sl-SI)
[!] Android toolchain - develop for Android devices (Android SDK 28.0.2)
    X Android license status unknown.
[√] Android Studio (version 3.2)
    X Flutter plugin not installed; this adds Flutter specific functionality.
    X Dart plugin not installed; this adds Dart specific functionality.
[√] Android Studio (version 3.3)
    X Flutter plugin not installed; this adds Flutter specific functionality.
    X Dart plugin not installed; this adds Dart specific functionality.
[!] IntelliJ IDEA Community Edition (version 2018.1)
    X Flutter plugin not installed; this adds Flutter specific functionality.
    X Dart plugin not installed; this adds Dart specific functionality.
[√] IntelliJ IDEA Ultimate Edition (version 2018.1)
[√] Connected devices (1 available)

! Doctor found issues in 2 categories.

me too..
Where is the helper?

@hoornet @SPSpisoft you might want to follow #21881
This issue is closed.

Can any body please help.
i have installed flutter and dart.
D:\Flutter_dev\hello>flutter doctor
Doctor summary (to see all details, run flutter doctor -v):
[ΓêÜ] Flutter (Channel beta, v0.9.4, on Microsoft Windows [Version 6.1.7601], locale en-IN)
[!] Android toolchain - develop for Android devices (Android SDK 28.0.3)
X Android license status unknown.
[!] Android Studio (version 2.3)
X Flutter plugin not installed; this adds Flutter specific functionality.
X Dart plugin not installed; this adds Dart specific functionality.
X Unable to find bundled Java version.
[ΓêÜ] Android Studio (version 3.2)
[ΓêÜ] Android Studio (version 3.0)
X Flutter plugin not installed; this adds Flutter specific functionality.
X Dart plugin not installed; this adds Dart specific functionality.
[!] VS Code, 64-bit edition (version 1.21.1)
[ΓêÜ] Connected devices (1 available)
! Doctor found issues in 3 categories.

Hey @zoechi I am facing a problem... I cant run flutter_console.bat file. Please help me

On command fire I get

Hi @AweiLoveAndroid
I'm closing this issue as it refer to an older version of Flutter.
If you are you still experiencing this issue with the latest version of Flutter,
you may want to open a new issue or comment below;
either way please provide your updated flutter doctor -v.
It would be helpful to have also your flutter run --verbose
and a self contained app on github (or the steps to reproduce it).
Thank you


automatic installation suggestion does not work

The documentation claims "The extension will automatically install the first time you run an az monitor app-insights command."
Actual results:
CommandNotFoundError: 'app-insights' is misspelled or not recognized by the system.
Try this: 'az extension add --name <anextension>'
Still stuck? Run 'az monitor --help' to view all commands or go to 'https://aka.ms/cli_ref' to learn more

This was with azure-cli version 2.18.0 installed.
From here, I manually installed the extension.
az extension add --name application-insights

Once it was installed, it worked as expected.

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

ID: 0bce0dc5-da82-717a-70cf-e392c05904a3
Version Independent ID: a5cb6492-d731-0c98-7691-64d1d7a14a5c
Content: az monitor app-insights
Content Source: latest/docs-ref-autogen/ext/application-insights/monitor/app-insights.yml
GitHub Login: @rloutlaw
Microsoft Alias: routlaw

automatic installation

automatic installation

Hi @bmc-msft, I cannot reproduce it, that command can work on my machine. Can you provide environment information? Thanks.

Ubuntu 20.20 in WSL, from az --version
azure-cli                         2.15.1 *

core                              2.15.1 *
telemetry                          1.0.6

Extensions:
azure-devops                      0.17.0
resource-graph                     1.1.0

Python location '/usr/bin/python3'
Extensions directory '/home/USERNAME/.azure/cliextensions'

Python (Linux) 3.8.5 (default, Jul 28 2020, 12:59:40)
[GCC 9.3.0]

Automatic installation works now.

@kairu-ms, this does not work as expected following the documentation:
https://docs.microsoft.com/en-us/cli/azure/monitor/app-insights?view=azure-cli-latest
The documentation states:

The extension will automatically install the first time you run an az monitor app-insights command.

❯ az --version
azure-cli                         2.26.1

core                              2.26.1
telemetry                          1.0.6

Extensions:
azure-devops                      0.18.0
resource-graph                     2.1.0

Python location '/opt/az/bin/python3'
Extensions directory '/home/USERNAME/.azure/cliextensions'

Python (Linux) 3.6.10 (default, Jul 14 2021, 08:09:30)
[GCC 9.3.0]

Legal docs and information: aka.ms/AzureCliLegal

Your CLI is up-to-date.

Please let us know how we are doing: https://aka.ms/azureclihats
and let us know if you're interested in trying out our newest features: https://aka.ms/CLIUXstudy
❯ az monitor app-insights
'app-insights' is misspelled or not recognized by the system.

TRY THIS:
az extension add --name anextension
Add extension by name

https://docs.microsoft.com/en-US/cli/azure/extension#az_extension_add
Read more about the command in reference docs

If it's a command group. Please add -h to trigger automatic installation detection.


Filled empty compatibility cells with "🚫"

And so, the #34 issue gains a pull request. It does make it easy to spot which games just won't work at all.

I'm convinced, looks nice with more red too >:]
Thanks!


Basic support for Sonoff Micro

Adds basic support for SONOFF MICRO - 5V WIRELESS USB SMART ADAPTOR.
The API is reporting this as a 4 switch device, but only the first switch appears to control it. Not sure what switches 2-4 do (still trying to figure that out). Ideally this would only show one switch if only 1 was usable.
Relates to issue https://github.com/howanghk/homebridge-ewelink/issues/81

Thanks for contributing! I am merging this now.


add chronicl fix

I'm not tied to this name for the fix. Just haven't found a name that fully convinces me yet.

Thanks for that!


client cant join server (1.11.2) after updating to rftoolsdim-1.1x-4.55

forge:1.11.2-2259
rftools: rftools-1.1x-5.88
rftools dim: rftoolsdim-1.1x-4.55
client log: http://puu.sh/uLm2e/be22917ab3.log

That's really weird. Client is updated too? Does rolling back to previous version fix this?

yes both same versions

i will test with 44 and see if it still happens

aswell it seems to happen with 54 too

Well then I don't think this has anything to do with rftools dimensions even though it triggers in that mod. I would have no clue how that kind of error is even possible. Anything else that changed/got updated besides rftools dimensions?

umm yes heres a list of mod changes
print.txt

I don't immediatelly see anything suspicious. Maybe you should try from a working sitatuation first (i.e. I hope you got a backup from before the update) and add/update mods one by one?

but could cause this trigger to happen Caused by: java.lang.NullPointerException: Undefined message for discriminator 82 in channel rftoolsdim

I have no idea. Never seen that message before

do you think a refresh of rftools config might help at all?

No. That's doubtful

this is kinda weird just dont what could be the cause is the issue to tackle here

oh well a long night ahead of me i suppose

weird even after rolling back chnages it still gives me the same error odd O_O

got it going dude it was a corrupted jar thanks for your help anyways @McJty :D


Remove plugin wip

Hey, I just made a Pull Request!

Adds remove-plugin cli command
:heavy_check_mark: Checklist

[ ] All tests are passing yarn test
Some errors in plugins trying to import errorApiRef
[ ] Screenshots attached (for UI changes)
[ ] Relevant documentation updated
Need to update documentation
[ ] Prettier run on changed files
[X] Tests added for new functionality
Tests are still WIP
[X] CODEOWNERS updated (for new stuff)
When removing plugin, plugin codeowners statement is removed from .github/CODEOWNERS
[ ] Regression tests added for bug fixes

Hi @braulio-balanza, is this ready for review? Would love to get this in

Hi! The problem I am having is that since the command basically undoes everything create-plugin does, I keep having to modify it. Any pointers on how I could proceed?

@braulio-balanza best to do is to get it in sync with current master and then get it merged. Whoever updates the plugin create process should then update this too. We'll also make use of this in the e2e test to make sure it stays in sync.

Ok, let me reflect the latest changes and I will notify you!

I feel that this pull request is ready for review. I added the unit tests of the most important features. I am using some methods from createPlugin.ts in the tests, which is not preferable but made writing the tests much easier.

Yeah, I was thinking the same at the end, but I just wanted to commit. Let me do the changes, it shouldn't be that difficult


Add model training & prediction endpoints to the library

TL;DR:
from nxontology_ml.data import get_efo_otar_slim
from nxontology_ml.model.predict import train_predict

nxo = get_efo_otar_slim()
df = train_predict(nxo=nxo)

(From readme)
Some notes:

More context can be found in this comment
The output of the prediction should be consistent when invoked from the same system (in new python session). From experience, it's likely to differ slightly across platform
No file is written (responsibility of the caller), but the content of the data is identical to data/efo_otar_slim_v3.57.0_precisions.tsv
FWIW, schemaless exports make me a little nervous - but I guess they seem to be the norm in the data-science world, so it's on me

FWIW, schemaless exports make me a little nervous - but I guess they seem to be the norm in the data-science world

I do not disagree. We often use pydantic internally, although the ability to apply it recordwise to a pandas dataframe is somewhat lacking. On the other hand, if this pipeline breaks, it's not a big deal as long as that results in failure and not bad output in a silent manner.


pre-build not picked up on different branch (HELP)

i have build setup on develop which works fine and the pre-build script is recognised but on my master branch the pre-build is not recognised  i dont know what else todo. as this location of the file is in the right place as its picked up by the develop branch but the code is same on the master branch but no recognised?

issues resolved


Remove the constructor

Doesn't a class without a constructor calls its parent class constructor  by default?

I was also wondering this, as I'm currently looking at the source of some light dom custom elements, to get inspiration. @davatron5000 Do you know something, we don't?
Thanks for your input here!

Yep. Don't need it. Removed!


Wishlist: Email reply notifications to other users

When someone writes a comment on my site, it'd be nice if they could receive (via opt-in checkbox of course) replies via email.

Apologies, I see this was already handled in #50 and I just wasn't finding the documentation for it.


rails 7.0.0

Bundler could not find compatible versions for gem "rails":
In Gemfile:
rails (~> 7.0.0)
rails_admin was resolved to 2.2.1, which depends on
  rails (>= 5.0, < 7)

+1

Duplicate pf #3449.
Please stop opening a new issue, without checking if there's the same one. It's just a waste of time.


You can either 1) reduce the size of the epochs or 2) use ctrl + c to kill the process and use the saved ckeckpoint.


HTML string inside TypeScript and JavaScript files

Copied from https://github.com/Microsoft/vscode/issues/2000
When using Angular 2 and TypeScript I noticed that editing template strings of components in TypeScript files are not working as one expect. There is not autocomplete for tags and other usual HTML editing features.
For example
import {Component} from 'angular2/core';

@Component({
    selector: 'my-app',
    template: '
My First Angular 2 App
'
})
export class AppComponent { }

Of course it's because the type definition has declared template as a String and no part of VSCode knows that it's an HTML string.
My proposal is to define a HTMLString type where it's basically just string but helps tooling in cases like this.
If it was possible to do this, then we can define CSSString, JavaScriptString, SCSSString and so on...

What is the take of the TS team on this?

See also #6508

this looks like a duplicate of #4856. please see my reply in https://github.com/Microsoft/TypeScript/issues/4856#issuecomment-141552809. the possible change here is as @DanielRosenwasser mentioned by allowing extensibility for the typescript language service.


NumCast<Wrapping>::from() doesn't wrap

I'm not sure if this is intentional, but I found it surprising that the NumCast conversion to Wrapping<T> doesn't wrap. It delegates to NumCast<T>::from(x) first and then converts it to a Wrapping<T>. But by that time we already have an empty optional, so the conversion fails.
https://github.com/rust-num/num-traits/blob/38655c91c1a66020a7193912c948164c70d3a77c/src/cast.rs#L596
Is this intended behavior? I would expect the conversion to simply overflow and wrap.

I would expect the conversion to simply overflow and wrap.

I think it could be argued either way, but it didn't occur to me in the review of https://github.com/rust-num/num/pull/286.
However, the implementations for Wrapping<T> are generic in T, and NumCast is further generic in its fn from<T: ToPrimitive> (for a distinct T, which Wrapping<T>'s impl calls U). I don't think we have enough information to do what you want. For instance, some other crate could implement a U256 type and use Wrapping<U256>, and we don't know how to wrap conversions from here.
A possible solution to do it your way is to abandon our blanket implementations for Wrapping<T>, and instead implement each Wrapping<u8>, etc. separately (probably by macro). This would be a breaking change though -- assuming we even decide this is the better semantic.


Add user api resource to get/update profile info

Need api resource to get the user's own profile information, as well as update their own:

email
first_name
last_name
city
region
country

Let me  work on this

@miguejs sounds good, let me know if you need more info

@beaorn  How can  I put my credentials in the api request header?

@miguejs the app is setup w/ doorkeeper so you will need to add new app at http://localhost:3000/oauth/applications as logged in admin user which will give you client id and secret to use, make sure to set redirect uri for local use urn:ietf:wg:oauth:2.0:oob.
Its set up to use authorization code grant flow, so you can use an API client like postman with those credentials and redirect uri and the following endpoints:

authorize_url: http://localhost:3000/oauth/authorize
token_url: http://localhost:3000/oauth/token

This will give you access and refresh tokens and the API controller gets the resource owner id (user) from doorkeeper token so you can call current_resource_owner in the new user API controller to get their info.


Add continuous integration

This will automate release builds and validate that the app can be built on other machines, and also run any unit tests that get created. This also eliminates any user error when making releases.
We would want one that supports GitHub releases and eventually Google Play releases if we want to go that route.

One tool that I am familiar with and use on all of my repos is Bitrise. It is not as big as the other continuous integration softwares, so it may be better to use something else. Most of them are free for open source use.
A few that I know of

Bitrise

Travis

Jenkins

CircleCI

Example of bitrise integration
https://app.bitrise.io/build/bbaa894ad15bfdec#?tab=log


支持配置JSON，并自动转成相应类型

Coverage decreased (-0.6%) to 42.421% when pulling adc1f5403611bf7e46ba48efe2d2854bd14139e0 on zxhdaniel:master into 2ac5c8275ad8cdc101522ad01a8ba87e53b73b68 on knightliao:master.

Coverage decreased (-0.6%) to 42.421% when pulling 0f013887cd6f6a3a4dfa7fd10f6d50b856cbfee3 on zxhdaniel:master into 2ac5c8275ad8cdc101522ad01a8ba87e53b73b68 on knightliao:master.

Coverage decreased (-0.6%) to 42.421% when pulling 53fd24a57711089e8b84e59d9dcf41f565a5880c on zxhdaniel:master into 2ac5c8275ad8cdc101522ad01a8ba87e53b73b68 on knightliao:master.

Coverage decreased (-0.6%) to 42.421% when pulling 3c6e405106a8387a6a3d996ebdf9dc63240e8a49 on zxhdaniel:master into 2ac5c8275ad8cdc101522ad01a8ba87e53b73b68 on knightliao:master.


Enable ansi support for examples under windows

GitHub Actions log supports ansi colors. Let's show them off.

I'm not sure this is necessary but I'm also not sure it hurts anything.

The CI may not be necessary but maybe the other parts are. :)

I don't have windows and I used it to check if my changes work.

Not sure if that is really a proper test for the windows behavior though as I thought all the hackery is necessary for the stuff that is explicitly not working through ANSI control sequences. And I am not sure if the web interface really emulates conhost.exe compared to "just" a ANSI PTY.

I was more thinking about the Win32 API calls.


Is Sync Possibe?

I wonder whether VSCode could have the SYNC feature.
Every time I install VSCode on different platforms, it takes me a lot of time to set the preferences and add extensions on.
May we public a sync feature based on Windows Account? To begin with, a beta version sync could remember extensions and when you log in on another platform, it downloads the extensions, just like Microsoft Store does.
Maybe it's a little against the "lightweight" goal, but nowadays there's no editor is "lightweight" actually.
Thank you for considering.

/duplicate of #2743


Fix system python and added yum wrapper

This fixes #13
The install_python.sh now also creates a /usr/local/bin/yum script that unsets the PYTHONPATH and PATH and LD_LIBRARY_PATH to ensure the normal python is used so yum can function normally.
This makes updating the aswf/ci-* images simple as one only need to run sudo yum install ... for additional packages.

I created an explicit utility script called run-with-system-python that I'm calling internally to avoid breaking the system python and is used by the yum wrapper, and I've added a few comments!


Middleware service

Fixed /README shift in diagram
Created Listen Function

Listens and handles POST requests

Created  cURL_POST

Modularize curl post request with info from front-end

TODO:

Test return request (and that it comes back as JSON)
Change cURL_POST to go to backend

Excellent work like always, AOrps.


Consistently truncate too wide gate parameters in circuit drawers based on string length

Summary
Truncate too wide gate parameters in all 3 circuit drawers based on length of the resulting string (and not the number of parameters, as was coded previously). Adds the truncation behavior to the text drawer as well, where it was missing.
Details and comments
Refer to #6364 and #6443. It was discussed that for the matplotlib drawer, drawings for circuits which have too wide parameters should be truncated, as they exceed the width of a single row and cause the circuit to stretch. With this PR, I have tried to address the same issue in the text drawer in case of initialize instruction. In case of the text drawer, when the circuit is initialized with parameters that are too wide, the drawing gets too stretched and eventually occupies multiple lines. Such an excessively stretched circuit drawing impedes efficient visualization for users. As the matplotlib and Latex drawers already have the truncation behavior implemented, this fix truncates the parameters of initialize in the text drawer, in case the length of the resulting string exceeds a particular threshold.
For instance, a sample piece of code which would reproduce the problem (considering a worst case scenario involving complex state initialization) would be:
import qiskit
import numpy as np
dim = 3
qr = qiskit.QuantumRegister(dim, 'qr')
qc = qiskit.QuantumCircuit(qr)
init_state = np.zeros(2**dim) + np.zeros(2**dim)*1j
for i in range(2**dim):
    init_state[i] = (i+1) + (i+1)*1j
init_state = init_state / np.linalg.norm(init_state)
qc.initialize(init_state)
qc.draw(output='text')
In the existing version, the output is a stretched drawing:

After the fix present in this PR, this gets rendered as:

I have also added a test case for this scenario.

Thanks @dhruvbhq  can this be generalized for all the parameters, like in https://github.com/Qiskit/qiskit-terra/pull/6443? From the code, it seems to me that only affects initialize.

To add an example to @1ucian0's comment: we mean truncating something like this
     ┌──────────────────────────────────────────────────────────────────────────────────────────────────────┐
q_0: ┤ circuit-0(theta[0],theta[1],theta[2],theta[3],theta[4],theta[5],theta[6],theta[7],theta[8],theta[9]) ├
     └──────────────────────────────────────────────────────────────────────────────────────────────────────┘

@1ucian0 @Cryoris Your suggestion makes sense. I have removed the condition to check for initialize operation. Also added a test case to cover the parametric circuit case shown above.
Let me know what you think.

It appears that very recently, the function params_for_label got moved elsewhere (#6078), and merging to remove conflicts in this branch got messed up. Could someone please point me how to clean it up, and where this code got moved to? Thanks :)

Hi @dhruvbhq are you still working on this?

Hi @javabster I've lost track of this; please feel free to re-assign.


[Installation] gulp-imagemin installs node_modules folders recursively ad infinitum

Install Zurb template as per http://foundation.zurb.com/sites/docs/installation.html
Open any subfolder of node_modules/gulp-imagemin. You will find a node_modules folder there.
Drill down in the folder structure and try to get to the terminating folder. The folder structure has no end. Example: C:\CORA\vanocular\httpdocs\node_modules\gulp-imagemin\node_modules\imagemin\node_modules\imagemin-optipng\node_modules\optipng-bin\node_modules\logalot\node_modules\squeak\node_modules\lpad-align\node_modules\meow\node_modules

This a huge problem on Windows because of the filename length limit. Long filenames can't be deleted in the file manager. They can be deleted using rimraf but this is completely unnecessary and not documented. This cost me an hour trying to figure out how to simply delete a Foundation installation, needs to be fixed.

Hi @vanadu,
this is not an issue with Foundation, it is related how dependency management in NPM 2 works.
Maybe you can have a look at NPM 3, which allows you flat dependency management and therefore should not cause these problems.

I agree with the response above; this is not a foundation issue but a result of NPM being a clusterF*$#